[MX] reversi

GeorgMeyer

Mitglied
hoi,

hab mich mal daran gesetzt das Spiel reversi in flash umzusetzen,
PHP:
// Vorbereitungen...

//Spielfeld initialisieren
// 1 -> Schwarz
// 2 -> Weiss
feld=[0,0,0,0,0,0,0,0]
feld[0]=[0,0,0,0,0,0,0,0]
feld[1]=[0,0,0,0,0,0,0,0]
feld[2]=[0,0,0,0,0,0,0,0]
feld[3]=[0,0,0,2,1,0,0,0]
feld[4]=[0,0,0,1,2,0,0,0]
feld[5]=[0,0,0,0,0,0,0,0]
feld[6]=[0,0,0,0,0,0,0,0]
feld[7]=[0,0,0,0,0,0,0,0]

// RichtungsVektoren [x-richtung,y-richtung]
richtung=[0,0]
richtung[0]=[0,0,1,-1,1,-1,1,-1]
richtung[1]=[1,-1,0,0,1,-1,-1,1]

//Einige Funktionen...
// Aus der Maus Position herauslesen auf welchem Feld man sich befindet
function feldErkennen(x,y) {
	for (n=0; n<8; n++) {
		if ((x>n*30)&&(x<(n+1)*30)) { xpos=n }
		if ((y>n*30)&&(y<(n+1)*30)) { ypos=n }
	}
	return[xpos,ypos]
}
//Prüft ob ein gesetztes Feld gültig ist...
function feldGueltig(n,r,farbe) {
  antwort=false
    for (u=0; u<=richtung[0].length; u++) {
      if((feld[n+richtung[1][u]][r+richtung[0][u]]==farbe*-1+3)&&(feld[n][r]==0)) {
        p=1
        while(feld[n+(p*richtung[1][u])][r+(p*richtung[0][u])]==farbe*-1+3) { p++ }
        if (feld[n+(p*richtung[1][u])][r+(p*richtung[0][u])]==farbe) {
          antwort=true
        }
      }
    }
  return antwort
}
// nach dem Zug, die Felder entsprechend umstellen...
function feldAktualisieren(n,r,farbe) {
	for (u=0; u<richtung[0].length; u++) {
		p=1
		while(feld[n+(p*richtung[1][u])][r+(p*richtung[0][u])]==farbe*-1+3) { p++ }
		if (feld[n+(p*richtung[1][u])][r+(p*richtung[0][u])]==farbe) {
			for (i=1; i<=p; i++) {
				feld[n+(i*richtung[1][u])][r+(i*richtung[0][u])]=farbe
			}

		}
	}

}

Soweit so gut.Was noch fehlt,

- Funktion, die Prüft ob überhaupt noch ein Zug möglich ist.
- AI
- bissel Struktur im Code :)

also,wenn jemand Lust hat...

mal reinschaun

haben

viel Spaß damit...
 

Neue Beiträge

Zurück