Help with Menu (RESOLVED)

Started by C.C. rOyAl, July 10, 2009, 02:00:40 am

Previous topic - Next topic

C.C. rOyAl

July 10, 2009, 02:00:40 am Last Edit: July 10, 2009, 02:37:01 am by C.C. rOyAl
ok so im practicing scripting so i figured a good place was to start with CMS's. Right now im just tryin to remake the default menu, usually i can fix the problems but everytime i do the script i cant get it to show the item, skill, equip, status, save, and quit scenes. what am i doing wrong? PLEASE HELP  :P

this is the script
Spoiler: ShowHide
# Menu Screen Tutorial
#  By XXXArchXAngelXXX  
#===============================================================================
class Scene_Menu
 def initialize(menu_index = 0)
   @menu_index=menu_index
 end
 
 def main
   s1=$data_system.words.item
   s2=$data_system.words.skill
   s3=$data_system.words.equip
   s4="Status"
   s5="Save"
   s6="End Game"
   @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
   @command_window.index=@menu_index
   if $game_party.actors.size == 0
     @command_window.disable_item(0)
     @command_window.disable_item(1)
     @command_window.disable_item(2)
     @command_window.disable_item(3)
   end
   if $game_system.save_disabled
     @command_window.disable_item(4)
   end
   
   #  Make the Play Time window.
   @playtime_window = Window_PlayTime.new
   @playtime_window.x = 0
   @playtime_window.y = 224
   #  Make the Steps window.
   @steps_window = Window_Steps.new
   @steps_window.x = 0
   @steps_window.y = 320
   #  Make the Gold display window.
   @gold_window = Window_Gold.new
   @gold_window.x = 0
   @gold_window.y = 416
   #  Make the Status window.
   @status_window = Window_MenuStatus.new
   @status_window.x = 160
   @status_window.y = 0
   
   Graphics.transition
   loop do
     Graphics.update
     Input.update
     update
     if $scene != self
       break
     end
   end
   
   Graphics.freeze
   @command_window.dispose
   @playtime_window.dispose
   @steps_window.dispose
   @gold_window.dispose
   @status_window.dispose
 end
 
 def update
   @command_window.update
   @playtime_window.update
   @steps_window.update
   @gold_window.update
   @status_window.update
   
   if @command_window.active
     update_command
     return
   end
   
   if @status_window.active
     update_status
     return
   end
 end
 
 def update_command
   if Input.trigger?(Input::B)
     $game_system.se_play($data_system.cancel_se)
     $scene = Scene_Map.new
     return
   end
   
   if Input.trigger?(Input::B)
     if game_party.actors.size == 0 and @command_window.index < 4
       $game_system.se_play($play_se.buzzer_se)
       return
     end
     
     case command_window.index
     when 0  # item
       # Play decision SE
       $game_system.se_play($data_system.decision_se)
       # Switch to item screen
       $scene = Scene_Item.new
     when 1  # skill
       # Play decision SE
       $game_system.se_play($data_system.decision_se)
       # Make status window active
       @command_window.active = false
       @status_window.active = true
       @status_window.index = 0
     when 2  # equipment
       # Play decision SE
       $game_system.se_play($data_system.decision_se)
       # Make status window active
       @command_window.active = false
       @status_window.active = true
       @status_window.index = 0
     when 3  # status
       # Play decision SE
       $game_system.se_play($data_system.decision_se)
       # Make status window active
       @command_window.active = false
       @status_window.active = true
       @status_window.index = 0
     when 4  # save
       # If saving is forbidden
       if $game_system.save_disabled
         # Play buzzer SE
         $game_system.se_play($data_system.buzzer_se)
         return
       end
       # Play decision SE
       $game_system.se_play($data_system.decision_se)
       # Switch to save screen
       $scene = Scene_Save.new
     when 5  # end game
       # Play decision SE
       $game_system.se_play($data_system.decision_se)
       # Switch to end game screen
       $scene = Scene_End.new
     end
     return
   end
 end
   
   def update_status
     if Input.trigger?(Input::B)
       $game_system.se_play($play_se.cancel_se)
       @command_window.active = true
       @status_window.active = false
       @status_window.index = -1
       return
     end
     
     if Input.trigger?(Input::C)
       case @command_window.index
       when 1
         if $game_party.actors[@status_window.index].restriction >= 2
           $game_system.se_play($play_se.buzzer_se)
           return
         end
         $game_system.se_play($play_se.decision_se)
         $scene = Scene_Skill.new(@status_window.index)
       when 2
         $game_system.se_play($play_se.decision_se)
         $scene = Scene_Equip.new(@status_window.index)
       when 3
         $game_system.se_play($play_se.decision_se)
         $scene = Scene_Status.new(@status_window.index)
       end
       return
     end
   end
 end




Use code tags when dealing with scripting stuff.
Spoiler: ShowHide

Fantasist

Quote
  def update_command
    if Input.trigger?(Input::B)
      $game_system.se_play($data_system.cancel_se)
      $scene = Scene_Map.new
      return
    end
   
    if Input.trigger?(Input::B)
      if game_party.actors.size == 0 and @command_window.index < 4
        $game_system.se_play($play_se.buzzer_se)
        return
      end
     


The second condition should be Input.trigger?(Input::C), right?
Do you like ambient/electronic music? Then you should promote a talented artist! Help out here. (I'm serious. Just listen to his work at least!)


The best of freeware reviews: Gizmo's Freeware Reviews




C.C. rOyAl

July 10, 2009, 02:12:26 am #2 Last Edit: July 10, 2009, 02:36:33 am by C.C. rOyAl
omg i cant beleive i didnt notice that!!! thanks :) well see how well it works now

EDIT:
crap now theres a problem on line 89 with 'game_party'

DOUBLE EDIT:
yay fixed everything :D  thanks fantasist








i
Spoiler: ShowHide