public static void socketitem(embedsocket
public static void socketitem(embedsocket socket, client.gamestate client) { conqueritem item = null; conqueritem gem = null; if (client.inventory.trygetitem(socket.itemuid, out item) || client.equipment.trygetitem(socket.itemuid) != null) { if (client.equipment.trygetitem(socket.itemuid) != null) item = client.equipment.trygetitem(socket.itemuid); ushort sock = itemposition(item.id); if (sock == 7 || sock == 9 || sock == 12 || sock == 15 || sock == 16 || sock == 17 || sock == 18 || sock > 19) { client.send(new message("sorry can't make socket in this item !", system.drawing.color.red, message.talk)); return; } if (client.inventory.trygetitem(socket.gemuid, out gem) || socket.mode == embedsocket.remove) { switch (socket.mode) { case embedsocket.add: { byte gembase = (byte)(gem.id % 1000); if (enum.isdefined(typeof(game.enums.gem), gembase)) { switch (socket.slot) { case embedsocket.slotone: { if ((byte)item.socketone == 255) { var gem = (game.enums.gem)(gem.id % 1000); if ((item.id >= 201003 && item.id <= 201009) && gem != enums.gem.normalthundergem && gem != enums.gem.refinedthundergem && gem != enums.gem.superthundergem) return; if ((item.id >= 202003 && item.id <= 202009) && gem != enums.gem.normalglorygem && gem != enums.gem.refinedglorygem && gem != enums.gem.superglorygem) return; if ((item.id >= 204003 && item.id <= 204009) && gem != enums.gem.normalthundergem && gem != enums.gem.refinedthundergem && gem != enums.gem.superthundergem) return; item.socketone = gem; item.mode = game.enums.itemmode.update; item.send(client); database.conqueritemtable.updatesockets(item); client.inventory.remove(gem, game.enums.itemuse.remove); break; } break; } case embedsocket.slottwo: { var gem = (game.enums.gem)(gem.id % 1000); if ((item.id >= 201003 && item.id <= 201009) && gem != enums.gem.normalthundergem && gem != enums.gem.refinedthundergem && gem != enums.gem.superthundergem) return; if ((item.id >= 202003 && item.id <= 202009) && gem != enums.gem.normalglorygem && gem != enums.gem.refinedglorygem && gem != enums.gem.superglorygem) return; if ((item.id >= 204003 && item.id <= 204009) && gem != enums.gem.normalglorygem && gem != enums.gem.refinedglorygem && gem != enums.gem.superglorygem) return; item.sockettwo = gem; item.mode = game.enums.itemmode.update; item.send(client); database.conqueritemtable.updatesockets(item); client.inventory.remove(gem, game.enums.itemuse.remove); break; } } } break; } case embedsocket.remove: { switch (socket.slot) { case embedsocket.slotone: { if ((byte)item.socketone != 0) { item.socketone = game.enums.gem.emptysocket; if ((byte)item.sockettwo != 0 && (byte)item.sockettwo != 255) { item.sockettwo = item.sockettwo; item.socketone = game.enums.gem.emptysocket; } item.mode = game.enums.itemmode.update; item.send(client); database.conqueritemtable.updatesockets(item); break; } break; } case embedsocket.slottwo: { if ((byte)item.sockettwo != 0 && (byte)item.sockettwo != 255) { item.socketone = game.enums.gem.emptysocket; item.sockettwo = item.sockettwo; item.sockettwo = game.enums.gem.emptysocket; item.mode = game.enums.itemmode.update; item.send(client); database.conqueritemtable.updatesockets(item); } else { if ((byte)item.socketone != 0) { item.socketone = game.enums.gem.emptysocket; item.mode = game.enums.itemmode.update; item.send(client); database.conqueritemtable.updatesockets(item); } } break; } } break; } } } client.send(socket); system.threading.thread.sleep(500); } }