>>80
ブロックは奇数行・列に配置させてるので単純に、if(マス目%2 != 0)みたいな感じでやってます。
自分がやってる方法はいつもこんな感じです。
public int x, y; // プレイヤーの左上の点
private static final int S = 32; // プレイヤーの縦と横のサイズ
/**
* 判定点を返す。
* @return プレイヤーの判定点の座標
*/
private Point getPoint() {
return new Point(x+S/2, y+S/2);
}
移動の際int directionに方角を代入しているので後は
・動けるか否かのbooleanを返すメソッド if(direction==RIGHT && (getPoint.y)/S%2 != 0) (右へ移動するとき、奇数行であれば動けないの意味でfalseを返すみたいな。)
・修正が必要な領域に入ったか否かのbooleanを返すメソッド
・修正するメソッド
みたいな感じに細かく定義していってます。
ただ、if(マス目%2 != 0)のように定義しちゃうと、
プレイヤー:□、 ブロック:■とする
□
↓
■ ■
のように、少し左によった状態だけど判定的にはokなとき
■□ ■
のようになって、ここで右側にいけない(右の壁まで数ピクセル進めない)のって気持ち悪いと思うのです
こういう時だけ場合分けするにしても煩雑になってきますし、そもそもの当たり判定の方法がよくないのかなと思いまして質問しました。
Javaで作るスタンドアローンゲーム
■ このスレッドは過去ログ倉庫に格納されています
2013/01/17(木) 22:57:41.07ID:3HVRASXD
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 足立区11人ひき逃げ・37歳男逮捕 取り調べ中に暴れたり、会話がかみ合わないなど“異常行動“か [Hitzeschleier★]
- 相次ぐ中国公演中止に、シンガーソングライターらが続々高市首相に怒り表明「隣国の仲間たちに対して申し訳ない」★2 [muffin★]
- 高市首相の「存立危機事態」答弁、従来の政府見解を「完全に維持している」と閣議決定 [Hitzeschleier★]
- 【ラブホテル面会問題】前橋市長の小川晶氏が議長に退職願提出 [シャチ★]
- 「ごまかして逃れようとしている」中国外務省報道官 [どどん★]
- とろサーモン・久保田「後輩や演者からも評判が悪すぎる」大物MCに意見 「世間が思ってる人間とは真逆」と思い爆発 [muffin★]
- 【実況】博衣こよりのえちえちFantasy map simulatorミニキャラ死闘編🧪★2
- 【実況】博衣こよりのえちえちFantasy map simulatorミニキャラ死闘編🧪★3
- 中国当局が航空会社に日本路線減便を指示か、26年3月まで、中国南方航空、中国国際航空、中国東方航空、高市有事 [943688309]
- 【高市悲報】台湾「日本が何言ってるか意味わからん😅」 [834922174]
- 今は亡きコウゾー🚗👴💨を追悼するお🏡
- おさかなさんあつまれえ
