Example #1
0
        public static void NpcDied(Npc npc)
        {
            var player = npc.Ai.GetKiller() as Player;

            if (player != null)
            {
                if (player.Party != null)
                {
                    foreach (Player member in PartyService.GetOnlineMembers(player.Party))
                    {
                        QuestEngine.OnPlayerKillNpc(member, npc);
                    }
                }
                else
                {
                    QuestEngine.OnPlayerKillNpc(player, npc);
                }

                player.Instance.OnNpcKill(player, npc);
            }

            if (npc.NpcTemplate.Size != NpcSize.Small)
            {
                npc.Ai.DealExp();
            }

            if (player != null)
            {
                MapService.CreateDrop(npc, player);
            }
        }
Example #2
0
        public static void NpcDied(Npc npc)
        {
            var player = npc.Ai.GetKiller() as Player;

            if (player != null)
            {
                /*if (player.Party != null)
                 *  foreach (Player member in PartyService.GetOnlineMembers(player.Party))
                 *      QuestEngine.OnPlayerKillNpc(member, npc);
                 * else
                 *  QuestEngine.OnPlayerKillNpc(player, npc);*/

                player.Instance.OnNpcKill(player, npc);
                player.Target = null;
            }

            npc.Ai.DealExp();

            if (player != null)
            {
                MapService.CreateDrop(npc, player);
            }
        }