トップページgamedev
818コメント302KB

Windowsゲームプログラミング 質問スレ

■ このスレッドは過去ログ倉庫に格納されています
0001うゆ ◆vvvK3Fcqdg 2008/11/06(木) 21:28:45ID:lNn2skuQ
※回答する人も、質問する人も必ず読んでください

【 回答してくださる方 】
・ できるだけ優しく質問に答えてあげてください。
・ 優しく教えるのが嫌でしたら、解決するためのヒントだけでも結構です。
 「ググれ」以外の回答でおながいします。
・ 神ですら理解不能な質問は無視して下さい。

【 質問する香具師 】
・ どんな事で躓いているのか明確にしる。
・ 長くならないなら躓いている部分のコードを晒してみれ。
・ 解決した場合、お礼を言うのは当然だが、何をどうしたら解決したかを明確に書け。
0410名前は開発中のものです。2009/09/11(金) 20:08:12ID:82Pb8qAz
40ピクセルの大きさのマスを4ピクセルずつ移動するって事は
壁の判定は、ちょうどマスに合っている位置から動き出そうとする瞬間のみにするとかどうよ。

つまり player.x % 40 == 0 の時のみ左右の壁チェックをするとか。

具体的には……

if ( player.x % 40 != 0 ||
map[px - 1][py] == 0 ) {
player.x -= 4;
}

かな?
0411名前は開発中のものです。2009/09/11(金) 20:23:15ID:c5vNUe99

var px:int = player.x / 40;
var py:int = player.y / 40;
//playerの移動
if (left == true) {
player.x -= 4;
if (map[px][py] != 0) {
 player.x=(px+1)*40;
}
}else>右上下に続く

こんな感じでどうかしら
0412名前は開発中のものです。2009/09/11(金) 20:25:24ID:c5vNUe99

 //playerの移動
 if (left == true) {
 player.x -= 4;
  if (map[(int)(player.x/40)][(int)(player.y/40)] != 0) {
  player.x=(px+1)*40;
 }
 }else>右上下に続く

すまん訂正
■ このスレッドは過去ログ倉庫に格納されています