// Token: 0x060005F3 RID: 1523 RVA: 0x00034ABC File Offset: 0x00032CBC private static AppMain.DMS_STFRL_SONIC_WORK DmStfrlMdlCtrlSetSonicObj() { OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.OBM_OBJECT_TASK_DETAIL_INIT(24576, 0, 0, 0, () => new AppMain.DMS_STFRL_SONIC_WORK(), "STAFFROLL_SONIC"); AppMain.DMS_STFRL_SONIC_WORK dms_STFRL_SONIC_WORK = (AppMain.DMS_STFRL_SONIC_WORK)obs_OBJECT_WORK; AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.dm_stfrl_sonic_obj_3d_list[0], obs_OBJECT_WORK.obj_3d); obs_OBJECT_WORK.obj_3d.blend_spd = 0.0625f; AppMain.ObjDrawObjectSetToon(obs_OBJECT_WORK); AppMain.OBS_ACTION3D_NN_WORK obj_3d = dms_STFRL_SONIC_WORK.obj_work.obj_3d; AppMain.ObjObjectAction3dNNMotionLoad(obs_OBJECT_WORK, 0, true, GmPlayer.g_gm_player_data_work[( int )(( UIntPtr )0)][4], null, 0, null, 136, 16); obs_OBJECT_WORK.flag |= 16U; obs_OBJECT_WORK.disp_flag |= 4194309U; obs_OBJECT_WORK.disp_flag &= 4294967263U; obs_OBJECT_WORK.disp_flag |= 150995456U; obs_OBJECT_WORK.obj_3d.drawflag |= 8388608U; obs_OBJECT_WORK.pos.x = 0; obs_OBJECT_WORK.pos.y = 98304; obs_OBJECT_WORK.pos.z = -12288; obs_OBJECT_WORK.dir.y = ( ushort )AkMath.DEGtoA16(90); obs_OBJECT_WORK.obj_3d.draw_state.alpha.alpha = 1f; dms_STFRL_SONIC_WORK.alpha = 1f; AppMain.ObjDrawObjectActionSet(obs_OBJECT_WORK, 21); obs_OBJECT_WORK.ppOut = AppMain.dmStfrlMdlCtrlSonicDrawFunc; obs_OBJECT_WORK.ppFunc = AppMain.dmStfrlMdlCtrlSonicProcWaitSetup; return(dms_STFRL_SONIC_WORK); }
// Token: 0x0600078F RID: 1935 RVA: 0x00043078 File Offset: 0x00041278 public static void gmEneTStarWalkMain(OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENE_T_STAR_WORK gms_ENE_T_STAR_WORK = (AppMain.GMS_ENE_T_STAR_WORK)obj_work; obj_work.disp_flag |= 4U; if (gms_ENE_T_STAR_WORK.rotate > 0) { obj_work.dir.z = ( ushort )(obj_work.dir.z + ( ushort )AkMath.DEGtoA16(10)); AppMain.GMS_ENE_T_STAR_WORK gms_ENE_T_STAR_WORK2 = gms_ENE_T_STAR_WORK; gms_ENE_T_STAR_WORK2.rotate -= 1; if (gms_ENE_T_STAR_WORK.rotate == 0) { obj_work.dir.z = 0; } } if (gms_ENE_T_STAR_WORK.timer > 0) { gms_ENE_T_STAR_WORK.timer--; if (gms_ENE_T_STAR_WORK.timer == 60) { gms_ENE_T_STAR_WORK.rotate = 36; } return; } obj_work.spd.x = 0; obj_work.spd.y = 0; gms_ENE_T_STAR_WORK.timer = 15; obj_work.ppFunc = AppMain.gmEneTStarStopMain; }
// Token: 0x06000DEF RID: 3567 RVA: 0x0007AAF4 File Offset: 0x00078CF4 private static OBS_OBJECT_WORK GmEneUnidesInit(AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type) { AppMain.UNREFERENCED_PARAMETER(type); OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, () => new AppMain.GMS_ENE_UNIDES_WORK(), "ENE_UNIDES"); AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK; AppMain.GMS_ENE_UNIDES_WORK gms_ENE_UNIDES_WORK = (AppMain.GMS_ENE_UNIDES_WORK)obs_OBJECT_WORK; AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_ene_unides_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d); AppMain.ObjObjectAction3dNNMotionLoad(obs_OBJECT_WORK, 0, true, AppMain.ObjDataGet(692), null, 0, null); AppMain.ObjDrawObjectSetToon(obs_OBJECT_WORK); obs_OBJECT_WORK.pos.z = 655360; AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[1]; AppMain.ObjRectWorkSet(obs_RECT_WORK, -8, 0, 8, 16); obs_RECT_WORK.flag |= 4U; obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[0]; AppMain.ObjRectWorkSet(obs_RECT_WORK, -16, -8, 16, 16); obs_RECT_WORK.flag |= 4U; gms_ENEMY_3D_WORK.ene_com.rect_work[2].flag &= 4294967291U; obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[2]; AppMain.ObjRectWorkSet(obs_RECT_WORK, -19, -16, 19, 16); obs_RECT_WORK.flag &= 4294967291U; obs_OBJECT_WORK.move_flag &= 4294967167U; obs_OBJECT_WORK.move_flag |= 256U; if ((eve_rec.flag & 1) == 0) { obs_OBJECT_WORK.disp_flag |= 1U; obs_OBJECT_WORK.dir.y = ( ushort )AkMath.DEGtoA16(45); } else { obs_OBJECT_WORK.dir.y = ( ushort )AkMath.DEGtoA16(-45); } obs_OBJECT_WORK.user_work = ( uint )(obs_OBJECT_WORK.pos.x + (( int )eve_rec.left << 12)); obs_OBJECT_WORK.user_flag = ( uint )(obs_OBJECT_WORK.pos.x + (( int )(eve_rec.left + ( sbyte )eve_rec.width) << 12)); gms_ENE_UNIDES_WORK.spd_dec = 76; gms_ENE_UNIDES_WORK.spd_dec_dist = 15360; gms_ENE_UNIDES_WORK.len = 17.5f; gms_ENE_UNIDES_WORK.rot_x = AkMath.DEGtoA32(90f); gms_ENE_UNIDES_WORK.rot_y = AkMath.DEGtoA32(0f); gms_ENE_UNIDES_WORK.rot_z = AkMath.DEGtoA32(0f); gms_ENE_UNIDES_WORK.num = 0; AppMain.gmEneUnidesWaitInit(obs_OBJECT_WORK); for (int i = 0; i < 4; i++) { OBS_OBJECT_WORK obs_OBJECT_WORK2 = AppMain.GmEventMgrLocalEventBirth(309, pos_x, pos_y, 0, 0, 0, 0, 0, 0); obs_OBJECT_WORK2.parent_obj = obs_OBJECT_WORK; AppMain.GMS_ENE_UNIDES_WORK gms_ENE_UNIDES_WORK2 = (AppMain.GMS_ENE_UNIDES_WORK)obs_OBJECT_WORK2; gms_ENE_UNIDES_WORK2.num = i; gms_ENE_UNIDES_WORK.num++; } gms_ENE_UNIDES_WORK.attack = 0; gms_ENE_UNIDES_WORK.attack_first = 0; gms_ENE_UNIDES_WORK.zoom_now = 0; gms_ENE_UNIDES_WORK.zoom = 1f; obs_OBJECT_WORK.obj_3d.use_light_flag &= 4294967294U; obs_OBJECT_WORK.obj_3d.use_light_flag |= 64U; return(obs_OBJECT_WORK); }
// Token: 0x06000791 RID: 1937 RVA: 0x00043198 File Offset: 0x00041398 public static void gmEneTStarAttackInit(OBS_OBJECT_WORK obj_work) { AppMain.GMS_ENE_T_STAR_WORK gms_ENE_T_STAR_WORK = (AppMain.GMS_ENE_T_STAR_WORK)obj_work; NNS_MATRIX nns_MATRIX = GlobalPool <NNS_MATRIX> .Alloc(); NNS_MATRIX nns_MATRIX2 = GlobalPool <NNS_MATRIX> .Alloc(); AppMain.nnMakeUnitMatrix(nns_MATRIX); AppMain.nnMakeUnitMatrix(nns_MATRIX2); AppMain.nnMakeRotateZMatrix(nns_MATRIX2, AkMath.DEGtoA32(72)); NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc(); for (int i = 0; i < 5; i++) { OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.GmEventMgrLocalEventBirth(308, obj_work.pos.x, obj_work.pos.y, 0, 0, 0, 0, 0, 0); obs_OBJECT_WORK.parent_obj = obj_work; obs_OBJECT_WORK.dir.y = 49152; obs_OBJECT_WORK.dir.z = ( ushort )AkMath.DEGtoA16(-72 * i); nns_VECTOR.x = nns_MATRIX.M01; nns_VECTOR.y = nns_MATRIX.M11; nns_VECTOR.z = 0f; obs_OBJECT_WORK.spd.x = AppMain.FX_F32_TO_FX32(nns_VECTOR.x * 4f); obs_OBJECT_WORK.spd.y = -AppMain.FX_F32_TO_FX32(nns_VECTOR.y * 4f); OBS_OBJECT_WORK obs_OBJECT_WORK2 = obs_OBJECT_WORK; obs_OBJECT_WORK2.pos.x = obs_OBJECT_WORK2.pos.x + AppMain.FX_F32_TO_FX32(nns_VECTOR.x * 10f); OBS_OBJECT_WORK obs_OBJECT_WORK3 = obs_OBJECT_WORK; obs_OBJECT_WORK3.pos.y = obs_OBJECT_WORK3.pos.y + -AppMain.FX_F32_TO_FX32(nns_VECTOR.y * 10f); AppMain.nnMultiplyMatrix(nns_MATRIX, nns_MATRIX, nns_MATRIX2); AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK; gms_ENEMY_3D_WORK.ene_com.enemy_flag |= 32768U; AppMain.GMS_EFFECT_3DES_WORK gms_EFFECT_3DES_WORK = AppMain.GmEfctEneEsCreate(obs_OBJECT_WORK, 10); gms_EFFECT_3DES_WORK.efct_com.obj_work.dir.z = ( ushort )AkMath.DEGtoA16(-72 * i); } GlobalPool <NNS_VECTOR> .Release(nns_VECTOR); obj_work.disp_flag |= 32U; obj_work.disp_flag |= 4U; obj_work.ppFunc = AppMain.gmEneTStarAttackMain; obj_work.move_flag &= 4294967291U; obj_work.spd.x = 0; obj_work.spd.y = 0; gms_ENE_T_STAR_WORK.timer = 300; AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK2 = (AppMain.GMS_ENEMY_3D_WORK)obj_work; gms_ENEMY_3D_WORK2.ene_com.rect_work[1].flag &= 4294967291U; gms_ENEMY_3D_WORK2.ene_com.rect_work[0].flag &= 4294967291U; gms_ENEMY_3D_WORK2.ene_com.rect_work[2].flag &= 4294967291U; GmSound.PlaySE("Boss2_03"); gms_ENEMY_3D_WORK2.ene_com.enemy_flag |= 65536U; GlobalPool <NNS_MATRIX> .Release(nns_MATRIX); GlobalPool <NNS_MATRIX> .Release(nns_MATRIX2); }
// Token: 0x06000604 RID: 1540 RVA: 0x000354A4 File Offset: 0x000336A4 private static void dmStfrlMdlCtrlBodyProcBodyCompInitStart(OBS_OBJECT_WORK obj_work) { AppMain.DMS_STFRL_BOSS_BODY_WORK dms_STFRL_BOSS_BODY_WORK = (AppMain.DMS_STFRL_BOSS_BODY_WORK)obj_work; obj_work.pos.x = 0; obj_work.pos.y = -737280; obj_work.pos.z = -81920; obj_work.dir.y = ( ushort )AkMath.DEGtoA16(300); if ((dms_STFRL_BOSS_BODY_WORK.flag & 2U) != 0U) { obj_work.ppFunc = AppMain.dmStfrlMdlCtrlBodyProcBodyCompStartWait; dms_STFRL_BOSS_BODY_WORK.flag &= 4294967293U; } }
// Token: 0x06000603 RID: 1539 RVA: 0x00035424 File Offset: 0x00033624 private static void dmStfrlMdlCtrlBodyProcBodyMain(OBS_OBJECT_WORK obj_work) { AppMain.DMS_STFRL_BOSS_BODY_WORK dms_STFRL_BOSS_BODY_WORK = (AppMain.DMS_STFRL_BOSS_BODY_WORK)obj_work; obj_work.pos.x = 0; obj_work.pos.y = -65536; obj_work.pos.z = -81920; obj_work.dir.y = ( ushort )AkMath.DEGtoA16(300); if (dms_STFRL_BOSS_BODY_WORK.timer != 0) { dms_STFRL_BOSS_BODY_WORK.timer--; return; } dms_STFRL_BOSS_BODY_WORK.flag |= 2097152U; }
// Token: 0x06000501 RID: 1281 RVA: 0x0002B054 File Offset: 0x00029254 private static void gmBoss5LdPartInitSpin(AppMain.GMS_BOSS5_LDPART_WORK ldpart_work) { AppMain.nnMakeUnitQuaternion(ref ldpart_work.cur_rot_quat); AppMain.nnMakeUnitQuaternion(ref ldpart_work.rot_diff_quat); int num = 0; while (( long )num < ( long )(( ulong )AppMain.GMD_BOSS5_LAND_LDPART_SPIN_ROT_AXIS_NUM)) { NNS_VECTOR nns_VECTOR = GlobalPool <NNS_VECTOR> .Alloc(); float num2 = AppMain.FX_FX32_TO_F32(AkMath.RandFx()) * 2f - 1f; num2 = AppMain.MTM_MATH_CLIP(num2, -1f, 1f); short rand_angle = AkMath.DEGtoA16(360f * AppMain.FX_FX32_TO_F32(AkMath.RandFx())); AkMath.GetRandomUnitVector(nns_VECTOR, num2, rand_angle); NNS_QUATERNION nns_QUATERNION; AppMain.nnMakeRotateAxisQuaternion(out nns_QUATERNION, nns_VECTOR.x, nns_VECTOR.y, nns_VECTOR.z, AppMain.GMD_BOSS5_LAND_LDPART_SPIN_ROT_SPD_DEG); AppMain.nnMultiplyQuaternion(ref ldpart_work.rot_diff_quat, ref nns_QUATERNION, ref ldpart_work.rot_diff_quat); num++; } }
// Token: 0x060002AF RID: 687 RVA: 0x00016764 File Offset: 0x00014964 private static AppMain.GMS_EFFECT_3DES_WORK GmBoss4EffCommonInit(int id, AppMain.VecFx32?pos, OBS_OBJECT_WORK parent_obj, uint type, uint flag, AppMain.GMS_BOSS4_NODE_MATRIX mtx, int link, AppMain.VecFx32?rot, uint[] ctrl_flag, uint mask) { OBS_OBJECT_WORK obs_OBJECT_WORK = AppMain.GMM_EFFECT_CREATE_WORK(() => new AppMain.GMS_BOSS4_EFF_COMMON_WORK(), parent_obj, 0, "B04_CapOver"); AppMain.GMS_EFFECT_3DES_WORK gms_EFFECT_3DES_WORK = (AppMain.GMS_EFFECT_3DES_WORK)obs_OBJECT_WORK; AppMain.GMS_BOSS4_EFF_COMMON_WORK gms_BOSS4_EFF_COMMON_WORK = (AppMain.GMS_BOSS4_EFF_COMMON_WORK)obs_OBJECT_WORK; AppMain.ObjObjectAction3dESEffectLoad(AppMain.GMM_BS_OBJ(gms_EFFECT_3DES_WORK), gms_EFFECT_3DES_WORK.obj_3des, AppMain.ObjDataGet(id), null, 0, null); AppMain.ObjObjectAction3dESTextureLoad(AppMain.GMM_BS_OBJ(gms_EFFECT_3DES_WORK), gms_EFFECT_3DES_WORK.obj_3des, AppMain.ObjDataGet(733), null, 0, null, false); AppMain.ObjObjectAction3dESTextureSetByDwork(obs_OBJECT_WORK, AppMain.ObjDataGet(734)); AppMain.GmEffect3DESSetupBase(gms_EFFECT_3DES_WORK, type, flag); if (pos != null) { AppMain.VEC_Set(ref obs_OBJECT_WORK.pos, pos.Value.x, pos.Value.y, pos.Value.z); } obs_OBJECT_WORK.ppFunc = AppMain.gmBoss4EffMainFuncFlagLink; obs_OBJECT_WORK.flag |= 32U; gms_BOSS4_EFF_COMMON_WORK.lookflag = ctrl_flag; gms_BOSS4_EFF_COMMON_WORK.lookmask = mask; if (gms_BOSS4_EFF_COMMON_WORK.lookflag != null) { gms_BOSS4_EFF_COMMON_WORK.lookflag[0] |= gms_BOSS4_EFF_COMMON_WORK.lookmask; } gms_BOSS4_EFF_COMMON_WORK.link = -1; if (link >= 0) { gms_BOSS4_EFF_COMMON_WORK.link = link; gms_BOSS4_EFF_COMMON_WORK.node_work = mtx; if (rot != null) { AppMain.GmEffect3DESSetDispRotation(gms_EFFECT_3DES_WORK, AkMath.DEGtoA16(AppMain.FX_FX32_TO_F32(rot.Value.x)), AkMath.DEGtoA16(AppMain.FX_FX32_TO_F32(rot.Value.y)), AkMath.DEGtoA16(AppMain.FX_FX32_TO_F32(rot.Value.z))); } if (pos != null) { AppMain.GmEffect3DESAddDispOffset(gms_EFFECT_3DES_WORK, AppMain.FX_FX32_TO_F32(pos.Value.x), AppMain.FX_FX32_TO_F32(pos.Value.y), AppMain.FX_FX32_TO_F32(pos.Value.z)); } } return(gms_EFFECT_3DES_WORK); }
// Token: 0x0600093C RID: 2364 RVA: 0x00052F4C File Offset: 0x0005114C private static OBS_OBJECT_WORK GmEneKamaInit(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_ENE_KAMA_WORK(), "ENE_KAMA"); AppMain.GMS_ENEMY_3D_WORK gms_ENEMY_3D_WORK = (AppMain.GMS_ENEMY_3D_WORK)obs_OBJECT_WORK; AppMain.GMS_ENE_KAMA_WORK gms_ENE_KAMA_WORK = (AppMain.GMS_ENE_KAMA_WORK)obs_OBJECT_WORK; AppMain.ObjObjectCopyAction3dNNModel(obs_OBJECT_WORK, AppMain.gm_ene_kama_obj_3d_list[0], gms_ENEMY_3D_WORK.obj_3d); AppMain.ObjObjectAction3dNNMotionLoad(obs_OBJECT_WORK, 0, true, AppMain.ObjDataGet(701), null, 0, null); AppMain.ObjDrawObjectSetToon(obs_OBJECT_WORK); obs_OBJECT_WORK.pos.z = 0; AppMain.OBS_RECT_WORK obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[1]; AppMain.ObjRectWorkSet(obs_RECT_WORK, -11, -24, 11, 0); obs_RECT_WORK.flag |= 4U; obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[0]; AppMain.ObjRectWorkSet(obs_RECT_WORK, -19, -32, 19, 0); obs_RECT_WORK.flag |= 4U; gms_ENEMY_3D_WORK.ene_com.rect_work[2].flag &= 4294967291U; obs_RECT_WORK = gms_ENEMY_3D_WORK.ene_com.rect_work[2]; AppMain.ObjRectWorkSet(obs_RECT_WORK, -19, -32, 19, 0); obs_RECT_WORK.flag &= 4294967291U; AppMain.ObjObjectFieldRectSet(obs_OBJECT_WORK, -4, -8, 4, 0); obs_OBJECT_WORK.move_flag |= 128U; if ((eve_rec.flag & 1) == 0) { obs_OBJECT_WORK.disp_flag |= 1U; } if ((eve_rec.flag & 2) != 0) { obs_OBJECT_WORK.disp_flag |= 2U; obs_OBJECT_WORK.move_flag &= 4294967167U; obs_OBJECT_WORK.dir.z = ( ushort )AkMath.DEGtoA16(180); obs_OBJECT_WORK.disp_flag ^= 1U; } gms_ENE_KAMA_WORK.atk_wait = 0; if ((eve_rec.flag & 4) != 0) { gms_ENE_KAMA_WORK.atk_wait += 10; } if ((eve_rec.flag & 8) != 0) { gms_ENE_KAMA_WORK.atk_wait += 20; } if ((eve_rec.flag & 16) != 0) { gms_ENE_KAMA_WORK.atk_wait += 30; } gms_ENE_KAMA_WORK.walk_s = 0; if ((eve_rec.flag & 32) != 0) { gms_ENE_KAMA_WORK.walk_s = 1; } obs_OBJECT_WORK.user_work = ( uint )(obs_OBJECT_WORK.pos.x + (( int )eve_rec.left << 12)); obs_OBJECT_WORK.user_flag = ( uint )(obs_OBJECT_WORK.pos.x + (( int )(eve_rec.left + ( sbyte )eve_rec.width) << 12)); gms_ENE_KAMA_WORK.spd_dec = 102; gms_ENE_KAMA_WORK.spd_dec_dist = 20480; AppMain.gmEneKamaWalkInit(obs_OBJECT_WORK); gms_ENE_KAMA_WORK.attack = 0; AppMain.GmEneUtilInitNodeMatrix(gms_ENE_KAMA_WORK.node_work, obs_OBJECT_WORK, 32); AppMain.mtTaskChangeTcbDestructor(obs_OBJECT_WORK.tcb, AppMain.gmEneKamaExit); AppMain.GmEneUtilGetNodeMatrix(gms_ENE_KAMA_WORK.node_work, 9); AppMain.GmEneUtilGetNodeMatrix(gms_ENE_KAMA_WORK.node_work, 6); OBS_OBJECT_WORK obs_OBJECT_WORK2 = AppMain.GmEventMgrLocalEventBirth(311, obs_OBJECT_WORK.pos.x, obs_OBJECT_WORK.pos.y, 0, 0, 0, 0, 0, 0); obs_OBJECT_WORK2.parent_obj = obs_OBJECT_WORK; obs_OBJECT_WORK2 = AppMain.GmEventMgrLocalEventBirth(312, obs_OBJECT_WORK.pos.x, obs_OBJECT_WORK.pos.y, 0, 0, 0, 0, 0, 0); obs_OBJECT_WORK2.parent_obj = obs_OBJECT_WORK; obs_OBJECT_WORK.obj_3d.use_light_flag &= 4294967294U; obs_OBJECT_WORK.obj_3d.use_light_flag |= 64U; obs_OBJECT_WORK.flag |= 1073741824U; return(obs_OBJECT_WORK); }