Class: Scene_Map
- Inherits:
-
Scene_Base
- Object
- Scene_Base
- Scene_Map
- Defined in:
- lib/rgss3_default_scripts/Scene_Map.rb
Overview
** Scene_Map
This class performs the map screen processing.
Instance Method Summary collapse
-
#call_menu ⇒ Object
————————————————————————– * Call Menu Screen ————————————————————————–.
-
#create_all_windows ⇒ Object
————————————————————————– * Create All Windows ————————————————————————–.
-
#create_location_window ⇒ Object
————————————————————————– * Create Map Name Window ————————————————————————–.
-
#create_message_window ⇒ Object
————————————————————————– * Create Message Window ————————————————————————–.
-
#create_scroll_text_window ⇒ Object
————————————————————————– * Create Scrolling Text Window ————————————————————————–.
-
#create_spriteset ⇒ Object
————————————————————————– * Create Sprite Set ————————————————————————–.
-
#dispose_spriteset ⇒ Object
————————————————————————– * Free Sprite Set ————————————————————————–.
-
#fade_loop(duration) ⇒ Object
————————————————————————– * General-Purpose Fade Processing ————————————————————————–.
-
#fadein(duration) ⇒ Object
————————————————————————– * Fadein Screen ————————————————————————–.
-
#fadein_speed ⇒ Object
————————————————————————– * Get Fade In Speed ————————————————————————–.
-
#fadeout(duration) ⇒ Object
————————————————————————– * Fadeout Screen ————————————————————————–.
-
#fadeout_speed ⇒ Object
————————————————————————– * Get Fade Out Speed ————————————————————————–.
-
#fadeout_speed_to_title ⇒ Object
————————————————————————– * Get Fade Out Speed for Title Screen Transition ————————————————————————–.
-
#perform_battle_transition ⇒ Object
————————————————————————– * Execute Pre-Battle Transition ————————————————————————–.
-
#perform_transfer ⇒ Object
————————————————————————– * Player Transfer Processing ————————————————————————–.
-
#perform_transition ⇒ Object
————————————————————————– * Execute Transition Performs a fade in when the screen has been blacked out, such as immediately after a battle or load.
-
#post_transfer ⇒ Object
————————————————————————– * Post Processing for Transferring Player ————————————————————————–.
-
#pre_battle_scene ⇒ Object
————————————————————————– * Preprocessing for Battle Screen Transition ————————————————————————–.
-
#pre_terminate ⇒ Object
————————————————————————– * Pre-Termination Processing ————————————————————————–.
-
#pre_title_scene ⇒ Object
————————————————————————– * Preprocessing for Title Screen Transition ————————————————————————–.
-
#pre_transfer ⇒ Object
————————————————————————– * Preprocessing for Transferring Player ————————————————————————–.
-
#scene_change_ok? ⇒ Boolean
————————————————————————– * Determine if Scene Transition Is Possible ————————————————————————–.
-
#start ⇒ Object
————————————————————————– * Start Processing ————————————————————————–.
-
#terminate ⇒ Object
————————————————————————– * Termination Processing ————————————————————————–.
-
#transition_speed ⇒ Object
————————————————————————– * Get Transition Speed ————————————————————————–.
-
#update ⇒ Object
————————————————————————– * Frame Update ————————————————————————–.
-
#update_call_debug ⇒ Object
————————————————————————– * Determine if Debug Call by F9 key ————————————————————————–.
-
#update_call_menu ⇒ Object
————————————————————————– * Determine if Menu is Called due to Cancel Button ————————————————————————–.
-
#update_encounter ⇒ Object
————————————————————————– * Update Encounter ————————————————————————–.
-
#update_for_fade ⇒ Object
————————————————————————– * Update Frame (for Fade In) ————————————————————————–.
-
#update_scene ⇒ Object
————————————————————————– * Update Scene Transition ————————————————————————–.
-
#update_transfer_player ⇒ Object
————————————————————————– * Update Player Transfer ————————————————————————–.
-
#white_fadein(duration) ⇒ Object
————————————————————————– * Screen Fade In (White) ————————————————————————–.
-
#white_fadeout(duration) ⇒ Object
————————————————————————– * Screen Fade Out (White) ————————————————————————–.
Methods inherited from Scene_Base
#check_gameover, #create_main_viewport, #dispose_all_windows, #dispose_main_viewport, #fadeout_all, #main, #post_start, #return_scene, #scene_changing?, #update_all_windows, #update_basic
Instance Method Details
#call_menu ⇒ Object
-
Call Menu Screen
189 190 191 192 193 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 189 def Sound.play_ok SceneManager.call(Scene_Menu) Window_MenuCommand::init_command_position end |
#create_all_windows ⇒ Object
-
Create All Windows
140 141 142 143 144 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 140 def create_all_windows create_scroll_text_window create_location_window end |
#create_location_window ⇒ Object
-
Create Map Name Window
160 161 162 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 160 def create_location_window @map_name_window = Window_MapName.new end |
#create_message_window ⇒ Object
-
Create Message Window
148 149 150 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 148 def @message_window = Window_Message.new end |
#create_scroll_text_window ⇒ Object
-
Create Scrolling Text Window
154 155 156 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 154 def create_scroll_text_window @scroll_text_window = Window_ScrollText.new end |
#create_spriteset ⇒ Object
-
Create Sprite Set
128 129 130 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 128 def create_spriteset @spriteset = Spriteset_Map.new end |
#dispose_spriteset ⇒ Object
-
Free Sprite Set
134 135 136 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 134 def dispose_spriteset @spriteset.dispose end |
#fade_loop(duration) ⇒ Object
-
General-Purpose Fade Processing
95 96 97 98 99 100 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 95 def fade_loop(duration) duration.times do |i| yield 255 * (i + 1) / duration update_for_fade end end |
#fadein(duration) ⇒ Object
-
Fadein Screen
104 105 106 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 104 def fadein(duration) fade_loop(duration) {|v| Graphics.brightness = v } end |
#fadein_speed ⇒ Object
-
Get Fade In Speed
267 268 269 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 267 def fadein_speed return 30 end |
#fadeout(duration) ⇒ Object
-
Fadeout Screen
110 111 112 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 110 def fadeout(duration) fade_loop(duration) {|v| Graphics.brightness = 255 - v } end |
#fadeout_speed ⇒ Object
-
Get Fade Out Speed
261 262 263 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 261 def fadeout_speed return 30 end |
#fadeout_speed_to_title ⇒ Object
-
Get Fade Out Speed for Title Screen Transition
273 274 275 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 273 def fadeout_speed_to_title return 60 end |
#perform_battle_transition ⇒ Object
-
Execute Pre-Battle Transition
254 255 256 257 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 254 def perform_battle_transition Graphics.transition(60, "Graphics/System/BattleStart", 100) Graphics.freeze end |
#perform_transfer ⇒ Object
-
Player Transfer Processing
203 204 205 206 207 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 203 def perform_transfer pre_transfer $game_player.perform_transfer post_transfer end |
#perform_transition ⇒ Object
-
Execute Transition
Performs a fade in when the screen has been blacked out, such as immediately after a battle or load.
26 27 28 29 30 31 32 33 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 26 def perform_transition if Graphics.brightness == 0 Graphics.transition(0) fadein(fadein_speed) else super end end |
#post_transfer ⇒ Object
-
Post Processing for Transferring Player
223 224 225 226 227 228 229 230 231 232 233 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 223 def post_transfer case $game_temp.fade_type when 0 Graphics.wait(fadein_speed / 2) fadein(fadein_speed) when 1 Graphics.wait(fadein_speed / 2) white_fadein(fadein_speed) end @map_name_window.open end |
#pre_battle_scene ⇒ Object
-
Preprocessing for Battle Screen Transition
237 238 239 240 241 242 243 244 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 237 def pre_battle_scene Graphics.update Graphics.freeze @spriteset.dispose_characters BattleManager.save_bgm_and_bgs BattleManager.play_battle_bgm Sound.play_battle_start end |
#pre_terminate ⇒ Object
-
Pre-Termination Processing
43 44 45 46 47 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 43 def pre_terminate super pre_battle_scene if SceneManager.scene_is?(Scene_Battle) pre_title_scene if SceneManager.scene_is?(Scene_Title) end |
#pre_title_scene ⇒ Object
-
Preprocessing for Title Screen Transition
248 249 250 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 248 def pre_title_scene fadeout(fadeout_speed_to_title) end |
#pre_transfer ⇒ Object
-
Preprocessing for Transferring Player
211 212 213 214 215 216 217 218 219 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 211 def pre_transfer @map_name_window.close case $game_temp.fade_type when 0 fadeout(fadeout_speed) when 1 white_fadeout(fadeout_speed) end end |
#scene_change_ok? ⇒ Boolean
-
Determine if Scene Transition Is Possible
71 72 73 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 71 def scene_change_ok? !$game_message.busy? && !$game_message.visible end |
#start ⇒ Object
-
Start Processing
11 12 13 14 15 16 17 18 19 20 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 11 def start super SceneManager.clear $game_player.straighten $game_map.refresh $game_message.visible = false create_spriteset create_all_windows @menu_calling = false end |
#terminate ⇒ Object
-
Termination Processing
51 52 53 54 55 56 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 51 def terminate super SceneManager.snapshot_for_background dispose_spriteset perform_battle_transition if SceneManager.scene_is?(Scene_Battle) end |
#transition_speed ⇒ Object
-
Get Transition Speed
37 38 39 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 37 def transition_speed return 15 end |
#update ⇒ Object
-
Frame Update
60 61 62 63 64 65 66 67 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 60 def update super $game_map.update(true) $game_player.update $game_timer.update @spriteset.update update_scene if scene_change_ok? end |
#update_call_debug ⇒ Object
-
Determine if Debug Call by F9 key
197 198 199 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 197 def update_call_debug SceneManager.call(Scene_Debug) if $TEST && Input.press?(:F9) end |
#update_call_menu ⇒ Object
-
Determine if Menu is Called due to Cancel Button
178 179 180 181 182 183 184 185 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 178 def if $game_system. || $game_map.interpreter.running? @menu_calling = false else @menu_calling ||= Input.trigger?(:B) if @menu_calling && !$game_player.moving? end end |
#update_encounter ⇒ Object
-
Update Encounter
172 173 174 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 172 def update_encounter SceneManager.call(Scene_Battle) if $game_player.encounter end |
#update_for_fade ⇒ Object
-
Update Frame (for Fade In)
87 88 89 90 91 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 87 def update_for_fade update_basic $game_map.update(false) @spriteset.update end |
#update_scene ⇒ Object
-
Update Scene Transition
77 78 79 80 81 82 83 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 77 def update_scene check_gameover update_transfer_player unless scene_changing? update_encounter unless scene_changing? unless scene_changing? update_call_debug unless scene_changing? end |
#update_transfer_player ⇒ Object
-
Update Player Transfer
166 167 168 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 166 def update_transfer_player perform_transfer if $game_player.transfer? end |
#white_fadein(duration) ⇒ Object
-
Screen Fade In (White)
116 117 118 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 116 def white_fadein(duration) fade_loop(duration) {|v| @viewport.color.set(255, 255, 255, 255 - v) } end |
#white_fadeout(duration) ⇒ Object
-
Screen Fade Out (White)
122 123 124 |
# File 'lib/rgss3_default_scripts/Scene_Map.rb', line 122 def white_fadeout(duration) fade_loop(duration) {|v| @viewport.color.set(255, 255, 255, v) } end |