mission_task_wait_for¶
Source: base/tealdef/mission/tasks/wait/mission_task_wait_for.d.tl
Notes
Task that completes when a condition function returns true, optionally with a countdown.
MissionTaskWaitFor¶
record global base/tealdef/mission/tasks/wait/mission_task_wait_for.d.tl:3
global record MissionTaskWaitFor is MissionInterface.TaskScript<MissionTaskWaitFor.State, MissionTaskWaitFor.Params>
Load: local wait_for = ug_require "::/mission/tasks/wait/wait_for.tl"
Notes
Task (wait_for) that completes when waitFn returns true. With countdown it also ends when the time runs out, showing the remaining time as sub-task progress.
Example
-- urbangames_campaign_mission_02: wait until a train reaches a zone
taskScript = wait_for as MissionInterface.TaskScript<any, any>,
taskParams = {
waitFn = function(_readOnlyApi : MissionInterface.MissionTaskReadOnlyApi) : boolean
local entities = api.engine.util.octree.findEntitiesInCircle(
api.type.Vec2f.new(params.waitForMachinesZone1.pos[1], params.waitForMachinesZone1.pos[2]),
params.waitForMachinesZone1.radius, api.type.ComponentType.CARRIAGE)
return #entities > 0
end,
},
MissionTaskWaitFor.Params¶
record base/tealdef/mission/tasks/wait/mission_task_wait_for.d.tl:4
record Params
Notes
Params of the task.
Used in the base game: 4 times in 2 files
base/content/mission/mission/tasks/wait/wait_for.tl:6
mods/release/urbangames_campaign_mission_08/content/mission/mission/mission_story.tl:753
Fields
| Name | Type | Description |
|---|---|---|
zones |
{MissionInterface.Zone} |
Zones shown while waiting. |
markers |
{MissionInterface.Marker} |
Markers shown while waiting. |
simTimeMinutesToComplete |
integer |
Length of the countdown in simulation minutes (game time); required with countdown. |
countdown |
boolean |
Ends the task (as failed) when the countdown runs out. |
Functions
waitFn(readOnlyApi : MissionInterface.MissionTaskReadOnlyApi) : boolean base/tealdef/mission/tasks/wait/mission_task_wait_for.d.tl:5
Notes
Condition checked every update (required).
| Parameter | Type | Description |
|---|---|---|
readOnlyApi |
MissionInterface.MissionTaskReadOnlyApi |
Read-only mission API. |
Returns boolean: true to complete the task.
getZones() : {MissionInterface.Zone} base/tealdef/mission/tasks/wait/mission_task_wait_for.d.tl:8
Notes
Returns the zones to show; takes precedence over zones.
Returns {MissionInterface.Zone}: Zones.
getMarkers() : {MissionInterface.Marker} base/tealdef/mission/tasks/wait/mission_task_wait_for.d.tl:9
Notes
Returns the markers to show; takes precedence over markers.
Returns {MissionInterface.Marker}: Markers.
MissionTaskWaitFor.State¶
record base/tealdef/mission/tasks/wait/mission_task_wait_for.d.tl:14
record State
Notes
State of the task.
Used in the base game: 4 times in 2 files
base/content/mission/mission/tasks/wait/wait_for.tl:5
mods/release/urbangames_campaign_mission_08/content/mission/mission/mission_story.tl:753
Fields