Dieser Befehl setzt den Strafpunktestand neu. Der bisherige Punktestand wird mit dem neuen Wert überschrieben - die Punkte werden NICHT addiert! In Kombination mit cpGetStrafkatalog lässt sich die Addition durch eigene Berechnung trotzdem realisieren.
Befehl | cpSetStrafkatalog(Fahrername:String, Punkte:Integer) |
---|---|
Funktion | Setzt den Strafpunktestand auf den angegebenen Wert. |
Typ |
var slot : Integer; sFahrerName : String; strafPunkte1 : Integer; strafPunkte2 : Integer; msg : String; mitStrafe : Boolean; begin // Variablen initialisieren msg := ''; // Fahrernamen speichern sFahrerName := 'slot-xtreme'; // Mit Bestrafung bei Erreichen Punktelimit // abhängig vom Fahrernamen :-) if sFahrerName = 'Ralph525' then mitStrafe := True else mitStrafe := False; // Strafpunkte vergeben cpSetStrafkatalog(sFahrerName, 2); // Aktuellen Punktestand abfragen strafPunkte1 := cpGetStrafkatalog(sFahrerName); // Meldung erweitern msg := msg + 'Fahrer ' + sFahrerName + ' - '; msg := msg + IntToStr(strafPunkte1) + ' Punkte'; msg := msg + Chr(13) + Chr(10); // Fahrer bekommt weitere Punkte und ggfs. Strafe cpAddStrafkatalog(sFahrerName, 11, mitStrafe); // Neuen Punktestand abfragen strafPunkte2 := cpGetStrafkatalog(sFahrerName); // Meldung erweitern msg := msg + 'Fahrer ' + sFahrerName + ' - '; msg := msg + IntToStr(strafPunkte2) + ' Punkte'; msg := msg + Chr(13) + Chr(10); cpShowMessage(msg); end.
Zeigt die folgende Meldung. Mit cpSetStrafkatalog erhält der Fahrer erst einmal 2 Strafpunkte. Der Punktestand wird fest gesetzt. Sollte der Fahrer z.B. 5 Punkte auf dem Konto haben, ist der Kontostand nachher 2 Punkte!
Der Befehl cpGetStrafkatalog fragt den aktuellen Punktestand ab. Möchte man mit cpSetStrafkatalog Punkte addieren, müsste man im ersten Schritt den Punktestand abfragen, anschließend Strafpunkte addieren und dann den errechneten neuen Wert setzen.
Einfacher ist das per cpAddStrafkatalog möglich, da dieser Befehl Punkte zum aktuellen Stand addiert.