예제 #1
0
        protected override void Excute(CharHandler charHandler, int index = -1, int skillInstId = -1)
        {
            CharData           charData = charHandler.m_CharData;
            List <CharHandler> targets  = GetTargets(charHandler);
            float hurt;

            if (BattleEnum.Enum_CharType.Monster == charHandler.m_CharData.m_eType)
            {
                for (int i = 0; i < targets.Count; ++i)
                {
                    hurt = BattleCalculate.MonsterNormalHurt(charData, targets[i].m_CharData);
                    hurt = ChangeProperty.RatioCoefficient(hurt, SkillEnum.SkillKind.Force, charHandler, targets[i]);
                    targets[i].BeHit(hurt, charHandler);
                }
            }
            else
            {
                for (int i = 0; i < targets.Count; ++i)
                {
                    hurt = BattleCalculate.HeroNormalHurt(charData, targets[i].m_CharData);
                    hurt = ChangeProperty.RatioCoefficient(hurt, SkillEnum.SkillKind.Force, charHandler, targets[i]);
                    targets[i].BeHit(hurt, charHandler);
                }
            }
        }
예제 #2
0
        private void BeHitCallback(CharHandler charHandler, CharHandler aimHandler)
        {
            float hurt;

            if (BattleEnum.Enum_CharType.Monster == charHandler.m_CharData.m_eType)
            {
                hurt = BattleCalculate.MonsterNormalHurt(charHandler.m_CharData, aimHandler.m_CharData);
            }
            else
            {
                hurt = BattleCalculate.HeroNormalHurt(charHandler.m_CharData, aimHandler.m_CharData);
            }

            hurt = ChangeProperty.RatioCoefficient(hurt, SkillEnum.SkillKind.Force, charHandler, aimHandler);
            aimHandler.BeHit(hurt, charHandler);
        }