Пример #1
0
    private static void gmGmkSsOblongDrawFunc(AppMain.OBS_OBJECT_WORK obj_work)
    {
        AppMain.OBS_ACTION3D_NN_WORK obj3d = obj_work.obj_3d;
        if (!AppMain.GmMainIsDrawEnable() || ((int)obj_work.disp_flag & 32) != 0)
        {
            return;
        }
        if (AppMain.gmGmkSsOblongDrawFunctvx == null)
        {
            AppMain.gmGmkSsOblongDrawFunctvx = new AppMain.TVX_FILE((AppMain.AmbChunk)AppMain.amBindGet(AppMain.gm_gmk_ss_oblong_obj_tvx_list, 0));
        }
        AppMain.NNS_TEXLIST texlist = obj_work.obj_3d.texlist;
        uint dispLightDisable       = AppMain.GMD_TVX_DISP_LIGHT_DISABLE;
        uint num1 = 0;

        if (obj_work.dir.z != (ushort)0)
        {
            dispLightDisable |= AppMain.GMD_TVX_DISP_ROTATE;
            num1              = (uint)obj_work.dir.z;
        }
        AppMain.GMS_TVX_EX_WORK ex_work = new AppMain.GMS_TVX_EX_WORK();
        uint num2 = (uint)(obj_work.user_timer / 3);

        ex_work.u_wrap  = 1;
        ex_work.v_wrap  = 1;
        ex_work.coord.u = 0.125f * (float)(num2 % 8U) + AppMain.gm_gmk_ss_oblong_mat_color[(int)obj_work.user_work].u;
        ex_work.coord.v = 0.125f * (float)(num2 / 8U) + AppMain.gm_gmk_ss_oblong_mat_color[(int)obj_work.user_work].v;
        ex_work.color   = uint.MaxValue;
        AppMain.GmTvxSetModelEx(AppMain.gmGmkSsOblongDrawFunctvx, texlist, ref obj_work.pos, ref obj_work.scale, dispLightDisable, (short)num1, ref ex_work);
    }
Пример #2
0
    // Token: 0x06000B23 RID: 2851 RVA: 0x000647C8 File Offset: 0x000629C8
    private static void gmGmkSsOblongDrawFunc(AppMain.OBS_OBJECT_WORK obj_work)
    {
        AppMain.OBS_ACTION3D_NN_WORK obj_3d = obj_work.obj_3d;
        if (!AppMain.GmMainIsDrawEnable())
        {
            return;
        }
        if ((obj_work.disp_flag & 32U) != 0U)
        {
            return;
        }
        if (AppMain.gmGmkSsOblongDrawFunctvx == null)
        {
            AppMain.gmGmkSsOblongDrawFunctvx = new AppMain.TVX_FILE((AppMain.AmbChunk)AppMain.amBindGet(AppMain.gm_gmk_ss_oblong_obj_tvx_list, 0));
        }
        AppMain.NNS_TEXLIST texlist = obj_work.obj_3d.texlist;
        uint num  = AppMain.GMD_TVX_DISP_LIGHT_DISABLE;
        uint num2 = 0U;

        if (obj_work.dir.z != 0)
        {
            num |= AppMain.GMD_TVX_DISP_ROTATE;
            num2 = ( uint )obj_work.dir.z;
        }
        AppMain.GMS_TVX_EX_WORK gms_TVX_EX_WORK = default(AppMain.GMS_TVX_EX_WORK);
        uint num3 = (uint)(obj_work.user_timer / 3);

        gms_TVX_EX_WORK.u_wrap  = 1;
        gms_TVX_EX_WORK.v_wrap  = 1;
        gms_TVX_EX_WORK.coord.u = 0.125f * (num3 % 8U) + AppMain.gm_gmk_ss_oblong_mat_color[( int )(( UIntPtr )obj_work.user_work)].u;
        gms_TVX_EX_WORK.coord.v = 0.125f * (num3 / 8U) + AppMain.gm_gmk_ss_oblong_mat_color[( int )(( UIntPtr )obj_work.user_work)].v;
        gms_TVX_EX_WORK.color   = uint.MaxValue;
        AppMain.GmTvxSetModelEx(AppMain.gmGmkSsOblongDrawFunctvx, texlist, ref obj_work.pos, ref obj_work.scale, num, ( short )num2, ref gms_TVX_EX_WORK);
    }
Пример #3
0
    private static void gmGmkSsSquareDrawFunc(AppMain.OBS_OBJECT_WORK obj_work)
    {
        if (!AppMain.GmMainIsDrawEnable() || ((int)obj_work.disp_flag & 32) != 0)
        {
            return;
        }
        AppMain.TVX_FILE model_tvx;
        if (AppMain.gm_gmk_ss_square_obj_tvx_list.buf[0] == null)
        {
            model_tvx = new AppMain.TVX_FILE((AppMain.AmbChunk)AppMain.amBindGet(AppMain.gm_gmk_ss_square_obj_tvx_list, 0));
            AppMain.gm_gmk_ss_square_obj_tvx_list.buf[0] = (object)model_tvx;
        }
        else
        {
            model_tvx = (AppMain.TVX_FILE)AppMain.gm_gmk_ss_square_obj_tvx_list.buf[0];
        }
        AppMain.NNS_TEXLIST     texlist = obj_work.obj_3d.texlist;
        AppMain.GMS_TVX_EX_WORK ex_work = new AppMain.GMS_TVX_EX_WORK();
        uint num = (uint)(obj_work.user_timer >> 5 & 31);

        ex_work.u_wrap  = 1;
        ex_work.v_wrap  = 1;
        ex_work.coord.u = 0.125f * (float)((int)AppMain.gm_gmk_ss_square_uv_parameter[(int)num] % 4) + AppMain.gm_gmk_ss_square_mat_color[(int)(obj_work.user_work - 1U)].u;
        ex_work.coord.v = 0.125f * (float)((int)AppMain.gm_gmk_ss_square_uv_parameter[(int)num] / 4) + AppMain.gm_gmk_ss_square_mat_color[(int)(obj_work.user_work - 1U)].v;
        ex_work.color   = uint.MaxValue;
        AppMain.GmTvxSetModelEx(model_tvx, texlist, ref obj_work.pos, ref obj_work.scale, AppMain.GMD_TVX_DISP_LIGHT_DISABLE, (short)0, ref ex_work);
    }
    // Token: 0x06000771 RID: 1905 RVA: 0x00041C30 File Offset: 0x0003FE30
    private static void gmGmkSsEnduranceDrawFunc(AppMain.OBS_OBJECT_WORK obj_work)
    {
        AppMain.OBS_ACTION3D_NN_WORK obj_3d = obj_work.obj_3d;
        if (!AppMain.GmMainIsDrawEnable())
        {
            return;
        }
        if ((obj_work.disp_flag & 32U) != 0U)
        {
            return;
        }
        AppMain.TVX_FILE tvx_FILE;
        if (AppMain.gm_gmk_ss_endurance_obj_tvx_list.buf[0] == null)
        {
            tvx_FILE = new AppMain.TVX_FILE((AppMain.AmbChunk)AppMain.amBindGet(AppMain.gm_gmk_ss_endurance_obj_tvx_list, 0));
            AppMain.gm_gmk_ss_endurance_obj_tvx_list.buf[0] = tvx_FILE;
        }
        else
        {
            tvx_FILE = (AppMain.TVX_FILE)AppMain.gm_gmk_ss_endurance_obj_tvx_list.buf[0];
        }
        AppMain.NNS_TEXLIST     texlist         = obj_work.obj_3d.texlist;
        AppMain.GMS_TVX_EX_WORK gms_TVX_EX_WORK = default(AppMain.GMS_TVX_EX_WORK);
        uint num = (uint)obj_work.user_timer >> 10 & 31U;

        gms_TVX_EX_WORK.u_wrap  = 1;
        gms_TVX_EX_WORK.v_wrap  = 1;
        gms_TVX_EX_WORK.coord.u = 0.125f * ( float )(AppMain.gm_gmk_ss_endurance_uv_parameter[( int )(( UIntPtr )num)] % 4) + AppMain.gm_gmk_ss_endurance_mat_color[( int )(( UIntPtr )obj_work.user_work)].u;
        gms_TVX_EX_WORK.coord.v = 0.125f * ( float )(AppMain.gm_gmk_ss_endurance_uv_parameter[( int )(( UIntPtr )num)] / 4) + AppMain.gm_gmk_ss_endurance_mat_color[( int )(( UIntPtr )obj_work.user_work)].v;
        gms_TVX_EX_WORK.color   = uint.MaxValue;
        AppMain.GmTvxSetModelEx(tvx_FILE, texlist, ref obj_work.pos, ref obj_work.scale, AppMain.GMD_TVX_DISP_SCALE | AppMain.GMD_TVX_DISP_LIGHT_DISABLE, 0, ref gms_TVX_EX_WORK);
    }
Пример #5
0
    private static void gmGmkSsCircleDrawFunc(AppMain.OBS_OBJECT_WORK obj_work)
    {
        if (!AppMain.GmMainIsDrawEnable() || ((int)obj_work.disp_flag & 32) != 0)
        {
            return;
        }
        AppMain.TVX_FILE model_tvx;
        if (AppMain.gm_gmk_ss_circle_obj_tvx_list.buf[0] == null)
        {
            model_tvx = new AppMain.TVX_FILE((AppMain.AmbChunk)AppMain.amBindGet(AppMain.gm_gmk_ss_circle_obj_tvx_list, 0));
            AppMain.gm_gmk_ss_circle_obj_tvx_list.buf[0] = (object)model_tvx;
        }
        else
        {
            model_tvx = (AppMain.TVX_FILE)AppMain.gm_gmk_ss_circle_obj_tvx_list.buf[0];
        }
        AppMain.NNS_TEXLIST texlist = obj_work.obj_3d.texlist;
        uint flag = AppMain.GMD_TVX_DISP_LIGHT_DISABLE | AppMain.GMD_TVX_DISP_ROTATE;

        AppMain.GMS_TVX_EX_WORK ex_work = new AppMain.GMS_TVX_EX_WORK();
        ex_work.u_wrap  = 1;
        ex_work.v_wrap  = 1;
        ex_work.coord.u = 0.0f;
        ex_work.coord.v = 0.0f;
        ex_work.color   = uint.MaxValue;
        if ((double)obj_work.obj_3d.draw_state.alpha.alpha == 0.5)
        {
            ex_work.color = 4294967176U;
            flag         |= AppMain.GMD_TVX_DISP_BLEND;
        }
        AppMain.GmTvxSetModelEx(model_tvx, texlist, ref obj_work.pos, ref obj_work.scale, flag, (short)-obj_work.dir.z, ref ex_work);
    }
Пример #6
0
    private static void gmGmkSsRingGateDrawFunc(AppMain.OBS_OBJECT_WORK obj_work)
    {
        if (!AppMain.GmMainIsDrawEnable() || ((int)obj_work.disp_flag & 32) != 0)
        {
            return;
        }
        AppMain.TVX_FILE model_tvx;
        if (AppMain.gm_gmk_ss_ringgate_obj_tvx_list.buf[0] == null)
        {
            model_tvx = new AppMain.TVX_FILE((AppMain.AmbChunk)AppMain.amBindGet(AppMain.gm_gmk_ss_ringgate_obj_tvx_list, 0));
            AppMain.gm_gmk_ss_ringgate_obj_tvx_list.buf[0] = (object)model_tvx;
        }
        else
        {
            model_tvx = (AppMain.TVX_FILE)AppMain.gm_gmk_ss_ringgate_obj_tvx_list.buf[0];
        }
        AppMain.NNS_TEXLIST texlist = obj_work.obj_3d.texlist;
        uint dispLightDisable       = AppMain.GMD_TVX_DISP_LIGHT_DISABLE;
        uint num1 = 0;

        if (obj_work.dir.z != (ushort)0)
        {
            dispLightDisable |= AppMain.GMD_TVX_DISP_ROTATE;
            num1              = (uint)obj_work.dir.z;
        }
        AppMain.GMS_TVX_EX_WORK ex_work = new AppMain.GMS_TVX_EX_WORK();
        uint num2 = obj_work.user_flag >> 13 & 3U;

        ex_work.u_wrap  = 0;
        ex_work.v_wrap  = 0;
        ex_work.coord.u = -0.25f * (float)num2;
        ex_work.coord.v = 0.0f;
        ex_work.color   = uint.MaxValue;
        AppMain.GmTvxSetModelEx(model_tvx, texlist, ref obj_work.pos, ref obj_work.scale, dispLightDisable, (short)num1, ref ex_work);
    }
Пример #7
0
    // Token: 0x06000284 RID: 644 RVA: 0x00014B44 File Offset: 0x00012D44
    private static void gmGmkBeltConveyor_ppOut(OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_GMK_BELTC_WORK gms_GMK_BELTC_WORK = (AppMain.GMS_GMK_BELTC_WORK)obj_work;
        if (!AppMain.GmMainIsDrawEnable())
        {
            return;
        }
        if ((obj_work.disp_flag & 32U) != 0U)
        {
            return;
        }
        if (AppMain._tvx_roller == null)
        {
            AppMain._tvx_roller    = new AppMain.TVX_FILE(( AmbChunk )AmBind.Get(AppMain.gm_gmk_beltconv_obj_tvx_list, 0));
            AppMain._tvx_axis      = new AppMain.TVX_FILE(( AmbChunk )AmBind.Get(AppMain.gm_gmk_beltconv_obj_tvx_list, 1));
            AppMain._tvx_belt_up   = new AppMain.TVX_FILE(( AmbChunk )AmBind.Get(AppMain.gm_gmk_beltconv_obj_tvx_list, 2));
            AppMain._tvx_belt_down = new AppMain.TVX_FILE(( AmbChunk )AmBind.Get(AppMain.gm_gmk_beltconv_obj_tvx_list, 3));
        }
        AppMain.TVX_FILE    tvx_roller    = AppMain._tvx_roller;
        AppMain.TVX_FILE    tvx_axis      = AppMain._tvx_axis;
        AppMain.TVX_FILE    tvx_belt_up   = AppMain._tvx_belt_up;
        AppMain.TVX_FILE    tvx_belt_down = AppMain._tvx_belt_down;
        AppMain.NNS_TEXLIST texlist       = obj_work.obj_3d.texlist;
        short rotate_z = (short)(-(short)obj_work.dir.z);

        AppMain.VecFx32 pos = obj_work.pos;
        AppMain.GmTvxSetModel(tvx_roller, texlist, ref pos, ref obj_work.scale, AppMain.GMD_TVX_DISP_ROTATE, rotate_z);
        pos.z += 4096;
        AppMain.GmTvxSetModel(tvx_axis, texlist, ref pos, ref obj_work.scale, 0U, 0);
        pos.x += gms_GMK_BELTC_WORK.roller;
        AppMain.GmTvxSetModel(tvx_axis, texlist, ref pos, ref obj_work.scale, 0U, 0);
        pos.z -= 4096;
        AppMain.GmTvxSetModel(tvx_roller, texlist, ref pos, ref obj_work.scale, AppMain.GMD_TVX_DISP_ROTATE, rotate_z);
        pos.x -= gms_GMK_BELTC_WORK.roller;
        int num  = (gms_GMK_BELTC_WORK.vect == 0) ? 262144 : -262144;
        int num2 = gms_GMK_BELTC_WORK.roller;

        AppMain.GMS_TVX_EX_WORK gms_TVX_EX_WORK = default(AppMain.GMS_TVX_EX_WORK);
        gms_TVX_EX_WORK.u_wrap  = 1;
        gms_TVX_EX_WORK.v_wrap  = 1;
        gms_TVX_EX_WORK.coord.v = 0f;
        gms_TVX_EX_WORK.color   = 0U;
        pos.y += -65536;
        pos.z  = -73728;
        if (gms_GMK_BELTC_WORK.vect == 32768)
        {
            pos.x += num;
        }
        while (num2 != 0)
        {
            gms_TVX_EX_WORK.coord.u = gms_GMK_BELTC_WORK.tex_u;
            AppMain.GmTvxSetModelEx(tvx_belt_up, texlist, ref pos, ref obj_work.scale, 0U, 0, ref gms_TVX_EX_WORK);
            pos.y -= -131072;
            gms_TVX_EX_WORK.coord.u = -gms_GMK_BELTC_WORK.tex_u;
            AppMain.GmTvxSetModelEx(tvx_belt_down, texlist, ref pos, ref obj_work.scale, 0U, 0, ref gms_TVX_EX_WORK);
            pos.y += -131072;
            pos.x += num;
            num2  -= num;
        }
    }
Пример #8
0
 // Token: 0x0600052A RID: 1322 RVA: 0x0002B730 File Offset: 0x00029930
 private static void GmTvxSetModel(AppMain.TVX_FILE model_tvx, AppMain.NNS_TEXLIST model_tex, ref AppMain.VecFx32 pos, ref AppMain.VecFx32 scale, uint flag, short rotate_z)
 {
     AppMain.GMS_TVX_EX_WORK gms_TVX_EX_WORK = default(AppMain.GMS_TVX_EX_WORK);
     gms_TVX_EX_WORK.u_wrap  = 1;
     gms_TVX_EX_WORK.v_wrap  = 1;
     gms_TVX_EX_WORK.coord.u = 0f;
     gms_TVX_EX_WORK.coord.v = 0f;
     gms_TVX_EX_WORK.color   = uint.MaxValue;
     AppMain.GmTvxSetModelEx(model_tvx, model_tex, ref pos, ref scale, flag, rotate_z, ref gms_TVX_EX_WORK);
 }
Пример #9
0
    private static void gmGmkBeltConveyor_ppOut(AppMain.OBS_OBJECT_WORK obj_work)
    {
        AppMain.GMS_GMK_BELTC_WORK gmsGmkBeltcWork = (AppMain.GMS_GMK_BELTC_WORK)obj_work;
        if (!AppMain.GmMainIsDrawEnable() || ((int)obj_work.disp_flag & 32) != 0)
        {
            return;
        }
        if (AppMain._tvx_roller == null)
        {
            AppMain._tvx_roller    = new AppMain.TVX_FILE((AppMain.AmbChunk)AppMain.amBindGet(AppMain.gm_gmk_beltconv_obj_tvx_list, 0));
            AppMain._tvx_axis      = new AppMain.TVX_FILE((AppMain.AmbChunk)AppMain.amBindGet(AppMain.gm_gmk_beltconv_obj_tvx_list, 1));
            AppMain._tvx_belt_up   = new AppMain.TVX_FILE((AppMain.AmbChunk)AppMain.amBindGet(AppMain.gm_gmk_beltconv_obj_tvx_list, 2));
            AppMain._tvx_belt_down = new AppMain.TVX_FILE((AppMain.AmbChunk)AppMain.amBindGet(AppMain.gm_gmk_beltconv_obj_tvx_list, 3));
        }
        AppMain.TVX_FILE    tvxRoller   = AppMain._tvx_roller;
        AppMain.TVX_FILE    tvxAxis     = AppMain._tvx_axis;
        AppMain.TVX_FILE    tvxBeltUp   = AppMain._tvx_belt_up;
        AppMain.TVX_FILE    tvxBeltDown = AppMain._tvx_belt_down;
        AppMain.NNS_TEXLIST texlist     = obj_work.obj_3d.texlist;
        short rotate_z = (short)-obj_work.dir.z;

        AppMain.VecFx32 pos = obj_work.pos;
        AppMain.GmTvxSetModel(tvxRoller, texlist, ref pos, ref obj_work.scale, AppMain.GMD_TVX_DISP_ROTATE, rotate_z);
        pos.z += 4096;
        AppMain.GmTvxSetModel(tvxAxis, texlist, ref pos, ref obj_work.scale, 0U, (short)0);
        pos.x += gmsGmkBeltcWork.roller;
        AppMain.GmTvxSetModel(tvxAxis, texlist, ref pos, ref obj_work.scale, 0U, (short)0);
        pos.z -= 4096;
        AppMain.GmTvxSetModel(tvxRoller, texlist, ref pos, ref obj_work.scale, AppMain.GMD_TVX_DISP_ROTATE, rotate_z);
        pos.x -= gmsGmkBeltcWork.roller;
        int num    = gmsGmkBeltcWork.vect == (ushort)0 ? 262144 : -262144;
        int roller = gmsGmkBeltcWork.roller;

        AppMain.GMS_TVX_EX_WORK ex_work = new AppMain.GMS_TVX_EX_WORK();
        ex_work.u_wrap  = 1;
        ex_work.v_wrap  = 1;
        ex_work.coord.v = 0.0f;
        ex_work.color   = 0U;
        pos.y          += -65536;
        pos.z           = -73728;
        if (gmsGmkBeltcWork.vect == (ushort)32768)
        {
            pos.x += num;
        }
        for (; roller != 0; roller -= num)
        {
            ex_work.coord.u = gmsGmkBeltcWork.tex_u;
            AppMain.GmTvxSetModelEx(tvxBeltUp, texlist, ref pos, ref obj_work.scale, 0U, (short)0, ref ex_work);
            pos.y          -= -131072;
            ex_work.coord.u = -gmsGmkBeltcWork.tex_u;
            AppMain.GmTvxSetModelEx(tvxBeltDown, texlist, ref pos, ref obj_work.scale, 0U, (short)0, ref ex_work);
            pos.y += -131072;
            pos.x += num;
        }
    }
Пример #10
0
    private static void GmTvxSetModelEx(
        AppMain.TVX_FILE model_tvx,
        AppMain.NNS_TEXLIST model_tex,
        ref AppMain.VecFx32 pos,
        ref AppMain.VecFx32 scale,
        uint flag,
        short rotate_z,
        ref AppMain.GMS_TVX_EX_WORK ex_work)
    {
        if (!AppMain.GmMainIsDrawEnable())
        {
            return;
        }
        AppMain.GMS_TVX_DRAW_WORK[] gmTvxDrawWork = AppMain.gm_tvx_draw_work;
        uint textureNum = AppMain.AoTvxGetTextureNum(model_tvx);

        for (uint tex_no = 0; tex_no < textureNum; ++tex_no)
        {
            uint vertexNum = AppMain.AoTvxGetVertexNum(model_tvx, tex_no);
            int  textureId = AppMain.AoTvxGetTextureId(model_tvx, tex_no);
            for (int index = 0; index < AppMain.GMD_TVX_DRAW_WORK_NUM; ++index)
            {
                if (gmTvxDrawWork[index].tex == null && gmTvxDrawWork[index].tex_id == -1 || gmTvxDrawWork[index].tex == model_tex && gmTvxDrawWork[index].tex_id == textureId && (gmTvxDrawWork[index].u_wrap == ex_work.u_wrap && gmTvxDrawWork[index].v_wrap == ex_work.v_wrap))
                {
                    if ((long)gmTvxDrawWork[index].stack_num >= (long)AppMain.GMD_TVX_DRAW_STACK_NUM)
                    {
                        return;
                    }
                    gmTvxDrawWork[index].tex          = model_tex;
                    gmTvxDrawWork[index].tex_id       = textureId;
                    gmTvxDrawWork[index].u_wrap       = ex_work.u_wrap;
                    gmTvxDrawWork[index].v_wrap       = ex_work.v_wrap;
                    gmTvxDrawWork[index].all_vtx_num += vertexNum;
                    AppMain.GMS_TVX_DRAW_STACK gmsTvxDrawStack = gmTvxDrawWork[index].stack[(int)gmTvxDrawWork[index].stack_num];
                    gmsTvxDrawStack.vtx       = AppMain.AoTvxGetVertex(model_tvx, tex_no);
                    gmsTvxDrawStack.vtx_num   = vertexNum;
                    gmsTvxDrawStack.pos       = pos;
                    gmsTvxDrawStack.scale     = scale;
                    gmsTvxDrawStack.disp_flag = flag;
                    gmsTvxDrawStack.rotate_z  = (int)rotate_z;
                    gmsTvxDrawStack.coord     = ex_work.coord;
                    gmsTvxDrawStack.color     = ex_work.color;
                    ++gmTvxDrawWork[index].stack_num;
                    break;
                }
            }
        }
    }
 // Token: 0x0600057A RID: 1402 RVA: 0x0002F4AC File Offset: 0x0002D6AC
 public static void gmGmkLand3TvxDrawFuncEx(uint tvx_index, AppMain.NNS_TEXLIST texlist, ref AppMain.VecFx32 pos, ref AppMain.VecFx32 scale, uint disp_flag, short dir_z, ref AppMain.NNS_TEXCOORD uv)
 {
     AppMain.TVX_FILE tvx_FILE;
     if (AppMain.gm_gmk_land_3_obj_tvx_list.buf[( int )tvx_index] == null)
     {
         tvx_FILE = new AppMain.TVX_FILE((AppMain.AmbChunk)AppMain.amBindGet(AppMain.gm_gmk_land_3_obj_tvx_list, ( int )tvx_index));
         AppMain.gm_gmk_land_3_obj_tvx_list.buf[( int )tvx_index] = tvx_FILE;
     }
     else
     {
         tvx_FILE = (AppMain.TVX_FILE)AppMain.gm_gmk_land_3_obj_tvx_list.buf[( int )tvx_index];
     }
     AppMain.GMS_TVX_EX_WORK gms_TVX_EX_WORK = default(AppMain.GMS_TVX_EX_WORK);
     gms_TVX_EX_WORK.u_wrap  = 1;
     gms_TVX_EX_WORK.v_wrap  = 1;
     gms_TVX_EX_WORK.coord.u = uv.u;
     gms_TVX_EX_WORK.coord.v = uv.v;
     gms_TVX_EX_WORK.color   = uint.MaxValue;
     AppMain.GmTvxSetModelEx(tvx_FILE, texlist, ref pos, ref scale, disp_flag, dir_z, ref gms_TVX_EX_WORK);
 }
Пример #12
0
    private static void GmTvxSetModel(
        AppMain.TVX_FILE model_tvx,
        AppMain.NNS_TEXLIST model_tex,
        ref AppMain.VecFx32 pos,
        ref AppMain.VecFx32 scale,
        uint flag,
        short rotate_z)
    {
        var work = new AppMain.GMS_TVX_EX_WORK()
        {
            u_wrap = 1,
            v_wrap = 1,
            coord  =
            {
                u = 0.0f,
                v = 0.0f
            },
            color = uint.MaxValue
        };

        AppMain.GmTvxSetModelEx(model_tvx, model_tex, ref pos, ref scale, flag, rotate_z, ref work);
    }
Пример #13
0
    // Token: 0x06000B1E RID: 2846 RVA: 0x00064400 File Offset: 0x00062600
    private static void gmGmkSsRingGateDrawFunc(OBS_OBJECT_WORK obj_work)
    {
        if (!AppMain.GmMainIsDrawEnable())
        {
            return;
        }
        if ((obj_work.disp_flag & 32U) != 0U)
        {
            return;
        }
        AppMain.TVX_FILE tvx_FILE;
        if (AppMain.gm_gmk_ss_ringgate_obj_tvx_list.buf[0] == null)
        {
            tvx_FILE = new AppMain.TVX_FILE(( AmbChunk )AmBind.Get(AppMain.gm_gmk_ss_ringgate_obj_tvx_list, 0));
            AppMain.gm_gmk_ss_ringgate_obj_tvx_list.buf[0] = tvx_FILE;
        }
        else
        {
            tvx_FILE = (AppMain.TVX_FILE)AppMain.gm_gmk_ss_ringgate_obj_tvx_list.buf[0];
        }
        AppMain.NNS_TEXLIST texlist = obj_work.obj_3d.texlist;
        uint num  = AppMain.GMD_TVX_DISP_LIGHT_DISABLE;
        uint num2 = 0U;

        if (obj_work.dir.z != 0)
        {
            num |= AppMain.GMD_TVX_DISP_ROTATE;
            num2 = ( uint )obj_work.dir.z;
        }
        AppMain.GMS_TVX_EX_WORK gms_TVX_EX_WORK = default(AppMain.GMS_TVX_EX_WORK);
        uint num3 = obj_work.user_flag >> 13 & 3U;

        gms_TVX_EX_WORK.u_wrap  = 0;
        gms_TVX_EX_WORK.v_wrap  = 0;
        gms_TVX_EX_WORK.coord.u = -0.25f * num3;
        gms_TVX_EX_WORK.coord.v = 0f;
        gms_TVX_EX_WORK.color   = uint.MaxValue;
        AppMain.GmTvxSetModelEx(tvx_FILE, texlist, ref obj_work.pos, ref obj_work.scale, num, ( short )num2, ref gms_TVX_EX_WORK);
    }
Пример #14
0
    public static void gmGmkLand3TvxDrawFuncEx(
        uint tvx_index,
        AppMain.NNS_TEXLIST texlist,
        ref AppMain.VecFx32 pos,
        ref AppMain.VecFx32 scale,
        uint disp_flag,
        short dir_z,
        ref AppMain.NNS_TEXCOORD uv)
    {
        int index = (int)tvx_index;

        AppMain.TVX_FILE model_tvx;
        if (AppMain.gm_gmk_land_3_obj_tvx_list.buf[index] == null)
        {
            model_tvx = new AppMain.TVX_FILE((AppMain.AmbChunk)AppMain.amBindGet(AppMain.gm_gmk_land_3_obj_tvx_list, index));
            AppMain.gm_gmk_land_3_obj_tvx_list.buf[index] = (object)model_tvx;
        }
        else
        {
            model_tvx = (AppMain.TVX_FILE)AppMain.gm_gmk_land_3_obj_tvx_list.buf[index];
        }

        var work = new AppMain.GMS_TVX_EX_WORK()
        {
            u_wrap = 1,
            v_wrap = 1,
            coord  =
            {
                u = uv.u,
                v = uv.v
            },
            color = uint.MaxValue
        };

        AppMain.GmTvxSetModelEx(model_tvx, texlist, ref pos, ref scale, disp_flag, dir_z, ref work);
    }
Пример #15
0
    // Token: 0x0600077B RID: 1915 RVA: 0x00042234 File Offset: 0x00040434
    private static void gmGmkSsCircleDrawFunc(OBS_OBJECT_WORK obj_work)
    {
        if (!AppMain.GmMainIsDrawEnable())
        {
            return;
        }
        if ((obj_work.disp_flag & 32U) != 0U)
        {
            return;
        }
        AppMain.TVX_FILE tvx_FILE;
        if (AppMain.gm_gmk_ss_circle_obj_tvx_list.buf[0] == null)
        {
            tvx_FILE = new AppMain.TVX_FILE(( AmbChunk )AmBind.Get(AppMain.gm_gmk_ss_circle_obj_tvx_list, 0));
            AppMain.gm_gmk_ss_circle_obj_tvx_list.buf[0] = tvx_FILE;
        }
        else
        {
            tvx_FILE = (AppMain.TVX_FILE)AppMain.gm_gmk_ss_circle_obj_tvx_list.buf[0];
        }
        AppMain.NNS_TEXLIST texlist = obj_work.obj_3d.texlist;
        uint num = AppMain.GMD_TVX_DISP_LIGHT_DISABLE | AppMain.GMD_TVX_DISP_ROTATE;

        AppMain.GMS_TVX_EX_WORK gms_TVX_EX_WORK = default(AppMain.GMS_TVX_EX_WORK);
        gms_TVX_EX_WORK.u_wrap  = 1;
        gms_TVX_EX_WORK.v_wrap  = 1;
        gms_TVX_EX_WORK.coord.u = 0f;
        gms_TVX_EX_WORK.coord.v = 0f;
        gms_TVX_EX_WORK.color   = uint.MaxValue;
        if (obj_work.obj_3d.draw_state.alpha.alpha == 0.5f)
        {
            gms_TVX_EX_WORK.color = 4294967176U;
            num |= AppMain.GMD_TVX_DISP_BLEND;
        }
        AppMain.GmTvxSetModelEx(tvx_FILE, texlist, ref obj_work.pos, ref obj_work.scale, num, ( short )(-( short )obj_work.dir.z), ref gms_TVX_EX_WORK);
    }
Пример #16
0
    // Token: 0x0600052B RID: 1323 RVA: 0x0002B790 File Offset: 0x00029990
    private static void GmTvxSetModelEx(AppMain.TVX_FILE model_tvx, AppMain.NNS_TEXLIST model_tex, ref AppMain.VecFx32 pos, ref AppMain.VecFx32 scale, uint flag, short rotate_z, ref AppMain.GMS_TVX_EX_WORK ex_work)
    {
        if (!AppMain.GmMainIsDrawEnable())
        {
            return;
        }
        AppMain.GMS_TVX_DRAW_WORK[] array = AppMain.gm_tvx_draw_work;
        uint num = AppMain.AoTvxGetTextureNum(model_tvx);

        for (uint num2 = 0U; num2 < num; num2 += 1U)
        {
            uint num3 = AppMain.AoTvxGetVertexNum(model_tvx, num2);
            int  num4 = AppMain.AoTvxGetTextureId(model_tvx, num2);
            int  i    = 0;
            while (i < AppMain.GMD_TVX_DRAW_WORK_NUM)
            {
                if ((array[i].tex == null && array[i].tex_id == -1) || (array[i].tex == model_tex && array[i].tex_id == num4 && array[i].u_wrap == ex_work.u_wrap && array[i].v_wrap == ex_work.v_wrap))
                {
                    if ((ulong)array[i].stack_num >= (ulong)((long)AppMain.GMD_TVX_DRAW_STACK_NUM))
                    {
                        return;
                    }
                    array[i].tex          = model_tex;
                    array[i].tex_id       = num4;
                    array[i].u_wrap       = ex_work.u_wrap;
                    array[i].v_wrap       = ex_work.v_wrap;
                    array[i].all_vtx_num += num3;
                    AppMain.GMS_TVX_DRAW_STACK gms_TVX_DRAW_STACK = array[i].stack[(int)((UIntPtr)array[i].stack_num)];
                    gms_TVX_DRAW_STACK.vtx       = AppMain.AoTvxGetVertex(model_tvx, num2);
                    gms_TVX_DRAW_STACK.vtx_num   = num3;
                    gms_TVX_DRAW_STACK.pos       = pos;
                    gms_TVX_DRAW_STACK.scale     = scale;
                    gms_TVX_DRAW_STACK.disp_flag = flag;
                    gms_TVX_DRAW_STACK.rotate_z  = (int)rotate_z;
                    gms_TVX_DRAW_STACK.coord     = ex_work.coord;
                    gms_TVX_DRAW_STACK.color     = ex_work.color;
                    array[i].stack_num          += 1U;
                    break;
                }
                else
                {
                    i++;
                }
            }
        }
    }
    // Token: 0x060008D0 RID: 2256 RVA: 0x0004FE28 File Offset: 0x0004E028
    private static void gmGmkNeedleDrawFunc(AppMain.OBS_OBJECT_WORK obj_work)
    {
        if (!AppMain.GmMainIsDrawEnable())
        {
            return;
        }
        AppMain.GMS_ENEMY_3D_WORK   work = (AppMain.GMS_ENEMY_3D_WORK)obj_work;
        AppMain.GMS_GMK_NEEDLE_WORK gms_GMK_NEEDLE_WORK = (AppMain.GMS_GMK_NEEDLE_WORK)work;
        if ((obj_work.disp_flag & 32U) != 0U)
        {
            return;
        }
        AppMain.VecFx32         vecFx           = default(AppMain.VecFx32);
        AppMain.VecFx32         vecFx2          = new AppMain.VecFx32(4096, 4096, 4096);
        AppMain.NNS_TEXLIST     texlist         = obj_work.obj_3d.texlist;
        AppMain.GMS_TVX_EX_WORK gms_TVX_EX_WORK = default(AppMain.GMS_TVX_EX_WORK);
        short num = (short)(-49152 * (int)gms_GMK_NEEDLE_WORK.needle_type);

        if (gms_GMK_NEEDLE_WORK.needle_type == 5)
        {
            num = short.MinValue;
        }
        obj_work.dir.z          = ( ushort )(-( ushort )num);
        gms_TVX_EX_WORK.u_wrap  = 1;
        gms_TVX_EX_WORK.v_wrap  = 1;
        gms_TVX_EX_WORK.coord.u = 0f;
        gms_TVX_EX_WORK.coord.v = 0f;
        gms_TVX_EX_WORK.color   = gms_GMK_NEEDLE_WORK.color;
        for (int i = 0; i < 5; i++)
        {
            vecFx.z = obj_work.pos.z;
            if (i >= 3)
            {
                vecFx.z -= 8192;
            }
            switch (gms_GMK_NEEDLE_WORK.needle_type)
            {
            case 0:
            case 4:
                vecFx.x = obj_work.pos.x + AppMain.gm_gmk_disp_ofst_tbl_u[i][0];
                vecFx.y = obj_work.pos.y + AppMain.gm_gmk_disp_ofst_tbl_u[i][1];
                break;

            case 1:
            case 5:
                vecFx.x = obj_work.pos.x + AppMain.gm_gmk_disp_ofst_tbl_l[i][0];
                vecFx.y = obj_work.pos.y + AppMain.gm_gmk_disp_ofst_tbl_l[i][1];
                break;

            case 2:
                vecFx.x = obj_work.pos.x + AppMain.gm_gmk_disp_ofst_tbl_d[i][0];
                vecFx.y = obj_work.pos.y + AppMain.gm_gmk_disp_ofst_tbl_d[i][1];
                break;

            case 3:
                vecFx.x = obj_work.pos.x + AppMain.gm_gmk_disp_ofst_tbl_r[i][0];
                vecFx.y = obj_work.pos.y + AppMain.gm_gmk_disp_ofst_tbl_r[i][1];
                break;
            }
            AppMain.GmTvxSetModelEx(AppMain.tvx_needle, texlist, ref vecFx, ref obj_work.scale, AppMain.GMD_TVX_DISP_ROTATE | AppMain.GMD_TVX_DISP_SCALE | AppMain.GMD_TVX_DISP_LIGHT_DISABLE, num, ref gms_TVX_EX_WORK);
            AppMain.GmTvxSetModel(AppMain.tvx_stand, texlist, ref vecFx, ref vecFx2, AppMain.GMD_TVX_DISP_ROTATE | AppMain.GMD_TVX_DISP_SCALE, num);
        }
    }
Пример #18
0
    private static void gmGmkNeedleDrawFunc(AppMain.OBS_OBJECT_WORK obj_work)
    {
        if (!AppMain.GmMainIsDrawEnable())
        {
            return;
        }
        AppMain.GMS_GMK_NEEDLE_WORK gmsGmkNeedleWork = (AppMain.GMS_GMK_NEEDLE_WORK)(AppMain.GMS_ENEMY_3D_WORK) obj_work;
        if (((int)obj_work.disp_flag & 32) != 0)
        {
            return;
        }
        AppMain.VecFx32         pos     = new AppMain.VecFx32();
        AppMain.VecFx32         scale   = new AppMain.VecFx32(4096, 4096, 4096);
        AppMain.NNS_TEXLIST     texlist = obj_work.obj_3d.texlist;
        AppMain.GMS_TVX_EX_WORK ex_work = new AppMain.GMS_TVX_EX_WORK();
        short rotate_z = (short)(-49152 * (int)gmsGmkNeedleWork.needle_type);

        if (gmsGmkNeedleWork.needle_type == (ushort)5)
        {
            rotate_z = short.MinValue;
        }
        obj_work.dir.z  = (ushort)-rotate_z;
        ex_work.u_wrap  = 1;
        ex_work.v_wrap  = 1;
        ex_work.coord.u = 0.0f;
        ex_work.coord.v = 0.0f;
        ex_work.color   = gmsGmkNeedleWork.color;
        for (int index = 0; index < 5; ++index)
        {
            pos.z = obj_work.pos.z;
            if (index >= 3)
            {
                pos.z -= 8192;
            }
            switch (gmsGmkNeedleWork.needle_type)
            {
            case 0:
            case 4:
                pos.x = obj_work.pos.x + AppMain.gm_gmk_disp_ofst_tbl_u[index][0];
                pos.y = obj_work.pos.y + AppMain.gm_gmk_disp_ofst_tbl_u[index][1];
                break;

            case 1:
            case 5:
                pos.x = obj_work.pos.x + AppMain.gm_gmk_disp_ofst_tbl_l[index][0];
                pos.y = obj_work.pos.y + AppMain.gm_gmk_disp_ofst_tbl_l[index][1];
                break;

            case 2:
                pos.x = obj_work.pos.x + AppMain.gm_gmk_disp_ofst_tbl_d[index][0];
                pos.y = obj_work.pos.y + AppMain.gm_gmk_disp_ofst_tbl_d[index][1];
                break;

            case 3:
                pos.x = obj_work.pos.x + AppMain.gm_gmk_disp_ofst_tbl_r[index][0];
                pos.y = obj_work.pos.y + AppMain.gm_gmk_disp_ofst_tbl_r[index][1];
                break;
            }
            AppMain.GmTvxSetModelEx(AppMain.tvx_needle, texlist, ref pos, ref obj_work.scale, AppMain.GMD_TVX_DISP_ROTATE | AppMain.GMD_TVX_DISP_SCALE | AppMain.GMD_TVX_DISP_LIGHT_DISABLE, rotate_z, ref ex_work);
            AppMain.GmTvxSetModel(AppMain.tvx_stand, texlist, ref pos, ref scale, AppMain.GMD_TVX_DISP_ROTATE | AppMain.GMD_TVX_DISP_SCALE, rotate_z);
        }
    }