private static AppMain.OBS_OBJECT_WORK GmBoss1Init( AppMain.GMS_EVE_RECORD_EVENT eve_rec, int pos_x, int pos_y, byte type) { AppMain.UNREFERENCED_PARAMETER((object)type); AppMain.OBS_OBJECT_WORK work = AppMain.GMM_ENEMY_CREATE_WORK(eve_rec, pos_x, pos_y, (AppMain.TaskWorkFactoryDelegate)(() => (object)new AppMain.GMS_BOSS1_MGR_WORK()), "BOSS1_MGR"); AppMain.GMS_BOSS1_MGR_WORK gmsBosS1MgrWork = (AppMain.GMS_BOSS1_MGR_WORK)work; work.flag |= 16U; work.disp_flag |= 32U; work.move_flag |= 8448U; gmsBosS1MgrWork.life = AppMain.GmBsCmnIsFinalZoneType(work) == 0 ? 8 : 4; work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmBoss1MgrWaitLoad); return(work); }
private static void gmBoss1MgrMain(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_BOSS1_MGR_WORK gmsBosS1MgrWork = (AppMain.GMS_BOSS1_MGR_WORK)obj_work; if (((int)gmsBosS1MgrWork.flag & 2) == 0) { return; } if (gmsBosS1MgrWork.body_work != null) { AppMain.GMM_BS_OBJ((object)gmsBosS1MgrWork.body_work).flag |= 8U; gmsBosS1MgrWork.body_work = (AppMain.GMS_BOSS1_BODY_WORK)null; } if (AppMain.GmBsCmnIsFinalZoneType(obj_work) == 0) { return; } obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmBoss1MgrWaitRelease); }
private static void gmBoss1MgrWaitSetup(AppMain.OBS_OBJECT_WORK obj_work) { AppMain.GMS_BOSS1_MGR_WORK gmsBosS1MgrWork = (AppMain.GMS_BOSS1_MGR_WORK)obj_work; AppMain.GMS_BOSS1_BODY_WORK bodyWork = gmsBosS1MgrWork.body_work; bool flag = true; for (int index = 0; index < 3; ++index) { if (bodyWork.parts_objs[index] == null) { flag = false; } } if (!flag) { return; } gmsBosS1MgrWork.flag |= 1U; obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmBoss1MgrMain); }
private static void gmBoss1MgrWaitLoad(AppMain.OBS_OBJECT_WORK obj_work) { bool flag = false; if (AppMain.GmBsCmnIsFinalZoneType(obj_work) != 0) { if (AppMain.GmMainDatLoadBossBattleLoadCheck(0)) { flag = true; } } else { flag = true; } if (!flag) { return; } AppMain.GMS_BOSS1_MGR_WORK mgr_work = (AppMain.GMS_BOSS1_MGR_WORK)obj_work; AppMain.OBS_OBJECT_WORK obsObjectWork1 = AppMain.GmEventMgrLocalEventBirth((ushort)313, obj_work.pos.x, obj_work.pos.y, (ushort)0, (sbyte)0, (sbyte)0, (byte)0, (byte)0, (byte)0); AppMain.gmBoss1MgrIncObjCreateCount(mgr_work); AppMain.OBS_OBJECT_WORK obsObjectWork2 = AppMain.GmEventMgrLocalEventBirth((ushort)314, obj_work.pos.x, obj_work.pos.y, (ushort)0, (sbyte)0, (sbyte)0, (byte)0, (byte)0, (byte)0); AppMain.gmBoss1MgrIncObjCreateCount(mgr_work); AppMain.OBS_OBJECT_WORK obsObjectWork3 = AppMain.GmEventMgrLocalEventBirth((ushort)315, obj_work.pos.x, obj_work.pos.y, (ushort)0, (sbyte)0, (sbyte)0, (byte)0, (byte)0, (byte)0); AppMain.gmBoss1MgrIncObjCreateCount(mgr_work); AppMain.GMS_BOSS1_BODY_WORK gmsBosS1BodyWork = (AppMain.GMS_BOSS1_BODY_WORK)obsObjectWork1; AppMain.GMS_BOSS1_CHAIN_WORK gmsBosS1ChainWork = (AppMain.GMS_BOSS1_CHAIN_WORK)obsObjectWork2; AppMain.GMS_BOSS1_EGG_WORK gmsBosS1EggWork = (AppMain.GMS_BOSS1_EGG_WORK)obsObjectWork3; mgr_work.body_work = gmsBosS1BodyWork; gmsBosS1BodyWork.mgr_work = mgr_work; gmsBosS1ChainWork.mgr_work = mgr_work; gmsBosS1EggWork.mgr_work = mgr_work; obsObjectWork1.parent_obj = obj_work; obsObjectWork2.parent_obj = obsObjectWork1; obsObjectWork3.parent_obj = obsObjectWork1; gmsBosS1BodyWork.parts_objs[0] = obsObjectWork1; gmsBosS1BodyWork.parts_objs[1] = obsObjectWork2; gmsBosS1BodyWork.parts_objs[2] = obsObjectWork3; obj_work.ppFunc = new AppMain.MPP_VOID_OBS_OBJECT_WORK(AppMain.gmBoss1MgrWaitSetup); }
private static bool gmBoss1MgrIsAllCreatedObjDeleted(AppMain.GMS_BOSS1_MGR_WORK mgr_work) { AppMain.MTM_ASSERT(mgr_work.obj_create_cnt >= 0); return(mgr_work.obj_create_cnt <= 0); }
private static void gmBoss1MgrDecObjCreateCount(AppMain.GMS_BOSS1_MGR_WORK mgr_work) { AppMain.MTM_ASSERT(mgr_work.obj_create_cnt > 0); --mgr_work.obj_create_cnt; }