前回までのあらすじ:エラーを克服し、白いまるとしてウィンドウ上に現れた主人公であったが、いまだ動く能力は持たない。我々の手で生命を吹き込むのだ。
4.マイキャラを動かす
If GetAsyncKeyState(VK_RIGHT) Then '右キーが押されていたら
MyCharaX = MyCharaX + 1 'マイキャラを1ドット右に
End If '以上
いきなり数学者が怒り出しそうなコードから始まってしまいました。
これは、RPGでのつよさ+1みたいなもので(なんじゃそりゃ)、これからのMyCharaXは今までのMyCharaXより1大きいんだ!という意味を持ちます。
1足したら右に行くというのはさっき出したnLeftRectやらなにやらの図で各自納得しておいてください。
納得できなきゃ例によって実行して確かめます。
一応左・上・下にも移動できるようにしておきましょう。
Function MyCharaMove()
'マイキャラ動かす
If GetAsyncKeyState(VK_RIGHT) Then '右キーが押されていたら
MyCharaX = MyCharaX + 1 'マイキャラを1ドット右に
End If '以上
If GetAsyncKeyState(VK_LEFT) Then '左キーが押されていたら
MyCharaX = MyCharaX - 1 'マイキャラを1ドット左に
End If '以上
If GetAsyncKeyState(VK_UP) Then '上キーが押されていたら
MyCharaY = MyCharaY - 1 'マイキャラを1ドット上に
End If '以上
If GetAsyncKeyState(VK_DOWN) Then '下キーが押されていたら
MyCharaY = MyCharaY + 1 'マイキャラを1ドット下に
End If '以上
End Function
ピシュン!・・・って、うわああっ!速すぎだっ!
どこぞのやりすぎ格闘漫画のスピード自慢じゃあるまいし、キーボードに触れたか触れないかといううちに主人公を消し飛ばすなんて、やりすぎにもほどがあります!
これじゃさっぱりゲームになりません!!