Mission system - API - Attributes to set

= Description =

Those are the attributes you typically set at the top of the mission class - they are used by the mission engine to get general information about a given mission, such as its name, the missions that needs to be completed before this one is made available to the player, etc.

= mission_category =

Introduced in: alpha2.3

Value: string, chosen among the following:
 * "Human Resources"
 * "Intelligence"
 * "Communication"
 * "Field Operations"
 * "Research & Development"
 * "Central Security"

Description: Each mission is delivered by a given department within the NGO, this attribute allows the mission engine to know which one will be giving the current mission to the player.

Example:  class MyMission extends Mission { public $mission_category = "Communication"; ...

= mission_name =

Introduced in: alpha2.0

Value: string

Description: Short and unique name for the mission, within a given mission_category. The value will be displayed to the player in the game, so it needs to be readable. It can contain spaces and special characters, and should be capitalized.

Example:  class MyMission extends Mission { public $mission_name = "My Great Mission"; ...

= mission_description =

Introduced in: alpha2.0

Value: string

Description: A 1-2 lines description of the current mission. It will be displayed to the player, so you don't want to make it too long, or spoil any surprise the mission may contain.

Example:  class MyMission extends Mission { public $mission_description = "Infiltrate the pentagon and steal some highly classified papers."; ...

= mission_repeatable =

Introduced in: alpha2.3

Value: true or false (default: false)

Description: Determines if the player will be able to perform the mission several times.

Example:  class MyMission extends Mission { public $mission_repeatable = true; ...

= mission_dependency =

Introduced in: alpha2.3

Value: array of array, or NULL (default: NULL)

Description: A mission can be made available once one or several other missions have been completed. If NULL, the mission doesn't require other missions to be completed before it is available to the player. Otherwise, it contains an array of the missions that need to be completed beforehand: the top-level array contains mission categories, and each mission category contains a list of the missions for that category.

Example:  class MyMission extends Mission { public $mission_dependency = Array('Field operations' => array('Retreive a code','Hide a code'),                                       'Communication'    => array('Publish a code')); ...