バグなのですが

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
電気屋

バグなのですが

#1

投稿記事 by 電気屋 » 15年前

どうも電気です。
今回は、プログラム作り中のバグなのですがどうしても直りません。
手助けをの願いしたいのですが?


載せているプログラムはPLAYヤー2から発射される弾の描画などのプログラムと敵の描画です。
このプログラムが一緒に実行されたときのみ、バグとして弾がx座標がランダム、y座標0でプレイヤーの向きに弾が発射されます。

メインです

void Battle(){
battle_loop=1;
kaiwa_flag=1;
SetFontSize( 16 ) ;
SetMainWindowText( "バトル" ) ;
while(ProcessMessage() == 0 && GetHitKeyStateAll(Key) == 0 && battle_loop!=2){
ClearDrawScreen();
Background2();
Dun();
//PlayerControl();
//PlayerControl2();
//PlayerDraw(ch1.x,ch1.y,ch1.muki);
//PlayerDraw2(ch2.x,ch2.y,ch2.muki);
//PlayerShotDisp();
PlayerShotDisp2();
//PlayerShotCalc();
//PlayerShotCalc2();
//Point();
///////////////////////////////////////////////////////////////////////////////
//CollisionDetection();
//CollisionDetection2();
/////////////////////////////////////////////////////////////////////////////
//EnemyControl();
EnemyCalcDisp();
//fps();
counter++;
///////////////////////////////////////////////////////////////////////////////
if( CheckHitKey( KEY_INPUT_ESCAPE ) || (GetJoypadInputState( DX_INPUT_PAD1 ) & PAD_INPUT_C) !=0 )
break ; //ESCボタンで終了
if( ProcessMessage() == -1 )
break ;
wait_func();
ScreenFlip() ; //裏画面データを表画面へ反映
}
}


どうかお願いします 画像

Poco

Re:バグなのですが

#2

投稿記事 by Poco » 15年前

実行可能なソースコードがないと、誰もデバッグ出来ないと思いますよ。

サラッと眺めて思ったことは、
関数PlayerShotCalc2()やPlayerShotDisp2で
配列PlayerShot2ではなくてPlayerShotにアクセスしている箇所がありますが、
大丈夫なのでしょうか?

#電気屋さんが仰っている現象に結びつくかハテナですが。

softya

Re:バグなのですが

#3

投稿記事 by softya » 15年前

少しづつ、自分でバグを見つけるテクニックを身に付けた方が良いでしょう。
長いコードを提示してもらっても他の人が全部を見るのは簡単なことではありません。

>バグとして弾がx座標がランダム、y座標0でプレイヤーの向きに弾が発射されます。
そこまで分かっているなら、プレーヤーの向きの弾を発生している場所を調べてみるべきですね。
発生する時、座標がちゃんと入っているか確認しましたか?
バグを修正する過程で、よりC言語の理解が深まりますよ。

バグを出さないには、こんな本も読んでみると良いでしょう。
http://www.amazon.co.jp/dp/4774133620t=

sizuma

Re:バグなのですが

#4

投稿記事 by sizuma » 15年前

VC++なら、ブレークポイントをはって、変数の中身をチェックできますよ。

sizuma

Re:バグなのですが

#5

投稿記事 by sizuma » 15年前

めちゃ簡単だけど、すげー便利なブレークポイントの設定方法
↓ちょっと書いてみたです。
http://tsizu.blog45.fc2.com/blog-entry-85.html

電気屋

Re:バグなのですが

#6

投稿記事 by 電気屋 » 15年前

ありがとうございます。がんばってみたいと思います。

閉鎖

“C言語何でも質問掲示板” へ戻る