Menu Command Manager

Help spread the word!Share on FacebookShare on TumblrTweet about this on TwitterShare on Google+Share on LinkedInShare on RedditFlattr the author

CommandManager3

An add-on for the Command Manager is available for party menu commands. The party menu is the menu where you manage your party, such as using items or skills outside of battle, equipping your actors, changing your formation, or saving/quitting the game.

The basic functionality is to allow you to easily choose what commands you want in the menu and what order they should appear in.

The Command Manager’s API can be used to define new menu commands as well, providing a 4-step process to defining complex commands that you can use in your own game or share with the community.

Download

Script: Download here
Required: Command Manager

Installation

In the script editor, place this script below Command Manager and above Main

Usage

Choosing your Menu Commands

In the configuration, you can choose which menu commands will be displayed.

CommandManager4

They will appear in the order that you specify. The built-in list of commands is as follows:

  • :item – opens the item menu
  • :skill – opens the skill menu
  • :equip – opens the equip menu
  • :status – opens the status menu
  • :formation – change your party formation
  • :save – opens the save menu
  • :game_end – end the game

All custom commands, such as :load, are added as separate scripts, but it is easy to add them to your game after downloading the script.

Defining Menu Commands

The 4-step process to defining your own menu command is described below. I will create a Load command and add it to the party menu.

  1. Register your command

Choose a symbol for your command. This will be used throughout your command plugin, so you should pick something unique and intuitive. I will use :load in this case. Register the command like this:

CommandManager.register(:load, :party_menu)
  1.  Define a class for your command

You will define a class and inherit from the Game_Command defined by the Command Manager. This allows you to add custom conditions to your command such as when it is enabled or hidden. The name of the class doesn’t matter, but you should try to make it unique:

class MenuCommand_Load < Game_Command
end

Note that I didn’t write any methods here, but you can look at the Game_Command class to see what you can alias or overwrite.

  1.  Add a handler for the party

To use your command, you need to first create a handler in the party. The handler begins with the prefix “add_menu_command_” followed by the symbol you chose.

You will determine the text to display for this command, and the handle symbol to use. This symbol should be the same as the one you registered in step 1.

class Game_Party < Game_Unit

  def add_menu_command_load(args)
    cmd = MenuCommand_Load.new("Load", :load)
    add_menu_command(cmd)
  end
end
  1.  Define the control method

This is where you define what happens when the player selects your command. It is defined in Scene_Menu, and uses the command symbol in the method name.

class Scene_Menu < Scene_MenuBase

  def command_load
    SceneManager.call(Scene_Load)
  end
end

This is just the basics for defining a menu command. The Command Manager documentation contains more information about the framework itself.

Handling command arguments

If you look at the example at the top with the 4 menu commands, you’ll notice that each command is specified as an array. This is how you pass arguments to the commands.

When defining the command handler in step 3, you will see that it takes an “args” parameter. This is an array of arguments extracted from the user’s input. You can use these arguments to build your command as “extra data”. See the Command Manager documentation for more information on how to work with this extra data.

Help spread the word!Share on FacebookShare on TumblrTweet about this on TwitterShare on Google+Share on LinkedInShare on RedditFlattr the author

You may also like...

8 Responses

  1. Dioca says:

    hello, i’m currently experimenting with the command manager script, can you please help me on this one case.

    inside a battle scene, I have an actor induced with a state that seals all commands for one turn, except though for two commands: a particular stype skill command and the “item” command.

    How do you seal the “item” command during this state? while leaving only the stype skill command solely available for the actor to choose….? any info will be a great help….

  2. Matthew says:

    Question, how do I set this all up? Because I am trying to set up two extra commands, one for Shadowmaster 'Fantasy Bestiary' script and another for 'Galv's Magic Shard' script. I need to know what I should put for their commands and where to put the proper coding, and I can't make heads or tails of what you're saying on this page.

    • Hime says:

      In the command manager's configuration you will see a list of party commands. You need to figure out what the symbol for the command is for each of the scenes you want to add. You can ask the authors of the scripts for that information if you're not sure how to find out what they are yourself.

  1. September 16, 2014

    […] Menu Command Manager […]

  2. June 17, 2015

    […] Manager and Menu Command Manager by Tsukihime / […]

  3. June 17, 2015

    […] Manager et Menu Command Manager par Tsukihime / […]

Leave a Reply

Your email address will not be published.

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax