private static void gmGmkActNeedleFwMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gmsEnemy3DWork = (AppMain.GMS_ENEMY_3D_WORK)obj_work; AppMain.GMS_GMK_NEEDLE_WORK gmsGmkNeedleWork = (AppMain.GMS_GMK_NEEDLE_WORK)gmsEnemy3DWork; AppMain.OBS_RECT_WORK obsRectWork = gmsEnemy3DWork.ene_com.rect_work[1]; if (gmsGmkNeedleWork.needle_type == (ushort)4) { AppMain.OBS_OBJECT_WORK riderObj = gmsEnemy3DWork.ene_com.col_work.obj_col.rider_obj; if (riderObj != null && riderObj.ride_obj == (AppMain.OBS_OBJECT_WORK)gmsEnemy3DWork) { if (riderObj.obj_type == (ushort)1) { AppMain.amFlagOff(ref obj_work.flag, 2U); } } else { AppMain.amFlagOn(ref obj_work.flag, 2U); } } if (gmsGmkNeedleWork.timer >= 60) { gmsGmkNeedleWork.timer = 0; AppMain.gmGmkActNeedleScalingInit(obj_work); } else { ++gmsGmkNeedleWork.timer; } if (((int)gmsGmkNeedleWork.scale_flag & 1) == 0) { return; } AppMain.gmGmkActNeedleSetScaleColRect(obj_work); }
// Token: 0x060008C9 RID: 2249 RVA: 0x0004F83C File Offset: 0x0004DA3C private static void gmGmkActNeedleFwMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work; AppMain.GMS_GMK_NEEDLE_WORK gms_GMK_NEEDLE_WORK = (AppMain.GMS_GMK_NEEDLE_WORK)gms_ENEMY_3D_WORK; AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[1]; if (gms_GMK_NEEDLE_WORK.needle_type == 4) { AppMain.OBS_OBJECT_WORK rider_obj = gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.rider_obj; if (rider_obj != null && rider_obj.ride_obj == (AppMain.OBS_OBJECT_WORK)gms_ENEMY_3D_WORK) { if (rider_obj.obj_type == 1) { AppMain.amFlagOff(ref obj_work.flag, 2U); } } else { AppMain.amFlagOn(ref obj_work.flag, 2U); } } if (gms_GMK_NEEDLE_WORK.timer >= 60) { gms_GMK_NEEDLE_WORK.timer = 0; AppMain.gmGmkActNeedleScalingInit(obj_work); } else { gms_GMK_NEEDLE_WORK.timer++; } if ((gms_GMK_NEEDLE_WORK.scale_flag & 1U) != 0U) { AppMain.gmGmkActNeedleSetScaleColRect(obj_work); } }
// Token: 0x060008CF RID: 2255 RVA: 0x0004FCD0 File Offset: 0x0004DED0 private static void gmGmkActNeedleSetScaleColRect(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work; AppMain.GMS_GMK_NEEDLE_WORK gms_GMK_NEEDLE_WORK = (AppMain.GMS_GMK_NEEDLE_WORK)gms_ENEMY_3D_WORK; gms_GMK_NEEDLE_WORK.scale_timer++; if ((gms_GMK_NEEDLE_WORK.scale_flag & 4U) != 0U) { int num = (int)(gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height - 3); if (num < 0) { num = 0; gms_GMK_NEEDLE_WORK.scale_timer = 0; gms_GMK_NEEDLE_WORK.scale_flag &= 4294967294U; gms_GMK_NEEDLE_WORK.scale_flag &= 4294967291U; } gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height = ( ushort )num; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_y = ( short )(-1 * ( int )gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height); return; } if ((gms_GMK_NEEDLE_WORK.scale_flag & 2U) != 0U) { int num = (int)(gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height + 4); if (num > 32) { num = 32; gms_GMK_NEEDLE_WORK.scale_timer = 0; gms_GMK_NEEDLE_WORK.scale_flag &= 4294967294U; gms_GMK_NEEDLE_WORK.scale_flag &= 4294967293U; } gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height = ( ushort )num; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_y = ( short )(-1 * ( int )gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height); } }
private static AppMain.OBS_OBJECT_WORK GmGmkNeedleInit( 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_GMK_NEEDLE_WORK()), "GMK_NEEDLE_MAIN"); AppMain.GMS_ENEMY_3D_WORK gmsEnemy3DWork = (AppMain.GMS_ENEMY_3D_WORK)work; AppMain.GMS_GMK_NEEDLE_WORK gmsGmkNeedleWork = (AppMain.GMS_GMK_NEEDLE_WORK)gmsEnemy3DWork; gmsGmkNeedleWork.needle_type = AppMain.GmGmkNeedleGetType(eve_rec.id); AppMain.ObjObjectCopyAction3dNNModel(work, AppMain.gm_gmk_needle_obj_3d_list[0], gmsEnemy3DWork.obj_3d); work.ppOut = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmGmkNeedleDrawFunc); gmsEnemy3DWork.ene_com.col_work.obj_col.obj = work; gmsEnemy3DWork.ene_com.col_work.obj_col.width = (ushort)AppMain.gm_gmk_col_rect_tbl[(int)gmsGmkNeedleWork.needle_type][0]; gmsEnemy3DWork.ene_com.col_work.obj_col.height = (ushort)AppMain.gm_gmk_col_rect_tbl[(int)gmsGmkNeedleWork.needle_type][1]; gmsEnemy3DWork.ene_com.col_work.obj_col.ofst_x = (short)AppMain.gm_gmk_col_rect_tbl[(int)gmsGmkNeedleWork.needle_type][2]; gmsEnemy3DWork.ene_com.col_work.obj_col.ofst_y = (short)AppMain.gm_gmk_col_rect_tbl[(int)gmsGmkNeedleWork.needle_type][3]; gmsEnemy3DWork.ene_com.col_work.obj_col.dir = (ushort)(16384U * (uint)gmsGmkNeedleWork.needle_type); work.pos.z = -4096; AppMain.OBS_RECT_WORK pRec = gmsEnemy3DWork.ene_com.rect_work[1]; AppMain.ObjRectWorkZSet(pRec, (short)AppMain.gm_gmk_atk_rect_tbl[(int)gmsGmkNeedleWork.needle_type][0], (short)AppMain.gm_gmk_atk_rect_tbl[(int)gmsGmkNeedleWork.needle_type][1], (short)-500, (short)AppMain.gm_gmk_atk_rect_tbl[(int)gmsGmkNeedleWork.needle_type][2], (short)AppMain.gm_gmk_atk_rect_tbl[(int)gmsGmkNeedleWork.needle_type][3], (short)500); if (AppMain.g_gs_main_sys_info.stage_id == (ushort)9) { if (gmsGmkNeedleWork.needle_type == (ushort)1) { pRec.rect.left -= (short)16; } else if (gmsGmkNeedleWork.needle_type == (ushort)3) { pRec.rect.right += (short)16; } } pRec.flag |= 4U; pRec.flag |= 1024U; if (AppMain.g_gs_main_sys_info.stage_id == (ushort)14) { AppMain.ObjDrawObjectActionSet(work, 0); work.obj_3d.use_light_flag &= 4294967294U; work.obj_3d.use_light_flag |= 4U; } work.move_flag |= 8449U; work.disp_flag |= 4194304U; gmsGmkNeedleWork.state = 0U; AppMain.gmGmkNeedleFwInit(work); work.flag |= 1073741824U; gmsGmkNeedleWork.color = uint.MaxValue; if (AppMain.g_gs_main_sys_info.stage_id == (ushort)2 || AppMain.g_gs_main_sys_info.stage_id == (ushort)3) { gmsGmkNeedleWork.color = 4288717055U; } else if (AppMain.g_gs_main_sys_info.stage_id == (ushort)14) { gmsGmkNeedleWork.color = 2694881535U; } return(work); }
// Token: 0x060008C0 RID: 2240 RVA: 0x0004F090 File Offset: 0x0004D290 private static OBS_OBJECT_WORK GmGmkNeedleInit(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_NEEDLE_WORK(), "GMK_NEEDLE_MAIN"); AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK; AppMain.GMS_GMK_NEEDLE_WORK gms_GMK_NEEDLE_WORK = (AppMain.GMS_GMK_NEEDLE_WORK)gms_ENEMY_3D_WORK; gms_GMK_NEEDLE_WORK.needle_type = AppMain.GmGmkNeedleGetType(eve_rec.id); AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_needle_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d); obs_OBJECT_WORK.ppOut = AppMain.gmGmkNeedleDrawFunc; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.obj = obs_OBJECT_WORK; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.width = ( ushort )AppMain.gm_gmk_col_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][0]; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height = ( ushort )AppMain.gm_gmk_col_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][1]; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_x = ( short )AppMain.gm_gmk_col_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][2]; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_y = ( short )AppMain.gm_gmk_col_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][3]; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.dir = ( ushort )(16384 * gms_GMK_NEEDLE_WORK.needle_type); obs_OBJECT_WORK.pos.z = -4096; AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[1]; AppMain.ObjRectWorkZSet(obs_RECT_WORK, ( short )AppMain.gm_gmk_atk_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][0], ( short )AppMain.gm_gmk_atk_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][1], -500, ( short )AppMain.gm_gmk_atk_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][2], ( short )AppMain.gm_gmk_atk_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][3], 500); if (AppMain.g_gs_main_sys_info.stage_id == 9) { if (gms_GMK_NEEDLE_WORK.needle_type == 1) { AppMain.OBS_RECT rect = obs_RECT_WORK.rect; rect.left -= 16; } else if (gms_GMK_NEEDLE_WORK.needle_type == 3) { AppMain.OBS_RECT rect2 = obs_RECT_WORK.rect; rect2.right += 16; } } obs_RECT_WORK.flag |= 4U; obs_RECT_WORK.flag |= 1024U; if (AppMain.g_gs_main_sys_info.stage_id == 14) { AppMain.ObjDrawObjectActionSet(obs_OBJECT_WORK, 0); obs_OBJECT_WORK.obj_3d.use_light_flag &= 4294967294U; obs_OBJECT_WORK.obj_3d.use_light_flag |= 4U; } obs_OBJECT_WORK.move_flag |= 8449U; obs_OBJECT_WORK.disp_flag |= 4194304U; gms_GMK_NEEDLE_WORK.state = 0U; AppMain.gmGmkNeedleFwInit(obs_OBJECT_WORK); obs_OBJECT_WORK.flag |= 1073741824U; gms_GMK_NEEDLE_WORK.color = uint.MaxValue; if (AppMain.g_gs_main_sys_info.stage_id == 2 || AppMain.g_gs_main_sys_info.stage_id == 3) { gms_GMK_NEEDLE_WORK.color = 4288717055U; } else if (AppMain.g_gs_main_sys_info.stage_id == 14) { gms_GMK_NEEDLE_WORK.color = 2694881535U; } return(obs_OBJECT_WORK); }
private static void gmGmkActNeedleScalingMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gmsEnemy3DWork = (AppMain.GMS_ENEMY_3D_WORK)obj_work; AppMain.GMS_GMK_NEEDLE_WORK gmsGmkNeedleWork = (AppMain.GMS_GMK_NEEDLE_WORK)gmsEnemy3DWork; if (gmsGmkNeedleWork.timer >= 6) { gmsGmkNeedleWork.timer = 0; AppMain.gmGmkActNeedleRectWaitInit(obj_work); } else { AppMain.amFlagOn(ref obj_work.flag, 2U); if (gmsGmkNeedleWork.state == 0U) { obj_work.scale.y += 682; } else { obj_work.scale.y -= 682; } if (obj_work.scale.y > 4096) { obj_work.scale.y = 4096; } else if (obj_work.scale.y <= 0) { obj_work.scale.y = 0; } AppMain.amFlagOff(ref gmsEnemy3DWork.ene_com.col_work.obj_col.flag, 256U); obj_work.scale.y = AppMain.MTM_MATH_CLIP(obj_work.scale.y, 0, 4096); if (((int)gmsGmkNeedleWork.scale_flag & 1) != 0) { AppMain.gmGmkActNeedleSetScaleColRect(obj_work); } if (gmsGmkNeedleWork.needle_type == (ushort)4) { AppMain.OBS_OBJECT_WORK riderObj = gmsEnemy3DWork.ene_com.col_work.obj_col.rider_obj; if (riderObj != null && riderObj.ride_obj == (AppMain.OBS_OBJECT_WORK)gmsEnemy3DWork) { if (riderObj.obj_type == (ushort)1) { AppMain.amFlagOff(ref obj_work.flag, 2U); } } else { AppMain.amFlagOn(ref obj_work.flag, 2U); } } ++gmsGmkNeedleWork.timer; } }
// Token: 0x060008CB RID: 2251 RVA: 0x0004FA74 File Offset: 0x0004DC74 private static void gmGmkActNeedleScalingMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work; AppMain.GMS_GMK_NEEDLE_WORK gms_GMK_NEEDLE_WORK = (AppMain.GMS_GMK_NEEDLE_WORK)gms_ENEMY_3D_WORK; if (gms_GMK_NEEDLE_WORK.timer >= 6) { gms_GMK_NEEDLE_WORK.timer = 0; AppMain.gmGmkActNeedleRectWaitInit(obj_work); return; } AppMain.amFlagOn(ref obj_work.flag, 2U); if (gms_GMK_NEEDLE_WORK.state == 0U) { obj_work.scale.y = obj_work.scale.y + 682; } else { obj_work.scale.y = obj_work.scale.y - 682; } if (obj_work.scale.y > 4096) { obj_work.scale.y = 4096; } else if (obj_work.scale.y <= 0) { obj_work.scale.y = 0; } AppMain.amFlagOff(ref gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.flag, 256U); obj_work.scale.y = AppMain.MTM_MATH_CLIP(obj_work.scale.y, 0, 4096); if ((gms_GMK_NEEDLE_WORK.scale_flag & 1U) != 0U) { AppMain.gmGmkActNeedleSetScaleColRect(obj_work); } if (gms_GMK_NEEDLE_WORK.needle_type == 4) { AppMain.OBS_OBJECT_WORK rider_obj = gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.rider_obj; if (rider_obj != null && rider_obj.ride_obj == (AppMain.OBS_OBJECT_WORK)gms_ENEMY_3D_WORK) { if (rider_obj.obj_type == 1) { AppMain.amFlagOff(ref obj_work.flag, 2U); } } else { AppMain.amFlagOn(ref obj_work.flag, 2U); } } gms_GMK_NEEDLE_WORK.timer++; }
// Token: 0x060008C8 RID: 2248 RVA: 0x0004F7D8 File Offset: 0x0004D9D8 private static void gmGmkActNeedleFwInit(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work; AppMain.GMS_GMK_NEEDLE_WORK gms_GMK_NEEDLE_WORK = (AppMain.GMS_GMK_NEEDLE_WORK)gms_ENEMY_3D_WORK; if (gms_GMK_NEEDLE_WORK.state == 0U) { AppMain.amFlagOff(ref gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.flag, 256U); } else { AppMain.amFlagOn(ref obj_work.flag, 2U); } obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmGmkActNeedleFwMain); }
// Token: 0x060008CA RID: 2250 RVA: 0x0004F8F0 File Offset: 0x0004DAF0 private static void gmGmkActNeedleScalingInit(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work; AppMain.GMS_GMK_NEEDLE_WORK gms_GMK_NEEDLE_WORK = (AppMain.GMS_GMK_NEEDLE_WORK)gms_ENEMY_3D_WORK; if (gms_GMK_NEEDLE_WORK.state == 1U) { AppMain.amFlagOn(ref obj_work.flag, 2U); AppMain.amFlagOn(ref gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.flag, 256U); gms_GMK_NEEDLE_WORK.scale_flag |= 1U; gms_GMK_NEEDLE_WORK.scale_flag |= 4U; } else if (gms_GMK_NEEDLE_WORK.is_first_disp == 0) { obj_work.scale.y = 256; gms_GMK_NEEDLE_WORK.scale_flag |= 1U; gms_GMK_NEEDLE_WORK.scale_flag |= 2U; } else { gms_GMK_NEEDLE_WORK.scale_flag |= 1U; gms_GMK_NEEDLE_WORK.scale_flag |= 4U; } if (gms_GMK_NEEDLE_WORK.is_first_disp != 0) { AppMain.amFlagOn(ref obj_work.flag, 2U); AppMain.amFlagOn(ref gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.flag, 256U); gms_GMK_NEEDLE_WORK.state = 1U; gms_GMK_NEEDLE_WORK.is_first_disp = 0; } AppMain.amFlagOff(ref gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.flag, 256U); if (gms_GMK_NEEDLE_WORK.needle_type == 4) { AppMain.OBS_OBJECT_WORK rider_obj = gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.rider_obj; if (rider_obj != null && rider_obj.ride_obj == (AppMain.OBS_OBJECT_WORK)gms_ENEMY_3D_WORK) { if (rider_obj.obj_type == 1) { AppMain.amFlagOff(ref obj_work.flag, 2U); } } else { AppMain.amFlagOn(ref obj_work.flag, 2U); } } obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmGmkActNeedleScalingMain); }
// Token: 0x060008C1 RID: 2241 RVA: 0x0004F37C File Offset: 0x0004D57C private static OBS_OBJECT_WORK GmGmkActNeedleInit(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_NEEDLE_WORK(), "GMK_NEEDLE_ACT_MAIN"); AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK; AppMain.GMS_GMK_NEEDLE_WORK gms_GMK_NEEDLE_WORK = (AppMain.GMS_GMK_NEEDLE_WORK)gms_ENEMY_3D_WORK; gms_GMK_NEEDLE_WORK.needle_type = AppMain.GmGmkNeedleGetType(eve_rec.id); AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_gmk_needle_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d); obs_OBJECT_WORK.ppOut = AppMain.gmGmkNeedleDrawFunc; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.obj = obs_OBJECT_WORK; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.width = ( ushort )AppMain.gm_gmk_col_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][0]; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.height = ( ushort )AppMain.gm_gmk_col_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][1]; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_x = ( short )AppMain.gm_gmk_col_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][2]; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.ofst_y = ( short )AppMain.gm_gmk_col_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][3]; gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.dir = ( ushort )(32768 * (gms_GMK_NEEDLE_WORK.needle_type - 4)); obs_OBJECT_WORK.pos.z = -4096; AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[1]; AppMain.ObjRectWorkZSet(obs_RECT_WORK, ( short )AppMain.gm_gmk_atk_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][0], ( short )AppMain.gm_gmk_atk_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][1], -500, ( short )AppMain.gm_gmk_atk_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][2], ( short )AppMain.gm_gmk_atk_rect_tbl[( int )gms_GMK_NEEDLE_WORK.needle_type][3], 500); obs_RECT_WORK.flag |= 4U; obs_RECT_WORK.flag |= 1024U; obs_OBJECT_WORK.move_flag |= 8449U; obs_OBJECT_WORK.disp_flag |= 4194304U; gms_ENEMY_3D_WORK.ene_com.enemy_flag |= 16384U; obs_OBJECT_WORK.scale.y = 4096; AppMain.amFlagOn(ref obs_OBJECT_WORK.flag, 2U); AppMain.amFlagOff(ref gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.flag, 256U); gms_GMK_NEEDLE_WORK.state = 0U; gms_GMK_NEEDLE_WORK.is_first_disp = 1; gms_GMK_NEEDLE_WORK.timer = -30; obs_OBJECT_WORK.ppFunc = AppMain.gmGmkActNeedleFwMain; if (AppMain.g_gs_main_sys_info.stage_id == 14) { AppMain.ObjDrawObjectActionSet(obs_OBJECT_WORK, 0); obs_OBJECT_WORK.obj_3d.use_light_flag &= 4294967294U; obs_OBJECT_WORK.obj_3d.use_light_flag |= 4U; } gms_GMK_NEEDLE_WORK.color = uint.MaxValue; if (AppMain.g_gs_main_sys_info.stage_id == 2 || AppMain.g_gs_main_sys_info.stage_id == 3) { gms_GMK_NEEDLE_WORK.color = 4288717055U; } else if (AppMain.g_gs_main_sys_info.stage_id == 14) { gms_GMK_NEEDLE_WORK.color = 2694881535U; } return(obs_OBJECT_WORK); }
// Token: 0x060008CD RID: 2253 RVA: 0x0004FC14 File Offset: 0x0004DE14 private static void gmGmkActNeedleRectWaitMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work; AppMain.GMS_GMK_NEEDLE_WORK gms_GMK_NEEDLE_WORK = (AppMain.GMS_GMK_NEEDLE_WORK)gms_ENEMY_3D_WORK; AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[1]; AppMain.amFlagOff(ref gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.flag, 256U); AppMain.gmGmkActNeedleFwInit(obj_work); gms_GMK_NEEDLE_WORK.state ^= 1U; if (gms_GMK_NEEDLE_WORK.state == 1U) { AppMain.GmSoundPlaySE("Spine"); } if ((gms_GMK_NEEDLE_WORK.scale_flag & 1U) != 0U) { AppMain.gmGmkActNeedleSetScaleColRect(obj_work); } }
private static void gmGmkActNeedleRectWaitMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gmsEnemy3DWork = (AppMain.GMS_ENEMY_3D_WORK)obj_work; AppMain.GMS_GMK_NEEDLE_WORK gmsGmkNeedleWork = (AppMain.GMS_GMK_NEEDLE_WORK)gmsEnemy3DWork; AppMain.OBS_RECT_WORK obsRectWork = gmsEnemy3DWork.ene_com.rect_work[1]; AppMain.amFlagOff(ref gmsEnemy3DWork.ene_com.col_work.obj_col.flag, 256U); AppMain.gmGmkActNeedleFwInit(obj_work); gmsGmkNeedleWork.state ^= 1U; if (gmsGmkNeedleWork.state == 1U) { AppMain.GmSoundPlaySE("Spine"); } if (((int)gmsGmkNeedleWork.scale_flag & 1) == 0) { return; } AppMain.gmGmkActNeedleSetScaleColRect(obj_work); }
// Token: 0x060008C7 RID: 2247 RVA: 0x0004F758 File Offset: 0x0004D958 private static void gmGmkNeedleFwMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obj_work; AppMain.GMS_GMK_NEEDLE_WORK gms_GMK_NEEDLE_WORK = (AppMain.GMS_GMK_NEEDLE_WORK)gms_ENEMY_3D_WORK; AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[1]; if (gms_GMK_NEEDLE_WORK.needle_type == 0) { AppMain.OBS_OBJECT_WORK rider_obj = gms_ENEMY_3D_WORK.ene_com.col_work.obj_col.rider_obj; if (rider_obj != null && rider_obj.ride_obj == (AppMain.OBS_OBJECT_WORK)gms_ENEMY_3D_WORK) { if (rider_obj.obj_type == 1) { obs_RECT_WORK.flag |= 4U; return; } } else { obs_RECT_WORK.flag &= 4294967291U; } } }
private static void gmGmkNeedleFwMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gmsEnemy3DWork = (AppMain.GMS_ENEMY_3D_WORK)obj_work; AppMain.GMS_GMK_NEEDLE_WORK gmsGmkNeedleWork = (AppMain.GMS_GMK_NEEDLE_WORK)gmsEnemy3DWork; AppMain.OBS_RECT_WORK obsRectWork = gmsEnemy3DWork.ene_com.rect_work[1]; if (gmsGmkNeedleWork.needle_type != (ushort)0) { return; } AppMain.OBS_OBJECT_WORK riderObj = gmsEnemy3DWork.ene_com.col_work.obj_col.rider_obj; if (riderObj != null && riderObj.ride_obj == (AppMain.OBS_OBJECT_WORK)gmsEnemy3DWork) { if (riderObj.obj_type != (ushort)1) { return; } obsRectWork.flag |= 4U; } else { obsRectWork.flag &= 4294967291U; } }
private static void gmGmkActNeedleSetScaleColRect(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENEMY_3D_WORK gmsEnemy3DWork = (AppMain.GMS_ENEMY_3D_WORK)obj_work; AppMain.GMS_GMK_NEEDLE_WORK gmsGmkNeedleWork = (AppMain.GMS_GMK_NEEDLE_WORK)gmsEnemy3DWork; ++gmsGmkNeedleWork.scale_timer; if (((int)gmsGmkNeedleWork.scale_flag & 4) != 0) { int num = (int)gmsEnemy3DWork.ene_com.col_work.obj_col.height - 3; if (num < 0) { num = 0; gmsGmkNeedleWork.scale_timer = 0; gmsGmkNeedleWork.scale_flag &= 4294967294U; gmsGmkNeedleWork.scale_flag &= 4294967291U; } gmsEnemy3DWork.ene_com.col_work.obj_col.height = (ushort)num; gmsEnemy3DWork.ene_com.col_work.obj_col.ofst_y = (short)(-1 * (int)gmsEnemy3DWork.ene_com.col_work.obj_col.height); } else { if (((int)gmsGmkNeedleWork.scale_flag & 2) == 0) { return; } int num = (int)gmsEnemy3DWork.ene_com.col_work.obj_col.height + 4; if (num > 32) { num = 32; gmsGmkNeedleWork.scale_timer = 0; gmsGmkNeedleWork.scale_flag &= 4294967294U; gmsGmkNeedleWork.scale_flag &= 4294967293U; } gmsEnemy3DWork.ene_com.col_work.obj_col.height = (ushort)num; gmsEnemy3DWork.ene_com.col_work.obj_col.ofst_y = (short)(-1 * (int)gmsEnemy3DWork.ene_com.col_work.obj_col.height); } }
private static void gmGmkActNeedleRectWaitInit(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_GMK_NEEDLE_WORK gmsGmkNeedleWork = (AppMain.GMS_GMK_NEEDLE_WORK)(AppMain.GMS_ENEMY_3D_WORK) obj_work; obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmGmkActNeedleRectWaitMain); }
// 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); } }
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); } }