Stranded


Befehlsliste
Basic (10)

@Befehl

Kategorien: basic
Das @ Zeichen kann vor jeden normalen Stranded II Befehl gesetzt werden. Es unterbindet die Ausgabe von Fehlern für den angehängten Befehl.

areal_event "Event", X,Y,Z [,Radius] [,Event-Limit]

Kategorien: basic
Ähnlich wie der Befehl event, nur dass hier ein Event bei allen Objekten innerhalb eines Gebietes, welches über X, Y, Z und Radius (Standard 50) festgelegt wurde, ausgelöst wird.
Standardmäßig bricht der Befehl nach dem auslösen eines Events ab. Gebe bei Eventlimit 0 an, um wirklich alle auslösbaren Events auszulösen oder eine beliebige andere Zahl, um nur eine bestimmte Menge an Events auszulösen (Standard 1)

event "Ereignis" [,"Klasse", ID]

Kategorien: basic
Führt bei dem Objekt wo das aktuelle Script ausgeführt wird (oder bei dem Objekt das über die Parameter angegeben wird) ein Ereignis aus. Das Ereignis kann einen beliebigen Namen haben und muss kein von Stranded II genutztes Ereignis sein. Dies ermöglicht es Ereignisse als eine Art von Funktionen zu benutzen.
Wenn man doch ein Ereignis von Stranded II benutzt, muss man bedenken, dass spezielle Befehle für dieses Ereignis nicht richtig funktionieren werden (da das Ereignis ja nicht wirklich stattgefunden hat sondern nur per Scriptbefehl ausgelöst wurde!).
Desweiteren muss man bedenken, dass Stranded II Scripts und Ereignisse immer nacheinander ausführt. Das Ereignis wird also nicht sofort verarbeitet, sondern erst, nachdem das aktuelle Script durchgelaufen ist.

Das Event kann auch ÜBERALL ausgeführt werden. Hierfür muss bei Klasse "global" angegeben werden. Die ID wird in dem Fall ausgelassen

exit

Kategorien: basic
Verlässt eine mit dem loop-Befehl erstellte Schleife, bevor sie komplett durchgelaufen ist

if (Bedingung) {Befehle} elseif (Bedingung) {Befehle} else {Befehle}

Kategorien: basic
Mit If lassen sich Bedingungen formulieren. Nur wenn die Bedingung in den runden Klammern erfüllt ist, werden die Befehle in den geschweiften Klammern ausgeführt.
Der Befehl lässt sich durch else und elseif erweitern. Diese treten in Kraft, wenn die vorhergehende Bedingung (von einem if oder einem elseif) nicht erfüllt wurde. Bei else werden dann sofort die Befehle in dessen geschweifter Klammer ausgeführt, bei elseif verhält es sich genauso, allerdings muss hier erst noch eine weitere Bedingung erfüllt werden.

Operatoren für Bedingungen

== - gleich
!= - ungleich
< / > - kleiner / größer
<= / >= - kleiner oder gleich / größer oder gleich

Verknüpfungen für Bedingungen

&& / and - und
|| / or - oder
xor - exklusives oder (Kontravalenz)

Jeder Teil einer Bedingung bestehend aus 2 Werten und einem Operator bzw. einer Verknüpfung sollte in runde Klammern eingeschlossen werden, damit Stranded II nichts fehlinterpretiert!

loop ("Modus" [,Anzahl/Typ]) { Befehle }

Kategorien: basic
Führt die Befehle in den geschweiften Klammern in einer Schleife aus. Folgende Schleifenmodi gibt es:
count - Eine einfache Zählschleife von 1 bis Anzahl
objects - Alle Objects durchgehen. Wird ein Typ angegeben, so werden nur Objects dieses Typs durchgegangen
units - Alle Units durchgehen. Wird ein Typ angegeben, so werden nur Units dieses Typs durchgegangen
items - Alle Items durchgehen. Wird ein Typ angegeben, so werden nur Items dieses Typs durchgegangen
infos - Alle Infos durchgehen. Wird ein Typ angegeben, so werden nur Infos dieses Typs durchgegangen

Über den Befehl loop_id wird der Zählwert der Schleife (bei count) bzw. die ID des Objects, der Unit, des Items oder des Infos zurückgegeben. Natürlich ändert sich dieser Rückgabewert bei jedem Schleifendurchlauf.

Achtung: Es können nicht mehrere Schleifen ineinander verschachtelt werden!

loop_id

Kategorien: basic, return
Über den Befehl loop_id wird der Zählwert der Schleife (bei count) bzw. die ID des Objects, der Unit, des Items oder des Infos zurückgegeben. Natürlich ändert sich dieser Rückgabewert bei jedem Schleifendurchlauf.

Der Befehl macht natürlich nur innerhalb von Schleifen einen Sinn (siehe loop)

on:Ereignis { Befehle }

Kategorien: basic
Über den on-Befehl wird eine Scriptpassage definiert, welche bei einem bestimmten Ereignis verarbeitet wird. Das Ereignis wird durch einen Doppelpunkt an den on Befehl gehängt. Danach folgen geschweifte Klammern in welche die besagte, auszuführende Scriptpassage gesetzt wird.

Ereignisse

start - beim Starten der Map (nicht beim Laden eines Spielstandes)
load - beim Laden der Map (egal ob Start oder Spielstand)
presave - vor dem Speichern eines Spielstandes
postsave - nach dem Speichern eines Spielstandes
create - beim Erstellen (nur während des Spiels, nicht beim Laden)
use - beim Benutzen mit der Benutzen Taste / bei Items beim Benutzen im Inventar
hit - bei Schaden verursacht durch den Spieler
kill - bei Zerstörung/Tötung
collect - beim Aufheben eines Items mit der Benutzen Taste
drop - beim Wegwerfen eines Items
trigger - wenn die Bedingungen eines Trigger-Infos erfüllt werden
changeday - beim Tageswechsel um 00:00 Uhr
sleep - beim Schlafen
dig - wird bei Benutzung eines Spatens (behaviour=spade) bei allen in der Nähe befindlichen Objekten ausgelöst
fish - wird bei Benutzung einer Angel (behaviour=fishingrod) bei allen in der Nähe befindlichen Objekten ausgelöst
useground - beim Benutzen vom Boden
usesea - beim Benutzen vom Wasser/Meer
impact - beim Treffen mit einer Waffe (wird bei Waffe sowie Munition ausgelöst)
timer - bei Ablauf eines Timers
getoff - beim Absteigen (von Fahrzeugen/Reittieren)
attack1 - beim Benutzen eines Items als Werkzeug/Waffe mit der linken Maustaste
attack2 - beim Benutzen eines Items als Werkzeug/Waffe mit der rechten Maustaste
ai_attack - wenn der Spieler von einer Unit angegriffen wird
ai_idle1 - beim Abspielen der Idle Animation 1 (bei Units)
ai_idle2 - beim Abspielen der Idle Animation 2 (bei Units)
ai_idle3 - beim Abspielen der Idle Animation 3 (bei Units)
nodeXXXX - wenn eine Unit, welche einem Pfad folgt, das Info mit ID XXXX im Pfad erreicht (wird bei der Unit ausgeführt)
reach - wenn eine Unit, welche einem Pfad folgt, ein Info im Pfad erreicht (wird beim Info ausgeführt)
selectplace - bei Klick aufs Terrain im Platzierungsmodus
cracklock_success - beim erfolgreichen Knacken eines Schlosses
cracklock_failure - bei einem fehlgeschlagenen Schlossknack-Versuch
build_setup - beim Wählen eines Gebäudes in der Gebäudeliste
build_start - beim Anlegen einer Baustelle
build_finish - beim Fertigstellen eines Gebäudes
keyhitXX - beim Drücken eines Scriptkeys (nur im game.inf-Script)
keydownXX - beim Gedrückthalten eines Scriptkeys (nur im game.inf-Script)
keyreleaseXX - beim Loslassen eines Scriptkeys (nur im game.inf-Script)
spawn - beim Spawnen über ein Spawn-Control Info
addstate - beim Hinzufügen eines States
freestate - beim Entfernen eines States
separate - beim Treffen eines angehängten Items
edset - wenn ein Objekt im Editor platziert wird
inhand - wenn ein Item in die Hand genommen wird (beim Item)
noammo - beim Schießen ohne Munition (beim Waffen-Item)

skip

Kategorien: basic
Beendet die Skriptausführung sofort. Die nachfolgenden Befehle werden ignoriert.

skipevent

Kategorien: basic
Bei einigen Ereignissen führt Stranded II automatisch Aktionen aus. Z.b. wird ein in der Welt herumliegendes Item bei Benutzung automatisch aufgehoben - auch wenn dies nicht per Script so festgelegt wurde. Skipevent ermöglicht es, derartige Grundverhalten von Stranded II bei bestimmten Ereignissen zu überspringen/deaktivieren. Der Befehl wird hierfür einfach an eine beliebige Position innerhalb der Ereignisklammern geschrieben.

Unterstützte Ereignisse

collect - das Item wird bei Benutzung nicht aufgehoben
combine (nur bei Scripts in combinations.inf) - das Kombinieren wird nicht durchgeführt
use - durch das Verhalten (behaviour) festgelegte Aktionen oder das Durchsuchen von toten Einheiten werden/wird unterbunden
drop - das Item wird nicht weggeworfen
getoff - der Spieler steigt nicht ab
attack1 - kein Angriff
attack2 - keine Spezialfunktion
build_setup - es wird nicht in den Baumodus gewechselt
build_start - es wird keine Baustelle angelegt
separate - das getroffene Item wird nicht von seinem Objekt abgelöst und fällt nicht runter

Stranded I, Stranded II & Stranded III are games by Unreal Software 2003-2023 | Contact | Disclaimer