// Token: 0x060008C9 RID: 2249 RVA: 0x0004F83C File Offset: 0x0004DA3C
 private static void gmGmkActNeedleFwMain(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENEMY_3D_WORK   gms_ENEMY_3D_WORK   = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
     AppMain.GMS_GMK_NEEDLE_WORK gms_GMK_NEEDLE_WORK = (AppMain.GMS_GMK_NEEDLE_WORK)gms_ENEMY_3D_WORK;
     AppMain.OBS_RECT_WORK       obs_RECT_WORK       = gms_ENEMY_3D_WORK.ene_com.rect_work[1];
     if (gms_GMK_NEEDLE_WORK.needle_type == 4)
     {
         AppMain.OBS_OBJECT_WORK rider_obj = gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.rider_obj;
         if (rider_obj != null && rider_obj.ride_obj == (AppMain.OBS_OBJECT_WORK)gms_ENEMY_3D_WORK)
         {
             if (rider_obj.obj_type == 1)
             {
                 AppMain.amFlagOff(ref obj_work.flag, 2U);
             }
         }
         else
         {
             AppMain.amFlagOn(ref obj_work.flag, 2U);
         }
     }
     if (gms_GMK_NEEDLE_WORK.timer >= 60)
     {
         gms_GMK_NEEDLE_WORK.timer = 0;
         AppMain.gmGmkActNeedleScalingInit(obj_work);
     }
     else
     {
         gms_GMK_NEEDLE_WORK.timer++;
     }
     if ((gms_GMK_NEEDLE_WORK.scale_flag & 1U) != 0U)
     {
         AppMain.gmGmkActNeedleSetScaleColRect(obj_work);
     }
 }
Esempio n. 2
0
 // Token: 0x06000E05 RID: 3589 RVA: 0x0007B91C File Offset: 0x00079B1C
 public static void gmEneKaniWalkInit(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
     AppMain.GmEneComActionSetDependHFlip(obj_work, 2, 2);
     obj_work.disp_flag |= 4U;
     obj_work.ppFunc     = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneKaniWalkMain);
     obj_work.move_flag &= 4294967291U;
     if ((obj_work.disp_flag & 1U) != 0U)
     {
         obj_work.spd.x = -2048;
     }
     else
     {
         obj_work.spd.x = 2048;
     }
     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 |= 4U;
     AppMain.GMS_ENE_KANI_WORK gms_ENE_KANI_WORK = (AppMain.GMS_ENE_KANI_WORK)obj_work;
     if (gms_ENE_KANI_WORK.walk_s != 0)
     {
         gms_ENE_KANI_WORK.timer = 15;
         return;
     }
     gms_ENE_KANI_WORK.timer = ( int )(10 + AppMain.mtMathRand() % 20);
 }
 // Token: 0x06001B03 RID: 6915 RVA: 0x000F5864 File Offset: 0x000F3A64
 private static AppMain.OBS_OBJECT_WORK GmGmkPulleyBaseInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
 {
     pos_y -= 24576;
     AppMain.OBS_OBJECT_WORK   obs_OBJECT_WORK   = AppMain.GMM_ENEMY_CREATE_RIDE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_GMK_PULLEY_WORK(), "GMK_PULLEY_BASE");
     AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
     ((AppMain.GMS_GMK_PULLEY_WORK)obs_OBJECT_WORK).se_handle = null;
     AppMain.mtTaskChangeTcbDestructor(obs_OBJECT_WORK.tcb, new AppMain.GSF_TASK_PROCEDURE(AppMain.gmGmkPulleyBaseExit));
     AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_pulley_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d);
     AppMain.ObjObjectAction3dNNMotionLoad(obs_OBJECT_WORK, 0, false, AppMain.ObjDataGet(821), null, 0, null);
     AppMain.ObjDrawObjectActionSet(obs_OBJECT_WORK, 0);
     obs_OBJECT_WORK.move_flag |= 8448U;
     obs_OBJECT_WORK.disp_flag |= 4194308U;
     gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.flag |= 134217728U;
     gms_ENEMY_3D_WORK.ene_com.rect_work[0].flag     &= 4294967291U;
     gms_ENEMY_3D_WORK.ene_com.rect_work[1].flag     &= 4294967291U;
     AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[2];
     obs_RECT_WORK.ppHit = null;
     obs_RECT_WORK.ppDef = new AppMain.OBS_RECT_WORK_Delegate1(AppMain.gmGmkPulleyDefFunc);
     AppMain.ObjRectAtkSet(obs_RECT_WORK, 0, 0);
     AppMain.ObjRectDefSet(obs_RECT_WORK, 65534, 0);
     AppMain.ObjRectWorkSet(obs_RECT_WORK, -4, 9, 4, 24);
     obs_RECT_WORK.flag    |= 1024U;
     obs_OBJECT_WORK.pos.z  = 0;
     obs_OBJECT_WORK.ppFunc = null;
     AppMain.OBS_OBJECT_WORK      obs_OBJECT_WORK2     = AppMain.GMM_EFFECT_CREATE_WORK(() => new AppMain.GMS_EFFECT_3DNN_WORK(), obs_OBJECT_WORK, 0, "GMK_PULLEY_ROT");
     AppMain.GMS_EFFECT_3DNN_WORK gms_EFFECT_3DNN_WORK = (AppMain.GMS_EFFECT_3DNN_WORK)obs_OBJECT_WORK2;
     AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK2, AppMain.gm_gmk_pulley_obj_3d_list[1], gms_EFFECT_3DNN_WORK.obj_3d);
     obs_OBJECT_WORK2.move_flag |= 8448U;
     obs_OBJECT_WORK2.disp_flag |= 4194304U;
     obs_OBJECT_WORK2.disp_flag &= 4294967039U;
     obs_OBJECT_WORK2.flag      |= 16U;
     obs_OBJECT_WORK2.ppFunc     = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmGmkPulleyRotMain);
     ((AppMain.GMS_GMK_PULLEY_WORK)obs_OBJECT_WORK).efct_work = null;
     return(obs_OBJECT_WORK);
 }
Esempio n. 4
0
 // Token: 0x06000535 RID: 1333 RVA: 0x0002BF50 File Offset: 0x0002A150
 private static AppMain.GMS_ENEMY_3D_WORK gmGmkTarzanRopeLoadObjNoModel(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, int type)
 {
     AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_ENEMY_3D_WORK(), "GMK_T_ROPE");
     gms_ENEMY_3D_WORK.ene_com.rect_work[0].flag &= 4294967291U;
     gms_ENEMY_3D_WORK.ene_com.rect_work[1].flag &= 4294967291U;
     return(gms_ENEMY_3D_WORK);
 }
 // Token: 0x06001012 RID: 4114 RVA: 0x0008BEAC File Offset: 0x0008A0AC
 public static AppMain.GMS_ENEMY_3D_WORK gmGmkBubbleLoadObjNoModel(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
 {
     AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_ENEMY_3D_WORK(), "GMK_BUBBLE");
     gms_ENEMY_3D_WORK.ene_com.rect_work[0].flag &= 4294967291U;
     gms_ENEMY_3D_WORK.ene_com.rect_work[1].flag &= 4294967291U;
     return(gms_ENEMY_3D_WORK);
 }
Esempio n. 6
0
    // Token: 0x06000537 RID: 1335 RVA: 0x0002C0B0 File Offset: 0x0002A2B0
    private static void gmGmkTarzanRopeInit(OBS_OBJECT_WORK obj_work, int type, float length)
    {
        AppMain.GMS_ENEMY_3D_WORK gimmick_work = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
        AppMain.gmGmkTarzanRopeSetRect(gimmick_work, type);
        obj_work.move_flag        = 8448U;
        obj_work.disp_flag       |= 4194304U;
        obj_work.obj_3d.drawflag |= 32U;
        int id = AppMain.g_gm_gmk_tarzan_rope_motion_id[type];

        AppMain.ObjDrawObjectActionSet3DNN(obj_work, id, 0);
        obj_work.disp_flag |= 16U;
        int angle = 0;

        switch (type)
        {
        case 0:
            angle = 0;
            break;

        case 1:
            angle = -16384;
            break;

        case 2:
            angle = 16384;
            break;
        }
        AppMain.gmGmkTarzanRopeSetUserWorkTargetAngle(obj_work, angle);
        AppMain.gmGmkTarzanRopeSetUserTimerCurrentAngle(obj_work, angle);
        AppMain.gmGmkTarzanRopeeSetUserFlagType(obj_work, type);
        obj_work.ppFunc = null;
        obj_work.ppMove = null;
        obj_work.ppOut  = AppMain.gmGmkTarzanRopeDrawFunc;
    }
Esempio n. 7
0
    // Token: 0x06000541 RID: 1345 RVA: 0x0002C8EC File Offset: 0x0002AAEC
    private static int gmGmkTarzanRopeApplyKeyRight(OBS_OBJECT_WORK obj_work, int angle_target, int angle_current)
    {
        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
        OBS_OBJECT_WORK           target_obj        = gms_ENEMY_3D_WORK.ene_com.target_obj;
        GMS_PLAYER_WORK           ply_work          = (GMS_PLAYER_WORK)target_obj;
        int num  = AppMain.MTM_MATH_ABS(angle_target);
        int num2 = AppMain.MTM_MATH_ABS(angle_current);
        int num3 = AppMain.gmGmkTarzanRopeGetGimmickRotZ(ply_work);

        if (num < 1792 && num2 < 1792)
        {
            if (num3 > 0)
            {
                angle_target = AppMain.gmGmkTarzanRopeAddUserWorkTargetAngle(obj_work, 1792);
            }
        }
        else if (angle_target > 0)
        {
            if (num3 > 0)
            {
                angle_target = AppMain.gmGmkTarzanRopeAddUserWorkTargetAngle(obj_work, 132);
            }
            else if (num3 < 0)
            {
                angle_target = AppMain.gmGmkTarzanRopeAddUserWorkTargetAngle(obj_work, -31);
            }
        }
        return(angle_target);
    }
 // Token: 0x06001035 RID: 4149 RVA: 0x0008CF48 File Offset: 0x0008B148
 public static AppMain.OBS_OBJECT_WORK GmEneMoguInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
 {
     AppMain.OBS_OBJECT_WORK   obs_OBJECT_WORK   = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_ENE_MOGU_WORK(), "ENE_MOGU");
     AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
     AppMain.GMS_ENE_MOGU_WORK gms_ENE_MOGU_WORK = (AppMain.GMS_ENE_MOGU_WORK)obs_OBJECT_WORK;
     AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_ene_mogu_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d);
     AppMain.ObjObjectAction3dNNMotionLoad(obs_OBJECT_WORK, 0, true, AppMain.ObjDataGet(676), null, 0, null);
     AppMain.ObjDrawObjectSetToon(obs_OBJECT_WORK);
     obs_OBJECT_WORK.pos.z = 0;
     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 |= 4U;
     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 |= 4U;
     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;
     AppMain.ObjObjectFieldRectSet(obs_OBJECT_WORK, -4, -44, 4, -38);
     obs_OBJECT_WORK.move_flag |= 128U;
     if ((eve_rec.flag & 1) == 0)
     {
         obs_OBJECT_WORK.disp_flag |= 1U;
     }
     obs_OBJECT_WORK.user_work      = ( uint )(obs_OBJECT_WORK.pos.x + (( int )eve_rec.left << 12));
     obs_OBJECT_WORK.user_flag      = ( uint )(obs_OBJECT_WORK.pos.x + (( int )(eve_rec.left + ( sbyte )eve_rec.width) << 12));
     gms_ENE_MOGU_WORK.spd_dec      = 102;
     gms_ENE_MOGU_WORK.spd_dec_dist = 20480;
     gms_ENE_MOGU_WORK.flag         = 0U;
     AppMain.gmEneMoguWaitInit(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);
 }
Esempio n. 9
0
    // Token: 0x06000788 RID: 1928 RVA: 0x00042BE0 File Offset: 0x00040DE0
    public static OBS_OBJECT_WORK GmEneTStarNeedleInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
    {
        OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_ENE_T_STAR_WORK(), "ENE_T_STAR");

        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
        AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_ene_t_star_obj_3d_list[1], gms_ENEMY_3D_WORK.obj_3d);
        AppMain.ObjObjectAction3dNNMotionLoad(obs_OBJECT_WORK, 0, true, AppMain.ObjDataGet(682), null, 0, null);
        AppMain.ObjDrawObjectSetToon(obs_OBJECT_WORK);
        obs_OBJECT_WORK.pos.z = 655360;
        AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[1];
        AppMain.ObjRectWorkSet(obs_RECT_WORK, -11, -12, 11, 12);
        obs_RECT_WORK.flag |= 4U;
        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, -16, 19, 16);
        obs_RECT_WORK.flag                    &= 4294967291U;
        obs_OBJECT_WORK.disp_flag             |= 4194304U;
        obs_OBJECT_WORK.move_flag             &= 4294967167U;
        obs_OBJECT_WORK.move_flag             |= 256U;
        obs_OBJECT_WORK.user_work              = ( uint )(obs_OBJECT_WORK.pos.x + (( int )eve_rec.left << 12));
        obs_OBJECT_WORK.user_flag              = ( uint )(obs_OBJECT_WORK.pos.x + (( int )(eve_rec.left + ( sbyte )eve_rec.width) << 12));
        obs_OBJECT_WORK.ppFunc                 = AppMain.gmEneTStarNeedleMain;
        obs_OBJECT_WORK.scale.x                = AppMain.FX_F32_TO_FX32(1.25f);
        obs_OBJECT_WORK.scale.y                = AppMain.FX_F32_TO_FX32(1.25f);
        obs_OBJECT_WORK.scale.z                = AppMain.FX_F32_TO_FX32(1.25f);
        obs_OBJECT_WORK.obj_3d.use_light_flag &= 4294967294U;
        obs_OBJECT_WORK.obj_3d.use_light_flag |= 64U;
        return(obs_OBJECT_WORK);
    }
Esempio n. 10
0
 public static AppMain.OBS_OBJECT_WORK GmEneTStarNeedleInit(
     AppMain.GMS_EVE_RECORD_EVENT eve_rec,
     int pos_x,
     int pos_y,
     byte type)
 {
     AppMain.OBS_OBJECT_WORK     work            = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, (AppMain.TaskWorkFactoryDelegate)(() => (object)new AppMain.GMS_ENE_T_STAR_WORK()), "ENE_T_STAR");
     AppMain.GMS_ENEMY_3D_WORK   gmsEnemy3DWork  = (AppMain.GMS_ENEMY_3D_WORK)work;
     AppMain.GMS_ENE_T_STAR_WORK gmsEneTStarWork = (AppMain.GMS_ENE_T_STAR_WORK)work;
     AppMain.ObjObjectCopyAction3dNNModel(work, AppMain.gm_ene_t_star_obj_3d_list[1], gmsEnemy3DWork.obj_3d);
     AppMain.ObjObjectAction3dNNMotionLoad(work, 0, true, AppMain.ObjDataGet(682), (string)null, 0, (AppMain.AMS_AMB_HEADER)null);
     AppMain.ObjDrawObjectSetToon(work);
     work.pos.z = 655360;
     AppMain.OBS_RECT_WORK pRec1 = gmsEnemy3DWork.ene_com.rect_work[1];
     AppMain.ObjRectWorkSet(pRec1, (short)-11, (short)-12, (short)11, (short)12);
     pRec1.flag |= 4U;
     gmsEnemy3DWork.ene_com.rect_work[2].flag &= 4294967291U;
     AppMain.OBS_RECT_WORK pRec2 = gmsEnemy3DWork.ene_com.rect_work[2];
     AppMain.ObjRectWorkSet(pRec2, (short)-19, (short)-16, (short)19, (short)16);
     pRec2.flag                 &= 4294967291U;
     work.disp_flag             |= 4194304U;
     work.move_flag             &= 4294967167U;
     work.move_flag             |= 256U;
     work.user_work              = (uint)(work.pos.x + ((int)eve_rec.left << 12));
     work.user_flag              = (uint)(work.pos.x + ((int)eve_rec.left + (int)eve_rec.width << 12));
     work.ppFunc                 = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmEneTStarNeedleMain);
     work.scale.x                = AppMain.FX_F32_TO_FX32(1.25f);
     work.scale.y                = AppMain.FX_F32_TO_FX32(1.25f);
     work.scale.z                = AppMain.FX_F32_TO_FX32(1.25f);
     work.obj_3d.use_light_flag &= 4294967294U;
     work.obj_3d.use_light_flag |= 64U;
     return(work);
 }
Esempio n. 11
0
    private static void gmGmkWaterSliderSetRect(
        AppMain.GMS_ENEMY_3D_WORK gimmick_work,
        uint slider_type)
    {
        AppMain.OBS_RECT_WORK pRec = gimmick_work.ene_com.rect_work[2];
        short num1 = 0;
        short num2 = 0;
        short num3 = 0;

        switch (slider_type)
        {
        case 1:
        case 5:
            num1 = (short)-64;
            num3 = (short)32;
            break;

        case 2:
        case 6:
            num1 = (short)-64;
            num3 = (short)64;
            break;

        case 3:
        case 7:
            num1 = (short)-64;
            num3 = (short)128;
            break;
        }
        AppMain.ObjRectWorkZSet(pRec, (short)((int)num1 - 8), (short)-8, (short)-500, (short)((int)num2 + 8), (short)((int)num3 + 8), (short)500);
        AppMain.ObjRectDefSet(pRec, (ushort)65534, (short)0);
        pRec.ppDef = new AppMain.OBS_RECT_WORK_Delegate1(AppMain.gmGmkWaterSliderDefFunc);
    }
 // Token: 0x0600121E RID: 4638 RVA: 0x0009E6F0 File Offset: 0x0009C8F0
 private static AppMain.OBS_OBJECT_WORK GmGmkDrainTankSplashInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
 {
     AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = AppMain.gmGmkDrainTankLoadObj(eve_rec, pos_x, pos_y, 2, 2U);
     AppMain.OBS_OBJECT_WORK   obj_work          = gms_ENEMY_3D_WORK.ene_com.obj_work;
     AppMain.gmGmkDrainTankSplashInit(obj_work);
     return(obj_work);
 }
 // Token: 0x06001233 RID: 4659 RVA: 0x0009F0E8 File Offset: 0x0009D2E8
 private static void gmGmkDrainTankOutChangeModeSplash(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENEMY_3D_WORK           gms_ENEMY_3D_WORK           = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
     AppMain.GMS_GMK_DRAIN_TANK_OUT_WORK gms_GMK_DRAIN_TANK_OUT_WORK = (AppMain.GMS_GMK_DRAIN_TANK_OUT_WORK)gms_ENEMY_3D_WORK;
     AppMain.GMS_PLAYER_WORK             gms_PLAYER_WORK             = AppMain.g_gm_main_system.ply_work[(int)((UIntPtr)0)];
     AppMain.OBS_OBJECT_WORK             obj_work2 = gms_PLAYER_WORK.obj_work;
     if (gms_GMK_DRAIN_TANK_OUT_WORK.flag_dir_left)
     {
         obj_work2.spd.x = -65536;
     }
     else
     {
         obj_work2.spd.x = 65536;
     }
     obj_work2.pos.y      = obj_work.pos.y;
     obj_work2.move_flag |= 256U;
     AppMain.GmPlayerBreathingSet(gms_PLAYER_WORK);
     obj_work.move_flag |= 256U;
     AppMain.g_gm_main_system.game_flag |= 8192U;
     AppMain.GmEventMgrLocalEventBirth(305, obj_work.pos.x, obj_work.pos.y + 65536, gms_ENEMY_3D_WORK.ene_com.eve_rec.flag, gms_ENEMY_3D_WORK.ene_com.eve_rec.left, gms_ENEMY_3D_WORK.ene_com.eve_rec.top, gms_ENEMY_3D_WORK.ene_com.eve_rec.width, gms_ENEMY_3D_WORK.ene_com.eve_rec.height, 0);
     AppMain.GmSoundPlaySE("Fluid2");
     AppMain.GMM_PAD_VIB_SMALL();
     AppMain.GmPlayerCameraOffsetSet(gms_PLAYER_WORK, 0, 0);
     AppMain.GmCameraAllowReset();
     obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmGmkDrainTankOutMainSplash);
 }
 // Token: 0x060008CF RID: 2255 RVA: 0x0004FCD0 File Offset: 0x0004DED0
 private static void gmGmkActNeedleSetScaleColRect(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_ENEMY_3D_WORK   gms_ENEMY_3D_WORK   = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
     AppMain.GMS_GMK_NEEDLE_WORK gms_GMK_NEEDLE_WORK = (AppMain.GMS_GMK_NEEDLE_WORK)gms_ENEMY_3D_WORK;
     gms_GMK_NEEDLE_WORK.scale_timer++;
     if ((gms_GMK_NEEDLE_WORK.scale_flag & 4U) != 0U)
     {
         int num = (int)(gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height - 3);
         if (num < 0)
         {
             num = 0;
             gms_GMK_NEEDLE_WORK.scale_timer = 0;
             gms_GMK_NEEDLE_WORK.scale_flag &= 4294967294U;
             gms_GMK_NEEDLE_WORK.scale_flag &= 4294967291U;
         }
         gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height = ( ushort )num;
         gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_y = ( short )(-1 * ( int )gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height);
         return;
     }
     if ((gms_GMK_NEEDLE_WORK.scale_flag & 2U) != 0U)
     {
         int num = (int)(gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height + 4);
         if (num > 32)
         {
             num = 32;
             gms_GMK_NEEDLE_WORK.scale_timer = 0;
             gms_GMK_NEEDLE_WORK.scale_flag &= 4294967294U;
             gms_GMK_NEEDLE_WORK.scale_flag &= 4294967293U;
         }
         gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height = ( ushort )num;
         gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_y = ( short )(-1 * ( int )gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height);
     }
 }
Esempio n. 15
0
    // Token: 0x06001554 RID: 5460 RVA: 0x000B9490 File Offset: 0x000B7690
    private static OBS_OBJECT_WORK GmGmkSsGoalInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
    {
        AppMain.UNREFERENCED_PARAMETER(type);
        OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_ENEMY_3D_WORK(), "GMK_SS_GOAL");

        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
        obs_OBJECT_WORK.view_out_ofst -= 128;
        AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_ss_goal_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d);
        obs_OBJECT_WORK.pos.z                  = -131072;
        obs_OBJECT_WORK.move_flag             |= 8448U;
        obs_OBJECT_WORK.disp_flag             |= 4194304U;
        obs_OBJECT_WORK.obj_3d.use_light_flag &= 4294967294U;
        obs_OBJECT_WORK.obj_3d.use_light_flag |= 2U;
        obs_OBJECT_WORK.ppFunc                 = AppMain.gmGmkSsGoalMain;
        obs_OBJECT_WORK.ppOut                  = AppMain.gmGmkSsGoalDrawFunc;
        AppMain.OBS_COLLISION_WORK col_work = gms_ENEMY_3D_WORK.ene_com.col_work;
        col_work.obj_col.obj       = obs_OBJECT_WORK;
        col_work.obj_col.diff_data = AppMain.g_gm_default_col;
        col_work.obj_col.width     = 24;
        col_work.obj_col.height    = 24;
        col_work.obj_col.ofst_x    = ( short )(-( short )(col_work.obj_col.width / 2));
        col_work.obj_col.ofst_y    = ( short )(-( short )(col_work.obj_col.height / 2));
        col_work.obj_col.attr      = 2;
        col_work.obj_col.flag     |= 134217760U;
        return(obs_OBJECT_WORK);
    }
    // Token: 0x06001599 RID: 5529 RVA: 0x000BC440 File Offset: 0x000BA640
    private static AppMain.OBS_OBJECT_WORK GmGmkBreakFloorInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
    {
        AppMain.GMS_GMK_BWALL_WORK gms_GMK_BWALL_WORK = (AppMain.GMS_GMK_BWALL_WORK)AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_GMK_BWALL_WORK(), "GMK_BREAK_LAND_MAIN");
        AppMain.OBS_OBJECT_WORK    obs_OBJECT_WORK    = (AppMain.OBS_OBJECT_WORK)gms_GMK_BWALL_WORK;
        AppMain.GMS_ENEMY_3D_WORK  gms_ENEMY_3D_WORK  = (AppMain.GMS_ENEMY_3D_WORK)gms_GMK_BWALL_WORK;
        ushort num = AppMain.tbl_breakwall_mdl[AppMain.g_gm_gamedat_zone_type_tbl[(int)AppMain.g_gs_main_sys_info.stage_id]][6];

        AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_breakwall_obj_3d_list[( int )num], gms_ENEMY_3D_WORK.obj_3d);
        obs_OBJECT_WORK.pos.z = -131072;
        if ((eve_rec.flag & 2) != 0)
        {
            AppMain.OBS_OBJECT_WORK obs_OBJECT_WORK2 = obs_OBJECT_WORK;
            obs_OBJECT_WORK2.pos.z = obs_OBJECT_WORK2.pos.z - 4096;
        }
        obs_OBJECT_WORK.move_flag   |= 8448U;
        obs_OBJECT_WORK.disp_flag   |= 4194304U;
        gms_GMK_BWALL_WORK.broketype = ( ushort )(eve_rec.flag & 1);
        if (AppMain.g_gs_main_sys_info.stage_id == 2 || AppMain.g_gs_main_sys_info.stage_id == 3)
        {
            gms_ENEMY_3D_WORK.obj_3d.use_light_flag &= 4294967294U;
            gms_ENEMY_3D_WORK.obj_3d.use_light_flag |= 2U;
        }
        gms_GMK_BWALL_WORK.obj_type  = 2;
        gms_GMK_BWALL_WORK.wall_type = 6;
        AppMain.gmGmkBreakWallStart(obs_OBJECT_WORK);
        return(obs_OBJECT_WORK);
    }
Esempio n. 17
0
    // Token: 0x0600068E RID: 1678 RVA: 0x0003B2A4 File Offset: 0x000394A4
    private static int gmGmkEnBmprCheckGroupBonus(AppMain.OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
        int num = AppMain.gmGmkEnBmperGetUserWorkLife(obj_work);

        if (num > 0)
        {
            return(0);
        }
        sbyte top = gms_ENEMY_3D_WORK.ene_com.eve_rec.top;

        if (top == 0)
        {
            return(0);
        }
        for (AppMain.OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.ObjObjectSearchRegistObject(null, 3); obs_OBJECT_WORK != null; obs_OBJECT_WORK = AppMain.ObjObjectSearchRegistObject(obs_OBJECT_WORK, 3))
        {
            AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)obs_OBJECT_WORK;
            if (obs_OBJECT_WORK != obj_work && (gms_ENEMY_COM_WORK.eve_rec.id == 164 || gms_ENEMY_COM_WORK.eve_rec.id == 165 || gms_ENEMY_COM_WORK.eve_rec.id == 166 || gms_ENEMY_COM_WORK.eve_rec.id == 167) && gms_ENEMY_COM_WORK.eve_rec.top == top && (Convert.ToInt32(obs_OBJECT_WORK.user_flag) & 1) != 0)
            {
                return(0);
            }
        }
        return(1);
    }
Esempio n. 18
0
 private static AppMain.OBS_OBJECT_WORK GmBoss4CapsuleInit(
     AppMain.GMS_EVE_RECORD_EVENT eve_rec,
     int pos_x,
     int pos_y,
     int type)
 {
     AppMain._cap_kill_flag = 0;
     AppMain.OBS_OBJECT_WORK    work            = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, (AppMain.TaskWorkFactoryDelegate)(() => (object)new AppMain.GMS_BOSS4_CAP_WORK()), "BOSS4_CAP");
     AppMain.GMS_ENEMY_3D_WORK  gmsEnemy3DWork  = (AppMain.GMS_ENEMY_3D_WORK)work;
     AppMain.GMS_BOSS4_CAP_WORK gmsBosS4CapWork = (AppMain.GMS_BOSS4_CAP_WORK)work;
     gmsBosS4CapWork.cap_no = AppMain._cap_no++ % 6;
     gmsBosS4CapWork.type   = type;
     work.move_flag        |= 256U;
     AppMain.ObjObjectCopyAction3dNNModel(work, AppMain.GmBoss4GetObj3D(2), gmsEnemy3DWork.obj_3d);
     AppMain.ObjDrawObjectSetToon(work);
     work.disp_flag |= 134217728U;
     work.flag      |= 16U;
     work.disp_flag |= 4194304U;
     AppMain.ObjRectWorkSet(gmsEnemy3DWork.ene_com.rect_work[0], (short)-14, (short)-30, (short)14, (short)-2);
     gmsEnemy3DWork.ene_com.rect_work[0].ppDef = new AppMain.OBS_RECT_WORK_Delegate1(AppMain.gmBoss4CapsuleDamageDefFunc);
     AppMain.ObjRectWorkSet(gmsEnemy3DWork.ene_com.rect_work[1], (short)-1, (short)-9, (short)1, (short)-7);
     gmsEnemy3DWork.ene_com.rect_work[1].ppHit = new AppMain.OBS_RECT_WORK_Delegate1(AppMain.gmBoss4CapsuleAtkHitFunc);
     gmsEnemy3DWork.ene_com.rect_work[1].flag |= 4U;
     gmsEnemy3DWork.ene_com.rect_work[2].flag &= 4294967291U;
     gmsEnemy3DWork.ene_com.enemy_flag        |= 32768U;
     AppMain.T_FUNC(new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmBoss4CapsuleWaitLoad), work);
     if (gmsBosS4CapWork.chibi_type == 4)
     {
         work.disp_flag |= 32U;
     }
     AppMain.mtTaskChangeTcbDestructor(work.tcb, new AppMain.GSF_TASK_PROCEDURE(AppMain.gmBoss4CapsuleExit));
     work.obj_3d.use_light_flag &= 4294967294U;
     work.obj_3d.use_light_flag |= 64U;
     return(work);
 }
Esempio n. 19
0
    // Token: 0x06000533 RID: 1331 RVA: 0x0002BE80 File Offset: 0x0002A080
    private static OBS_OBJECT_WORK GmGmkTarzanRopeInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
    {
        int type2;

        switch (eve_rec.id)
        {
        case 112:
            type2 = 0;
            break;

        case 113:
            type2 = 1;
            break;

        case 114:
            type2 = 2;
            break;

        default:
            return(null);
        }
        float length = 1f + (float)eve_rec.left / 100f;

        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = AppMain.gmGmkTarzanRopeLoadObj(eve_rec, pos_x, pos_y, type2);
        OBS_OBJECT_WORK           obj_work          = gms_ENEMY_3D_WORK.ene_com.obj_work;

        AppMain.gmGmkTarzanRopeInit(obj_work, type2, length);
        return(obj_work);
    }
Esempio n. 20
0
 // Token: 0x0600071F RID: 1823 RVA: 0x0003EED4 File Offset: 0x0003D0D4
 private static AppMain.OBS_OBJECT_WORK GmBoss4CapsuleInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, int type)
 {
     AppMain._cap_kill_flag = 0;
     AppMain.OBS_OBJECT_WORK    obs_OBJECT_WORK    = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_BOSS4_CAP_WORK(), "BOSS4_CAP");
     AppMain.GMS_ENEMY_3D_WORK  gms_ENEMY_3D_WORK  = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
     AppMain.GMS_BOSS4_CAP_WORK gms_BOSS4_CAP_WORK = (AppMain.GMS_BOSS4_CAP_WORK)obs_OBJECT_WORK;
     gms_BOSS4_CAP_WORK.cap_no  = AppMain._cap_no++ % 6;
     gms_BOSS4_CAP_WORK.type    = type;
     obs_OBJECT_WORK.move_flag |= 256U;
     AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.GmBoss4GetObj3D(2), gms_ENEMY_3D_WORK.obj_3d);
     AppMain.ObjDrawObjectSetToon(obs_OBJECT_WORK);
     obs_OBJECT_WORK.disp_flag |= 134217728U;
     obs_OBJECT_WORK.flag      |= 16U;
     obs_OBJECT_WORK.disp_flag |= 4194304U;
     AppMain.ObjRectWorkSet(gms_ENEMY_3D_WORK.ene_com.rect_work[0], -14, -30, 14, -2);
     gms_ENEMY_3D_WORK.ene_com.rect_work[0].ppDef = new AppMain.OBS_RECT_WORK_Delegate1(AppMain.gmBoss4CapsuleDamageDefFunc);
     AppMain.ObjRectWorkSet(gms_ENEMY_3D_WORK.ene_com.rect_work[1], -1, -9, 1, -7);
     gms_ENEMY_3D_WORK.ene_com.rect_work[1].ppHit = new AppMain.OBS_RECT_WORK_Delegate1(AppMain.gmBoss4CapsuleAtkHitFunc);
     gms_ENEMY_3D_WORK.ene_com.rect_work[1].flag |= 4U;
     gms_ENEMY_3D_WORK.ene_com.rect_work[2].flag &= 4294967291U;
     gms_ENEMY_3D_WORK.ene_com.enemy_flag        |= 32768U;
     AppMain.T_FUNC(new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmBoss4CapsuleWaitLoad), obs_OBJECT_WORK);
     if (gms_BOSS4_CAP_WORK.chibi_type == 4)
     {
         obs_OBJECT_WORK.disp_flag |= 32U;
     }
     AppMain.mtTaskChangeTcbDestructor(obs_OBJECT_WORK.tcb, new AppMain.GSF_TASK_PROCEDURE(AppMain.gmBoss4CapsuleExit));
     obs_OBJECT_WORK.obj_3d.use_light_flag &= 4294967294U;
     obs_OBJECT_WORK.obj_3d.use_light_flag |= 64U;
     return(obs_OBJECT_WORK);
 }
Esempio n. 21
0
    // Token: 0x06000546 RID: 1350 RVA: 0x0002CDA8 File Offset: 0x0002AFA8
    private static void gmGmkTarzanRopeMainKey(OBS_OBJECT_WORK obj_work)
    {
        GMS_PLAYER_WORK gms_PLAYER_WORK = AppMain.g_gm_main_system.ply_work[(int)((UIntPtr)0)];

        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
        if ((gms_PLAYER_WORK.player_flag & 1024U) != 0U || gms_PLAYER_WORK.seq_state == 22)
        {
            obj_work.ppFunc = AppMain.gmGmkTarzanRopeMainEnd;
            gms_ENEMY_3D_WORK.ene_com.target_obj = null;
            gms_PLAYER_WORK.gmk_flag            &= 4294934527U;
            return;
        }
        int num           = AppMain.gmGmkTarzanRopeGetUserWorkTargetAngle(obj_work);
        int angle_current = AppMain.gmGmkTarzanRopeGetUserTimerCurrentAngle(obj_work);

        AppMain.gmGmkTarzanRopeUpdateCatchWait(obj_work);
        if (AppMain.gmGmkTarzanRopeCheckPlayerJump(obj_work, num, angle_current))
        {
            return;
        }
        if (num <= 0)
        {
            num = AppMain.gmGmkTarzanRopeApplyKeyLeft(obj_work, num, angle_current);
        }
        if (num >= 0)
        {
            num = AppMain.gmGmkTarzanRopeApplyKeyRight(obj_work, num, angle_current);
        }
        angle_current = AppMain.gmGmkTarzanRopeUpdateAngleCurrent(obj_work, num, angle_current);
        num           = AppMain.gmGmkTarzanRopeUpdateAngleTarget(obj_work, num, angle_current, true);
        AppMain.gmGmkTarzanRopeUpdatePlayerMotion(obj_work, num, angle_current);
        AppMain.gmGmkTarzanRopeCheckStop(obj_work, num, angle_current);
        AppMain.gmGmkTarzanRopeUpdatePlayerPos(obj_work);
    }
Esempio n. 22
0
    private static AppMain.OBS_OBJECT_WORK GmGmkBreakFloorInit(
        AppMain.GMS_EVE_RECORD_EVENT eve_rec,
        int pos_x,
        int pos_y,
        byte type)
    {
        AppMain.GMS_GMK_BWALL_WORK work           = (AppMain.GMS_GMK_BWALL_WORK)AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, (AppMain.TaskWorkFactoryDelegate)(() => (object)new AppMain.GMS_GMK_BWALL_WORK()), "GMK_BREAK_LAND_MAIN");
        AppMain.OBS_OBJECT_WORK    obj_work       = (AppMain.OBS_OBJECT_WORK)work;
        AppMain.GMS_ENEMY_3D_WORK  gmsEnemy3DWork = (AppMain.GMS_ENEMY_3D_WORK)work;
        ushort num = AppMain.tbl_breakwall_mdl[AppMain.g_gm_gamedat_zone_type_tbl[(int)AppMain.g_gs_main_sys_info.stage_id]][6];

        AppMain.ObjObjectCopyAction3dNNModel(obj_work, AppMain.gm_gmk_breakwall_obj_3d_list[(int)num], gmsEnemy3DWork.obj_3d);
        obj_work.pos.z = -131072;
        if (((int)eve_rec.flag & 2) != 0)
        {
            obj_work.pos.z -= 4096;
        }
        obj_work.move_flag |= 8448U;
        obj_work.disp_flag |= 4194304U;
        work.broketype      = (ushort)((uint)eve_rec.flag & 1U);
        if (AppMain.g_gs_main_sys_info.stage_id == (ushort)2 || AppMain.g_gs_main_sys_info.stage_id == (ushort)3)
        {
            gmsEnemy3DWork.obj_3d.use_light_flag &= 4294967294U;
            gmsEnemy3DWork.obj_3d.use_light_flag |= 2U;
        }
        work.obj_type  = 2;
        work.wall_type = 6;
        AppMain.gmGmkBreakWallStart(obj_work);
        return(obj_work);
    }
Esempio n. 23
0
    // Token: 0x06000536 RID: 1334 RVA: 0x0002BFC4 File Offset: 0x0002A1C4
    private static AppMain.GMS_ENEMY_3D_WORK gmGmkTarzanRopeLoadObj(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, int type)
    {
        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = AppMain.gmGmkTarzanRopeLoadObjNoModel(eve_rec, pos_x, pos_y, type);
        OBS_OBJECT_WORK           obj_work          = gms_ENEMY_3D_WORK.ene_com.obj_work;
        int num;

        if (eve_rec.left >= 50)
        {
            num = 2;
        }
        else if (eve_rec.left >= 20)
        {
            num = 1;
        }
        else
        {
            num = 0;
        }
        int num2 = AppMain.g_gm_gmk_tarzan_rope_model_id[num];

        AppMain.ObjObjectCopyAction3dNNModel(obj_work, AppMain.g_gm_gmk_tarzan_rope_obj_3d_list[num2], gms_ENEMY_3D_WORK.obj_3d);
        AppMain.ObjObjectAction3dNNMotionLoad(obj_work, 0, false, AppMain.ObjDataGet(831), null, 0, null);
        obj_work.obj_3d.mtn_cb_func  = AppMain.gmGmkTarzanRopeMotionCallback;
        obj_work.obj_3d.mtn_cb_param = obj_work;
        AppMain.NNS_OBJECT @object = obj_work.obj_3d._object;
        float num3 = @object.pNodeList[0].Translation.y;

        num3 *= ( float )eve_rec.left / 30f;
        int             num4            = AppMain.FX_F32_TO_FX32(num3);
        OBS_OBJECT_WORK obs_OBJECT_WORK = obj_work;

        obs_OBJECT_WORK.pos.y = obs_OBJECT_WORK.pos.y - num4;
        return(gms_ENEMY_3D_WORK);
    }
Esempio n. 24
0
    private static void gmGmkTarzanRopeUpdatePlayerPos(AppMain.OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_ENEMY_3D_WORK gmsEnemy3DWork = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
        AppMain.OBS_OBJECT_WORK   targetObj      = gmsEnemy3DWork.ene_com.target_obj;
        AppMain.GMS_PLAYER_WORK   gmsPlayerWork  = (AppMain.GMS_PLAYER_WORK)targetObj;
        AppMain.NNS_MATRIX        nnsMatrix      = new AppMain.NNS_MATRIX();
        AppMain.nnMakeUnitMatrix(nnsMatrix);
        nnsMatrix.M11 = AppMain.g_gm_gmk_tarzan_rope_active_matrix.M11;
        nnsMatrix.M22 = AppMain.g_gm_gmk_tarzan_rope_active_matrix.M00;
        nnsMatrix.M21 = AppMain.g_gm_gmk_tarzan_rope_active_matrix.M01;
        nnsMatrix.M12 = AppMain.g_gm_gmk_tarzan_rope_active_matrix.M10;
        nnsMatrix.M03 = -5f;
        AppMain.AkMathNormalizeMtx(gmsPlayerWork.ex_obj_mtx_r, nnsMatrix);
        if (((int)targetObj.disp_flag & 1) != 0)
        {
            gmsPlayerWork.ex_obj_mtx_r.M21 = -gmsPlayerWork.ex_obj_mtx_r.M21;
            gmsPlayerWork.ex_obj_mtx_r.M12 = -gmsPlayerWork.ex_obj_mtx_r.M12;
            nnsMatrix.M03 = -nnsMatrix.M03;
        }
        int num = (((int)gmsEnemy3DWork.ene_com.enemy_flag & (int)ushort.MaxValue) << 12) + 24576;

        if (num > 393216)
        {
            num = 393216;
        }
        gmsEnemy3DWork.ene_com.enemy_flag &= 4294901760U;
        gmsEnemy3DWork.ene_com.enemy_flag |= (uint)(num >> 12);
        AppMain.NNS_VECTOR nnsVector = new AppMain.NNS_VECTOR(0.0f, (float)(-(double)((float)num / 393216f) * 20.0) + 15f, 0.0f);
        AppMain.nnTransformVector(nnsVector, nnsMatrix, nnsVector);
        targetObj.pos.x         = AppMain.FX_F32_TO_FX32(AppMain.g_gm_gmk_tarzan_rope_active_matrix.M03 + nnsVector.z);
        targetObj.pos.y         = -AppMain.FX_F32_TO_FX32(AppMain.g_gm_gmk_tarzan_rope_active_matrix.M13 + nnsVector.y);
        targetObj.pos.z         = AppMain.FX_F32_TO_FX32(AppMain.g_gm_gmk_tarzan_rope_active_matrix.M23 + nnsVector.x);
        gmsPlayerWork.gmk_flag |= 32768U;
    }
Esempio n. 25
0
 private static AppMain.OBS_OBJECT_WORK GmEneUniuniNeedleInit(
     AppMain.GMS_EVE_RECORD_EVENT eve_rec,
     int pos_x,
     int pos_y,
     byte type)
 {
     AppMain.OBS_OBJECT_WORK     work             = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, (AppMain.TaskWorkFactoryDelegate)(() => (object)new AppMain.GMS_ENE_UNIUNI_WORK()), "ENE_UNIUNI");
     AppMain.GMS_ENEMY_3D_WORK   gmsEnemy3DWork   = (AppMain.GMS_ENEMY_3D_WORK)work;
     AppMain.GMS_ENE_UNIUNI_WORK gmsEneUniuniWork = (AppMain.GMS_ENE_UNIUNI_WORK)work;
     AppMain.ObjObjectCopyAction3dNNModel(work, AppMain.gm_ene_uniuni_obj_3d_list[1], gmsEnemy3DWork.obj_3d);
     AppMain.ObjObjectAction3dNNMotionLoad(work, 0, true, AppMain.ObjDataGet(695), (string)null, 0, (AppMain.AMS_AMB_HEADER)null);
     AppMain.ObjDrawObjectSetToon(work);
     work.pos.z = 655360;
     AppMain.OBS_RECT_WORK pRec1 = gmsEnemy3DWork.ene_com.rect_work[1];
     AppMain.ObjRectWorkSet(pRec1, (short)-4, (short)-4, (short)4, (short)4);
     pRec1.flag |= 4U;
     AppMain.OBS_RECT_WORK pRec2 = gmsEnemy3DWork.ene_com.rect_work[2];
     AppMain.ObjRectWorkSet(pRec2, (short)-19, (short)0, (short)19, (short)32);
     pRec2.flag &= 4294967291U;
     gmsEnemy3DWork.ene_com.enemy_flag |= 32768U;
     work.move_flag &= 4294967167U;
     work.move_flag |= 256U;
     work.disp_flag |= 4194304U;
     AppMain.gmEneUniuniNeedleWaitInit(work);
     work.obj_3d.use_light_flag &= 4294967294U;
     work.obj_3d.use_light_flag |= 64U;
     return(work);
 }
Esempio n. 26
0
 private static void gmGmkTarzanRopeMainKey(AppMain.OBS_OBJECT_WORK obj_work)
 {
     AppMain.GMS_PLAYER_WORK   gmsPlayerWork  = AppMain.g_gm_main_system.ply_work[0];
     AppMain.GMS_ENEMY_3D_WORK gmsEnemy3DWork = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
     if (((int)gmsPlayerWork.player_flag & 1024) != 0 || gmsPlayerWork.seq_state == 22)
     {
         obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmGmkTarzanRopeMainEnd);
         gmsEnemy3DWork.ene_com.target_obj = (AppMain.OBS_OBJECT_WORK)null;
         gmsPlayerWork.gmk_flag           &= 4294934527U;
     }
     else
     {
         int angle_target1     = AppMain.gmGmkTarzanRopeGetUserWorkTargetAngle(obj_work);
         int timerCurrentAngle = AppMain.gmGmkTarzanRopeGetUserTimerCurrentAngle(obj_work);
         AppMain.gmGmkTarzanRopeUpdateCatchWait(obj_work);
         if (AppMain.gmGmkTarzanRopeCheckPlayerJump(obj_work, angle_target1, timerCurrentAngle))
         {
             return;
         }
         if (angle_target1 <= 0)
         {
             angle_target1 = AppMain.gmGmkTarzanRopeApplyKeyLeft(obj_work, angle_target1, timerCurrentAngle);
         }
         if (angle_target1 >= 0)
         {
             angle_target1 = AppMain.gmGmkTarzanRopeApplyKeyRight(obj_work, angle_target1, timerCurrentAngle);
         }
         int angle_current = AppMain.gmGmkTarzanRopeUpdateAngleCurrent(obj_work, angle_target1, timerCurrentAngle);
         int angle_target2 = AppMain.gmGmkTarzanRopeUpdateAngleTarget(obj_work, angle_target1, angle_current, true);
         AppMain.gmGmkTarzanRopeUpdatePlayerMotion(obj_work, angle_target2, angle_current);
         AppMain.gmGmkTarzanRopeCheckStop(obj_work, angle_target2, angle_current);
         AppMain.gmGmkTarzanRopeUpdatePlayerPos(obj_work);
     }
 }
 // Token: 0x06001B07 RID: 6919 RVA: 0x000F5D38 File Offset: 0x000F3F38
 private static AppMain.OBS_OBJECT_WORK GmGmkPulleyRopeTInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
 {
     pos_y -= 24576;
     AppMain.OBS_OBJECT_WORK   obs_OBJECT_WORK   = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_ENEMY_3D_WORK(), "GMK_PULLEY_ROPE_T");
     AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
     AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_pulley_obj_3d_list[5], gms_ENEMY_3D_WORK.obj_3d);
     if (eve_rec.id == 95)
     {
         obs_OBJECT_WORK.dir.y = 32768;
     }
     obs_OBJECT_WORK.move_flag |= 8448U;
     obs_OBJECT_WORK.disp_flag |= 4194304U;
     obs_OBJECT_WORK.flag      |= 2U;
     gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.flag |= 134217728U;
     obs_OBJECT_WORK.pos.z  = -131072;
     obs_OBJECT_WORK.ppFunc = null;
     if (eve_rec.id == 95)
     {
         obs_OBJECT_WORK.ppOut = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmGmkPulleyDrawSetRopeTL);
     }
     else
     {
         obs_OBJECT_WORK.ppOut = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmGmkPulleyDrawSetRopeTR);
     }
     return(obs_OBJECT_WORK);
 }
Esempio n. 28
0
    // Token: 0x0600179F RID: 6047 RVA: 0x000D10FC File Offset: 0x000CF2FC
    private static OBS_OBJECT_WORK GmGmkSsTimeInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
    {
        OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_ENEMY_3D_WORK(), "GMK_SS_TIME");

        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
        obs_OBJECT_WORK.view_out_ofst -= 128;
        uint num = (uint)(eve_rec.flag & 3);

        num = AppMain.MTM_MATH_CLIP(num, 0U, 2U);
        obs_OBJECT_WORK.user_work = num;
        AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_ss_time_obj_3d_list[( int )(( UIntPtr )num)], gms_ENEMY_3D_WORK.obj_3d);
        obs_OBJECT_WORK.pos.z      = -131072;
        obs_OBJECT_WORK.move_flag |= 8448U;
        gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.flag |= 134217728U;
        obs_OBJECT_WORK.disp_flag             |= 4194304U;
        obs_OBJECT_WORK.obj_3d.use_light_flag &= 4294967294U;
        obs_OBJECT_WORK.obj_3d.use_light_flag |= 2U;
        obs_OBJECT_WORK.scale.x = (obs_OBJECT_WORK.scale.y = (obs_OBJECT_WORK.scale.z = 6144));
        obs_OBJECT_WORK.ppFunc  = AppMain.gmGmkSsTimeMain;
        gms_ENEMY_3D_WORK.ene_com.rect_work[0].flag &= 4294967291U;
        AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[2];
        obs_RECT_WORK.ppDef = AppMain.gmGmkSsTimeDefFunc;
        AppMain.ObjRectDefSet(obs_RECT_WORK, 65534, 0);
        AppMain.ObjRectWorkSet(obs_RECT_WORK, -6, -6, 6, 6);
        return(obs_OBJECT_WORK);
    }
Esempio n. 29
0
    // Token: 0x060018AF RID: 6319 RVA: 0x000E13F4 File Offset: 0x000DF5F4
    private static OBS_OBJECT_WORK GmGmkEndingAnimalInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
    {
        OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_ENEMY_3D_WORK(), "GMK_END_ANIMAL");

        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
        uint user_work = (uint)(eve_rec.flag & 7);

        obs_OBJECT_WORK.user_work = user_work;
        AppMain.gmGmkAnimalObjSet(obs_OBJECT_WORK, gms_ENEMY_3D_WORK.obj_3d);
        if ((eve_rec.flag & 16) != 0)
        {
            obs_OBJECT_WORK.user_flag = 2U;
        }
        else
        {
            obs_OBJECT_WORK.user_flag = 0U;
        }
        obs_OBJECT_WORK.disp_flag |= 4259840U;
        obs_OBJECT_WORK.move_flag &= 4294952703U;
        obs_OBJECT_WORK.move_flag |= 1680U;
        obs_OBJECT_WORK.spd.y      = -AppMain.g_gm_gmk_animal_speed_param[( int )obs_OBJECT_WORK.user_work].jump;
        obs_OBJECT_WORK.spd_fall   = AppMain.g_gm_gmk_animal_speed_param[( int )obs_OBJECT_WORK.user_work].gravity;
        obs_OBJECT_WORK.pos.z      = -131072;
        obs_OBJECT_WORK.flag      |= 512U;
        obs_OBJECT_WORK.flag      |= 2U;
        obs_OBJECT_WORK.flag      &= 4294967279U;
        obs_OBJECT_WORK.ppFunc     = AppMain.gmGmkEndingAnimalMove;
        return(obs_OBJECT_WORK);
    }
Esempio n. 30
0
 // Token: 0x060013CA RID: 5066 RVA: 0x000AF6A8 File Offset: 0x000AD8A8
 private static AppMain.OBS_OBJECT_WORK gmGmkPistonInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
 {
     AppMain.GMS_GMK_PISTON_WORK gms_GMK_PISTON_WORK = (AppMain.GMS_GMK_PISTON_WORK)AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_GMK_PISTON_WORK(), "Gmk_PistonRod");
     AppMain.OBS_OBJECT_WORK     obs_OBJECT_WORK     = (AppMain.OBS_OBJECT_WORK)gms_GMK_PISTON_WORK;
     AppMain.GMS_ENEMY_3D_WORK   gms_ENEMY_3D_WORK   = (AppMain.GMS_ENEMY_3D_WORK)gms_GMK_PISTON_WORK;
     AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_piston_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d);
     obs_OBJECT_WORK.pos.z              = -131072;
     obs_OBJECT_WORK.move_flag         |= 256U;
     obs_OBJECT_WORK.disp_flag         |= 4194304U;
     obs_OBJECT_WORK.disp_flag         &= 4294967039U;
     obs_OBJECT_WORK.flag              |= 2U;
     gms_GMK_PISTON_WORK.stroke_spd     = 16384;
     gms_GMK_PISTON_WORK.timer_set_move = 524288;
     if ((eve_rec.flag & 31) != 0)
     {
         int num;
         if ((eve_rec.flag & 31) <= 16)
         {
             num = ( int )(eve_rec.flag & 31) << 10;
         }
         else
         {
             num = ( int )(-( int )(eve_rec.flag & 15)) << 10;
         }
         gms_GMK_PISTON_WORK.stroke_spd += num;
     }
     gms_GMK_PISTON_WORK.efct_di = ((eve_rec.flag & 128) != 0);
     gms_GMK_PISTON_WORK.timer_set_wait_upper = ( int )(eve_rec.left * 2);
     gms_GMK_PISTON_WORK.timer_set_wait_lower = ( int )(eve_rec.height * 2);
     return(obs_OBJECT_WORK);
 }