1068
コメント:
|
1192
|
削除された箇所はこのように表示されます。 | 追加された箇所はこのように表示されます。 |
行 3: | 行 3: |
{{{ | ピースを1つ取り除いてできた空白部分を使って 移動するための処理を記述します。 {{{#!java |
ピースを動かす
ピースを1つ取り除いてできた空白部分を使って 移動するための処理を記述します。
1 import javax.swing.*;
2 import java.awt.*;
3 import java.awt.event.*;
4
5 public class Game14 extends JPanel implements MouseListener
6 {
7 int haba;
8 int yoko, tate;
9 String fname;
10 Image img;
11 int[][] ban;
12 int spx, spy;
13
14 Game14()
15 {
16 addMouseListener(this);
17 }
18 public void mousePressed(MouseEvent e)
19 {
20 int x, y, dx, dy;
21
22 x = e.getX() / haba;
23 y = e.getY() / haba;
24 dx = (x<spx) ? -1 : (x>spx) ? 1 : 0;
25 dy = (y<spy) ? -1 : (y>spy) ? 1 : 0;
26 // if(x < spx)
27 // dx = -1;
28 // else if(x > spx)
29 // dx = 1;
30 // else
31 // dx = 0;
32 // if(y < spy)
33 // dy = -1;
34 // else if(y > spy)
35 // dy = 1;
36 // else
37 // dy = 0;
38 if(dx != 0 && dy != 0)
39 return;
40 while (x != spx || y != spy)
41 {
42 ban[spx][spy] = ban[spx+dx][spy+dy];
43 spx = spx + dx;
44 spy = spy + dy;
45 };
46 repaint();
47 }
48
49 public void mouseEntered(MouseEvent e) { }
50 public void mouseExited(MouseEvent e) { }
51 public void mouseReleased(MouseEvent e) { }
52 public void mouseClicked(MouseEvent e) { }