API:CBaseShipManager

Aus STNE-Wiki

Wechseln zu: Navigation, Suche
fertige Scripte | Anleitungen und FAQ | Überblick über die Scripting-Sektion | API-Übersicht | Hilfen zum Arbeiten im Wiki

Allgemein

Die Klasse CBaseShipManger wird benötigt um Aktionen mit einem Schiff durchzuführen.

Hierzu ist es erstmal notwendig, eine Instanz von CMyShip zu erzeugen:

Var Schiff As New CMyShip(123456);

Auf das Schiff mit der NCC 123456 kann man nun sämtliche Methoden des Objektes CBaseShipManger anwenden, da die Eigenschaft Action von CMyShip der Klasse CBaseShipManager entspricht.

Beispiel

 Var Schiff As New CMyShip(123456);
 Var Station As New CMyShip(54321);
 Schiff.Action.CollectOre(20);
 Schiff.Action.FlyTo("150|250");
 Schiff.Action.EnterOrbit();
 Schiff.Action.DockTo(Station.ShipID);
 Schiff.Action.TransferToShip(Station.ShipID, 100, EBeamResource.IridiumOre);
 Schiff.Action.TransferFromShip(Station.ShipID, 50, EBeamResource.Deuterium);
 Schiff.Action.TransferFromShip(54321, 50, EBeamRessource.Food);
 Schiff.Action.Undock();
 Schiff.Action.LeaveOrbit();
 Schiff.Action.FlyTo("152|251");

In dem Beispiel würde das eigene Schiff die vorgegeben Aktionen ausführen, in dem Fall: Erz sammeln, zu einer Station in einem tiefen Orbit fliegen, Andocken, Erz rüberbeamen, Schiff mit Nahrung sowie Deuterium versorgen und anschließend zurück fliegen.

Methoden

Hier eine Liste der gebräuchlichen Methoden von CBaseShipManager:

Bitte beachte: Die Aktionen unterliegen den selben Einschränkungen wie im Spiel, d.h. du kannst nur mit anderen Schiffen interagieren, wenn sie im selben Sektor sind oder zum Beispiel auch nur die Schilde laden, wenn sie auch abgekühlt sind.

 WICHTIG: Bevor du Aktionen ausführst, prüfe erst ob diese Möglich ist, z.B. beim Beamen oder SRS aktivieren - 
 sonst wird unnötiger Code ausgeführt und ggf. ein Kampftick berechnet (auch wenn keine feindlichen Schiffe vorhanden sind.
 Bitte bedenke dass dein Skript maximal 100 Aktionen pro Durchlauf ausführen kann, also achte nicht nur dem Server zu Liebe auf Performance!
Methode Parameter Erklärung
ActivateLRS(Status) Boolean Bei Schiff.Action.ActivateLRS(True) wird das LRS aktiviert, bei False deaktiviert
ActivateReplicators(Status) Boolean Aktiviert/Deaktiviert den Replikator an Bord
ActivateShields(Status) Boolean Schilde aktivieren
ActivateSRS(Status) Boolean SRS aktivieren
ActivateTractorBeam(ShipID) Integer Erfasst das Schiff mit der NCC-Nr ShipID im Traktorstrahl
ActivateWarpCore(Status) Boolean Warpkern aktivieren
ApplyGoodsToConstruction() - Speist beim Umbau von Tugs / Stationen die Waren ein
ChargeEmergencyBattery(ShipID, Menge) Integer, Integer Lädt die Reservebatterie von dem Schiff mit der NCC-Nr ShipID um Menge Energieeinheiten
ChargeShields(Menge) Integer Lädt die eigenen Schilde um Menge auf.
CollectDeuterium(Energie) ** Integer Sammelt mit Energie Einheiten Deuterium
CollectOre(Energie) ** Integer Extrahiert mit Energie Einheiten Erz
DeactivateTractorBeam() - Deaktiviert den Traktorstrahl, in dem ein andere Schiff gehalten wird.
DischargeEmergencyBattery(Menge) Integer Menge}
DockTo(ShipID) Integer Dockt an das Schiff/Station mit der NCC-Nr ShipID an
EnterOrbit - Betritt den Orbit der Kolonie, über der das Schiff gerade steht
ExtractFromWreck(Menge) Integer Extrahiert Duranium aus dem erfassten Wrack mit Energiemenge Menge
Fly(AnzahlFelder, Richtung) Integer, EShipDirection Fliegt AnzahlFelder in die vorgegebene Richtung
FlyTo(Position) ** String Fliegt zu der angegeben Positon im Format "x|y"
Hide(Versteckt) Boolean Versteckt das Schiff (wenn es sich in einem dichten Nebel/Asteroiden befindet)
JettisonGoods(Menge, WarenTyp) Integer, EGoodsType Waren über Board werfen
LeaveAllFleets() - Verlässt alle Flotten, in denen das Schiff zugeteilt wurde
LeaveOrbit() - Verlässt den aktuellen Orbit
RefillWarpCore(Menge) Integer Lädt Menge Warpkernfüllungen auf
Repair(ShipID, Hüllenpunkte) Integer, Integer Repariert das Schiff mit der NCC-Nr ShipID um Hüllenpunkte Punkte
SetAlertLevel(Stufe) EAlertLevel Setzt die Alarmstufe auf den gegeben Wert vom Typ EAlertLevel
SetName(Name) String Benennt das Schiff um
TransferFromColony(KolonieID, Anzahl, Ressource) Integer, Integer, EBeamResource Transportiert von Kolonie mit der ID KolonieID genau Anzahl Ressourcem vom Typ Ressource (EBeamResource)
TransferFromShip(ShipID, Anzahl, Ressource) Integer, Integer, EBeamResource Transportiert Waren von einem Schiff mit der NCC-Nr FromShipID
TransferToColony(KolonieID, Anzahl, Ressource) Integer, Integer, EBeamResource Warentransport zur Kolonie
TransferToShip(ShipID, Anzahl, Ressource) Integer, Integer, EBeamResource Warentransport zu einem Schiff
Undock() - Das Schiff abdocken


** Nur mit Feature-Pack möglich

http://game.stne.net/ObjectExplorer.aspx?p=CBaseShipManager

Persönliche Werkzeuge