The script in question *credit to TheScripter*
The event I have is set up similar to this.
Move Event- Player
> script: $scene = Scene_Book_A.new
> wait 20 frames
This was working fine, and for the others I'd use the same event, only call one of the other scenes. The weird thing is out of no where, this stopped working. No matter what, the script works as if I called Scene_Book3, all the time. Anyone know what the problem could be?
Code:
Bitmaps = ["Small House- Page 1", "Small House- Page 2", "Small House- Page 3",
"Small House- Page 4", "Small House- Page 5"]
#==============================================================================
# ** Sprite_Book
#------------------------------------------------------------------------------
# This sprite is used to display the timer.It observes the $game_system
# class and automatically changes sprite conditions.
#==============================================================================
class Scene_Book_A
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
@index = 0
@size = Bitmaps.size
end
#--------------------------------------------------------------------------
# * Main Processing
#--------------------------------------------------------------------------
def main
# Make graphic
@sprite = Sprite.new
@sprite.bitmap = RPG::Cache.picture(Bitmaps[0])
# 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 graphic
@sprite.bitmap.dispose
@sprite.dispose
end
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
if Input.trigger?(Input::RIGHT)
next_page
end
if Input.trigger?(Input::LEFT)
previous_page
end
end
#--------------------------------------------------------------------------
# * Next Page
#--------------------------------------------------------------------------
def next_page
if @index != (@size - 1)
@index += 1
@sprite.bitmap = RPG::Cache.picture(Bitmaps[@index])
$game_system.se_play($data_system.actor_collapse_se)
else
$scene = Scene_Map.new
end
end
#--------------------------------------------------------------------------
# * Previous Page
#--------------------------------------------------------------------------
def previous_page
if @index != 0
@index -= 1
@sprite.bitmap = RPG::Cache.picture(Bitmaps[@index])
$game_system.se_play($data_system.actor_collapse_se)
else
# Play buzzer SE
$game_system.se_play($data_system.buzzer_se)
end
end
end
############
#Letter 2##
############
Bitmaps = ["LH Hunting Page 1", "LH Hunting Page 2", "LH Hunting Page 3"]
#==============================================================================
# ** Sprite_Book
#------------------------------------------------------------------------------
# This sprite is used to display the timer.It observes the $game_system
# class and automatically changes sprite conditions.
#==============================================================================
class Scene_Book2
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
@index = 0
@size = Bitmaps.size
end
#--------------------------------------------------------------------------
# * Main Processing
#--------------------------------------------------------------------------
def main
# Make graphic
@sprite = Sprite.new
@sprite.bitmap = RPG::Cache.picture(Bitmaps[0])
# 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 graphic
@sprite.bitmap.dispose
@sprite.dispose
end
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
if Input.trigger?(Input::RIGHT)
next_page
end
if Input.trigger?(Input::LEFT)
previous_page
end
end
#--------------------------------------------------------------------------
# * Next Page
#--------------------------------------------------------------------------
def next_page
if @index != (@size - 1)
@index += 1
@sprite.bitmap = RPG::Cache.picture(Bitmaps[@index])
$game_system.se_play($data_system.actor_collapse_se)
else
$scene = Scene_Map.new
end
end
#--------------------------------------------------------------------------
# * Previous Page
#--------------------------------------------------------------------------
def previous_page
if @index != 0
@index -= 1
@sprite.bitmap = RPG::Cache.picture(Bitmaps[@index])
$game_system.se_play($data_system.actor_collapse_se)
else
# Play buzzer SE
$game_system.se_play($data_system.buzzer_se)
end
end
end
Bitmaps = ["LH Can 1", "LH Can 2"]
#==============================================================================
# ** Sprite_Book
#------------------------------------------------------------------------------
# This sprite is used to display the timer.It observes the $game_system
# class and automatically changes sprite conditions.
#==============================================================================
class Scene_Book3
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
@index = 0
@size = Bitmaps.size
end
#--------------------------------------------------------------------------
# * Main Processing
#--------------------------------------------------------------------------
def main
# Make graphic
@sprite = Sprite.new
@sprite.bitmap = RPG::Cache.picture(Bitmaps[0])
# 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 graphic
@sprite.bitmap.dispose
@sprite.dispose
end
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
if Input.trigger?(Input::RIGHT)
next_page
end
if Input.trigger?(Input::LEFT)
previous_page
end
end
#--------------------------------------------------------------------------
# * Next Page
#--------------------------------------------------------------------------
def next_page
if @index != (@size - 1)
@index += 1
@sprite.bitmap = RPG::Cache.picture(Bitmaps[@index])
$game_system.se_play($data_system.actor_collapse_se)
else
$scene = Scene_Map.new
end
end
#--------------------------------------------------------------------------
# * Previous Page
#--------------------------------------------------------------------------
def previous_page
if @index != 0
@index -= 1
@sprite.bitmap = RPG::Cache.picture(Bitmaps[@index])
$game_system.se_play($data_system.actor_collapse_se)
else
# Play buzzer SE
$game_system.se_play($data_system.buzzer_se)
end
end
end
The event I have is set up similar to this.
Move Event- Player
> script: $scene = Scene_Book_A.new
> wait 20 frames
This was working fine, and for the others I'd use the same event, only call one of the other scenes. The weird thing is out of no where, this stopped working. No matter what, the script works as if I called Scene_Book3, all the time. Anyone know what the problem could be?