#acl All: == ピースを動かす == {{{ public void mousePressed(MouseEvent e) { int ix, iy, dx, dy; ix = e.getX() / pSize; iy = e.getY() / pSize; if(ix < 0 || ix >= nx || iy < 0 || iy >= ny) return; if(ix == spx && iy != spy) { dx = 0; dy = (iy < spy) ? -1 : 1; } else if(iy == spy && ix != spx) { dy = 0; dx = (ix < spx) ? -1 : 1; } else return; do { ban[spx][spy] = ban[spx+dx][spy+dy]; spx = spx + dx; spy = spy + dy; } while (spx != ix || spy != iy); ban[spx][spy] = nx*ny-1; // はずしたピース repaint(); } }}}