Exemplo n.º 1
0
    // Token: 0x060008D1 RID: 2257 RVA: 0x000500A4 File Offset: 0x0004E2A4
    public static void GmGmkNeedleSetLight()
    {
        NNS_RGBA   nns_RGBA   = new NNS_RGBA(1f, 1f, 1f, 1f);
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        if (AppMain.g_gs_main_sys_info.stage_id == 14)
        {
            nns_VECTOR.x = -0.1f;
            nns_VECTOR.y = -0.09f;
            nns_VECTOR.z = -0.93f;
        }
        else
        {
            nns_VECTOR.x = -1f;
            nns_VECTOR.y = -1f;
            nns_VECTOR.z = -1f;
        }
        nns_RGBA.r = 1f;
        nns_RGBA.g = 1f;
        nns_RGBA.b = 1f;
        AppMain.nnNormalizeVector(nns_VECTOR, nns_VECTOR);
        float intensity;

        if (AppMain.g_gs_main_sys_info.stage_id == 14)
        {
            intensity = 0.8f;
        }
        else
        {
            intensity = 1f;
        }
        AppMain.ObjDrawSetParallelLight(AppMain.NNE_LIGHT_2, ref nns_RGBA, intensity, nns_VECTOR);
        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR);
    }
Exemplo n.º 2
0
 // Token: 0x0600210D RID: 8461 RVA: 0x0014093C File Offset: 0x0013EB3C
 public static AppMain.NNS_MOTION_KEY_Class5 Read(BinaryReader reader)
 {
     AppMain.NNS_MOTION_KEY_Class5 nns_MOTION_KEY_Class = new AppMain.NNS_MOTION_KEY_Class5();
     nns_MOTION_KEY_Class.Frame = reader.ReadSingle();
     nns_MOTION_KEY_Class.Value.Assign(NNS_VECTOR.Read(reader));
     return(nns_MOTION_KEY_Class);
 }
Exemplo n.º 3
0
 public NNS_VECTOR4D Assign(NNS_VECTOR vec)
 {
     this.x = vec.x;
     this.y = vec.y;
     this.z = vec.z;
     return(this);
 }
Exemplo n.º 4
0
 // Token: 0x0600012D RID: 301 RVA: 0x0000D6EC File Offset: 0x0000B8EC
 public static void AllowSet(int cam_id, NNS_VECTOR allow)
 {
     obj_camera_sys.obj_camera[cam_id].allow.x = 0f;
     obj_camera_sys.obj_camera[cam_id].allow.y = 0f;
     obj_camera_sys.obj_camera[cam_id].allow.z = 0f;
     obj_camera_sys.obj_camera[cam_id].allow_limit.Assign(allow);
 }
Exemplo n.º 5
0
    // Token: 0x06000F5D RID: 3933 RVA: 0x0008803C File Offset: 0x0008623C
    public void amQuatVectorToQuat(ref NNS_QUATERNION pQuat, NNS_VECTOR4D pV1, NNS_VECTOR4D pV2)
    {
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        NNS_VECTOR nns_VECTOR2 = GlobalPool <NNS_VECTOR> .Alloc();

        NNS_VECTOR nns_VECTOR3 = GlobalPool <NNS_VECTOR> .Alloc();

        NNS_VECTOR nns_VECTOR4 = GlobalPool <NNS_VECTOR> .Alloc();

        AppMain.VEC3_COPY(nns_VECTOR, pV1);
        AppMain.VEC3_COPY(nns_VECTOR2, pV2);
        AppMain.nnAddVector(nns_VECTOR4, nns_VECTOR, nns_VECTOR2);
        float num = AppMain.nnDotProductVector(nns_VECTOR4, nns_VECTOR4);

        num = ( float )(1.0 / Math.Sqrt(( double )num));
        AppMain.nnScaleVector(nns_VECTOR2, nns_VECTOR4, num);
        AppMain.nnCrossProductVector(nns_VECTOR3, nns_VECTOR, nns_VECTOR2);
        AppMain.VEC3_COPY(pQuat, nns_VECTOR3);
        pQuat.w = AppMain.nnDotProductVector(nns_VECTOR, nns_VECTOR2);
        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR);

        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR2);

        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR3);

        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR4);
    }
 // Token: 0x0600199C RID: 6556 RVA: 0x000E847D File Offset: 0x000E667D
 public static void VEC3_COPY(NNS_QUATERNION d_vec, NNS_VECTOR s_vec)
 {
     d_vec.x = s_vec.x;
     d_vec.y = s_vec.y;
     d_vec.z = s_vec.z;
     d_vec.z = 0f;
 }
Exemplo n.º 7
0
    // Token: 0x06000783 RID: 1923 RVA: 0x000425D8 File Offset: 0x000407D8
    private static bool gmGmkBoss3RouteSetMoveParam(OBS_OBJECT_WORK target_obj_work, OBS_OBJECT_WORK gimmick_obj_work)
    {
        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)gimmick_obj_work;
        GMS_PLAYER_WORK           gms_PLAYER_WORK   = AppMain.g_gm_main_system.ply_work[(int)((UIntPtr)0)];
        float num = (float)gms_ENEMY_3D_WORK.ene_com.eve_rec.width / 10f;

        if (gms_PLAYER_WORK.obj_work.pos.y >= target_obj_work.pos.y && (gms_ENEMY_3D_WORK.ene_com.eve_rec.flag & 1) != 0 && AppMain.ObjViewOutCheck(target_obj_work.pos.x, target_obj_work.pos.y, 96, 0, 0, 0, 0) != 0)
        {
            target_obj_work.spd.x = 0;
            target_obj_work.spd.y = 0;
            return(false);
        }
        int        x          = gimmick_obj_work.pos.x + (int)(gms_ENEMY_3D_WORK.ene_com.eve_rec.left * 64) * 4096;
        int        x2         = gimmick_obj_work.pos.y + (int)(gms_ENEMY_3D_WORK.ene_com.eve_rec.top * 64) * 4096;
        float      num2       = AppMain.FX_FX32_TO_F32(x);
        float      num3       = AppMain.FX_FX32_TO_F32(x2);
        float      num4       = AppMain.FX_FX32_TO_F32(target_obj_work.pos.x);
        float      num5       = AppMain.FX_FX32_TO_F32(target_obj_work.pos.y);
        float      num6       = num2 - num4;
        float      num7       = num3 - num5;
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        AppMain.amVectorSet(nns_VECTOR, num6, num7, 0f);
        float num8 = 1f / AppMain.nnLengthVector(nns_VECTOR);
        float x3   = num6 * num8 * num;
        float x4   = num7 * num8 * num;

        target_obj_work.spd.x = AppMain.FX_F32_TO_FX32(x3);
        target_obj_work.spd.y = AppMain.FX_F32_TO_FX32(x4);
        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR);

        return(true);
    }
    // Token: 0x060019D4 RID: 6612 RVA: 0x000E90A4 File Offset: 0x000E72A4
    public static void amVectorGetInner(NNS_VECTOR pDst, NNS_VECTOR pV1, NNS_VECTOR pV2, float per)
    {
        float num = 1f - per;

        pDst.x = pV1.x * num + pV2.x * per;
        pDst.y = pV1.y * num + pV2.y * per;
        pDst.z = pV1.z * num + pV2.z * per;
    }
Exemplo n.º 9
0
 // Token: 0x06001990 RID: 6544 RVA: 0x000E81A3 File Offset: 0x000E63A3
 private static uint nnCalcClip(NNS_VECTOR center, float radius, NNS_MATRIX mtx)
 {
     if (radius == 0f)
     {
         return(0U);
     }
     radius *= AppMain.nnEstimateMatrixScaling(mtx);
     return(AppMain.nnCalcClipCore(center, radius, mtx));
 }
Exemplo n.º 10
0
    // Token: 0x06001E8D RID: 7821 RVA: 0x0013AA2C File Offset: 0x00138C2C
    public static NNS_VECTOR Read(BinaryReader reader)
    {
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        nns_VECTOR.x = reader.ReadSingle();
        nns_VECTOR.y = reader.ReadSingle();
        nns_VECTOR.z = reader.ReadSingle();
        return(nns_VECTOR);
    }
Exemplo n.º 11
0
 // Token: 0x06001991 RID: 6545 RVA: 0x000E81C1 File Offset: 0x000E63C1
 private static uint nnCalcClipUniformScale(NNS_VECTOR center, float radius, NNS_MATRIX mtx, float factor)
 {
     if (radius == 0f)
     {
         return(0U);
     }
     radius *= factor;
     return(AppMain.nnCalcClipCore(center, radius, mtx));
 }
Exemplo n.º 12
0
 // Token: 0x0600002C RID: 44 RVA: 0x00002A70 File Offset: 0x00000C70
 private static void amTrailEFOffsetPos(ushort handleId, NNS_VECTOR offset)
 {
     for (AppMain.AMS_TRAIL_EFFECT pNext = AppMain._amTrailEF_head.pNext; pNext != AppMain._amTrailEF_tail; pNext = pNext.pNext)
     {
         if ((pNext.handleId & handleId) != 0)
         {
             AppMain._amTrailAddPosition(pNext, offset);
         }
     }
 }
Exemplo n.º 13
0
    // Token: 0x06000F63 RID: 3939 RVA: 0x00088224 File Offset: 0x00086424
    public static void amQuatMultiMatrix(ref NNS_QUATERNION pQuat, NNS_VECTOR pVec)
    {
        NNS_MATRIX nns_MATRIX = AppMain.amMatrixGetCurrent();

        AppMain.nnMakeQuaternionMatrix(out AppMain.tempSNNS_MATRIX0, ref pQuat);
        if (pVec != null)
        {
            AppMain.nnCopyVectorMatrixTranslation(ref AppMain.tempSNNS_MATRIX0, pVec);
        }
        AppMain.nnMultiplyMatrix(nns_MATRIX, nns_MATRIX, ref AppMain.tempSNNS_MATRIX0);
    }
Exemplo n.º 14
0
    // Token: 0x06000D7D RID: 3453 RVA: 0x00076148 File Offset: 0x00074348
    private static void GmSplStageSetLight()
    {
        NNS_RGBA   nns_RGBA   = new NNS_RGBA(1f, 1f, 1f, 1f);
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        nns_VECTOR.x = -0.4f;
        nns_VECTOR.y = -0.4f;
        nns_VECTOR.z = -1f;
        AppMain.nnNormalizeVector(nns_VECTOR, nns_VECTOR);
        AppMain.ObjDrawSetParallelLight(AppMain.NNE_LIGHT_1, ref nns_RGBA, 1f, nns_VECTOR);
    }
Exemplo n.º 15
0
    // Token: 0x06000791 RID: 1937 RVA: 0x00043198 File Offset: 0x00041398
    public static void gmEneTStarAttackInit(OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_ENE_T_STAR_WORK gms_ENE_T_STAR_WORK = (AppMain.GMS_ENE_T_STAR_WORK)obj_work;
        NNS_MATRIX nns_MATRIX = GlobalPool <NNS_MATRIX> .Alloc();

        NNS_MATRIX nns_MATRIX2 = GlobalPool <NNS_MATRIX> .Alloc();

        AppMain.nnMakeUnitMatrix(nns_MATRIX);
        AppMain.nnMakeUnitMatrix(nns_MATRIX2);
        AppMain.nnMakeRotateZMatrix(nns_MATRIX2, AkMath.DEGtoA32(72));
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        for (int i = 0; i < 5; i++)
        {
            OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.GmEventMgrLocalEventBirth(308, obj_work.pos.x, obj_work.pos.y, 0, 0, 0, 0, 0, 0);
            obs_OBJECT_WORK.parent_obj = obj_work;
            obs_OBJECT_WORK.dir.y      = 49152;
            obs_OBJECT_WORK.dir.z      = ( ushort )AkMath.DEGtoA16(-72 * i);
            nns_VECTOR.x          = nns_MATRIX.M01;
            nns_VECTOR.y          = nns_MATRIX.M11;
            nns_VECTOR.z          = 0f;
            obs_OBJECT_WORK.spd.x = AppMain.FX_F32_TO_FX32(nns_VECTOR.x * 4f);
            obs_OBJECT_WORK.spd.y = -AppMain.FX_F32_TO_FX32(nns_VECTOR.y * 4f);
            OBS_OBJECT_WORK obs_OBJECT_WORK2 = obs_OBJECT_WORK;
            obs_OBJECT_WORK2.pos.x = obs_OBJECT_WORK2.pos.x + AppMain.FX_F32_TO_FX32(nns_VECTOR.x * 10f);
            OBS_OBJECT_WORK obs_OBJECT_WORK3 = obs_OBJECT_WORK;
            obs_OBJECT_WORK3.pos.y = obs_OBJECT_WORK3.pos.y + -AppMain.FX_F32_TO_FX32(nns_VECTOR.y * 10f);
            AppMain.nnMultiplyMatrix(nns_MATRIX, nns_MATRIX, nns_MATRIX2);
            AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
            gms_ENEMY_3D_WORK.ene_com.enemy_flag |= 32768U;
            AppMain.GMS_EFFECT_3DES_WORK gms_EFFECT_3DES_WORK = AppMain.GmEfctEneEsCreate(obs_OBJECT_WORK, 10);
            gms_EFFECT_3DES_WORK.efct_com.obj_work.dir.z = ( ushort )AkMath.DEGtoA16(-72 * i);
        }
        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR);

        obj_work.disp_flag       |= 32U;
        obj_work.disp_flag       |= 4U;
        obj_work.ppFunc           = AppMain.gmEneTStarAttackMain;
        obj_work.move_flag       &= 4294967291U;
        obj_work.spd.x            = 0;
        obj_work.spd.y            = 0;
        gms_ENE_T_STAR_WORK.timer = 300;
        AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK2 = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
        gms_ENEMY_3D_WORK2.ene_com.rect_work[1].flag &= 4294967291U;
        gms_ENEMY_3D_WORK2.ene_com.rect_work[0].flag &= 4294967291U;
        gms_ENEMY_3D_WORK2.ene_com.rect_work[2].flag &= 4294967291U;
        GmSound.PlaySE("Boss2_03");
        gms_ENEMY_3D_WORK2.ene_com.enemy_flag |= 65536U;
        GlobalPool <NNS_MATRIX> .Release(nns_MATRIX);

        GlobalPool <NNS_MATRIX> .Release(nns_MATRIX2);
    }
Exemplo n.º 16
0
    // Token: 0x06000D88 RID: 3464 RVA: 0x00076598 File Offset: 0x00074798
    private static void gmSplStageLightCtrl(AppMain.GMS_SPL_STG_WORK tcb_work)
    {
        NNS_RGBA   nns_RGBA   = new NNS_RGBA(1f, 1f, 1f, 1f);
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        AppMain.UNREFERENCED_PARAMETER(tcb_work);
        nns_VECTOR = AppMain.gmSplStageLightRot(-1f, -1f, -1f);
        AppMain.nnNormalizeVector(nns_VECTOR, nns_VECTOR);
        AppMain.ObjDrawSetParallelLight(AppMain.NNE_LIGHT_0, ref nns_RGBA, 1f, nns_VECTOR);
        nns_VECTOR = AppMain.gmSplStageLightRot(-0.4f, -0.4f, -1f);
        AppMain.nnNormalizeVector(nns_VECTOR, nns_VECTOR);
        AppMain.ObjDrawSetParallelLight(AppMain.NNE_LIGHT_1, ref nns_RGBA, 1f, nns_VECTOR);
    }
Exemplo n.º 17
0
    // Token: 0x06000E6A RID: 3690 RVA: 0x00080FB4 File Offset: 0x0007F1B4
    public static void gmBoss5TurretGetDispRotatedOfstPos(AppMain.GMS_BOSS5_TURRET_WORK trt_work, ref AppMain.VecFx32 src_ofst_pos, out AppMain.VecFx32 dest_ofst_pos)
    {
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        NNS_MATRIX nns_MATRIX = GlobalPool <NNS_MATRIX> .Alloc();

        AppMain.amVectorSet(nns_VECTOR, AppMain.FX_FX32_TO_F32(src_ofst_pos.x), AppMain.FX_FX32_TO_F32(-src_ofst_pos.y), AppMain.FX_FX32_TO_F32(src_ofst_pos.z));
        AppMain.nnMakeQuaternionMatrix(nns_MATRIX, ref trt_work.disp_quat);
        AppMain.nnTransformVector(nns_VECTOR, nns_MATRIX, nns_VECTOR);
        dest_ofst_pos = new AppMain.VecFx32(AppMain.FX_F32_TO_FX32(nns_VECTOR.x), AppMain.FX_F32_TO_FX32(-nns_VECTOR.y), AppMain.FX_F32_TO_FX32(nns_VECTOR.z));
        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR);

        GlobalPool <NNS_MATRIX> .Release(nns_MATRIX);
    }
        // Token: 0x060024CF RID: 9423 RVA: 0x0014B31C File Offset: 0x0014951C
        public GMS_EFFECT_CREATE_PARAM(int ame_idx, uint pos_type, uint init_flag, NNS_VECTOR disp_ofst,
                                       NNS_ROTATE_A16 disp_rot, float scale, AppMain.MPP_VOID_OBS_OBJECT_WORK main_func, int model_idx)
        {
            this.ame_idx   = ame_idx;
            this.pos_type  = pos_type;
            this.init_flag = init_flag;
            this.disp_ofst = GlobalPool <NNS_VECTOR> .Alloc();

            this.disp_ofst.Assign(disp_ofst);
            this.disp_rot  = disp_rot;
            this.scale     = scale;
            this.main_func = main_func;
            this.model_idx = model_idx;
        }
Exemplo n.º 19
0
    // Token: 0x06001852 RID: 6226 RVA: 0x000DB300 File Offset: 0x000D9500
    public static void amIPhoneAccelerate(ref Vector3 accel)
    {
        NNS_VECTOR core   = _am_iphone_accel_data.core;
        NNS_VECTOR sensor = _am_iphone_accel_data.sensor;

        core.x   = accel.X;
        core.y   = accel.Y;
        core.z   = accel.Z;
        sensor.x = -core.y;
        sensor.y = core.x;
        sensor.z = core.z;
        _am_iphone_accel_data.rot_x = nnArcTan2((double)(-(double)sensor.z), (double)(-(double)sensor.y));
        _am_iphone_accel_data.rot_z = nnArcTan2((double)sensor.x, (double)(-(double)sensor.y));
    }
    // Token: 0x060019E9 RID: 6633 RVA: 0x000E9758 File Offset: 0x000E7958
    public static float amVectorUnit(NNS_VECTOR pDst, ref SNNS_VECTOR4D pSrc)
    {
        float num = AppMain.amSqrt(AppMain.amPow2(pSrc.x) + AppMain.amPow2(pSrc.y) + AppMain.amPow2(pSrc.z));

        AppMain.nnCopyVector(pDst, ref pSrc);
        if (!AppMain.amIsZerof(num))
        {
            float num2 = 1f / num;
            pDst.x *= num2;
            pDst.y *= num2;
            pDst.z *= num2;
        }
        return(num);
    }
Exemplo n.º 21
0
    // Token: 0x06000D89 RID: 3465 RVA: 0x00076630 File Offset: 0x00074830
    private static NNS_VECTOR gmSplStageLightRot(float pos_x, float pos_y, float pos_z)
    {
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        float num  = pos_x * AppMain.nnSin((int)(-(int)AppMain.g_gm_main_system.pseudofall_dir));
        float num2 = pos_x * AppMain.nnCos((int)(-(int)AppMain.g_gm_main_system.pseudofall_dir));
        float num3 = pos_y * AppMain.nnSin((int)(-(int)AppMain.g_gm_main_system.pseudofall_dir));
        float num4 = pos_y * AppMain.nnCos((int)(-(int)AppMain.g_gm_main_system.pseudofall_dir));

        nns_VECTOR.x = num2 - num3;
        nns_VECTOR.y = num + num4;
        nns_VECTOR.z = pos_z;
        return(nns_VECTOR);
    }
Exemplo n.º 22
0
    // Token: 0x0600066B RID: 1643 RVA: 0x00038BA8 File Offset: 0x00036DA8
    public static OBS_OBJECT_WORK GmGmkTruckInit(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_TRUCK_WORK(), "GMK_TRUCK");

        AppMain.GMS_ENEMY_3D_WORK  gms_ENEMY_3D_WORK  = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK;
        AppMain.GMS_GMK_TRUCK_WORK gms_GMK_TRUCK_WORK = (AppMain.GMS_GMK_TRUCK_WORK)obs_OBJECT_WORK;
        AppMain.mtTaskChangeTcbDestructor(obs_OBJECT_WORK.tcb, AppMain.gmGmkTruckDest);
        AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_truck_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d);
        AppMain.ObjObjectAction3dNNMotionLoad(obs_OBJECT_WORK, 0, true, AppMain.ObjDataGet(930), null, 0, null);
        AppMain.ObjDrawObjectActionSet(obs_OBJECT_WORK, 0);
        AppMain.ObjCopyAction3dNNModel(AppMain.gm_gmk_truck_obj_3d_list[1], gms_GMK_TRUCK_WORK.obj_3d_tire);
        gms_ENEMY_3D_WORK.obj_3d.mtn_cb_func  = AppMain.gmGmkTruckMotionCallback;
        gms_ENEMY_3D_WORK.obj_3d.mtn_cb_param = gms_GMK_TRUCK_WORK;
        obs_OBJECT_WORK.ppOut            = AppMain.gmGmkTruckDispFunc;
        obs_OBJECT_WORK.flag            |= 1U;
        obs_OBJECT_WORK.move_flag       |= 128U;
        obs_OBJECT_WORK.disp_flag       |= 16777220U;
        obs_OBJECT_WORK.disp_flag       |= 16U;
        obs_OBJECT_WORK.obj_3d.blend_spd = 0.125f;
        gms_GMK_TRUCK_WORK.trans_r.x     = 0f;
        gms_GMK_TRUCK_WORK.trans_r.y     = 0f;
        gms_GMK_TRUCK_WORK.trans_r.z     = 4f / AppMain.FXM_FX32_TO_FLOAT(AppMain.g_obj.draw_scale.x);
        AppMain.nnMakeUnitMatrix(gms_ENEMY_3D_WORK.obj_3d.user_obj_mtx_r);
        AppMain.nnTranslateMatrix(gms_ENEMY_3D_WORK.obj_3d.user_obj_mtx_r, gms_ENEMY_3D_WORK.obj_3d.user_obj_mtx_r, gms_GMK_TRUCK_WORK.trans_r.x, gms_GMK_TRUCK_WORK.trans_r.y, gms_GMK_TRUCK_WORK.trans_r.z);
        AppMain.ObjObjectFieldRectSet(obs_OBJECT_WORK, ( short )AppMain.GMD_GMK_TRUCK_FIELD_RECT_LEFT, ( short )AppMain.GMD_GMK_TRUCK_FIELD_RECT_TOP, ( short )AppMain.GMD_GMK_TRUCK_FIELD_RECT_RIGHT, ( short )AppMain.GMD_GMK_TRUCK_FIELD_RECT_BOTTOM);
        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.ppDef = AppMain.gmGmkTruckBodyDefFunc;
        obs_RECT_WORK.ppHit = null;
        AppMain.ObjRectAtkSet(obs_RECT_WORK, 0, 0);
        AppMain.ObjRectWorkSet(obs_RECT_WORK, -64, -64, 64, 64);
        NNS_RGBA   nns_RGBA   = new NNS_RGBA(1f, 1f, 1f, 1f);
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        nns_VECTOR.x = -0.85f;
        nns_VECTOR.y = -0.45f;
        nns_VECTOR.z = -3.05f;
        AppMain.nnNormalizeVector(nns_VECTOR, nns_VECTOR);
        AppMain.ObjDrawSetParallelLight(AppMain.NNE_LIGHT_1, ref nns_RGBA, 1f, nns_VECTOR);
        gms_ENEMY_3D_WORK.obj_3d.use_light_flag       &= 4294967294U;
        gms_GMK_TRUCK_WORK.obj_3d_tire.use_light_flag &= 4294967294U;
        gms_ENEMY_3D_WORK.obj_3d.use_light_flag       |= 2U;
        gms_GMK_TRUCK_WORK.obj_3d_tire.use_light_flag |= 2U;
        AppMain.gmGmkTruckCreateLightEfct(gms_GMK_TRUCK_WORK);
        gms_ENEMY_3D_WORK.ene_com.enemy_flag |= 65536U;
        obs_OBJECT_WORK.obj_3d.command_state  = 16U;
        return(obs_OBJECT_WORK);
    }
Exemplo n.º 23
0
    // Token: 0x06000681 RID: 1665 RVA: 0x0003A978 File Offset: 0x00038B78
    public static void gmGmkTruckSparkEfctDispFunc(OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_GMK_TRUCK_WORK gms_GMK_TRUCK_WORK = (AppMain.GMS_GMK_TRUCK_WORK)obj_work.parent_obj;
        NNS_MATRIX nns_MATRIX = (NNS_MATRIX)obj_work.user_work_OBJECT;
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        if (obj_work.parent_obj == null)
        {
            GlobalPool <NNS_VECTOR> .Release(nns_VECTOR);

            return;
        }
        OBS_OBJECT_WORK obs_OBJECT_WORK = (OBS_OBJECT_WORK)gms_GMK_TRUCK_WORK.target_player;

        if (obs_OBJECT_WORK == null)
        {
            obs_OBJECT_WORK = ( OBS_OBJECT_WORK )gms_GMK_TRUCK_WORK;
        }
        AppMain.VecFx32 pos;
        pos.x = AppMain.FXM_FLOAT_TO_FX32(nns_MATRIX.M03);
        pos.y = AppMain.FXM_FLOAT_TO_FX32(-nns_MATRIX.M13);
        pos.z = AppMain.FXM_FLOAT_TO_FX32(nns_MATRIX.M23);
        ushort dir_z;
        ushort ang;

        if (obs_OBJECT_WORK.spd_m >= 0)
        {
            obj_work.disp_flag &= 4294967294U;
            dir_z = ( ushort )(8192 - obj_work.parent_obj.dir.z);
            ang   = ( ushort )(-obj_work.parent_obj.dir.z - 2048);
        }
        else
        {
            obj_work.disp_flag |= 1U;
            dir_z = ( ushort )(8192 + obj_work.parent_obj.dir.z);
            ang   = ( ushort )(obj_work.parent_obj.dir.z + 2048);
        }
        obj_work.pos = pos;
        nns_VECTOR.x = AppMain.nnSin(( int )ang) * AppMain.GMD_GMK_TRUCK_EFCT_SPRAK_OFST_DIST;
        nns_VECTOR.y = AppMain.nnCos(( int )ang) * AppMain.GMD_GMK_TRUCK_EFCT_SPRAK_OFST_DIST;
        nns_VECTOR.z = 0f;
        AppMain.GmComEfctSetDispOffsetF((AppMain.GMS_EFFECT_3DES_WORK)obj_work, nns_VECTOR.x, nns_VECTOR.y, nns_VECTOR.z);
        AppMain.GmComEfctSetDispRotation((AppMain.GMS_EFFECT_3DES_WORK)obj_work, 0, 0, dir_z);
        AppMain.ObjDrawActionSummary(obj_work);
        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR);
    }
    // Token: 0x060007AB RID: 1963 RVA: 0x00043C0C File Offset: 0x00041E0C
    private void dmLogoSegaObjSysytemInit()
    {
        NNS_RGBA   nns_RGBA   = new NNS_RGBA(1f, 1f, 1f, 1f);
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        NNS_VECTOR pos = new NNS_VECTOR(0f, 0f, 50f);

        AppMain.ObjInit(4, 61435, 0, AppMain.GMD_OBJ_LCD_X, AppMain.GMD_OBJ_LCD_Y, ( float )AppMain.GSD_DISP_WIDTH, ( float )AppMain.GSD_DISP_HEIGHT);
        AppMain.ObjDataAlloc(10);
        AppMain.ObjDrawESEffectSystemInit(0, 20480U, 0U);
        AppMain.ObjDrawSetNNCommandStateTbl(0U, 0U, true);
        AppMain.AoActSysClearPeak();
        AppMain.g_obj.flag             = 4259848U;
        AppMain.g_obj.ppPre            = null;
        AppMain.g_obj.ppPost           = null;
        AppMain.g_obj.ppCollision      = null;
        AppMain.g_obj.ppObjPre         = null;
        AppMain.g_obj.ppObjPost        = null;
        AppMain.g_obj.ppRegRecAuto     = null;
        AppMain.g_obj.draw_scale.x     = (AppMain.g_obj.draw_scale.y = (AppMain.g_obj.draw_scale.z = 29127));
        AppMain.g_obj.inv_draw_scale.x = (AppMain.g_obj.inv_draw_scale.y = (AppMain.g_obj.inv_draw_scale.z = AppMain.FX_Div(4096, AppMain.g_obj.draw_scale.x)));
        AppMain.g_obj.depth            = 128;
        AppMain.g_obj.ambient_color.r  = 0.8f;
        AppMain.g_obj.ambient_color.g  = 0.8f;
        AppMain.g_obj.ambient_color.b  = 0.8f;
        nns_VECTOR.x = -1f;
        nns_VECTOR.y = -1f;
        nns_VECTOR.z = -1f;
        AppMain.nnNormalizeVector(nns_VECTOR, nns_VECTOR);
        AppMain.ObjDrawSetParallelLight(AppMain.NNE_LIGHT_0, ref nns_RGBA, 1f, nns_VECTOR);
        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR);

        ObjCamera.Init(0, pos, 0, 0, 6144);
        ObjCamera.Init3d(0);
        AppMain.g_obj.glb_camera_id   = 0;
        AppMain.g_obj.glb_camera_type = 1;
        OBS_CAMERA obs_CAMERA = ObjCamera.Get(0);

        obs_CAMERA.user_func     = this.dmLogoSegaCamera;
        obs_CAMERA.command_state = 0U;
        obs_CAMERA.scale         = 0.9f;
        obs_CAMERA.ofst.z        = 1000f;
        this.amTrailEFInitialize();
    }
Exemplo n.º 25
0
    // Token: 0x06000038 RID: 56 RVA: 0x00003C0C File Offset: 0x00001E0C
    private static void _amTrailDrawPartsNormalTex(AppMain.AMS_TRAIL_PARTS pNow, AppMain.AMS_TRAIL_PARAM work, AppMain.NNS_PRIM3D_PCT[] _pv, int pv)
    {
        int   num   = pv - 6;
        float scale = work.startSize;
        float num2  = (float)(work.trailPartsNum - work.list_no) / (float)work.trailPartsNum;

        num2 *= work.vanish_rate;
        scale = work.startSize * num2 + work.endSize * (1f - num2);
        NNS_RGBA nns_RGBA;

        nns_RGBA.r = work.startColor.r * num2 + work.endColor.r * (1f - num2);
        nns_RGBA.g = work.startColor.g * num2 + work.endColor.g * (1f - num2);
        nns_RGBA.b = work.startColor.b * num2 + work.endColor.b * (1f - num2);
        nns_RGBA.a = work.startColor.a * num2 + work.endColor.a * (1f - num2);
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        NNS_VECTOR nns_VECTOR2 = GlobalPool <NNS_VECTOR> .Alloc();

        NNS_VECTOR nns_VECTOR3 = GlobalPool <NNS_VECTOR> .Alloc();

        AppMain.nnDistanceVector(pNow.pos, AppMain._am_ef_camPos);
        AppMain.amVectorSet(nns_VECTOR3, 0f, 0f, 1f);
        AppMain.nnCrossProductVector(nns_VECTOR, nns_VECTOR3, pNow.dir);
        AppMain.nnNormalizeVector(nns_VECTOR, nns_VECTOR);
        AppMain.nnScaleVector(nns_VECTOR2, nns_VECTOR, scale);
        AppMain.nnAddVector(ref _pv[pv + 1].Pos, pNow.pPrev.pos, nns_VECTOR2);
        AppMain.nnSubtractVector(ref _pv[pv + 5].Pos, pNow.pPrev.pos, nns_VECTOR2);
        _pv[pv]           = _pv[num + 1];
        _pv[pv + 2]       = _pv[num + 5];
        _pv[pv + 4]       = _pv[pv + 2];
        _pv[pv + 5].Col   = AppMain.AMD_FCOLTORGBA8888(nns_RGBA.r, nns_RGBA.g, nns_RGBA.b, nns_RGBA.a);
        _pv[pv + 1].Col   = _pv[pv + 5].Col;
        _pv[pv + 1].Tex.u = num2;
        _pv[pv + 1].Tex.v = 0f;
        _pv[pv + 5].Tex.u = num2;
        _pv[pv + 5].Tex.v = 1f;
        _pv[pv + 3]       = _pv[pv + 1];
        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR);

        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR2);

        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR3);
    }
    // Token: 0x06000501 RID: 1281 RVA: 0x0002B054 File Offset: 0x00029254
    private static void gmBoss5LdPartInitSpin(AppMain.GMS_BOSS5_LDPART_WORK ldpart_work)
    {
        AppMain.nnMakeUnitQuaternion(ref ldpart_work.cur_rot_quat);
        AppMain.nnMakeUnitQuaternion(ref ldpart_work.rot_diff_quat);
        int num = 0;

        while (( long )num < ( long )(( ulong )AppMain.GMD_BOSS5_LAND_LDPART_SPIN_ROT_AXIS_NUM))
        {
            NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

            float num2 = AppMain.FX_FX32_TO_F32(AkMath.RandFx()) * 2f - 1f;
            num2 = AppMain.MTM_MATH_CLIP(num2, -1f, 1f);
            short rand_angle = AkMath.DEGtoA16(360f * AppMain.FX_FX32_TO_F32(AkMath.RandFx()));
            AkMath.GetRandomUnitVector(nns_VECTOR, num2, rand_angle);
            NNS_QUATERNION nns_QUATERNION;
            AppMain.nnMakeRotateAxisQuaternion(out nns_QUATERNION, nns_VECTOR.x, nns_VECTOR.y, nns_VECTOR.z, AppMain.GMD_BOSS5_LAND_LDPART_SPIN_ROT_SPD_DEG);
            AppMain.nnMultiplyQuaternion(ref ldpart_work.rot_diff_quat, ref nns_QUATERNION, ref ldpart_work.rot_diff_quat);
            num++;
        }
    }
Exemplo n.º 27
0
    // Token: 0x06000544 RID: 1348 RVA: 0x0002CB04 File Offset: 0x0002AD04
    private static void gmGmkTarzanRopeUpdatePlayerPos(OBS_OBJECT_WORK obj_work)
    {
        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           gms_PLAYER_WORK   = (GMS_PLAYER_WORK)target_obj;
        NNS_MATRIX nns_MATRIX = new NNS_MATRIX();

        AppMain.nnMakeUnitMatrix(nns_MATRIX);
        nns_MATRIX.M11 = AppMain.g_gm_gmk_tarzan_rope_active_matrix.M11;
        nns_MATRIX.M22 = AppMain.g_gm_gmk_tarzan_rope_active_matrix.M00;
        nns_MATRIX.M21 = AppMain.g_gm_gmk_tarzan_rope_active_matrix.M01;
        nns_MATRIX.M12 = AppMain.g_gm_gmk_tarzan_rope_active_matrix.M10;
        nns_MATRIX.M03 = -5f;
        AkMath.NormalizeMtx(gms_PLAYER_WORK.ex_obj_mtx_r, nns_MATRIX);
        if ((target_obj.disp_flag & 1U) != 0U)
        {
            gms_PLAYER_WORK.ex_obj_mtx_r.M21 = -gms_PLAYER_WORK.ex_obj_mtx_r.M21;
            gms_PLAYER_WORK.ex_obj_mtx_r.M12 = -gms_PLAYER_WORK.ex_obj_mtx_r.M12;
            nns_MATRIX.M03 = -nns_MATRIX.M03;
        }
        int num = (int)((int)(gms_ENEMY_3D_WORK.ene_com.enemy_flag & 65535U) << 12);

        num += 24576;
        if (num > 393216)
        {
            num = 393216;
        }
        gms_ENEMY_3D_WORK.ene_com.enemy_flag &= 4294901760U;
        gms_ENEMY_3D_WORK.ene_com.enemy_flag |= ( uint )(num >> 12);
        float num2 = (float)num / 393216f;

        num2  = -num2 * 20f;
        num2 += 15f;
        NNS_VECTOR nns_VECTOR = new NNS_VECTOR(0f, num2, 0f);

        AppMain.nnTransformVector(nns_VECTOR, nns_MATRIX, nns_VECTOR);
        target_obj.pos.x          = AppMain.FX_F32_TO_FX32(AppMain.g_gm_gmk_tarzan_rope_active_matrix.M03 + nns_VECTOR.z);
        target_obj.pos.y          = -AppMain.FX_F32_TO_FX32(AppMain.g_gm_gmk_tarzan_rope_active_matrix.M13 + nns_VECTOR.y);
        target_obj.pos.z          = AppMain.FX_F32_TO_FX32(AppMain.g_gm_gmk_tarzan_rope_active_matrix.M23 + nns_VECTOR.x);
        gms_PLAYER_WORK.gmk_flag |= 32768U;
    }
Exemplo n.º 28
0
 // Token: 0x0600003A RID: 58 RVA: 0x00003F70 File Offset: 0x00002170
 private static void _amTrailAddPosition(AppMain.AMS_TRAIL_EFFECT pEffect, NNS_VECTOR offset)
 {
     AppMain.AMS_TRAIL_PARAM     work = pEffect.Work;
     AppMain.AMS_TRAIL_PARTSDATA ams_TRAIL_PARTSDATA = AppMain.pTr.trailData[(int)work.trailId];
     AppMain.AMS_TRAIL_PARTS     trailTail           = ams_TRAIL_PARTSDATA.trailTail;
     AppMain.AMS_TRAIL_PARTS     trailHead           = ams_TRAIL_PARTSDATA.trailHead;
     AppMain.AMS_TRAIL_PARTS     pPrev = trailTail.pPrev;
     if (trailTail.pPrev.pPrev == trailHead)
     {
         return;
     }
     if (work.time <= 0f)
     {
         return;
     }
     while (pPrev != trailHead)
     {
         AppMain.nnAddVector(pPrev.pos, pPrev.pos, offset);
         pPrev = pPrev.pPrev;
     }
 }
Exemplo n.º 29
0
    // Token: 0x060018C0 RID: 6336 RVA: 0x000E1CDC File Offset: 0x000DFEDC
    private void DmTitleOpInit()
    {
        NNS_RGBA   nns_RGBA   = new NNS_RGBA(1f, 1f, 1f, 1f);
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        nns_VECTOR.Clear();
        NNS_VECTOR pos = new NNS_VECTOR(0f, 0f, 50f);

        AppMain.g_obj.flag             = 4259848U;
        AppMain.g_obj.ppPre            = null;
        AppMain.g_obj.ppPost           = null;
        AppMain.g_obj.ppCollision      = null;
        AppMain.g_obj.ppObjPre         = null;
        AppMain.g_obj.ppObjPost        = null;
        AppMain.g_obj.ppRegRecAuto     = null;
        AppMain.g_obj.draw_scale.x     = (AppMain.g_obj.draw_scale.y = (AppMain.g_obj.draw_scale.z = 13107));
        AppMain.g_obj.inv_draw_scale.x = (AppMain.g_obj.inv_draw_scale.y = (AppMain.g_obj.inv_draw_scale.z = AppMain.FX_Div(4096, AppMain.g_obj.draw_scale.x)));
        AppMain.g_obj.depth            = 128;
        AppMain.g_obj.ambient_color.r  = 0.8f;
        AppMain.g_obj.ambient_color.g  = 0.8f;
        AppMain.g_obj.ambient_color.b  = 0.8f;
        nns_VECTOR.x = -1f;
        nns_VECTOR.y = -1f;
        nns_VECTOR.z = -1f;
        AppMain.nnNormalizeVector(nns_VECTOR, nns_VECTOR);
        AppMain.ObjDrawSetParallelLight(AppMain.NNE_LIGHT_0, ref nns_RGBA, 1f, nns_VECTOR);
        ObjCamera.Init(0, pos, 0, 0, 12288);
        ObjCamera.Init3d(0);
        AppMain.g_obj.glb_camera_id   = 0;
        AppMain.g_obj.glb_camera_type = 0;
        OBS_CAMERA obs_CAMERA = ObjCamera.Get(0);

        obs_CAMERA.user_func     = this.dmTitleOpCamera;
        obs_CAMERA.command_state = 0U;
        obs_CAMERA.fovy          = AppMain.NNM_DEGtoA32(40f);
        obs_CAMERA.znear         = 0.1f;
        obs_CAMERA.zfar          = 32768f;
        this.dmTitleOpMgrInit();
        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR);
    }
Exemplo n.º 30
0
    // Token: 0x060018AE RID: 6318 RVA: 0x000E130C File Offset: 0x000DF50C
    private static void GmGmkBreakLandSetLight()
    {
        NNS_RGBA   nns_RGBA   = default(NNS_RGBA);
        NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc();

        nns_VECTOR.x = -0.5f;
        nns_VECTOR.y = -0.05f;
        nns_VECTOR.z = -1f;
        nns_RGBA.r   = 0.65f;
        nns_RGBA.g   = 0.65f;
        nns_RGBA.b   = 0.65f;
        AppMain.nnNormalizeVector(nns_VECTOR, nns_VECTOR);
        AppMain.ObjDrawSetParallelLight(AppMain.NNE_LIGHT_1, ref nns_RGBA, 1f, nns_VECTOR);
        nns_VECTOR.x = 0.4f;
        nns_VECTOR.y = -0.05f;
        nns_VECTOR.z = -1f;
        nns_RGBA.r   = 0.65f;
        nns_RGBA.g   = 0.65f;
        nns_RGBA.b   = 0.65f;
        AppMain.nnNormalizeVector(nns_VECTOR, nns_VECTOR);
        AppMain.ObjDrawSetParallelLight(AppMain.NNE_LIGHT_2, ref nns_RGBA, 1f, nns_VECTOR);
        GlobalPool <NNS_VECTOR> .Release(nns_VECTOR);
    }