動けるぞ!
ゲーム記、プレステのとこ、更新しちゃいました。
標準語にしたのと、ドラクエ5の話を少々。
ふにゃさん、走る・跳ぶ・止まるの基本的な動作ができて、狭いステージの中を駆け回れるようになりました。
当たり判定の基準位置を間違えていたりして、なかなかうまく動いてくれなかったりもしましたが、現状の動作としてはまあまあよくできているといった感じではあります。
今回はいろいろな部分を関数化させて多分後から見てもそれなりにわかりそうなコードにしています。
コードを一部抜粋。
if (m_State==STANDING) { // 立ってるとき
if (f3Input.GetKeyPressed(F3KEY_UP)) StartJump();
if (f3Input.GetKeyPressed(F3KEY_LEFT)) Run(DIR_LEFT);
if (f3Input.GetKeyPressed(F3KEY_RIGHT)) Run(DIR_RIGHT);
if (m_DX>0) m_DX = (m_DX>STANDFRICT?m_DX-STANDFRICT:0);
if (m_DX<0) m_DX = (-m_DX>STANDFRICT?m_DX+STANDFRICT:0);
if (m_DX==0) m_Direction = DIR_FRONT;
if (!m_HitBottom) {
Fall();
}
ジャンプの処理を呼び出すのにStartJumpを呼び出しているのは、立っているときの上キーがジャンプの予備動作をさせるためのものだから。Jumpは上キーを離したときに発動されて、実際に上向きの速度を与えてジャンプさせています。