- ServUO Version
- Publish Unknown
- Ultima Expansion
- Mondain's Legacy
I have a RunUO V2.1 server and recently I noticed that when some Items are SingleClicked they will flash a 'very fast' message indicating a missing Cliloc just before they display the item's intended "name".
This 'very fast' message indicating a missing Cliloc only happens the very first time the item is single clicked but not on repeated clicks . . Unless I have an item that changes its' ItemID on DoubleClick. In that case I get the flashed message once more the first time the item with its' new ItemID is SingleClicked.
I have tried to prevent this by inserting my own OnSingleClick overrides but it makes no difference if I insert code for a OnSingleClick override or leave it out completely.
This problem It is not the end of the world but it has become a real annoyance.
Has anyone else experienced this? Is there a solution to this?
Here is an example of a script I have that does this:
Any help enlightening me on how to solve this would be appreciated.
Many Thanks
This 'very fast' message indicating a missing Cliloc only happens the very first time the item is single clicked but not on repeated clicks . . Unless I have an item that changes its' ItemID on DoubleClick. In that case I get the flashed message once more the first time the item with its' new ItemID is SingleClicked.
I have tried to prevent this by inserting my own OnSingleClick overrides but it makes no difference if I insert code for a OnSingleClick override or leave it out completely.
This problem It is not the end of the world but it has become a real annoyance.
Has anyone else experienced this? Is there a solution to this?
Here is an example of a script I have that does this:
Code:
using System;
using Server.Network;
namespace Server.Items
{
public class FloorLampEast : Item
{
[Constructable]
public FloorLampEast() : base(650)
{
Light = LightType.Circle150;
Weight = 50.0;
ItemID = 650;
Name = "a floor lamp";
}
public override void OnDoubleClick( Mobile m )
{
if (!m.InRange( this.GetWorldLocation(), 2 ))
{
m.LocalOverheadMessage( MessageType.Regular, 0x3B2, 1019045 ); // I can't reach that.
return;
}
if (Light == LightType.Empty)
{
Light = LightType.Circle150;
m.PrivateOverheadMessage( MessageType.Regular, 1154, false, "You turn the light on.", m.NetState );
}
else if (Light == LightType.Circle150)
{
Light = LightType.Empty;
m.PrivateOverheadMessage( MessageType.Regular, 1154, false, "You turn the light off.", m.NetState );
}
}
public FloorLampEast(Serial serial)
: base(serial)
{
}
public override void Serialize(GenericWriter writer)
{
base.Serialize(writer);
writer.Write((int)0);
}
public override void Deserialize(GenericReader reader)
{
base.Deserialize(reader);
int version = reader.ReadInt();
}
}
}
Any help enlightening me on how to solve this would be appreciated.
Many Thanks