Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#4

AW: Spiel - Wo liegt Was?

  Alt 10. Mär 2014, 00:48
Auf die katastrophalen Variablennamen wurde ja schon hingewiesen (ein aussagekräftiger Name macht den Code wesentlich lesbarer und Kommentare können dann meistens ganz entfallen).

In dem Spielzyklus gibt es unterschiedliche Zustände:
  • Computer hat noch nicht gesetzt (0)
  • Computer hat gesetzt (1)
  • Spielzug zu Ende (2)
Wenn man den Timer jetzt startet
Delphi-Quellcode:
SpielzugStatus := 0;
SpielzugTimer.Interval := 2000;
SpielzugTimer.Enabled := true;
dann reagiert man im Timer-Event darauf wie folgt:
Delphi-Quellcode:
procedure TForm1.SpielzugTimerTimer( Sender : TObject );
begin
  SpielzugTimer.Enabled := False;

  Inc( SpielzugStatus );

  case SpielzugStatus of
    1 : // Computer setzt sein Fähnchen
      begin
        ...
      end;
    2 : // Spielzug am Ende
      begin
        ...
      end;
  end;

  SpielzugTimer.Enabled := SpielzugStatus < 2;
end;
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat