プログラミング初心者のゲーム創作過程の記録です。ソースも載せるかも…
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
今回は移動操作についてちょこっと。
けどどうもうまくいかないんだよね。
&(and) |(or) が論理演算子じゃなくてビット演算子だから色々と面倒で
けどどうもうまくいかないんだよね。
&(and) |(or) が論理演算子じゃなくてビット演算子だから色々と面倒で
//自機移動処理
stick ky, 15
if ky & 1 {dx -= 4 };左
if ky & 3 {dx -= 3 : dy -= 3};左上
if ky & 2 { dy -= 4};上
if ky & 6 {dx += 3 : dy -= 3};右上
if ky & 4 {dx += 4 };右
if ky & 12{dx += 3 : dy += 3};右下
if ky & 8 { dy += 4};下
if ky & 9 {dx -= 3 : dy += 3};左下
ちなみにdx、dyは移動距離。
一応これで動くんだけど、個人的には加算減算処理じゃなくて代入処理にしたいんだよね。そのほうが分かりやすいし。
けど、上キーを押したら左上、上、右上の処理が実行されて、代入処理だと右上に進んじゃうから加算減算処理じゃないとうまく動かないんだよね。
一応else構文を使えば代入演算でもうまくいくけど、
{{{}}}
みたいな感じでネストが深くなるのって気持ちが悪い。else if構文があればよかったんだけど。
どうにかならないかな…
PR
Comment