예제 #1
0
        public override void RoundAttract(ref FightManager.RoundResult roundResult, FightObj_Player sender, FightObj_Player reciver)
        {
            FightManager.BuffResult buffResult = new FightManager.BuffResult();

            if (reciver == FightManager.Instance.SelfPlayer)
            {
            }
        }
예제 #2
0
        public void PatchBuff(Tables.BuffInfoRecord buffRecord, FightObj_Player sender, FightObj_Player reciver)
        {
            var buffBase = (BuffImpact_Base)System.Activator.CreateInstance(System.Type.GetType("GameLogic." + buffRecord.Impact.TableName));

            buffBase.InitBuff(buffRecord, sender, reciver);
            if (buffBase != null && buffRecord.Last > 0)
            {
                buffBase.LastRound = buffRecord.Last;
                _BuffList.Add(buffBase);
            }
        }
예제 #3
0
        private void InitFightInfo()
        {
            _FightGuestPlans.Clear();
            _WaveGuests.Clear();
            _EnemyGirls.Clear();

            foreach (var objPlan in _FightRecord.ObjPlan)
            {
                if (objPlan == null)
                {
                    continue;
                }

                if (string.IsNullOrEmpty(objPlan.TableName))
                {
                    continue;
                }

                var planBase = (FightObjPlan_Base)Activator.CreateInstance(Type.GetType("GameLogic." + objPlan.TableName));
                planBase.Init(objPlan.ID);
                _FightGuestPlans.Add(planBase);

                _EnemyGirls.Add(planBase.GetEnemyGirl());
                _WaveGuests.Add(planBase.GetGuest());
                Debug.Log("guestWave:" + _WaveGuests.Count + ", count:" + _WaveGuests[_WaveGuests.Count - 1].Id);
            }

            _FightingWave = -1;
            Debug.Log("_EnemyGirls:" + _EnemyGirls.Count);

            EnemyPlayer = new FightObj_Player();
            EnemyPlayer.Init();

            SelfPlayer = new FightObj_Player();
            SelfPlayer.Init();

            _FightResult = new FightResult();

            InitNextRound();

            ClearAllGirlCD();
        }
예제 #4
0
        public override void InitBuff(BuffInfoRecord buffRecord, FightObj_Player sender, FightObj_Player reciver)
        {
            _ImpactRecord = TableReader.BuffImpact_ModifyValueLast.GetRecord(buffRecord.Impact.ID);

            if (_ImpactRecord == null)
            {
                return;
            }

            if (_ImpactRecord.TargetValue == PLAYER_VALUE_TYPE.EVALUATION)
            {
                ErrorManager.PushAndDisplayError("BuffImpact_ModifyValueLast TargetValue Cant modify last!! " + _ImpactRecord.TargetValue.ToString());
                return;
            }

            int sourceValue = 0;

            if (_ImpactRecord.SourceType == SKILL_TARGET_TYPE.Self)
            {
                sourceValue = sender.GetValue(_ImpactRecord.SourceValue);
            }
            else if (_ImpactRecord.SourceType == SKILL_TARGET_TYPE.Enemy)
            {
                sourceValue = sender.GetValue(_ImpactRecord.SourceValue);
            }
            else if (_ImpactRecord.ModifyType == IMPACT_MODIFY_TYPE.FIXED)
            {
                sourceValue = (int)_ImpactRecord.ModifyValue;
            }

            if (_ImpactRecord.ModifyType == IMPACT_MODIFY_TYPE.PERSEND)
            {
                sourceValue = (int)(sourceValue * _ImpactRecord.ModifyValue);
            }

            if (_ImpactRecord.TargetValue != PLAYER_VALUE_TYPE.EVALUATION)
            {
                _ModifiedValue = reciver.AddValue(_ImpactRecord.TargetValue, sourceValue);
            }
        }
예제 #5
0
        public override void DispatchBuff(FightObj_Player buffOwner)
        {
            base.DispatchBuff(buffOwner);

            buffOwner.AddValue(_ImpactRecord.TargetValue, -_ModifiedValue);
        }
예제 #6
0
 public override void RoundPoint(ref FightManager.RoundResult roundResult, FightObj_Player sender, FightObj_Player reciver)
 {
 }
예제 #7
0
 public override void DispatchBuff(FightObj_Player buffOwner)
 {
 }
예제 #8
0
 public override void InitBuff(Tables.BuffInfoRecord buffRecord, FightObj_Player sender, FightObj_Player reciver)
 {
 }
예제 #9
0
 public virtual void RoundAttract(ref FightManager.RoundResult roundResult, FightObj_Player sender, FightObj_Player reciver)
 {
 }
예제 #10
0
 public virtual void DispatchBuff(FightObj_Player buffOwner)
 {
 }
예제 #11
0
 public SkillManager(FightObj_Player owner)
 {
     Init(owner);
 }
예제 #12
0
 public void Init(FightObj_Player owner)
 {
     _SkillOwner  = owner;
     _BuffManager = new BuffManager(_SkillOwner);
 }
예제 #13
0
 public BuffManager(FightObj_Player owner)
 {
     _BuffOwner = owner;
 }
예제 #14
0
 public override void InitBuff(BuffInfoRecord buffRecord, FightObj_Player sender, FightObj_Player reciver)
 {
     _ImpactRecord = TableReader.BuffImpact_ModifyAttract.GetRecord(buffRecord.Impact.ID);
 }