Exemplo n.º 1
0
        private void AnalyseObjectMonster(ObjectMonster monster)
        {
            var _spellInfoArray = monster.Getm_SpellInfo();

            for (int i = 0; i < _spellInfoArray.Count; i++)
            {
                if (_spellInfoArray[i] != null && _spellInfoArray[i].GetSpellID() != -1)
                {
                    SpellInfo _tempInfo = _spellInfoArray[i];
                    for (int j = 0; j < _tempInfo.GetSpellRow().getNormalTemplate().Length; ++j)
                    {
                        if (monster.CheckSkillCondtion(_tempInfo))
                        {
                            SpellAILogic tempLogic = GenerateSubsetFromPool(_tempInfo.GetSpellRow().getNormalTemplate()[j],
                                                                            _tempInfo.GetSpellRow().getNormalpriority()[j],
                                                                            monster, _tempInfo, m_AITime);
                            if (tempLogic.IsAILogicReady() && tempLogic.GetPriority() >= m_MaxPriority)
                            {
                                m_MaxPriority = tempLogic.GetPriority();
                                m_SpellList.Add(new MonsterSpellLogicPackage(monster, tempLogic));
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 2
0
 public int GetPriority()
 {
     return(m_SpellAILogic.GetPriority());
 }