// Token: 0x06000064 RID: 100 RVA: 0x00005AD4 File Offset: 0x00003CD4 private static void gmGmkSlotGameHit_100(OBS_OBJECT_WORK obj_work) { if (AppMain.GmRingCheckRestSlotRing() != 0) { return; } AppMain.GMS_GMK_SLOT_WORK gms_GMK_SLOT_WORK = (AppMain.GMS_GMK_SLOT_WORK)obj_work; GmPlayer.AddScore(AppMain.slot_start_player, AppMain.tbl_slot_bonus_score[( int )gms_GMK_SLOT_WORK.lotresult], AppMain.slot_start_player.obj_work.pos.x, AppMain.slot_start_player.obj_work.pos.y); AppMain.slot_start_call = -1; obj_work.ppFunc = AppMain.gmGmkSlotStay; }
// Token: 0x0600140D RID: 5133 RVA: 0x000B1F60 File Offset: 0x000B0160 private static void gmGmkBobbinDefPlayer(AppMain.GMS_ENEMY_3D_WORK gimmick_work, GMS_PLAYER_WORK player_work, int speed_x, int speed_y) { bool flag_no_recover_homing = false; if ((gimmick_work.ene_com.eve_rec.flag & 1) != 0) { flag_no_recover_homing = true; } AppMain.GmPlySeqInitPinballAir(player_work, speed_x, speed_y, 5, flag_no_recover_homing); if (!AppMain.GMM_MAIN_STAGE_IS_SS()) { OBS_OBJECT_WORK obs_OBJECT_WORK = (OBS_OBJECT_WORK)gimmick_work; GmPlayer.AddScore(player_work, 10, obs_OBJECT_WORK.pos.x, obs_OBJECT_WORK.pos.y); } }
// Token: 0x06000263 RID: 611 RVA: 0x0001377C File Offset: 0x0001197C private static void gmGmkStopperStay_Norm_100(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; } OBS_CAMERA obs_CAMERA = ObjCamera.Get(0); GmCamera.PosSet(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) { GmPlayer.AddScore(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); GsSound.StopSE(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; GmSound.PlaySE("Casino3", gms_GMK_STOPPER_WORK.se_handle); if (gms_GMK_STOPPER_WORK.player_pass_timer <= 16) { GmSound.PlaySE("Casino3_1"); } } }
// Token: 0x060008E5 RID: 2277 RVA: 0x000512EC File Offset: 0x0004F4EC private static void gmGmkBreakObjHit(AppMain.OBS_RECT_WORK mine_rect, AppMain.OBS_RECT_WORK match_rect) { OBS_OBJECT_WORK parent_obj = mine_rect.parent_obj; GMS_PLAYER_WORK gms_PLAYER_WORK = (GMS_PLAYER_WORK)match_rect.parent_obj; if (gms_PLAYER_WORK == AppMain.g_gm_main_system.ply_work[( int )(( UIntPtr )0)]) { AppMain.GMS_GMK_BOBJ_WORK gms_GMK_BOBJ_WORK = (AppMain.GMS_GMK_BOBJ_WORK)parent_obj; AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_GMK_BOBJ_WORK.gmk_work.ene_com.obj_work.rect_work[0]; if (gms_PLAYER_WORK.act_state == 39 || gms_PLAYER_WORK.act_state == 31 || (gms_PLAYER_WORK.player_flag & 262144U) != 0U) { short num3; short num2; short num = num2 = (num3 = 0); ushort vect = 0; if (parent_obj.pos.x >= gms_PLAYER_WORK.obj_work.pos.x) { num2 = ( short )((parent_obj.pos.x >> 12) + ( int )obs_RECT_WORK.rect.left - ( int )match_rect.rect.right); num2 = ( short )((gms_PLAYER_WORK.obj_work.pos.x >> 12) - ( int )num2); gms_GMK_BOBJ_WORK.hitcheck = 1; } else { num = ( short )((parent_obj.pos.x >> 12) + ( int )obs_RECT_WORK.rect.right - ( int )match_rect.rect.left - (gms_PLAYER_WORK.obj_work.pos.x >> 12)); gms_GMK_BOBJ_WORK.hitcheck = 1; vect = 32768; } if (parent_obj.pos.y >= gms_PLAYER_WORK.obj_work.pos.y) { num3 = ( short )((parent_obj.pos.y >> 12) + ( int )obs_RECT_WORK.rect.top - ( int )match_rect.rect.bottom); num3 = ( short )((gms_PLAYER_WORK.obj_work.pos.y >> 12) - ( int )num3); gms_GMK_BOBJ_WORK.hitcheck = 1; } if (obs_RECT_WORK.rect.right > gms_GMK_BOBJ_WORK.breakrect_right) { AppMain.OBS_RECT rect = obs_RECT_WORK.rect; rect.right -= num; if (obs_RECT_WORK.rect.right < gms_GMK_BOBJ_WORK.breakrect_right) { obs_RECT_WORK.rect.right = gms_GMK_BOBJ_WORK.breakrect_right; } } if (obs_RECT_WORK.rect.left < gms_GMK_BOBJ_WORK.breakrect_left) { AppMain.OBS_RECT rect2 = obs_RECT_WORK.rect; rect2.left += num2; if (obs_RECT_WORK.rect.left > gms_GMK_BOBJ_WORK.breakrect_left) { obs_RECT_WORK.rect.left = gms_GMK_BOBJ_WORK.breakrect_left; } } if (obs_RECT_WORK.rect.top < gms_GMK_BOBJ_WORK.breakrect_top) { AppMain.OBS_RECT rect3 = obs_RECT_WORK.rect; rect3.top += num3; if (obs_RECT_WORK.rect.top > gms_GMK_BOBJ_WORK.breakrect_top) { obs_RECT_WORK.rect.top = gms_GMK_BOBJ_WORK.breakrect_top; } } gms_GMK_BOBJ_WORK.hitpass = true; short num4 = (short)(gms_PLAYER_WORK.obj_work.spd.x >> 12); short num5 = (short)(gms_PLAYER_WORK.obj_work.spd.y >> 12); if ((obs_RECT_WORK.rect.right + num4 <= gms_GMK_BOBJ_WORK.breakrect_right || obs_RECT_WORK.rect.left + num4 >= gms_GMK_BOBJ_WORK.breakrect_left) && obs_RECT_WORK.rect.top + num5 >= gms_GMK_BOBJ_WORK.breakrect_top) { ushort efct_zone_idx = AppMain.tbl_gmk_breakobj_effect[gms_GMK_BOBJ_WORK.zone_type]; switch (gms_GMK_BOBJ_WORK.zone_type) { case 0: if (AppMain.g_gs_main_sys_info.stage_id == 2) { efct_zone_idx = 3; } break; case 2: if (AppMain.g_gm_main_system.water_level != 65535 && ( int )AppMain.g_gm_main_system.water_level < (parent_obj.pos.y >> 12) + ( int )gms_GMK_BOBJ_WORK.breakrect_top) { efct_zone_idx = 11; } break; } OBS_OBJECT_WORK obs_OBJECT_WORK = (OBS_OBJECT_WORK)AppMain.GmEfctZoneEsCreate(null, gms_GMK_BOBJ_WORK.zone_type, (int)efct_zone_idx); obs_OBJECT_WORK.pos.x = parent_obj.pos.x; obs_OBJECT_WORK.pos.y = parent_obj.pos.y; obs_OBJECT_WORK.pos.z = parent_obj.pos.z; AppMain.gmGmkBreakObj_CreateParts(parent_obj, gms_GMK_BOBJ_WORK.zone_type, vect); gms_GMK_BOBJ_WORK.gmk_work.ene_com.obj_work.col_work.obj_col.obj = null; AppMain.GmEnemyDefaultDefFunc(mine_rect, match_rect); GmSound.PlaySE("BreakOBJ"); GmPlayer.AddScore(gms_PLAYER_WORK, 100, parent_obj.pos.x, parent_obj.pos.y); } } } }
// Token: 0x0600068D RID: 1677 RVA: 0x0003AF00 File Offset: 0x00039100 private static void gmGmkEnBmprDefFunc(AppMain.OBS_RECT_WORK gimmick_rect, AppMain.OBS_RECT_WORK player_rect) { OBS_OBJECT_WORK parent_obj = gimmick_rect.parent_obj; AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)parent_obj; OBS_OBJECT_WORK parent_obj2 = player_rect.parent_obj; if (parent_obj2.obj_type != 1) { return; } int num = AppMain.gmGmkEnBmprCalcType((int)gms_ENEMY_3D_WORK.ene_com.eve_rec.id); parent_obj.dir.z = AppMain.g_gm_gmk_en_bmpr_angle_z[num]; parent_obj2.dir.z = 0; int num2 = parent_obj2.spd.x; int num3 = parent_obj2.spd.y; if ((parent_obj2.move_flag & 32768U) != 0U) { if (parent_obj2.spd_m != 0) { num2 = AppMain.FX_Mul(parent_obj2.spd_m, AppMain.mtMathCos(( int )parent_obj2.dir.z)); num3 = AppMain.FX_Mul(parent_obj2.spd_m, AppMain.mtMathSin(( int )parent_obj2.dir.z)); } else { AppMain.VecFx32 vecFx = AppMain.gmGmkEnBmprNormalizeVectorXY(new AppMain.VecFx32 { x = parent_obj2.pos.x - parent_obj.pos.x, y = parent_obj2.pos.y - parent_obj.pos.y, z = 0 }); num2 = AppMain.FX_Mul(vecFx.x, 98304); num3 = AppMain.FX_Mul(vecFx.y, 98304); } } int num4 = -12288; int num5 = parent_obj2.pos.x - parent_obj.pos.x; int num6 = parent_obj2.pos.y + num4 - parent_obj.pos.y; switch (num) { case 0: num2 = 0; if (num6 < 0) { num3 = -24576; } else { num3 = 24576; OBS_OBJECT_WORK obs_OBJECT_WORK = parent_obj; obs_OBJECT_WORK.dir.z = ( ushort )(obs_OBJECT_WORK.dir.z + 32768); } break; case 1: { int num7 = AppMain.FX_Mul(24576, 2896); if (num6 < 0) { num2 = -num7; num3 = -num7; } else { num2 = num7; num3 = num7; OBS_OBJECT_WORK obs_OBJECT_WORK2 = parent_obj; obs_OBJECT_WORK2.dir.z = ( ushort )(obs_OBJECT_WORK2.dir.z + 32768); } break; } case 2: num3 = 0; if (num5 < 0) { num2 = -24576; } else { num2 = 24576; OBS_OBJECT_WORK obs_OBJECT_WORK3 = parent_obj; obs_OBJECT_WORK3.dir.z = ( ushort )(obs_OBJECT_WORK3.dir.z + 32768); } break; case 3: { int num8 = AppMain.FX_Mul(24576, 2896); if (num6 > 0) { num2 = -num8; num3 = num8; } else { num2 = num8; num3 = -num8; OBS_OBJECT_WORK obs_OBJECT_WORK4 = parent_obj; obs_OBJECT_WORK4.dir.z = ( ushort )(obs_OBJECT_WORK4.dir.z + 32768); } break; } } AppMain.GmPlySeqInitPinballAir(( GMS_PLAYER_WORK )parent_obj2, num2, num3, 5); AppMain.gmGmkEnBmprChangeModeHit(parent_obj); int num9 = AppMain.gmGmkEnBmperGetUserWorkLife(parent_obj); if (num9 <= 0) { parent_obj.user_flag = ( uint )(( ulong )parent_obj.user_flag & 18446744073709551614UL); } int num10 = 10; if (AppMain.gmGmkEnBmprCheckGroupBonus(parent_obj) != 0) { num10 *= 50; } GmPlayer.AddScore(( GMS_PLAYER_WORK )parent_obj2, num10, parent_obj.pos.x, parent_obj.pos.y); AppMain.GMS_EFFECT_3DES_WORK gms_EFFECT_3DES_WORK = AppMain.GmEfctCmnEsCreate(parent_obj, 16); gms_EFFECT_3DES_WORK.efct_com.obj_work.pos.x = parent_obj2.pos.x; gms_EFFECT_3DES_WORK.efct_com.obj_work.pos.y = parent_obj2.pos.y; gms_EFFECT_3DES_WORK.efct_com.obj_work.pos.z = 131072; gms_EFFECT_3DES_WORK.efct_com.obj_work.dir.z = ( ushort )(AppMain.nnArcTan2(( double )AppMain.FX_FX32_TO_F32(num3), ( double )AppMain.FX_FX32_TO_F32(num2)) - 16384); AppMain.GMM_PAD_VIB_SMALL(); }