예제 #1
0
 public MaxAllDamageInWitchTimeChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished      = false;
     this._tempAllDamage = 0f;
     this.targetDamage   = (float)base._metaData.paramList[0];
     this._inStastics    = false;
 }
예제 #2
0
 public BaseLevelChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData)
 {
     this._helper     = helper;
     this._metaData   = metaData;
     this.challengeId = this._metaData.challengeId;
     this.active      = true;
 }
 public MaxMonsterKilledInWitchTimeChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished            = false;
     this._tempKilledAmount    = 0;
     this._tempMaxKilledAmount = 0;
     this.targetKilledAmount   = base._metaData.paramList[0];
     this._inStastics          = false;
 }
 public MaxDamageInCertainTimeChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished              = false;
     this._tempDamageInWindow    = 0f;
     this._tempMaxDamageInWindow = 0f;
     this._stasticsTimer         = 0f;
     this.targetTimeWindow       = (float)base._metaData.paramList[0];
     this.targetDamage           = (float)base._metaData.paramList[1];
     this._damageLs              = new List <Tuple <float, float> >();
     this._inStastics            = false;
 }
 public MaxMonsterKilledInCertainTimeChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished = false;
     this._tempKilledAmountInWindow    = 0;
     this._tempMaxKilledAmountInWindow = 0;
     this._stasticsTimer     = 0f;
     this.targetTimeWindow   = (float)base._metaData.paramList[0];
     this.targetKilledAmount = base._metaData.paramList[1];
     this._killedAmountLs    = new List <Tuple <float, int> >();
     this._inStastics        = false;
 }
예제 #6
0
 public SpecialLevelTimeChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished = true;
     if (metaData.conditionId != 0x1b)
     {
         LevelMetaData levelMetaDataByKey = LevelMetaDataReader.GetLevelMetaDataByKey(Singleton <LevelScoreManager> .Instance.LevelId);
         this.targetLevelTime = (metaData.conditionId != 0x1d) ? ((float)levelMetaDataByKey.fastBonusTime) : ((float)levelMetaDataByKey.sonicBonusTime);
     }
     else
     {
         this.targetLevelTime = (float)base._metaData.paramList[0];
     }
 }
예제 #7
0
파일: LevelActor.cs 프로젝트: slb1988/agame
        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));
        }
예제 #8
0
 public LimitLevelTimeChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished       = true;
     this.targetLevelTime = (float)base._metaData.paramList[0];
 }
예제 #9
0
 public MaxDebuffAddChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished             = false;
     this.targetDebuffAddNum    = base._metaData.paramList[0];
     this._addDebuffMonsterList = new List <uint>();
 }
예제 #10
0
 public HelperAvatarAliveChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished        = true;
     this._hasHelperAvatar = false;
 }
예제 #11
0
 public LimitAvatarChallege(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this.targetNum = base._metaData.paramList[0];
 }
예제 #12
0
 public MaxComboChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished      = false;
     this._maxCombo      = 0;
     this.targetMaxCombo = base._metaData.paramList[0];
 }
예제 #13
0
 public LimitBeHitDownChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished     = true;
     this._beHitDownNum = 0;
     this.targetDownNum = base._metaData.paramList[0];
 }
예제 #14
0
 public MaxUltimateSkillTriggeredChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished = false;
     this._tempUltimateSkillAmount  = 0;
     this.targetUltimateSkillAmount = base._metaData.paramList[0];
 }
예제 #15
0
 public MaxUltimateSkillTriggeredByDistinctAvatarChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished = false;
     this._tempTriggeredUltimateSkillAvatarIDs      = new List <uint>();
     this.targetUltimateSkillAmountByDistinctAvatar = base._metaData.paramList[0];
 }
 public MonsterLastKilledBySwitchInAttackChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished = false;
 }
예제 #17
0
 public MaxQTETriggeredChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished       = false;
     this.targetNum       = base._metaData.paramList[0];
     this._qteTiggeredNum = 0;
 }
예제 #18
0
 public MaxAvatarClassInTeamChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished   = false;
     this.targetNum   = base._metaData.paramList[0];
     this.targetClass = base._metaData.paramList[1];
 }
예제 #19
0
 public LimitTrapTriggeredChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished         = true;
     this._trapTriggeredNum = 0;
     this.targetNum         = base._metaData.paramList[0];
 }
예제 #20
0
 public MaxBoxOpenedChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished          = false;
     this._tempBoxOpenedNum  = 0;
     this.targetBoxOpenedNum = base._metaData.paramList[0];
 }
예제 #21
0
 public LimitTotalDamageTakenChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished         = true;
     this._tempDamageTaken  = 0f;
     this.targetDamageTaken = (float)base._metaData.paramList[0];
 }
예제 #22
0
 public MaxMonsterKilledByBranchAttackChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished       = false;
     this._tempKilledNum  = 0;
     this.targetKilledNum = base._metaData.paramList[0];
 }
 public LimitWitchTimeTriggeredChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished          = false;
     this.targetNum          = base._metaData.paramList[0];
     this._witchTimeTiggered = 0;
 }
예제 #24
0
 public MaxMonsterHitAirChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished          = false;
     this._tempHitAirAmount  = 0;
     this.targetHitAirAmount = base._metaData.paramList[0];
 }
예제 #25
0
 public LimitBeAddedDebuffChallenge(LevelChallengeHelperPlugin helper, LevelChallengeMetaData metaData) : base(helper, metaData)
 {
     this._finished              = true;
     this._tempBeAddedDebuffNum  = 0;
     this.targetBeAddedDebuffNum = base._metaData.paramList[0];
 }