Advertisement
Demonicskyers

Jaberwocky's quest log

Jul 13th, 2013
624
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 24.14 KB | None | 0 0
  1. #==============================================================================
  2. # Jaberwocky's Quest Log
  3. # Mon Feb 26, 2007
  4. #------------------------------------------------------------------------------
  5. #
  6. #  CONTROLS IN THE QUEST LOG:
  7. #
  8. #  Up/Down arrows scroll through the list, Left/Right changes lists.
  9. #
  10. #------------------------------------------------------------------------------
  11. #
  12. #  INSTALLING INTO THE MENU:
  13. #
  14. #  To set up the quest log  so it is accessed through your menu, you will need
  15. #  to edit your Scene_Menu's 'main' and 'update_command' methods.
  16. #
  17. #  Editing the 'main' method requires you to add an additional 'Quest' command
  18. #  option and to perform any additional edits as required.
  19. #
  20. #  And when you edit the 'update_command' method,  you will insert  a block of
  21. #  code that includes the following statements:
  22. #
  23. #     $game_temp.quest_menu_calling = true
  24. #     $scene = Scene_Quests.new
  25. #
  26. #
  27. #------------------------------------------------------------------------------
  28. #
  29. #  BRINGING UP THE QUEST LOG SCREEN THROUGH A SCRIPT CALL:
  30. #
  31. #  You can call the quest log from a map.  To do so,  you will use script call
  32. #  such as this:  $scene = Scene_Quests.new
  33. #
  34. #  That's really it.
  35. #
  36. #------------------------------------------------------------------------------
  37. #
  38. #  TURNING ON/OFF QUESTS
  39. #
  40. #  Activating quests and turning on/off switches in the system is easy.
  41. #
  42. #  This system calls  on a series of switch arrays created  in the 'Game_Temp'
  43. #  class that identifies  which quests  have been performed.   By default, the
  44. #  switch array accessed are 'qupdate' and 'qupdate2'.  
  45. #
  46. #  To activate a quest, you turn on a switch in the array after specifying the
  47. #  number of the quest  and an  'objective number'  of 0 (zero).   This is the
  48. #  syntax of the script call:
  49. #
  50. #       $game_temp.qupdate[Quest Number][Objective Number] = true
  51. #
  52. #  So, to activate the third quest, use this:  $game_temp.qupdate[3][0] = true
  53. #
  54. #  Like I just stated, use an 'objective number' of 0.  
  55. #
  56. #  The quest number specifies the quest block in the list of quests, while the
  57. #  objective number identifies the tasks to be performed in your quests.   For
  58. #  the objective number,  setting 0 to 'true' will show the quest on the list.
  59. #  And values of 1 on up are the goals for the quest.
  60. #
  61. #  And these values can also be turned off by setting them to 'false'
  62. #
  63. #                                *  *  *
  64. #
  65. #  If you have a second page of quests, such as 'completed' quests, that use
  66. #  a 'qupdate2' value, you will use '$game_temp.qupdate2[Quest][Objective]'
  67. #  in your script calls.
  68. #
  69. #------------------------------------------------------------------------------
  70. #
  71. #  THE TWO PAGES OF LISTS  (What lists??):
  72. #
  73. #  By design, the system is set up to have only two lists of quests... the 1st
  74. #  list being  'incomplete' quests  (or quests in progress),  and the 2nd list
  75. #  being 'completed' quests.   The second list is typically a 'near duplicate'
  76. #  of the first list with subtle changes  to show that the quest(s) were done.
  77. #
  78. #  == This means the code for the first and second list are near identical ==
  79. #
  80. #  Each list you access is its own class.   You don't have to 'alias' anything,
  81. #  or do any super-special editing other than what you'll be instructed herein.
  82. #  The cool part is that each list of quests (completed or otherwise) can have
  83. #  its own setup. Each list can have its own rendered background image and its
  84. #  own collection of color choices for the text displayed.
  85. #  
  86. #------------------------------------------------------------------------------
  87. #
  88. #  ACCESSING A SPECIFIC PAGES OF LISTS:
  89. #
  90. #  By general design, when you call the Quest Log,  the system assumes you are
  91. #  going to load the very first list, or list #1.  Most of the time, this list
  92. #  is the 'incomplete' list.  But what if you want to access the second list?
  93. #
  94. #  You can specify exactly which page of lists  you wish to call  by using the
  95. #  'Scene_Quest' script call as explained earlier,  but with a minor change so
  96. #  you can specify which page.  Here's the syntax:
  97. #
  98. #  $scene = Scene_Quests.new(list number)
  99. #
  100. #  The 'list number' in the parentesis  indicates which list to access.  So if
  101. #  you wish to access the second list, use '$scene = Scene_Quests.new(2)'
  102. #
  103. #  NOTE:  Certain changes to the script may be necessary if you have more than
  104. #         two lists in your project.
  105. #  
  106. #------------------------------------------------------------------------------
  107. #
  108. #  MORE THAN TWO PAGE OF LISTS:
  109. #
  110. #  Again...  By design, the system is set up to have only 2 lists of quests...
  111. #  the 1st list being 'incomplete' quests (or quests in progress), and the 2nd
  112. #  list being 'completed' quests.  The second list is typically a 'near dupli-
  113. #  cate' of the first list with subtle changes  to show that the quest(s) were
  114. #  done.
  115. #
  116. #  But, you can increase the number of lists, thereby increasing the number of
  117. #  pages you can cycle through.  It will take some work.
  118. #
  119. #  *  First, take note  of the names of your 'quest pages',  aka the code with
  120. #     names such as  Game_Quest, Game_Quest2, Game_Quest3... etc.   It will be
  121. #     necessary to reference them in the script itself.   You will receive in-
  122. #     structions on this soon.
  123. #
  124. #  *  How many pages have you created?   Again, by design it is set up to have
  125. #     only 2 lists of quests.  But if you made three pages, then you will have
  126. #     to add an additional set of switches in the Game_Temp class. If you look
  127. #     in Game_Temp, you will see arrays such as 'qupdate' and 'qupdate2'.  For
  128. #     each additional quest page,  you'll need to create an additional qupdate
  129. #     array such as qupdate3.   In Game_Temp, you will need to add it into the
  130. #     Public Instance Variables  (aka those attr_accessors),  create it in the
  131. #     initialize method, and then add it into the for i in 0... loop.
  132. #
  133. #  *  The next thing  you will need to do  is edit the script  to allow you to
  134. #     load and save the additional qupdate arrays you just created.  These are
  135. #     easy to do just by copying the Marshall.load and Marshall.dump lines you
  136. #     will find in the script, and changing the qupdate names accordingly.
  137. #
  138. #  *  The nest step is to edit the 'initialize' method in Scene_Quests itself.
  139. #     Look at the 'case...end' block of code.  Right now, it only has two sets
  140. #     of code, one that loads the data from the Game_Quest class into $qdata
  141. #     and copies the qupdate array into the @quest_sw value, and the other
  142. #     that copies the data from Game_Quest2.... etc.  You will need to make a
  143. #     3rd case that copies your new page (Game_Quest3 ? ) into $qdata and have
  144. #     it copy its qupdate3(?) array of switches into @quest_sw.
  145. #
  146. #  *  Finally, at the bottom of the script,  in the  'update_command'  method,
  147. #     there are two blocks of code  that are executed  when you press the left
  148. #     or right buttons. Within these are some 'case...end' blocks of code that
  149. #     will reload the Quest Log based on the which page/list you are currently
  150. #     using.   So if you are currently on the 1st page/list  of quests and hit
  151. #     the [align=right] button, you should go to the 2nd page. You will want to add
  152. #     additional code to allow you to switch to the 3rd page when you're cur-
  153. #     rently on the 2nd page  when pressing the [align=right] button,  or switch to
  154. #     the 3rd page when you're on the 1st one when hitting the [align=left] button.
  155. #
  156. #     It'll take a little time to get it right for intermediate or beginner
  157. #     scripters, but not too long.  Good luck
  158. #  
  159. #------------------------------------------------------------------------------
  160. #
  161. #  TERMS:
  162. #
  163. #  Credit Jaberwocky if you use this.
  164. #
  165. #==============================================================================
  166.  
  167.  
  168. module JABERWOCKY
  169.   module_function
  170.  
  171.   # Quest Settings
  172.   #   General default settings to customize
  173.   #   your quest system and display.
  174.       Quest_Max       = 10            # Maximum number of quests
  175.       Quest_Backgrd   = ""    # Optional 'nil' to use map as background
  176.       Quest_Opacity   = 240           # Opacity of quest screen
  177.       Quest_Z         = 990           # Adjustable Z-Depth for the quest screen
  178.    
  179.  
  180.   # Quest Icons
  181.   #   The graphic icons that appear depending
  182.   #   on whether a goal has or hasn't been reached.
  183.   #   Must be placed in the Graphics\Icon folder.
  184.   #   ==Optional.  May set to 'nil'==
  185.       InProgress      = "aktywne"
  186.       Completed       = "skonczone"
  187.  
  188.   # Coordinate Settings for the command window
  189.   #   This affects the command window system
  190.   #   and not the background image itself.
  191.       QCommand_X      = -10
  192.       QCommand_Y      =  50
  193.       QCommand_Width  = 182
  194.       QCommand_Height = 380
  195.  
  196.   # Coordinate Settings for the description window
  197.   #   This affects the placement of the quest text
  198.   #   and not the background image itself.  
  199.       QDescrips_X      = 160
  200.       QDescrips_Y      = 75
  201.       QDescrips_Width  = 480  
  202.       QDescrips_Height = 480  
  203.  
  204. end
  205.  
  206.  
  207.  
  208. #==============================================================================
  209. # ** Bitmap
  210. #------------------------------------------------------------------------------
  211. #  The bitmap class. Bitmaps are expressions of so-called graphics.
  212. #==============================================================================
  213.  
  214. class Bitmap
  215.   #--------------------------------------------------------------------------
  216.   # * Object Initialization
  217.   #     x         : x-coordinates
  218.   #     y         : y-coordinates
  219.   #     width     : window width
  220.   #     height    : window height
  221.   #     align     : text alignment
  222.   #     ouline    : text outline color
  223.   #     inside    : text interior color
  224.   #--------------------------------------------------------------------------  
  225.   def draw_text_outline_custom(x, y, width, height, text, align, outline, inside)
  226.     if $qdata.useoutlines == true
  227.       self.font.color = outline
  228.       draw_text(x + 1, y + 1, width, height, text, align)
  229.       draw_text(x + 1, y - 1, width, height, text, align)
  230.       draw_text(x - 1, y - 1, width, height, text, align)
  231.       draw_text(x - 1, y + 1, width, height, text, align)
  232.     end
  233.     self.font.color = inside
  234.     draw_text(x, y, width, height, text, align)
  235.   end
  236. end
  237.  
  238.  
  239.  
  240. #==============================================================================
  241. # ** Game_Temp
  242. #------------------------------------------------------------------------------
  243. #  This class handles temporary data that is not included with save data.
  244. #  Refer to "$game_temp" for the instance of this class.
  245. #==============================================================================
  246.  
  247. class Game_Temp
  248.   #--------------------------------------------------------------------------
  249.   # * Public Instance Variables
  250.   #--------------------------------------------------------------------------
  251.   attr_accessor :map_bgm                  # map music (for battle memory)
  252.   attr_accessor :qupdate                  # quest switch arrays
  253.   attr_accessor :qupdate2                 # quest switch arrays
  254.   attr_accessor :quest_menu_calling       # quest calling flag (menu)  
  255.   #--------------------------------------------------------------------------
  256.   # * Object Initialization
  257.   #--------------------------------------------------------------------------
  258.   alias asdfghjkl initialize
  259.   def initialize
  260.     # Perform the original call
  261.     asdfghjkl
  262.     # Create the quest switch arrays
  263.     @qupdate            = []
  264.     @qupdate2           = []
  265.     # Set the default call switch
  266.     @quest_menu_calling = false
  267.     # Increase the switch arrays to the number of quests
  268.     for i in 0...JABERWOCKY::Quest_Max
  269.       @qupdate[i]   = []
  270.       @qupdate2[i]  = []
  271.     end
  272.   end
  273. end
  274.  
  275.  
  276.  
  277. #==============================================================================
  278. # ** Window_Quest
  279. #------------------------------------------------------------------------------
  280. #  This window displays the quest screen,  including the descriptive text and
  281. #  the goals for the quest in progress.  Goals change colors and have an icon
  282. #  next to them.
  283. #==============================================================================
  284.  
  285. class Window_Quest < Window_Base
  286.   #--------------------------------------------------------------------------
  287.   # * Object Initialization
  288.   #--------------------------------------------------------------------------  
  289.   def initialize
  290.     super(0, 0, JABERWOCKY::QDescrips_Width, JABERWOCKY::QDescrips_Height)
  291.     self.contents = Bitmap.new(width - 32, height - 32)
  292.     refresh
  293.   end
  294.   #--------------------------------------------------------------------------
  295.   # * Refresh
  296.   #--------------------------------------------------------------------------  
  297.   def refresh
  298.     self.contents.clear
  299.     # Set the line count to 0
  300.     y = 0
  301.     # For every line in the description array
  302.     for i in 0...$qdata.desc[$scene.quest_id[$scene.command_window.index]].size
  303.       # Draw each line of text
  304.       self.contents.draw_text_outline_custom(2, 24 * y,
  305.         JABERWOCKY::QDescrips_Width, 32, $qdata.desc[$scene.
  306.         quest_id[$scene.command_window.index]][i], 0, $qdata.descoutline,
  307.         $qdata.desctext)
  308.       # Increase the line count  
  309.       y += 1
  310.     end
  311.     # For each line in the goal array
  312.     for i in 0...$qdata.goals[$scene.quest_id[$scene.command_window.index]].size
  313.       # Increase the line count
  314.       y += 1
  315.       # If this goal has been completed
  316.       if $scene.quest_sw[$scene.quest_id[$scene.command_window.index]][i + 1]
  317.         # Draw the completed icon if available
  318.         unless JABERWOCKY::Completed == nil
  319.           bitmap = RPG::Cache.icon(JABERWOCKY::Completed)
  320.           self.contents.blt(0, 4 + ( y * 24) , bitmap, Rect.new(0, 0, 18, 18))
  321.         end
  322.         # Draw each line of text
  323.         self.contents.draw_text_outline_custom(24, 0 + (y * 24),
  324.           JABERWOCKY::QDescrips_Width-24, 24, $qdata.goals[$scene.
  325.           quest_id[$scene.command_window.index]][i], 0, $qdata.compoutline,
  326.           $qdata.comptext)
  327.       # If this goal has not been reached
  328.       else
  329.         # Draw the incomplete icon if available
  330.         unless JABERWOCKY::InProgress == nil
  331.           bitmap = RPG::Cache.icon(JABERWOCKY::InProgress)
  332.           self.contents.blt(0, 4 + ( y * 24) , bitmap, Rect.new(0, 0, 18, 18))
  333.         end
  334.         # Draw each line of text
  335.         self.contents.draw_text_outline_custom(24, 0 + (y * 24),
  336.           JABERWOCKY::QDescrips_Width-24, 24, $qdata.goals[$scene.
  337.           quest_id[$scene.command_window.index]][i], 0, $qdata.incompoutline,
  338.           $qdata.incomptext)
  339.       end
  340.     end
  341.   end
  342. end
  343.  
  344.  
  345.  
  346. #==============================================================================
  347. # ** Window_QCmand
  348. #------------------------------------------------------------------------------
  349. #  This window displays the list of quests on the left.
  350. #==============================================================================
  351.  
  352. class Window_Qmand < Window_Selectable
  353.   #--------------------------------------------------------------------------
  354.   # * Object Initialization
  355.   #     width    : window width
  356.   #     commands : command text string array
  357.   #--------------------------------------------------------------------------  
  358.   def initialize(commands)
  359.     super(JABERWOCKY::QCommand_X,     JABERWOCKY::QCommand_Y,
  360.           JABERWOCKY::QCommand_Width, JABERWOCKY::QCommand_Height)
  361.     self.contents = Bitmap.new(width - 32, commands.size * 32)
  362.     @commands     = commands
  363.     @item_max     = @commands.size
  364.     self.index    = 0
  365.     refresh
  366.   end
  367.   #--------------------------------------------------------------------------
  368.   # * Refresh
  369.   #--------------------------------------------------------------------------  
  370.   def refresh
  371.     self.contents.clear
  372.     for i in 0...@commands.size
  373.       self.contents.draw_text_outline_custom(0, 32 * i, self.contents.width, 32,
  374.                             @commands[i],1, $qdata.menuoutline, $qdata.menutext)
  375.     end
  376.   end
  377. end
  378.  
  379.  
  380.  
  381. #==============================================================================
  382. # ** Scene_Save
  383. #------------------------------------------------------------------------------
  384. #  This class performs save screen processing.
  385. #==============================================================================
  386.  
  387. class Scene_Save < Scene_File
  388.   #--------------------------------------------------------------------------
  389.   # * Write Save Data
  390.   #     file : write file object (opened)
  391.   #--------------------------------------------------------------------------
  392.   alias qwertyuiop write_save_data
  393.   def write_save_data(file)
  394.     # Perform the original call
  395.     qwertyuiop(file)
  396.     # Save the quest switch data
  397.     Marshal.dump($game_temp.qupdate,  file)
  398.     Marshal.dump($game_temp.qupdate2, file)
  399.   end
  400. end
  401.  
  402.  
  403.  
  404. #==============================================================================
  405. # ** Scene_Load
  406. #------------------------------------------------------------------------------
  407. #  This class performs load screen processing.
  408. #==============================================================================
  409.  
  410. class Scene_Load < Scene_File
  411.   #--------------------------------------------------------------------------
  412.   # * Read Save Data
  413.   #     file : file object for reading (opened)
  414.   #--------------------------------------------------------------------------
  415.   alias zxcvbnm read_save_data
  416.   def read_save_data(file)
  417.     # Perform the original call
  418.     zxcvbnm(file)
  419.     # Load the quest switch data
  420.     $game_temp.qupdate  = Marshal.load(file)
  421.     $game_temp.qupdate2 = Marshal.load(file)
  422.   end
  423. end
  424.  
  425.  
  426.  
  427. #==============================================================================
  428. # ** Scene_Quests
  429. #------------------------------------------------------------------------------
  430. #  This class performs quest screen processing.
  431. #==============================================================================
  432.  
  433. class Scene_Quests
  434.   #--------------------------------------------------------------------------
  435.   # * Public Instance Variables
  436.   #--------------------------------------------------------------------------
  437.   attr_accessor  :quest_id                # quest ID numbers
  438.   attr_accessor  :command_window          # command window
  439.   attr_accessor  :quest_sw                # quest switches
  440.   #--------------------------------------------------------------------------
  441.   # * Object Initialization
  442.   #     list : quest list number
  443.   #--------------------------------------------------------------------------  
  444.   def initialize(list = 1)
  445.     @quest_index = 0
  446.     @currentlist = list
  447.     case list
  448.     # HEREIN DECIDES WHICH PAGE TO SWITCH    
  449.     when 1  ; $qdata    = Game_Quest.new
  450.               @quest_sw = $game_temp.qupdate
  451.     when 2  ; $qdata    = Game_Quest2.new
  452.               @quest_sw = $game_temp.qupdate2
  453.     # ===================================
  454.     end
  455.   end
  456.   #--------------------------------------------------------------------------
  457.   # * Main Processing
  458.   #--------------------------------------------------------------------------
  459.   def main
  460.     # Displays the background picture, or the map if set to nil
  461.     if JABERWOCKY::Quest_Backgrd == nil
  462.       @spriteset = Spriteset_Map.new
  463.     else
  464.       @backpic            = Sprite.new
  465.       @backpic.bitmap     = RPG::Cache.picture(JABERWOCKY::Quest_Backgrd)
  466.       @backpic.z          = JABERWOCKY::Quest_Z
  467.     end
  468.     # Show the quest page's pic if available
  469.     unless $qdata.backpicture == nil
  470.       @questback          = Sprite.new
  471.       @questback.bitmap   = RPG::Cache.picture($qdata.backpicture)
  472.       @questback.opacity  = JABERWOCKY::Quest_Opacity
  473.       @questback.z        = JABERWOCKY::Quest_Z + 1
  474.     end
  475.     # Create the quest arrays
  476.     questwin            = []
  477.     @quest_id           = []
  478.     # Increase the switch arrays to the number of quests
  479.     for i in 1...JABERWOCKY::Quest_Max
  480.       if @quest_sw[i][0] == true
  481.         questwin.push($qdata.name[i])
  482.         @quest_id.push(i)
  483.       end
  484.     end
  485.     # Add the quest names to the command window array
  486.     if questwin.size == 0
  487.       questwin.push($qdata.name[0])
  488.       @quest_id.push(0)
  489.     end
  490.     # Create the quest command window
  491.     @command_window         = Window_Qmand.new(questwin)
  492.     @command_window.index   = @quest_index
  493.     @command_window.opacity = 0
  494.     @command_window.z       = JABERWOCKY::Quest_Z + 2
  495.     # Create the window for the description text and goals:
  496.     @desc_window            = Window_Quest.new
  497.     @desc_window.x          = JABERWOCKY::QDescrips_X
  498.     @desc_window.y          = JABERWOCKY::QDescrips_Y
  499.     @desc_window.z          = JABERWOCKY::Quest_Z + 2
  500.     @desc_window.opacity    = 0
  501.     # Execute transition
  502.     Graphics.transition
  503.     # Main loop
  504.     loop do
  505.       # Update game screen
  506.       Graphics.update
  507.       # Update input information
  508.       Input.update
  509.       # Frame update
  510.       update_command
  511.       # Abort loop if screen is changed
  512.       break if $scene != self
  513.     end    
  514.     # Dispose of the command and description windows
  515.     @command_window.contents.clear
  516.     @command_window.dispose
  517.     @desc_window.contents.clear
  518.     @desc_window.dispose
  519.     # Dispose the background picture or spritesheet
  520.     if JABERWOCKY::Quest_Backgrd == nil
  521.       @spriteset.dispose
  522.     else
  523.       @backpic.dispose
  524.     end
  525.     # Dispose the quest page picture if it exists
  526.     unless $qdata.backpicture == nil
  527.       @questback.dispose unless @questback == nil
  528.     end
  529.   end
  530.   #--------------------------------------------------------------------------
  531.   # * Frame Update (when command window is active)
  532.   #--------------------------------------------------------------------------
  533.   def update_command
  534.     # If the up directional button was pressed
  535.     if Input.repeat?(Input::UP)
  536.       if @command_window.index == 0
  537.         @command_window.index = @quest_id.size - 1
  538.       else
  539.         @command_window.index -= 1
  540.       end
  541.       unless @quest_id.size == 1
  542.         # Play cursor SE
  543.         $game_system.se_play($data_system.cursor_se) unless @quest_id.size == 1
  544.         # Refresh the description window
  545.         @desc_window.refresh
  546.       end
  547.     end
  548.     # If the down directional button was pressed
  549.     if Input.repeat?(Input::DOWN)
  550.       if @command_window.index == @quest_id.size - 1
  551.         @command_window.index = 0
  552.       else
  553.         @command_window.index += 1
  554.       end
  555.       unless @quest_id.size == 1
  556.         # Play cursor SE
  557.         $game_system.se_play($data_system.cursor_se)
  558.         # Refresh the description window
  559.         @desc_window.refresh
  560.       end
  561.     end
  562.     # If B button was pressed
  563.     if Input.trigger?(Input::B)
  564.       # Play cancel SE
  565.       $game_system.se_play($data_system.cancel_se)
  566.       # If called from the menu
  567.       if $game_temp.quest_menu_calling
  568.         # Clear save call flag
  569.         $game_temp.quest_menu_calling = false
  570.         # Switch to the menu screen
  571.         $scene = Scene_Menu.new(4)
  572.         return
  573.       end      
  574.       # Switch to the map screen
  575.       $scene = Scene_Map.new
  576.       return
  577.     end
  578.     # If the left directional button was pressed
  579.     if Input.trigger?(Input::LEFT)
  580.       # Play cursor SE
  581.       $game_system.se_play($data_system.cursor_se)
  582.       # Dispose the quest page picture if it exists
  583.       @questback.dispose unless $qdata.backpicture == nil
  584.       # Branch by currently loaded quest page
  585.       case @currentlist
  586.         # HEREIN DECIDES WHICH PAGE TO SWITCH
  587.         when 1  ; $scene = Scene_Quests.new(2)          
  588.         when 2  ; $scene = Scene_Quests.new(1)
  589.         # ===================================
  590.       end
  591.     end
  592.     # If the right directional button was pressed
  593.     if Input.trigger?(Input::RIGHT)
  594.       # Play cursor SE
  595.       $game_system.se_play($data_system.cursor_se)
  596.       # Dispose the quest page picture if it exists
  597.       @questback.dispose unless $qdata.backpicture == nil
  598.       # Branch by currently loaded quest page
  599.       case @currentlist
  600.         # HEREIN DECIDES WHICH PAGE TO SWITCH
  601.         when 1  ; $scene = Scene_Quests.new(2)          
  602.         when 2  ; $scene = Scene_Quests.new(1)
  603.         # ===================================
  604.       end
  605.     end
  606.   end
  607. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement