Zum Inhalt

blimp_util

Quelle: base/tealdef/game_mechanics/fun_elements/blimp_util.d.tl

Hinweise

Luftschiff, das während einer Marketingkampagne über einer Stadt kreist.

BlimpUtil

record global base/tealdef/game_mechanics/fun_elements/blimp_util.d.tl:3

global record BlimpUtil

Hinweise

Luftschiff, das zu einer Stadt fliegt, sobald dort eine Marketingkampagne startet. Es kreist über der Stadt, solange die Kampagne läuft, und verlässt dann die Karte.

Details

Das Game-Script für Fun-Elemente erzeugt beim Towns-Ereignis startMarketingCampaign ein Luftschiff und ruft in jedem Frame update dafür auf.

Funktionen

spawnNew(townEntity : Engine.Entity, callback : function(BlimpData)) base/tealdef/game_mechanics/fun_elements/blimp_util.d.tl:34

Hinweise

Erzeugt ein Luftschiff in der Nähe einer Stadt. Das Modell hängt vom aktuellen Jahr ab.

Parameter Typ Beschreibung
townEntity Engine.Entity Stadt, zu der es fliegt.
callback function(BlimpData) Bekommt die Daten des neuen Luftschiffs, sobald die Entität existiert.

update(blimpData : BlimpData, dt : number) : boolean base/tealdef/game_mechanics/fun_elements/blimp_util.d.tl:35

Hinweise

Bewegt das Luftschiff einen Schritt weiter und schaltet seine Flugphase weiter.

Parameter Typ Beschreibung
blimpData BlimpData Zu aktualisierendes Luftschiff; wird direkt geändert.
dt number Zeitschritt in Sekunden.

Rückgabe boolean: Wahr, wenn das Luftschiff entfernt wurde und seine Daten wegfallen können.

BlimpUtil.BlimpState

enum base/tealdef/game_mechanics/fun_elements/blimp_util.d.tl:4

enum BlimpState

Hinweise

Flugphase eines Luftschiffs.

Wert Beschreibung
"Approaching" Fliegt mit vierfacher Reisegeschwindigkeit zur Stadt.Im Spiel Nähert sichIm Code: Approaching
"Circling" Fliegt zufällige Punkte rund um die Stadt an, solange die Kampagne läuft.
"Leaving" Fliegt zum nächsten Kartenrand.Im Spiel VerlässtIm Code: Leaving
"Despawn" Am Kartenrand geschrumpft und wartet darauf, entfernt zu werden.

BlimpUtil.Era

enum base/tealdef/game_mechanics/fun_elements/blimp_util.d.tl:11

enum Era

Hinweise

Epoche, nach der sich die Luftschiffmodelle richten.

Im Basisspiel verwendet: 1-mal in 1 Datei

base/content/game_mechanics/game_mechanics/fun_elements/blimp_util.tl:112

local blimpEra : BlimpUtil.Era = "EraA"

Wert Beschreibung
"EraA" Bis 1950, nur ZMC-2.
"EraB" 1951 bis 1990, dazu kommt LZ 127 Graf Zeppelin.
"EraC" Nach 1990, dazu kommt der Zeppelin NT.

BlimpUtil.BlimpData

record base/tealdef/game_mechanics/fun_elements/blimp_util.d.tl:17

record BlimpData

Hinweise

Gespeicherter Zustand eines Luftschiffs. Er geht auch als Custom State blimpData an die Entität.

Im Basisspiel verwendet: 7-mal in 3 Dateien

base/content/game_mechanics/game_mechanics/fun_elements/blimp_util.tl:58

local setVelocity = function(data : BlimpUtil.BlimpData, velocityNew : Vec3f, dt : number)
base/content/game_mechanics/game_mechanics/fun_elements/fun_elements.script.tl:34
blimp_util.spawnNew(townEntity, function(blimpData : BlimpUtil.BlimpData)
base/content/vehicle/zeppelin/shared/shared/transformator_zeppelin.script.tl:11
local blimpData = zeppelinState.blimpData as BlimpUtil.BlimpData

Felder

Name Typ Beschreibung
blimpEntity EntityUtil.EntityAndRevision Entität des Luftschiffs.
townEntity EntityUtil.EntityAndRevision Stadt, über der das Luftschiff kreist.
era Era Epoche beim Erzeugen.
state BlimpState Aktuelle Flugphase.
velocity {number} Geschwindigkeit als {x, y, z} in Metern pro Sekunde.
velocityNormalized number Aktuelle Geschwindigkeit (Länge von velocity).
velocityMin number Minimale Reisegeschwindigkeit (5).
velocityMax number Maximale Reisegeschwindigkeit (15).
roll number Drehrate, geschätzt aus der letzten Geschwindigkeitsänderung. Negativ bei einer Rechtskurve.
elevator number Vertikalgeschwindigkeit geteilt durch die maximale Reisegeschwindigkeit.
flyHeight number Höhe über der Stadt beim Erzeugen, 105 bis 150 Meter.
flyRadius number Abstand vom Stadtzentrum beim Erzeugen, 125 bis 250 Meter.
target {number} Aktuelle Zielposition als {x, y, z}.
targetSetTime number Spielzeit (ms), zu der target gesetzt wurde. Nach 20 Sekunden wählt das Luftschiff ein neues Ziel, auch wenn es das alte nicht erreicht hat.