Results 1 to 2 of 2

Thread: Freien Laderaum überprüfen

  1. #1

    Freien Laderaum überprüfen

    Hi zusammen,

    ich will in einem Script Deuterium auf 2 unterschiedliche Transporter und ein Depot Beamen bis diese voll sind.
    Bekomme aber irgendwie die Abfrage nicht so ganz hin.
    Hier mal der Auszug was ich habe:

    Code:
    Var Ship As CMyShip;
    Var Deutfleet As New CMyFleet(60760);
    Var freestoragetrans1 As Integer;
    Var freestoragetrans2 As Integer;
    Var freestoragedepot As Integer;
    freestoragetrans1 = Trans1.StockRoom.FreeStorage;
    freestoragetrans2 = Trans2.StockRoom.FreeStorage;
    freestoragedepot = Depot.StockRoom.FreeStorage;
    
    For (Each Ship In Deutfleet.Ships)
    {
      If(freestoragetrans1 < 10){
        WriteLine("Transportiere zu Trans2 - Freier Laderaum Trans1:" & Trans1.StockRoom.FreeStorage);
        Ship.Action.TransferToShip(Trans2.ShipID, Ship.StockRoom.Amount(EGoodsType.Deuterium), EBeamResource.Deuterium);
      }
      elseif(freestoragetrans2 < 10){
        WriteLine("Transportiere zu Trans1 - Freier Laderaum Trans2:" & Trans2.StockRoom.FreeStorage); 
        Ship.Action.TransferToShip(Trans1.ShipID, Ship.StockRoom.Amount(EGoodsType.Deuterium), EBeamResource.Deuterium);
      }
      else{
        WriteLine("Transportiere zu Depot - Freier Laderaum Depot:" & Depot.StockRoom.FreeStorage); 
        Ship.Action.TransferToShip(Depot.ShipID, Ship.StockRoom.Amount(EGoodsType.Deuterium), EBeamResource.Deuterium);
      }
    }
    Kann mir da jemand weiterhelfen wie ich das hinbekommen könnte? Ich denke das evtl. mein ganzer Ansatz falsch ist..?

    Gruß Saboti

  2. #2

    Smile

    Quote Originally Posted by Saboti View Post
    Var Ship As CMyShip;
    Var Deutfleet As New CMyFleet(60760);
    Var freestoragetrans1 As Integer;
    Var freestoragetrans2 As Integer;
    Var freestoragedepot As Integer;
    freestoragetrans1 = Trans1.StockRoom.FreeStorage;
    freestoragetrans2 = Trans2.StockRoom.FreeStorage;
    freestoragedepot = Depot.StockRoom.FreeStorage;

    For (Each Ship In Deutfleet.Ships)
    {
    If(freestoragetrans1 < 10){
    WriteLine("Transportiere zu Trans2 - Freier Laderaum Trans1:" & Trans1.StockRoom.FreeStorage);
    Ship.Action.TransferToShip(Trans2.ShipID, Ship.StockRoom.Amount(EGoodsType.Deuterium), EBeamResource.Deuterium);
    Falls er obige Code alles ist fehlen die Definitionen zu Trans2, Trans1 und Depot.


    Das ist erstmal das was mir aufgefallen ist. Viel Erfolg.
    Ich schreibe kompliziert, weil ich 102 Tasten habe.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •