CrowMakerVX

Gamepedia1.0

Dec 12th, 2012
292
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Ruby 24.82 KB | None | 0 0
  1. ################################################################################
  2. #                             Gamepedia 1.0
  3. #                             By: Ixfuru
  4. ################################################################################
  5.  
  6. ################################################################################
  7. #
  8. #   This script creates a scene of selectable windows that can display
  9. # information that you supply it.  It would be ideal for creating a how to guide,
  10. # or a good place to put credits.  You can basically use it as you wish, but I
  11. # created it as a personal need to provide an 'encyclopedia' for my project,
  12. # where one can look up and reference abbreviations, controls and other such
  13. # items that the player may need without the aid of an instruction manual.  
  14. # Follow the instructions in each section within the "CUSTOMIZATION SECTION"s to
  15. # set up what you want displayed.  I'll be using not only layman's terms for
  16. # those who want to 'use' the script, but I'll try to add some scripting info
  17. # as well so that someone who wants to add on to it, or get an idea from it, will
  18. # understand how I did the things I did.
  19. #
  20. # To call the scene, you just use the 'script' command on the third page inside
  21. # an event and enter:
  22. #
  23. #          $scene = Scene_Gamepedia.new
  24. #
  25. ################################################################################
  26. #
  27. ################################################################################
  28. #      THIS SCRIPT REQUIRES ModernAlgebra's ParagraphFormatter Script, which
  29. # can be found here:
  30. #
  31. #               http://rmrk.net/index.php/topic,25129.0.html
  32. #
  33. # You must abide by the rules and license statement on this page if you use his
  34. # script in conjunction with this one.
  35. ################################################################################
  36.  
  37. #*******************************************************************************
  38. #
  39. # You can use this script for free NON-COMMERCIALLY.  If you intend to market
  40. # your project and want to include my script, please just give credit to IXFURU
  41. # somewhere in the game (Maybe in the Gamepedia) and contact me to discuss
  42. # if any compensation would be necessary.
  43. #
  44. #*******************************************************************************
  45.  
  46. #*******************************************************************************
  47. #                             OTHER CREDITS:
  48. # LoganF was a great help with two of the lingering bugs in the script.
  49. # ThallionDarkshine, Heretic86 and Mangomight for offering their assistance on
  50. # the some bugs, as well.
  51. #
  52. # ModernAlgebra for his Paragraph Formatter script, without which, the Entries
  53. # window is not functional.
  54. #
  55. # A sample windowskin by Cassy was used to show the capability to show different
  56. # skins in the scene.  If you use this skin in your project, you must credit her.
  57. #
  58. # Here is a link to her other skins:
  59. #
  60. # http://www.rpgmakervx.net/index.php?showtopic=7859
  61. #
  62. #*******************************************************************************
  63.  
  64.  
  65. module GAMEPEDIA
  66.  
  67.   ##############################################################################
  68.   #                 CUSTOMIZATION SECTION START
  69.   ##############################################################################
  70.  
  71.   #*************                  PHAZE 1                  *********************
  72.   # The first order of business is to add strings as "Subjects".  These strings
  73.   # will be visible as selectable options in the Gamepedia scene.  Each 'Subject'
  74.   # will have a number of child 'Topics' which you will set up later.  For this
  75.   # section, just add to the given array below with double-quoted (") words
  76.   # (strings).  The order in which these subjects are placed will not only be
  77.   # important in the rest of the setup, but will be referenced as selectable
  78.   # indexes in the scene.
  79.   #*****************************************************************************
  80.  
  81.   SUBJECTS = ["ANIMALS", "FOOD", "SPORTS", "CREDITS"]
  82.  
  83.   #*************                  PHAZE 2                  *********************
  84.   # Next, you need to set up the 'Topics' in the below hash.  You must use the
  85.   # following formula to set it up:
  86.   #
  87.   #                        subject_position => [topic1, topic2, etc],
  88.   #
  89.   # subject_position:
  90.   #
  91.   # This is where you will reference the subjects in the first
  92.   # array above.  As all arrays start with 0, not 1, you'll need to use '0' as
  93.   # your subject_position.  The word position was given to show that you are in
  94.   # essence taking the subject in the array above from the given position in the
  95.   # array.  The topics will change in the Gamepedia scene, according to which
  96.   # subject is highlighted.  
  97.   #
  98.   # topics:
  99.   # You can place anything as the topics in the array, as long as they
  100.   # are double-quoted.  These will be the selectable options in the Topics
  101.   # selectable window in the scene.  Their order in the array will also be
  102.   # the order in which they are displayed.  
  103.   #
  104.   # It is important that you END EVERY ARRAY with a comma (,).  
  105.   #*****************************************************************************
  106.  
  107.   TOPICS = {#<<<Don't delete this!
  108.  
  109.   0 => ["DOGS", "CATS", "CROWS", "SALAMANDERS", "FROGS"],
  110.   1 => ["APPLES", "ORANGES", "ICE CREAM"],
  111.   2 => ["FOOTBALL", "BASEBALL", "BOXING", "BASKETBALL", "BOWLING", "MARTIAL ARTS"],
  112.   3 => ["SCRIPT HELP", "MAD GENIUSES", "REQUIREMENTS"]
  113.        
  114.   }#<<<Don't delete this!
  115.  
  116.   #*************                  PHAZE 3                  *********************
  117.   # This section enables you to set up the displayable text (or information)
  118.   # about the selected topic in the Gamepedia scene.  In the hash, you need to
  119.   # add a single string, which will then be shown in the large window.  This
  120.   # will be the guts of the Gamepedia scene, where you set up just what you want
  121.   # to display.  Though there is no limit to the amount of words or characters
  122.   # one can use in the string, you'll need to remember, it must be double-quoted
  123.   # and end in a comma, like before.  In addition, the ids (number to the left of
  124.   # the "=>"), should be in numerical order and all displayable text should be
  125.   # kept in the order of the topics above.  For instance, if you have the topic
  126.   # set up as follows:
  127.   #
  128.   #                  0 => [stuff, morestuff, scratches_head],
  129.   #                  1 => [people, chicks, more_chicks],
  130.   #
  131.   # You would then want to set up the ENTRIES in the same order.  Like this:
  132.   #
  133.   # 0 => stuff about stuff
  134.   # 1 => more stuff about more stuff
  135.   # 2 => why are you scratching your head
  136.   # 3 => talk about people
  137.   # 4 => talking about chicks
  138.   # 5 => chicks rule!
  139.   #
  140.   # This will make more sense in the next phaze.  But this is VERY IMPORTANT.  
  141.   # Failure to follow these guidelines will cause displayed text to not match the
  142.   # selected topic.  It may wise to place commented divider lines between the
  143.   # displays for each topic.  So the above would look more like this:
  144.   #
  145.   # 0 => stuff about stuff
  146.   # 1 => more stuff about more stuff
  147.   # 2 => why are you scratching your head
  148.   #--------------------2-----------------------
  149.   # 3 => talk about people
  150.   # 4 => talking about chicks
  151.   # 5 => chicks rule!
  152.   #
  153.   # That way, you would be sure you were adding the displayable entires for section
  154.   # 2 in the correct location.
  155.   #*****************************************************************************
  156.  
  157.   ENTRIES = {#<<<Don't delete this!
  158.  
  159.  
  160.   #---------------------ANIMAL TOPICS------------------------------------------
  161.   0 =>  "The first pet I can remember having when I was a kid was a dog named GYPSY.  GYPSY helped me and my siblings escape a horse which was chasing us.  Ultimately, GYPSY got really sick and died.",
  162.   1 => "We had a cat once named MOSES.  It was an all-black cat.  It had big green eyes.  We named it MOSES, yet after several months, it became obvious, MOSES was a girl!  We never considered changing her name.",
  163.   2 => "I've always liked Crows.  As Poe was the Raven, I have always considered myself a vast pupil of his, and likened myself a crow.  I even made a project once about a Red Crow.",
  164.   3 => "I found a salamander one day while termite treating a house.  I took the salamader home.  Me and my brother built a box to keep it in.  I thought the light was too bright.  Only a day after we made the box, he disappeared.  Either he escaped, or fizzled away from the heat of the overhead light.",
  165.   4 => "I had a shirt once that said, Frogs are the birds of the night.  They give it a voice.  I've always liked frogs because of that.  On a side note, never dump your grease from fried frog legs on a bush outside your home.",
  166.  
  167.   #---------------------FOOD TOPICS----------------------------------------
  168.   5 => "Apples are pretty good.  However, whoever decided to couple them with cinamon, needs shot.  There's no worse pop tart on the market, and no two flavors together have ever turned my taste buds inside out more.",
  169.   6 => "The best way to enjoy an orange is in drink form.  The wife and I had screwdrivers on our honeymoon.  But I forget what happened after that.",
  170.   7 => "Ice Cream is perhaps the greatest of all desserts.  As long as it isn't Apple Cinamon.",
  171.  
  172.   #-------------------SPORTS TOPICS--------------------------------------------------
  173.   8 => "There's no sport better than American Football.  There's no team I love more than the Cleveland Browns.  One day, maybe we'll make it to the Superbowl.  Then the rest of the league will quit ignoring us.",
  174.   9 => "When I was a kid, I loved to play baseball.  I played everyday.  I watched the Indians every night I could.  And I played on the local little league teams during their seasons.  I was a pitcher and a firstbaseman.",
  175.   10 => "Why is it that there are no good American Heavyweights anymore?  Back in the day, you had Foreman, Tyson, Holyfield, Bowe and countless others.  Now, The Europeans put out much better Heavyweights.",
  176.   11 => "I've never liked Basketball very much.  I was never very good at it.  And I think the games a little too simple for my taste.",
  177.   12 => "Is bowling even a sport?   I dont know, but I sure love to bowl.  I'm no good at it, but I love it just the same.  I think my high score is like a 140-something.",
  178.   13 => "Martial Arts are cool.  I like the UFC and MMA in general.  What I don't like however, is when they just lay on each other for 15 minutes.  That sucks!",
  179.  
  180.   #-----------------CREDITS TOPICS----------------------------------------------
  181.   45 => "Gotta give some credit to those who helped me with this script.  Whether their assistance ended up being useful or not.  Sometimes overlooked is the amount of time it takes just to TRY and help someone.  I appreciate it LoganF, Mangomight, Heretic60, ThallionDarkshine and Hungrysnake.",
  182.   109 => "I've seen a lot of good VX scripts.  I just want to mention a few of my favorites.  One of whom's scripts is a necessity for this script.  ModernAlgebra, Jet, Yanfly and ???noBody???",
  183.   16 => "I require many things.  One of the things I require the most is Pepsi.  I also require (though I wish I could quit) Camel Lights.  RPGMaker is a bit of a requirement, too.",
  184.  
  185.   }#<<<Don't delete this!
  186.  
  187.   #*************                  PHAZE 4                  *********************
  188.   # In this phaze you will reference the subjects, by their positions, (just like
  189.   # in the TOPICS hash, and you will then give a high and lo value following a
  190.   # boolean (true or false).  Now, if you've followed directions precisely, you
  191.   # should be able to place 'true' as the boolean in the first position of all
  192.   # the following inner-hash arrays.   However, just because I know that some
  193.   # may have made an error, or wish to add more entries later, I wanted to add
  194.   # some type of solution to get you out of a jam without having to re-order
  195.   # the entries above.  Here's how this all comes together:
  196.   #
  197.   # subject_position => [boolean true, low, high] or
  198.   # subject_position => [boolean false, entry1, entry2, entry3, etc.]
  199.   #
  200.   # You place the values just like you did in the topics, telling the system that
  201.   # the entries in this range are to be shown when a topic in this subject is
  202.   # selected.  
  203.   # Next, the boolean will be the answer to the following question for each
  204.   # subject:  
  205.   #       "Are the entries in the same order as their topics?"
  206.   # If you answer the question, "yes", then you want to place true, if "no", you'll
  207.   # put false.  
  208.   # Low and High are values between and including the entry ids above where the
  209.   # system will search for the displayable text information.  If you select true
  210.   # for your boolean, then the system will display the text in numerical order
  211.   # pertaining to which ever topic you have currently selected.
  212.   # If by chance you used 'false' as your boolean, any following values will be
  213.   # direct reference to specific entries.  If this is your setup:
  214.   #
  215.   # credits => [false, 7, 12, 3, 5, 9],
  216.   #
  217.   # Then as you move the cursor down the selected topics, it will jump to the
  218.   # values you provided dependent upon index.  entry 7 will be displayed when
  219.   # the cursor is in index position 0, entry 12 will be displayed when in index
  220.   # 1, and so on...
  221.   #
  222.   #*****************************************************************************
  223.  
  224.   ENTRY_INDEXES = {#<<<Don't delete this!
  225.  
  226.   0 => [true, 0, 4],
  227.   1 => [true, 5, 7],
  228.   2 => [true, 8, 13],
  229.   3 => [false, 45, 109, 16],  # This line demonstrates that you don't have to have
  230.                                 # the topics in any particular order.
  231.  
  232.   }#<<<Don't delete this
  233.  
  234.   #*************                  PHAZE 5                  *********************
  235.   # The last part of the customization just allows you to change trivial values
  236.   # that will be used in deciding colors and text during the scene.  
  237.   #*****************************************************************************
  238.  
  239.   ENCYCLOPEDIA_TITLE = "GAMEPEDIA"
  240.   TITLE_COLOR = 14
  241.   TOPIC_HEADING_COLOR = 27
  242.   NEW_WINDOWSKIN = true #Set to false if you just want to use the project's default skin
  243.   GP_WINDOWSKIN = "CassyOldWoodSkin"  #You MUST credit "Cassy" if you use this skin
  244.  
  245.  
  246.   ##############################################################################
  247.   #                         CUSTOMIZATION SECTION END
  248.   # If you alter anything below this point, you risk screwing things up.  
  249.   ##############################################################################
  250.  
  251. end
  252.  
  253. ################################################################################
  254. #                     Gamepedia Class
  255. ################################################################################
  256.  
  257. class Gamepedia
  258.  
  259.   include GAMEPEDIA
  260.  
  261.   attr_accessor :subjects
  262.   attr_accessor :topics
  263.   attr_accessor :entries
  264.  
  265.   def initialize
  266.     @subjects = SUBJECTS
  267.     @topics = TOPICS
  268.   end
  269.  
  270.   def get_entries(subject) #receives the value from the current subject index.
  271.     entdex = ENTRY_INDEXES
  272.     entkeys = ENTRIES.keys
  273.     subnow = subject
  274.     tempent = []
  275.     if entdex[subnow][0] == true
  276.       lo = entdex[subnow][1]
  277.       hi = entdex[subnow][2]
  278.       for i in lo..hi
  279.         tempent.push(i)
  280.       end
  281.       @entries = tempent
  282.       @entries.sort
  283.     else
  284.       get_jumbled_entries(subnow)
  285.     end
  286.   end
  287.  
  288.   #  This method retrieves displayable text from topics whose text is not in order
  289.   def get_jumbled_entries(subject)
  290.     entdex = ENTRY_INDEXES
  291.     entkeys = ENTRIES.keys
  292.     subnow = subject
  293.     tempent = []
  294.     for key in entkeys
  295.       if entdex[subnow].include?(key)
  296.         tempent.push(key)
  297.       end
  298.     end
  299.     @entries = tempent
  300.   end
  301.  
  302. end
  303.  
  304. ################################################################################
  305. #                         GAME TEMP
  306. ################################################################################
  307.  
  308. class Game_Temp
  309.  
  310.   attr_accessor :last_pediasubject
  311.  
  312.   alias nqenc_gtemp_initialize initialize unless $@
  313.   def initialize
  314.     nqenc_gtemp_initialize
  315.     @last_pediasubject = 0
  316.   end
  317.  
  318. end
  319.  
  320. ################################################################################
  321. #                    WINDOW: SUBJECTS COMMANDS
  322. ################################################################################
  323.  
  324. class Window_PediaSubjects < Window_Selectable
  325.  
  326.   include GAMEPEDIA
  327.  
  328.   def initialize(x, y)
  329.     super(x, y, 120, 416)
  330.     @item_max = $gamepedia.subjects.size
  331.     @commands = $gamepedia.subjects
  332.     if NEW_WINDOWSKIN
  333.       self.windowskin = Cache.system(GP_WINDOWSKIN)
  334.     end
  335.     refresh
  336.     self.index = $game_temp.last_pediasubject
  337.   end
  338.  
  339.   def refresh
  340.     self.contents.clear
  341.     for i in 0...@item_max
  342.       draw_item(i)
  343.     end
  344.   end
  345.  
  346.   def draw_item(index, enabled = true)
  347.     rect = item_rect(index)
  348.     rect.x += 4
  349.     rect.width -= 8
  350.     self.contents.font.color = normal_color
  351.     self.contents.font.size = 12
  352.     self.contents.draw_text(rect, @commands[index])
  353.   end
  354.  
  355. end
  356.  
  357. ################################################################################
  358. #                 WINDOW: TOPICS COMMANDS
  359. ################################################################################
  360.  
  361. class Window_PediaTopics < Window_Selectable
  362.  
  363.   include GAMEPEDIA
  364.  
  365.   attr_writer :item_max
  366.   attr_writer :commands
  367.  
  368.   def initialize(x, y)
  369.     super(x, y, 120, 416)
  370.     @item_max = $gamepedia.topics[$game_temp.last_pediasubject].size
  371.     @commands = $gamepedia.topics[$game_temp.last_pediasubject]
  372.     if NEW_WINDOWSKIN
  373.       self.windowskin = Cache.system(GP_WINDOWSKIN)
  374.     end
  375.     refresh
  376.     self.index = 0
  377.   end
  378.  
  379.   def refresh
  380.     create_contents
  381.     self.contents.clear
  382.     for i in 0...@item_max
  383.       draw_item(i)
  384.     end
  385.   end
  386.  
  387.   def change_commands(subject)
  388.     @item_max = $gamepedia.topics[subject].size
  389.     @commands = $gamepedia.topics[subject]
  390.   end
  391.  
  392.  
  393.   def draw_item(index, enabled = true)
  394.     rect = item_rect(index)
  395.     self.contents.clear_rect(rect)
  396.     rect.x += 4
  397.     rect.width -= 8
  398.     self.contents.font.color = normal_color
  399.     self.contents.font.size = 12
  400.     self.contents.draw_text(rect, @commands[index])
  401.   end
  402.  
  403. end
  404.  
  405. ################################################################################
  406. #                  WINDOW: VIEW TOPIC
  407. ################################################################################
  408.  
  409. class Window_PediaViewTopic < Window_Base
  410.  
  411.   include GAMEPEDIA
  412.  
  413.   def initialize(x, y, heading, entry)
  414.     super(x, y, 304, 346)
  415.     @heading = heading
  416.     @entry = entry
  417.     if NEW_WINDOWSKIN
  418.       self.windowskin = Cache.system(GP_WINDOWSKIN)
  419.     end
  420.     refresh
  421.   end
  422.  
  423.   def refresh
  424.     self.contents.clear
  425.     self.contents.font.size = 14    
  426.     self.contents.font.color = text_color(TOPIC_HEADING_COLOR)
  427.     self.contents.draw_text(-16, 0, self.width, WLH, @heading, 1)
  428.     self.contents.font.size = 12    
  429.     self.contents.font.color = normal_color
  430.     self.contents.draw_paragraph (0, WLH, self.width - 50, self.height, @entry)
  431.   end
  432.  
  433.  
  434.   def change_heading(heading)
  435.     @heading = heading
  436.   end
  437.  
  438.   def change_text(entry)
  439.     @entry = entry
  440.   end
  441.  
  442.  
  443. end
  444.  
  445. ################################################################################
  446. #                  WINDOW: ENCYCLOPEDIA TITLE
  447. ################################################################################
  448.  
  449. class Window_PediaTitle < Window_Base
  450.  
  451.   include GAMEPEDIA
  452.  
  453.   def initialize(x, y)
  454.     super(x, y, 304, 70)
  455.     if NEW_WINDOWSKIN
  456.       self.windowskin = Cache.system(GP_WINDOWSKIN)
  457.     end
  458.     refresh
  459.   end
  460.  
  461.   def refresh
  462.     et = ENCYCLOPEDIA_TITLE
  463.     self.contents.clear
  464.     self.contents.font.color = text_color(TITLE_COLOR)
  465.     self.contents.draw_text(-16, 0, self.width, WLH, et, 1)
  466.   end
  467.  
  468. end
  469.  
  470. ################################################################################
  471. #                        SCENE: TITLE
  472. ################################################################################
  473. class Scene_Title < Scene_Base
  474.  
  475.   alias nq_st_create_game_objects create_game_objects
  476.   def create_game_objects
  477.     nq_st_create_game_objects
  478.     $gamepedia = Gamepedia.new
  479.   end
  480.  
  481. end
  482.  
  483. ################################################################################
  484. #                        SCENE: FILE
  485. ################################################################################
  486.  
  487. class Scene_File < Scene_Base
  488.  
  489.   alias nq_sfile_write_save_data write_save_data
  490.   def write_save_data(file)
  491.     nq_sfile_write_save_data(file)
  492.     Marshal.dump($gamepedia, file)
  493.   end
  494.  
  495.   alias nq_sfile_read_save_data read_save_data
  496.   def read_save_data(file)
  497.     nq_sfile_read_save_data(file)
  498.     $gamepedia = Marshal.load(file)
  499.   end
  500.  
  501. end
  502.  
  503. ################################################################################
  504. #                        SCENE: ENCYCLOPEDIA
  505. ################################################################################
  506.  
  507. class Scene_Gamepedia < Scene_Base
  508.  
  509.   include GAMEPEDIA
  510.  
  511.   def start
  512.     super
  513.     create_menu_background
  514.     @win_title = Window_PediaTitle.new(241, 0)
  515.     @win_subjects = Window_PediaSubjects.new(0, 0)
  516.     @win_topics = Window_PediaTopics.new(121, 0)
  517.     get_current_heading
  518.     get_current_entry
  519.     @win_viewtopic = Window_PediaViewTopic.new(241, 71, @cur_head, @cur_entry)
  520.     @win_topics.active = false
  521.     @win_subjects.active = true
  522.   end
  523.  
  524.   #-----------------------------------------------------------------------------
  525.   #                        Get Current Entry Heading
  526.   #-----------------------------------------------------------------------------
  527.   def get_current_heading
  528.     @cur_head = $gamepedia.topics[@win_subjects.index][@win_topics.index]
  529.   end
  530.  
  531.   #-----------------------------------------------------------------------------
  532.   #                     Get Current Entry Text
  533.   #-----------------------------------------------------------------------------
  534.   def get_current_entry
  535.     $gamepedia.get_entries(@win_subjects.index)
  536.     @cur_entry = ENTRIES[$gamepedia.entries[@win_topics.index]]
  537.   end
  538.  
  539.   #-----------------------------------------------------------------------------
  540.   #                           Update
  541.   #-----------------------------------------------------------------------------
  542.   def update
  543.     super
  544.     update_menu_background
  545.     @win_title.refresh
  546.     if @win_subjects.active
  547.       @win_topics.change_commands(@win_subjects.index)
  548.       @win_topics.refresh
  549.       get_current_heading
  550.       get_current_entry
  551.       @win_viewtopic.change_heading(@cur_head)
  552.       @win_viewtopic.change_text(@cur_entry)
  553.       @win_viewtopic.refresh
  554.       update_subject_selection
  555.     elsif @win_topics.active
  556.       @win_topics.refresh
  557.       get_current_heading
  558.       get_current_entry
  559.       @win_viewtopic.change_heading(@cur_head)
  560.       @win_viewtopic.change_text(@cur_entry)
  561.       @win_viewtopic.refresh
  562.       update_topic_selection
  563.     end
  564.     @win_subjects.update
  565.     @win_topics.update
  566.   end
  567.  
  568.   #-----------------------------------------------------------------------------
  569.   #                    Activate Topics Window
  570.   #-----------------------------------------------------------------------------
  571.  
  572.   def activate_topics
  573.     @win_subjects.active = false
  574.     $game_temp.last_pediasubject = @win_subjects.index
  575.     @win_topics.active = true
  576.   end
  577.  
  578.   #-----------------------------------------------------------------------------
  579.   #                    Activate Subjects Window
  580.   #-----------------------------------------------------------------------------
  581.   def activate_subjects
  582.     @win_topics.active = false
  583.     @win_topics.index = 0
  584.     @win_subjects.index = $game_temp.last_pediasubject
  585.     @win_subjects.active = true
  586.   end
  587.  
  588.   #-----------------------------------------------------------------------------
  589.   #                       Update Subject Selection
  590.   #-----------------------------------------------------------------------------
  591.    
  592.   def update_subject_selection
  593.     if Input.trigger?(Input::B)
  594.       Sound.play_cancel
  595.       $scene = Scene_Map.new
  596.     elsif Input.trigger?(Input::C)
  597.       Sound.play_decision
  598.       activate_topics
  599.     end
  600.   end
  601.  
  602.   #-----------------------------------------------------------------------------
  603.   #                      Update Topic Selection
  604.   #-----------------------------------------------------------------------------
  605.  
  606.   def update_topic_selection
  607.     if Input.trigger?(Input::B)
  608.       Sound.play_cancel
  609.       activate_subjects
  610.     end
  611.   end
  612.  
  613.   #-----------------------------------------------------------------------------
  614.   #                       Terminate
  615.   #-----------------------------------------------------------------------------
  616.   def terminate
  617.     @win_title.dispose
  618.     @win_subjects.dispose
  619.     @win_topics.dispose
  620.     @win_viewtopic.dispose
  621.   end
  622.  
  623. end
Add Comment
Please, Sign In to add comment