Skip to content

mission_task_protected_entities

Source: base/tealdef/mission/tasks/utility/mission_task_protected_entities.d.tl

Notes

Task that protects entities from player changes.

MissionTaskProtectedEntities

record global base/tealdef/mission/tasks/utility/mission_task_protected_entities.d.tl:3

global record MissionTaskProtectedEntities is MissionInterface.TaskScript<MissionTaskProtectedEntities.State, MissionTaskProtectedEntities.Params>

Load: local protected_entities = ug_require "::/mission/tasks/utility/protected_entities.tl"

Notes

Task (protected_entities) that protects entities from player changes; lines are protected together with their station groups. It completes at once, so it is used with requiredTaskToComplete to stay open.

Example

-- urbangames_campaign_mission_01
if taskKey == "protect_important_entities" then
    return {
        taskScript = protected_entities as MissionInterface.TaskScript<any, any>,
        requiredTaskToComplete = mission_task_util.makeTaskKey("missionEnd", "urbangames_campaign_mission_01::/mission/mission.script"),
        taskParams : MissionTaskProtectedEntities.Params = {
            getEntities = function() : {Engine.Entity} return { ... } end,
        },
    }
end

MissionTaskProtectedEntities.Params

record base/tealdef/mission/tasks/utility/mission_task_protected_entities.d.tl:4

record Params

Notes

Params of the task.

Used in the base game: 12 times in 9 files

base/content/mission/mission/tasks/utility/protected_entities.tl:3

local type P = MissionTaskProtectedEntities.Params
mods/release/urbangames_campaign_mission_03/content/mission/mission/mission_story_cutscenes_only.tl:102
taskParams : MissionTaskProtectedEntities.Params = {
mods/release/urbangames_campaign_mission_03/content/mission/mission/mission_story.tl:168
taskParams : MissionTaskProtectedEntities.Params = {
mods/release/urbangames_campaign_mission_02/content/mission/mission/mission_story_cutscenes_only.tl:97
taskParams : MissionTaskProtectedEntities.Params = {
mods/release/urbangames_campaign_mission_02/content/mission/mission/mission_story.tl:273
taskParams : MissionTaskProtectedEntities.Params = {
mods/release/urbangames_campaign_mission_01/content/mission/mission/mission_story_cutscenes_only.tl:159
taskParams : MissionTaskProtectedEntities.Params = {
… and 3 more files.

Functions

getEntities(readOnlyApi : MissionInterface.MissionTaskReadOnlyApi) : {Engine.Entity} base/tealdef/mission/tasks/utility/mission_task_protected_entities.d.tl:5

Notes

Returns the entities to protect; called once.

Parameter Type Description
readOnlyApi MissionInterface.MissionTaskReadOnlyApi Read-only mission API.

Returns {Engine.Entity}: Entities (lines, constructions, ...).

MissionTaskProtectedEntities.State

record base/tealdef/mission/tasks/utility/mission_task_protected_entities.d.tl:7

record State

Notes

State of the task.

Used in the base game: 1 time in 1 file

base/content/mission/mission/tasks/utility/protected_entities.tl:2

local type S = MissionTaskProtectedEntities.State

Fields

Name Type Description
protected {Engine.Entity : GameContext.Filters.ProtectionConfig | boolean} Entity -> protection config (lines) or true.