REQUEST, Custom menu (Only "Item" "Save" and "End game" tab. PLEASE HELP

Greytizi

Warper
Member
Joined
Sep 1, 2013
Messages
1
Reaction score
0
Primarily Uses
Im making a RPG horror game and I want a menu that has only the "Item" "Save" and "End game" tab. I dont want the "Skills" "Status" or "Equip" there. Im not good at scripting or anything. PLEASE help. Im using RPG XP if that helps any 
 

Shaz

Veteran
Veteran
Joined
Mar 2, 2012
Messages
38,344
Reaction score
11,939
First Language
English
Primarily Uses
RMMV
Ahhh, crumbs! It'd have to be XP, wouldn't it? I was just about to post one I'd already done in Ace for someone else's request.


Wish XP's classes were as streamlined as Ace's. Here you go - paste this into a new slot above Main and below all other scripts:

Spoiler


Code:
class Scene_Menu
  #--------------------------------------------------------------------------
  # * Main Processing
  #--------------------------------------------------------------------------
  def main
    # Make command window
    s1 = $data_system.words.item
    s2 = "Save"
    s3 = "End Game"
    @command_window = Window_Command.new(160, [s1, s2, s3])
    @command_window.index = @menu_index
    
    # If number of party members is 0
    if $game_party.actors.size == 0
      # Disable items, skills, equipment, and status
      @command_window.disable_item(0)
    end
    
    # If save is forbidden
    if $game_system.save_disabled
      # Disable save
      @command_window.disable_item(1)
    end
    
    # Make play time window
    @playtime_window = Window_PlayTime.new
    @playtime_window.x = 0
    @playtime_window.y = 224
    
    # Make steps window
    @steps_window = Window_Steps.new
    @steps_window.x = 0
    @steps_window.y = 320
    
    # Make gold window
    @gold_window = Window_Gold.new
    @gold_window.x = 0
    @gold_window.y = 416
    
    # Make status window
    @status_window = Window_MenuStatus.new
    @status_window.x = 160
    @status_window.y = 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 windows
    @command_window.dispose
    @playtime_window.dispose
    @steps_window.dispose
    @gold_window.dispose
    @status_window.dispose
  end
  #--------------------------------------------------------------------------
  # * Frame Update (when command window is active)
  #--------------------------------------------------------------------------
  def update_command
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Switch to map screen
      $scene = Scene_Map.new
      return
    end
    
    # If C button was pressed
    if Input.trigger?(Input::C)
      # If command other than save or end game, and party members = 0
      if $game_party.actors.size == 0 and @command_window.index < 1
        # Play buzzer SE 
        $game_system.se_play($data_system.buzzer_se)
        return
      end
      # Branch by command window cursor position
      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# 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 2# 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
end

class Scene_Save < Scene_File
  #--------------------------------------------------------------------------
  # * Decision Processing
  #--------------------------------------------------------------------------
  def on_decision(filename)
    # Play save SE
    $game_system.se_play($data_system.save_se)
    # Write save data
    file = File.open(filename, "wb")
    write_save_data(file)
    file.close
    
    # If called from event
    if $game_temp.save_calling
      # Clear save call flag
      $game_temp.save_calling = false
      # Switch to map screen
      $scene = Scene_Map.new
      return
    end
    
    # Switch to menu screen
    $scene = Scene_Menu.new(1)
  end
  #--------------------------------------------------------------------------
  # * Cancel Processing
  #--------------------------------------------------------------------------
  def on_cancel
    # Play cancel SE
    $game_system.se_play($data_system.cancel_se)
    
    # If called from event
    if $game_temp.save_calling
      # Clear save call flag
      $game_temp.save_calling = false
      # Switch to map screen
      $scene = Scene_Map.new
      return
    end
    
    # Switch to menu screen
    $scene = Scene_Menu.new(1)
  end
end

class Scene_End
  #--------------------------------------------------------------------------
  # * Frame Update
  #--------------------------------------------------------------------------
  def update
    # Update command window
    @command_window.update
    
    # If B button was pressed
    if Input.trigger?(Input::B)
      # Play cancel SE
      $game_system.se_play($data_system.cancel_se)
      # Switch to menu screen
      $scene = Scene_Menu.new(2)
      return
    end
    
    # If C button was pressed
    if Input.trigger?(Input::C)
      # Branch by command window cursor position
      case @command_window.index
        when 0# to title
          command_to_title
        when 1# shutdown
          command_shutdown
        when 2# quit
          command_cancel
        end
      return
    end
  end
  #--------------------------------------------------------------------------
  # *Process When Choosing [Cancel] Command
  #--------------------------------------------------------------------------
  def command_cancel
    # Play decision SE
    $game_system.se_play($data_system.decision_se)
    # Switch to menu screen
    $scene = Scene_Menu.new(2)
  end
end

I've moved this thread to RGSS (XP) Script Requests. Please be sure to post your threads in the correct forum next time. Thank you.
 
Last edited by a moderator:

DeathByGames

Swaggy Developer
Member
Joined
Sep 20, 2015
Messages
23
Reaction score
0
First Language
English
Primarily Uses
Ahhh, crumbs! It'd have to be XP, wouldn't it? I was just about to post one I'd already done in Ace for someone else's request.


Wish XP's classes were as streamlined as Ace's. Here you go - paste this into a new slot above Main and below all other scripts:


Hidden Content


I've moved this thread to RGSS (XP) Script Requests. Please be sure to post your threads in the correct forum next time. Thank you.
 I am trying to put this script in my game, and it is not pasting into the script editor. I think it is because it is not numbered for each line, but I could be wrong. Help please!
 

Eujan

Warper
Member
Joined
Jul 22, 2017
Messages
1
Reaction score
0
First Language
English
Primarily Uses
RMXP
This Is AOONI's SceneMenu Script for Rpg maker Xp
But if you want to edit it edit it.
Also if your game is done credit Nonprops Scene_menu script

SCRIPT

#==============================================================================
# ¦ Scene_Menu
#------------------------------------------------------------------------------
# ??????????????????
#==============================================================================

class Scene_Menu
#--------------------------------------------------------------------------
# ? ?????????
# menu_index : ?????????????
#--------------------------------------------------------------------------
def initialize(menu_index = 0)
@menu_index = menu_index
end
#--------------------------------------------------------------------------
# ? ?????
#--------------------------------------------------------------------------
def main
# ????????????
s1 = "Item"
s2 = "Save"
s3 = "End Game"
@command_window = Window_Command.new(160, [s1, s2, s3])
@command_window.index = @menu_index

if $game_switches[180] == false
if $game_switches[168] == true and $game_switches[169] == true
if $game_switches[170] == true
if $game_map.map_id == 67 and $game_player.x == 9 and $game_player.y == 14
if $game_player.direction == 2
$game_variables[1] = 3
$game_switches[178] = true
$game_party.add_actor(6)
$game_party.remove_actor(5)
Audio.bgm_play("Audio/BGM/horor-b",100,100)
@command_window.disable_item(0)
@command_window.disable_item(1)
@command_window.disable_item(2)
end
end
end
end
end

# ??????? 0 ????
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
# ?????????????
@playtime_window = Window_PlayTime.new
@playtime_window.x = 0
@playtime_window.y = 384
# ??????????
# @steps_window = Window_Steps.new
# @steps_window.x = 0
# @steps_window.y = 320
# ????????????
# @gold_window = Window_Gold.new
# @gold_window.x = 0
# @gold_window.y = 416
# ?????????????
@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
# ??????????????????: update_command ???
if @command_window.active
update_command
return
end
# ???????????????????: update_status ???
if @status_window.active
update_status
return
end
end
#--------------------------------------------------------------------------
# ? ?????? (??????????????????)
#--------------------------------------------------------------------------
def update_command
# B ??????????
if Input.trigger?(Input::B)
# ????? SE ???
$game_system.se_play($data_system.cancel_se)
# ??????????
$scene = Scene_Map.new
return
end
# C ??????????
if Input.trigger?(Input::C)

if $game_switches[178] == true
$game_system.se_play($data_system.buzzer_se)
return
end

# ??????? 0 ??????????????????????
if $game_party.actors.size == 0 and @command_window.index < 4
# ??? SE ???
$game_system.se_play($data_system.buzzer_se)
return
end
# ???????????????????
case @command_window.index
when 0 # ????
# ?? SE ???
$game_system.se_play($data_system.decision_se)
# ???????????
$scene = Scene_Item.new
when 1 # ???
# ????????
if $game_system.save_disabled
# ??? SE ???
$game_system.se_play($data_system.buzzer_se)
return
end
# ?? SE ???
$game_system.se_play($data_system.decision_se)
# ??????????
$scene = Scene_Save.new
when 2 # ?????
# ?? SE ???
$game_system.se_play($data_system.decision_se)
# ????????????
$scene = Scene_End.new
end
return
end
end
#--------------------------------------------------------------------------
# ? ?????? (???????????????????)
#--------------------------------------------------------------------------
def update_status
# B ??????????
if Input.trigger?(Input::B)
# ????? SE ???
$game_system.se_play($data_system.cancel_se)
# ??????????????????
@command_window.active = true
@status_window.active = false
@status_window.index = -1
return
end
# C ??????????
if Input.trigger?(Input::C)
# ???????????????????
case @command_window.index
when 1 # ???
# ???????????? 2 ?????
if $game_party.actors[@status_window.index].restriction >= 2
# ??? SE ???
$game_system.se_play($data_system.buzzer_se)
return
end
# ?? SE ???
$game_system.se_play($data_system.decision_se)
# ??????????
$scene = Scene_Skill.new(@status_window.index)
when 2 # ??
# ?? SE ???
$game_system.se_play($data_system.decision_se)
# ?????????
$scene = Scene_Equip.new(@status_window.index)
when 3 # ?????
# ?? SE ???
$game_system.se_play($data_system.decision_se)
# ????????????
$scene = Scene_Status.new(@status_window.index)
end
return
end
end
end
 

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

So, apparently I wasn't banned from RMN for the reason I thought. It ended up being some sort of misunderstanding in which someone made an alt pretending to be me (probably my little brother or one of my friends from school) without knowing the rules which got me banned. It had nothing to do with the whole political statement I made on my status.
Stream will be live shortly! Going to stream The Witcher 3, and then it will be the DEBUT of my Portal Playthrough! Feel free to drop by!
I been rather busy lately with non RM projects so, it will take some time for me to release something.
Hmmmm, nice site UI change.
Swapped back to my original meds, but the flippity floppity has me reeling. T ^T I have game making and song collabs to do, hurry up, health. lol

Forum statistics

Threads
93,678
Messages
914,528
Members
123,271
Latest member
Nyakuya
Top