Scripting:Deutsammeln(flotte)

Aus STNE-Wiki

(Unterschied zwischen Versionen)
Wechseln zu: Navigation, Suche
Zeile 11: Zeile 11:
  freeCargo = Cargoship.Lager.FreieKapazität
  freeCargo = Cargoship.Lager.FreieKapazität
  Energi = Tankship.Energie
  Energi = Tankship.Energie
-
  writeline(freeCargo & ' Freier Laderaum des Lagerschiffes');
+
  writeline(CStr(freeCargo) & ' Freier Laderaum des Lagerschiffes');
-
  writeline('Energie der Tanke Schiffe: ' & Energi);
+
  writeline('Energie der Tanke Schiffe: ' & CStr(Energi));
  IF(freeCargo<900)
  IF(freeCargo<900)
  {
  {
-
   writeline('Bitte etwas Lager auf Lager 1 Schaffen, das Deuterium kann nicht Transportiert werden!');
+
   writeline('Bitte etwas Lager auf ' & CMyShip.Name & ' Schaffen, das Deuterium kann nicht Transportiert werden!');
  }
  }
  ELSE
  ELSE
Zeile 29: Zeile 29:
   {
   {
     Ticks = ((30 - Energi) / 6)
     Ticks = ((30 - Energi) / 6)
-
     writeline('Leider ist noch nicht genügen Energie da, benötigt werden 30 vorhanden ist ' & Energi & ' Energie, du musst noch ' & Ticks & ' Ticks warten.');
+
     writeline('Leider ist noch nicht genügen Energie da, benötigt werden 30 vorhanden ist ' & CStr(Energi) & ' Energie, du musst noch ' & CStr(Ticks) & ' Ticks warten.');
   }
   }
  }
  }

Version vom 22. Mai 2006, 12:40 Uhr

fertige Scripte | Anleitungen und FAQ | Überblick über die Scripting-Sektion | Hilfen zum Arbeiten im Wiki

Deutsammeln per Flotte

Das Skript

ShipManager.BenutzeFlotte(flottenid);
VAR Cargoship AS NEW CMyShip(Lagerschiff)
VAR Tankship AS NEW CMyShip(Tankschiff)
VAR freeCargo AS int32
VAR Energi AS int32
VAR Ticks AS int32
freeCargo = Cargoship.Lager.FreieKapazität
Energi = Tankship.Energie
writeline(CStr(freeCargo) & ' Freier Laderaum des Lagerschiffes');
writeline('Energie der Tanke Schiffe: ' & CStr(Energi));
IF(freeCargo<900)
{
  writeline('Bitte etwas Lager auf ' & CMyShip.Name & ' Schaffen, das Deuterium kann nicht Transportiert werden!');
}
ELSE
{
  IF(Energi=30)
  {
    ShipManager.Abdocken();
    ShipManager.DeuteriumSammeln(30);
    ShipManager.AndockenAn(264979);
    ShipManager.TransferiereZuSchiff(275244, 150, EBeamRessource.Deuterium);
  }
  ELSE
  {
    Ticks = ((30 - Energi) / 6)
    writeline('Leider ist noch nicht genügen Energie da, benötigt werden 30 vorhanden ist ' & CStr(Energi) & ' Energie, du musst noch ' & CStr(Ticks) & ' Ticks warten.');
  }
}

Komentar

Das ganze Skript ist auf Sammeln mit 6 Indus in einem dichten Deuteriumnebel und das Lagern auf einer Antares B zugeschnitten,außerdem sollte eine Basisvorhanden sein, über welche die Waren transferiert werden könnnen.
Wenn z.B. mit Sunhawks gesammelt wird musst du

IF(Energi=30)

durch

IF(Energi=40)

ersetzten, außerdem musst du den Wert beim Beamen erhöhen.
Auch musst du den Beam-Wert senken wenn du nur in einem dünnen Deuteriumnebel sammelst.

Persönliche Werkzeuge