The Law G14
Member
LAWS: Message on Game Load
By: TheLawG14 [aka. TheScripter]
Introduction
This is a pretty simple script, it was just based off a request I did for gRaViJa and I decided to release it to those that want it as well. What it does is show a message after loading a game file (for example: "Welcome Back!") and you can customize how long this message is shown and what is shown.
Features
Screenshots
Demo
None, it's a pretty simple script
Script
[rgss]#==============================================================================
# Title: Message on Game Load | Version 1.1
# Author: TheLawG14 [aka. TheScripter]
# Requester: gRaViJa [@ hbgames.org]
#==============================================================================
Text = "Welcome back, get ready!"
Wait_Time = 10000
#==============================================================================
# ** Scene_File
#------------------------------------------------------------------------------
# This is a superclass for the save screen and load screen.
#==============================================================================
class Scene_File
#--------------------------------------------------------------------------
# * Alias Listing
#--------------------------------------------------------------------------
alias scripter_scene_file_update update
#--------------------------------------------------------------------------
# * Main Processing
#--------------------------------------------------------------------------
def main
@message_window = Window_LoadMessage.new
# Make help window
@help_window = Window_Help.new
@help_window.set_text(@help_text)
# Make save file window
@savefile_windows = []
for i in 0..3
@savefile_windows.push(Window_SaveFile.new(i, make_filename(i)))
end
# Select last file to be operated
@file_index = $game_temp.last_file_index
@savefile_windows[@file_index].selected = true
# Execute transition
Graphics.transition
# Main loop
loop do
# Update game screen
Graphics.update
# Update input information
Input.update
# Frame update
update
# Abort loop if screen is changed
if $scene != self
break
end
end
# Prepare for transition
Graphics.freeze
# Dispose of windows
@help_window.dispose
@message_window.dispose
for i in @savefile_windows
i.dispose
end
end
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
@message_window.update
scripter_scene_file_update
end
end
#==============================================================================
# ** Scene_Load
#------------------------------------------------------------------------------
# This class performs load screen processing.
#==============================================================================
class Scene_Load < Scene_File
#--------------------------------------------------------------------------
# * Decision Processing
#--------------------------------------------------------------------------
def on_decision(filename)
@wait_count = Wait_Time
# If file doesn't exist
unless FileTest.exist?(filename)
# Play buzzer SE
$game_system.se_play($data_system.buzzer_se)
return
end
@message_window.visible = true
# Play load SE
$game_system.se_play($data_system.load_se)
# Read save data
file = File.open(filename, "rb")
read_save_data(file)
# Initialize loop count
@loop_count = 0
# Loop
loop do
Graphics.update
Input.update
# Add 1 to loop count
@loop_count += 1
# If 100 event commands ran
if @loop_count > 100
# Call Graphics.update for freeze prevention
Graphics.update
@loop_count = 0
end
if @wait_count > 0
# Decrease wait count
@wait_count -= 1
if @wait_count == 0
Graphics.freeze
break
end
end
break if Input.repeat?(Input::C)
end
file.close
# Restore BGM and BGS
$game_system.bgm_play($game_system.playing_bgm)
$game_system.bgs_play($game_system.playing_bgs)
# Update map (run parallel process event)
$game_map.update
# Switch to map screen
$scene = Scene_Map.new
end
end
#==============================================================================
# ** Window_LoadMessage
#------------------------------------------------------------------------------
# This window displays the loading message
#==============================================================================
class Window_LoadMessage < Window_Base
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
super(320 - ((Text.length * 15) / 2), 208, Text.length * 15, 96)
self.contents = Bitmap.new(width - 32, height - 32)
refresh
self.visible = false
self.z = 999
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color = system_color
self.contents.draw_text((self.width / 2) - ((Text.length * 15) / 2), 0,
Text.length * 10, 64, Text, 2)
end
end
#==============================================================================
#
# *** END OF SCRIPT ***
#
#==============================================================================
[/rgss]
Instructions
In the top of the script there are two Constant variables that you can edit. Just change them to your liking and the script does the rest.
Compatibility
There shouldn't be an compatibility issues, however if there are, please report them.
Credits and Thanks
Thanks to gRaViJa for the idea and request.
Terms and Conditions
Please just give me credit if you decide to use this script, thanks :D
By: TheLawG14 [aka. TheScripter]
Introduction
This is a pretty simple script, it was just based off a request I did for gRaViJa and I decided to release it to those that want it as well. What it does is show a message after loading a game file (for example: "Welcome Back!") and you can customize how long this message is shown and what is shown.
Features
- Shows a message after loading a file
- Can customize how long the message is shown and what the message says
- Can exit out message more quickly with action button
Screenshots

Demo
None, it's a pretty simple script
Script
[rgss]#==============================================================================
# Title: Message on Game Load | Version 1.1
# Author: TheLawG14 [aka. TheScripter]
# Requester: gRaViJa [@ hbgames.org]
#==============================================================================
Text = "Welcome back, get ready!"
Wait_Time = 10000
#==============================================================================
# ** Scene_File
#------------------------------------------------------------------------------
# This is a superclass for the save screen and load screen.
#==============================================================================
class Scene_File
#--------------------------------------------------------------------------
# * Alias Listing
#--------------------------------------------------------------------------
alias scripter_scene_file_update update
#--------------------------------------------------------------------------
# * Main Processing
#--------------------------------------------------------------------------
def main
@message_window = Window_LoadMessage.new
# Make help window
@help_window = Window_Help.new
@help_window.set_text(@help_text)
# Make save file window
@savefile_windows = []
for i in 0..3
@savefile_windows.push(Window_SaveFile.new(i, make_filename(i)))
end
# Select last file to be operated
@file_index = $game_temp.last_file_index
@savefile_windows[@file_index].selected = true
# Execute transition
Graphics.transition
# Main loop
loop do
# Update game screen
Graphics.update
# Update input information
Input.update
# Frame update
update
# Abort loop if screen is changed
if $scene != self
break
end
end
# Prepare for transition
Graphics.freeze
# Dispose of windows
@help_window.dispose
@message_window.dispose
for i in @savefile_windows
i.dispose
end
end
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
@message_window.update
scripter_scene_file_update
end
end
#==============================================================================
# ** Scene_Load
#------------------------------------------------------------------------------
# This class performs load screen processing.
#==============================================================================
class Scene_Load < Scene_File
#--------------------------------------------------------------------------
# * Decision Processing
#--------------------------------------------------------------------------
def on_decision(filename)
@wait_count = Wait_Time
# If file doesn't exist
unless FileTest.exist?(filename)
# Play buzzer SE
$game_system.se_play($data_system.buzzer_se)
return
end
@message_window.visible = true
# Play load SE
$game_system.se_play($data_system.load_se)
# Read save data
file = File.open(filename, "rb")
read_save_data(file)
# Initialize loop count
@loop_count = 0
# Loop
loop do
Graphics.update
Input.update
# Add 1 to loop count
@loop_count += 1
# If 100 event commands ran
if @loop_count > 100
# Call Graphics.update for freeze prevention
Graphics.update
@loop_count = 0
end
if @wait_count > 0
# Decrease wait count
@wait_count -= 1
if @wait_count == 0
Graphics.freeze
break
end
end
break if Input.repeat?(Input::C)
end
file.close
# Restore BGM and BGS
$game_system.bgm_play($game_system.playing_bgm)
$game_system.bgs_play($game_system.playing_bgs)
# Update map (run parallel process event)
$game_map.update
# Switch to map screen
$scene = Scene_Map.new
end
end
#==============================================================================
# ** Window_LoadMessage
#------------------------------------------------------------------------------
# This window displays the loading message
#==============================================================================
class Window_LoadMessage < Window_Base
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
super(320 - ((Text.length * 15) / 2), 208, Text.length * 15, 96)
self.contents = Bitmap.new(width - 32, height - 32)
refresh
self.visible = false
self.z = 999
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
self.contents.clear
self.contents.font.color = system_color
self.contents.draw_text((self.width / 2) - ((Text.length * 15) / 2), 0,
Text.length * 10, 64, Text, 2)
end
end
#==============================================================================
#
# *** END OF SCRIPT ***
#
#==============================================================================
[/rgss]
Instructions
In the top of the script there are two Constant variables that you can edit. Just change them to your liking and the script does the rest.
Compatibility
There shouldn't be an compatibility issues, however if there are, please report them.
Credits and Thanks
Thanks to gRaViJa for the idea and request.
Terms and Conditions
Please just give me credit if you decide to use this script, thanks :D