プレイヤーとマップの衝突処理についての質問です。
0から512までの数値を2次元配列にしてマップデータを作って、
プレイヤーの座標とそのマップデータの数値を使って着地処理などを作っているのですが、
//地面についたらジャンプをやめる
if(Player->Jump==1 && Player->JumpPower<0 ){
if(MAP_CHIP((Player->Y+32)/32,(Player->X)/32)!=0 ||
MAP_CHIP((Player->Y+32)/32,(Player->X+31)/32)!=0 ){
Player->JumpPower=0;
Player->Jump=0;
}
}
例えば、0だけでなく、1,2,3,4等も着地できないマップにしたいのです。
そのとき、0,1,2,3,4を入れる配列を作ると思うんですが、
もちろん
Through[5] = {0,1,2,3,4};
if(MAP_CHIP((Player->Y+32)/32,(Player->X)/32)!=Through[5]...
のように配列に変えただけでは機能しませんよね?
For文などを使えば効率よくできるのでしょうか?