Code:
#region socker case 794769468: { if (Control == 0) { GC.AddSend(Packets.NPCSay("Would you like me to make a socket in an item for you?")); GC.AddSend(Packets.NPCSay(" You must prepare 10 Star Drills and the Gem you want to Socket.")); GC.AddSend(Packets.NPCSay(" Please make sure you only have ONE gem in your inventory.")); GC.AddSend(Packets.NPCLink("Socket Garment.", 10)); GC.AddSend(Packets.NPCLink("Socket Gourd.", 20)); GC.AddSend(Packets.NPCLink("Change Socket.", 1)); GC.AddSend(Packets.NPCSetFace(30)); GC.AddSend(Packets.NPCFinish()); } { if (Control == 1) { SendPacket(General.MyPackets.NPCSay("I will only charge 1 StarDrill to change the socketed Gem.")); SendPacket(General.MyPackets.NPCSay(" Change which socket?")); SendPacket(General.MyPackets.NPCLink("Garment.", 2)); SendPacket(General.MyPackets.NPCLink("Gourd.", 3)); SendPacket(General.MyPackets.NPCSetFace(30)); SendPacket(General.MyPackets.NPCFinish()); } if (Control == 2 || Control == 3) { string name = "Item"; if (Control == 2) name = "Garment"; if (Control == 3) name = "Gourd"; byte into = 0; if (Control == 10 && MyChar.Equips[9] != null && MyChar.Equips[9] != "0") into = 9; else if (Control == 20 && MyChar.Equips[7] != null && MyChar.Equips[7] != "0") into = 7; else { SendPacket(General.MyPackets.NPCSay("You don't have a " + name + " to socket!")); SendPacket(General.MyPackets.NPCLink("I see.", 255)); SendPacket(General.MyPackets.NPCSetFace(30)); SendPacket(General.MyPackets.NPCFinish()); return; } if (MyChar.InventoryContains(1200006, 1)) { string[] item = MyChar.Equips[into].Split('-'); if (item[4] != "0") return; if (GC.MyChar.InventoryContains(700001, 1)) item[4] = "01"; else if (GC.MyChar.InventoryContains(700002, 1)) item[4] = "02"; else if (GC.MyChar.InventoryContains(700003, 1)) item[4] = "03"; else if (GC.MyChar.InventoryContains(700011, 1)) item[4] = "11"; else if (GC.MyChar.InventoryContains(700012, 1)) item[4] = "12"; else if (GC.MyChar.InventoryContains(700013, 1)) item[4] = "13"; else if (GC.MyChar.InventoryContains(700021, 1)) item[4] = "21"; else if (GC.MyChar.InventoryContains(700022, 1)) item[4] = "22"; else if (GC.MyChar.InventoryContains(700023, 1)) item[4] = "23"; else if (GC.MyChar.InventoryContains(700031, 1)) item[4] = "31"; else if (GC.GC.MyChar.InventoryContains(700032, 1)) item[4] = "32"; else if (GC.GC.MyChar.InventoryContains(700033, 1)) item[4] = "33"; else if (GC.MyChar.InventoryContains(700041, 1)) item[4] = "41"; else if (GC.MyChar.InventoryContains(700042, 1)) item[4] = "42"; else if (GC.MyChar.InventoryContains(700043, 1)) item[4] = "43"; else if (GC.MyChar.InventoryContains(700051, 1)) item[4] = "51"; else if (GC.MyChar.InventoryContains(700052, 1)) item[4] = "52"; else if (GC.MyChar.InventoryContains(700053, 1)) item[4] = "53"; else if (GC.MyChar.InventoryContains(700061, 1)) item[4] = "61"; else if (GC.MyChar.InventoryContains(700062, 1)) item[4] = "62"; else if (GC.MyChar.InventoryContains(700063, 1)) item[4] = "63"; else if (GC.MyChar.InventoryContains(700071, 1)) item[4] = "71"; else if (GC.MyChar.InventoryContains(700072, 1)) item[4] = "72"; else if (GC.MyChar.InventoryContains(700073, 1)) item[4] = "73"; else { SendPacket(General.MyPackets.NPCSay("You don't have a Gem to Socket.")); SendPacket(General.MyPackets.NPCLink("I see.", 255)); SendPacket(General.MyPackets.NPCSetFace(30)); SendPacket(General.MyPackets.NPCFinish()); return; } MyChar.RemoveItem(MyChar.ItemNext(uint.Parse("7000" + item[4]))); MyChar.RemoveItem(MyChar.ItemNext(1200006)); MyChar.Equips[into] = item[0] + "-" + item[1] + "-" + item[2] + "-" + item[3] + "-" + item[4] + "-" + item[5]; SendPacket(General.MyPackets.AddItem((long)MyChar.Equips_UIDs[into], int.Parse(item[0]), byte.Parse(item[1]), byte.Parse(item[2]), byte.Parse(item[3]), byte.Parse(item[4]), byte.Parse(item[5]), (byte)into, 100, 100)); SendPacket(General.MyPackets.NPCSay("Your " + name + " has been socketed sucessfully!")); SendPacket(General.MyPackets.NPCLink("Thanks!", 255)); SendPacket(General.MyPackets.NPCSetFace(30)); SendPacket(General.MyPackets.NPCFinish()); } else { SendPacket(General.MyPackets.NPCSay("You don't have enough StarDrills.")); SendPacket(General.MyPackets.NPCLink("I see.", 255)); SendPacket(General.MyPackets.NPCSetFace(30)); SendPacket(General.MyPackets.NPCFinish()); } } if (Control == 10 || Control == 20) { string name = "Item"; if (Control == 10) name = "Garment"; if (Control == 20) name = "Gourd"; byte into = 0; if (Control == 10 && MyChar.Equips[9] != null && MyChar.Equips[9] != "0") into = 9; else if (Control == 20 && MyChar.Equips[7] != null && MyChar.Equips[7] != "0") into = 7; else { SendPacket(General.MyPackets.NPCSay("You don't have a " + name + " to socket!")); SendPacket(General.MyPackets.NPCLink("I see.", 255)); SendPacket(General.MyPackets.NPCSetFace(30)); SendPacket(General.MyPackets.NPCFinish()); return; } if (MyChar.InventoryContains(1200006, 10)) { string[] item = MyChar.Equips[into].Split('-'); if (item[4] != "0") return; if (MyChar.InventoryContains(700001, 1)) item[4] = "01"; else if (MyChar.InventoryContains(700002, 1)) item[4] = "02"; else if (MyChar.InventoryContains(700003, 1)) item[4] = "03"; else if (MyChar.InventoryContains(700011, 1)) item[4] = "11"; else if (MyChar.InventoryContains(700012, 1)) item[4] = "12"; else if (MyChar.InventoryContains(700013, 1)) item[4] = "13"; else if (MyChar.InventoryContains(700021, 1)) item[4] = "21"; else if (MyChar.InventoryContains(700022, 1)) item[4] = "22"; else if (MyChar.InventoryContains(700023, 1)) item[4] = "23"; else if (MyChar.InventoryContains(700031, 1)) item[4] = "31"; else if (MyChar.InventoryContains(700032, 1)) item[4] = "32"; else if (MyChar.InventoryContains(700033, 1)) item[4] = "33"; else if (MyChar.InventoryContains(700041, 1)) item[4] = "41"; else if (MyChar.InventoryContains(700042, 1)) item[4] = "42"; else if (MyChar.InventoryContains(700043, 1)) item[4] = "43"; else if (MyChar.InventoryContains(700051, 1)) item[4] = "51"; else if (MyChar.InventoryContains(700052, 1)) item[4] = "52"; else if (MyChar.InventoryContains(700053, 1)) item[4] = "53"; else if (MyChar.InventoryContains(700061, 1)) item[4] = "61"; else if (MyChar.InventoryContains(700062, 1)) item[4] = "62"; else if (MyChar.InventoryContains(700063, 1)) item[4] = "63"; else if (MyChar.InventoryContains(700071, 1)) item[4] = "71"; else if (MyChar.InventoryContains(700072, 1)) item[4] = "72"; else if (MyChar.InventoryContains(700073, 1)) item[4] = "73"; else { SendPacket(General.MyPackets.NPCSay("You don't have a Gem to Socket.")); SendPacket(General.MyPackets.NPCLink("I see.", 255)); SendPacket(General.MyPackets.NPCSetFace(30)); SendPacket(General.MyPackets.NPCFinish()); return; } MyChar.RemoveItem(MyChar.ItemNext(uint.Parse("7000" + item[4]))); MyChar.RemoveItem(MyChar.ItemNext(1200006)); MyChar.RemoveItem(MyChar.ItemNext(1200006)); MyChar.RemoveItem(MyChar.ItemNext(1200006)); MyChar.RemoveItem(MyChar.ItemNext(1200006)); MyChar.RemoveItem(MyChar.ItemNext(1200006)); MyChar.RemoveItem(MyChar.ItemNext(1200006)); MyChar.RemoveItem(MyChar.ItemNext(1200006)); MyChar.RemoveItem(MyChar.ItemNext(1200006)); MyChar.RemoveItem(MyChar.ItemNext(1200006)); MyChar.RemoveItem(MyChar.ItemNext(1200006)); MyChar.Equips[into] = item[0] + "-" + item[1] + "-" + item[2] + "-" + item[3] + "-" + item[4] + "-" + item[5]; SendPacket(General.MyPackets.AddItem((long)MyChar.Equips_UIDs[into], int.Parse(item[0]), byte.Parse(item[1]), byte.Parse(item[2]), byte.Parse(item[3]), byte.Parse(item[4]), byte.Parse(item[5]), (byte)into, 100, 100)); SendPacket(General.MyPackets.NPCSay("Your " + name + " has been socketed sucessfully!")); SendPacket(General.MyPackets.NPCLink("Thanks!", 255)); SendPacket(General.MyPackets.NPCSetFace(30)); SendPacket(General.MyPackets.NPCFinish()); } else { SendPacket(General.MyPackets.NPCSay("You don't have enough StarDrills.")); SendPacket(General.MyPackets.NPCLink("I see.", 255)); SendPacket(General.MyPackets.NPCSetFace(30)); SendPacket(General.MyPackets.NPCFinish()); } } } break; } #endregion