public static CharacterItemRecord AddEffectsAndClone(CharacterItemRecord baseItem, List <ObjectEffect> addedeffects, uint newQuantity) { var newItem = baseItem.CloneAndGetNewUID(); newItem.AddEffects(addedeffects); newItem.Quantity = newQuantity; return(newItem); }
public static void HandleMimicryObjectErase(MimicryObjectEraseRequestMessage message, WorldClient client) { CharacterItemRecord item = client.Character.Inventory.GetItem(message.hostUID); if (message.hostPos != 63) { client.Character.Inventory.UnequipItem(item, 63, item.GetTemplate(), item.Quantity); client.Character.RefreshOnMapInstance(); client.Character.RefreshStats(); } item.RemoveAllEffect(EffectsEnum.Eff_Mimicry); var newItem = item.CloneAndGetNewUID(); client.Character.Inventory.RemoveItem(item.UID, item.Quantity, false); client.Character.Inventory.Add(newItem); }