Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #==============================================================
- #
- # HungrySnake's Total Menu Control V 1.1
- #
- # This is a script which enables the user to fully customize
- # the menu.
- #
- #
- # How to use:
- #
- # 1) Set-up the config
- # 2) Switch the Switch-ID In-Game ON
- # 3) Finished
- #
- # Credit:
- #
- # HungrySnake
- #
- #==============================================================
- module TMC
- module Config
- #==============================================================
- #
- # Start Config
- #
- #==============================================================
- # WLH --------------------------------------------------------------------
- WLH = 24 # If you ever decide to change the Window Line Height in the
- # Window_Base, then change this one to that value too.
- # ------------------------------------------------------------------------
- # Switch -----------------------------------------------------------------
- SWITCH_ID = 20 # << The Switch_ID to turn your custom menu ON.
- # ------------------------------------------------------------------------
- # Visual -----------------------------------------------------------------
- # Command Screen Window ------------------------------------------------
- CSW_X = Graphics.width / 4 * 3 - 25
- CSW_Y = 0
- CSW_WIDTH = 160
- # ----------------------------------------------------------------------
- # Gold Window ----------------------------------------------------------
- GOLD_WINDOW = true # << Show Gold Window?
- GOLD_WINDOW_X = Graphics.width / 4 * 3 - 25
- GOLD_WINDOW_Y = 360
- # ----------------------------------------------------------------------
- # Window Menu Status Screen --------------------------------------------
- WMS_X = 0
- WMS_Y = 0
- WMS_WIDTH = Graphics.width / 4 - 10 + 180
- WMS_HEIGHT = 416
- WMS_VISIBLE_S = true # << Window Menu Status Screen visible on start?
- DRAW_STUFF = [ # << Don't delete
- true, # << Draw Actor Face?
- true, # << Draw Actor Name?
- true, # << Draw Actor Graphic?
- true, # << Draw Actor Level?
- true, # << Draw Actor HP?
- true, # << Draw Actor MP?
- true, # << Draw Actor Class?
- true, # << Draw Actor State?
- ] # << Don't delete
- # Actor Stuff Advanced ----------------------------------------------
- ACTOR_FACE_X = 2 # Actor Face X coordinate
- ACTOR_FACE_Y = 0 # Actor Face Y coordinate
- ACTOR_NAME_X = 104 # Actor Name X coordinate
- ACTOR_NAME_Y = -15 # Actor Name Y coordinate
- ACTOR_GRAPHIC_X = 50 # Actor Graphic X coordinate
- ACTOR_GRAPHIC_Y = 80 # Actor Graphic Y coordinate
- ACTOR_LEVEL_X = 104 # Actor Level X coordinate
- ACTOR_LEVEL_Y = 5 # Actor Level Y coordinate
- ACTOR_HP_X = 104 # Actor HP X coordinate
- ACTOR_HP_Y = WLH * 1 # Actor HP Y coordinate
- ACTOR_MP_X = 104 # Actor MP X coordinate
- ACTOR_MP_Y = WLH * 2 # Actor MP Y coordinate
- ACTOR_CLASS_X = 184 # Actor Class X coordinate
- ACTOR_CLASS_Y = -15 # Actor Class Y coordinate
- ACTOR_STATE_X = 104 # Actor State X coordinate
- ACTOR_STATE_Y = 45 # Actor State Y coordinate
- # ----------------------------------------------------------------------
- # -----------------------------------------------------------------------
- # ------------------------------------------------------------------------
- end
- end
- #==============================================================
- #
- # End Config
- #
- #==============================================================
- class Scene_Menu < Scene_Base
- include TMC::Config
- #--------------------------------------------------------------------------
- # * Start processing
- #--------------------------------------------------------------------------
- def start
- super
- create_menu_background
- create_command_window
- if $game_switches[SWITCH_ID]
- @gold_window = Window_Gold.new(GOLD_WINDOW_X, GOLD_WINDOW_Y)
- @gold_window.visible = GOLD_WINDOW
- @status_window = Window_MenuStatus.new(WMS_X,WMS_Y)
- @status_window.visible = WMS_VISIBLE_S
- else
- @gold_window = Window_Gold.new(0, 360)
- @status_window = Window_MenuStatus.new(160, 0)
- @status_window.visible = true
- end
- end
- #--------------------------------------------------------------------------
- # * Create Command Window
- #--------------------------------------------------------------------------
- def create_command_window
- s1 = Vocab::item
- s2 = Vocab::skill
- s3 = Vocab::equip
- s4 = Vocab::status
- s5 = Vocab::save
- s6 = Vocab::game_end
- @command_window = Window_Command.new(160, [s1, s2, s3, s4, s5, s6])
- @command_window.index = @menu_index
- if $game_switches[SWITCH_ID]
- @command_window.x = CSW_X
- @command_window.y = CSW_Y
- @command_window.width = CSW_WIDTH
- end
- if $game_party.members.size == 0 # If number of party members is 0
- @command_window.draw_item(0, false) # Disable item
- @command_window.draw_item(1, false) # Disable skill
- @command_window.draw_item(2, false) # Disable equipment
- @command_window.draw_item(3, false) # Disable status
- end
- if $game_system.save_disabled # If save is forbidden
- @command_window.draw_item(4, false) # Disable save
- end
- end
- #--------------------------------------------------------------------------
- # * Start Actor Selection
- #--------------------------------------------------------------------------
- alias hsnake_ma_sas start_actor_selection unless $@
- def start_actor_selection(*args, &block)
- if $game_switches[SWITCH_ID]
- @status_window.visible = true
- end
- hsnake_ma_sas(*args, &block)
- end
- #--------------------------------------------------------------------------
- # * End Actor Selection
- #--------------------------------------------------------------------------
- alias hsnake_ma_eas end_actor_selection unless $@
- def end_actor_selection (*args, &block)
- if $game_switches[SWITCH_ID]
- @status_window.visible = false
- end
- hsnake_ma_eas(*args, &block)
- end
- end
- class Window_MenuStatus < Window_Selectable
- include TMC::Config
- #--------------------------------------------------------------------------
- # * Object Initialization
- #--------------------------------------------------------------------------
- def initialize(x, y)
- if $game_switches[SWITCH_ID]
- super(x, y, WMS_WIDTH, WMS_HEIGHT)
- else
- super(x, y, 384, 416)
- end
- refresh
- self.active = false
- self.index = -1
- end
- #--------------------------------------------------------------------------
- # * Refresh
- #--------------------------------------------------------------------------
- def refresh
- self.contents.clear
- @item_max = $game_party.members.size
- for actor in $game_party.members
- x = 104
- y = actor.index * 96 + WLH / 2
- if $game_switches[SWITCH_ID]
- if DRAW_STUFF[0]
- draw_actor_face(actor, ACTOR_FACE_X, actor.index * 96 + 2 + ACTOR_FACE_Y, 92)
- end
- if DRAW_STUFF[1]
- draw_actor_name(actor, ACTOR_NAME_X, y + ACTOR_NAME_Y)
- end
- if DRAW_STUFF[2]
- draw_actor_graphic(actor,ACTOR_GRAPHIC_X, y + ACTOR_GRAPHIC_Y)
- end
- if DRAW_STUFF[3]
- draw_actor_level(actor,ACTOR_LEVEL_X, y + ACTOR_LEVEL_Y)
- end
- if DRAW_STUFF[4]
- draw_actor_hp(actor,ACTOR_HP_X, y + ACTOR_HP_Y)
- end
- if DRAW_STUFF[5]
- draw_actor_mp(actor,ACTOR_MP_X, y + ACTOR_MP_Y)
- end
- if DRAW_STUFF[6]
- draw_actor_class(actor,ACTOR_CLASS_X, y + ACTOR_CLASS_Y)
- end
- if DRAW_STUFF[7]
- draw_actor_state(actor,ACTOR_STATE_X, y + ACTOR_STATE_Y)
- end
- else
- draw_actor_face(actor, 2, actor.index * 96 + 2, 92)
- draw_actor_name(actor, x, y)
- draw_actor_class(actor, x + 120, y)
- draw_actor_level(actor, x, y + WLH * 1)
- draw_actor_state(actor, x, y + WLH * 2)
- draw_actor_hp(actor, x + 120, y + WLH * 1)
- draw_actor_mp(actor, x + 120, y + WLH * 2)
- end
- end
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement