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); } }
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); }