04-15-2016, 03:19 AM
Here's a sample of what I mean by a 2-part config... Part 2 itself.
First, the menu options are broken into two lists. One humongous list per entry is just harder to see, so there are two of them... one for appearance options while the other for functionality.
Second, each has headers describing what each entry contains. I hope those will be self explanatory, but I have a tendency to add extra instructions at the beginning of any script assuming I do not have an accompanying help/chm file as I have recently with my Lycan ABS.
Of the entries in the list, note that two of them (index position 1 and index position 3) have extra values.
Index position 1 (aka LIST1[1] / LIST2[1]) for the Equip menu option ends with 2, false in the first list. This means the menu option for the equip menu is disabled until RMXP Switch #2 is turned on. Merely disabled. But index position 3 (aka LIST1[3]/LIST2[3]) is set up differently...
Index Position 3 within the first list ends with 1, true , which means that RMXP Switch #1 must be turned on for it to function. However, the 'true' value indicates that the option isn't disabled, but fully hidden from the menu itself. Neat? Now one more thing: In the 2nd list for Index Position 3, it doesn't have a Scene Command or Common Event ID number, but a string. This string is the same as the string in the 'PARTY_ORDER' configurable. This turns on the party member reordering system.
Other instructions will be given in the script on how to make some actors fixed in the party, such as enforcing the lead party member from being changed.
First, the menu options are broken into two lists. One humongous list per entry is just harder to see, so there are two of them... one for appearance options while the other for functionality.
Second, each has headers describing what each entry contains. I hope those will be self explanatory, but I have a tendency to add extra instructions at the beginning of any script assuming I do not have an accompanying help/chm file as I have recently with my Lycan ABS.
Of the entries in the list, note that two of them (index position 1 and index position 3) have extra values.
Index position 1 (aka LIST1[1] / LIST2[1]) for the Equip menu option ends with 2, false in the first list. This means the menu option for the equip menu is disabled until RMXP Switch #2 is turned on. Merely disabled. But index position 3 (aka LIST1[3]/LIST2[3]) is set up differently...
Index Position 3 within the first list ends with 1, true , which means that RMXP Switch #1 must be turned on for it to function. However, the 'true' value indicates that the option isn't disabled, but fully hidden from the menu itself. Neat? Now one more thing: In the 2nd list for Index Position 3, it doesn't have a Scene Command or Common Event ID number, but a string. This string is the same as the string in the 'PARTY_ORDER' configurable. This turns on the party member reordering system.
Other instructions will be given in the script on how to make some actors fixed in the party, such as enforcing the lead party member from being changed.
Code:
============================================================================
# ** XAIL REDO CONFIGURATION
# * PART II: MENU FUNCTIONALITY
#------------------------------------------------------------------------------
# This module holds your menu's configuration options. The second set of
# modules handle the options and information data used and displayed by
# the menu system.
#==============================================================================
module X_MAIN
#============================================================================
# ** OPTIONS
#----------------------------------------------------------------------------
# This module contains data controlling the Menu Command/Options Window
#============================================================================
module OPTIONS
#--------------------------------------------------------------------------
LIST1, LIST2 = {}, {} # -- Do Not Touch --
#--------------------------------------------------------------------------
# PARTY ORDER KEYWORD
# ===================
# This string is used in the Options List (List2) in place of a Scene or
# Common Event command to trigger Party Order performance.
#
PARTY_ORDER = 'Formation'
#==========================================================================
# LIST1
# =====
# All items shown in the command window are here, and use the syntax:
# LIST1[index] = [ option, icon, description, no_party, no_save
# -------------------------------------------------------------------------
# * Option ....... (String) Text shown in the Command Window
# * Icon ......... (String) Icon Filename shown in the Command Window
# * Description .. (String) Text shown in Description Window
# * No_Party ..... (Boolean true/false) If option disabled with 0 members
# * No_Save ...... (Boolean true/false) If save-disabled hampers the option
# * Switch ....... (Numeric) ID of RMXP Switch that needs to be ON (or nil)
# * Hide?......... (Boolean true/false) If switch hides or just disables
#
LIST1[0] = ["Item", "item", "Browse your grab bag", true, false]
LIST1[1] = ["Equip", "equip", "Review your equipped gear.", true, false, 2, false]
LIST1[2] = ["Skill", "spell", "Check your learned skills", true, false]
LIST1[3] = ["Order", "", "Change your party order", false, false, 1 ,true]
LIST1[4] = ["Status", "stats", "Check the stats of a hero.", true, false]
LIST1[5] = ["Save", "saves", "Record your progress.", false, true]
LIST1[6] = ["Quit", "quit", "Finish adventuring.", false, false]
LIST1[7] = ["Title", "title", "Return to the Menu.", false, false]
LIST1[8] = ["Camping","camp", "Pitch a campfire n sleep", true, true]
#==========================================================================
# LIST2
# =====
# All items shown that perform scene transitions in the menu are here.
# The order must match the key order in the COMMAND module
# LIST2[index] = [ actor_select, skill_restricted, Scene_Command
# -------------------------------------------------------------------------
# * Actor_Select.. (Boolean true/false) If Menu option is Actor Specific
# * Skill_Restrict (Boolean true/false) If Menu option is skill restricted
# * Scene_Command. (String or numeric) Text String holding the complete
# Scene command, ID of a Common Event or Formation text
# * Actor(s) Using (Value/Array) ID or array of IDs of actors permitted
#
LIST2[0] = [false, false, "Scene_Item.new"]
LIST2[1] = [true, false, "Scene_Equip.new(@status_window.index)"]
LIST2[2] = [true, true, "Scene_Skill.new(@status_window.index)", 5]
LIST2[3] = [true, false, "Formation"]
LIST2[4] = [true, false, "Scene_Status.new(@status_window.index)"]
LIST2[5] = [false, false, "Scene_Save.new"]
LIST2[6] = [false, false, "Scene_End.new"]
LIST2[7] = [false, false, "Scene_Title.new"]
LIST2[8] = [false, false, 1]
end
#============================================================================
# ** STATS
#----------------------------------------------------------------------------
# This module lists the information about the current game.
#----------------------------------------------------------------------------
module STATS
#--------------------------------------------------------------------------
LIST = {} # -- Do Not Touch --
#--------------------------------------------------------------------------
# LIST
# ====
# All basic information (other than the in-game clock) are inserted here
# and are ordered by the key order. The syntax is shown here:
# LIST[index] = [ option, icon, value1, value2, value3
# -------------------------------------------------------------------------
# * Option ....... (String) Text shown in the command window for the option
# * Icon ......... (String) Filename of icon used in the command window
# * Datatype...... (Numeric) 0,1,2 (if data is script, switch, variable)
# * Datashown..... (flexible) May be string if datatype 0, or numeric.
#
LIST[0] = ["Gold: ", "gold", 0, '$game_party.gold', " Rupies"]
LIST[1] = ["Steps: ", "boots", 0, '$game_party.steps']
LIST[2] = ["Collected Items: ", "chest", 0, '$game_party.all_items']
LIST[3] = ["Map: ", "scroll", 0, '$game_map.name']
LIST[4] = ["Leader: ", "star", 0, '$game_party.actors[0].name']
LIST[5] = ["Battle Count: ", "sword", 0, '$game_system.battle_count']
LIST[6] = ["Save Count: ", "book", 0, '$game_system.save_count']
LIST[7] = ["Party Members: ", "dude", 0, '$game_party.actors.size']
LIST[8] = ["Highest Level: ", "saiyan", 0, '$game_party.max_level']
LIST[9] = ["Switch 11: ", "049-Skill06", 1, 11]
LIST[10] = ["Switch 12: ", "049-Skill06", 1, 12]
LIST[11] = ["Variable 22: ", "049-Skill06", 2, 22]
LIST[12] = ["Variable 24: ", "049-Skill06", 2, 24]
end
end