This is for LOTF.
Character.cs Definition..
Ctrl+F and find
Above place
Next Ctrl + F and find
and above place
Next search for
under it place
Dialog for npc
Control for npc
And finally add this into the characters table structure part
Any problems ask, if you ask if this is for coemu you obviously didn't read the thread
Character.cs Definition..
Code:
public byte VIP = 0;
Code:
public void Save()
Code:
public void SaveVIP()
{
if (MyClient.There)
if (MyClient.Online)
DataBase.SaveVIP(this);
}
Code:
public static void SaveChar(Character Charr)
Code:
public static void SaveVIP(Character Charr)
{
try
{
MySqlCommand Command = new MySqlCommand("UPDATE `Characters` SET `VIP` = '" + Charr.VIP + "' WHERE `Account` = '" + Charr.MyClient.Account + "'", Connection);
Command.ExecuteNonQuery();
}
catch (Exception Exc) { General.WriteLine(Convert.ToString(Exc)); }
}
Code:
Charr.RBCount = Convert.ToByte((uint)DR["RBCount"]);
Code:
Charr.VIP= Convert.ToByte((uint)DR["VIP"]);
Code:
if (CurrentNPC == 1200) // Vip Grants
{
SendPacket(General.MyPackets.NPCSay("Would you like to become a VIP Member?"));
SendPacket(General.MyPackets.NPCLink("What does a VIP get?", 1));
SendPacket(General.MyPackets.NPCLink("Yes!", 2));
SendPacket(General.MyPackets.NPCLink("What's my VIP Level?", 4));
SendPacket(General.MyPackets.NPCLink("Hell No!", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
Code:
#region VIP Grant
if (CurrentNPC == 1200) // Vip Grants
{
if (Control == 1) // info about vip
{
SendPacket(General.MyPackets.NPCSay("You get special permissions and special deals and more!"));
SendPacket(General.MyPackets.NPCLink("Awesome!", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
if (Control == 2) // checks vip classes makes them vip
{
if (MyChar.VIP == 0) // checks vip level 0
{
SendPacket(General.MyPackets.NPCSay("Would you like to become a VIP Member ( Level 1 ) It costs 4500 CPs. "));
SendPacket(General.MyPackets.NPCLink("Yes", 3));
SendPacket(General.MyPackets.NPCLink("Nope", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
else if (MyChar.VIP == 1) // checks vip level 1
{
SendPacket(General.MyPackets.NPCSay("Would you like to upgrade to VIP Member ( Level 2 ) It costs 9500 CPs. "));
SendPacket(General.MyPackets.NPCLink("Yes", 3));
SendPacket(General.MyPackets.NPCLink("Nope", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
else if (MyChar.VIP == 2) // checks vip level 2
{
SendPacket(General.MyPackets.NPCSay("Would you like to upgrade to VIP Member ( Level 3 ) It costs 14500 CPs. "));
SendPacket(General.MyPackets.NPCLink("Yes", 3));
SendPacket(General.MyPackets.NPCLink("Nope", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
else if (MyChar.VIP == 3) // checks vip level 3
{
SendPacket(General.MyPackets.NPCSay("You are already a VIP Member ( Level 3 ), You can't go higher."));
SendPacket(General.MyPackets.NPCLink("Nice..", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
}
if (Control == 3) // Changes VIP level
{
if (MyChar.VIP == 0) // checks vip level 0
{
if (MyChar.CPs >= 4500) // checks cps
{
MyChar.CPs -= 4500;
SendPacket(General.MyPackets.Vital((long)MyChar.UID, 30, MyChar.CPs));
MyChar.VIP = 1; // sets vip
MyChar.SaveVIP(); // saves vip
SendPacket(General.MyPackets.NPCSay("Congratulations you are now a VIP Member ( Level 1 )"));
SendPacket(General.MyPackets.NPCLink("Woohoo!", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
else
{
SendPacket(General.MyPackets.NPCSay("You do not have enough CPs!"));
SendPacket(General.MyPackets.NPCLink("Damn", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
}
else if (MyChar.VIP == 1) // checks vip level 1
{
if (MyChar.CPs >= 9500) // checks cps
{
MyChar.CPs -= 9500;
SendPacket(General.MyPackets.Vital((long)MyChar.UID, 30, MyChar.CPs));
MyChar.VIP = 2; // sets vip
MyChar.SaveVIP(); // saves vip
SendPacket(General.MyPackets.NPCSay("Congratulations you are now a VIP Member ( Level 2 )"));
SendPacket(General.MyPackets.NPCLink("Woohoo!", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
else
{
SendPacket(General.MyPackets.NPCSay("You do not have enough CPs!"));
SendPacket(General.MyPackets.NPCLink("Damn", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
}
else if (MyChar.VIP == 2) // checks vip level 2
{
if (MyChar.CPs >= 14500) // checks cps
{
MyChar.CPs -= 14500;
SendPacket(General.MyPackets.Vital((long)MyChar.UID, 30, MyChar.CPs));
MyChar.VIP = 3; // sets vip
MyChar.SaveVIP(); // saves vip
SendPacket(General.MyPackets.NPCSay("Congratulations you are now a VIP Member ( Level 3 )"));
SendPacket(General.MyPackets.NPCLink("Woohoo!", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
else
{
SendPacket(General.MyPackets.NPCSay("You do not have enough CPs!"));
SendPacket(General.MyPackets.NPCLink("Damn", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
}
}
if (Control == 4) // tells current vip level
{
SendPacket(General.MyPackets.NPCSay("Your VIP Level is " + MyChar.VIP + " ."));
SendPacket(General.MyPackets.NPCLink("Hmm, Upgrade Time!", 2));
SendPacket(General.MyPackets.NPCLink("Cool!", 255));
SendPacket(General.MyPackets.NPCSetFace(30));
SendPacket(General.MyPackets.NPCFinish());
}
}
#endregion
And finally add this into the characters table structure part
Code:
Field - VIP Type - INT Attributes - Unsigned NULL - not null Default - 0
Any problems ask, if you ask if this is for coemu you obviously didn't read the thread