class MenuCommands::NewGame
- MenuCommands::NewGame
- Command
- Reference
- Object
Defined in:
engine/menu_commands/new_game.crConstructors
Instance Method Summary
-
#execute(state : State, user_input : String | Nil) : State
Performs extra processing on the user input.
Instance methods inherited from class Command
description : String
description,
execute(state : State, user_input : String | Nil) : State
execute,
key : String?
key,
scene : Scene.class?
scene,
sub_commands : Array(Command)
sub_commands,
validate(state : State, user_input : String | Nil) : Bool
validate
Constructor methods inherited from class Command
new(key : String, description : String, scene : Scene.class | Nil)new(key : String, description : String, sub_commands : Array(Command))
new(key : String, description : String, sub_command : Command)
new(description : String, scene : Scene.class | Nil)
new(description : String, sub_commands : Array(Command))
new(description : String, sub_command : Command) new
Constructor Detail
Instance Method Detail
Description copied from class Command
Performs extra processing on the user input. This will run for both keyed and keyless commands. Override this to add your custom logic.
When using nested commands, commands are executed in order of selection by the player.
This is one of the most important parts of a command, because it allows us to change state in response to the player's choices in the game.
Example
If we had a skill field on Character
we could update it here to give our player
more abilities.
def execute(state : State, user_input : String?) : State
state.character.skill += 1
return state
end