[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 04/25 21:11 / Filesize : 316 KB / Number-of Response : 926
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

★★ Java の宿題ここで答えます Part 68 ★★



14 名前:デフォルトの名無しさん [2009/07/20(月) 23:07:26 ]
>>13
public Point getTileCollision(Sprite sprite, double newX, double newY) {
newX = Math.ceil(newX);
newY = Math.ceil(newY);
double fromX = Math.min(sprite.getX(), newX);
double fromY = Math.min(sprite.getY(), newY);
double toX = Math.max(sprite.getX(), newX);
double toY = Math.max(sprite.getY(), newY);
int fromTileX = pixelsToTiles(fromX);
int fromTileY = pixelsToTiles(fromY);
int toTileX = pixelsToTiles(toX + sprite.getWidth() -1);
int toTileY = pixelsToTiles(toY + sprite.getHeight() -1);
for(int x=fromTileX;x<=toTileX;x++) {
for(int y=fromTileY;y<=toTileY;y++) {
//Outside the boundary
if(x<0 || x>=col) {
return new Point(x,y);
}
if(y<0 || y>=row) {
return new Point(x,y);
}
if(map[y][x] == '1') {
return new Point(x,y);
}
}
}
return null;
}
これの252ページにコードと解説が載っています。
books.google.com/books?id=rSs35Uw11okC&printsec=frontcover&dq=java+game






[ 続きを読む ] / [ 携帯版 ]

全部読む 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧](;´∀`)<316KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef