Code:
if (CurrentNPC == 1554)
{
SendPacket(General.MyPackets.NPCSay("I can compose, bless and enchant your items, which do you want?"));
SendPacket(General.MyPackets.NPCLink("Compose +1 - +9", 1));
SendPacket(General.MyPackets.NPCLink("Enchant", 2));
SendPacket(General.MyPackets.NPCLink("Bless", 10));
SendPacket(General.MyPackets.NPCLink("Compose +10 - +12", 39));
SendPacket(General.MyPackets.NPCLink("No Thanks", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
Code:
if (CurrentNPC == 1554) //enchant bless and compose +1 to +12
{
if (Control == 1)
{
SendPacket(General.MyPackets.ETCPacket(MyChar, 1));
}
if (Control == 2)
{
SendPacket(General.MyPackets.NPCSay("Costs 100 Cps. After Enchanting Please Take Off The Item And Put It Back On. Which item do you want to Enchant?"));
SendPacket(General.MyPackets.NPCLink("Enchant helmet or earring.", 3));
SendPacket(General.MyPackets.NPCLink("Enchant necklace.", 4));
SendPacket(General.MyPackets.NPCLink("Enchant armor.", 5));
SendPacket(General.MyPackets.NPCLink("Enchant weapon.", 6));
SendPacket(General.MyPackets.NPCLink("Enchant ring, heavy ring.", 7));
SendPacket(General.MyPackets.NPCLink("Enchant boots.", 8));
SendPacket(General.MyPackets.NPCLink("Enchant shield.", 9));
SendPacket(General.MyPackets.NPCLink("Goodbye.", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
if (Control >= 3 && Control <= 9)
{
if (MyChar.CPs >= 100)
{
string TheEquip = "";
if (Control == 3)
TheEquip = MyChar.Equips[1];
if (Control == 4)
TheEquip = MyChar.Equips[2];
if (Control == 5)
TheEquip = MyChar.Equips[3];
if (Control == 6)
TheEquip = MyChar.Equips[4];
if (Control == 7)
TheEquip = MyChar.Equips[6];
if (Control == 8)
TheEquip = MyChar.Equips[8];
if (Control == 9)
TheEquip = MyChar.Equips[5];
byte Pos = 0;
if (Control == 3)
Pos = 1;
if (Control == 4)
Pos = 2;
if (Control == 5)
Pos = 3;
if (Control == 6)
Pos = 4;
if (Control == 7)
Pos = 6;
if (Control == 8)
Pos = 8;
if (Control == 9)
Pos = 5;
MyChar.CPs -= 100;
string[] Splitter = TheEquip.Split('-');
uint ItemId = uint.Parse(Splitter[0]);
uint OldEnchant = uint.Parse(Splitter[3]);
uint NewEnchant = (uint)General.Rand.Next(1, 255);//fix
if (OldEnchant <= NewEnchant)
{
MyChar.GetEquipStats(Pos, true);
MyChar.Equips[Pos] = ItemId.ToString() + "-" + Splitter[1] + "-" + Splitter[2] + "-" + NewEnchant + "-" + Splitter[4] + "-" + Splitter[5];
MyChar.GetEquipStats(Pos, false);
MyChar.SendEquips(false);
SendPacket(General.MyPackets.Vital(MyChar.UID, 30, MyChar.CPs));
SendPacket(General.MyPackets.AddItem((long)MyChar.Equips_UIDs[Pos], (int)ItemId, byte.Parse(Splitter[1]), byte.Parse(Splitter[2]), byte.Parse(Splitter[3]), byte.Parse(Splitter[4]), byte.Parse(Splitter[5]), Pos, 100, 100));
}
else
{
SendPacket(General.MyPackets.NPCSay("I'm Sorry The New enchantment was smaller than your old one."));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCLink("Ok...", 255));
SendPacket(General.MyPackets.NPCFinish());
}
}
}
if (Control == 10)
{
SendPacket(General.MyPackets.NPCSay("Costs 100 Cps. After Blessing Please Take Off The Item And Put It Back On. Which item do you want to Bless?"));
SendPacket(General.MyPackets.NPCLink("Bless helmet or earring.", 13));
SendPacket(General.MyPackets.NPCLink("Bless necklace.", 14));
SendPacket(General.MyPackets.NPCLink("Bless armor.", 15));
SendPacket(General.MyPackets.NPCLink("Bless weapon.", 16));
SendPacket(General.MyPackets.NPCLink("Bless ring, heavy ring.", 17));
SendPacket(General.MyPackets.NPCLink("Bless boots.", 18));
SendPacket(General.MyPackets.NPCLink("Bless shield.", 19));
SendPacket(General.MyPackets.NPCLink("Goodbye.", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
if (Control >= 13 && Control <= 19)
{
if (MyChar.CPs >= 100)
{
string TheEquip = "";
if (Control == 13)
TheEquip = MyChar.Equips[1];
if (Control == 14)
TheEquip = MyChar.Equips[2];
if (Control == 15)
TheEquip = MyChar.Equips[3];
if (Control == 16)
TheEquip = MyChar.Equips[4];
if (Control == 17)
TheEquip = MyChar.Equips[6];
if (Control == 18)
TheEquip = MyChar.Equips[8];
if (Control == 19)
TheEquip = MyChar.Equips[5];
byte Pos = 0;
if (Control == 13)
Pos = 1;
if (Control == 14)
Pos = 2;
if (Control == 15)
Pos = 3;
if (Control == 16)
Pos = 4;
if (Control == 17)
Pos = 6;
if (Control == 18)
Pos = 8;
if (Control == 19)
Pos = 5;
MyChar.CPs -= 100;
string[] Splitter = TheEquip.Split('-');
uint ItemId = uint.Parse(Splitter[0]);
uint NewBless = (uint)General.Rand.Next(1, 7);
uint OldBless = uint.Parse(Splitter[2]);
if (NewBless > OldBless)
{
MyChar.GetEquipStats(Pos, true);
MyChar.Equips[Pos] = ItemId.ToString() + "-" + Splitter[1] + "-" + NewBless + "-" + Splitter[3] + "-" + Splitter[4] + "-" + Splitter[5];
MyChar.GetEquipStats(Pos, false);
MyChar.SendEquips(false);
SendPacket(General.MyPackets.Vital(MyChar.UID, 30, MyChar.CPs));
SendPacket(General.MyPackets.AddItem((long)MyChar.Equips_UIDs[Pos], (int)ItemId, byte.Parse(Splitter[1]), byte.Parse(Splitter[2]), byte.Parse(Splitter[3]), byte.Parse(Splitter[4]), byte.Parse(Splitter[5]), Pos, 100, 100));
}
else
{
SendPacket(General.MyPackets.NPCSay("I'm Sorry The New Bless was smaller than your old one."));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCLink("Ok...", 255));
SendPacket(General.MyPackets.NPCFinish());
}
}
}
if (Control == 39)
{
SendPacket(General.MyPackets.NPCSay("What you want here?"));
SendPacket(General.MyPackets.NPCLink("I want to make +10", 53));
SendPacket(General.MyPackets.NPCLink("I want to make+11", 54));
SendPacket(General.MyPackets.NPCLink("I want to make+12", 55));
SendPacket(General.MyPackets.NPCLink("Nothing Thanks.", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
if (Control == 53)
{
SendPacket(General.MyPackets.NPCSay("Costs 100000 Cps. After Plusing Please Take Off The Item And Put It Back On. Which item do you want to +10?"));
SendPacket(General.MyPackets.NPCLink("+10 my helmet or earring.", 23));
SendPacket(General.MyPackets.NPCLink("+10 my necklace.", 24));
SendPacket(General.MyPackets.NPCLink("+10 my armor.", 25));
SendPacket(General.MyPackets.NPCLink("+10 my weapon.", 26));
SendPacket(General.MyPackets.NPCLink("+10 my ring, heavy ring.", 27));
SendPacket(General.MyPackets.NPCLink("+10 my boots.", 28));
SendPacket(General.MyPackets.NPCLink("+10 my shield.", 29));
SendPacket(General.MyPackets.NPCLink("Goodbye.", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
if (Control >= 23 && Control <= 29)
{
if (MyChar.CPs >= 100000)
{
string TheEquip = "";
if (Control == 23)
TheEquip = MyChar.Equips[1];
if (Control == 24)
TheEquip = MyChar.Equips[2];
if (Control == 25)
TheEquip = MyChar.Equips[3];
if (Control == 26)
TheEquip = MyChar.Equips[4];
if (Control == 27)
TheEquip = MyChar.Equips[6];
if (Control == 28)
TheEquip = MyChar.Equips[8];
if (Control == 29)
TheEquip = MyChar.Equips[5];
byte Pos = 0;
if (Control == 23)
Pos = 1;
if (Control == 24)
Pos = 2;
if (Control == 25)
Pos = 3;
if (Control == 26)
Pos = 4;
if (Control == 27)
Pos = 6;
if (Control == 28)
Pos = 8;
if (Control == 29)
Pos = 5;
string[] Splitter = TheEquip.Split('-');
uint ItemId = uint.Parse(Splitter[0]);
uint NewPlus = 10;
uint OldPlus = uint.Parse(Splitter[1]);
uint ReqPlus = 9;
if (OldPlus == ReqPlus)
{
MyChar.CPs -= 100000;
MyChar.GetEquipStats(Pos, true);
MyChar.Equips[Pos] = ItemId.ToString() + "-" + NewPlus + "-" + Splitter[2] + "-" + Splitter[3] + "-" + Splitter[4] + "-" + Splitter[5];
MyChar.GetEquipStats(Pos, false);
MyChar.SendEquips(false);
SendPacket(General.MyPackets.Vital(MyChar.UID, 30, MyChar.CPs));
SendPacket(General.MyPackets.AddItem((long)MyChar.Equips_UIDs[Pos], (int)ItemId, byte.Parse(Splitter[1]), byte.Parse(Splitter[2]), byte.Parse(Splitter[3]), byte.Parse(Splitter[4]), byte.Parse(Splitter[5]), Pos, 100, 100));
}
else
{
SendPacket(General.MyPackets.NPCSay("I'm Sorry Your Item Is Not +9"));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCLink("Ok...", 255));
SendPacket(General.MyPackets.NPCFinish());
}
}
}
if (Control == 54)
{
SendPacket(General.MyPackets.NPCSay("Costs 200000 Cps. After Plusing Please Take Off The Item And Put It Back On. Which item do you want to +11?"));
SendPacket(General.MyPackets.NPCLink("+11 my helmet or earring.", 63));
SendPacket(General.MyPackets.NPCLink("+11 my necklace.", 64));
SendPacket(General.MyPackets.NPCLink("+11 my armor.", 65));
SendPacket(General.MyPackets.NPCLink("+11 my weapon.", 66));
SendPacket(General.MyPackets.NPCLink("+11 my ring, heavy ring.", 67));
SendPacket(General.MyPackets.NPCLink("+11 my boots.", 68));
SendPacket(General.MyPackets.NPCLink("+11 my shield.", 69));
SendPacket(General.MyPackets.NPCLink("Goodbye.", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
if (Control >= 63 && Control <= 69)
{
if (MyChar.CPs >= 200000)
{
string TheEquip = "";
if (Control == 63)
TheEquip = MyChar.Equips[1];
if (Control == 64)
TheEquip = MyChar.Equips[2];
if (Control == 65)
TheEquip = MyChar.Equips[3];
if (Control == 66)
TheEquip = MyChar.Equips[4];
if (Control == 67)
TheEquip = MyChar.Equips[6];
if (Control == 68)
TheEquip = MyChar.Equips[8];
if (Control == 69)
TheEquip = MyChar.Equips[5];
byte Pos = 0;
if (Control == 63)
Pos = 1;
if (Control == 64)
Pos = 2;
if (Control == 65)
Pos = 3;
if (Control == 66)
Pos = 4;
if (Control == 67)
Pos = 6;
if (Control == 68)
Pos = 8;
if (Control == 69)
Pos = 5;
string[] Splitter = TheEquip.Split('-');
uint ItemId = uint.Parse(Splitter[0]);
uint NewPlus = 11;
uint OldPlus = uint.Parse(Splitter[1]);
uint ReqPlus = 10;
if (OldPlus == ReqPlus)
{
MyChar.CPs -= 200000;
MyChar.GetEquipStats(Pos, true);
MyChar.Equips[Pos] = ItemId.ToString() + "-" + NewPlus + "-" + Splitter[2] + "-" + Splitter[3] + "-" + Splitter[4] + "-" + Splitter[5];
MyChar.GetEquipStats(Pos, false);
MyChar.SendEquips(false);
SendPacket(General.MyPackets.Vital(MyChar.UID, 30, MyChar.CPs));
SendPacket(General.MyPackets.AddItem((long)MyChar.Equips_UIDs[Pos], (int)ItemId, byte.Parse(Splitter[1]), byte.Parse(Splitter[2]), byte.Parse(Splitter[3]), byte.Parse(Splitter[4]), byte.Parse(Splitter[5]), Pos, 100, 100));
}
else
{
SendPacket(General.MyPackets.NPCSay("I'm Sorry Your Item Is Not +10"));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCLink("Ok...", 255));
SendPacket(General.MyPackets.NPCFinish());
}
}
}
if (Control == 55)
{
SendPacket(General.MyPackets.NPCSay("Costs 300000 Cps. After Plusing Please Take Off The Item And Put It Back On. Which item do you want to +10?"));
SendPacket(General.MyPackets.NPCLink("+12 my helmet or earring.", 73));
SendPacket(General.MyPackets.NPCLink("+12 my necklace.", 74));
SendPacket(General.MyPackets.NPCLink("+12 my armor.", 75));
SendPacket(General.MyPackets.NPCLink("+12 my weapon.", 76));
SendPacket(General.MyPackets.NPCLink("+12 my ring, heavy ring.", 77));
SendPacket(General.MyPackets.NPCLink("+12 my boots.", 78));
SendPacket(General.MyPackets.NPCLink("+12 my shield.", 79));
SendPacket(General.MyPackets.NPCLink("Goodbye.", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
if (Control >= 73 && Control <= 79)
{
if (MyChar.CPs >= 300000)
{
string TheEquip = "";
if (Control == 73)
TheEquip = MyChar.Equips[1];
if (Control == 74)
TheEquip = MyChar.Equips[2];
if (Control == 75)
TheEquip = MyChar.Equips[3];
if (Control == 76)
TheEquip = MyChar.Equips[4];
if (Control == 77)
TheEquip = MyChar.Equips[6];
if (Control == 78)
TheEquip = MyChar.Equips[8];
if (Control == 79)
TheEquip = MyChar.Equips[5];
byte Pos = 0;
if (Control == 73)
Pos = 1;
if (Control == 74)
Pos = 2;
if (Control == 75)
Pos = 3;
if (Control == 76)
Pos = 4;
if (Control == 77)
Pos = 6;
if (Control == 78)
Pos = 8;
if (Control == 79)
Pos = 5;
string[] Splitter = TheEquip.Split('-');
uint ItemId = uint.Parse(Splitter[0]);
uint NewPlus = 12;
uint OldPlus = uint.Parse(Splitter[1]);
uint ReqPlus = 11;
if (OldPlus == ReqPlus)
{
MyChar.CPs -= 300000;
MyChar.GetEquipStats(Pos, true);
MyChar.Equips[Pos] = ItemId.ToString() + "-" + NewPlus + "-" + Splitter[2] + "-" + Splitter[3] + "-" + Splitter[4] + "-" + Splitter[5];
MyChar.GetEquipStats(Pos, false);
MyChar.SendEquips(false);
SendPacket(General.MyPackets.Vital(MyChar.UID, 30, MyChar.CPs));
SendPacket(General.MyPackets.AddItem((long)MyChar.Equips_UIDs[Pos], (int)ItemId, byte.Parse(Splitter[1]), byte.Parse(Splitter[2]), byte.Parse(Splitter[3]), byte.Parse(Splitter[4]), byte.Parse(Splitter[5]), Pos, 100, 100));
}
else
{
SendPacket(General.MyPackets.NPCSay("I'm Sorry Your Item Is Not +11"));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCLink("Ok...", 255));
SendPacket(General.MyPackets.NPCFinish());
}
}
}
}






