carookee - group communication for you
Home / JavaForum / Java allgemein
Infos   |   Features   |   Gold-Edition   |   Kundenservice   
java
  Übersicht
  Forum
Beginner
Java allgemein
JDBC
JNI
Networking
Online-Ressourcen
Swing + AWT
XML
Meckerecke
  Mitglieder
LOGIN





· Passwort vergessen
· Kostenlos anmelden
  Information
  Demo
  Features
  Im Vergleich
  Anmeldung
SUCHE
Beiträge, Foren oder Verfasser finden:
  Kundenservice
  Impressum
  Datenschutz
  AGB
Status
4.970 User online
0 User eingeloggt
 

Beiträge
   Antworten     Neuer Beitrag    

Beitrag 1399 von 2212 (63%) |<   <   >   >|

Autor Gast
Datum 03.03.05, 13:19
Betreff Re: Spielprogrammieren


Hallo,

es gibt, wie gesagt, 13 Gewinnsituationen.

wenn fw = die Farbe des Spielers ist und i = Zeile, j = Spalte liefert nachfolgender Code 0 bei gewonnen und > 0 bei nicht gewonnen.

// gewinnsituation?
if(TRACE) System.out.println( "Pruefe: "+i+","+j);
if( j >= 3 ) { // waagerecht xxxy
count++ ;
if( fw==feld[i][j-1] &&
fw==feld[i][j-2] &&
fw==feld[i][j-3] )
{
if(TRACE) System.out.println( "Regel 1 gewinnt" ) ;
return 0 ;
}
}
if( j >= 2 && j<M-1) { // waagerecht xxyx
count++ ;
if( fw==feld[i][j-1] &&
fw==feld[i][j-2] &&
fw==feld[i][j+1] )
{
if(TRACE) System.out.println( "Regel 2 gewinnt" ) ;
return 0 ;
}
}
if( j >= 1 && j<M-2) { // waagerecht xyxx
count++ ;
if( fw==feld[i][j-1] &&
fw==feld[i][j+1] &&
fw==feld[i][j+2] )
{
if(TRACE) System.out.println( "Regel 3 gewinnt" ) ;
return 0 ;
}
}
if( j < M-3 ) { // waagerecht yxxx
count++ ;
if( fw==feld[i][j+1] &&
fw==feld[i][j+2] &&
fw==feld[i][j+3] )
{
if(TRACE) System.out.println( "Regel 4 gewinnt" ) ;
return 0 ;
}
}
if( i <= 2 ) { // senkrecht nach unten
count++ ;
if( fw==feld[i+1][j] &&
fw==feld[i+2][j] &&
fw==feld[i+3][j] )
{
if(TRACE) System.out.println( "Regel 5 gewinnt" ) ;
return 0 ;
}
}
if( i >= 3 && j >= 3) { // diagonal rechts oben
count++ ;
if( fw==feld[i-1][j-1] &&
fw==feld[i-2][j-2] &&
fw==feld[i-3][j-3] )
{
if(TRACE) System.out.println( "Regel 6 gewinnt" ) ;
return 0 ;
}
}
if( i >= 2 && j >= 2 &&
i < N-1 && j < M-1 ) { // diagonal rechts 2 unten 1 links oben
count++ ;
if( fw==feld[i-1][j-1] &&
fw==feld[i-2][j-2] &&
fw==feld[i+1][j+1] )
{
if(TRACE) System.out.println( "Regel 7 gewinnt" ) ;
return 0 ;
}
}
if( i >= 1 && j >= 1 &&
i < N-2 && j < M-2 ) { // diagonal rechts 1 unten 2 links oben
count++ ;
if( fw==feld[i-1][j-1] &&
fw==feld[i+1][j+1] &&
fw==feld[i+2][j+2] )
{
if(TRACE) System.out.println( "Regel 8 gewinnt" ) ;
return 0 ;
}
}
if( i < N-3 && j < M-3 ) { // diagonal rechts unten
count++ ;
if( fw==feld[i+1][j+1] &&
fw==feld[i+2][j+2] &&
fw==feld[i+3][j+3] )
{
if(TRACE) System.out.println( "Regel 9 gewinnt" ) ;
return 0 ;
}
}
if( i < N-3 && j >= 3) { // diagonal links unten
count++ ;
if( fw==feld[i+1][j-1] &&
fw==feld[i+2][j-2] &&
fw==feld[i+3][j-3] )
{
if(TRACE) System.out.println( "Regel 10 gewinnt" ) ;
return 0 ;
}
}
if( i >= 1 && j >= 2 &&
i < N-2 && j < M-1 ) { // diagonal links 2 unten rechts 1 oben
count++ ;
if( fw==feld[i-1][j+1] &&
fw==feld[i+1][j-1] &&
fw==feld[i+2][j-2] )
{
if(TRACE) System.out.println( "Regel 11 gewinnt" ) ;
return 0 ;
}
}
if( i >= 2 && j >= 1 &&
i < N-1 && j < M-2 ) { // diagonal links 1 unten rechts 2 oben
count++ ;
if( fw==feld[i-2][j+2] &&
fw==feld[i-1][j+1] &&
fw==feld[i+1][j-1] )
{
if(TRACE) System.out.println( "Regel 12 gewinnt" ) ;
return 0 ;
}
}
if( i >= 3 && j < M-3 ) { // diagonal links oben
count++ ;
if( fw==feld[i-1][j+1] &&
fw==feld[i-2][j+2] &&
fw==feld[i-3][j+3] )
{
if(TRACE) System.out.println( "Regel 13 gewinnt" ) ;
return 0 ;
}
}
return count ;

MfG Okke


Diskussionsverlauf:
Spielprogrammieren
        Re: Spielprogrammieren
                Re: Spielprogrammieren
                        Re: Spielprogrammieren
                                Re: Spielprogrammieren
    Re: Spielprogrammieren
            Re: Spielprogrammieren
                    Re: Spielprogrammieren
                            Re: Spielprogrammieren

 Auf diesen Beitrag antworten
 Neuen Beitrag verfassen


|<   <   >   >|

                                                                                                                                                                                                                           

Impressum  · Datenschutz  · AGB  · Infos  · Presse
Ein modernes Forum: teamturn.com