示例#1
0
 // Token: 0x06000666 RID: 1638 RVA: 0x00038B3D File Offset: 0x00036D3D
 private static uint gmGmkWaterSliderGetUserWorkSlideType(OBS_OBJECT_WORK obj_work)
 {
     return(obj_work.user_work);
 }
示例#2
0
 // Token: 0x06001411 RID: 5137 RVA: 0x000B2326 File Offset: 0x000B0526
 private static void gmGmkBobbinChangeModeHit(OBS_OBJECT_WORK obj_work)
 {
     AppMain.ObjDrawObjectActionSet3DNNMaterial(obj_work, 0);
     AppMain.ObjDrawObjectActionSet3DNN(obj_work, 1, 0);
     obj_work.ppFunc = AppMain.gmGmkBobbinMainHit;
 }
示例#3
0
    // Token: 0x06000E04 RID: 3588 RVA: 0x0007B8F4 File Offset: 0x00079AF4
    public static int gmEneKaniIsPlayerLeft(OBS_OBJECT_WORK obj_work)
    {
        GMS_PLAYER_WORK gms_PLAYER_WORK = AppMain.g_gm_main_system.ply_work[(int)((UIntPtr)0)];

        return(AppMain.GmEneComTargetIsLeft(obj_work, gms_PLAYER_WORK.obj_work));
    }
示例#4
0
    // Token: 0x06000757 RID: 1879 RVA: 0x0004096C File Offset: 0x0003EB6C
    public static void gmGmkSwWallDispFunc(OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK = (AppMain.GMS_GMK_SWWALL_WORK)obj_work;
        AppMain.VecFx32             vecFx = default(AppMain.VecFx32);
        AppMain.VecFx32             scale = default(AppMain.VecFx32);
        AppMain.VecU16 vecU = default(AppMain.VecU16);
        int            i    = (gms_GMK_SWWALL_WORK.wall_draw_size + 131071) / 131072;

        AppMain.OBS_COLLISION_WORK col_work = gms_GMK_SWWALL_WORK.gmk_work.ene_com.col_work;
        vecFx.Assign(obj_work.pos);
        int num2;
        int num = num2 = 0;

        if (gms_GMK_SWWALL_WORK.wall_type <= 1)
        {
            if (gms_GMK_SWWALL_WORK.wall_type == 0)
            {
                vecFx.x += ( int )(col_work.obj_col.width + ( ushort )col_work.obj_col.ofst_x - 16) << 12;
                num2     = -131072;
            }
            else
            {
                vecFx.x += ( int )(col_work.obj_col.ofst_x + 16) << 12;
                num2     = 131072;
            }
        }
        else if (gms_GMK_SWWALL_WORK.wall_type == 2)
        {
            vecFx.y += ( int )(col_work.obj_col.height + ( ushort )col_work.obj_col.ofst_y - 16) << 12;
            num      = -131072;
        }
        else
        {
            vecFx.y += ( int )(col_work.obj_col.ofst_y + 16) << 12;
            num      = 131072;
        }
        uint disp_flag = obj_work.disp_flag;

        if ((gms_GMK_SWWALL_WORK.gmk_work.ene_com.enemy_flag & 2U) != 0U)
        {
            while (i > 0)
            {
                AppMain.ObjDrawAction3DNN(obj_work.obj_3d, new AppMain.VecFx32?(vecFx), new AppMain.VecU16?(obj_work.dir), obj_work.scale, ref disp_flag);
                i--;
                vecFx.x += num2;
                vecFx.y += num;
            }
        }
        else
        {
            while (i > 0)
            {
                AppMain.ObjDrawAction3DNN(obj_work.obj_3d, new AppMain.VecFx32?(vecFx), new AppMain.VecU16?(obj_work.dir), obj_work.scale, ref disp_flag);
                i--;
                vecFx.x += num2;
                vecFx.y += num;
            }
        }
        if ((gms_GMK_SWWALL_WORK.gmk_work.ene_com.enemy_flag & 1U) != 0U)
        {
            vecU.x = (vecU.y = 0);
            vecU.z = ( ushort )(gms_GMK_SWWALL_WORK.gear_dir + gms_GMK_SWWALL_WORK.gear_base_dir);
            AppMain.ObjDrawAction3DNN(gms_GMK_SWWALL_WORK.obj_3d_opt[0], new AppMain.VecFx32?(gms_GMK_SWWALL_WORK.gear_pos), new AppMain.VecU16?(vecU), obj_work.scale, ref disp_flag);
            scale.x = (scale.y = (scale.z = 4096));
            if ((gms_GMK_SWWALL_WORK.gmk_work.ene_com.enemy_flag & 4U) != 0U)
            {
                scale.x = -scale.x;
            }
            AppMain.ObjDrawAction3DNN(gms_GMK_SWWALL_WORK.obj_3d_opt[1], new AppMain.VecFx32?(gms_GMK_SWWALL_WORK.gearbase_pos), new AppMain.VecU16?(obj_work.dir), scale, ref disp_flag);
        }
    }
示例#5
0
 // Token: 0x0600140B RID: 5131 RVA: 0x000B1E7A File Offset: 0x000B007A
 private static void gmGmkBobbinDrawFunc(OBS_OBJECT_WORK obj_work)
 {
     AppMain.ObjDrawActionSummary(obj_work);
 }
示例#6
0
    // Token: 0x06000570 RID: 1392 RVA: 0x0002E988 File Offset: 0x0002CB88
    public static void gmGmkLandMoveInit(OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
        obj_work.prev_pos.x = (obj_work.pos.x >> 12) + ( int )gms_ENEMY_3D_WORK.ene_com.eve_rec.left + (gms_ENEMY_3D_WORK.ene_com.eve_rec.width >> 1);
        obj_work.prev_pos.y = (obj_work.pos.y >> 12) + ( int )gms_ENEMY_3D_WORK.ene_com.eve_rec.top + (gms_ENEMY_3D_WORK.ene_com.eve_rec.height >> 1);
        obj_work.ppFunc     = AppMain.gmGmkLandMain;
        if ((gms_ENEMY_3D_WORK.ene_com.eve_rec.width | gms_ENEMY_3D_WORK.ene_com.eve_rec.height) == 0)
        {
            return;
        }
        if (gms_ENEMY_3D_WORK.ene_com.eve_rec.id != 128)
        {
            int num;
            int num2;
            int num3;
            if (gms_ENEMY_3D_WORK.ene_com.eve_rec.height < gms_ENEMY_3D_WORK.ene_com.eve_rec.width)
            {
                num  = gms_ENEMY_3D_WORK.ene_com.eve_rec.width >> 1;
                num2 = obj_work.pos.x >> 12;
                num3 = obj_work.prev_pos.x;
            }
            else
            {
                num  = gms_ENEMY_3D_WORK.ene_com.eve_rec.height >> 1;
                num2 = obj_work.pos.y >> 12;
                num3 = obj_work.prev_pos.y;
            }
            if ((gms_ENEMY_3D_WORK.ene_com.eve_rec.flag & 4) == 0)
            {
                ushort num4;
                for (num4 = 768; num4 > 256; num4 -= 4)
                {
                    int num5 = num3 + (num * AppMain.mtMathSin((int)((ushort)(num4 << 6))) >> 12);
                    if (num5 > num2)
                    {
                        break;
                    }
                }
                obj_work.user_timer = ( int )num4;
            }
            else
            {
                obj_work.user_timer = 0;
                obj_work.user_flag  = 0U;
            }
            short num6 = (short)((gms_ENEMY_3D_WORK.ene_com.eve_rec.flag & 48) >> 4 << 8);
            obj_work.user_timer -= ( int )num6;
            obj_work.user_timer &= 16383;
            return;
        }
        short num7  = (short)(gms_ENEMY_3D_WORK.ene_com.eve_rec.left * 2);
        short num8  = (short)(gms_ENEMY_3D_WORK.ene_com.eve_rec.top * 2);
        short num9  = (short)(gms_ENEMY_3D_WORK.ene_com.eve_rec.width * 2);
        short num10 = (short)(gms_ENEMY_3D_WORK.ene_com.eve_rec.height * 2);
        int   num11 = (int)(num9 * 2 + num10 * 2);

        if (num8 == 0)
        {
            obj_work.user_timer = AppMain.MTM_MATH_ABS(( int )num7) * 4096 / num11;
        }
        else if (num7 == 0)
        {
            obj_work.user_timer = (num11 - AppMain.MTM_MATH_ABS(( int )num8)) * 4096 / num11;
        }
        else if (num7 + num9 == 0)
        {
            obj_work.user_timer = (( int )num9 + AppMain.MTM_MATH_ABS(( int )num8)) * 4096 / num11;
        }
        else
        {
            obj_work.user_timer = (num11 - ( int )num10 - AppMain.MTM_MATH_ABS(( int )num7)) * 4096 / num11;
        }
        obj_work.view_out_ofst += 256;
    }
示例#7
0
    // Token: 0x06000572 RID: 1394 RVA: 0x0002EE14 File Offset: 0x0002D014
    public static void gmGmkLandMove(OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
        byte   b   = AppMain.gm_gmk_land_spd_tbl[(int)((byte)(gms_ENEMY_3D_WORK.ene_com.eve_rec.flag & 3))];
        ushort num = (ushort)obj_work.user_timer;
        int    num4;
        int    num5;

        if (gms_ENEMY_3D_WORK.ene_com.eve_rec.id != 128)
        {
            int   x    = obj_work.prev_pos.x;
            int   y    = obj_work.prev_pos.y;
            short num2 = (short)(gms_ENEMY_3D_WORK.ene_com.eve_rec.width >> 1);
            short num3 = (short)(gms_ENEMY_3D_WORK.ene_com.eve_rec.height >> 1);
            if ((gms_ENEMY_3D_WORK.ene_com.eve_rec.flag & 4) == 0)
            {
                num = ( ushort )(AppMain.g_gm_main_system.sync_time * ( uint )b + ( uint )num & 1023U);
            }
            else if (obj_work.user_flag == 0U)
            {
                num = ( ushort )(obj_work.user_timer & 1023);
            }
            else
            {
                num = ( ushort )(( uint )b * (obj_work.user_flag & 1023U) + ( uint )num & 1023U);
                obj_work.user_flag = ((obj_work.user_flag & 65536U) | (obj_work.user_flag + 1U & 1023U));
            }
            if ((gms_ENEMY_3D_WORK.ene_com.eve_rec.flag & 8) != 0)
            {
                num4 = (x << 12) + ( int )num2 * AppMain.mtMathSin(( int )(( ushort )((( int )num << 6) + 32768)));
                num5 = (y << 12) + ( int )num3 * AppMain.mtMathSin(( int )(( ushort )(num << 6)));
            }
            else
            {
                num4 = (x << 12) + ( int )num2 * AppMain.mtMathSin(( int )(( ushort )(num << 6)));
                num5 = (y << 12) + ( int )num3 * AppMain.mtMathSin(( int )(( ushort )(num << 6)));
            }
        }
        else
        {
            short num6  = (short)(gms_ENEMY_3D_WORK.ene_com.eve_rec.left * 2);
            short num7  = (short)(gms_ENEMY_3D_WORK.ene_com.eve_rec.top * 2);
            short num8  = (short)(gms_ENEMY_3D_WORK.ene_com.eve_rec.width * 2);
            short num9  = (short)(gms_ENEMY_3D_WORK.ene_com.eve_rec.height * 2);
            int   num10 = (int)(num8 * 2 + num9 * 2);
            if (b != 0)
            {
                num = ( ushort )(AppMain.g_gm_main_system.sync_time * ( uint )b + ( uint )num & 4095U);
            }
            else
            {
                num = ( ushort )((( ulong )AppMain.g_gm_main_system.sync_time + ( ulong )(( long )(num >> 2)) & 1023UL) << 2);
            }
            int num11 = num10 * (int)num / 4096;
            if ((gms_ENEMY_3D_WORK.ene_com.eve_rec.flag & 8) == 0)
            {
                if (num11 <= ( int )num8)
                {
                    num4 = gms_ENEMY_3D_WORK.ene_com.born_pos_x + (( int )(num6 + ( short )num11) << 12);
                    num5 = gms_ENEMY_3D_WORK.ene_com.born_pos_y + (( int )num7 << 12);
                }
                else if (num11 <= ( int )(num8 + num9))
                {
                    num4 = gms_ENEMY_3D_WORK.ene_com.born_pos_x + (( int )(num6 + num8) << 12);
                    num5 = gms_ENEMY_3D_WORK.ene_com.born_pos_y + (( int )(num7 + ( short )num11 - num8) << 12);
                }
                else if (num11 <= ( int )(num8 * 2 + num9))
                {
                    num4 = gms_ENEMY_3D_WORK.ene_com.born_pos_x + (( int )(num6 + num8 - (( short )num11 - num8 - num9)) << 12);
                    num5 = gms_ENEMY_3D_WORK.ene_com.born_pos_y + (( int )(num7 + num9) << 12);
                }
                else
                {
                    num4 = gms_ENEMY_3D_WORK.ene_com.born_pos_x + (( int )num6 << 12);
                    num5 = gms_ENEMY_3D_WORK.ene_com.born_pos_y + (( int )(num7 + (num9 - (( short )num11 - num8 * 2 - num9))) << 12);
                }
            }
            else if (num11 <= ( int )num8)
            {
                num4 = gms_ENEMY_3D_WORK.ene_com.born_pos_x + (( int )(num6 + num8 - ( short )num11) << 12);
                num5 = gms_ENEMY_3D_WORK.ene_com.born_pos_y + (( int )num7 << 12);
            }
            else if (num11 <= ( int )(num8 + num9))
            {
                num4 = gms_ENEMY_3D_WORK.ene_com.born_pos_x + (( int )num6 << 12);
                num5 = gms_ENEMY_3D_WORK.ene_com.born_pos_y + (( int )(num7 + ( short )num11 - num8) << 12);
            }
            else if (num11 <= ( int )(num8 * 2 + num9))
            {
                num4 = gms_ENEMY_3D_WORK.ene_com.born_pos_x + (( int )(num6 + (( short )num11 - num8 - num9)) << 12);
                num5 = gms_ENEMY_3D_WORK.ene_com.born_pos_y + (( int )(num7 + num9) << 12);
            }
            else
            {
                num4 = gms_ENEMY_3D_WORK.ene_com.born_pos_x + (( int )(num6 + num8) << 12);
                num5 = gms_ENEMY_3D_WORK.ene_com.born_pos_y + (( int )(num7 + (num9 - (( short )num11 - num8 * 2 - num9))) << 12);
            }
        }
        obj_work.move.x = num4 - obj_work.pos.x;
        obj_work.move.y = num5 - obj_work.pos.y;
        obj_work.pos.x  = num4;
        obj_work.pos.y  = num5;
    }
示例#8
0
 // Token: 0x06001B2C RID: 6956 RVA: 0x000F81D8 File Offset: 0x000F63D8
 private static void gmGmkPressWallParts(OBS_OBJECT_WORK obj_work)
 {
     obj_work.pos.x = obj_work.parent_obj.pos.x;
 }
示例#9
0
    // Token: 0x0600055B RID: 1371 RVA: 0x0002D36C File Offset: 0x0002B56C
    private static void gmGmkSpearStart(OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_GMK_SPEAR_WORK gms_GMK_SPEAR_WORK = (AppMain.GMS_GMK_SPEAR_WORK)obj_work;
        gms_GMK_SPEAR_WORK.gmk_work.ene_com.rect_work[2].flag &= 4294967291U;
        gms_GMK_SPEAR_WORK.gmk_work.ene_com.rect_work[0].flag &= 4294967291U;
        gms_GMK_SPEAR_WORK.gmk_work.ene_com.rect_work[1].flag |= 4U;
        AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_GMK_SPEAR_WORK.gmk_work.ene_com.rect_work[1];
        AppMain.ObjRectWorkZSet(obs_RECT_WORK, AppMain.tbl_gm_gmk_spear_rect[( int )(( UIntPtr )gms_GMK_SPEAR_WORK.obj_type)][0], AppMain.tbl_gm_gmk_spear_rect[( int )(( UIntPtr )gms_GMK_SPEAR_WORK.obj_type)][1], -500, AppMain.tbl_gm_gmk_spear_rect[( int )(( UIntPtr )gms_GMK_SPEAR_WORK.obj_type)][2], AppMain.tbl_gm_gmk_spear_rect[( int )(( UIntPtr )gms_GMK_SPEAR_WORK.obj_type)][3], 500);
        obs_RECT_WORK.flag |= 4U;
        obs_RECT_WORK.flag |= 1024U;
        obj_work.flag      &= 4294967293U;
        uint num  = AppMain.g_gm_main_system.sync_time;
        uint num2 = (uint)((gms_GMK_SPEAR_WORK.timer_set_move + (gms_GMK_SPEAR_WORK.stroke_spd - 1)) / gms_GMK_SPEAR_WORK.stroke_spd);
        uint num3 = num2 * 2U;

        num3 += ( uint )gms_GMK_SPEAR_WORK.timer_set_wait_upper;
        num3 += ( uint )gms_GMK_SPEAR_WORK.timer_set_wait_lower;
        if (num <= ( uint )gms_GMK_SPEAR_WORK.timer_dec)
        {
            gms_GMK_SPEAR_WORK.timer_dec -= ( int )(num - 1U);
            gms_GMK_SPEAR_WORK.timer_dec += ( int )gms_GMK_SPEAR_WORK.timer_set_wait_lower;
            AppMain.gmGmkSpearStay(obj_work);
            return;
        }
        num -= ( uint )gms_GMK_SPEAR_WORK.timer_dec;
        num %= num3;
        if (num <= ( uint )gms_GMK_SPEAR_WORK.timer_set_wait_lower)
        {
            gms_GMK_SPEAR_WORK.timer_dec = ( int )(( long )gms_GMK_SPEAR_WORK.timer_set_wait_lower - ( long )(( ulong )(num - 1U)));
            AppMain.gmGmkSpearStay(obj_work);
            return;
        }
        num -= ( uint )gms_GMK_SPEAR_WORK.timer_set_wait_lower;
        int num4 = AppMain.mtMathCos((int)gms_GMK_SPEAR_WORK.vect);
        int num5 = AppMain.mtMathSin((int)gms_GMK_SPEAR_WORK.vect);

        num4 = num4 * gms_GMK_SPEAR_WORK.stroke_spd >> 12;
        num5 = num5 * gms_GMK_SPEAR_WORK.stroke_spd >> 12;
        if (num < num2)
        {
            gms_GMK_SPEAR_WORK.timer_dec = gms_GMK_SPEAR_WORK.timer_set_move;
            while (num > 1U)
            {
                gms_GMK_SPEAR_WORK.timer_dec -= gms_GMK_SPEAR_WORK.stroke_spd;
                obj_work.pos.x = obj_work.pos.x + num4;
                obj_work.pos.y = obj_work.pos.y + num5;
                num           -= 1U;
            }
            obj_work.spd.x = num4;
            obj_work.spd.y = num5;
            AppMain.gmGmkSpearStroke(obj_work);
            return;
        }
        num -= num2;
        int num6 = AppMain.mtMathCos((int)gms_GMK_SPEAR_WORK.vect) * gms_GMK_SPEAR_WORK.timer_set_move >> 12;
        int num7 = AppMain.mtMathSin((int)gms_GMK_SPEAR_WORK.vect) * gms_GMK_SPEAR_WORK.timer_set_move >> 12;

        obj_work.pos.x = obj_work.pos.x + num6;
        obj_work.pos.y = obj_work.pos.y + num7;
        if (num <= ( uint )gms_GMK_SPEAR_WORK.timer_set_wait_upper)
        {
            gms_GMK_SPEAR_WORK.timer_dec = ( int )(( long )gms_GMK_SPEAR_WORK.timer_set_wait_upper - ( long )(( ulong )(num - 1U)));
            AppMain.gmGmkSpearWait(obj_work);
            return;
        }
        num -= ( uint )gms_GMK_SPEAR_WORK.timer_set_wait_upper;
        gms_GMK_SPEAR_WORK.timer_dec = gms_GMK_SPEAR_WORK.timer_set_move;
        while (num > 1U)
        {
            gms_GMK_SPEAR_WORK.timer_dec -= gms_GMK_SPEAR_WORK.stroke_spd;
            obj_work.pos.x = obj_work.pos.x - num4;
            obj_work.pos.y = obj_work.pos.y - num5;
            num           -= 1U;
        }
        obj_work.spd.x = -num4;
        obj_work.spd.y = -num5;
        AppMain.gmGmkSpearShrink(obj_work);
    }
示例#10
0
    // Token: 0x06001B18 RID: 6936 RVA: 0x000F6C7C File Offset: 0x000F4E7C
    private static OBS_OBJECT_WORK GmGmkPressWallInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
    {
        AppMain.UNREFERENCED_PARAMETER(type);
        AppMain.GMS_GMK_PWALL_WORK gms_GMK_PWALL_WORK = (AppMain.GMS_GMK_PWALL_WORK)AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_GMK_PWALL_WORK(), "Gmk_PressWall");
        OBS_OBJECT_WORK            obs_OBJECT_WORK    = (OBS_OBJECT_WORK)gms_GMK_PWALL_WORK;

        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)gms_GMK_PWALL_WORK;
        if (AppMain.g_gm_gamedat_zone_type_tbl[( int )AppMain.g_gs_main_sys_info.stage_id] == 2)
        {
            AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_presswall_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d);
            obs_OBJECT_WORK.ppOut = AppMain.gmGmkPressWall_ppOut;
            if (eve_rec.height == 0)
            {
                gms_GMK_PWALL_WORK.wall_height = 0;
                OBS_OBJECT_WORK obs_OBJECT_WORK2 = obs_OBJECT_WORK;
                obs_OBJECT_WORK2.pos.y = obs_OBJECT_WORK2.pos.y - 524288;
            }
            else
            {
                gms_GMK_PWALL_WORK.wall_height = ( int )(eve_rec.height * 64) * 4096;
                OBS_OBJECT_WORK obs_OBJECT_WORK3 = obs_OBJECT_WORK;
                obs_OBJECT_WORK3.pos.y = obs_OBJECT_WORK3.pos.y - gms_GMK_PWALL_WORK.wall_height;
            }
            obs_OBJECT_WORK.pos.z = 913408;
        }
        else
        {
            AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_presswall_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d);
            obs_OBJECT_WORK.ppOut = AppMain.gmGmkPressWall_ppOut;
            AppMain.ObjAction3dNNMaterialMotionLoad(obs_OBJECT_WORK.obj_3d, 0, null, null, 1, ( AMS_AMB_HEADER )AppMain.ObjDataGet(895).pData);
            AppMain.ObjDrawObjectActionSet3DNNMaterial(obs_OBJECT_WORK, 0);
            obs_OBJECT_WORK.disp_flag |= 4U;
            if (eve_rec.height == 0)
            {
                gms_GMK_PWALL_WORK.wall_height = 0;
                OBS_OBJECT_WORK obs_OBJECT_WORK4 = obs_OBJECT_WORK;
                obs_OBJECT_WORK4.pos.y = obs_OBJECT_WORK4.pos.y - 786432;
            }
            else
            {
                gms_GMK_PWALL_WORK.wall_height = ( int )(eve_rec.height * 192) * 4096;
                OBS_OBJECT_WORK obs_OBJECT_WORK5 = obs_OBJECT_WORK;
                obs_OBJECT_WORK5.pos.y = obs_OBJECT_WORK5.pos.y - gms_GMK_PWALL_WORK.wall_height;
            }
            obs_OBJECT_WORK.pos.z = 1044480;
        }
        obs_OBJECT_WORK.move_flag |= 8448U;
        obs_OBJECT_WORK.disp_flag |= 4194304U;
        obs_OBJECT_WORK.flag      |= 2U;
        if (eve_rec.width != 0)
        {
            gms_GMK_PWALL_WORK.wall_speed = ( int )eve_rec.width * 4096 / 10;
        }
        else
        {
            gms_GMK_PWALL_WORK.wall_speed = 4096;
        }
        AppMain.mtTaskChangeTcbDestructor(obs_OBJECT_WORK.tcb, AppMain.gmGmkPressWallExit);
        gms_GMK_PWALL_WORK.se_handle = null;
        AppMain.gmGmkPressWallStart(obs_OBJECT_WORK);
        return(obs_OBJECT_WORK);
    }
示例#11
0
    // Token: 0x06001B1F RID: 6943 RVA: 0x000F7558 File Offset: 0x000F5758
    private static void gmGmkPressWallForce(OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_GMK_PWALL_WORK gms_GMK_PWALL_WORK = (AppMain.GMS_GMK_PWALL_WORK)obj_work;
        GMS_PLAYER_WORK            gms_PLAYER_WORK    = AppMain.g_gm_main_system.ply_work[(int)((UIntPtr)0)];

        if ((gms_PLAYER_WORK.player_flag & 1024U) != 0U)
        {
            gms_GMK_PWALL_WORK.ply_death  = true;
            gms_GMK_PWALL_WORK.wall_speed = 0;
            AppMain.gmGmkPressWallSeStop(obj_work);
        }
        if (AppMain.g_gm_gamedat_zone_type_tbl[( int )AppMain.g_gs_main_sys_info.stage_id] == 2)
        {
            if (gms_GMK_PWALL_WORK.wall_speed == 0 || gms_GMK_PWALL_WORK.ply_death)
            {
                AppMain.GMS_GMK_PWALL_WORK gms_GMK_PWALL_WORK2 = gms_GMK_PWALL_WORK;
                gms_GMK_PWALL_WORK2.wall_vibration &= 3;
                AppMain.GMS_GMK_PWALL_WORK gms_GMK_PWALL_WORK3 = gms_GMK_PWALL_WORK;
                gms_GMK_PWALL_WORK3.wall_vibration += 3;
                gms_GMK_PWALL_WORK.wall_brake       = gms_GMK_PWALL_WORK.wall_speed;
                obj_work.ppFunc = AppMain.gmGmkPressWallForce_100;
                AppMain.gmGmkPressWallForce_100(obj_work);
                return;
            }
            obj_work.pos.x      = obj_work.pos.x + gms_GMK_PWALL_WORK.wall_speed;
            obj_work.user_timer = AppMain.wall_vib[( int )(gms_GMK_PWALL_WORK.wall_vibration & 7)];
            AppMain.GMS_GMK_PWALL_WORK gms_GMK_PWALL_WORK4 = gms_GMK_PWALL_WORK;
            gms_GMK_PWALL_WORK4.wall_vibration += 1;
            if (gms_GMK_PWALL_WORK.wall_effect_build_timer == 0)
            {
                OBS_OBJECT_WORK obs_OBJECT_WORK = (OBS_OBJECT_WORK)AppMain.GmEfctZoneEsCreate(null, 2, 32);
                obs_OBJECT_WORK.pos.x = obj_work.pos.x;
                obs_OBJECT_WORK.pos.y = AppMain.g_obj.camera[0][1];
                obs_OBJECT_WORK.pos.z = obj_work.pos.z;
                obs_OBJECT_WORK.spd.x = gms_GMK_PWALL_WORK.wall_speed;
                gms_GMK_PWALL_WORK.wall_effect_build_timer = ( short )((AppMain.mtMathRand() & 63) + 90);
            }
            AppMain.GMS_GMK_PWALL_WORK gms_GMK_PWALL_WORK5 = gms_GMK_PWALL_WORK;
            gms_GMK_PWALL_WORK5.wall_effect_build_timer -= 1;
            obj_work.pos.y = AppMain.g_obj.camera[0][1];
        }
        else
        {
            obj_work.pos.x = obj_work.pos.x + gms_GMK_PWALL_WORK.wall_speed;
            if (gms_GMK_PWALL_WORK.ply_death || gms_GMK_PWALL_WORK.wall_speed == 0)
            {
                if (gms_GMK_PWALL_WORK.efct_obj != null)
                {
                    AppMain.ObjDrawKillAction3DES(gms_GMK_PWALL_WORK.efct_obj);
                    gms_GMK_PWALL_WORK.efct_obj = null;
                    gms_GMK_PWALL_WORK.wall_effect_build_timer = 0;
                }
                obj_work.ppFunc = AppMain.gmGmkPressWallForceZ4_Stop;
            }
            else if ((obj_work.user_flag & 1U) != 0U || gms_GMK_PWALL_WORK.ply_death)
            {
                gms_GMK_PWALL_WORK.wall_brake = gms_GMK_PWALL_WORK.wall_speed;
                obj_work.user_flag           &= 4294967294U;
                obj_work.ppFunc = AppMain.gmGmkPressWallForceZ4_Hit;
                if (gms_GMK_PWALL_WORK.efct_obj != null)
                {
                    AppMain.ObjDrawKillAction3DES(gms_GMK_PWALL_WORK.efct_obj);
                    gms_GMK_PWALL_WORK.efct_obj = null;
                    gms_GMK_PWALL_WORK.wall_effect_build_timer = 0;
                }
            }
            else
            {
                AppMain.GMS_GMK_PWALL_WORK gms_GMK_PWALL_WORK6 = gms_GMK_PWALL_WORK;
                gms_GMK_PWALL_WORK6.wall_effect_build_timer -= 1;
            }
        }
        if (gms_GMK_PWALL_WORK != AppMain.pwall)
        {
            obj_work.flag |= 8U;
            gms_GMK_PWALL_WORK.gmk_work.ene_com.enemy_flag |= 65536U;
            AppMain.gmGmkPressWallSeStop(obj_work);
        }
    }
示例#12
0
    // Token: 0x060018A5 RID: 6309 RVA: 0x000E0950 File Offset: 0x000DEB50
    private static void gmGmkFlagChangeDefFunc(AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect)
    {
        if (match_rect.parent_obj == null)
        {
            return;
        }
        if (match_rect.parent_obj.obj_type != 1)
        {
            return;
        }
        AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)mine_rect.parent_obj;
        GMS_PLAYER_WORK            gms_PLAYER_WORK    = (GMS_PLAYER_WORK)match_rect.parent_obj;
        OBS_OBJECT_WORK            obs_OBJECT_WORK    = (OBS_OBJECT_WORK)gms_PLAYER_WORK;
        ushort id = gms_ENEMY_COM_WORK.eve_rec.id;

        if (id <= 162)
        {
            if (id <= 99)
            {
                switch (id)
                {
                case 60:
                    if ((gms_ENEMY_COM_WORK.eve_rec.flag & 128) != 0)
                    {
                        if (gms_PLAYER_WORK.seq_state != 29 && gms_PLAYER_WORK.seq_state != 49 && gms_PLAYER_WORK.seq_state != 50 && gms_PLAYER_WORK.seq_state != 42)
                        {
                            return;
                        }
                        gms_PLAYER_WORK.gmk_flag |= 2048U;
                    }
                    if (obs_OBJECT_WORK.obj_type == 1 && (obs_OBJECT_WORK.move_flag & 16U) != 0U)
                    {
                        gms_PLAYER_WORK.gmk_flag |= 1U;
                        if ((gms_ENEMY_COM_WORK.eve_rec.flag & 16) != 0)
                        {
                            gms_PLAYER_WORK.gmk_flag |= 2U;
                            return;
                        }
                        if ((gms_ENEMY_COM_WORK.eve_rec.flag & 2) != 0)
                        {
                            if ((gms_PLAYER_WORK.obj_work.disp_flag & 1U) == 0U)
                            {
                                gms_PLAYER_WORK.gmk_flag |= 33554432U;
                                return;
                            }
                        }
                        else if ((gms_ENEMY_COM_WORK.eve_rec.flag & 1) != 0 && (gms_PLAYER_WORK.obj_work.disp_flag & 1U) != 0U)
                        {
                            gms_PLAYER_WORK.gmk_flag |= 33554432U;
                            return;
                        }
                    }
                    break;

                case 61:
                    obs_OBJECT_WORK.flag &= 4294967294U;
                    if (obs_OBJECT_WORK.obj_type == 1)
                    {
                        gms_PLAYER_WORK.graind_prev_ride = 0;
                        return;
                    }
                    break;

                case 62:
                    obs_OBJECT_WORK.flag |= 1U;
                    if (obs_OBJECT_WORK.obj_type == 1)
                    {
                        gms_PLAYER_WORK.graind_prev_ride = 0;
                        return;
                    }
                    break;

                default:
                    if (id != 99)
                    {
                        return;
                    }
                    if (obs_OBJECT_WORK.obj_type == 1)
                    {
                        AppMain.GmPlySeqChangeDeath(gms_PLAYER_WORK);
                        return;
                    }
                    break;
                }
            }
            else if (id != 131)
            {
                if (id != 162)
                {
                    return;
                }
                if (obs_OBJECT_WORK.obj_type == 1)
                {
                    OBS_CAMERA obs_CAMERA = ObjCamera.Get(0);
                    obs_CAMERA.flag |= 2147483648U;
                    return;
                }
            }
            else if (obs_OBJECT_WORK.obj_type == 1)
            {
                ushort flag = gms_ENEMY_COM_WORK.eve_rec.flag;
                short  num  = (short)(flag & 7);
                if ((flag & 8) != 0)
                {
                    num = ( short )-num;
                }
                gms_PLAYER_WORK.gmk_camera_center_ofst_x = ( short )(num << 3);
                num = ( short )((flag & 112) >> 4);
                if ((flag & 128) != 0)
                {
                    num = ( short )-num;
                }
                gms_PLAYER_WORK.gmk_camera_center_ofst_y = ( short )(num << 3);
                return;
            }
        }
        else if (id <= 277)
        {
            if (id != 195)
            {
                switch (id)
                {
                case 276:
                    AppMain.GmEndingPlyNopSet();
                    return;

                case 277:
                    AppMain.GmEndingPlyBrakeSet();
                    return;

                default:
                    return;
                }
            }
            else if (obs_OBJECT_WORK.obj_type == 1)
            {
                AppMain.GmGmkSsOnewayThrough(( uint )gms_ENEMY_COM_WORK.eve_rec.flag);
                return;
            }
        }
        else
        {
            if (id == 283)
            {
                AppMain.GmMainDatLoadBossBattleStart(( int )gms_ENEMY_COM_WORK.eve_rec.flag);
                gms_ENEMY_COM_WORK.enemy_flag    |= 65536U;
                gms_ENEMY_COM_WORK.obj_work.flag |= 10U;
                return;
            }
            if (id != 286)
            {
                return;
            }
            AppMain.GmGmkPressPillarStartup(( uint )gms_ENEMY_COM_WORK.eve_rec.flag);
        }
    }
示例#13
0
 // Token: 0x06000668 RID: 1640 RVA: 0x00038B4E File Offset: 0x00036D4E
 private static int gmGmkWaterSliderGetUserTimerSlideSpeed(OBS_OBJECT_WORK obj_work)
 {
     return(obj_work.user_timer);
 }
示例#14
0
 // Token: 0x06000667 RID: 1639 RVA: 0x00038B45 File Offset: 0x00036D45
 private static void gmGmkWaterSliderSetUserTimerSlideSpeed(OBS_OBJECT_WORK obj_work, int speed)
 {
     obj_work.user_timer = speed;
 }
示例#15
0
 // Token: 0x060003F7 RID: 1015 RVA: 0x000205D4 File Offset: 0x0001E7D4
 private static void gmEneHarisenboFwInit(OBS_OBJECT_WORK obj_work)
 {
     AppMain.ObjDrawObjectActionSet(obj_work, 0);
     obj_work.disp_flag |= 4U;
     obj_work.ppFunc     = AppMain.gmEneHarisenboFwMain;
 }
示例#16
0
 // Token: 0x06000562 RID: 1378 RVA: 0x0002D96A File Offset: 0x0002BB6A
 private static void gmGmkSpearWait(OBS_OBJECT_WORK obj_work)
 {
     obj_work.ppFunc = AppMain.gmGmkSpearWait_100;
     AppMain.gmGmkSpearWait_100(obj_work);
 }
示例#17
0
 // Token: 0x060003F8 RID: 1016 RVA: 0x00020604 File Offset: 0x0001E804
 private static void gmEneHarisenboFwMain(OBS_OBJECT_WORK obj_work)
 {
 }
示例#18
0
    // Token: 0x06000569 RID: 1385 RVA: 0x0002DC8C File Offset: 0x0002BE8C
    private static void gmGmkSpear_CreateParts(AppMain.GMS_GMK_SPEAR_WORK pwork)
    {
        OBS_OBJECT_WORK obj_work        = pwork.gmk_work.ene_com.obj_work;
        OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.GMM_EFFECT_CREATE_WORK(() => new AppMain.GMS_GMK_SPEARPARTS_WORK(), null, 0, "Gmk_SpearBase");

        AppMain.GMS_GMK_SPEARPARTS_WORK gms_GMK_SPEARPARTS_WORK = (AppMain.GMS_GMK_SPEARPARTS_WORK)obs_OBJECT_WORK;
        AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_spear_obj_3d_list[2], gms_GMK_SPEARPARTS_WORK.eff_work.obj_3d);
        obs_OBJECT_WORK.parent_obj = obj_work;
        obs_OBJECT_WORK.pos.x      = obj_work.pos.x;
        obs_OBJECT_WORK.pos.y      = obj_work.pos.y;
        obs_OBJECT_WORK.pos.z      = obj_work.pos.z;
        switch (pwork.obj_type)
        {
        case 0U:
        {
            OBS_OBJECT_WORK obs_OBJECT_WORK2 = obs_OBJECT_WORK;
            obs_OBJECT_WORK2.pos.y = obs_OBJECT_WORK2.pos.y + 16384;
            break;
        }

        case 1U:
        {
            OBS_OBJECT_WORK obs_OBJECT_WORK3 = obs_OBJECT_WORK;
            obs_OBJECT_WORK3.pos.y = obs_OBJECT_WORK3.pos.y - 16384;
            break;
        }

        case 2U:
        {
            OBS_OBJECT_WORK obs_OBJECT_WORK4 = obs_OBJECT_WORK;
            obs_OBJECT_WORK4.pos.x = obs_OBJECT_WORK4.pos.x + 16384;
            break;
        }

        case 3U:
        {
            OBS_OBJECT_WORK obs_OBJECT_WORK5 = obs_OBJECT_WORK;
            obs_OBJECT_WORK5.pos.x = obs_OBJECT_WORK5.pos.x - 16384;
            break;
        }
        }
        obs_OBJECT_WORK.dir.z      = obj_work.dir.z;
        obs_OBJECT_WORK.flag      &= 4294966271U;
        obs_OBJECT_WORK.move_flag |= 256U;
        obs_OBJECT_WORK.disp_flag &= 4294967039U;
        obs_OBJECT_WORK.flag      |= 2U;
        obs_OBJECT_WORK.ppFunc     = null;
        obs_OBJECT_WORK            = AppMain.GMM_EFFECT_CREATE_WORK(() => new AppMain.GMS_GMK_SPEARPARTS_WORK(), null, 0, "Gmk_SpearRod");
        gms_GMK_SPEARPARTS_WORK    = (AppMain.GMS_GMK_SPEARPARTS_WORK)obs_OBJECT_WORK;
        AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_spear_obj_3d_list[1], gms_GMK_SPEARPARTS_WORK.eff_work.obj_3d);
        obs_OBJECT_WORK.parent_obj    = obj_work;
        obs_OBJECT_WORK.parent_ofst.x = 0;
        obs_OBJECT_WORK.parent_ofst.y = 0;
        obs_OBJECT_WORK.parent_ofst.z = -1;
        obs_OBJECT_WORK.dir.z         = obj_work.dir.z;
        obs_OBJECT_WORK.flag         |= 1024U;
        obs_OBJECT_WORK.move_flag    |= 256U;
        obs_OBJECT_WORK.disp_flag    &= 4294967039U;
        obs_OBJECT_WORK.flag         |= 2U;
        switch (pwork.obj_type)
        {
        case 0U:
            gms_GMK_SPEARPARTS_WORK.connect = obj_work.pos.y;
            break;

        case 1U:
            gms_GMK_SPEARPARTS_WORK.connect = obj_work.pos.y;
            break;

        case 2U:
            gms_GMK_SPEARPARTS_WORK.connect = obj_work.pos.x;
            break;

        case 3U:
            gms_GMK_SPEARPARTS_WORK.connect = obj_work.pos.x;
            break;
        }
        gms_GMK_SPEARPARTS_WORK.connect_type   = pwork.obj_type;
        gms_GMK_SPEARPARTS_WORK.parent_connect = obj_work;
        gms_GMK_SPEARPARTS_WORK.obj_type       = pwork.obj_type;
        gms_GMK_SPEARPARTS_WORK.fulcrum        = gms_GMK_SPEARPARTS_WORK.connect;
        obs_OBJECT_WORK.ppFunc = AppMain.gmGmkSpearRod;
    }
示例#19
0
    // Token: 0x0600056D RID: 1389 RVA: 0x0002E150 File Offset: 0x0002C350
    public static OBS_OBJECT_WORK GmGmkLandInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type)
    {
        int num = AppMain.g_gm_gamedat_zone_type_tbl[(int)AppMain.g_gs_main_sys_info.stage_id];

        AppMain.UNREFERENCED_PARAMETER(type);
        OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.GMM_ENEMY_CREATE_RIDE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_ENEMY_3D_WORK(), "GMK_LAND");

        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
        int    num2;
        ushort num3;

        if (eve_rec.id == 82)
        {
            num2 = 1;
            num3 = 1;
        }
        else if (eve_rec.id == 83)
        {
            num2 = 2;
            num3 = 2;
        }
        else
        {
            num2 = 0;
            num3 = 0;
        }
        int num4 = AppMain.gm_gmk_land_mdl_data[num][(int)num3];

        AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_land_obj_3d_list[num4], gms_ENEMY_3D_WORK.obj_3d);
        if (num == 1)
        {
            int id    = num4;
            int index = num4;
            AppMain.ObjObjectAction3dNNMotionLoad(obs_OBJECT_WORK, 0, false, AppMain.ObjDataGet(805), null, 0, null);
            AppMain.ObjDrawObjectActionSet(obs_OBJECT_WORK, id);
            AppMain.ObjAction3dNNMaterialMotionLoad(gms_ENEMY_3D_WORK.obj_3d, 0, null, null, index, ( AMS_AMB_HEADER )AppMain.ObjDataGet(806).pData);
            AppMain.ObjDrawObjectActionSet3DNNMaterial(obs_OBJECT_WORK, 0);
            obs_OBJECT_WORK.disp_flag |= 4U;
        }
        else if (num == 4)
        {
            int index2 = num4;
            AppMain.ObjAction3dNNMaterialMotionLoad(gms_ENEMY_3D_WORK.obj_3d, 0, null, null, index2, ( AMS_AMB_HEADER )AppMain.ObjDataGet(815).pData);
            AppMain.ObjDrawObjectActionSet3DNNMaterial(obs_OBJECT_WORK, 0);
            obs_OBJECT_WORK.disp_flag |= 16U;
            ((AppMain.NNS_MOTION_KEY_Class5[])obs_OBJECT_WORK.obj_3d.motion.mmtn[0].pSubmotion[0].pKeyList)[0].Value.y = 1f;
        }
        else 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_ENEMY_3D_WORK.obj_3d.use_light_flag |= 65536U;
        }
        if (num == 2)
        {
            if (num4 == 0)
            {
                obs_OBJECT_WORK.ppOut = AppMain.gmGmkLand3TvxDrawFunc;
            }
            else
            {
                obs_OBJECT_WORK.ppOut = AppMain.gmGmkLand3TvxRDrawFunc;
            }
        }
        obs_OBJECT_WORK.pos.z = -131072;
        gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.obj       = obs_OBJECT_WORK;
        gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.diff_data = AppMain.g_gm_default_col;
        gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.flag     |= 134217728U;
        if ((eve_rec.flag & 128) == 0 && eve_rec.id != 83)
        {
            gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.attr = 1;
        }
        switch (AppMain.gm_gmk_land_col_type_tbl[num2])
        {
        default:
            gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.width  = 48;
            gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height = 24;
            gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_x = ( short )(-gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.width / 2);
            gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_y = -17;
            if ((gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.attr & 1) != 0)
            {
                gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height = 8;
                AppMain.OBS_COLLISION_OBJ obj_col = gms_ENEMY_3D_WORK.ene_com.col_work.obj_col;
                obj_col.ofst_y += 1;
            }
            break;

        case 1:
            gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.width  = 80;
            gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height = 24;
            gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_x = ( short )(-gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.width / 2);
            gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_y = -17;
            if ((gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.attr & 1) != 0)
            {
                gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height = 8;
                AppMain.OBS_COLLISION_OBJ obj_col2 = gms_ENEMY_3D_WORK.ene_com.col_work.obj_col;
                obj_col2.ofst_y += 1;
            }
            break;

        case 2:
            if (num != 2)
            {
                gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.width  = 64;
                gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height = 64;
                gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_x = ( short )(-gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.width / 2);
                gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_y = -31;
            }
            else
            {
                gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.width  = 24;
                gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height = 32;
                gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_x = ( short )(-gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.width / 2);
                gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_y = -15;
            }
            obs_OBJECT_WORK.field_rect[0] = gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_x;
            obs_OBJECT_WORK.field_rect[1] = gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_y;
            obs_OBJECT_WORK.field_rect[2] = ( short )(gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_x + ( short )gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.width);
            obs_OBJECT_WORK.field_rect[3] = ( short )(( short )gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_y + ( short )gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height);
            break;
        }
        obs_OBJECT_WORK.move_flag |= 8448U;
        obs_OBJECT_WORK.disp_flag |= 4194304U;
        obs_OBJECT_WORK.flag      |= 2U;
        AppMain.gmGmkLandMoveInit(obs_OBJECT_WORK);
        return(obs_OBJECT_WORK);
    }
示例#20
0
 // Token: 0x060008B1 RID: 2225 RVA: 0x0004E7D5 File Offset: 0x0004C9D5
 private static ushort gmGmkRockRideGetUserTimerAngleZ(OBS_OBJECT_WORK obj_work)
 {
     return(( ushort )obj_work.user_timer);
 }
示例#21
0
 // Token: 0x06000574 RID: 1396 RVA: 0x0002F294 File Offset: 0x0002D494
 public static void gmGmkZ3LandPulleyMain(OBS_OBJECT_WORK obj_work)
 {
     obj_work.dir.z = ( ushort )(obj_work.dir.z + ( ushort )obj_work.user_work);
 }
示例#22
0
 // Token: 0x060008B3 RID: 2227 RVA: 0x0004E8BC File Offset: 0x0004CABC
 private static void gmGmkRockRideWaitMain(OBS_OBJECT_WORK obj_work)
 {
 }
示例#23
0
    // Token: 0x0600074F RID: 1871 RVA: 0x0003FE28 File Offset: 0x0003E028
    public static OBS_OBJECT_WORK GmGmkSwWallInit(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_GMK_SWWALL_WORK(), "GMK_SW_WALL");

        AppMain.GMS_ENEMY_3D_WORK   gms_ENEMY_3D_WORK   = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
        AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK = (AppMain.GMS_GMK_SWWALL_WORK)obs_OBJECT_WORK;
        AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_sw_wall_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d);
        if (256 <= eve_rec.id && eve_rec.id <= 259)
        {
            AppMain.ObjCopyAction3dNNModel(AppMain.gm_gmk_sw_wall_obj_3d_list[1], gms_GMK_SWWALL_WORK.obj_3d_opt[0]);
            AppMain.ObjCopyAction3dNNModel(AppMain.gm_gmk_sw_wall_obj_3d_list[2], gms_GMK_SWWALL_WORK.obj_3d_opt[1]);
            gms_GMK_SWWALL_WORK.obj_3d_opt[1].drawflag |= 32U;
            gms_ENEMY_3D_WORK.ene_com.enemy_flag       |= 1U;
        }
        else
        {
            gms_GMK_SWWALL_WORK.h_snd = GsSound.AllocSeHandle();
        }
        AppMain.mtTaskChangeTcbDestructor(obs_OBJECT_WORK.tcb, AppMain.gmGmkSwWallDest);
        obs_OBJECT_WORK.pos.z  = -655360;
        obs_OBJECT_WORK.ppOut  = AppMain.gmGmkSwWallDispFunc;
        gms_GMK_SWWALL_WORK.id = ( uint )AppMain.MTM_MATH_CLIP(( int )eve_rec.left, 0, 64);
        ushort num;
        ushort num2;

        if (248 <= eve_rec.id && eve_rec.id <= 251)
        {
            gms_GMK_SWWALL_WORK.wall_size = 524288;
            num  = ( ushort )(eve_rec.id - 248);
            num2 = 32;
        }
        else if (252 <= eve_rec.id && eve_rec.id <= 255)
        {
            gms_GMK_SWWALL_WORK.wall_size = 1048576;
            num  = ( ushort )(eve_rec.id - 252);
            num2 = 32;
        }
        else
        {
            gms_GMK_SWWALL_WORK.wall_size = 393216;
            num  = ( ushort )(eve_rec.id - 256);
            num2 = 24;
            gms_GMK_SWWALL_WORK.gear_pos.Assign(obs_OBJECT_WORK.pos);
            gms_GMK_SWWALL_WORK.gearbase_pos.Assign(obs_OBJECT_WORK.pos);
            switch (eve_rec.id)
            {
            default:
            {
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK2 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK2.gear_pos.x = gms_GMK_SWWALL_WORK2.gear_pos.x + -144179;
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK3 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK3.gear_pos.y = gms_GMK_SWWALL_WORK3.gear_pos.y + 68812;
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK4 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK4.gearbase_pos.x = gms_GMK_SWWALL_WORK4.gearbase_pos.x + -196608;
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK5 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK5.gearbase_pos.y = gms_GMK_SWWALL_WORK5.gearbase_pos.y + 49152;
                gms_GMK_SWWALL_WORK.gear_base_dir   = 62806;
                break;
            }

            case 257:
            {
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK6 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK6.gear_pos.x = gms_GMK_SWWALL_WORK6.gear_pos.x - -144179;
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK7 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK7.gear_pos.y = gms_GMK_SWWALL_WORK7.gear_pos.y + 68812;
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK8 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK8.gearbase_pos.x = gms_GMK_SWWALL_WORK8.gearbase_pos.x - -196608;
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK9 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK9.gearbase_pos.y   = gms_GMK_SWWALL_WORK9.gearbase_pos.y + 49152;
                gms_GMK_SWWALL_WORK.gear_base_dir     = 2730;
                gms_ENEMY_3D_WORK.ene_com.enemy_flag |= 4U;
                break;
            }

            case 258:
            {
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK10 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK10.gear_pos.x = gms_GMK_SWWALL_WORK10.gear_pos.x + 68812;
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK11 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK11.gear_pos.y = gms_GMK_SWWALL_WORK11.gear_pos.y + -144179;
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK12 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK12.gearbase_pos.x = gms_GMK_SWWALL_WORK12.gearbase_pos.x + 49152;
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK13 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK13.gearbase_pos.y  = gms_GMK_SWWALL_WORK13.gearbase_pos.y + -196608;
                gms_GMK_SWWALL_WORK.gear_base_dir     = 8192;
                gms_ENEMY_3D_WORK.ene_com.enemy_flag |= 4U;
                obs_OBJECT_WORK.dir.z = 49152;
                break;
            }

            case 259:
            {
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK14 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK14.gear_pos.x = gms_GMK_SWWALL_WORK14.gear_pos.x + 68812;
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK15 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK15.gear_pos.y = gms_GMK_SWWALL_WORK15.gear_pos.y - -144179;
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK16 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK16.gearbase_pos.x = gms_GMK_SWWALL_WORK16.gearbase_pos.x + 49152;
                AppMain.GMS_GMK_SWWALL_WORK gms_GMK_SWWALL_WORK17 = gms_GMK_SWWALL_WORK;
                gms_GMK_SWWALL_WORK17.gearbase_pos.y = gms_GMK_SWWALL_WORK17.gearbase_pos.y - -196608;
                gms_GMK_SWWALL_WORK.gear_base_dir    = 2730;
                obs_OBJECT_WORK.dir.z = 49152;
                break;
            }
            }
        }
        gms_GMK_SWWALL_WORK.wall_type = num;
        if (AppMain.GmGmkSwitchTypeIsGear(gms_GMK_SWWALL_WORK.id) && (AppMain.GmGmkSwitchGetPer(gms_GMK_SWWALL_WORK.id) != 0 || !AppMain.GmGmkSwitchIsOn(gms_GMK_SWWALL_WORK.id)) && (AppMain.GmGmkSwitchGetPer(gms_GMK_SWWALL_WORK.id) != 4096 || AppMain.GmGmkSwitchIsOn(gms_GMK_SWWALL_WORK.id)))
        {
            int num3 = AppMain.GmGmkSwitchGetPer(gms_GMK_SWWALL_WORK.id);
            if (AppMain.GmGmkSwitchIsOn(gms_GMK_SWWALL_WORK.id))
            {
                if ((eve_rec.flag & 1) != 0)
                {
                    num3 = 4096 - num3;
                }
            }
            else if ((eve_rec.flag & 1) == 0)
            {
                num3 = 4096 - num3;
            }
            gms_GMK_SWWALL_WORK.wall_draw_size = AppMain.FX_Mul(gms_GMK_SWWALL_WORK.wall_size, num3);
        }
        else if ((AppMain.GmGmkSwitchIsOn(gms_GMK_SWWALL_WORK.id) && (eve_rec.flag & 1) != 0) || (!AppMain.GmGmkSwitchIsOn(gms_GMK_SWWALL_WORK.id) && (eve_rec.flag & 1) == 0))
        {
            gms_GMK_SWWALL_WORK.wall_draw_size = gms_GMK_SWWALL_WORK.wall_size;
        }
        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.dir_data  = gms_GMK_SWWALL_WORK.col_dir_buf;
        col_work.obj_col.diff_data = AppMain.g_gm_default_col;
        col_work.obj_col.flag     |= 402653216U;
        if (num <= 1)
        {
            col_work.obj_col.height = num2;
            col_work.obj_col.ofst_y = -16;
        }
        else
        {
            col_work.obj_col.width  = num2;
            col_work.obj_col.ofst_x = -16;
        }
        AppMain.gmGmkSwWallSetCol(col_work, gms_GMK_SWWALL_WORK.wall_size, gms_GMK_SWWALL_WORK.wall_draw_size, num);
        obs_OBJECT_WORK.move_flag            |= 8448U;
        obs_OBJECT_WORK.disp_flag            |= 4194304U;
        gms_ENEMY_3D_WORK.ene_com.enemy_flag |= 16384U;
        if (gms_GMK_SWWALL_WORK.wall_draw_size == 0 || gms_GMK_SWWALL_WORK.wall_draw_size == gms_GMK_SWWALL_WORK.wall_size)
        {
            AppMain.gmGmkSwWallFwInit(obs_OBJECT_WORK);
        }
        else if ((AppMain.GmGmkSwitchIsOn(gms_GMK_SWWALL_WORK.id) && (eve_rec.flag & 1) != 0) || (!AppMain.GmGmkSwitchIsOn(gms_GMK_SWWALL_WORK.id) && (eve_rec.flag & 1) == 0))
        {
            AppMain.gmGmkSwWallCloseInit(obs_OBJECT_WORK);
        }
        else
        {
            AppMain.gmGmkSwWallOpenInit(obs_OBJECT_WORK);
        }
        return(obs_OBJECT_WORK);
    }
示例#24
0
 // Token: 0x060008AC RID: 2220 RVA: 0x0004E703 File Offset: 0x0004C903
 private static void gmGmkRockRideMoveFunc(OBS_OBJECT_WORK obj_work)
 {
     AppMain.ObjObjectMove(obj_work);
 }
示例#25
0
    // Token: 0x0600140F RID: 5135 RVA: 0x000B206C File Offset: 0x000B026C
    private static void gmGmkBobbinDefFunc(AppMain.OBS_RECT_WORK gimmick_rect, AppMain.OBS_RECT_WORK player_rect)
    {
        OBS_OBJECT_WORK parent_obj = gimmick_rect.parent_obj;

        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)parent_obj;
        OBS_OBJECT_WORK           parent_obj2       = player_rect.parent_obj;

        AppMain.VecFx32 vec = default(AppMain.VecFx32);
        vec.x = parent_obj2.prev_pos.x - parent_obj.pos.x;
        vec.y = ( int )(( long )parent_obj2.prev_pos.y + -12288L - ( long )parent_obj.pos.y);
        vec.z = 0;
        int num = AppMain.FX_Mul(vec.x, vec.x) + AppMain.FX_Mul(vec.y, vec.y);

        if (AppMain.FX_Mul(114688, 114688) < num)
        {
            gimmick_rect.flag &= 4294966271U;
            return;
        }
        gimmick_rect.flag |= 1024U;
        vec = AppMain.gmGmkBobbinNormalizeVectorXY(vec);
        parent_obj2.dir.z = 0;
        int num2 = AppMain.FX_Mul(vec.x, 24576);
        int num3 = AppMain.FX_Mul(vec.y, 24576);
        int num4 = AppMain.FX_F32_TO_FX32((100f + (float)gms_ENEMY_3D_WORK.ene_com.eve_rec.left) * 0.01f);

        if (num4 < 0)
        {
            num4 = 0;
        }
        int num5 = AppMain.FX_F32_TO_FX32((100f + (float)gms_ENEMY_3D_WORK.ene_com.eve_rec.top) * 0.01f);

        if (num5 < 0)
        {
            num5 = 0;
        }
        num2 = AppMain.FX_Mul(num2, num4);
        num3 = AppMain.FX_Mul(num3, num5);
        if (parent_obj2.obj_type == 1)
        {
            AppMain.gmGmkBobbinDefPlayer(gms_ENEMY_3D_WORK, ( GMS_PLAYER_WORK )parent_obj2, num2, num3);
        }
        else if (parent_obj2.obj_type == 2)
        {
            AppMain.gmGmkBobbinDefEnemy(parent_obj2, num2, num3);
        }
        AppMain.gmGmkBobbinChangeModeHit(parent_obj);
        GmSound.PlaySE("Casino1");
        AppMain.GMS_EFFECT_3DES_WORK gms_EFFECT_3DES_WORK = AppMain.GmEfctCmnEsCreate(parent_obj, 16);
        gms_EFFECT_3DES_WORK.efct_com.obj_work.pos.x = parent_obj2.pos.x;
        gms_EFFECT_3DES_WORK.efct_com.obj_work.pos.y = parent_obj2.pos.y;
        gms_EFFECT_3DES_WORK.efct_com.obj_work.pos.z = 131072;
        gms_EFFECT_3DES_WORK.efct_com.obj_work.dir.z = ( ushort )(AppMain.nnArcTan2(( double )AppMain.FX_FX32_TO_F32(num3), ( double )AppMain.FX_FX32_TO_F32(num2)) - 16384);
        if (AppMain.GSM_MAIN_STAGE_IS_SPSTAGE_NOT_RETRY())
        {
            OBS_CAMERA obs_CAMERA = ObjCamera.Get(AppMain.g_obj.glb_camera_id);
            if (obs_CAMERA != null)
            {
                OBS_OBJECT_WORK obj_work = gms_EFFECT_3DES_WORK.efct_com.obj_work;
                obj_work.dir.z = ( ushort )(obj_work.dir.z - ( ushort )obs_CAMERA.roll);
            }
        }
        AppMain.GMM_PAD_VIB_SMALL();
    }
示例#26
0
 // Token: 0x060008B0 RID: 2224 RVA: 0x0004E7C5 File Offset: 0x0004C9C5
 private static void gmGmkRockRideAddUserTimerAngleZ(OBS_OBJECT_WORK obj_work, short angle_z)
 {
     obj_work.user_timer += ( int )angle_z;
 }
示例#27
0
 // Token: 0x06001412 RID: 5138 RVA: 0x000B2349 File Offset: 0x000B0549
 private static void gmGmkBobbinMainWait(OBS_OBJECT_WORK obj_work)
 {
 }
示例#28
0
 // Token: 0x06001B6D RID: 7021 RVA: 0x000FB0B2 File Offset: 0x000F92B2
 private static void gmEneBukuFlipInit(OBS_OBJECT_WORK obj_work)
 {
     AppMain.GmEneComActionSet3DNNBlendDependHFlip(obj_work, 2, 3);
     obj_work.ppFunc = AppMain.gmEneBukuFlipMain;
 }
示例#29
0
 // Token: 0x06000E0B RID: 3595 RVA: 0x0007BDC4 File Offset: 0x00079FC4
 public static void gmEneKaniFlipInit(OBS_OBJECT_WORK obj_work)
 {
     obj_work.spd.x  = 0;
     obj_work.ppFunc = AppMain.gmEneKaniFlipMain;
 }
示例#30
0
 // Token: 0x06000665 RID: 1637 RVA: 0x00038B34 File Offset: 0x00036D34
 private static void gmGmkWaterSliderSetUserWorkSlideType(OBS_OBJECT_WORK obj_work, uint type)
 {
     obj_work.user_work = type;
 }