Inhaltsverzeichnis
cpSetStrafkatalog
Einleitung
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.
Syntax
| Befehl | cpSetStrafkatalog(Fahrername:String, Punkte:Integer) |
|---|---|
| Funktion | Setzt den Strafpunktestand auf den angegebenen Wert. |
| Typ |
Codebeispiel
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.
Hinweis
