Exemple #1
0
 // Token: 0x06000954 RID: 2388 RVA: 0x000541B8 File Offset: 0x000523B8
 private static void gmEneKamaHandWaitMain(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK  = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK2 = (AppMain.GMS_ENE_KAMA_WORK)obj_work.parent_obj;
     AppMain.NNS_MATRIX        nns_MATRIX         = AppMain.gmEneKamaHandWaitMain_msm;
     if (obj_work.parent_obj == null)
     {
         obj_work.spd.x      = 0;
         obj_work.spd_fall   = AppMain.FX_F32_TO_FX32(0.2f);
         obj_work.move_flag |= 128U;
         return;
     }
     AppMain.NNS_MATRIX nns_MATRIX2;
     if (gms_ENE_KAMA_WORK.hand == 1)
     {
         nns_MATRIX2 = AppMain.GmEneUtilGetNodeMatrix(gms_ENE_KAMA_WORK2.node_work, 9);
     }
     else
     {
         nns_MATRIX2 = AppMain.GmEneUtilGetNodeMatrix(gms_ENE_KAMA_WORK2.node_work, 6);
     }
     if (nns_MATRIX2.M03 == 0f && nns_MATRIX2.M13 == 0f)
     {
         return;
     }
     AppMain.nnMakeScaleMatrix(nns_MATRIX, 1f, 1f, 1f);
     AppMain.nnMultiplyMatrix(nns_MATRIX, nns_MATRIX2, nns_MATRIX);
     AppMain.GmEneUtilSetMatrixNN(obj_work, nns_MATRIX);
     if (gms_ENE_KAMA_WORK2.attack != 0)
     {
         obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaHandAttackInit);
     }
 }
Exemple #2
0
 // Token: 0x06000955 RID: 2389 RVA: 0x00054294 File Offset: 0x00052494
 private static void gmEneKamaHandAttackInit(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK  = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK2 = (AppMain.GMS_ENE_KAMA_WORK)obj_work.parent_obj;
     AppMain.VecFx32           vecFx = AppMain.gmEneKamaGetPlayerVectorFx(obj_work);
     obj_work.spd.x          = ( int )(( float )vecFx.x * 1.75f);
     obj_work.spd.y          = ( int )(( float )vecFx.y * 1.75f);
     obj_work.ppFunc         = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaHandAttackMain);
     gms_ENE_KAMA_WORK.timer = 120;
     if ((gms_ENE_KAMA_WORK2.ene_3d_work.ene_com.obj_work.disp_flag & 2U) != 0U)
     {
         obj_work.disp_flag |= 2U;
     }
     if ((gms_ENE_KAMA_WORK2.ene_3d_work.ene_com.obj_work.disp_flag & 1U) != 0U)
     {
         gms_ENE_KAMA_WORK.rot_z_add = -AppMain.AKM_DEGtoA32(15);
     }
     else
     {
         gms_ENE_KAMA_WORK.rot_z_add = AppMain.AKM_DEGtoA32(15);
     }
     AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENE_KAMA_WORK.ene_3d_work.ene_com.rect_work[1];
     AppMain.ObjRectWorkSet(obs_RECT_WORK, -8, -8, 8, 8);
     obs_RECT_WORK.flag |= 4U;
     obj_work.flag      |= 512U;
     obj_work.pos.z      = 655360;
     AppMain.GmSoundPlaySE("Kama");
 }
Exemple #3
0
 // Token: 0x06000944 RID: 2372 RVA: 0x000537C8 File Offset: 0x000519C8
 private static void gmEneKamaExit(AppMain.MTS_TASK_TCB tcb)
 {
     AppMain.OBS_OBJECT_WORK   p = AppMain.mtTaskGetTcbWork(tcb);
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)p;
     AppMain.GmEneUtilExitNodeMatrix(gms_ENE_KAMA_WORK.node_work);
     AppMain.GmEnemyDefaultExit(tcb);
 }
Exemple #4
0
 // Token: 0x06000958 RID: 2392 RVA: 0x00054640 File Offset: 0x00052840
 private static void gmEneKamaFadeAnimeUpdate(AppMain.GMS_ENE_KAMA_WORK kama_work, int speed, int repeat)
 {
     AppMain.GMS_ENE_KAMA_FADE_ANIME     anime_data = kama_work.anime_data;
     AppMain.GMS_ENE_KAMA_FADE_ANIME_PAT gms_ENE_KAMA_FADE_ANIME_PAT = anime_data.anime_pat[(int)((UIntPtr)kama_work.anime_pat_no)];
     kama_work.anime_frame += speed;
     while (kama_work.anime_frame >= gms_ENE_KAMA_FADE_ANIME_PAT.frame)
     {
         kama_work.anime_frame  -= gms_ENE_KAMA_FADE_ANIME_PAT.frame;
         kama_work.anime_pat_no += 1U;
         if (kama_work.anime_pat_no < anime_data.pat_num)
         {
             gms_ENE_KAMA_FADE_ANIME_PAT = anime_data.anime_pat[( int )(( UIntPtr )kama_work.anime_pat_no)];
         }
         else if (repeat != 0)
         {
             kama_work.anime_pat_no      = 0U;
             gms_ENE_KAMA_FADE_ANIME_PAT = anime_data.anime_pat[( int )(( UIntPtr )kama_work.anime_pat_no)];
         }
         else
         {
             kama_work.anime_pat_no = anime_data.pat_num - 1U;
             kama_work.anime_frame  = gms_ENE_KAMA_FADE_ANIME_PAT.frame - 1;
         }
     }
     AppMain.GmBsCmnSetObject3DNNFadedColor((AppMain.OBS_OBJECT_WORK)kama_work, gms_ENE_KAMA_FADE_ANIME_PAT.col, gms_ENE_KAMA_FADE_ANIME_PAT.intensity);
 }
Exemple #5
0
    // Token: 0x06000946 RID: 2374 RVA: 0x0005389C File Offset: 0x00051A9C
    private static void gmEneKamaWalkMain(AppMain.OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_ENE_KAMA_WORK kama_work = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
        if (AppMain.gmEneKamaIsPlayerFront(obj_work) != 0 && AppMain.gmEneKamaGetLength2N(obj_work) <= 12544)
        {
            obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaAttackInit);
            return;
        }
        if ((obj_work.disp_flag & 2U) != 0U)
        {
            obj_work.move_flag &= 4294967167U;
            if ((obj_work.move_flag & 1U) == 0U)
            {
                obj_work.spd.y = obj_work.spd.y - obj_work.spd_fall;
            }
            else
            {
                obj_work.spd.y = 0;
            }
        }
        if (obj_work.user_flag == obj_work.user_work)
        {
            return;
        }
        int num = AppMain.gmEneKamaSetWalkSpeed(kama_work);

        if (num != 0)
        {
            AppMain.gmEneKamaFlipInit(obj_work);
        }
    }
Exemple #6
0
 // Token: 0x06000943 RID: 2371 RVA: 0x00053620 File Offset: 0x00051820
 private static AppMain.OBS_OBJECT_WORK gmEneKamaHandInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, int type)
 {
     AppMain.OBS_OBJECT_WORK   obs_OBJECT_WORK   = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_ENE_KAMA_WORK(), "ENE_KAMA");
     AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)obs_OBJECT_WORK;
     if (type == 1)
     {
         AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_ene_kama_obj_3d_list[1], gms_ENEMY_3D_WORK.obj_3d);
     }
     else
     {
         AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_ene_kama_obj_3d_list[2], gms_ENEMY_3D_WORK.obj_3d);
     }
     AppMain.ObjDrawObjectSetToon(obs_OBJECT_WORK);
     obs_OBJECT_WORK.pos.z = 0;
     gms_ENE_KAMA_WORK.ene_3d_work.ene_com.enemy_flag |= 32768U;
     AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[1];
     AppMain.ObjRectWorkSet(obs_RECT_WORK, -11, -24, 11, 0);
     obs_RECT_WORK.flag &= 4294967291U;
     obs_RECT_WORK       = gms_ENEMY_3D_WORK.ene_com.rect_work[0];
     AppMain.ObjRectWorkSet(obs_RECT_WORK, -19, -32, 19, 0);
     obs_RECT_WORK.flag &= 4294967291U;
     gms_ENEMY_3D_WORK.ene_com.rect_work[2].flag &= 4294967291U;
     obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[2];
     AppMain.ObjRectWorkSet(obs_RECT_WORK, -19, -32, 19, 0);
     obs_RECT_WORK.flag        &= 4294967291U;
     obs_OBJECT_WORK.move_flag |= 256U;
     obs_OBJECT_WORK.move_flag &= 4294967167U;
     obs_OBJECT_WORK.disp_flag |= 4194304U;
     gms_ENE_KAMA_WORK.hand     = type;
     AppMain.gmEneKamaHandWaitInit(obs_OBJECT_WORK);
     obs_OBJECT_WORK.obj_3d.use_light_flag &= 4294967294U;
     obs_OBJECT_WORK.obj_3d.use_light_flag |= 64U;
     return(obs_OBJECT_WORK);
 }
Exemple #7
0
 private static void gmEneKamaFadeAnimeUpdate(
     AppMain.GMS_ENE_KAMA_WORK kama_work,
     int speed,
     int repeat)
 {
     AppMain.GMS_ENE_KAMA_FADE_ANIME     animeData        = kama_work.anime_data;
     AppMain.GMS_ENE_KAMA_FADE_ANIME_PAT kamaFadeAnimePat = animeData.anime_pat[(int)kama_work.anime_pat_no];
     kama_work.anime_frame += speed;
     while (kama_work.anime_frame >= kamaFadeAnimePat.frame)
     {
         kama_work.anime_frame -= kamaFadeAnimePat.frame;
         ++kama_work.anime_pat_no;
         if (kama_work.anime_pat_no < animeData.pat_num)
         {
             kamaFadeAnimePat = animeData.anime_pat[(int)kama_work.anime_pat_no];
         }
         else if (repeat != 0)
         {
             kama_work.anime_pat_no = 0U;
             kamaFadeAnimePat       = animeData.anime_pat[(int)kama_work.anime_pat_no];
         }
         else
         {
             kama_work.anime_pat_no = animeData.pat_num - 1U;
             kama_work.anime_frame  = kamaFadeAnimePat.frame - 1;
         }
     }
     AppMain.GmBsCmnSetObject3DNNFadedColor((AppMain.OBS_OBJECT_WORK)kama_work, kamaFadeAnimePat.col, kamaFadeAnimePat.intensity);
 }
Exemple #8
0
 private static void gmEneKamaHandWaitMain(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gmsEneKamaWork      = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     AppMain.GMS_ENE_KAMA_WORK parentObj           = (AppMain.GMS_ENE_KAMA_WORK)obj_work.parent_obj;
     AppMain.NNS_MATRIX        kamaHandWaitMainMsm = AppMain.gmEneKamaHandWaitMain_msm;
     if (obj_work.parent_obj == null)
     {
         obj_work.spd.x      = 0;
         obj_work.spd_fall   = AppMain.FX_F32_TO_FX32(0.2f);
         obj_work.move_flag |= 128U;
     }
     else
     {
         AppMain.NNS_MATRIX mtx1 = gmsEneKamaWork.hand != 1 ? AppMain.GmEneUtilGetNodeMatrix(parentObj.node_work, 6) : AppMain.GmEneUtilGetNodeMatrix(parentObj.node_work, 9);
         if ((double)mtx1.M03 == 0.0 && (double)mtx1.M13 == 0.0)
         {
             return;
         }
         AppMain.nnMakeScaleMatrix(kamaHandWaitMainMsm, 1f, 1f, 1f);
         AppMain.nnMultiplyMatrix(kamaHandWaitMainMsm, mtx1, kamaHandWaitMainMsm);
         AppMain.GmEneUtilSetMatrixNN(obj_work, kamaHandWaitMainMsm);
         if (parentObj.attack == 0)
         {
             return;
         }
         obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaHandAttackInit);
     }
 }
Exemple #9
0
 // Token: 0x0600094D RID: 2381 RVA: 0x00053B10 File Offset: 0x00051D10
 private static void gmEneKamaAttackWait(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     if (gms_ENE_KAMA_WORK.ata_futa != 0)
     {
         if (gms_ENE_KAMA_WORK.timer > 0)
         {
             gms_ENE_KAMA_WORK.timer--;
             return;
         }
         if (AppMain.gmEneKamaGetLength2N(obj_work) <= 12544)
         {
             obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaFlashInit);
             return;
         }
         obj_work.obj_3d.speed[0] = 2f;
         AppMain.GmEneComActionSet3DNNBlendDependHFlip(obj_work, 4, 5);
         obj_work.disp_flag &= 4294967291U;
         obj_work.ppFunc     = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaFlipAtafuta);
         obj_work.spd.x      = 0;
         if (gms_ENE_KAMA_WORK.walk_s != 0)
         {
             gms_ENE_KAMA_WORK.timer = 15;
             return;
         }
         gms_ENE_KAMA_WORK.timer = ( int )(10 + AppMain.mtMathRand() % 20);
     }
 }
Exemple #10
0
 private static void gmEneKamaFlashMain(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gmsEneKamaWork = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     AppMain.gmEneKamaFadeAnimeUpdate((AppMain.GMS_ENE_KAMA_WORK)obj_work, 4096, 1);
     if (gmsEneKamaWork.timer-- >= 0)
     {
         return;
     }
     AppMain.GMS_EFFECT_3DES_WORK efct_work = AppMain.GmEfctCmnEsCreate(obj_work, 9);
     if (((int)obj_work.disp_flag & 2) != 0)
     {
         AppMain.GmComEfctSetDispOffsetF(efct_work, 0.0f, 20f, 0.0f);
     }
     else
     {
         AppMain.GmComEfctSetDispOffsetF(efct_work, 0.0f, -20f, 0.0f);
     }
     gmsEneKamaWork.ene_3d_work.ene_com.enemy_flag |= 65536U;
     gmsEneKamaWork.timer = 180;
     AppMain.GmSoundPlaySE(AppMain.GMD_ENE_KAMA_SE_BOMB);
     obj_work.disp_flag |= 32U;
     obj_work.ppFunc     = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaFlashEnd);
     AppMain.OBS_RECT_WORK pRec = gmsEneKamaWork.ene_3d_work.ene_com.rect_work[1];
     AppMain.ObjRectWorkSet(pRec, (short)-30, (short)-30, (short)30, (short)10);
     pRec.flag |= 4U;
     AppMain.GmGmkAnimalInit(obj_work, 0, 0, 0, (byte)0, (byte)0, (ushort)0);
     gmsEneKamaWork.ene_3d_work.ene_com.rect_work[0].flag &= 4294967291U;
     gmsEneKamaWork.ene_3d_work.ene_com.rect_work[2].flag &= 4294967291U;
 }
Exemple #11
0
 // Token: 0x06000950 RID: 2384 RVA: 0x00053CF4 File Offset: 0x00051EF4
 private static void gmEneKamaFlashMain(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     AppMain.gmEneKamaFadeAnimeUpdate((AppMain.GMS_ENE_KAMA_WORK)obj_work, 4096, 1);
     if (gms_ENE_KAMA_WORK.timer-- < 0)
     {
         AppMain.GMS_EFFECT_3DES_WORK efct_work = AppMain.GmEfctCmnEsCreate(obj_work, 9);
         if ((obj_work.disp_flag & 2U) != 0U)
         {
             AppMain.GmComEfctSetDispOffsetF(efct_work, 0f, 20f, 0f);
         }
         else
         {
             AppMain.GmComEfctSetDispOffsetF(efct_work, 0f, -20f, 0f);
         }
         gms_ENE_KAMA_WORK.ene_3d_work.ene_com.enemy_flag |= 65536U;
         gms_ENE_KAMA_WORK.timer = 180;
         AppMain.GmSoundPlaySE("Boss2_03");
         obj_work.disp_flag |= 32U;
         obj_work.ppFunc     = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaFlashEnd);
         AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENE_KAMA_WORK.ene_3d_work.ene_com.rect_work[1];
         AppMain.ObjRectWorkSet(obs_RECT_WORK, -30, -30, 30, 10);
         obs_RECT_WORK.flag |= 4U;
         AppMain.GmGmkAnimalInit(obj_work, 0, 0, 0, 0, 0, 0);
         obs_RECT_WORK       = gms_ENE_KAMA_WORK.ene_3d_work.ene_com.rect_work[0];
         obs_RECT_WORK.flag &= 4294967291U;
         obs_RECT_WORK       = gms_ENE_KAMA_WORK.ene_3d_work.ene_com.rect_work[2];
         obs_RECT_WORK.flag &= 4294967291U;
     }
 }
Exemple #12
0
 private static void gmEneKamaFadeAnimeSet(
     AppMain.GMS_ENE_KAMA_WORK kama_work,
     AppMain.GMS_ENE_KAMA_FADE_ANIME anime_data)
 {
     kama_work.anime_data   = anime_data;
     kama_work.anime_pat_no = 0U;
     kama_work.anime_frame  = 0;
 }
Exemple #13
0
 // Token: 0x0600094A RID: 2378 RVA: 0x000539E0 File Offset: 0x00051BE0
 private static void gmEneKamaAttackInit(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     AppMain.GmEneComActionSetDependHFlip(obj_work, 2, 3);
     obj_work.disp_flag     &= 4294967291U;
     obj_work.ppFunc         = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaAttackPreMain);
     obj_work.move_flag     &= 4294967291U;
     obj_work.spd.x          = 0;
     gms_ENE_KAMA_WORK.timer = gms_ENE_KAMA_WORK.atk_wait;
 }
Exemple #14
0
 private static void gmEneKamaFlashEnd(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gmsEneKamaWork = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     gmsEneKamaWork.ene_3d_work.ene_com.rect_work[1].flag &= 4294967291U;
     if (gmsEneKamaWork.timer-- >= 0)
     {
         return;
     }
     obj_work.flag |= 8U;
 }
Exemple #15
0
 // Token: 0x06000951 RID: 2385 RVA: 0x00053E44 File Offset: 0x00052044
 private static void gmEneKamaFlashEnd(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     AppMain.OBS_RECT_WORK     obs_RECT_WORK     = gms_ENE_KAMA_WORK.ene_3d_work.ene_com.rect_work[1];
     obs_RECT_WORK.flag &= 4294967291U;
     if (gms_ENE_KAMA_WORK.timer-- < 0)
     {
         obj_work.flag |= 8U;
     }
 }
Exemple #16
0
 private static void gmEneKamaHandWaitInit(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gmsEneKamaWork = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     gmsEneKamaWork.rot_z = 0;
     gmsEneKamaWork.ene_3d_work.ene_com.rect_work[1].flag &= 4294967291U;
     obj_work.ofst.x = 0;
     obj_work.ofst.y = 0;
     obj_work.dir.z  = (ushort)0;
     obj_work.flag  &= 4294966783U;
     obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaHandWaitMain);
 }
Exemple #17
0
 private static void gmEneKamaHandAttackMain(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gmsEneKamaWork = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     gmsEneKamaWork.rot_z += gmsEneKamaWork.rot_z_add;
     AppMain.NNS_MATRIX handAttackMainRmat = AppMain.gmEneKamaHandAttackMain_rmat;
     AppMain.NNS_MATRIX handAttackMainTmat = AppMain.gmEneKamaHandAttackMain_tmat;
     AppMain.NNS_MATRIX handAttackMainMat  = AppMain.gmEneKamaHandAttackMain_mat;
     AppMain.nnMakeRotateZMatrix(handAttackMainRmat, gmsEneKamaWork.rot_z);
     if (((int)obj_work.disp_flag & 2) != 0)
     {
         AppMain.nnMakeTranslateMatrix(handAttackMainTmat, 10f, 10f, 0.0f);
     }
     else
     {
         AppMain.nnMakeTranslateMatrix(handAttackMainTmat, 10f, -10f, 0.0f);
     }
     AppMain.nnMultiplyMatrix(handAttackMainMat, handAttackMainRmat, handAttackMainTmat);
     obj_work.ofst.x = AppMain.FX_F32_TO_FX32(handAttackMainMat.M03);
     obj_work.ofst.y = AppMain.FX_F32_TO_FX32(handAttackMainMat.M13);
     obj_work.dir.z  = (ushort)gmsEneKamaWork.rot_z;
     if (gmsEneKamaWork.timer > 0)
     {
         AppMain.VecFx32 playerVectorFx = AppMain.gmEneKamaGetPlayerVectorFx(obj_work);
         int             v2_1           = (int)((double)obj_work.spd.x / 1.75);
         int             v2_2           = (int)((double)obj_work.spd.y / 1.75);
         int             v2_3;
         int             num;
         if (AppMain.FX_Mul(playerVectorFx.x, v2_2) - AppMain.FX_Mul(playerVectorFx.y, v2_1) < 0)
         {
             v2_3 = AppMain.FX_Mul(AppMain.FX_Cos((int)(short)AppMain.AKM_DEGtoA32(1f)), v2_1) - AppMain.FX_Mul(AppMain.FX_Sin((int)(short)AppMain.AKM_DEGtoA32(1f)), v2_2);
             num  = AppMain.FX_Mul(AppMain.FX_Sin((int)(short)AppMain.AKM_DEGtoA32(1f)), v2_3) + AppMain.FX_Mul(AppMain.FX_Cos((int)(short)AppMain.AKM_DEGtoA32(1f)), v2_2);
         }
         else
         {
             v2_3 = AppMain.FX_Mul(AppMain.FX_Cos((int)(short)AppMain.AKM_DEGtoA32(-1f)), v2_1) - AppMain.FX_Mul(AppMain.FX_Sin((int)(short)AppMain.AKM_DEGtoA32(-1f)), v2_2);
             num  = AppMain.FX_Mul(AppMain.FX_Sin((int)(short)AppMain.AKM_DEGtoA32(-1f)), v2_3) + AppMain.FX_Mul(AppMain.FX_Cos((int)(short)AppMain.AKM_DEGtoA32(-1f)), v2_2);
         }
         obj_work.spd.x = (int)((double)v2_3 * 1.75);
         obj_work.spd.y = (int)((double)num * 1.75);
         --gmsEneKamaWork.timer;
     }
     else
     {
         obj_work.spd.x      = 0;
         obj_work.spd_fall   = AppMain.FX_F32_TO_FX32(0.2f);
         obj_work.move_flag |= 128U;
         AppMain.GMS_ENE_KAMA_WORK parentObj = (AppMain.GMS_ENE_KAMA_WORK)obj_work.parent_obj;
         if (parentObj == null)
         {
             return;
         }
         parentObj.ata_futa = 1;
     }
 }
Exemple #18
0
 // Token: 0x0600094C RID: 2380 RVA: 0x00053AC8 File Offset: 0x00051CC8
 private static void gmEneKamaAttackMain(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     if (gms_ENE_KAMA_WORK.timer > 0)
     {
         gms_ENE_KAMA_WORK.timer--;
         return;
     }
     gms_ENE_KAMA_WORK.attack = 1;
     obj_work.ppFunc          = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaAttackWait);
 }
Exemple #19
0
 // Token: 0x06000953 RID: 2387 RVA: 0x00054130 File Offset: 0x00052330
 private static void gmEneKamaHandWaitInit(OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     gms_ENE_KAMA_WORK.rot_z = 0;
     AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENE_KAMA_WORK.ene_3d_work.ene_com.rect_work[1];
     obs_RECT_WORK.flag &= 4294967291U;
     obj_work.ofst.x     = 0;
     obj_work.ofst.y     = 0;
     obj_work.dir.z      = 0;
     obj_work.flag      &= 4294966783U;
     obj_work.ppFunc     = AppMain.gmEneKamaHandWaitMain;
 }
Exemple #20
0
    // Token: 0x06000952 RID: 2386 RVA: 0x00053E9C File Offset: 0x0005209C
    private static int gmEneKamaSetWalkSpeed(AppMain.GMS_ENE_KAMA_WORK kama_work)
    {
        int result = 0;

        AppMain.OBS_OBJECT_WORK obs_OBJECT_WORK = (AppMain.OBS_OBJECT_WORK)kama_work;
        if ((obs_OBJECT_WORK.disp_flag & 1U) != 0U)
        {
            if (obs_OBJECT_WORK.obj_3d.act_id[0] == 5 && obs_OBJECT_WORK.obj_3d.frame[0] >= 20f)
            {
                obs_OBJECT_WORK.spd.x = AppMain.ObjSpdUpSet(obs_OBJECT_WORK.spd.x, kama_work.spd_dec, 2048);
            }
            else if (obs_OBJECT_WORK.pos.x <= ( int )(obs_OBJECT_WORK.user_work + ( uint )kama_work.spd_dec_dist))
            {
                obs_OBJECT_WORK.spd.x = AppMain.ObjSpdDownSet(obs_OBJECT_WORK.spd.x, kama_work.spd_dec);
                result = 1;
                if (obs_OBJECT_WORK.spd.x == 0 && obs_OBJECT_WORK.pos.x > ( int )obs_OBJECT_WORK.user_work)
                {
                    obs_OBJECT_WORK.spd.x = ( int )(obs_OBJECT_WORK.user_work - ( uint )obs_OBJECT_WORK.pos.x);
                    if (obs_OBJECT_WORK.spd.x < -kama_work.spd_dec)
                    {
                        obs_OBJECT_WORK.spd.x = -kama_work.spd_dec;
                    }
                }
            }
            else if (obs_OBJECT_WORK.spd.x > -2048)
            {
                obs_OBJECT_WORK.spd.x = AppMain.ObjSpdUpSet(obs_OBJECT_WORK.spd.x, -kama_work.spd_dec, 2048);
            }
        }
        else if (obs_OBJECT_WORK.obj_3d.act_id[0] == 4 && obs_OBJECT_WORK.obj_3d.frame[0] >= 20f)
        {
            obs_OBJECT_WORK.spd.x = AppMain.ObjSpdUpSet(obs_OBJECT_WORK.spd.x, -kama_work.spd_dec, 2048);
        }
        else if (obs_OBJECT_WORK.pos.x >= ( int )(obs_OBJECT_WORK.user_flag - ( uint )kama_work.spd_dec_dist))
        {
            obs_OBJECT_WORK.spd.x = AppMain.ObjSpdDownSet(obs_OBJECT_WORK.spd.x, kama_work.spd_dec);
            result = 1;
            if (obs_OBJECT_WORK.spd.x == 0 && obs_OBJECT_WORK.pos.x < ( int )obs_OBJECT_WORK.user_flag)
            {
                obs_OBJECT_WORK.spd.x = ( int )(obs_OBJECT_WORK.user_flag - ( uint )obs_OBJECT_WORK.pos.x);
                if (obs_OBJECT_WORK.spd.x > kama_work.spd_dec)
                {
                    obs_OBJECT_WORK.spd.x = kama_work.spd_dec;
                }
            }
        }
        else if (obs_OBJECT_WORK.spd.x < 2048)
        {
            obs_OBJECT_WORK.spd.x = AppMain.ObjSpdUpSet(obs_OBJECT_WORK.spd.x, kama_work.spd_dec, 2048);
        }
        return(result);
    }
Exemple #21
0
    private static int gmEneKamaSetWalkSpeed(AppMain.GMS_ENE_KAMA_WORK kama_work)
    {
        int num = 0;

        AppMain.OBS_OBJECT_WORK obsObjectWork = (AppMain.OBS_OBJECT_WORK)kama_work;
        if (((int)obsObjectWork.disp_flag & 1) != 0)
        {
            if (obsObjectWork.obj_3d.act_id[0] == 5 && (double)obsObjectWork.obj_3d.frame[0] >= 20.0)
            {
                obsObjectWork.spd.x = AppMain.ObjSpdUpSet(obsObjectWork.spd.x, kama_work.spd_dec, 2048);
            }
            else if (obsObjectWork.pos.x <= (int)obsObjectWork.user_work + kama_work.spd_dec_dist)
            {
                obsObjectWork.spd.x = AppMain.ObjSpdDownSet(obsObjectWork.spd.x, kama_work.spd_dec);
                num = 1;
                if (obsObjectWork.spd.x == 0 && obsObjectWork.pos.x > (int)obsObjectWork.user_work)
                {
                    obsObjectWork.spd.x = (int)obsObjectWork.user_work - obsObjectWork.pos.x;
                    if (obsObjectWork.spd.x < -kama_work.spd_dec)
                    {
                        obsObjectWork.spd.x = -kama_work.spd_dec;
                    }
                }
            }
            else if (obsObjectWork.spd.x > -2048)
            {
                obsObjectWork.spd.x = AppMain.ObjSpdUpSet(obsObjectWork.spd.x, -kama_work.spd_dec, 2048);
            }
        }
        else if (obsObjectWork.obj_3d.act_id[0] == 4 && (double)obsObjectWork.obj_3d.frame[0] >= 20.0)
        {
            obsObjectWork.spd.x = AppMain.ObjSpdUpSet(obsObjectWork.spd.x, -kama_work.spd_dec, 2048);
        }
        else if (obsObjectWork.pos.x >= (int)obsObjectWork.user_flag - kama_work.spd_dec_dist)
        {
            obsObjectWork.spd.x = AppMain.ObjSpdDownSet(obsObjectWork.spd.x, kama_work.spd_dec);
            num = 1;
            if (obsObjectWork.spd.x == 0 && obsObjectWork.pos.x < (int)obsObjectWork.user_flag)
            {
                obsObjectWork.spd.x = (int)obsObjectWork.user_flag - obsObjectWork.pos.x;
                if (obsObjectWork.spd.x > kama_work.spd_dec)
                {
                    obsObjectWork.spd.x = kama_work.spd_dec;
                }
            }
        }
        else if (obsObjectWork.spd.x < 2048)
        {
            obsObjectWork.spd.x = AppMain.ObjSpdUpSet(obsObjectWork.spd.x, kama_work.spd_dec, 2048);
        }
        return(num);
    }
Exemple #22
0
 private static void gmEneKamaAttackMain(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gmsEneKamaWork = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     if (gmsEneKamaWork.timer > 0)
     {
         --gmsEneKamaWork.timer;
     }
     else
     {
         gmsEneKamaWork.attack = 1;
         obj_work.ppFunc       = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaAttackWait);
     }
 }
Exemple #23
0
    // Token: 0x06000956 RID: 2390 RVA: 0x000543C0 File Offset: 0x000525C0
    private static void gmEneKamaHandAttackMain(OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
        gms_ENE_KAMA_WORK.rot_z += gms_ENE_KAMA_WORK.rot_z_add;
        NNS_MATRIX nns_MATRIX  = AppMain.gmEneKamaHandAttackMain_rmat;
        NNS_MATRIX nns_MATRIX2 = AppMain.gmEneKamaHandAttackMain_tmat;
        NNS_MATRIX nns_MATRIX3 = AppMain.gmEneKamaHandAttackMain_mat;

        AppMain.nnMakeRotateZMatrix(nns_MATRIX, gms_ENE_KAMA_WORK.rot_z);
        if ((obj_work.disp_flag & 2U) != 0U)
        {
            AppMain.nnMakeTranslateMatrix(nns_MATRIX2, 10f, 10f, 0f);
        }
        else
        {
            AppMain.nnMakeTranslateMatrix(nns_MATRIX2, 10f, -10f, 0f);
        }
        AppMain.nnMultiplyMatrix(nns_MATRIX3, nns_MATRIX, nns_MATRIX2);
        obj_work.ofst.x = AppMain.FX_F32_TO_FX32(nns_MATRIX3.M03);
        obj_work.ofst.y = AppMain.FX_F32_TO_FX32(nns_MATRIX3.M13);
        obj_work.dir.z  = ( ushort )gms_ENE_KAMA_WORK.rot_z;
        if (gms_ENE_KAMA_WORK.timer > 0)
        {
            AppMain.VecFx32 vecFx = AppMain.gmEneKamaGetPlayerVectorFx(obj_work);
            int             num   = (int)((float)obj_work.spd.x / 1.75f);
            int             num2  = (int)((float)obj_work.spd.y / 1.75f);
            int             num3  = AppMain.FX_Mul(vecFx.x, num2) - AppMain.FX_Mul(vecFx.y, num);
            if (num3 < 0)
            {
                num  = AppMain.FX_Mul(AppMain.FX_Cos(( int )(( short )AkMath.DEGtoA32(1f))), num) - AppMain.FX_Mul(AppMain.FX_Sin(( int )(( short )AkMath.DEGtoA32(1f))), num2);
                num2 = AppMain.FX_Mul(AppMain.FX_Sin(( int )(( short )AkMath.DEGtoA32(1f))), num) + AppMain.FX_Mul(AppMain.FX_Cos(( int )(( short )AkMath.DEGtoA32(1f))), num2);
            }
            else
            {
                num  = AppMain.FX_Mul(AppMain.FX_Cos(( int )(( short )AkMath.DEGtoA32(-1f))), num) - AppMain.FX_Mul(AppMain.FX_Sin(( int )(( short )AkMath.DEGtoA32(-1f))), num2);
                num2 = AppMain.FX_Mul(AppMain.FX_Sin(( int )(( short )AkMath.DEGtoA32(-1f))), num) + AppMain.FX_Mul(AppMain.FX_Cos(( int )(( short )AkMath.DEGtoA32(-1f))), num2);
            }
            obj_work.spd.x = ( int )(( float )num * 1.75f);
            obj_work.spd.y = ( int )(( float )num2 * 1.75f);
            gms_ENE_KAMA_WORK.timer--;
            return;
        }
        obj_work.spd.x      = 0;
        obj_work.spd_fall   = AppMain.FX_F32_TO_FX32(0.2f);
        obj_work.move_flag |= 128U;
        AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK2 = (AppMain.GMS_ENE_KAMA_WORK)obj_work.parent_obj;
        if (gms_ENE_KAMA_WORK2 != null)
        {
            gms_ENE_KAMA_WORK2.ata_futa = 1;
        }
    }
Exemple #24
0
 // Token: 0x0600094F RID: 2383 RVA: 0x00053C58 File Offset: 0x00051E58
 private static void gmEneKamaFlashInit(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     obj_work.spd.x           = 0;
     obj_work.obj_3d.speed[0] = 1f;
     AppMain.GmBsCmnClearObject3DNNFadedColor(obj_work);
     obj_work.disp_flag |= 134217728U;
     AppMain.gmEneKamaFadeAnimeSet(gms_ENE_KAMA_WORK, AppMain.gm_ene_kama_blink_anime);
     obj_work.obj_3d.blend_spd = 0.125f;
     AppMain.GmEneComActionSet3DNNBlendDependHFlip(obj_work, 10, 11);
     obj_work.disp_flag     |= 4U;
     gms_ENE_KAMA_WORK.timer = 180;
     obj_work.ppFunc         = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaFlashMain);
 }
Exemple #25
0
 // Token: 0x0600094B RID: 2379 RVA: 0x00053A44 File Offset: 0x00051C44
 private static void gmEneKamaAttackPreMain(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     if ((obj_work.disp_flag & 8U) != 0U)
     {
         if (gms_ENE_KAMA_WORK.timer <= 0)
         {
             AppMain.GmEneComActionSetDependHFlip(obj_work, 0, 1);
             obj_work.disp_flag     &= 4294967291U;
             obj_work.ppFunc         = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaAttackMain);
             obj_work.move_flag     &= 4294967291U;
             obj_work.spd.x          = 0;
             gms_ENE_KAMA_WORK.timer = 7;
             return;
         }
         gms_ENE_KAMA_WORK.timer--;
     }
 }
Exemple #26
0
    // Token: 0x06000942 RID: 2370 RVA: 0x000534E4 File Offset: 0x000516E4
    private static AppMain.VecFx32 gmEneKamaGetParentVectorFx(AppMain.OBS_OBJECT_WORK obj_work)
    {
        AppMain.VecFx32           result            = default(AppMain.VecFx32);
        AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)obj_work.parent_obj;
        int num;
        int num2;

        if (gms_ENE_KAMA_WORK == null)
        {
            num  = 1000;
            num2 = 1000;
        }
        else
        {
            num  = gms_ENE_KAMA_WORK.ene_3d_work.ene_com.obj_work.pos.x - obj_work.pos.x;
            num2 = gms_ENE_KAMA_WORK.ene_3d_work.ene_com.obj_work.pos.y - obj_work.pos.y;
        }
        if (num > AppMain.FX_F32_TO_FX32(1000f) || num < AppMain.FX_F32_TO_FX32(-1000f))
        {
            num = 1000;
        }
        if (num2 > AppMain.FX_F32_TO_FX32(1000f) || num2 < AppMain.FX_F32_TO_FX32(-1000f))
        {
            num2 = 1000;
        }
        int num3 = AppMain.FX_F32_TO_FX32(Math.Sqrt((double)(AppMain.FX_FX32_TO_F32(num) * AppMain.FX_FX32_TO_F32(num) + AppMain.FX_FX32_TO_F32(num2) + AppMain.FX_FX32_TO_F32(num2))));

        if (num3 == 0)
        {
            result.x = 0;
            result.y = 0;
        }
        else
        {
            int v = AppMain.FX_Div(4096, num3);
            result.x = AppMain.FX_Mul(num, v);
            result.y = AppMain.FX_Mul(num2, v);
        }
        result.z = 0;
        return(result);
    }
Exemple #27
0
    private static AppMain.VecFx32 gmEneKamaGetParentVectorFx(AppMain.OBS_OBJECT_WORK obj_work)
    {
        AppMain.VecFx32           vecFx32   = new AppMain.VecFx32();
        AppMain.GMS_ENE_KAMA_WORK parentObj = (AppMain.GMS_ENE_KAMA_WORK)obj_work.parent_obj;
        int num1;
        int num2;

        if (parentObj == null)
        {
            num1 = 1000;
            num2 = 1000;
        }
        else
        {
            num1 = parentObj.ene_3d_work.ene_com.obj_work.pos.x - obj_work.pos.x;
            num2 = parentObj.ene_3d_work.ene_com.obj_work.pos.y - obj_work.pos.y;
        }
        if (num1 > AppMain.FX_F32_TO_FX32(1000f) || num1 < AppMain.FX_F32_TO_FX32(-1000f))
        {
            num1 = 1000;
        }
        if (num2 > AppMain.FX_F32_TO_FX32(1000f) || num2 < AppMain.FX_F32_TO_FX32(-1000f))
        {
            num2 = 1000;
        }
        int fx32 = AppMain.FX_F32_TO_FX32(Math.Sqrt((double)AppMain.FX_FX32_TO_F32(num1) * (double)AppMain.FX_FX32_TO_F32(num1) + (double)AppMain.FX_FX32_TO_F32(num2) + (double)AppMain.FX_FX32_TO_F32(num2)));

        if (fx32 == 0)
        {
            vecFx32.x = 0;
            vecFx32.y = 0;
        }
        else
        {
            int v2 = AppMain.FX_Div(4096, fx32);
            vecFx32.x = AppMain.FX_Mul(num1, v2);
            vecFx32.y = AppMain.FX_Mul(num2, v2);
        }
        vecFx32.z = 0;
        return(vecFx32);
    }
Exemple #28
0
 private static void gmEneKamaAttackPreMain(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gmsEneKamaWork = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     if (((int)obj_work.disp_flag & 8) == 0)
     {
         return;
     }
     if (gmsEneKamaWork.timer > 0)
     {
         --gmsEneKamaWork.timer;
     }
     else
     {
         AppMain.GmEneComActionSetDependHFlip(obj_work, 0, 1);
         obj_work.disp_flag  &= 4294967291U;
         obj_work.ppFunc      = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaAttackMain);
         obj_work.move_flag  &= 4294967291U;
         obj_work.spd.x       = 0;
         gmsEneKamaWork.timer = 7;
     }
 }
Exemple #29
0
 private static void gmEneKamaHandAttackInit(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENE_KAMA_WORK gmsEneKamaWork = (AppMain.GMS_ENE_KAMA_WORK)obj_work;
     AppMain.GMS_ENE_KAMA_WORK parentObj      = (AppMain.GMS_ENE_KAMA_WORK)obj_work.parent_obj;
     AppMain.VecFx32           playerVectorFx = AppMain.gmEneKamaGetPlayerVectorFx(obj_work);
     obj_work.spd.x       = (int)((double)playerVectorFx.x * 1.75);
     obj_work.spd.y       = (int)((double)playerVectorFx.y * 1.75);
     obj_work.ppFunc      = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKamaHandAttackMain);
     gmsEneKamaWork.timer = 120;
     if (((int)parentObj.ene_3d_work.ene_com.obj_work.disp_flag & 2) != 0)
     {
         obj_work.disp_flag |= 2U;
     }
     gmsEneKamaWork.rot_z_add = ((int)parentObj.ene_3d_work.ene_com.obj_work.disp_flag & 1) == 0 ? AppMain.AKM_DEGtoA32(15) : -AppMain.AKM_DEGtoA32(15);
     AppMain.OBS_RECT_WORK pRec = gmsEneKamaWork.ene_3d_work.ene_com.rect_work[1];
     AppMain.ObjRectWorkSet(pRec, (short)-8, (short)-8, (short)8, (short)8);
     pRec.flag     |= 4U;
     obj_work.flag |= 512U;
     obj_work.pos.z = 655360;
     AppMain.GmSoundPlaySE(AppMain.GMD_ENE_KAMA_SE_KAMA);
 }
Exemple #30
0
 private static AppMain.OBS_OBJECT_WORK gmEneKamaHandInit(
     AppMain.GMS_EVE_RECORD_EVENT eve_rec,
     int pos_x,
     int pos_y,
     int type)
 {
     AppMain.OBS_OBJECT_WORK   work           = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, (AppMain.TaskWorkFactoryDelegate)(() => (object)new AppMain.GMS_ENE_KAMA_WORK()), "ENE_KAMA");
     AppMain.GMS_ENEMY_3D_WORK gmsEnemy3DWork = (AppMain.GMS_ENEMY_3D_WORK)work;
     AppMain.GMS_ENE_KAMA_WORK gmsEneKamaWork = (AppMain.GMS_ENE_KAMA_WORK)work;
     if (type == 1)
     {
         AppMain.ObjObjectCopyAction3dNNModel(work, AppMain.gm_ene_kama_obj_3d_list[1], gmsEnemy3DWork.obj_3d);
     }
     else
     {
         AppMain.ObjObjectCopyAction3dNNModel(work, AppMain.gm_ene_kama_obj_3d_list[2], gmsEnemy3DWork.obj_3d);
     }
     AppMain.ObjDrawObjectSetToon(work);
     work.pos.z = 0;
     gmsEneKamaWork.ene_3d_work.ene_com.enemy_flag |= 32768U;
     AppMain.OBS_RECT_WORK pRec1 = gmsEnemy3DWork.ene_com.rect_work[1];
     AppMain.ObjRectWorkSet(pRec1, (short)-11, (short)-24, (short)11, (short)0);
     pRec1.flag &= 4294967291U;
     AppMain.OBS_RECT_WORK pRec2 = gmsEnemy3DWork.ene_com.rect_work[0];
     AppMain.ObjRectWorkSet(pRec2, (short)-19, (short)-32, (short)19, (short)0);
     pRec2.flag &= 4294967291U;
     gmsEnemy3DWork.ene_com.rect_work[2].flag &= 4294967291U;
     AppMain.OBS_RECT_WORK pRec3 = gmsEnemy3DWork.ene_com.rect_work[2];
     AppMain.ObjRectWorkSet(pRec3, (short)-19, (short)-32, (short)19, (short)0);
     pRec3.flag         &= 4294967291U;
     work.move_flag     |= 256U;
     work.move_flag     &= 4294967167U;
     work.disp_flag     |= 4194304U;
     gmsEneKamaWork.hand = type;
     AppMain.gmEneKamaHandWaitInit(work);
     work.obj_3d.use_light_flag &= 4294967294U;
     work.obj_3d.use_light_flag |= 64U;
     return(work);
 }