Additional Solution for Portals Puzzle:

-adding check for moving entire Portal folder into BigPortal as a possible solution to the portals puzzle, since so many people do this and get stuck here
-also fixing a somewhat obscure bug where, if you save while the solstice trio are in your party and reload the game, weird things happen when trying to remove followers.  This was mainly due to the actor equality check being based on reference instead of id, but reworked how the whole thing works anyways since now followers will walk to fill in the gaps instead of being teleported to fill them in, in the follower chain.
This commit is contained in:
GIR GIR 2022-06-23 01:18:54 -07:00
parent c9ffa05df7
commit 533dcb3589
2 changed files with 15 additions and 11 deletions

View File

@ -131,13 +131,15 @@ class Game_Party
actor = $game_actors[actor_id] actor = $game_actors[actor_id]
# Delete follower # Delete follower
unless $game_followers.empty? unless $game_followers.empty?
follower = $game_followers.pop for i in 0...$game_followers.size
follower = $game_followers[i]
if follower.actor.id == actor.id
if $game_followers.size > i + 1
$game_followers[i + 1].leader = follower.leader
end
$game_followers.delete_at(i)
$scene.remove_follower(follower) $scene.remove_follower(follower)
new_actor = follower.actor break
if new_actor != actor
$game_followers.reverse_each do |follower|
new_actor, follower.actor = follower.actor, new_actor
break if new_actor == actor
end end
end end
end end

View File

@ -565,12 +565,14 @@ module Script
portal_path = Oneshot::GAME_PATH + "/Oneshot/BigPortal" portal_path = Oneshot::GAME_PATH + "/Oneshot/BigPortal"
case numb case numb
when 1 when 1
return File.exists?(portal_path + "/keyB.txt") return (File.exists?(portal_path + "/keyB.txt") or File.exists?(portal_path + "/Portal1/keyB.txt"))
when 2 when 2
return File.exists?(portal_path + "/keyG.txt") return (File.exists?(portal_path + "/keyG.txt") or File.exists?(portal_path + "/Portal2/keyG.txt"))
when 3 when 3
return File.exists?(portal_path + "/keyR.txt") return (File.exists?(portal_path + "/keyR.txt") or File.exists?(portal_path + "/Portal3/keyR.txt"))
end end
return false return false
end end