Esempio n. 1
0
        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();
        }
Esempio n. 2
0
        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();
        }
Esempio n. 3
0
        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));
        }
Esempio n. 4
0
 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();
     }
 }