ACR_CreatureBehavior.AIParty.AddPartyEnemy C# (CSharp) Method

AddPartyEnemy() public method

public AddPartyEnemy ( CreatureObject PartyEnemy ) : void
PartyEnemy CreatureObject
return void
        public void AddPartyEnemy(CreatureObject PartyEnemy)
        {
            if (PartyEnemy == null)
            {
                throw new ApplicationException("Trying to add party enemy, but that creature does not exist.");
            }
            if(!Enemies.Contains(PartyEnemy))
                Enemies.Add(PartyEnemy);

            if (CanPartySee(PartyEnemy))
            {
                int EnemyArmorRank = PartyEnemy.Script.GetArmorRank(PartyEnemy.Script.GetItemInSlot(CLRScriptBase.INVENTORY_SLOT_CARMOUR, PartyEnemy.ObjectId));
                if ((EnemyArmorRank == CLRScriptBase.ARMOR_RANK_HEAVY ||
                    EnemyArmorRank == CLRScriptBase.ARMOR_RANK_MEDIUM) &&
                    !EnemyHardTargets.Contains(PartyEnemy))
                    EnemyHardTargets.Add(PartyEnemy);
                if (EnemyArmorRank == CLRScriptBase.ARMOR_RANK_LIGHT ||
                    EnemyArmorRank == CLRScriptBase.ARMOR_RANK_NONE)
                    EnemySoftTargets.Add(PartyEnemy);
                if (_LooksLikeSpellcaster(PartyEnemy))
                    EnemySpellcasters.Add(PartyEnemy);
            }
            else
            {
                EnemiesLost.Add(PartyEnemy);
            }
        }