Zum Inhalt

mission_boot_util

Quelle: base/tealdef/mission/mission_boot_util.d.tl

Hinweise

Helfer, die aus einer Aufgabendaten-Factory und einer Liste von Boot-Aufgaben das Skriptmodul bauen, von dem das Game-Script der Mission oder des Spielführer-Systems startet.

MissionBootUtil

record global base/tealdef/mission/mission_boot_util.d.tl:3

global record MissionBootUtil

Laden: local mission_boot_util = ug_require "::/mission/mission_boot_util.tl" as MissionBootUtil

Hinweise

Baut aus einer Aufgabendaten-Factory das Skriptmodul (Vtable-Factory und Boot-Funktion) einer Missions- oder Spielführer-Story.

Details

Die Story ist eine Funktion taskKey -> MissionTaskUtil.StaticTaskInfo. Jede Aufgabe nennt ihre followup-Aufgaben, und bootTasks sind die ersten. Aufgabenschlüssel gelten nur innerhalb der Story. Das Boot-Util macht daraus mit MissionTaskUtil.makeTaskKey(taskKey, scriptKey) eindeutige Schlüssel.

Beispiel

-- urbangames_campaign_mission_01: mission/mission.tl
local mission_boot_util = ug_require "::/mission/mission_boot_util.tl" as MissionBootUtil
local taskDataFactory = ug_require "mission_story.tl" as function(taskKey : string) : MissionTaskUtil.StaticTaskInfo

return mission_boot_util.makeMission({
    scriptKey = "urbangames_campaign_mission_01::/mission/mission.script",
    taskDataFactory = taskDataFactory,
    bootTasks = {
        { taskKey = "check_entities" },
        { taskKey = "intro" },
        { taskKey = "intro_cutscene" },
        { taskKey = "non_bulldozable" },
    },
})

Funktionen

makeMission(config : MissionConfig) : Module base/tealdef/mission/mission_boot_util.d.tl:22

Aufruf: mission_boot_util.makeMission(…)

Hinweise

Baut das Modul einer Missions-Story. Die Vtables liefern getTaskInfo aus der statischen taskInfo.

Parameter Typ Beschreibung
config MissionConfig Missionskonfiguration.

Rückgabe Module: Modul, das aus dem in scriptKey genannten Skript als mission exportiert wird.

Im Basisspiel verwendet: 9-mal in 9 Dateien

base/content/mission/mission/tutorial/tutorial.tl:5

return mission_boot_util.makeMission({
mods/release/urbangames_campaign_mission_01/content/mission/mission/mission.tl:6
return mission_boot_util.makeMission({
mods/release/urbangames_campaign_mission_02/content/mission/mission/mission.tl:6
return mission_boot_util.makeMission({
mods/release/urbangames_campaign_mission_03/content/mission/mission/mission.tl:6
return mission_boot_util.makeMission({
mods/release/urbangames_campaign_mission_04/content/mission/mission/mission.tl:6
return mission_boot_util.makeMission({
mods/release/urbangames_campaign_mission_05/content/mission/mission/mission.tl:6
return mission_boot_util.makeMission({
… und 3 weitere Dateien.

makeGuide(config : GuideConfig) : Module base/tealdef/mission/mission_boot_util.d.tl:23

Aufruf: mission_boot_util.makeGuide(…)

Hinweise

Baut das Modul einer Spielführer-Story. Die Vtables liefern getGuideInfo aus der statischen guideInfo.

Parameter Typ Beschreibung
config GuideConfig Spielführer-Konfiguration.

Rückgabe Module: Modul, das aus dem in scriptKey genannten Skript als guide_system exportiert wird.

Im Basisspiel verwendet: 6-mal in 6 Dateien

base/content/mission/mission/guide_system/main/guide_system.tl:5

return mission_boot_util.makeGuide({
base/content/mission/mission/tutorial/guide_system/guide_system.tl:5
return mission_boot_util.makeGuide({
mods/release/urbangames_campaign_mission_01/content/guide_system/guide_system/guide_system.tl:5
return mission_boot_util.makeGuide({
mods/release/urbangames_campaign_mission_02/content/guide_system/guide_system/guide_system.tl:5
return mission_boot_util.makeGuide({
mods/release/urbangames_campaign_mission_03/content/guide_system/guide_system/guide_system.tl:5
return mission_boot_util.makeGuide({
mods/release/urbangames_campaign_mission_07/content/guide_system/guide_system/guide_system.tl:5
return mission_boot_util.makeGuide({

MissionBootUtil.MissionConfig

record base/tealdef/mission/mission_boot_util.d.tl:4

record MissionConfig

Hinweise

Konfiguration einer Missions-Story für makeMission.

Im Basisspiel verwendet: 1-mal in 1 Datei

base/content/mission/mission/mission_boot_util.tl:107

function mission_boot_util.makeMission(config : MissionBootUtil.MissionConfig) : MissionBootUtil.Module

Felder

Name Typ Beschreibung
scriptKey string Skript, das das Modul als mission bereitstellt (zum Beispiel "urbangames_campaign_mission_01::/mission/mission.script"). Zugleich die Wurzel der Aufgabenschlüssel.
bootTasks {MissionTaskUtil.FollowupDef} Aufgaben, die beim Start der Mission hinzugefügt werden.

Funktionen

taskDataFactory(taskKey : string) : MissionTaskUtil.StaticTaskInfo base/tealdef/mission/mission_boot_util.d.tl:6

Hinweise

Gibt die statische Beschreibung zu einem Aufgabenschlüssel zurück, bei unbekannten Schlüsseln nil.

Parameter Typ Beschreibung
taskKey string Aufgabenschlüssel innerhalb der Story.

Rückgabe MissionTaskUtil.StaticTaskInfo: Statische Aufgabenbeschreibung.

MissionBootUtil.GuideConfig

record base/tealdef/mission/mission_boot_util.d.tl:10

record GuideConfig

Hinweise

Konfiguration einer Spielführer-Story für makeGuide.

Im Basisspiel verwendet: 1-mal in 1 Datei

base/content/mission/mission/mission_boot_util.tl:127

function mission_boot_util.makeGuide(config : MissionBootUtil.GuideConfig) : MissionBootUtil.Module

Felder

Name Typ Beschreibung
scriptKey string Skript, das das Modul als guide_system bereitstellt. Zugleich die Wurzel der Aufgabenschlüssel.
bootTasks {MissionTaskUtil.FollowupDef} Spielführer-Aufgaben, die beim Start hinzugefügt werden.
skipIfStartedAsMission boolean Fügt die Boot-Spielführer nicht hinzu, wenn das Spiel als Mission gestartet wurde.

Funktionen

taskDataFactory(taskKey : string) : MissionTaskUtil.StaticTaskInfo base/tealdef/mission/mission_boot_util.d.tl:12

Hinweise

Gibt die statische Beschreibung (mit guideInfo) zum Schlüssel einer Spielführer-Aufgabe zurück.

Parameter Typ Beschreibung
taskKey string Aufgabenschlüssel innerhalb der Story.

Rückgabe MissionTaskUtil.StaticTaskInfo: Statische Aufgabenbeschreibung.

MissionBootUtil.Module

record base/tealdef/mission/mission_boot_util.d.tl:17

record Module

Hinweise

Skriptmodul, das makeMission / makeGuide zurückgibt. Die .script-Datei der Story exportiert es, damit das Framework es über den Namen aufrufen kann.

Im Basisspiel verwendet: 2-mal in 1 Datei

base/content/mission/mission/mission_boot_util.tl:107

function mission_boot_util.makeMission(config : MissionBootUtil.MissionConfig) : MissionBootUtil.Module

Funktionen

getVTable(taskKey : string, uniqueKey : string) : MissionInterface.TaskVTable<any, any> base/tealdef/mission/mission_boot_util.d.tl:18

Hinweise

Baut die Vtable einer Aufgabe (Ziel von TaskConfig.getVTableScriptFn).

Parameter Typ Beschreibung
taskKey string Aufgabenschlüssel innerhalb der Story.
uniqueKey string Eindeutiger Aufgabenschlüssel.

Rückgabe MissionInterface.TaskVTable<any, any>: Vtable der Aufgabe.

spawnBootTasks(taskKey : string, ctx : MissionInterface.TaskContext<any, any>, missionApi : MissionInterface.MissionTaskApi) base/tealdef/mission/mission_boot_util.d.tl:19

Hinweise

Fügt die Boot-Aufgaben hinzu (wenn taskKey nil ist) oder die Folgeaufgaben von taskKey, deren Bedingung erfüllt ist. Ziel von BootstrapDesc.bootstrapScriptFn.

Parameter Typ Beschreibung
taskKey string nil für die Boot-Aufgaben, sonst der Schlüssel der erledigten Aufgabe.
ctx MissionInterface.TaskContext<any, any> Kontext der erledigten Aufgabe (beim Boot nil).
missionApi MissionInterface.MissionTaskApi API, über die die Aufgaben hinzugefügt werden.