マイナスの値に突入してしまいます。検索マイナスの値に突入してしまいます。6ヶ月前マイナスの値に突入してしまいます。以下のプログラムに関してなのですが、赤い字の数値が500溜まった状態でRキーを押して相手をロックオンしてキーAで攻撃するのですが、問題があります。一回の攻撃で500すべてを使い果たすのですが、そのあと再びロックオンして攻撃するとマイナスの値に突入してしまいます。intにしたのですが改善できずにいます。1の時の「lock!!」の描画を消すためにlockの値を0に変更。ロックオンの画像が消えるように値を0にする。0;}以下は全体のプログラムです。俺の移動状態//1~21で右に振り向きのプログラム1が終わり、22になったら足踏みする2を実行するようにする。1;//最初は1にして戦闘画面状態にする。上のifで既にgpUpdateKey();があり、elseはif以外の情報は引き継ぐので再びgpUpdateKey();書く必要はなかった。//キーを入力する以外にも押した後に早く画像を切り替えて足踏みするようにするために初期値にも1はあるがキーにもplayerMove=1を書いたり、キーを押したらどうしたいかをするためにplayerX++を書いている。{//キーにplayerMove=1を書くと初期値の1よりも早くキーに書いたplayerMoveの1が行くため早く足踏みに行くため、止まってから足踏みに行くまでの間にある向きを変える画像playerGHandle[2]が一瞬であるため、向きを変えるのが早く見えるのでは?足踏みを速く来るようにしたため。playerGHandle[8];}//Rが一度押された上でフレームを利用してループさせるためにif文を新しく外に書いたのだ。enemyYの時、lockを1にする。lockを「何フレーム目の時」でも値を1として置いたため、条件式lockの入力キーAに呼び出せる。10やlockonHandle[0]を引き継いで下に書いた描画関数に入るため、ここには関数に入れる情報だけ入るのだ。10やlockonHandle[0]以外の引き継がれたとうかその時の敵の座標なども関数に入る。関数が求めるものが入るので、関数に必要なものを揃える。0;//敵が移動した場合ロックオンの画像が消えるようにlockonMoveを0にする。enemyYよりY座標が異なる場合を表す、Y座標が異なる場合はlockの値は0になる。要はロックが解除されてしまう。1など条件になるため、++でcountが1になったらロックできても攻撃できないんだ//ここのcountの情報がそのまま下の描画関数に渡されるだけ。1の時の「lock!!」の描画を消すためにlockの値を0に変更。ロックオンの画像が消えるように値を0にする。