簡潔に言うと、モンスターのデータをまとめて構造体の中に入れ、その中に画像も一緒に入れてます。別のbattle.cppからそのデータを参照したのですが、画像だけ呼べません(というか表示されない。)
↓以下、詳しい質問内容です。
Extern.hでまずモンスターデータの構造体の格納先をextern宣言してます。
その部分だけになりますが、これです。
// -----------------------------------------------
// Extern.h
//------------------------------------------------
//モンスターデータ
typedef struct{
int no,lv,hp,mp,Enimg; //ナンバー、Lv,hp,mp,力、魔法力、画像
}enst_t;
extern enst_t enst[100];
extern int En00,En01,En02;
グローバル変数はこちらにまとめました。
// -----------------------------------------------
// Groval.h
//------------------------------------------------
//モンスターデータ
typedef struct{
int no,lv,hp,mp,pow,mpow,Enimg; //ナンバー、Lv,hp,mp,力、魔法力、、画像
}enst_t;
int En00,En01,En02;
そしてモンスターの構造体のステータスはまとめてStatus.hに入れました。
// -----------------------------------------------
// Status.h
//------------------------------------------------
enst_t enst[100]={
{ 0, 1, 80, 10, 15, 10, En00 , "きのこ" , 5},
{ 1, 1, 90, 20, 12, 10, En01 , "きのこ2" , 5},
{ 2, 1, 85, 20, 10, 10, En02 , "栗" ,6},
}; //ナンバー、Lv, hp, mp, 力、魔法力、画像
// -----------------------------------------------
// Load.cpp
//------------------------------------------------
void Load_Img(){
En00 = LoadGraph("画像/sub/きのこ.png"); //きのこ
En01 = LoadGraph("画像/sub/きのこ2.png"); //きのこ2
En02 = LoadGraph("画像/sub/栗.png"); //栗
}
main.cppの最初の方にLoad_Img関数を記述し、ロードしています。
そして、戦闘モジュールのbattle.cppにてモンスターのデータをこうしてよんでいます。↓
// -----------------------------------------------
// Battle.cpp
//------------------------------------------------
void Battle_Graph(){
DrawRotaGraph( 320, 240 , 2.0, 0, BF00, TRUE);
DrawRotaGraph( BFPx, BFPy, 2.0 ,0, char00[4] , TRUE);
DrawRotaGraph( BFE1x, BFE1y, 1.0 ,0, enst[E_t].Enimg , TRUE);//ランダム出現
DrawFormatString(BFE1x-50,BFE1y+50,Cr,"HP : %d",enst[E_t].hp);
DrawGraph(0,0,enst[3].Enimg,TRUE);
if( NoE >0 ){
DrawRotaGraph( BFE2x, BFE2y, 1.0 ,0, enst[E_t2].Enimg , TRUE);//ランダム2出現
DrawFormatString(BFE2x-50,BFE2y+50,Cr,"HP : %d",enst[E_t2].hp);
}
}
ここで、このBattle.cppの9,10行目の
DrawRotaGraph( BFE1x, BFE1y, 1.0 ,0, enst[E_t].Enimg , TRUE);//ランダム出現
DrawFormatString(BFE1x-50,BFE1y+50,Cr,"HP : %d",enst[E_t].hp);
の、上(画像表示)の方だけ何もしてくれず、画像が呼べません。
コンパイルエラーもしないのでちんぷんかんぷんです。
下のほうはしっかり構造体からモンスターのHPを持ってきています。
何が原因か分かりません。どうしたら画像が表示されるようになりますか?