アプレットを勉強している初心者です。 落ちものゲームを作ろうと思い、本に載っているサンプルを分かるところから書いていこうとしています。 そうしたら(もちろんまだ全体の途中、というか始めたばかりですが)タイトルのようなエラーが出てしまいました。 今の段階でのソースを載せるので、もし分かる方がいたら、よろしくお願いします。 import java.applet.Applet; import java.awt.*; import java.util.*; import java.awt.event.*; public class jisaku extends Applet{ int square = 8; int nw = 23; int nh = 24;//ブロック位置の最大数 int block[][] = new int[4][4];//動くブロックの形 int board[][] = new int[nh+1][nw+1];//盤面にあるブロックの有無 Dimension d;//表示スクリーン Image offs;//オフスクリーン Graphics grf; public void init(){ //********盤面のブロックの初期化(board[][]の初期化(=フィールドと枠)だけ)************ //フィールドにはブロックはない for(int i = 0; i <= nh; i++){ for(int j = 0; i <= nw; j++){ board[i][j] = 0;//盤面にはブロックはない } } //左右下の固定ブロック for(int i = 0; i <= nh; i++){ for(int j = 0; j <= nw; j++){ board[i][j] = 2; board[i][nw-j] = 1; } } for(int i = 0; i < 3; i++){ for(int j = 0; j <= nw; j++){ board[nh-i][j] = 2; } } //************オフスクリーンの設定********* d = getSize(); offs = createImage(d.width, d.height); grf = offs.getGraphics(); } public void paint(Graphics g){ update(g); } public void update(Graphics g){ //[grf]はオフスクリーンのグラフィックスオブジェクト(というのかな?) //バックをオレンジで塗る grf.setColor(Color.orange); grf.fillRect(0,0,d.width,d.height); //ブロックを描く grf.setColor(Color.blue); for(int i = 0; i <= nh; i++){ for(int j = 0; j <= nw; j++){ if(board[i][j] >= 1){ grf.fillRect(j*square, i*square, square, square); } } } //左右下の枠を描く grf.setColor(Color.red); for(int i = 0; i <= nh; i++){ for(int j = 0; j <3; j++){ grf.fillRect(j*square, i*square, square, square); grf.fillRect((nw-j)*square, i*square, square, square); } } for(int i =0; i < 3; i++){ for(int j = 0; j <= nw; j++){ grf.fillRect(j*square, (nh-i)*square, square, square); } } g.drawImage(offs, 0, 0, this); } }
↧