?? board.java
字號:
package com.mot.j2me.midlets.jbombman;
import java.util.*;
public class Board {
public char[][] chBoard;
/*
N - None
W - Wall
L - Pillar
P - Player
E - Enemy
B - Bomb
U - Bomb under player
X - Exploding
*/
private Random random;
public int iCols, iRows;
public volatile boolean isGameOver;
public volatile boolean isWin;
public Board( int cols, int rows ) {
random = new Random();
iCols = cols;
iRows = rows;
chBoard = new char[iCols][iRows];
init();
}
public void init() {
isGameOver = false;
isWin = false;
for( int i=0; i<iCols; i++ )
for( int j=0; j<iRows; j++ )
chBoard[i][j] = 'N';
// Fill pillars
for( int i=1; i<iCols; i+=2 )
for( int j=1; j<iRows; j+=2 )
chBoard[i][j] = 'L';
// Fill walls
for( int i=0; i<iCols; i++ )
for( int j=0; j<iRows; j++ )
if( chBoard[i][j] == 'N' )
if( Math.abs( random.nextInt() ) % 2 == 0 )
chBoard[i][j] = 'W';
}
public boolean isElement( char ch, int x, int y ) {
if( x < 0 )
return false;
if( x >= iCols )
return false;
if( y < 0 )
return false;
if( y >= iRows )
return false;
return( chBoard[x][y] == ch );
}
public char getElement( int x, int y ) {
if( x < 0 )
return '?';
if( x >= iCols )
return '?';
if( y < 0 )
return '?';
if( y >= iRows )
return '?';
return chBoard[x][y];
}
public void setElement( char ch, int x, int y ) {
if( ch == '?' )
return;
if( x < 0 )
return;
if( x >= iCols )
return;
if( y < 0 )
return;
if( y >= iRows )
return;
chBoard[x][y] = ch;
}
public boolean near( char ch, int x, int y ) {
return isElement( ch, x-1, y )||isElement( ch, x, y-1 )
||isElement( ch, x+1, y )||isElement( ch, x, y+1 );
}
public boolean near2( char ch, int x, int y ) {
return ( isElement( ch, x-1, y )&&isElement( ch, x-2, y ) )
||( isElement( ch, x, y-1 )&&isElement( ch, x, y-2 ) )
||( isElement( ch, x+1, y )&&isElement( ch, x+2, y ) )
||( isElement( ch, x, y+1 )&&isElement( ch, x, y+2 ) );
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -