in PacketHandler(Packets/PacketHandler) look for
Code:
#region 1009: item usage/ping
case 1009:
Code:
#region Socket Equipment (market)
case ItemAction.SocketEquipment:
{
if (!user.Inventory.ContainsKey(item.Id))
return;
Structures.ItemInfo toUpgrade = user.Inventory[item.Id];
if (toUpgrade.Gem1 == 0 && toUpgrade.Gem2 == 0)
{
if (!user.HasItem(1088000))
{
user.SendMessage("SYSTEM", user.Name, "You must have at least one DragonBall!", uint.MaxValue, ChatType.MessageBox);
return;
}
if (toUpgrade.StaticID < 410003 || toUpgrade.StaticID > 610439)
{
user.RemoveItem(1088000, 12);
}
else
{
user.RemoveItem(1088000, 1);
}
toUpgrade.Gem1 = 255;
Database.ModifyItem(toUpgrade.Gem1, "Soc1", toUpgrade.UniqueID);
user.Inventory[toUpgrade.UniqueID] = toUpgrade;
user.Send(Packet.ItemInfoPacket.Create(toUpgrade, 3));
user.SendMessage("SYSTEM", user.Name, "You have added your first socket successfully!", uint.MaxValue, ChatType.MessageBox);
}
else if (toUpgrade.Gem2 == 0)
{
switch(toUpgrade.Gem2)
{
case 0:
{
if (toUpgrade.StaticID < 410003 || toUpgrade.StaticID > 610439 || user.HasItem(1200005, 1))
{
user.RemoveItem(1200005, 1);
}
break;
}
case 1:
{
if (toUpgrade.StaticID < 410003 || toUpgrade.StaticID > 610439 || user.HasItem(1200006, 7))
{
user.RemoveItem(1200006, 7);
}
break;
}
default:
{
if (toUpgrade.StaticID > 410002 || toUpgrade.StaticID < 610440)
{
user.RemoveItem(1088000, 5);
}
break;
}
}
toUpgrade.Gem2 = 255;
Database.ModifyItem(toUpgrade.Gem2, "Soc2", toUpgrade.UniqueID);
user.Inventory[toUpgrade.UniqueID] = toUpgrade;
user.Send(Packet.ItemInfoPacket.Create(toUpgrade, 3));
user.SendMessage("SYSTEM", user.Name, "You have added a second socket successfully!", uint.MaxValue, ChatType.MessageBox);
}
else
{
user.SendMessage("SYSTEM", user.Name, "This item already has dual sockets!", uint.MaxValue, ChatType.MessageBox);
return;
}
user.Send(item);
break;
}
#endregion






