private static void gmGmkForceSpinResetMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_COM_WORK gmsEnemyComWork = (AppMain.GMS_ENEMY_COM_WORK)obj_work; AppMain.GMS_PLAYER_WORK ply_work = AppMain.g_gm_main_system.ply_work[0]; if (((int)ply_work.player_flag & 1024) != 0 || ((int)ply_work.obj_work.flag & 2) != 0 || (((int)AppMain.g_gm_main_system.game_flag & 262656) != 0 || !AppMain.gmGmkForceSpinRectChk(obj_work, ply_work)) || ply_work.seq_state != 51 && ply_work.seq_state != 52 && ply_work.seq_state != 53) { return; } if (((int)ply_work.obj_work.move_flag & 1) != 0) { ply_work.no_spddown_timer = 0; if (((int)gmsEnemyComWork.eve_rec.flag & 1) != 0) { AppMain.GmPlySeqChangeSequence(ply_work, 10); } else { AppMain.GmPlySeqInitFw(ply_work); } } else { AppMain.GmPlySeqGmkInitSpinFall(ply_work, ply_work.obj_work.spd.x, ply_work.obj_work.spd.y); } }
// Token: 0x060003E5 RID: 997 RVA: 0x0001F81C File Offset: 0x0001DA1C private static void gmEneMereonHideSearchMain(AppMain.OBS_OBJECT_WORK obj_work) { float[] array = new float[2]; float[] array2 = new float[2]; AppMain.GMS_PLAYER_WORK gms_PLAYER_WORK = AppMain.g_gm_main_system.ply_work[(int)((UIntPtr)0)]; AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_PLAYER_WORK.rect_work[2]; array[0] = AppMain.FXM_FX32_TO_FLOAT(gms_PLAYER_WORK.obj_work.pos.x + (obs_RECT_WORK.rect.top + obs_RECT_WORK.rect.bottom >> 1)); array[1] = AppMain.FXM_FX32_TO_FLOAT(gms_PLAYER_WORK.obj_work.pos.y + (obs_RECT_WORK.rect.left + obs_RECT_WORK.rect.right >> 1)); AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)obj_work; obs_RECT_WORK = gms_ENEMY_COM_WORK.rect_work[2]; array2[0] = AppMain.FXM_FX32_TO_FLOAT(obj_work.pos.x + (obs_RECT_WORK.rect.top + obs_RECT_WORK.rect.bottom >> 1)); array2[1] = AppMain.FXM_FX32_TO_FLOAT(obj_work.pos.y + (obs_RECT_WORK.rect.left + obs_RECT_WORK.rect.right >> 1)); float num = array2[0] - array[0]; float num2 = array2[1] - array[1]; float num3; if (gms_ENEMY_COM_WORK.eve_rec.id == 4) { num3 = 96f; } else { num3 = 192f; } if (num * num + num2 * num2 <= num3 * num3) { obj_work.disp_flag &= 4294967263U; AppMain.gmEneMereonAppearInit(obj_work); } }
// Token: 0x060003E7 RID: 999 RVA: 0x0001FA40 File Offset: 0x0001DC40 private static void gmEneMereonAppearMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)obj_work; obj_work.user_timer = AppMain.ObjTimeCountUp(obj_work.user_timer); int num; if (gms_ENEMY_COM_WORK.eve_rec.id == 4) { num = 30; } else { num = 15; } obj_work.obj_3d.draw_state.alpha.alpha = ( float )obj_work.user_timer / ( float )(num * 4096); if (obj_work.user_timer >= num * 4096) { obj_work.obj_3d.draw_state.alpha.alpha = 1f; obj_work.disp_flag &= 4160749567U; if (gms_ENEMY_COM_WORK.eve_rec.id == 4) { AppMain.gmEneMereonAtkInit(obj_work); return; } AppMain.gmEneMereonAtkRocketInit(obj_work); } }
// Token: 0x060018A3 RID: 6307 RVA: 0x000E0788 File Offset: 0x000DE988 private static void gmGmkScrewDefFunc(AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)mine_rect.parent_obj; AppMain.GMS_PLAYER_WORK gms_PLAYER_WORK = (AppMain.GMS_PLAYER_WORK)match_rect.parent_obj; if (gms_ENEMY_COM_WORK == null) { return; } if (gms_PLAYER_WORK == null) { return; } if (gms_PLAYER_WORK.obj_work.obj_type != 1) { return; } if (gms_PLAYER_WORK.seq_state == 38) { return; } int spd = gms_PLAYER_WORK.spd3; ushort flag = gms_ENEMY_COM_WORK.eve_rec.flag; if (((gms_PLAYER_WORK.obj_work.spd_m >= spd && (( int )gms_ENEMY_COM_WORK.eve_rec.flag & AppMain.GMD_GMK_SCREW_EVE_FLAG_LEFT) == 0) || (gms_PLAYER_WORK.obj_work.spd_m <= -spd && (( int )gms_ENEMY_COM_WORK.eve_rec.flag & AppMain.GMD_GMK_SCREW_EVE_FLAG_LEFT) != 0)) && (gms_PLAYER_WORK.obj_work.move_flag & 1U) != 0U) { AppMain.GmPlySeqInitScrew(gms_PLAYER_WORK, gms_ENEMY_COM_WORK, gms_ENEMY_COM_WORK.obj_work.pos.x, gms_ENEMY_COM_WORK.obj_work.pos.y, flag); gms_ENEMY_COM_WORK.obj_work.flag |= 16U; } }
// Token: 0x06000B2B RID: 2859 RVA: 0x00064C88 File Offset: 0x00062E88 private static void gmGmkSplRingDefFunc(AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)mine_rect.parent_obj; GMS_PLAYER_WORK gms_PLAYER_WORK = (GMS_PLAYER_WORK)match_rect.parent_obj; if (gms_ENEMY_COM_WORK == null) { return; } if (gms_PLAYER_WORK == null || gms_PLAYER_WORK.obj_work.obj_type != 1) { return; } if ((gms_PLAYER_WORK.player_flag & 262144U) != 0U) { GmPlayer.SetEndTruckRide(gms_PLAYER_WORK); } AppMain.GmPlySeqInitSplIn(gms_PLAYER_WORK, gms_ENEMY_COM_WORK.obj_work.pos); gms_PLAYER_WORK.gmk_flag2 |= 6U; (( OBS_OBJECT_WORK )gms_ENEMY_COM_WORK).ppFunc = AppMain.gmGmkSplRingVanishReady; gms_ENEMY_COM_WORK.obj_work.dir.y = ( ushort )((gms_ENEMY_COM_WORK.obj_work.dir.y & 57344)); gms_ENEMY_COM_WORK.obj_work.flag |= 2U; AppMain.GMM_PAD_VIB_SMALL(); GmSound.PlaySE("Special1"); }
// Token: 0x06000FA5 RID: 4005 RVA: 0x00088C04 File Offset: 0x00086E04 private static void HgTrophyIncEnemyKillCount(AppMain.OBS_OBJECT_WORK ene_obj) { AppMain.GSS_MAIN_SYS_INFO gss_MAIN_SYS_INFO = AppMain.GsGetMainSysInfo(); if (AppMain.hgTrophyIsPlayDemo()) { return; } if (ene_obj.obj_type != 2) { return; } AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)ene_obj; if (gms_ENEMY_COM_WORK.eve_rec == null) { return; } if ((gms_ENEMY_COM_WORK.eve_rec.id != 0 && gms_ENEMY_COM_WORK.eve_rec.id <= 0) || gms_ENEMY_COM_WORK.eve_rec.id >= 39) { return; } if (gss_MAIN_SYS_INFO.ene_kill_count < 1000U) { gss_MAIN_SYS_INFO.ene_kill_count += 1U; } else { gss_MAIN_SYS_INFO.ene_kill_count = 1000U; } AppMain.HgTrophyTryAcquisition(2); }
// Token: 0x06001B0A RID: 6922 RVA: 0x000F61E0 File Offset: 0x000F43E0 private static void gmGmkPulleyDefFunc(AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)mine_rect.parent_obj; AppMain.GMS_PLAYER_WORK gms_PLAYER_WORK = (AppMain.GMS_PLAYER_WORK)match_rect.parent_obj; if (gms_ENEMY_COM_WORK == null) { return; } if (gms_PLAYER_WORK == null || gms_PLAYER_WORK.obj_work.obj_type != 1) { return; } if (gms_PLAYER_WORK.gmk_obj == (AppMain.OBS_OBJECT_WORK)gms_ENEMY_COM_WORK) { return; } AppMain.GmPlySeqInitPulley(gms_PLAYER_WORK, gms_ENEMY_COM_WORK); AppMain.ObjDrawObjectActionSet3DNN(gms_ENEMY_COM_WORK.obj_work, 3, 0); if ((gms_PLAYER_WORK.obj_work.disp_flag & 1U) != 0U) { gms_ENEMY_COM_WORK.obj_work.dir.y = 32768; } else { gms_ENEMY_COM_WORK.obj_work.dir.y = 0; } gms_ENEMY_COM_WORK.obj_work.user_flag = ( uint )(( ulong )gms_ENEMY_COM_WORK.obj_work.user_flag & 18446744073709518847UL); ((AppMain.OBS_OBJECT_WORK)gms_ENEMY_COM_WORK).ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmGmkPulleyMove); AppMain.ObjRectWorkSet(gms_ENEMY_COM_WORK.rect_work[2], -32, 9, 32, 24); }
private static AppMain.OBS_OBJECT_WORK GmGmkGearMoveEndInit( AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type) { AppMain.OBS_OBJECT_WORK rideWork = AppMain.GMM_ENEMY_CREATE_RIDE_WORK(eve_rec, pos_x, pos_y, (AppMain.TaskWorkFactoryDelegate)(() => (object)new AppMain.GMS_GMK_GEAR_WORK()), "GMK_GEAR_END"); AppMain.GMS_ENEMY_COM_WORK gmsEnemyComWork = (AppMain.GMS_ENEMY_COM_WORK)rideWork; if (eve_rec.byte_param[1] != (byte)0) { AppMain.OBS_OBJECT_WORK obsObjectWork = AppMain.GmEventMgrLocalEventBirth((ushort)182, pos_x, pos_y, (ushort)0, (sbyte)0, (sbyte)0, (byte)0, (byte)0, (byte)1); rideWork.parent_obj = obsObjectWork; rideWork.flag |= 18U; } else { rideWork.ppIn = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmGmkGearInFunc); AppMain.OBS_RECT_WORK pRec = gmsEnemyComWork.rect_work[1]; AppMain.ObjRectGroupSet(pRec, (byte)0, (byte)2); pRec.ppDef = (AppMain.OBS_RECT_WORK_Delegate1)null; pRec.ppHit = new AppMain.OBS_RECT_WORK_Delegate1(AppMain.gmGmkMoveGearEndAtkHitFunc); AppMain.ObjRectAtkSet(pRec, (ushort)8, (short)1); AppMain.ObjRectDefSet(pRec, ushort.MaxValue, (short)0); AppMain.ObjRectWorkSet(pRec, (short)-32, (short)-32, (short)32, (short)32); pRec.flag |= 1024U; AppMain.gmGmkMoveGearEndSwitchFwInit(rideWork); } rideWork.move_flag |= 8448U; rideWork.disp_flag |= 32U; return(rideWork); }
private static int gmBoss5LandGetPlacementInfo(AppMain.GMS_BOSS5_LAND_PLACEMENT_INFO place_info) { AppMain.GMS_EVE_RECORD_EVENT gmsEveRecordEvent = (AppMain.GMS_EVE_RECORD_EVENT)null; AppMain.OBS_OBJECT_WORK obj_work; for (obj_work = AppMain.ObjObjectSearchRegistObject((AppMain.OBS_OBJECT_WORK)null, (ushort)3); obj_work != null; obj_work = AppMain.ObjObjectSearchRegistObject(obj_work, (ushort)3)) { AppMain.GMS_ENEMY_COM_WORK gmsEnemyComWork = (AppMain.GMS_ENEMY_COM_WORK)obj_work; if (gmsEnemyComWork.eve_rec != null && gmsEnemyComWork.eve_rec.id == (ushort)282) { gmsEveRecordEvent = gmsEnemyComWork.eve_rec; break; } } if (obj_work == null) { AppMain.mppAssertNotImpl(); return(0); } place_info.pos_x = obj_work.pos.x; place_info.pos_y = obj_work.pos.y; int num = (int)gmsEveRecordEvent.left + (int)gmsEveRecordEvent.width << 3; place_info.part_num = (int)((long)num / (long)AppMain.GMD_BOSS5_LAND_LDPART_WIDTH_INT); return(1); }
// Token: 0x06001567 RID: 5479 RVA: 0x000B9DF4 File Offset: 0x000B7FF4 private static void gmGmkForceSpinResetMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_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 || (gms_PLAYER_WORK.obj_work.flag & 2U) != 0U || (AppMain.g_gm_main_system.game_flag & 262656U) != 0U) { return; } if (AppMain.gmGmkForceSpinRectChk(obj_work, gms_PLAYER_WORK) && (gms_PLAYER_WORK.seq_state == 51 || gms_PLAYER_WORK.seq_state == 52 || gms_PLAYER_WORK.seq_state == 53)) { if ((gms_PLAYER_WORK.obj_work.move_flag & 1U) != 0U) { gms_PLAYER_WORK.no_spddown_timer = 0; if ((gms_ENEMY_COM_WORK.eve_rec.flag & 1) != 0) { AppMain.GmPlySeqChangeSequence(gms_PLAYER_WORK, 10); return; } AppMain.GmPlySeqInitFw(gms_PLAYER_WORK); return; } else { AppMain.GmPlySeqGmkInitSpinFall(gms_PLAYER_WORK, gms_PLAYER_WORK.obj_work.spd.x, gms_PLAYER_WORK.obj_work.spd.y); } } }
public static void gmGmkTGravityForceChangeDefFunc( AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect) { AppMain.GMS_ENEMY_COM_WORK parentObj1 = (AppMain.GMS_ENEMY_COM_WORK)mine_rect.parent_obj; AppMain.GMS_PLAYER_WORK parentObj2 = (AppMain.GMS_PLAYER_WORK)match_rect.parent_obj; if (parentObj1 == null || parentObj2 == null || (parentObj2.obj_work.obj_type != (ushort)1 || ((int)parentObj2.obj_work.move_flag & 1) != 0) || (((int)parentObj1.eve_rec.flag & AppMain.GMD_GMK_T_GRAVITY_A) != 0 && ((int)parentObj2.obj_work.flag & 1) != 0 || ((int)parentObj1.eve_rec.flag & AppMain.GMD_GMK_T_GRAVITY_B) != 0 && ((int)parentObj2.obj_work.flag & 1) == 0)) { return; } int num1 = ((int)parentObj1.eve_rec.id - 268) * 16384; ushort num2 = (ushort)((uint)num1 - (uint)parentObj2.jump_pseudofall_dir); parentObj2.jump_pseudofall_dir = (ushort)num1; int a = num1 - parentObj2.ply_pseudofall_dir; if ((ushort)AppMain.MTM_MATH_ABS(a) > (ushort)32768) { if (a < 0) { parentObj2.ply_pseudofall_dir += 65536 + a; } else { parentObj2.ply_pseudofall_dir += a - 65536; } } else { parentObj2.ply_pseudofall_dir = num1; } AppMain.ObjObjectSpdDirFall(ref parentObj2.obj_work.spd.x, ref parentObj2.obj_work.spd.y, (ushort)-num2); parentObj2.gmk_flag |= 16777216U; }
private static AppMain.OBS_OBJECT_WORK GmGmkScrewInit( AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type) { AppMain.OBS_OBJECT_WORK work = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, (AppMain.TaskWorkFactoryDelegate)(() => (object)new AppMain.GMS_ENEMY_COM_WORK()), "GMK_SCREW"); AppMain.GMS_ENEMY_COM_WORK gmsEnemyComWork = (AppMain.GMS_ENEMY_COM_WORK)work; work.move_flag |= 8480U; gmsEnemyComWork.rect_work[0].flag &= 4294967291U; gmsEnemyComWork.rect_work[1].flag &= 4294967291U; AppMain.OBS_RECT_WORK pRec = gmsEnemyComWork.rect_work[2]; pRec.ppHit = (AppMain.OBS_RECT_WORK_Delegate1)null; pRec.ppDef = new AppMain.OBS_RECT_WORK_Delegate1(AppMain.gmGmkScrewDefFunc); AppMain.ObjRectAtkSet(pRec, (ushort)0, (short)0); AppMain.ObjRectDefSet(pRec, (ushort)65534, (short)0); if (((int)eve_rec.flag & AppMain.GMD_GMK_SCREW_EVE_FLAG_LEFT) != 0) { AppMain.ObjRectWorkSet(pRec, (short)-4, (short)-8, (short)-16, (short)0); } else { AppMain.ObjRectWorkSet(pRec, (short)4, (short)-8, (short)16, (short)0); } work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmGmkScrewMain); return(work); }
// Token: 0x0600068E RID: 1678 RVA: 0x0003B2A4 File Offset: 0x000394A4 private static int gmGmkEnBmprCheckGroupBonus(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work; int num = AppMain.gmGmkEnBmperGetUserWorkLife(obj_work); if (num > 0) { return(0); } sbyte top = gms_ENEMY_3D_WORK.ene_com.eve_rec.top; if (top == 0) { return(0); } for (AppMain.OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.ObjObjectSearchRegistObject(null, 3); obs_OBJECT_WORK != null; obs_OBJECT_WORK = AppMain.ObjObjectSearchRegistObject(obs_OBJECT_WORK, 3)) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)obs_OBJECT_WORK; if (obs_OBJECT_WORK != obj_work && (gms_ENEMY_COM_WORK.eve_rec.id == 164 || gms_ENEMY_COM_WORK.eve_rec.id == 165 || gms_ENEMY_COM_WORK.eve_rec.id == 166 || gms_ENEMY_COM_WORK.eve_rec.id == 167) && gms_ENEMY_COM_WORK.eve_rec.top == top && (Convert.ToInt32(obs_OBJECT_WORK.user_flag) & 1) != 0) { return(0); } } return(1); }
// Token: 0x06001AFF RID: 6911 RVA: 0x000F573C File Offset: 0x000F393C private static void gmGmkSsEmeraldDefFunc(AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)mine_rect.parent_obj; GMS_PLAYER_WORK gms_PLAYER_WORK = (GMS_PLAYER_WORK)match_rect.parent_obj; if (gms_ENEMY_COM_WORK == null) { return; } if (gms_PLAYER_WORK == null || gms_PLAYER_WORK.obj_work.obj_type != 1) { return; } if (gms_PLAYER_WORK.gmk_obj == (OBS_OBJECT_WORK)gms_ENEMY_COM_WORK) { return; } GmSound.PlayJingle(3U, 0); GmSound.PlaySE("Special5"); AppMain.GmComEfctCreateRing(gms_ENEMY_COM_WORK.obj_work.pos.x, gms_ENEMY_COM_WORK.obj_work.pos.y); AppMain.gmGmkSsEmeraldEfctKill(); gms_ENEMY_COM_WORK.obj_work.flag |= 4U; AppMain.g_gm_main_system.game_flag |= 65536U; }
// Token: 0x06001B4F RID: 6991 RVA: 0x000F9AC0 File Offset: 0x000F7CC0 private static void gmGmkItemBodyDefFunc(AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)mine_rect.parent_obj; GMS_PLAYER_WORK gms_PLAYER_WORK = (GMS_PLAYER_WORK)match_rect.parent_obj; if (gms_ENEMY_COM_WORK == null || gms_PLAYER_WORK == null) { return; } if (gms_PLAYER_WORK.obj_work.obj_type != 1) { return; } if (gms_PLAYER_WORK.obj_work.touch_obj == gms_ENEMY_COM_WORK.obj_work) { short num = gms_PLAYER_WORK.obj_work.field_rect[1]; int num2 = (int)(gms_ENEMY_COM_WORK.col_work.obj_col.height + (ushort)gms_ENEMY_COM_WORK.col_work.obj_col.ofst_y) << 12; if (gms_PLAYER_WORK.obj_work.pos.y + ( int )num >= gms_ENEMY_COM_WORK.obj_work.pos.y + num2 && gms_PLAYER_WORK.obj_work.move.y <= 0) { gms_ENEMY_COM_WORK.obj_work.spd.y = -8192; gms_ENEMY_COM_WORK.obj_work.move_flag |= 144U; gms_ENEMY_COM_WORK.obj_work.move_flag &= 4294967294U; gms_ENEMY_COM_WORK.obj_work.flag |= 2U; } } }
// Token: 0x060017A3 RID: 6051 RVA: 0x000D1308 File Offset: 0x000CF508 private static void gmGmkSsTimeDefFunc(AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)mine_rect.parent_obj; GMS_PLAYER_WORK gms_PLAYER_WORK = (GMS_PLAYER_WORK)match_rect.parent_obj; if (gms_ENEMY_COM_WORK == null) { return; } if (gms_PLAYER_WORK == null || gms_PLAYER_WORK.obj_work.obj_type != 1) { return; } if (gms_PLAYER_WORK.gmk_obj == ( OBS_OBJECT_WORK )gms_ENEMY_COM_WORK) { return; } AppMain.GMS_EFFECT_3DES_WORK gms_EFFECT_3DES_WORK = AppMain.GmEfctZoneEsCreate(gms_ENEMY_COM_WORK.obj_work, 5, 17); gms_EFFECT_3DES_WORK.efct_com.obj_work.flag |= 512U; gms_EFFECT_3DES_WORK.efct_com.obj_work.ppFunc = AppMain.gmGmkSsTimeEfctMain; gms_EFFECT_3DES_WORK = AppMain.GmEfctZoneEsCreate(gms_ENEMY_COM_WORK.obj_work, 5, AppMain.gm_gmk_ss_time_add_msg[AppMain.GsEnvGetLanguage()]); gms_EFFECT_3DES_WORK.efct_com.obj_work.flag |= 512U; gms_EFFECT_3DES_WORK.efct_com.obj_work.ppFunc = AppMain.gmGmkSsTimeEfctMain; gms_EFFECT_3DES_WORK.obj_3des.command_state = 10U; gms_ENEMY_COM_WORK.enemy_flag |= 65536U; GmSound.PlaySE("Special6"); AppMain.GmFixRequestTimerFlash(); AppMain.g_gm_main_system.game_time += AppMain.gm_gmk_ss_time_add_subtract[( int )(( UIntPtr )gms_ENEMY_COM_WORK.obj_work.user_work)]; gms_ENEMY_COM_WORK.obj_work.flag |= 4U; }
// Token: 0x06000784 RID: 1924 RVA: 0x00042774 File Offset: 0x00040974 private static void gmGmkBoss3RouteMainFunc(OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work; for (OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.ObjObjectSearchRegistObject(null, 2); obs_OBJECT_WORK != null; obs_OBJECT_WORK = AppMain.ObjObjectSearchRegistObject(obs_OBJECT_WORK, 2)) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)obs_OBJECT_WORK; if (gms_ENEMY_COM_WORK.eve_rec.id == 319) { if (AppMain.gmGmkBoss3RouteCheckHit(obs_OBJECT_WORK, obj_work)) { if ((gms_ENEMY_3D_WORK.ene_com.eve_rec.flag & 2) != 0) { obs_OBJECT_WORK.spd.x = 0; obs_OBJECT_WORK.spd.y = 0; obs_OBJECT_WORK.user_flag = 1U; obj_work.flag |= 4U; obj_work.ppFunc = null; gms_ENEMY_3D_WORK.ene_com.enemy_flag |= 65536U; return; } if (AppMain.gmGmkBoss3RouteSetMoveParam(obs_OBJECT_WORK, obj_work)) { obj_work.flag |= 4U; obj_work.ppFunc = null; gms_ENEMY_3D_WORK.ene_com.enemy_flag |= 65536U; } } return; } } }
private static void gmGmkMoveGearDefFunc( AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect) { AppMain.GMS_GMK_GEAR_WORK parentObj1 = (AppMain.GMS_GMK_GEAR_WORK)mine_rect.parent_obj; if (match_rect.parent_obj.obj_type != (ushort)3) { return; } AppMain.GMS_ENEMY_COM_WORK parentObj2 = (AppMain.GMS_ENEMY_COM_WORK)match_rect.parent_obj; if (parentObj2.eve_rec.id == (ushort)183) { parentObj1.move_end_x = match_rect.parent_obj.pos.x; parentObj1.move_end_y = match_rect.parent_obj.pos.y; if (((int)parentObj2.eve_rec.flag & 1) == 0) { return; } parentObj1.gear_end_obj = match_rect.parent_obj; } else { if (((AppMain.GMS_ENEMY_COM_WORK)match_rect.parent_obj).eve_rec.id != (ushort)184) { return; } parentObj1.sw_gear_obj = match_rect.parent_obj; } }
private static void gmGmkPressWallStopperMain(AppMain.OBS_OBJECT_WORK obj_work) { if (AppMain.pwall == null) { obj_work.flag |= 8U; } else { if (obj_work.user_flag != 0U && (obj_work.pos.y < AppMain.g_obj.camera[0][1] - 524288 || obj_work.pos.y > AppMain.g_obj.camera[0][1] + 1572864)) { return; } if (AppMain.pwall.gmk_work.ene_com.obj_work.pos.x > obj_work.pos.x) { AppMain.GMS_ENEMY_COM_WORK gmsEnemyComWork = (AppMain.GMS_ENEMY_COM_WORK)obj_work; AppMain.pwall.gmk_work.ene_com.obj_work.pos.x = obj_work.pos.x; AppMain.pwall.wall_speed = 0; obj_work.flag |= 8U; gmsEnemyComWork.enemy_flag |= 65536U; } if (obj_work.user_work_OBJECT == AppMain.pwall) { return; } AppMain.GMS_ENEMY_COM_WORK gmsEnemyComWork1 = (AppMain.GMS_ENEMY_COM_WORK)obj_work; obj_work.flag |= 8U; gmsEnemyComWork1.enemy_flag |= 65536U; } }
// Token: 0x06000698 RID: 1688 RVA: 0x0003B50C File Offset: 0x0003970C private static OBS_OBJECT_WORK GmGmkCamScrLimitInit(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_CAM_SCR_LIMIT_WORK(), "GMK_CAM_SCRLMT"); AppMain.GMS_GMK_CAM_SCR_LIMIT_WORK gms_GMK_CAM_SCR_LIMIT_WORK = (AppMain.GMS_GMK_CAM_SCR_LIMIT_WORK)obs_OBJECT_WORK; AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)obs_OBJECT_WORK; gms_ENEMY_COM_WORK.enemy_flag |= 65536U; obs_OBJECT_WORK.user_flag = (uint)eve_rec.flag; obs_OBJECT_WORK.move_flag |= 8480U; obs_OBJECT_WORK.flag |= 16U; AppMain.GMS_GMK_CAM_SCR_LIMIT_SETTING limit_setting = gms_GMK_CAM_SCR_LIMIT_WORK.limit_setting; limit_setting.limit_rect[0] = (obs_OBJECT_WORK.pos.x >> 12) + (int)(eve_rec.left * 2); limit_setting.limit_rect[2] = (obs_OBJECT_WORK.pos.x >> 12) + (int)(eve_rec.left * 2) + (int)(eve_rec.width * 2); limit_setting.limit_rect[1] = (obs_OBJECT_WORK.pos.y >> 12) + (int)(eve_rec.top * 2); limit_setting.limit_rect[3] = (obs_OBJECT_WORK.pos.y >> 12) + (int)(eve_rec.top * 2) + (int)(eve_rec.height * 2); if (eve_rec.id == 302) { obs_OBJECT_WORK.ppFunc = AppMain.gmGmkCamScrLimitSetting; AppMain.g_gm_main_system.game_flag |= 32768U; } else { obs_OBJECT_WORK.ppFunc = AppMain.gmGmkCamScrLimitMain; } return(obs_OBJECT_WORK); }
public static AppMain.OBS_OBJECT_WORK GmGmkTruckGravityInit( AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type) { AppMain.OBS_OBJECT_WORK work = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, (AppMain.TaskWorkFactoryDelegate)(() => (object)new AppMain.GMS_ENEMY_COM_WORK()), "GMK_T_GRAVITY"); AppMain.GMS_ENEMY_COM_WORK gmsEnemyComWork = (AppMain.GMS_ENEMY_COM_WORK)work; work.move_flag |= 8448U; work.disp_flag |= 32U; AppMain.OBS_RECT_WORK pRec = gmsEnemyComWork.rect_work[2]; AppMain.ObjRectGroupSet(pRec, (byte)1, (byte)1); AppMain.ObjRectAtkSet(pRec, (ushort)0, (short)1); AppMain.ObjRectDefSet(pRec, (ushort)65534, (short)0); if ((ushort)239 <= eve_rec.id && eve_rec.id <= (ushort)246) { short[] numArray = (ushort)239 > eve_rec.id || eve_rec.id > (ushort)242 ? AppMain.gm_gmk_t_gravity_rr_rect_tbl[(int)eve_rec.id - 243] : AppMain.gm_gmk_t_gravity_r_rect_tbl; AppMain.ObjRectSet(pRec.rect, numArray[0], numArray[1], numArray[2], numArray[3]); } else { AppMain.ObjRectSet(pRec.rect, (short)((int)eve_rec.left << 1), (short)((int)eve_rec.top << 1), (short)((int)eve_rec.width + (int)eve_rec.left << 1), (short)((int)eve_rec.height + (int)eve_rec.top << 1)); } pRec.parent_obj = work; pRec.flag |= 192U; pRec.ppDef = (ushort)268 > eve_rec.id || eve_rec.id > (ushort)271 ? new AppMain.OBS_RECT_WORK_Delegate1(AppMain.gmGmkTGravityChangeDefFunc) : new AppMain.OBS_RECT_WORK_Delegate1(AppMain.gmGmkTGravityForceChangeDefFunc); gmsEnemyComWork.rect_work[1].flag &= 4294967291U; gmsEnemyComWork.rect_work[0].flag &= 4294967291U; return(work); }
private static void GmPlyEfctCreateHomingCursol(AppMain.GMS_PLAYER_WORK ply_work) { if (ply_work.enemy_obj == null) { return; } AppMain.GMS_ENEMY_COM_WORK enemyObj = (AppMain.GMS_ENEMY_COM_WORK)ply_work.enemy_obj; if (enemyObj.obj_work.obj_type != (ushort)2 && enemyObj.obj_work.obj_type != (ushort)3) { return; } AppMain.GMS_EFFECT_3DES_WORK efct_work = AppMain.GmEfctCmnEsCreate(enemyObj.obj_work, 95); efct_work.efct_com.obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmPlyEfctHomingCursolMain); AppMain.OBS_RECT_WORK obsRectWork = enemyObj.rect_work[2]; efct_work.efct_com.obj_work.user_timer = (int)obsRectWork.rect.left + (int)obsRectWork.rect.right >> 1 << 12; efct_work.efct_com.obj_work.user_work = (uint)((int)obsRectWork.rect.top + (int)obsRectWork.rect.bottom >> 1 << 12); if (((int)enemyObj.obj_work.disp_flag & 1) != 0) { efct_work.efct_com.obj_work.user_timer = -efct_work.efct_com.obj_work.user_timer; } if (((int)enemyObj.obj_work.disp_flag & 2) != 0) { efct_work.efct_com.obj_work.user_work = (uint)-(int)efct_work.efct_com.obj_work.user_work; } AppMain.GmComEfctSetDispOffset(efct_work, efct_work.efct_com.obj_work.user_timer, (int)efct_work.efct_com.obj_work.user_work, 524288); }
// Token: 0x060004F9 RID: 1273 RVA: 0x0002AC60 File Offset: 0x00028E60 private static int gmBoss5LandGetPlacementInfo(AppMain.GMS_BOSS5_LAND_PLACEMENT_INFO place_info) { AppMain.GMS_EVE_RECORD_EVENT gms_EVE_RECORD_EVENT = null; AppMain.OBS_OBJECT_WORK obs_OBJECT_WORK; for (obs_OBJECT_WORK = AppMain.ObjObjectSearchRegistObject(null, 3); obs_OBJECT_WORK != null; obs_OBJECT_WORK = AppMain.ObjObjectSearchRegistObject(obs_OBJECT_WORK, 3)) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)obs_OBJECT_WORK; if (gms_ENEMY_COM_WORK.eve_rec != null && gms_ENEMY_COM_WORK.eve_rec.id == 282) { gms_EVE_RECORD_EVENT = gms_ENEMY_COM_WORK.eve_rec; break; } } if (obs_OBJECT_WORK == null) { AppMain.mppAssertNotImpl(); return(0); } place_info.pos_x = obs_OBJECT_WORK.pos.x; place_info.pos_y = obs_OBJECT_WORK.pos.y; int num = (int)(gms_EVE_RECORD_EVENT.left + (sbyte)gms_EVE_RECORD_EVENT.width); num <<= 3; place_info.part_num = ( int )(( long )num / ( long )(( ulong )AppMain.GMD_BOSS5_LAND_LDPART_WIDTH_INT)); return(1); }
private static void gmGmkSpringDefFunc( AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect) { AppMain.GMS_ENEMY_COM_WORK parentObj1 = (AppMain.GMS_ENEMY_COM_WORK)mine_rect.parent_obj; AppMain.GMS_PLAYER_WORK parentObj2 = (AppMain.GMS_PLAYER_WORK)match_rect.parent_obj; int fall_dir = -1; if (parentObj1 == null || parentObj2 == null || parentObj2.obj_work.obj_type != (ushort)1) { return; } AppMain.gmGmkSpringActInit((AppMain.OBS_OBJECT_WORK)parentObj1); int a = AppMain.MTM_MATH_CLIP((int)parentObj1.eve_rec.left, 0, 7); if (parentObj1.eve_rec.id == (ushort)76 || parentObj1.eve_rec.id == (ushort)72) { a = AppMain.MTM_MATH_CLIP(a, 0, 5); } int spd_x = 30720 + 6144 * a; int spd_y = -spd_x; if (parentObj1.eve_rec.id == (ushort)74 || parentObj1.eve_rec.id == (ushort)70) { spd_x = 0; } else if (parentObj1.eve_rec.id == (ushort)72 || parentObj1.eve_rec.id == (ushort)76) { spd_y = 0; } else { spd_x = spd_x * 181 >> 8; spd_y = spd_y * 181 >> 8; } if ((ushort)73 <= parentObj1.eve_rec.id && parentObj1.eve_rec.id <= (ushort)75) { spd_y = -spd_y; } if ((ushort)75 <= parentObj1.eve_rec.id && parentObj1.eve_rec.id <= (ushort)77 || (parentObj1.eve_rec.id == (ushort)79 || parentObj1.eve_rec.id == (ushort)101)) { spd_x = -spd_x; } if ((parentObj1.eve_rec.id == (ushort)76 || parentObj1.eve_rec.id == (ushort)72) && ((int)parentObj1.eve_rec.flag & 2) == 0) { parentObj2.obj_work.pos.y += 8192; } if ((byte)1 <= parentObj1.eve_rec.height && parentObj1.eve_rec.height <= (byte)4) { fall_dir = ((int)parentObj1.eve_rec.height - 1) * 16384; } AppMain.GmPlySeqInitSpringJump(parentObj2, spd_x, spd_y, ((int)parentObj1.eve_rec.flag & 8) != 0, parentObj1.eve_rec.top >= (sbyte)0 ? (int)parentObj1.eve_rec.top * 4096 : 0, fall_dir, ((int)parentObj1.eve_rec.flag & 32) != 0); AppMain.GmComEfctCreateSpring(parentObj1.obj_work, ((int)mine_rect.rect.left + (int)mine_rect.rect.right) * 4096 / 2, ((int)mine_rect.rect.top + (int)mine_rect.rect.bottom) * 4096 / 2); if (((int)parentObj1.eve_rec.flag & 64) == 0 || ((int)AppMain.g_gs_main_sys_info.game_flag & 512) == 0) { return; } parentObj2.gmk_flag2 |= 512U; }
private static void gmGmkMoveGearSwitchExeMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_GMK_GEAR_WORK gmsGmkGearWork = (AppMain.GMS_GMK_GEAR_WORK)obj_work; AppMain.GMS_ENEMY_COM_WORK gmsEnemyComWork = (AppMain.GMS_ENEMY_COM_WORK)obj_work; if (gmsGmkGearWork.sw_gear_obj == null) { AppMain.gmGmkMoveGearEndInit(obj_work); } else { AppMain.GMS_GMK_GEAR_WORK swGearObj = (AppMain.GMS_GMK_GEAR_WORK)gmsGmkGearWork.sw_gear_obj; if (swGearObj.open_rot_dist <= 0) { AppMain.gmGmkMoveGearSetSpd(obj_work, 0); if (swGearObj.gmk_work.ene_com.eve_rec.height == (byte)0) { gmsEnemyComWork.eve_rec.byte_param[1] = (byte)1; } AppMain.gmGmkMoveGearEndStaggerInit(obj_work); } else { AppMain.GMS_PLAYER_WORK targetObj = (AppMain.GMS_PLAYER_WORK)gmsGmkGearWork.gmk_work.ene_com.target_obj; if (targetObj == null || ((int)targetObj.player_flag & 1024) != 0) { gmsGmkGearWork.gmk_work.ene_com.target_obj = (AppMain.OBS_OBJECT_WORK)null; AppMain.gmGmkMoveGearRetWaitInit(obj_work); } else { int sSpd = 0; if (((int)gmsEnemyComWork.eve_rec.flag & 1) != 0) { if (((int)gmsEnemyComWork.eve_rec.flag & 2) == 0 && targetObj.obj_work.spd_m < 16384) { sSpd = 256; } else if (((int)gmsEnemyComWork.eve_rec.flag & 2) != 0 && targetObj.obj_work.spd_m > -16384) { sSpd = -256; } } else if (((int)gmsEnemyComWork.eve_rec.flag & 2) == 0 && targetObj.obj_work.spd_m > -16384) { sSpd = -256; } else if (((int)gmsEnemyComWork.eve_rec.flag & 2) != 0 && targetObj.obj_work.spd_m < 16384) { sSpd = 256; } if (sSpd != 0) { targetObj.obj_work.spd_m = AppMain.ObjSpdUpSet(targetObj.obj_work.spd_m, sSpd, 16384); } AppMain.gmGmkMoveGearSetSpd(obj_work, -targetObj.obj_work.spd_m); } } } }
// Token: 0x0600009B RID: 155 RVA: 0x00008620 File Offset: 0x00006820 private static void GmEnemyDefaultDefFunc(AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)mine_rect.parent_obj; GMS_PLAYER_WORK gms_PLAYER_WORK = null; if (match_rect.parent_obj != null && match_rect.parent_obj.obj_type == 1) { gms_PLAYER_WORK = (GMS_PLAYER_WORK)match_rect.parent_obj; } if (gms_ENEMY_COM_WORK.vit == 0) { if ((gms_ENEMY_COM_WORK.obj_work.move_flag & 4096U) == 0U || gms_ENEMY_COM_WORK.obj_work.obj_type == 3) { gms_ENEMY_COM_WORK.enemy_flag |= 65536U; } gms_ENEMY_COM_WORK.obj_work.flag |= 2U; gms_ENEMY_COM_WORK.rect_work[0].flag |= 2048U; gms_ENEMY_COM_WORK.rect_work[1].flag |= 2048U; gms_ENEMY_COM_WORK.rect_work[2].flag |= 2048U; if (gms_ENEMY_COM_WORK.obj_work.obj_type == 2) { GmSound.PlaySE("Enemy"); AppMain.GmComEfctCreateHitPlayer(gms_ENEMY_COM_WORK.obj_work, (int)((mine_rect.rect.left + mine_rect.rect.right) * 4096 / 2), (int)((mine_rect.rect.top + mine_rect.rect.bottom) * 4096 / 2)); AppMain.GmComEfctCreateEneDeadSmoke(gms_ENEMY_COM_WORK.obj_work, (int)((mine_rect.rect.left + mine_rect.rect.right) * 4096 / 2), (int)((mine_rect.rect.top + mine_rect.rect.bottom) * 4096 / 2)); AppMain.GmGmkAnimalInit(gms_ENEMY_COM_WORK.obj_work, 0, 0, 0, 0, 0, 0); AppMain.GMM_PAD_VIB_SMALL(); if (gms_PLAYER_WORK != null) { GmPlayer.ComboScore(gms_PLAYER_WORK, gms_ENEMY_COM_WORK.obj_work.pos.x, gms_ENEMY_COM_WORK.obj_work.pos.y + -65536); } AppMain.HgTrophyIncEnemyKillCount(gms_ENEMY_COM_WORK.obj_work); } gms_ENEMY_COM_WORK.obj_work.flag |= 8U; } else { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK2 = gms_ENEMY_COM_WORK; gms_ENEMY_COM_WORK2.vit -= 1; byte[] byte_param = gms_ENEMY_COM_WORK.eve_rec.byte_param; int num = 1; byte_param[num] += 1; gms_ENEMY_COM_WORK.invincible_timer = 245760; gms_ENEMY_COM_WORK.rect_work[1].hit_power = 0; } if (gms_PLAYER_WORK != null && gms_PLAYER_WORK.obj_work.obj_type == 1) { AppMain.GmPlySeqAtkReactionInit(gms_PLAYER_WORK); } }
// Token: 0x0600009E RID: 158 RVA: 0x00008874 File Offset: 0x00006A74 private static void GmEnemyDefaultInFunc(OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)obj_work; if (gms_ENEMY_COM_WORK.target_obj != null && (gms_ENEMY_COM_WORK.target_obj.flag & 4U) != 0U) { gms_ENEMY_COM_WORK.target_obj = null; } }
// Token: 0x0600079A RID: 1946 RVA: 0x0004365C File Offset: 0x0004185C public static void gmBoss5CtpltSetObjCollisionRect(AppMain.GMS_BOSS5_CTPLT_WORK ctplt_work) { AppMain.GMS_ENEMY_COM_WORK gms_ENEMY_COM_WORK = (AppMain.GMS_ENEMY_COM_WORK)ctplt_work; gms_ENEMY_COM_WORK.col_work.obj_col.obj = AppMain.GMM_BS_OBJ(ctplt_work); gms_ENEMY_COM_WORK.col_work.obj_col.width = AppMain.GMD_BOSS5_CTPLT_OBJ_COL_RECT_WIDTH_INT; gms_ENEMY_COM_WORK.col_work.obj_col.height = AppMain.GMD_BOSS5_CTPLT_OBJ_COL_RECT_HEIGHT_INT; gms_ENEMY_COM_WORK.col_work.obj_col.ofst_x = AppMain.GMD_BOSS5_CTPLT_OBJ_COL_RECT_OFST_X_INT; gms_ENEMY_COM_WORK.col_work.obj_col.ofst_y = AppMain.GMD_BOSS5_CTPLT_OBJ_COL_RECT_OFST_Y_INT; }
private static void GmBoss4UtilInitNoHitTimer( AppMain.GMS_BOSS4_NOHIT_TIMER work, AppMain.GMS_ENEMY_COM_WORK ene_com, int time) { work.ene_com = ene_com; work.timer = (uint)(time + 1); AppMain.GmBoss4UtilUpdateNoHitTimer(work); }
private static void GmEnemyDefaultInFunc(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_COM_WORK gmsEnemyComWork = (AppMain.GMS_ENEMY_COM_WORK)obj_work; if (gmsEnemyComWork.target_obj == null || ((int)gmsEnemyComWork.target_obj.flag & 4) == 0) { return; } gmsEnemyComWork.target_obj = (AppMain.OBS_OBJECT_WORK)null; }