class

MenuCommands::SelectSavedGame

Inherits Command < Reference < Object

Handles displaying a list of saved games, and allows the player select one to continue.

Constructors

new(default_scene : Scene.class)

The player is taken to default_scene if there is a problem loading their saved scene.

Source

Instance methods

execute(state : State, user_input : String | Nil) : State

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
Source
validate(state : State, user_input : String | Nil) : Bool

Validates the user input given to the command. This is only executed for keyless commands since the input to keyed commands is always the same as their #key. Override this to add your custom logic.

You could for example, you could make sure the player does not give an empty string for their character name.

Source