Fixed being able to Fly in the Town Map despite the Setting, fixed being unable to interact with an event next to you if standing on an event

This commit is contained in:
Maruno17
2023-10-01 19:24:49 +01:00
parent a6c7e2c1ff
commit d267956c6e
3 changed files with 19 additions and 12 deletions

View File

@@ -294,8 +294,12 @@ module Settings
# * Species. # * Species.
# * Level. # * Level.
# * Game Switch; the Pokémon roams while this is ON. # * Game Switch; the Pokémon roams while this is ON.
# * Encounter type (0=any, 1=grass/walking in cave, 2=surfing, 3=fishing, # * Encounter type (see def pbRoamingMethodAllowed for their use):
# 4=surfing/fishing). See the bottom of Overworld_RoamingPokemon for lists. # 0 = grass, walking in cave, surfing
# 1 = grass, walking in cave
# 2 = surfing
# 3 = fishing
# 4 = surfing, fishing
# * Name of BGM to play for that encounter (optional). # * Name of BGM to play for that encounter (optional).
# * Roaming areas specifically for this Pokémon (optional). # * Roaming areas specifically for this Pokémon (optional).
ROAMING_SPECIES = [ ROAMING_SPECIES = [

View File

@@ -316,13 +316,15 @@ class Game_Player < Game_Character
def pbCheckEventTriggerAfterTurning; end def pbCheckEventTriggerAfterTurning; end
def pbCheckEventTriggerFromDistance(triggers) def pbCheckEventTriggerFromDistance(triggers)
ret = pbTriggeredTrainerEvents(triggers) events = pbTriggeredTrainerEvents(triggers)
ret.concat(pbTriggeredCounterEvents(triggers)) events.concat(pbTriggeredCounterEvents(triggers))
return false if ret.length == 0 return false if events.length == 0
ret.each do |event| ret = false
events.each do |event|
event.start event.start
ret = true if event.starting
end end
return true return ret
end end
# Trigger event(s) at the same coordinates as self with the appropriate # Trigger event(s) at the same coordinates as self with the appropriate
@@ -339,7 +341,7 @@ class Game_Player < Game_Character
# If starting determinant is same position event (other than jumping) # If starting determinant is same position event (other than jumping)
next if event.jumping? || !event.over_trigger? next if event.jumping? || !event.over_trigger?
event.start event.start
result = true result = true if event.starting
end end
return result return result
end end
@@ -361,7 +363,7 @@ class Game_Player < Game_Character
# If starting determinant is front event (other than jumping) # If starting determinant is front event (other than jumping)
next if event.jumping? || event.over_trigger? next if event.jumping? || event.over_trigger?
event.start event.start
result = true result = true if event.starting
end end
# If fitting event is not found # If fitting event is not found
if result == false && $game_map.counter?(new_x, new_y) if result == false && $game_map.counter?(new_x, new_y)
@@ -377,7 +379,7 @@ class Game_Player < Game_Character
# If starting determinant is front event (other than jumping) # If starting determinant is front event (other than jumping)
next if event.jumping? || event.over_trigger? next if event.jumping? || event.over_trigger?
event.start event.start
result = true result = true if event.starting
end end
end end
return result return result
@@ -404,7 +406,7 @@ class Game_Player < Game_Character
# If starting determinant is front event (other than jumping) # If starting determinant is front event (other than jumping)
next if event.jumping? || event.over_trigger? next if event.jumping? || event.over_trigger?
event.start event.start
result = true result = true if event.starting
end end
return result return result
end end

View File

@@ -308,7 +308,8 @@ class PokemonRegionMap_Scene
end end
elsif Input.trigger?(Input::USE) && @editor # Intentionally after other USE input check elsif Input.trigger?(Input::USE) && @editor # Intentionally after other USE input check
pbChangeMapLocation(@map_x, @map_y) pbChangeMapLocation(@map_x, @map_y)
elsif Input.trigger?(Input::ACTION) && !@wallmap && !@fly_map && pbCanFly? elsif Input.trigger?(Input::ACTION) && Settings::CAN_FLY_FROM_TOWN_MAP &&
!@wallmap && !@fly_map && pbCanFly?
pbPlayDecisionSE pbPlayDecisionSE
@mode = (@mode == 1) ? 0 : 1 @mode = (@mode == 1) ? 0 : 1
refresh_fly_screen refresh_fly_screen