Ejemplo n.º 1
0
        private static void OnProps(Packet p, PacketHandlerEventArgs args)
        {
            p.ReadUInt16();
            Item   item = World.FindItem(p.ReadUInt32());
            ushort hue  = GetHue(item);

            if (hue != 0)
            {
                Packet packet = new ContainerItem(item);
                packet.Seek(-2, SeekOrigin.End);
                packet.Write(hue);
                WorldEx.SendToClient(packet);
            }
        }
Ejemplo n.º 2
0
        private static void DyeTarget(Serial target, ushort hue)
        {
            UOEntity targetObject = WorldEx.GetEntity(target);

            if (targetObject == null)
            {
                return;
            }

            Packet packet;

            if (targetObject is Item)
            {
                if (((Item)targetObject).Container is Mobile)
                {
                    packet = new EquipmentItem((Item)targetObject, hue, ((Mobile)((Item)targetObject).Container).Serial);
                }
                else
                {
                    packet = new ContainerItem((Item)targetObject);
                    packet.Seek(-2, SeekOrigin.End);
                    packet.Write(hue);
                }
            }
            else if (targetObject is Mobile)
            {
                Item mount = ((Mobile)targetObject).GetItemOnLayer(Layer.Mount);
                if (mount != null)
                {
                    packet = new EquipmentItem(mount, hue, targetObject.Serial);
                }
                else
                {
                    packet = new MobileIncoming((Mobile)targetObject);
                    packet.Seek(15, SeekOrigin.Begin);
                    packet.Write(hue);
                }
            }
            else
            {
                return;
            }
            WorldEx.SendToClient(packet);
        }