API:CMyShip
Aus STNE-Wiki
Phips (Diskussion | Beiträge) |
K (→Methoden (Auszug)) |
||
Zeile 38: | Zeile 38: | ||
| Name || - | | Name || - | ||
|- | |- | ||
- | | StockRoom || Gibt dir eine Instanz der Klasse [[API:|SStockRoom] zurück, mit denen du die aktueleln Waren im Lager etc. auslesen kannst | + | | StockRoom || Gibt dir eine Instanz der Klasse [[API:|SStockRoom]] zurück, mit denen du die aktueleln Waren im Lager etc. auslesen kannst |
|- | |- | ||
| SRS || Gibt eine Instanz der Klasse [[API:CShipList|CShipList]] mit sämtlichen Schiffen im SRS zurück | | SRS || Gibt eine Instanz der Klasse [[API:CShipList|CShipList]] mit sämtlichen Schiffen im SRS zurück |
Version vom 20. August 2010, 14:46 Uhr
fertige Scripte | Anleitungen und FAQ | Überblick über die Scripting-Sektion | API-Übersicht | Hilfen zum Arbeiten im Wiki |
Allgemein
CMyShip ist so ziemlich die wichtigste Klasse in der ScriptEngine. Sie erbt die kompletten Eigenschaften von CShip.
Zum Verständnis ein kurzes Beispiel, in dem es sich um ein eigenes Schiff mit der NCC-Nummer 123456 handelt.
Var Schiff As New CMyShip(123456);
Nun ist in der Variable Schiff eine Instanz des Objektes CMyShip gespeichert. Ein Blick auf den Objektexplorer (http://game.stne.net/ObjectExplorer.aspx?p=CMyShip) verrät dir, was du damit anstellen kannst:
WriteLine(Schiff.Name & " hat momentan " & Schiff.Energy & " Energie");
Desweiteren sind natürlich auch Aktionen über das Objekt CBaseShipManager mit Hilfe der Methode Schiff.Action möglich. Genauere Informationen hierzu findest du bei der Objekt-Dokumentation.
Beispiel:
Schiff.Action.ActivateSRS(True);
Methoden (Auszug)
Die am häufigsten benutzten Eigenschaften oder Methoden sind die folgenden:
Methode | Erklärung |
---|---|
Action | CBaseShipManager |
Energy | gibt eine Zahl zurück |
Definition | ist ein Objekt vom Typ CMyShipDefinition. Damit lassen sich Eigenschaften des aktuellen Schiffstyps auslesen |
Docked | gibt True/False zurück |
FlightRange | gibt die Anzahl der geflogenen Felder (Tick) zurück |
Name | - |
StockRoom | Gibt dir eine Instanz der Klasse [[API:|SStockRoom]] zurück, mit denen du die aktueleln Waren im Lager etc. auslesen kannst |
SRS | Gibt eine Instanz der Klasse CShipList mit sämtlichen Schiffen im SRS zurück |
WarpCore | Wert des Warpkerns |
Eine vollständige Liste findest du direkt im Objektexplorer unter (http://game.stne.net/ObjectExplorer.aspx?p=CMyShip)
Beispiel
Mit denen ist es möglich, Informationen über das Schiff abfragen zu lassen und anschließend zum Beispiel (falls vorhanden) den Warpkern auffüllen zu lassen:
Var Schiff As CMyShip(12345);
If (Schiff.Definition.HasWarpCore = True) { If (Schiff.WarpCore < 100) { If (Schiff.Docked = False) { Schiff.Action.DockTo(54321); } Schiff.Action.TransferFromShip(54321, 10, EBeamResource.Deuterium); Schiff.Action.TransferFromShip(54321, 10, EBeamResource.Antimatter); Schiff.Action.TransferFromShip(54321, 5, EBeamResource.Dilicium); Schiff.Action.RefilWarpCore(10); } WriteLine("Der Wert des Warpkerns beträgt nun: " & Schiff.WarpCore & " Einheiten"); } Else { WriteLine("Das Schiff " & Schiff.Name & " hat keinen Warpkern."); }
Merke: Du kannst nur Instanzen von CMyShip mit deinen eigenen Schiffen erstellen, andere Schiffe kannst du nur via CShip handhaben aber nicht via der NCC-Nummer erstellen. Du kannst nur mit ihnen Arbeiten, wenn dir eine Funktion z.B. die Auswertung der SRS-Liste mit Hilfe von Schiff.SRS dir Instanzen von CShip mit einem "fremden" Schiff übergibt.