60章の龍神録について教えてください。 今改造して作成している一面、二面で 3D画像を変えたいのですが、 3Dbackground.cppのvoid Ini3Dbackground()で if(stage==0){//一面ならば ImgHandle = LoadGraph( "../dat/img/back/3D/tex00.png" ); IniObj(&Object[0], ImgHandle, 512, 0, 0, 256, 128, 250, 50, 3, 1000, 400, -200, -400, 320, 240-90, OBCHILD_MAX); IniObj(&Object[1], ImgHandle, 512, 0, 0, 256, 128, 250, 50, 4, 1000, 400, -200, -400, 320, 240-90, OBCHILD_MAX); //IniObj(&Object[2], ImgHandle, 512, 60,270, 405, 512, 180,125, 0, 1000, 400, -200, -400, 470, 275, 6); IniObj(&Object[2], ImgHandle, 512, 60,270, 405, 512, 180,125, 0, 1000, 400, -200, -400, 360, 275, 6); ImgHandle = LoadGraph( "../dat/img/back/3D/kabe00.png" ); IniObj(&Object[3], ImgHandle, 512, 0, 0, 390, 512, 73, 90, 1, 1000, 400, -200, -400, 170, 240, OBCHILD_MAX); IniObj(&Object[4], ImgHandle, 512, 0, 0, 390, 512, 73, 90, 2, 1000, 400, -200, -400, 170, 240, OBCHILD_MAX); } if(stage==1){//二面ならば ImgHandle = LoadGraph( "../dat/img/back/3D/tesuto.png" ); IniObj(&Object[0], ImgHandle, 512, 0, 0, 256, 128, 250, 50, 3, 1000, 400, -200, -400, 320, 240-90, OBCHILD_MAX); IniObj(&Object[1], ImgHandle, 512, 0, 0, 256, 128, 250, 50, 4, 1000, 400, -200, -400, 320, 240-90, OBCHILD_MAX); //IniObj(&Object[2], ImgHandle, 512, 60,270, 405, 512, 180,125, 0, 1000, 400, -200, -400, 470, 275, 6); IniObj(&Object[2], ImgHandle, 512, 60,270, 405, 512, 180,125, 0, 1000, 400, -200, -400, 360, 275, 6); ImgHandle = LoadGraph( "../dat/img/back/3D/tesuto2.png" ); IniObj(&Object[3], ImgHandle, 512, 0, 0, 390, 512, 73, 90, 1, 1000, 400, -200, -400, 170, 240, OBCHILD_MAX); IniObj(&Object[4], ImgHandle, 512, 0, 0, 390, 512, 73, 90, 2, 1000, 400, -200, -400, 170, 240, OBCHILD_MAX); } みたいにして、画像を変えたいのですが、 なぜか二面に移行しても一面の3D画像のままなのですが、 変えるのはどうしたらいいのでしょうか? 誰か原因が分かり方がいましたら教えてください・・
60章、画像を変える方法
60章、画像を変える方法
Re:60章、画像を変える方法
switch case文で読み込みを0、描画を1 解放を3にして分けます
#define STATE_INIT 0 #define STATE_MAIN 1 #define STAGE_RELEASE 3 int processflag = STATE_INIT; int game(char* fname) //fnameは { switch(processflag) { case STATE_INIT: //ステージの初期化関数を呼ぶ break; case STATE_MAIN: //ステージのメイン処理関数を呼ぶ break; case STAGE_RELEASE: //解放処理関数を呼ぶ break; } return 1; }
Re:60章、画像を変える方法
え?そんな面倒なことをしなくてはならないのですか?
例えばですがボスの表示などは
//ボスの表示
if(stage==0){ //1面ならば
DrawRotaGraphFdF(boss.dx,boss.dy,1.0f,0.0f,img_boss01[0][boss.img],TRUE);
}
if(stage==1){ //2面ならば
DrawRotaGraphFdF(boss.dx,boss.dy,1.0f,0.0f,img_boss02[0][boss.img],TRUE);
}
これだけでも、変わっていたのですが・・
なぜ3D背景だけ?
例えばですがボスの表示などは
//ボスの表示
if(stage==0){ //1面ならば
DrawRotaGraphFdF(boss.dx,boss.dy,1.0f,0.0f,img_boss01[0][boss.img],TRUE);
}
if(stage==1){ //2面ならば
DrawRotaGraphFdF(boss.dx,boss.dy,1.0f,0.0f,img_boss02[0][boss.img],TRUE);
}
これだけでも、変わっていたのですが・・
なぜ3D背景だけ?
Re:60章、画像を変える方法
パッと見、特に間違いは無いような気がしますけど、、、
眠くて目があかない^^;
stageの変数はきちんと変わっていますか?
ブレイクポイントなどでその条件式の中に入っていることは確実ですか?
眠くて目があかない^^;
stageの変数はきちんと変わっていますか?
ブレイクポイントなどでその条件式の中に入っていることは確実ですか?