protected virtual void CreateLevelManager() { Singleton <LevelManager> .Create(); MonoLevelEntity entity = Singleton <LevelManager> .Instance.levelEntity = base.gameObject.AddComponent <MonoLevelEntity>(); entity.Init(0x21800001); Singleton <LevelManager> .Instance.levelActor = Singleton <EventManager> .Instance.CreateActor <LevelActor>(entity); Singleton <LevelManager> .Instance.levelActor.PostInit(); }
public void Awake() { this.AwakeTryLoadFromFile(); GlobalVars.DISABLE_NETWORK_DEBUG = true; QualitySettings.vSyncCount = 1; Singleton <LevelManager> .Create(); Singleton <EffectManager> .Create(); Singleton <RuntimeIDManager> .Instance.InitAtAwake(); Singleton <StageManager> .Instance.InitAtAwake(); Singleton <AvatarManager> .Instance.InitAtAwake(); Singleton <CameraManager> .Instance.InitAtAwake(); Singleton <MonsterManager> .Instance.InitAtAwake(); Singleton <PropObjectManager> .Instance.InitAtAwake(); Singleton <DynamicObjectManager> .Instance.InitAtAwake(); Singleton <EffectManager> .Instance.InitAtAwake(); Singleton <EventManager> .Instance.InitAtAwake(); this.HandleBeforeLevelDesignAwake(); Singleton <LevelDesignManager> .Instance.InitAtAwake(); Singleton <AuxObjectManager> .Instance.InitAtAwake(); Singleton <DetourManager> .Instance.InitAtAwake(); Singleton <ShaderDataManager> .Instance.InitAtAwake(); Singleton <CinemaDataManager> .Instance.InitAtAwake(); this._levelManager = Singleton <LevelManager> .Instance; this._levelManager.CreateBehaviorManager(); MonoLevelEntity entity = base.gameObject.AddComponent <MonoLevelEntity>(); this._levelManager.levelEntity = entity; entity.Init(0x21800001); LevelActor actor = Singleton <EventManager> .Instance.CreateActor <LevelActor>(entity); this._levelManager.levelActor = actor; actor.PostInit(); actor.AddPlugin(new DevLevelActorPlugin(this)); actor.RemovePlugin <LevelMissionStatisticsPlugin>(); this.PostAwakeTryLoadFromFile(); }
public override void Init(BaseMonoEntity entity) { this.levelEntity = (MonoLevelEntity)entity; base.commonConfig = this.levelEntity.commonConfig; base.Init(entity); base.runtimeID = 0x21800001; this.levelState = LevelState.LevelLoaded; this._damagePlugin = new LevelDamageStasticsPlugin(this); if (Singleton <LevelScoreManager> .Instance.collectAntiCheatData) { this.antiCheatPlugin = new LevelAntiCheatPlugin(this._damagePlugin); base.AddPlugin(this.antiCheatPlugin); } this._frameHitSet = new HashSet <KeyValuePair <int, string> >(); this._frameIndex = 0; LevelChallengeHelperPlugin plugin = new LevelChallengeHelperPlugin(this); base.AddPlugin(plugin); int levelId = Singleton <LevelScoreManager> .Instance.LevelId; if ((levelId != 0) && (Singleton <LevelTutorialModule> .Instance.GetUnFinishedTutorialIDList(levelId).Count > 0)) { LevelTutorialHelperPlugin plugin2 = new LevelTutorialHelperPlugin(this); base.AddPlugin(plugin2); } this._levelMissionStatisticsPlugin = new LevelMissionStatisticsPlugin(this); base.AddPlugin(this._levelMissionStatisticsPlugin); this._levelMonsterAIPlugin = new LevelAIPlugin(this); base.AddPlugin(this._levelMonsterAIPlugin); this.InitAdditionalLevelActorPlugins(); Singleton <EventManager> .Instance.RegisterEventListener <EvtKilled>(base.runtimeID); Singleton <EventManager> .Instance.RegisterEventListener <EvtBeingHit>(base.runtimeID); Singleton <EventManager> .Instance.RegisterEventListener <EvtAvatarSwapOutStart>(base.runtimeID); Singleton <EventManager> .Instance.RegisterEventListener <EvtAttackStart>(base.runtimeID); Singleton <EventManager> .Instance.RegisterEventListener <EvtAttackLanded>(base.runtimeID); Singleton <EventManager> .Instance.RegisterEventListener <EvtReviveAvatar>(base.runtimeID); AvatarManager instance = Singleton <AvatarManager> .Instance; instance.onLocalAvatarChanged = (Action <BaseMonoAvatar, BaseMonoAvatar>)Delegate.Combine(instance.onLocalAvatarChanged, new Action <BaseMonoAvatar, BaseMonoAvatar>(this.OnLocalAvatarChanged)); }
public override void Core() { base.Core(); if (!this._allowOtherCanSwithInWhenSelfOnStage) { this._switchInTimer.Core(1f); } if (base.isAlive != 0) { MonoLevelEntity levelEntity = Singleton <LevelManager> .Instance.levelEntity; for (int i = 0; i < this.skillInfoList.Count; i++) { SKillInfo info = this.skillInfoList[i]; if (info.cdTimer >= 0f) { info.cdTimer -= levelEntity.TimeScale * Time.deltaTime; if (info.cdTimer < 0f) { info.cdTimer = -253f; } if ((info.cdTimer == -253f) && (info.MaxChargesCount > 0)) { int chargesCounter = (int)info.chargesCounter; int num3 = Mathf.Clamp(chargesCounter + 1, 0, (int)info.MaxChargesCount); info.chargesCounter = num3; if (this.onSkillChargeChanged != null) { this.onSkillChargeChanged(info.skillName, chargesCounter, num3); } if (info.chargesCounter < info.MaxChargesCount) { info.cdTimer = this.GetSkillCD(info.skillName); } } } } this.UpdateAbilityState(); } }