cpSetTankStand2(slot, TankStand)

Dieser Befehl setzt den Tankinhalt für einen Slot, eine Regler-ID ausd dem AddOn heraus. So ist es möglich, den Tankinhalt bedingt durch eine Strafe zu entleeren oder als Bonus aufzufüllen.

Änderungen sind mit diesem Befehl mit 3 Nachkommastellen möglich.

Der Befehl setzt den Tankinhalt auf den angegebenen Wert. Möchte man den bisherigen TankStand einbeziehen, muss man diesen vorher auslesen, dann den neuen Wert berechnen und anschließend den neuen Wert setzen.


Syntax

Befehl cpSetTankStand2(slot : Integer, TankStand: Extended);
Funktion Setzt den Tankinhalt pro Slot / Regler-ID auf den angegebenen Wert
Typ
ab 3.1.5 build 426


Codebeispiel

var
  iSlot : Integer;
  iID : Integer;
  eTankStandNeu : Extended;
  eTankStandAlt : Extended;
  sMeldung : String;
  
begin

  // alle Slots verarbeiten
  for iSlot := 1 to cpCountOfSlots do
  begin
  
    // Slot einstellen und ID speichern
    Cockpit.Slot := iSlot;
    iID := Cockpit.SlotID;
    
    // alten Tankinhalt speichern
    eTankStandAlt := Cockpit.TankStand;
    
    // Tank des Führenden um 10% leeren
    if Cockpit.Position = 1 then
      eTankStandNeu := eTankStandAlt - 10.123
    // P2-P6 bekommen 10% zusätzlich
    else
      eTankStandNeu := eTankStandAlt + 10.456;
      
    // Mehr als 100% macht keinen Sinn
    if eTankStandNeu > 100 then eTankStandNeu = 100;
    
    // Weniger als 0 geht auch nicht
    if eTankStandNeu < 0 then eTankStandNeu = 0;
    
    // Jetzt den neu ermittelten Tankstand zuweisen
    cpSetTankStand2(iID, eTankStandNeu);
    
  end;

end.

Dieser Code durchläuft alle Slots, speichert die ID und den aktuellen Tankinhalt. Anschließend wird die aktuelle Platzierung ermittelt. Handelt es sich um den Führenden, bekommt dieser 10,123 % aus dem Tank „abgelasen“. Die Plätze 2 und folgende erhalten jeweils 10,456 % hinzu.



Start - FAQ - Glossar - Sitemap - Impressum

 
cockpit-xp/addon/befehlsreferenz/cpsettankstand2.txt · Zuletzt geändert: 2020/11/28 12:15 (Externe Bearbeitung)