C言語を勉強し始めたばかりで、このHPを参考に簡単なシューティングゲームを作ってみてるのですが、玉の発射でつまずいてしまいました。
特にエラーなどはでないのですが、どこを変えればいいでしょうか。
アドバイスや、ご指摘などよろしくお願いします。
OS WindowsXP
コンパイラ VC++ 2008EE
#include "DxLib.h" #define MAX_FIELD_X 550 #define MAX_FIELD_Y 450 #define MIN_FIELD_X 10 #define MIN_FIELD_Y 10 #define PLAYER_SPEED 2*2 struct PlayerData{ int x; int y; int image; int flag; }; //プロトタイプ宣言 void PlayerShot(); //グローバル変数 struct PlayerData player_move; struct PlayerData player_shot; int WINAPI WinMain(HINSTANCE hI,HINSTANCE hP,LPSTR lpC,int nC) { ChangeWindowMode(TRUE); //ウィンドウモードで起動 if(DxLib_Init()==-1)return(-1); //DXライブラリ初期化 player_move.image=LoadGraph("image/neko.png"); player_move.x=MAX_FIELD_X/2; player_move.y=MAX_FIELD_Y; player_shot.image=LoadGraph("image/shot.png"); SetDrawScreen(DX_SCREEN_BACK); while(ProcessMessage()==0&&CheckHitKey(KEY_INPUT_ESCAPE)==0){ ClsDrawScreen(); //自キャラ移動 if(CheckHitKey(KEY_INPUT_RIGHT)>0) { if(player_move.x>=MAX_FIELD_X) { player_move.x=MAX_FIELD_X; } else { player_move.x+=PLAYER_SPEED; } } if(CheckHitKey(KEY_INPUT_LEFT)>0) { if(player_move.x<=MIN_FIELD_X) { player_move.x=MIN_FIELD_X; } else { player_move.x-=PLAYER_SPEED; } } DrawGraph(player_move.x,player_move.y,player_move.image,TRUE); ScreenFlip(); } DxLib_End(); return(0); } /*-------------------------------------------------------------------*/ /* プレイヤー攻撃 */ /*-------------------------------------------------------------------*/ void PlayerShot(){ //発射 if(CheckHitKey(KEY_INPUT_Z)>0) { if(player_shot.flag==0) { player_shot.flag=1; player_shot.x=player_move.x-12; player_shot.y=player_move.y+6; } } if(player_shot.flag==1) { player_shot.y-=12; DrawGraph(player_shot.x,player_shot.y,player_shot.image,TRUE); if(player_shot.y<MIN_FIELD_Y) { player_shot.flag=0; } } }