|
|
المشاركات 137 |
+التقييم 0.06 |
تاريخ التسجيل Jun 2020 |
الاقامة |
نظام التشغيل |
رقم العضوية 4137 |
أفضل جواب - كتبه ElSaher
|
| هتروح علي الnpc وتشوف الاختيار بتاع رسترت points وتعدل علي الرقم الي هوا بيدهولك |
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);
}
}
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);
}
}