public override void OnDeath(Container c)
        {
            base.OnDeath(c);

            if (!Summoned && !NoKillAwards && DemonKnight.CheckArtifactChance(this))
            {
                DemonKnight.DistributeArtifact(this);
            }

            if (0.75 > Utility.RandomDouble())
            {
                int  r    = Utility.Random(100);
                Item drop = null;

                if (r < 1)
                {
                    drop = new LayerSashDeed();
                }
                else if (r < 4)
                {
                    drop = new SpecialQuestSandals();
                }
                else if (r < 6)
                {
                    drop = new RareCreamCarpet(PieceType.Centre);
                }
                else if (r < 8)
                {
                    drop = new RareBlueCarpet(PieceType.Centre);
                }
                else if (r < 10)
                {
                    drop = new RareBloodCarpet(PieceType.Centre);
                }
                else if (r < 12)
                {
                    drop = new BasicBlueCarpet(PieceType.Centre);
                }
                else if (r < 14)
                {
                    drop = new BasicPinkCarpet(PieceType.Centre);
                }
                else if (r < 29)
                {
                    drop = new BloodPentagramPart(Utility.Random(5));
                }
                else if (r < 30)
                {
                    drop = new ClothingBlessDeed();
                }
                else if (r < 35)
                {
                    drop = new MysteriousCloth();
                }
                else if (r < 40)
                {
                    drop = new SpecialHairDye();
                }
                else if (r < 45)
                {
                    drop = new SpecialBeardDye();
                }
                else if (r < 50)
                {
                    drop = new NameChangeDeed();
                }
                else if (r < 65)
                {
                    drop = new SkillTunic();
                }
                else if (r < 80)
                {
                    drop = new TamersCrook();
                }
                else if (r < 85)
                {
                    drop = new HeroShield();
                }
                else if (r < 88)
                {
                    drop = new EvilShield();
                }
                else if (r < 91)
                {
                    drop = new MondainHat();
                }
                else if (r < 94)
                {
                    drop = new PlatinGloves();
                }
                else if (r < 96)
                {
                    drop = new AncientSamuraiHelm();
                }
                else if (r < 98)
                {
                    drop = Utility.RandomBool() ? (Item)(new MirrorEast()) : (Item)(new MirrorNorth());
                }
                else
                {
                    drop = Utility.RandomBool() ? (Item)(new BoneBenchEastPart()) : (Item)(new BoneBenchWestPart());
                }

                c.DropItem(drop);
            }
        }
        public void DistributeLoot()
        {
            if (Map != Map.Felucca)
            {
                return;
            }

            List <Mobile> PlayersToGiveTo = new List <Mobile>();

            List <AggressorInfo> list = Aggressors;

            for (int i = 0; i < list.Count; ++i)
            {
                AggressorInfo info = list[i];

                if (info.Attacker.Player && info.Attacker.Alive && (DateTime.Now - info.LastCombatTime) < TimeSpan.FromSeconds(60.0) && !PlayersToGiveTo.Contains(info.Attacker))
                {
                    PlayersToGiveTo.Add(info.Attacker);
                }
            }

            list = Aggressed;
            for (int i = 0; i < list.Count; ++i)
            {
                AggressorInfo info = list[i];

                if (info.Defender.Player && info.Defender.Alive && (DateTime.Now - info.LastCombatTime) < TimeSpan.FromSeconds(60.0) && !PlayersToGiveTo.Contains(info.Defender))
                {
                    PlayersToGiveTo.Add(info.Defender);
                }
            }

            if (PlayersToGiveTo.Count <= 0)
            {
                return;
            }

            if (Backpack == null)
            {
                return;
            }

            //ArrayList ItemsToGive = new ArrayList();

            Item item = null;
            int  rand = Utility.Random(200);

            if (rand == 0)
            {
                item = new LayerSashDeed();
            }
            else if (rand <= 8)
            {
                item = new HolyDeedofBlessing();
            }
            else if (rand <= 30)
            {
                item = new CursedClothingBlessDeed();
            }
            else if (rand <= 80)
            {
                item = new ClothingBlessDeed();
            }

            if (item != null)
            {
                if (item.Movable == false || item.LootType == LootType.Blessed || item.LootType == LootType.Newbied)
                {
                    return;
                }
                PlayerMobile player = PlayersToGiveTo[Utility.Random(PlayersToGiveTo.Count)] as PlayerMobile;
                if (player != null && player.Backpack != null)
                {
                    player.SendMessage("You have been given a special item.");
                    player.Backpack.DropItem(item);
                }
            }
        }