- 413 名前:名前は開発中のものです。 mailto:sage [2005/03/24(木) 13:41:09 ID:GOe2RJsQ]
- 409さんのサンプルを参考に、自キャラが物体に乗った時の判定を
してみました。マップは[縦][横]=[30][40]で、チップの大きさは16*16です。 int j,i; for (j = 0; j < 30; j++) { for (i = 0; i < 40; i++) { if (マップの配列[j][i] が通過できないチップなら) { if(右手X座標 > i*16 && 左手X < i*16 + 16 && 足Y座標 > j*16 && 足Y座標 < j*16 + 16){ 頭Y座標 = j * 16 - 21; // キャラの縦の長さが21なので引いています フラグ = true; } else if (右手X座標 <= i*16 || 左手X座標 >= i*16 + 16) { フラグ = false; } } } } フラグがfalseの時(当たっていない時)は常にY座標を減算(8ずつ)するようにしています。 でもなぜか、フラグをチェックすると常時falseになっていて、一応、物体に 乗っているのですが8めりこんでいます。。もう一度、ヒントを頂けませんでしょうか。
|

|