Beispiel #1
0
        /// <summary>
        /// On Effect Start Replace Brain with Fear Brain.
        /// </summary>
        /// <param name="effect"></param>
        public override void OnEffectStart(GameSpellEffect effect)
        {
            var npcTarget = effect.Owner as GameNPC;

            var fearBrain = new FearBrain();

            m_NPCFearBrains.AddOrReplace(npcTarget, fearBrain);

            npcTarget.AddBrain(fearBrain);
            fearBrain.Think();

            base.OnEffectStart(effect);
        }
Beispiel #2
0
        /// <summary>
        /// On Effect Start Replace Brain with Fear Brain.
        /// </summary>
        /// <param name="effect"></param>
        public override void OnEffectStart(GameSpellEffect effect)
        {
            var npcTarget = effect.Owner as GameNPC;

            var currentBrain = npcTarget.Brain as IOldAggressiveBrain;
            var friendBrain  = new FriendBrain(this);

            m_NPCFriendBrain.AddOrReplace(npcTarget, friendBrain);

            npcTarget.AddBrain(friendBrain);
            friendBrain.Think();

            // Prevent Aggro on Effect Expires.
            currentBrain?.ClearAggroList();

            base.OnEffectStart(effect);
        }