Files
infinitefusion-e18/Data/Scripts/053_PIF_Hoenn/HoennGameplayUtils.rb
2025-09-28 15:53:01 -04:00

72 lines
2.0 KiB
Ruby
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# available channels
# :RANDOM
# :NEWS
# :WEATHER
TV_CHANNELS = [:NEWS, :WEATHER]
def showTVText(channel = :RANDOM)
channel = TV_CHANNELS.sample if channel == :RANDOM
case channel
when :NEWS
pbMessage(getTVNewsCaption())
when :WEATHER
pbMessage(_INTL("It's the weather channel! Let's see how things are looking out today."))
pbWeatherMapMap()
end
end
SWITCH_REPORTER_AT_PETALBURG = 2026
def getTVNewsCaption()
if $game_switches[SWITCH_REPORTER_AT_PETALBURG]
return _INTL("It's showing the local news. There's a berry-growing contest going on in Petalburg Town!")
else
return _INTL("Its a rerun of PokéChef Deluxe. Nothing important on the news right now.")
end
end
def hoennSelectStarter
starters = [obtainStarter(0), obtainStarter(1), obtainStarter(2)]
selected_starter = StartersSelectionScene.new(starters).startScene
pbAddPokemonSilent(selected_starter)
return selected_starter
end
def secretBaseQuest_pickedNearbySpot()
return false if !$Trainer.secretBase
expected_map = 65
expected_positions = [
[30,43],[31,43],[32,42],[33,42],[34,42],[35,42],[36,40],[37,40],#trees
[41,40] #cliff
]
picked_base_map = $Trainer.secretBase.outside_map_id
picked_position = $Trainer.secretBase.outside_entrance_position
echoln picked_base_map
echoln picked_position
echoln picked_base_map == expected_map && expected_positions.include?(picked_position)
return picked_base_map == expected_map && expected_positions.include?(picked_position)
end
#To scroll a picture on screen in a seamless, continuous loop (used in the truck scene in the intro)
# Provide 2 pictures (so that the loop isn't choppy)
# Speed in pixels per frame
def scroll_picture_loop(pic_a_nb, pic_b_nb, width, speed)
pic_a = $game_screen.pictures[pic_a_nb]
pic_b = $game_screen.pictures[pic_b_nb]
# move both
pic_a.x -= speed
pic_b.x -= speed
# wrap-around: always place offscreen one after the other
if pic_a.x <= -width
pic_a.x = pic_b.x + width
elsif pic_b.x <= -width
pic_b.x = pic_a.x + width
end
end