Thema: Delphi Spiel des Lebens

Einzelnen Beitrag anzeigen

shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#15

Re: Spiel des Lebens

  Alt 10. Mai 2007, 13:21
Zitat von Stillmatic:
Sry hab vergessen zu erwähnen das wir ein springen eines Steines nicht Programmieren müssen!
Also die Steinchen springennicht vom Ende zum Anfang!
Wikipedia ( http://de.wikipedia.org/wiki/Game_of_life#Das_Spielfeld ) sagt:
Zitat von Wikipedia:
Da ein reales Spielfeld immer einen Rand hat, muss das Verhalten dort festgelegt werden. Man kann sich den Rand z. B. durch tote Zellen belegt denken, so dass manche Gleiter ihre Bewegungsrichtung dort ändern. Eine andere Möglichkeit ist ein Torus-förmiges Spielfeld, bei dem alles, was das Spielfeld nach unten verlässt, oben wieder herauskommt und umgekehrt, und alles, was das Spielfeld nach links verlässt, rechts wieder herauskommt und umgekehrt.
Ich habe oben gezeigt, wie man ein Torus-förimiges Spielfeld baut.
Möchte man dies nicht, dann muss man doch nur in der Function FnkNachbarn prüfen, ob X und Y noch auf dem Spielfeld sind:
Delphi-Quellcode:
Function FnkNachbarn(i,j:integer):integer;
   function IstBelegt(x,y:integer):boolean;
   begin
      result := (x>=MIN_X) and (x<=MAX_X) and (y>=MIN_Y) and (y<=MAX_Y) and curGen[x,y];
   end;
var
   Nachbarn :integer;
Begin
Nachbarn:= 0;
  if IstBelegt(i,j+1) then //unten
     Nachbarn:= Nachbarn + 1;
  ...
Andreas
  Mit Zitat antworten Zitat