ActMap
In der ActMap werden die möglichen Aktivitäten eines Objekts beschrieben (z.B. Aktivitäten wie Laufen oder Klettern für Clonks; Öffnen/Schließen von Türen). Die Animationsphasen einer jeden Aktivität werden dabei in der Graphics.png (und/oder Overlay.png) als nebeneinanderliegende Bilder abgelegt und in der ActMap über Bildkoordinaten referenziert. Aktivitäten können im Spiel von der Engine oder per Script gestartet oder beendet werden (siehe SetAction). Einige Aktivitäten, speziell solche von Lebewesen, nutzen dabei Engine-interne Prozeduren, die das Bewegungsverhalten des Objekts während der Ausführung dieser Aktivität steuert.
Eigenschaft | Datentyp | Beschreibung |
---|---|---|
Prototype | proplist | Must be Action. See below in the example. |
Name | Zeichenkette | Name der Aktivität. Siehe SetAction(). |
Procedure | Zeichenkette | Interne Standardprozedur. Siehe Prozeduren. |
Speed | Integer | Die maximale Geschwindigkeit in 1/100 Pixel/Frame die eine interne Standardprozedur das Objekt bewegen kann. Siehe Prozeduren. |
Accel | Integer | Die Beschleunigung in 1/100 Pixel/Frame² die eine interne Standardprozedur auf das Objekt anwenden kann. Siehe Prozeduren. |
Decel | Integer | Die Geschwindigkeitsabnahme in 1/100 Pixel/Frame² die die interne Prozedur WALK auf das Objekt anwenden kann. Siehe Prozeduren. |
Directions | Integer | Number of animation directions. Animation directions are arranged vertically in Graphics.png. Default 1. |
FlipDir | Integer | Wenn ungleich 0, gibt dieser Wert die erste Animationsrichtung an, die durch Spiegelung einer davor liegenden Animationsrichtung gezeichnet wird. So wird bei Wert 1 für die Richtung 1 (rechts) die gespiegelte Grafik der Richtung 0 (links) verwendet (siehe Clonks). Bei Wert 7 wird für Richtungen >= 7 die gespiegelte Grafik der Richtung 6 - n verwendet, d.h. bei höheren Richtungsnummern wird wieder rückwärts nach oben gezählt (siehe Banner im Ritterpack). |
Length | Integer | Number of animation phases for this activity (arranged horizontally in Graphics.png). Default 1. |
Reverse | Integer | 0 oder 1. Bei Wert 1 werden die Animationsphasen rückwärts angezeigt. |
Delay | Integer | Wartezeit in Frames (Ticks) zwischen zwei Animationsphasen. |
Step | Integer | How many animation phases the animation should advance after Delay frames. Default 1. |
Attach | Integer | A bitmask for the attachment to surfaces. See CNAT Values for a documentation of possible values. Only evaluated if the procedure is NONE. |
X | Integer | Animation graphics: X coordinate from Graphics.png. |
Y | Integer | Animation graphics: Y coordinate from Graphics.png. |
Wdt | Integer | Width of the animation graphic from Graphics.png. |
Hgt | Integer | Height of the animation graphic from Graphics.png. |
OffX | Integer | X-Offset at which to display the animation graphics. |
OffY | Integer | Y-Offset at which to display the animation graphics. |
FacetBase | Integer | 0 oder 1. Bei Wert 1 wird Facet mit der Standardobjektgrafik unterlegt. |
FacetTopFace | Integer | 0 oder 1. Bei 1 wird das TopFace (siehe DefCore.txt) aus der animierten Facet verwendet. |
FacetTargetStretch | Integer | 0 oder 1. Bei 1 wird die Grafik vertikal bis zur oberen Kante des ActionTarget gestretcht. |
NextAction | Zeichenkette | Next action being set after the current one has reached its end. If it is not specified, the action will be kept and the animation phase resets to 0 and the animation begins anew. If it is "Hold", the action will also be kept but stops at the last animation frame. If it is "Idle", the object will have no action after this one. |
NoOtherAction | Integer | 0 oder 1. Bei 1 ist keine Aktivität nach dieser möglich (z.B. Tod, Zerstörung). |
StartCall | Zeichenkette | Objektscriptfunktion, die beim Start der Aktivität aufgerufen wird. |
EndCall | Zeichenkette | Wird am Ende der Aktivität aufgerufen. |
PhaseCall | Zeichenkette | Wird bei jedem Phasenschritt aufgerufen. |
AbortCall | Zeichenkette | Wird aufgerufen, wenn die Aktivität vor ihrem Ende durch eine andere ersetzt wird. Parameter sind letzte Animationsphase, letztes ActionTarget und ActionTarget2. |
InLiquidAction | Zeichenkette | Auszuführende Aktion, wenn das Objekt in Flüssigkeiten eintaucht. |
Sound | Zeichenkette | Permanent sound being played during this action. The same can be achieved with Sound which is the more flexible solution. |
ObjectDisabled | Integer | 0 oder 1. Eingeschränkte Fähigkeit des Objekts während dieser Aktion. |
DigFree | Integer | Freigraben während dieser Aktion. Objektrechteck 1, sonst Kreisradius. |
Animation | Zeichenkette | Specifies the animation to be played in the mesh of the object. Works only if the object uses a mesh for its graphics. If given all of Facet, FacetBase, FacetTopFace and FacetTargetStretch are ignored. The Length times Delay possible animation phases are mapped linearly on the animation length. If Delay equals 0 only Length will be used and the animation does not play automatically. See Animations for further documentation on animations. |
Beispiel
Die ActMap wird im Script definiert, eine Beispiel-Definition sieht so aus:
local ActMap = { Fly = { Prototype = Action, Name = "Fly", Procedure = DFA_FLOAT, Directions = 2, FlipDir = 1, Length = 1, Delay = 10, X = 0, Y = 0, Wdt = 24, Hgt = 24, NextAction = "Fly", StartCall = "FlyingStart", }, Flutter = { Prototype = Action, Name = "Flutter", Procedure = DFA_FLOAT, Directions = 2, FlipDir = 1, Length = 11, Delay = 1, X = 0, Y = 0, Wdt = 24, Hgt = 24, NextAction = "Flutter", StartCall = "Fluttering", }, };