Contract Objective
Describes the target to kidnap and the extraction area of a /datum/syndicate_contract.
Vars | |
candidate_zones | Associated lazy list of areas the contractor can pick from and extract the kidnapee there. Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => /area |
---|---|
chosen_difficulty | The contract's difficulty. Determines the reward on completion. |
extraction_zone | The designated area where the kidnapee must be extracted to complete the objective. |
forbidden_jobs | Jobs that cannot be the kidnapping target. |
name_fixer | Name fixer regex because area names have rogue characters sometimes. |
owning_contract | The owning /datum/syndicate_contract. |
possible_zone_names | Static whitelist of area names that can be used as an extraction zone, structured by difficulty. An area's difficulty should be measured in how crowded it generally is, how out of the way it is and so on. Outdoor or invalid areas are filtered out. Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => list() |
possible_zones | Static list that is basically /datum/objective/contract/var/possible_zone_names but with area names replaced by /area objects if available. |
target_blacklist | List of people who cannot be selected as contract target. |
Procs | |
can_start_extraction_process | Returns whether the extraction process can be started. |
choose_difficulty | Updates the objective's information with the given difficulty. |
pick_candidate_zone | Assigns a randomly selected zone to the contract's selectable zone at the given difficulty. |
Var Details
candidate_zones
Associated lazy list of areas the contractor can pick from and extract the kidnapee there. Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => /area
chosen_difficulty
The contract's difficulty. Determines the reward on completion.
extraction_zone
The designated area where the kidnapee must be extracted to complete the objective.
forbidden_jobs
Jobs that cannot be the kidnapping target.
name_fixer
Name fixer regex because area names have rogue characters sometimes.
owning_contract
The owning /datum/syndicate_contract.
possible_zone_names
Static whitelist of area names that can be used as an extraction zone, structured by difficulty. An area's difficulty should be measured in how crowded it generally is, how out of the way it is and so on. Outdoor or invalid areas are filtered out. Structure: EXTRACTION_DIFFICULTY_(EASY|MEDIUM|HARD) => list()
possible_zones
Static list that is basically /datum/objective/contract/var/possible_zone_names but with area names replaced by /area objects if available.
target_blacklist
List of people who cannot be selected as contract target.
Proc Details
can_start_extraction_process
Returns whether the extraction process can be started.
Arguments:
- caller - The person trying to call the extraction.
choose_difficulty
Updates the objective's information with the given difficulty.
Arguments:
- difficulty - The chosen difficulty.
- S - The parent /datum/syndicate_contract.
pick_candidate_zone
Assigns a randomly selected zone to the contract's selectable zone at the given difficulty.
Arguments:
- difficulty - The difficulty to assign.