private static void ObjCameraGetTargetUpVecCamera( AppMain.OBS_CAMERA obj_camera, AppMain.NNS_CAMERA_TARGET_UPVECTOR tupvec_camera) { tupvec_camera.User = 0U; tupvec_camera.Fovy = obj_camera.fovy; tupvec_camera.Aspect = obj_camera.aspect; tupvec_camera.ZNear = obj_camera.znear; tupvec_camera.ZFar = obj_camera.zfar; tupvec_camera.Position.x = obj_camera.disp_pos.x; tupvec_camera.Position.y = obj_camera.disp_pos.y; tupvec_camera.Position.z = obj_camera.disp_pos.z; if (obj_camera.target_obj != null) { tupvec_camera.Target.x = AppMain.FXM_FX32_TO_FLOAT(obj_camera.target_obj.pos.x); tupvec_camera.Target.y = AppMain.FXM_FX32_TO_FLOAT(obj_camera.target_obj.pos.y); tupvec_camera.Target.z = AppMain.FXM_FX32_TO_FLOAT(obj_camera.target_obj.pos.z); } else { tupvec_camera.Target.x = obj_camera.target_pos.x; tupvec_camera.Target.y = obj_camera.target_pos.y; tupvec_camera.Target.z = obj_camera.target_pos.z; } tupvec_camera.UpVector.Assign(obj_camera.up_vec); }
// Token: 0x06000D8A RID: 3466 RVA: 0x000766AC File Offset: 0x000748AC private static void gmSplStageNudgeCtrl() { AppMain.GMS_PLAYER_WORK gms_PLAYER_WORK = AppMain.g_gm_main_system.ply_work[(int)((UIntPtr)0)]; AppMain.OBS_CAMERA obs_CAMERA = AppMain.ObjCameraGet(0); if (gms_PLAYER_WORK.nudge_timer != 0) { int num = ((int)(gms_PLAYER_WORK.nudge_timer * 8) << 12) / 30; if ((gms_PLAYER_WORK.nudge_timer & 2) != 0) { num = -num; } int num2 = 0; AppMain.GmObjGetRotPosXY(num, num2, ref gms_PLAYER_WORK.obj_work.ofst.x, ref gms_PLAYER_WORK.obj_work.ofst.y, AppMain.g_gm_main_system.pseudofall_dir); AppMain.GmObjGetRotPosXY(num, num2, ref num, ref num2, ( ushort )-AppMain.g_gm_main_system.pseudofall_dir); obs_CAMERA.ofst.x = AppMain.FXM_FX32_TO_FLOAT(num); obs_CAMERA.ofst.y = AppMain.FXM_FX32_TO_FLOAT(num2); AppMain.GMS_PLAYER_WORK gms_PLAYER_WORK2 = gms_PLAYER_WORK; gms_PLAYER_WORK2.nudge_timer -= 1; return; } obs_CAMERA.ofst.x = 0f; obs_CAMERA.ofst.y = 0f; gms_PLAYER_WORK.obj_work.ofst.x = 0; gms_PLAYER_WORK.obj_work.ofst.y = 0; gms_PLAYER_WORK.nudge_ofst_x = 0; }
private static void gmGmkLoopExecuteCamera(int loop_x, int loop_y) { AppMain.OBS_CAMERA obj_camera = AppMain.ObjCameraGet(0); AppMain.GmCameraPosSet(AppMain.FX_F32_TO_FX32(obj_camera.pos.x) + loop_x, -AppMain.FX_F32_TO_FX32(obj_camera.pos.y) + loop_y, AppMain.FX_F32_TO_FX32(obj_camera.pos.z)); AppMain.ObjObjectCameraSet(AppMain.FXM_FLOAT_TO_FX32(obj_camera.disp_pos.x - (float)((int)AppMain.OBD_LCD_X / 2)), AppMain.FXM_FLOAT_TO_FX32(-obj_camera.disp_pos.y - (float)((int)AppMain.OBD_LCD_Y / 2)), AppMain.FXM_FLOAT_TO_FX32(obj_camera.disp_pos.x - (float)((int)AppMain.OBD_LCD_X / 2)), AppMain.FXM_FLOAT_TO_FX32(-obj_camera.disp_pos.y - (float)((int)AppMain.OBD_LCD_Y / 2))); AppMain.GmCameraSetClipCamera(obj_camera); }
// Token: 0x0600104E RID: 4174 RVA: 0x0008EB90 File Offset: 0x0008CD90 private static void gmCameraFuncAddMap(AppMain.OBS_CAMERA obj_camera) { AppMain.OBS_CAMERA obs_CAMERA = AppMain.ObjCameraGet(0); obj_camera.prev_pos.Assign(obj_camera.pos); obj_camera.prev_disp_pos.Assign(obj_camera.disp_pos); obj_camera.disp_pos.Assign(obs_CAMERA.disp_pos); obj_camera.pos.Assign(obs_CAMERA.pos); obj_camera.ofst.Assign(obs_CAMERA.ofst); obj_camera.disp_ofst.Assign(obs_CAMERA.disp_ofst); obj_camera.target_ofst.Assign(obs_CAMERA.target_ofst); obj_camera.play_ofst_max.Assign(obs_CAMERA.play_ofst_max); obj_camera.camup_obj = obs_CAMERA.camup_obj; obj_camera.camup_pos.Assign(obs_CAMERA.camup_pos); obj_camera.roll = obs_CAMERA.roll; obj_camera.up_vec.Assign(obs_CAMERA.up_vec); obj_camera.scale = obs_CAMERA.scale; obj_camera.left = obs_CAMERA.left; obj_camera.right = obs_CAMERA.right; obj_camera.bottom = obs_CAMERA.bottom; obj_camera.top = obs_CAMERA.top; obj_camera.znear = obs_CAMERA.znear; obj_camera.zfar = obs_CAMERA.zfar; obj_camera.aspect = obs_CAMERA.aspect; AppMain.GmMapGetAddMapCameraPos(obs_CAMERA.disp_pos, obs_CAMERA.target_pos, obj_camera.disp_pos, obj_camera.target_pos, obj_camera.camera_id); }
private static void ObjCameraGetTargetUpTargetCamera( AppMain.OBS_CAMERA obj_camera, AppMain.NNS_CAMERA_TARGET_UPTARGET tupt_camera) { tupt_camera.User = 0U; tupt_camera.Fovy = obj_camera.fovy; tupt_camera.Aspect = obj_camera.aspect; tupt_camera.ZNear = obj_camera.znear; tupt_camera.ZFar = obj_camera.zfar; tupt_camera.Position.x = obj_camera.disp_pos.x; tupt_camera.Position.y = obj_camera.disp_pos.y; tupt_camera.Position.z = obj_camera.disp_pos.z; if (obj_camera.camup_obj != null) { tupt_camera.Target.x = AppMain.FXM_FX32_TO_FLOAT(obj_camera.camup_obj.pos.x); tupt_camera.Target.y = AppMain.FXM_FX32_TO_FLOAT(obj_camera.camup_obj.pos.y); tupt_camera.Target.z = AppMain.FXM_FX32_TO_FLOAT(obj_camera.camup_obj.pos.z); } else { tupt_camera.Target.x = obj_camera.camup_pos.x; tupt_camera.Target.y = obj_camera.camup_pos.y; tupt_camera.Target.z = obj_camera.camup_pos.z; } }
// Token: 0x06000263 RID: 611 RVA: 0x0001377C File Offset: 0x0001197C private static void gmGmkStopperStay_Norm_100(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_GMK_STOPPER_WORK gms_GMK_STOPPER_WORK = (AppMain.GMS_GMK_STOPPER_WORK)obj_work; if (gms_GMK_STOPPER_WORK.ply_work != AppMain.g_gm_main_system.ply_work[( int )(( UIntPtr )0)] || gms_GMK_STOPPER_WORK.ply_work.gmk_obj != obj_work || gms_GMK_STOPPER_WORK.ply_work.seq_state != 40) { AppMain.gmGmkStopperReset(obj_work); return; } AppMain.OBS_CAMERA obs_CAMERA = AppMain.ObjCameraGet(0); AppMain.GmCameraPosSet(AppMain.FXM_FLOAT_TO_FX32(obs_CAMERA.pos.x), AppMain.FXM_FLOAT_TO_FX32(-obs_CAMERA.pos.y) + 16384, AppMain.FXM_FLOAT_TO_FX32(obs_CAMERA.pos.z)); AppMain.GMS_GMK_STOPPER_WORK gms_GMK_STOPPER_WORK2 = gms_GMK_STOPPER_WORK; gms_GMK_STOPPER_WORK2.player_pass_timer -= 1; if (gms_GMK_STOPPER_WORK.player_pass_timer <= 0) { obj_work.disp_flag &= 4294967291U; AppMain.gmGmkStopperStay_Norm_110(obj_work); return; } if (gms_GMK_STOPPER_WORK.player_pass_timer % 16 == 0) { AppMain.GmPlayerAddScore(gms_GMK_STOPPER_WORK.ply_work, 1000, gms_GMK_STOPPER_WORK.ply_work.obj_work.pos.x, gms_GMK_STOPPER_WORK.ply_work.obj_work.pos.y); AppMain.gsSoundStopSe(gms_GMK_STOPPER_WORK.se_handle); gms_GMK_STOPPER_WORK.se_handle.snd_ctrl_param.pitch = 0.8f - ( float )gms_GMK_STOPPER_WORK.player_pass_timer / 160f; AppMain.GmSoundPlaySE("Casino3", gms_GMK_STOPPER_WORK.se_handle); if (gms_GMK_STOPPER_WORK.player_pass_timer <= 16) { AppMain.GmSoundPlaySE("Casino3_1"); } } }
// Token: 0x0600104F RID: 4175 RVA: 0x0008ECF4 File Offset: 0x0008CEF4 private static void gmCameraFuncWater(AppMain.OBS_CAMERA obj_camera) { AppMain.OBS_CAMERA obs_CAMERA = AppMain.ObjCameraGet(0); AppMain.nnCopyVector(obj_camera.pos, obs_CAMERA.pos); AppMain.nnCopyVector(obj_camera.target_pos, obs_CAMERA.target_pos); AppMain.nnCopyVector(obj_camera.disp_pos, obs_CAMERA.disp_pos); }
private static void ObjCameraGetTargetRollCamera( AppMain.OBS_CAMERA obj_camera, AppMain.NNS_CAMERA_TARGET_ROLL troll_camera) { troll_camera.User = 0U; troll_camera.Fovy = obj_camera.fovy; troll_camera.Aspect = obj_camera.aspect; troll_camera.ZNear = obj_camera.znear; troll_camera.ZFar = obj_camera.zfar; troll_camera.Position.x = obj_camera.disp_pos.x; troll_camera.Position.y = obj_camera.disp_pos.y; troll_camera.Position.z = obj_camera.disp_pos.z; if (obj_camera.target_obj != null) { troll_camera.Target.x = AppMain.FXM_FX32_TO_FLOAT(obj_camera.target_obj.pos.x); troll_camera.Target.y = AppMain.FXM_FX32_TO_FLOAT(obj_camera.target_obj.pos.y); troll_camera.Target.z = AppMain.FXM_FX32_TO_FLOAT(obj_camera.target_obj.pos.z); } else { troll_camera.Target.x = obj_camera.target_pos.x; troll_camera.Target.y = obj_camera.target_pos.y; troll_camera.Target.z = obj_camera.target_pos.z; } troll_camera.Roll = obj_camera.roll + 16384; }
private static void gmSplStageNudgeCtrl() { AppMain.GMS_PLAYER_WORK gmsPlayerWork = AppMain.g_gm_main_system.ply_work[0]; AppMain.OBS_CAMERA obsCamera = AppMain.ObjCameraGet(0); if (gmsPlayerWork.nudge_timer != (short)0) { int dest_x = ((int)gmsPlayerWork.nudge_timer * 8 << 12) / 30; if (((int)gmsPlayerWork.nudge_timer & 2) != 0) { dest_x = -dest_x; } int dest_y = 0; AppMain.GmObjGetRotPosXY(dest_x, dest_y, ref gmsPlayerWork.obj_work.ofst.x, ref gmsPlayerWork.obj_work.ofst.y, AppMain.g_gm_main_system.pseudofall_dir); AppMain.GmObjGetRotPosXY(dest_x, dest_y, ref dest_x, ref dest_y, (ushort)-AppMain.g_gm_main_system.pseudofall_dir); obsCamera.ofst.x = AppMain.FXM_FX32_TO_FLOAT(dest_x); obsCamera.ofst.y = AppMain.FXM_FX32_TO_FLOAT(dest_y); --gmsPlayerWork.nudge_timer; } else { obsCamera.ofst.x = 0.0f; obsCamera.ofst.y = 0.0f; gmsPlayerWork.obj_work.ofst.x = 0; gmsPlayerWork.obj_work.ofst.y = 0; gmsPlayerWork.nudge_ofst_x = 0; } }
private static void gmGmkStopperStay_Norm_100(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_GMK_STOPPER_WORK gmsGmkStopperWork = (AppMain.GMS_GMK_STOPPER_WORK)obj_work; if (gmsGmkStopperWork.ply_work != AppMain.g_gm_main_system.ply_work[0] || gmsGmkStopperWork.ply_work.gmk_obj != obj_work || gmsGmkStopperWork.ply_work.seq_state != 40) { AppMain.gmGmkStopperReset(obj_work); } else { AppMain.OBS_CAMERA obsCamera = AppMain.ObjCameraGet(0); AppMain.GmCameraPosSet(AppMain.FXM_FLOAT_TO_FX32(obsCamera.pos.x), AppMain.FXM_FLOAT_TO_FX32(-obsCamera.pos.y) + 16384, AppMain.FXM_FLOAT_TO_FX32(obsCamera.pos.z)); --gmsGmkStopperWork.player_pass_timer; if (gmsGmkStopperWork.player_pass_timer <= (short)0) { obj_work.disp_flag &= 4294967291U; AppMain.gmGmkStopperStay_Norm_110(obj_work); } else { if ((int)gmsGmkStopperWork.player_pass_timer % 16 != 0) { return; } AppMain.GmPlayerAddScore(gmsGmkStopperWork.ply_work, 1000, gmsGmkStopperWork.ply_work.obj_work.pos.x, gmsGmkStopperWork.ply_work.obj_work.pos.y); AppMain.gsSoundStopSe(gmsGmkStopperWork.se_handle); gmsGmkStopperWork.se_handle.snd_ctrl_param.pitch = (float)(0.800000011920929 - (double)gmsGmkStopperWork.player_pass_timer / 160.0); AppMain.GmSoundPlaySE("Casino3", gmsGmkStopperWork.se_handle); if (gmsGmkStopperWork.player_pass_timer > (short)16) { return; } AppMain.GmSoundPlaySE("Casino3_1"); } } }
private static void gmSplStagePlayEndChk(AppMain.MTS_TASK_TCB tcb) { AppMain.GMS_SPL_STG_WORK work = (AppMain.GMS_SPL_STG_WORK)tcb.work; AppMain.GMS_PLAYER_WORK gmsPlayerWork = AppMain.g_gm_main_system.ply_work[0]; AppMain.OBS_CAMERA obsCamera = AppMain.ObjCameraGet(0); if (AppMain.ObjObjectPauseCheck(0U) != 0U) { return; } AppMain.gmSplStageLightCtrl(work); work.flag &= 4294967294U; AppMain.gmSplStageNudgeCtrl(); AppMain.gmSplStageRingGateChk(work); if (((int)AppMain.g_gm_main_system.game_flag & 458752) == 0) { return; } AppMain.g_gm_main_system.game_flag &= 4294966271U; gmsPlayerWork.obj_work.flag |= 130U; gmsPlayerWork.obj_work.move_flag |= 8448U; gmsPlayerWork.obj_work.disp_flag &= 4294967294U; gmsPlayerWork.player_flag |= 4194304U; if (((int)AppMain.g_gm_main_system.game_flag & 393216) != 0) { AppMain.GMM_PAD_VIB_MID_TIME(90f); } work.roll = obsCamera.roll; work.roll_spd = 256; work.counter = 0U; AppMain.mtTaskChangeTcbProcedure(tcb, new AppMain.GSF_TASK_PROCEDURE(AppMain.gmSplStageRolling)); }
private static void gmSplStageRolling(AppMain.MTS_TASK_TCB tcb) { AppMain.GMS_SPL_STG_WORK work = (AppMain.GMS_SPL_STG_WORK)tcb.work; AppMain.OBS_CAMERA obsCamera = AppMain.ObjCameraGet(0); if (AppMain.ObjObjectPauseCheck(0U) != 0U || obsCamera == null) { return; } work.roll_spd += 56; work.roll += work.roll_spd; obsCamera.roll = work.roll; ++work.counter; if (work.counter == 90U) { AppMain.IzFadeInitEasy(0U, 3U, 30f); } if (work.counter <= 90U || !AppMain.IzFadeIsEnd()) { return; } AppMain.IzFadeExit(); AppMain.IzFadeRestoreDrawSetting(); AppMain.GmObjSetAllObjectNoDisp(); AppMain.GmRingGetWork().flag |= 1U; AppMain.GmFixSetDisp(false); work.flag |= 4U; work.counter = 1U; AppMain.mtTaskChangeTcbProcedure(tcb, new AppMain.GSF_TASK_PROCEDURE(AppMain.gmSplStageGotoEnd)); obsCamera.roll = 0; AppMain.g_gm_main_system.pseudofall_dir = (ushort)0; }
// Token: 0x06001236 RID: 4662 RVA: 0x0009F37C File Offset: 0x0009D57C private static void gmGmkDrainTankOutMainWait(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_PLAYER_WORK gms_PLAYER_WORK = AppMain.g_gm_main_system.ply_work[(int)((UIntPtr)0)]; if ((gms_PLAYER_WORK.player_flag & 1024U) != 0U) { AppMain.gmGmkDrainTankOutUpdateDie(obj_work); obj_work.spd.x = 0; obj_work.spd.y = 0; return; } if (AppMain.gmGmkDrainTankOutCheckDeleteTask(obj_work, 1843200, 1228800)) { AppMain.gmGmkDrainTankOutRequestDeleteTask(obj_work); return; } AppMain.OBS_OBJECT_WORK obj_work2 = gms_PLAYER_WORK.obj_work; if (gms_PLAYER_WORK.seq_state == 22) { AppMain.gmGmkDrainTankOutChangeModeDamage(obj_work); return; } if ((obj_work.move_flag & 1U) == 0U) { AppMain.gmGmkDrainTankOutChangeModeSplash(obj_work); return; } AppMain.GMS_GMK_DRAIN_TANK_OUT_WORK gms_GMK_DRAIN_TANK_OUT_WORK = (AppMain.GMS_GMK_DRAIN_TANK_OUT_WORK)obj_work; int num = AppMain.GmPlayerKeyGetGimmickRotZ(gms_PLAYER_WORK); if (AppMain.MTM_MATH_ABS(num) > 8192) { gms_GMK_DRAIN_TANK_OUT_WORK.counter_roll_key++; } else { gms_GMK_DRAIN_TANK_OUT_WORK.counter_roll_key = 0; } if (gms_GMK_DRAIN_TANK_OUT_WORK.counter_roll_key >= 0) { AppMain.gmGmkDrainTankOutUpdateCameraRoll(gms_GMK_DRAIN_TANK_OUT_WORK, num); if (19 == gms_GMK_DRAIN_TANK_OUT_WORK.counter_roll_key % 20 && AppMain.MTM_MATH_ABS(gms_GMK_DRAIN_TANK_OUT_WORK.camera_roll) < AppMain.GMD_GMK_DRAIN_TANK_ROLL_ANGLE_MAX) { AppMain.GmSoundPlaySE("Fluid1"); } } if (AppMain.gmGmkDrainTankOutCheckKeyDir(obj_work, gms_GMK_DRAIN_TANK_OUT_WORK.camera_roll)) { int x = gms_GMK_DRAIN_TANK_OUT_WORK.camera_roll >> 3; obj_work.spd.x = x; float a = AppMain.FX_FX32_TO_F32(gms_GMK_DRAIN_TANK_OUT_WORK.camera_roll >> 4); a = AppMain.MTM_MATH_ABS(a); AppMain.GmWaterSurfaceRequestAddWatarLevel(AppMain.MTM_MATH_ABS(a), 0, true); } AppMain.gmGmkDrainTankOutAdjustPlayerOffsetBuoyancy(gms_GMK_DRAIN_TANK_OUT_WORK); AppMain.gmGmkDrainTankOutAdjustPlayerOffsetWave(gms_GMK_DRAIN_TANK_OUT_WORK, obj_work2); AppMain.gmGmkDrainTankOutApplyPlayerOffset(obj_work2, gms_GMK_DRAIN_TANK_OUT_WORK); AppMain.OBS_CAMERA obs_CAMERA = AppMain.ObjCameraGet(0); obs_CAMERA.roll = gms_GMK_DRAIN_TANK_OUT_WORK.camera_roll; AppMain.gmGmkDrainTankOutUpdateCameraOffset(gms_PLAYER_WORK, gms_GMK_DRAIN_TANK_OUT_WORK); }
// Token: 0x06001238 RID: 4664 RVA: 0x0009F600 File Offset: 0x0009D800 private static void gmGmkDrainTankOutMainSplash(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_PLAYER_WORK gms_PLAYER_WORK = AppMain.g_gm_main_system.ply_work[(int)((UIntPtr)0)]; if ((gms_PLAYER_WORK.player_flag & 1024U) != 0U) { AppMain.gmGmkDrainTankOutUpdateDie(obj_work); return; } if (AppMain.gmGmkDrainTankOutCheckDeleteTask(obj_work, 1638400, 1228800)) { AppMain.gmGmkDrainTankOutRequestDeleteTask(obj_work); return; } AppMain.GMS_GMK_DRAIN_TANK_OUT_WORK gms_GMK_DRAIN_TANK_OUT_WORK = (AppMain.GMS_GMK_DRAIN_TANK_OUT_WORK)obj_work; AppMain.OBS_OBJECT_WORK obj_work2 = gms_PLAYER_WORK.obj_work; AppMain.GmWaterSurfaceRequestAddWatarLevel(0.001f, 0, true); AppMain.OBS_CAMERA obs_CAMERA = AppMain.ObjCameraGet(0); obs_CAMERA.roll = gms_GMK_DRAIN_TANK_OUT_WORK.camera_roll; if (gms_GMK_DRAIN_TANK_OUT_WORK.base_pos_x < obj_work2.pos.x) { obj_work2.move_flag |= 128U; obj_work2.move_flag &= 4294967039U; obj_work2.spd.x = 65536; obj_work2.spd_add.x = -896; AppMain.GmPlayerCameraOffsetSet(gms_PLAYER_WORK, 0, 0); AppMain.GmCameraAllowReset(); AppMain.gmGmkDrainTankOutChangeModeEnd(obj_work); } }
// Token: 0x0600123B RID: 4667 RVA: 0x0009F75C File Offset: 0x0009D95C private static void gmGmkDrainTankOutUpdateDie(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_GMK_DRAIN_TANK_OUT_WORK gms_GMK_DRAIN_TANK_OUT_WORK = (AppMain.GMS_GMK_DRAIN_TANK_OUT_WORK)obj_work; AppMain.gmGmkDrainTankOutUpdateCameraRollDie(gms_GMK_DRAIN_TANK_OUT_WORK); AppMain.OBS_CAMERA obs_CAMERA = AppMain.ObjCameraGet(0); obs_CAMERA.roll = gms_GMK_DRAIN_TANK_OUT_WORK.camera_roll; }
// Token: 0x06001044 RID: 4164 RVA: 0x0008DD08 File Offset: 0x0008BF08 public static void GmCameraPosSet(int pos_x, int pos_y, int pos_z) { AppMain.OBS_CAMERA obs_CAMERA = AppMain.ObjCameraGet(0); float num = (float)(AppMain.GSD_DISP_WIDTH / 2) * obs_CAMERA.scale; float num2 = (float)(AppMain.GSD_DISP_HEIGHT / 2) * obs_CAMERA.scale; float num3 = (float)AppMain.g_gm_main_system.map_fcol.bottom - (float)(AppMain.GSD_DISP_HEIGHT / 2) * obs_CAMERA.scale; obs_CAMERA.pos.x = AppMain.FXM_FX32_TO_FLOAT(pos_x); if (obs_CAMERA.pos.x < num) { obs_CAMERA.pos.x = num; } obs_CAMERA.pos.y = -AppMain.FXM_FX32_TO_FLOAT(pos_y); if (obs_CAMERA.pos.y > -num2) { obs_CAMERA.pos.y = -num2; } if (obs_CAMERA.pos.y > num3) { obs_CAMERA.pos.y = num3; } obs_CAMERA.pos.z = AppMain.FXM_FX32_TO_FLOAT(pos_z) + 50f; obs_CAMERA.disp_pos.x = obs_CAMERA.pos.x; obs_CAMERA.disp_pos.y = obs_CAMERA.pos.y; obs_CAMERA.disp_pos.z = obs_CAMERA.pos.z; }
private static void gmGmkBobbinDefFunc( AppMain.OBS_RECT_WORK gimmick_rect, AppMain.OBS_RECT_WORK player_rect) { AppMain.OBS_OBJECT_WORK parentObj1 = gimmick_rect.parent_obj; AppMain.GMS_ENEMY_3D_WORK gimmick_work = (AppMain.GMS_ENEMY_3D_WORK)parentObj1; AppMain.OBS_OBJECT_WORK parentObj2 = player_rect.parent_obj; AppMain.VecFx32 vec = new AppMain.VecFx32(); vec.x = parentObj2.prev_pos.x - parentObj1.pos.x; vec.y = (int)((long)parentObj2.prev_pos.y + -12288L - (long)parentObj1.pos.y); vec.z = 0; if (AppMain.FX_Mul(114688, 114688) < AppMain.FX_Mul(vec.x, vec.x) + AppMain.FX_Mul(vec.y, vec.y)) { gimmick_rect.flag &= 4294966271U; } else { gimmick_rect.flag |= 1024U; AppMain.VecFx32 vecFx32 = AppMain.gmGmkBobbinNormalizeVectorXY(vec); parentObj2.dir.z = (ushort)0; int v1_1 = AppMain.FX_Mul(vecFx32.x, 24576); int v1_2 = AppMain.FX_Mul(vecFx32.y, 24576); int v2_1 = AppMain.FX_F32_TO_FX32((float)((100.0 + (double)gimmick_work.ene_com.eve_rec.left) * 0.00999999977648258)); if (v2_1 < 0) { v2_1 = 0; } int v2_2 = AppMain.FX_F32_TO_FX32((float)((100.0 + (double)gimmick_work.ene_com.eve_rec.top) * 0.00999999977648258)); if (v2_2 < 0) { v2_2 = 0; } int num1 = AppMain.FX_Mul(v1_1, v2_1); int num2 = AppMain.FX_Mul(v1_2, v2_2); if (parentObj2.obj_type == (ushort)1) { AppMain.gmGmkBobbinDefPlayer(gimmick_work, (AppMain.GMS_PLAYER_WORK)parentObj2, num1, num2); } else if (parentObj2.obj_type == (ushort)2) { AppMain.gmGmkBobbinDefEnemy(parentObj2, num1, num2); } AppMain.gmGmkBobbinChangeModeHit(parentObj1); AppMain.GmSoundPlaySE("Casino1"); AppMain.GMS_EFFECT_3DES_WORK gmsEffect3DesWork = AppMain.GmEfctCmnEsCreate(parentObj1, 16); gmsEffect3DesWork.efct_com.obj_work.pos.x = parentObj2.pos.x; gmsEffect3DesWork.efct_com.obj_work.pos.y = parentObj2.pos.y; gmsEffect3DesWork.efct_com.obj_work.pos.z = 131072; gmsEffect3DesWork.efct_com.obj_work.dir.z = (ushort)(AppMain.nnArcTan2((double)AppMain.FX_FX32_TO_F32(num2), (double)AppMain.FX_FX32_TO_F32(num1)) - 16384); if (AppMain.GSM_MAIN_STAGE_IS_SPSTAGE_NOT_RETRY()) { AppMain.OBS_CAMERA obsCamera = AppMain.ObjCameraGet(AppMain.g_obj.glb_camera_id); if (obsCamera != null) { gmsEffect3DesWork.efct_com.obj_work.dir.z -= (ushort)obsCamera.roll; } } AppMain.GMM_PAD_VIB_SMALL(); } }
// Token: 0x06000085 RID: 133 RVA: 0x00007738 File Offset: 0x00005938 private static void gmEveMgrStateFuncSingleScr() { AppMain.OBS_CAMERA obs_CAMERA = AppMain.ObjCameraGet(AppMain.g_obj.glb_camera_id); if (obs_CAMERA != null && (obs_CAMERA.disp_pos.x != AppMain.g_gm_eve_mgr_work.prev_pos[0] || obs_CAMERA.disp_pos.y != AppMain.g_gm_eve_mgr_work.prev_pos[1])) { AppMain.GmEveMgrCreateEventLcd(3U); } }
// Token: 0x060017A4 RID: 6052 RVA: 0x000D1450 File Offset: 0x000CF650 private static void gmGmkSsTimeEfctMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.OBS_CAMERA obs_CAMERA = AppMain.ObjCameraGet(AppMain.g_obj.glb_camera_id); if (obs_CAMERA != null) { obj_work.dir.z = ( ushort )(-( ushort )obs_CAMERA.roll); } }
private static void gmGmkSsTimeEfctMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.OBS_CAMERA obsCamera = AppMain.ObjCameraGet(AppMain.g_obj.glb_camera_id); if (obsCamera == null) { return; } obj_work.dir.z = (ushort)-obsCamera.roll; }
private void dmLogoSegaCamera(AppMain.OBS_CAMERA camera) { camera.disp_pos.x = 0.0f; camera.disp_pos.y = 0.0f; camera.disp_pos.z = 200f; camera.target_pos.x = 0.0f; camera.target_pos.y = 0.0f; camera.target_pos.z = 0.0f; }
private void dmTitleOpCamera(AppMain.OBS_CAMERA camera) { camera.disp_pos.x = 0.0f; camera.disp_pos.y = 5f; camera.disp_pos.z = 160f; camera.target_pos.x = 0.0f; camera.target_pos.y = 0.0f; camera.target_pos.z = 10f; }
private static void gmEveMgrStateFuncSingleScr() { AppMain.OBS_CAMERA obsCamera = AppMain.ObjCameraGet(AppMain.g_obj.glb_camera_id); if (obsCamera == null || (double)obsCamera.disp_pos.x == (double)AppMain.g_gm_eve_mgr_work.prev_pos[0] && (double)obsCamera.disp_pos.y == (double)AppMain.g_gm_eve_mgr_work.prev_pos[1]) { return; } AppMain.GmEveMgrCreateEventLcd(3U); }
// Token: 0x0600012F RID: 303 RVA: 0x0000D780 File Offset: 0x0000B980 private static float ObjCameraDispScaleGet(int cam_id) { AppMain.mppAssertNotImpl(); AppMain.OBS_CAMERA obs_CAMERA = AppMain.obj_camera_sys.obj_camera[cam_id]; if (obs_CAMERA.disp_pos.z >= 0f) { return(1f - obs_CAMERA.disp_pos.z / 2f); } return(1f - obs_CAMERA.disp_pos.z); }
private static ushort GmMainGetObjectRotation() { ushort num = 0; AppMain.OBS_CAMERA obsCamera = AppMain.ObjCameraGet(AppMain.g_obj.glb_camera_id); if (obsCamera != null) { num = (ushort)-obsCamera.roll; } return(num); }
// Token: 0x0600104D RID: 4173 RVA: 0x0008EB28 File Offset: 0x0008CD28 private static void gmCameraFuncMapFar(AppMain.OBS_CAMERA obj_camera) { AppMain.OBS_CAMERA obs_CAMERA = AppMain.ObjCameraGet(0); obj_camera.pos.Assign(AppMain.GmMapFarGetCameraPos(obs_CAMERA.disp_pos)); obj_camera.target_pos.Assign(AppMain.GmMapFarGetCameraTarget(obj_camera.pos)); obj_camera.disp_pos.Assign(obj_camera.pos); if (!AppMain.GSM_MAIN_STAGE_IS_SPSTAGE()) { obj_camera.roll = obs_CAMERA.roll; } }
private static void gmMainPre(AppMain.MTS_TASK_TCB tcb) { AppMain.gmMainUpdateSuspendedPause(); AppMain.GMS_MAIN_SYSTEM gGmMainSystem = AppMain.g_gm_main_system; if (((int)gGmMainSystem.game_flag & 134217728) != 0) { AppMain.g_gm_main_system.game_flag &= 4160749567U; if (AppMain.g_gs_main_sys_info.stage_id != (ushort)28 && ((int)AppMain.g_gm_main_system.game_flag & 524288) == 0) { AppMain.GmSoundPlayStageBGM(0); } } CPadVirtualPad.CreateInstance().Update(); AppMain.CPadPolarHandle instance = AppMain.CPadPolarHandle.CreateInstance(); instance.Update(); int polarNow = gGmMainSystem.polar_now; gGmMainSystem.polar_now = instance.GetAngle32Value(); gGmMainSystem.polar_diff = gGmMainSystem.polar_now - polarNow; if (!AppMain.gmMainIsUseWaitUpCamera()) { return; } if (AppMain.GmPlayerIsStateWait(gGmMainSystem.ply_work[0])) { if (gGmMainSystem.camscale_state == AppMain.GME_MAIN_CAMSCALE_STATE.GMD_MAIN_CAMSCALE_STATE_NON) { gGmMainSystem.camscale_state = AppMain.GME_MAIN_CAMSCALE_STATE.GMD_MAIN_CAMSCALE_STATE_ZOOM; } } else { gGmMainSystem.camscale_state = AppMain.GME_MAIN_CAMSCALE_STATE.GMD_MAIN_CAMSCALE_STATE_NON; gGmMainSystem.camera_scale = 0.6743833f; } if (gGmMainSystem.camscale_state == AppMain.GME_MAIN_CAMSCALE_STATE.GMD_MAIN_CAMSCALE_STATE_ZOOM) { gGmMainSystem.camera_scale -= 0.01f; if ((double)gGmMainSystem.camera_scale < 0.337191671133041) { gGmMainSystem.camera_scale = 0.3371917f; gGmMainSystem.camscale_state = AppMain.GME_MAIN_CAMSCALE_STATE.GMD_MAIN_CAMSCALE_STATE_UP; } } for (int cam_id = 0; cam_id < 7; ++cam_id) { AppMain.OBS_CAMERA obsCamera = AppMain.ObjCameraGet(cam_id); if (obsCamera != null) { obsCamera.scale = gGmMainSystem.camera_scale; } } }
private static void ObjCamera3dInit(int cam_id) { if (AppMain.obj_camera_sys == null) { return; } if (AppMain.obj_camera_sys.obj_camera[cam_id] == null) { AppMain.NNS_VECTOR pos = new AppMain.NNS_VECTOR(); if (AppMain.ObjCameraInit(cam_id, pos, 0, (ushort)0, 61438) == -1) { return; } //AppMain.GlobalPool<AppMain.NNS_VECTOR>.Release(pos); } AppMain.OBS_CAMERA obj_camera = AppMain.obj_camera_sys.obj_camera[cam_id]; obj_camera.flag |= 16U; obj_camera.znear = 1f; obj_camera.zfar = 60000f; obj_camera.aspect = AppMain.AMD_SCREEN_ASPECT; obj_camera.fovy = AppMain.NNM_DEGtoA32(45f); AppMain.nnMakePerspectiveMatrix(obj_camera.prj_pers_mtx, obj_camera.fovy, obj_camera.aspect, obj_camera.znear, obj_camera.zfar); obj_camera.scale = 5f / 64f; float num1 = (float)((double)AppMain.g_obj.disp_height * (double)obj_camera.scale * 0.5 * 1.0); float num2 = num1 * obj_camera.aspect; obj_camera.left = -num2; obj_camera.right = num2; obj_camera.bottom = -num1; obj_camera.top = num1; AppMain.nnMakeOrthoMatrix(obj_camera.prj_ortho_mtx, obj_camera.left, obj_camera.right, obj_camera.bottom, obj_camera.top, obj_camera.znear, obj_camera.zfar); switch (obj_camera.camera_type) { case AppMain.OBE_CAMERA_TYPE.OBE_CAMERA_TYPE_TARGET_ROLL: AppMain.NNS_CAMERA_TARGET_ROLL cameraTargetRoll = new AppMain.NNS_CAMERA_TARGET_ROLL(); AppMain.ObjCameraGetTargetRollCamera(obj_camera, cameraTargetRoll); AppMain.nnMakeTargetRollCameraViewMatrix(obj_camera.view_mtx, cameraTargetRoll); break; case AppMain.OBE_CAMERA_TYPE.OBE_CAMERA_TYPE_TARGET_UP_TARGET: AppMain.NNS_CAMERA_TARGET_UPTARGET cameraTargetUptarget = new AppMain.NNS_CAMERA_TARGET_UPTARGET(); AppMain.ObjCameraGetTargetUpTargetCamera(obj_camera, cameraTargetUptarget); AppMain.nnMakeTargetUpTargetCameraViewMatrix(obj_camera.view_mtx, cameraTargetUptarget); break; case AppMain.OBE_CAMERA_TYPE.OBE_CAMERA_TYPE_TARGET_UP_VEC: AppMain.NNS_CAMERA_TARGET_UPVECTOR cameraTargetUpvector = new AppMain.NNS_CAMERA_TARGET_UPVECTOR(); AppMain.ObjCameraGetTargetUpVecCamera(obj_camera, cameraTargetUpvector); AppMain.nnMakeTargetUpVectorCameraViewMatrix(obj_camera.view_mtx, cameraTargetUpvector); break; } }
private static void objCameraPosLimitCheck(AppMain.OBS_CAMERA obj_camera, AppMain.NNS_VECTOR pPos) { int num1 = 0; if ((double)pPos.z != 0.0) { if ((double)obj_camera.limit[4] > (double)pPos.z) { pPos.z = (float)obj_camera.limit[4]; } if ((double)obj_camera.limit[5] < (double)pPos.z) { pPos.z = (float)obj_camera.limit[5]; } if (1.0 / (double)AppMain.ObjCameraDispScaleGet((int)obj_camera.index) * (double)AppMain.OBD_LCD_X > (double)(obj_camera.limit[2] - obj_camera.limit[0])) { float num2 = 1f / ((float)(obj_camera.limit[2] - obj_camera.limit[0]) / (float)AppMain.OBD_LCD_X); pPos.z = (double)pPos.z < 0.0 ? (float)(((double)num2 - 1.0) * -1.0) : (float)(((double)num2 - 1.0) * -2.0); } if (1.0 / (double)AppMain.ObjCameraDispScaleGet((int)obj_camera.index) * (double)AppMain.OBD_LCD_Y > (double)(obj_camera.limit[3] - obj_camera.limit[1])) { float num2 = 1f / ((float)(obj_camera.limit[3] - obj_camera.limit[1]) / (float)AppMain.OBD_LCD_X); pPos.z = (double)pPos.z < 0.0 ? (float)(((double)num2 - 1.0) * -1.0) : (float)(((double)num2 - 1.0) * -2.0); } } if ((double)pPos.z > 0.0) { num1 = AppMain.FXM_FLOAT_TO_FX32(1f / AppMain.ObjCameraDispScaleGet((int)obj_camera.index) * (float)AppMain.OBD_LCD_X) - ((int)AppMain.OBD_LCD_X << 12) >> 13; } if ((double)(obj_camera.limit[0] + num1) > (double)pPos.x) { pPos.x = (float)(obj_camera.limit[0] + num1); } if ((double)(obj_camera.limit[2] - (int)AppMain.OBD_LCD_X - num1) < (double)pPos.x) { pPos.x = (float)(obj_camera.limit[2] - (int)AppMain.OBD_LCD_X - num1); } if ((double)pPos.z > 0.0) { num1 = AppMain.FXM_FLOAT_TO_FX32(1f / AppMain.ObjCameraDispScaleGet((int)obj_camera.index) * (float)AppMain.OBD_LCD_Y) - ((int)AppMain.OBD_LCD_Y << 12) >> 13; } if ((double)(obj_camera.limit[1] + num1) > (double)pPos.y) { pPos.y = (float)(obj_camera.limit[1] + num1); } if ((double)(obj_camera.limit[3] - (int)AppMain.OBD_LCD_Y - num1) >= (double)pPos.y) { return; } pPos.y = (float)(obj_camera.limit[3] - (int)AppMain.OBD_LCD_Y - num1); }
private static void gmRingDrawFuncRing3D(AppMain.GMS_RING_WORK ring_work) { AppMain.VecU16 vecU16 = new AppMain.VecU16(); vecU16.x = (ushort)0; vecU16.y = AppMain.gm_ring_sys_work.dir; AppMain.OBS_CAMERA obsCamera = AppMain.ObjCameraGet(AppMain.g_obj.glb_camera_id); vecU16.z = (ushort)-obsCamera.roll; int drawRingCount = (int)AppMain.gm_ring_sys_work.draw_ring_count; AppMain.gm_ring_sys_work.draw_ring_pos[drawRingCount].x = ring_work.pos.x; AppMain.gm_ring_sys_work.draw_ring_pos[drawRingCount].y = ring_work.pos.y; AppMain.gm_ring_sys_work.draw_ring_pos[drawRingCount].z = ring_work.pos.z; ++AppMain.gm_ring_sys_work.draw_ring_count; }