コード例 #1
0
        public new void Carve(Mobile from, Item item)
        {
            base.Carve(from, item);

            var  charName     = Owner.Name;
            var  itemsInRange = GetItemsInRange(0);
            Head oldHead      = null;

            foreach (var it in itemsInRange)
            {
                var h = it as Head;
                if (h == null || h is BountiedHead || h.PlayerName != charName)
                {
                    continue;
                }

                oldHead = h;
                break;
            }

            /* RunUO 2.2 IPooledEnumerable does not support ToList()?
             * var oldHead = GetItemsInRange(0)
             *  .ToList()
             *  .FirstOrDefault(x => x is Head && ((Head) x).PlayerName == charName);*/
            if (oldHead == null)
            {
                return;
            }

            var bh = new BountiedHead(charName)
            {
                Player  = Owner as PlayerMobile,
                Bounty  = BountyInformation.GetBounty(Owner),
                Created = DateTime.UtcNow
            };

            bh.MoveToWorld(oldHead.Location, oldHead.Map);
            oldHead.Delete();
        }
コード例 #2
0
        public new void Carve(Mobile from, Item item)
        {
            base.Carve(from, item);

            var charName = Owner.Name;
            var itemsInRange = GetItemsInRange(0);
            Head oldHead = null;
            foreach (var it in itemsInRange)
            {
                var h = it as Head;
                if (h == null || h is BountiedHead || h.PlayerName != charName)
                    continue;

                oldHead = h;
                break;
            }
            /* RunUO 2.2 IPooledEnumerable does not support ToList()?
            var oldHead = GetItemsInRange(0)
                .ToList()
                .FirstOrDefault(x => x is Head && ((Head) x).PlayerName == charName);*/
            if (oldHead == null)
                return;

            var bh = new BountiedHead(charName)
            {
                Player = Owner as PlayerMobile,
                Bounty = BountyInformation.GetBounty(Owner),
                Created = DateTime.UtcNow
            };
            bh.MoveToWorld(oldHead.Location, oldHead.Map);
            oldHead.Delete();
        }