トップページ > 過去ログ > 記事閲覧
弾が出ません
名前:aujourd'hui 日時: 2007/07/16 11:55

はじめまして、最近からDXライブラリを使って、ゲーム作成を始めました。 まずは「14歳からはじめるC言語わくわくゲームプログラミング」をに掲載されているコードを打ち込みながら、進めているのですが、第三章の96ページのコードを打ち込み実行して、弾の画像が<Z>キーを押すと出るとかかれているのですが、<Z>キーを押しても弾が出ません。 # include "DxLib.h" struct CharaData{ int x; int y; int ghandle; int life; }; //プロトタイプ宣言 void JitamaMove(); //グローバル変数 struct CharaData jikidata; struct CharaData jitama; int WINAPI WinMain(HINSTANCE hI,HINSTANCE hp,LPSTR lpc,int nc) { ChangeWindowMode(TRUE); if(DxLib_Init()==-1)return(-1); jikidata.ghandle=LoadGraph("media\\test_jiki.bmp"); jikidata.x=0; jikidata.y=0; jitama.ghandle=LoadGraph("madia\\test_tama.bmp"); SetDrawScreen(DX_SCREEN_BACK); while(ProcessMessage()==0&&CheckHitKey(KEY_INPUT_ESCAPE)==0) { ClsDrawScreen(); DrawBox(270,190,370,290,GetColor(255,0,0),TRUE); //自キャラ移動 int key=GetJoypadInputState(DX_INPUT_KEY_PAD1); if(key&PAD_INPUT_UP)jikidata.y-=4; if(key&PAD_INPUT_DOWN)jikidata.y+=4; if(key&PAD_INPUT_LEFT)jikidata.x-=4; if(key&PAD_INPUT_RIGHT)jikidata.x+=4; DrawGraph(jikidata.x,jikidata.y,jikidata.ghandle,TRUE); JitamaMove(); ScreenFlip(); } DxLib_End(); return(0); } void JitamaMove(){ //弾の発射 int key=GetJoypadInputState(DX_INPUT_KEY_PAD1); if(key & PAD_INPUT_A) { if(jitama.life==0) { jitama.life=1; jitama.x=jikidata.x+24; jitama.y=jikidata.y+8; } }      //弾の移動  if(jitama[i].life>0) { jitama.x+=10; DrawGraph(jitama.x,jitama.y,jitama.ghandle,TRUE); if(jitama.x>640)jitama.life=0; } } どこが問題なのでしょうか? どなたかご存知の方いらっしゃいましたら、問題箇所のご教授よろしくお願いいたします。

Page: 1 |

Re: 弾が出ません ( No.1 )
名前:お父さん 日時:2007/07/16 12:17

aujourd'huiさん、はじめまして。 手元の「14歳…」のp96〜p97のリストと比べてみましたが、 //弾の移動  if(jitama[i].life>0) のところは、 if(jitama.life>0) ではないでしょうか?
Re: 弾が出ません ( No.2 )
名前:aujourd'hui 日時:2007/07/16 14:53

ご返答ありがとうございます。 修正のし忘れです。 実は、弾を複数発射と言うところのコードまで一度打ち込んでみたのですが、やはり弾は出ず、どう考えても、p96のコードの所で問題あるように見た為、 質問いたしました。 先程書き忘れましたが、開発環境は、BCC++Compiler5.5です。
Re: 弾が出ません ( No.3 )
名前:お父さん 日時:2007/07/16 15:09

aujourd'hui さん もう一度プログラムをよく見てみましたら、 jitama.ghandle=LoadGraph("madia\\test_tama.bmp"); 「media」が「madia」になっています。 こういうミスは発見するのが難しいですよね!
Re: 弾が出ません ( No.4 )
名前:aujourd'hui 日時:2007/07/16 18:46

確かに「media」が「madia」になってました。 お気づき頂きありがとうございます。 「media」に直したら正常に動作しました。本当にありがとうございました。

Page: 1 |