モーションを
int WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int){
ChangeWindowMode(FALSE),DxLib_Init(),SetDrawScreen(DX_SCREEN_BACK);
PLAYER=MV1LoadModel("GAME/PLAYER.x");//プレイヤーのモデルをロード
HAPPO_number=MV1GetAnimIndex(PLAYER, "発砲"); //アニメーション番号取得
KAMAE_number=MV1GetAnimIndex(PLAYER, "構え(銃)");
ZENSHIN_Z_number=MV1GetAnimIndex(PLAYER, "前進(銃)");
ZENSHIN_N_number=MV1GetAnimIndex(PLAYER,"前進");
ZENSHIN_N=MV1AttachAnim(PLAYER,ZENSHIN_N_number,-1,FALSE);//アニメーションをアタッチ
ZENSHIN_Z=MV1AttachAnim(PLAYER,ZENSHIN_Z_number,-1,FALSE);
KAMAE=MV1AttachAnim(PLAYER,KAMAE_number,-1,FALSE);
HAPPO=MV1AttachAnim(PLAYER,HAPPO_number,-1,FALSE);
KAMAE_Z_Total=MV1GetAttachAnimTotalTime(PLAYER,KAMAE_number);//アニメーションの総時間を取得
HASHA_Z_Total=MV1GetAttachAnimTotalTime(PLAYER,HAPPO_number);
ZENSHIN_Z_Total=MV1GetAttachAnimTotalTime(PLAYER,ZENSHIN_Z_number);
ZENSHIN_N_Total=MV1GetAttachAnimTotalTime(PLAYER,ZENSHIN_N_number);
while(ScreenFlip()==0&&ProcessMessage()==0&&ClearDrawScreen()==0){
if(移動するとき){//Player_mode==1は、武器を持っていない状態。player_mode==2は、武器を持った状態
if(Player_mode==1){
ZENSHIN_N_Playtime+=1.0f;
if(ZENSHIN_N_Playtime>=ZENSHIN_N_Totaltime)
ZENSHIN_N_Playtime=0.0f;
}else{
ZENSHIN_N_Playtime=0.0f;
}
if(Player_mode==2){
ZENSHIN_Z_Playtime+=1.0f;
if(ZENSHIN_Z_Playtime>=ZENSHIN_Z_Total){
ZENSHIN_Z_Playtime=0.0f;
}else{
ZENSHIN_Z_Playtime=0.0f;
}
}
if(Player_mode==1&&2を押したら){
KAMAE_Z_Playtime+=1.0f; //武器を持つモーションをする
if(KAMAE_Z_Playtime>=KAMAE_Z_Total){
KAMAE_Z_Playtime=0;
}
Player_mode=2;//武器を持つ
}
if(Player_mode==2&&1を押したら){
Player_mode==1;
}
if(Player_Mode==2&&弾を撃ったら){
HAPPO_Playtime+=1.0f;//弾をうつモーション
if(HAPPO_Playtime>=HAPPO_Total){
HAPPO_Playtime=0.0f;
}
MV1SetAttachAnimTime(PLAYER,ZENSIN_N,ZENSHIN_N_Playtime);
MV1SetAttachAnimTime(PLAYER,KAMAE,KAMAE_Playtime);
MV1SetAttachAnimTime(PLAYER,HASHA,HAPPO_Playtime);
MV1SetAttachAnimTime(PLAYER,ZENSHIN_Z,ZENSHIN_Z_Playtime);
}
使い分けたいんですが、これだと、武器を持った状態でかわりません。(歩いた時も、足が動かない。)
どこを変えたらいいでしょうか?
この部分を解決しないともう一つの質問が先に進みません。
あと、プログラムに書いていないものがあったらすみません。