AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Gewinn-Abfrage bei 4-Gewinnt

Ein Thema von malo · begonnen am 3. Feb 2005 · letzter Beitrag vom 3. Feb 2005
 
Benutzerbild von malo
malo

Registriert seit: 19. Sep 2004
2.115 Beiträge
 
#1

Gewinn-Abfrage bei 4-Gewinnt

  Alt 3. Feb 2005, 13:16
Ich versuch mich grade an einem kleinen 4-Gewinnt-Spielchen. Das klappt soweit auch. Meine erste Schwierigkeit ist jedoch schon die Gewinnabfrage

Ich hab dafür eine Function erstellt, die ausgeben soll, ob ein Spieler gewonnen hat.

Ich hab mir auch die Gewinnabfrage von Luckies 4-Gewinnt (bzw. von w3seek) angesehen, doch daraus werd ich irgendwie nicht richtig schlau...

Ich hab mich dann mal selbst versucht und folgenden Code auf die Beine gestellt.

Delphi-Quellcode:
function TForm1.Spieler2Sieg: boolean;
var i: integer;
begin
  for i := 1 to 42 do
    begin
      if ((FindComponent('Shape'+IntToStr(i)) as TShape).Brush.Color = clRed)
        and ((FindComponent('Shape'+IntToStr(i+1)) as TShape).Brush.Color = clRed)
          and ((FindComponent('Shape'+IntToStr(i+2)) as TShape).Brush.Color = clRed)
            and ((FindComponent('Shape'+IntToStr(i+3)) as TShape).Brush.Color = clRed)
              then
                Result := true else
                  Result := false;
    end;
end;
Daraus kann man auch schon fast erkennen, dass ich als "Felder" Shapes benutzt hab, die ich regelmäßig angeordnet hab (und die auch noch Standartnamen besitzen, was ja nicht sein sollte, ich weiß...). Mit diesem Code frag ich die Farben der Shapes will ich die Farben der Shapes abfragen und daraus erschließen, ob 4 gleichfarbige Shapes in einer Reihe stehen. Das soll jetzt erstmal dafür dienen, um horizontal abzufragen, ob 4 rote Steine in einer Reihe stehen.

Wenn ich jetzt die jeweiligen Shapes einfärbe (also Steine einwerfe) ruf ich auch immer schön die Function auf, aber irgendwie funktioniert das nicht ganz. Keine Fehlermeldung oder so, Result wird nur nie auf true gesetzt

Hat jemand ne Ahnung, warum?
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz