This is everything you need to setup Reborn in your LOTF based server source.
This code doesn't have the MyClient.Drop(); since it is pointless and lame, and has extra Stats for all Jobs including Water Tao.
Why Release it?
- Already been released, this one is just better.
What will I need?
- Brain w/ common sense
- LOTF source [Link: [Only registered and activated users can see links. Click Here To Register...]]
Rebirth Script
Source:
Define our Variables, etc
In Character.cs:
The Script:
I won't go more indepth, its pretty straight forward.
*Note*
The Freezing Arrow Skill ID is currently 9999, this is not the ID, I just don't know the ID =P
Press Thanks if this helped!
This code doesn't have the MyClient.Drop(); since it is pointless and lame, and has extra Stats for all Jobs including Water Tao.
Why Release it?
- Already been released, this one is just better.
What will I need?
- Brain w/ common sense
- LOTF source [Link: [Only registered and activated users can see links. Click Here To Register...]]
Rebirth Script
Source:
Define our Variables, etc
In Character.cs:
Code:
public byte RBCount = 0;
public uint StatP = 0;
public byte FirstJob = 0;
Code:
public void ReBorn(byte ToJob)
{
try
{
RBCount++;
if ((Level == 110) || (Level == 111) && (Job == 135))
{
StatP += 0;
}
else if ((Level == 112) || (Level == 113) && (Job == 135))
{
StatP += 1;
}
else if ((Level == 114) || (Level == 115) && (Job == 135))
{
StatP += 3;
}
else if ((Level == 116) || (Level == 117) && (Job == 135))
{
StatP += 6;
}
else if ((Level == 118) || (Level == 119) && (Job == 135))
{
StatP += 10;
}
else if (Level == 120)
{
if (Job == 135)
{
StatP += 15;
}
else
{
StatP += 0;
}
}
else if (Level == 121)
{
if (Job == 135)
{
StatP += 15;
}
else
{
StatP += 1;
}
}
else if (Level == 122)
{
if (Job == 135)
{
StatP += 21;
}
else
{
StatP += 3;
}
}
else if (Level == 123)
{
if (Job == 135)
{
StatP += 21;
}
else
{
StatP += 6;
}
}
else if (Level == 124)
{
if (Job == 135)
{
StatP += 28;
}
else
{
StatP += 10;
}
}
else if (Level == 125)
{
if (Job == 135)
{
StatP += 28;
}
else
{
StatP += 15;
}
}
else if (Level == 126)
{
if (Job == 135)
{
StatP += 36;
}
else
{
StatP += 21;
}
}
else if (Level == 127)
{
if (Job == 135)
{
StatP += 36;
}
else
{
StatP += 28;
}
}
else if (Level == 128)
{
if (Job == 135)
{
StatP += 45;
}
else
{
StatP += 36;
}
}
else if (Level == 129)
{
if (Job == 135)
{
StatP += 45;
}
else
{
StatP += 45;
}
}
else if (Level == 130 || Level == 131 || Level == 132 || Level == 133 || Level == 134 || Level == 135)
{
if (Job == 135)
{
StatP += 55;
}
else
{
StatP += 55;
}
}
MyClient.SendPacket(General.MyPackets.Vital(UID, 11, StatP));
Level = 15;
Exp = 0;
Skills.Clear();
Skill_Exps.Clear();
if (Job == 25)//Warrior
{
FirstJob = 25;
if (ToJob == 41)//Archer
{
LearnSkill(1020, 0);//Shield
LearnSkill(1040, 0);//Roar
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 11)//Trojan
{
LearnSkill(1015, 0);//Accuracy
LearnSkill(1040, 0);//Roar
LearnSkill(1320, 0);//FlyingMoon
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 21)//Warrior
{
LearnSkill(3060, 1);//Reflect
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 142)//FireTaoist
{
LearnSkill(1020, 0);//Shield
LearnSkill(1040, 0);//Roar
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 132)//WaterTaoist
{
LearnSkill(1025, 0);//Superman
LearnSkill(1020, 0);//Shield
LearnSkill(1040, 0);//Roar
LearnSkill(4000, 1);//SummonGuard
}
}
if (Job == 15)//Trojan
{
FirstJob = 15;
if (ToJob == 41)//Archer
{
LearnSkill(1110, 0);//Cyclone
LearnSkill(1190, 1);//SpiritualHealing
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 11)//Trojan
{
LearnSkill(3050, 1);//CruelShade
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 21)//Warrior
{
LearnSkill(1110, 0);//Cyclone
LearnSkill(1190, 1);//SpiritualHealing
LearnSkill(9999, 9);//IronShirt
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 142)//FireTaoist
{
LearnSkill(1110, 0);//Cyclone
LearnSkill(1190, 1);//SpiritualHealing
LearnSkill(1270, 1);//Robot
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 132)//WaterTaoist
{
LearnSkill(1110, 0);//Cyclone
LearnSkill(1190, 1);//SpiritualHealing
LearnSkill(1270, 1);//Robot
LearnSkill(4000, 1);//SummonGuard
}
}
if (Job == 45)//Archer
{
FirstJob = 45;
if (ToJob == 41)//Archer
{
LearnSkill(9999, 9);//FreezingArrow
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 11)//Trojan
{
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 21)//Warrior
{
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 142)//FireTaoist
{
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 132)//WaterTaoist
{
LearnSkill(4000, 1);//SummonGuard
}
}
if (Job == 145)//FireTaoist
{
FirstJob = 145;
if (ToJob == 41)//Archer
{
LearnSkill(1000, 1);//Thunder
LearnSkill(1001, 1);//Fire
LearnSkill(1005, 1);//Cure
LearnSkill(1195, 1);//Meditation
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 11)//Trojan
{
LearnSkill(1000, 1);//Thunder
LearnSkill(1001, 1);//Fire
LearnSkill(1005, 1);//Cure
LearnSkill(1195, 1);//Meditation
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 21)//Warrior
{
LearnSkill(1000, 1);//Thunder
LearnSkill(1001, 1);//Fire
LearnSkill(1005, 1);//Cure
LearnSkill(1195, 1);//Meditation
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 142)//FireTaoist
{
LearnSkill(3080, 1);//Dodge
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 132)//WaterTaoist
{
LearnSkill(1120, 1);//FireCircle
LearnSkill(4000, 1);//SummonGuard
}
}
if (Job == 135)//WaterTaoist
{
FirstJob = 135;
if (ToJob == 41)//Archer
{
LearnSkill(1005, 1);//Cure
LearnSkill(1095, 1);//Stigma
LearnSkill(1075, 1);//Invisibility
LearnSkill(1090, 1);//Magic Sheild
LearnSkill(1195, 1);//Meditation
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 11)//Trojan
{
LearnSkill(1005, 1);//Cure
LearnSkill(1095, 1);//Stigma
LearnSkill(1085, 1);//Star of Accuracy
LearnSkill(1090, 1);//Magic Sheild
LearnSkill(1195, 1);//Meditation
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 21)//Warrior
{
LearnSkill(1005, 1);//Cure
LearnSkill(1095, 1);//Stigma
LearnSkill(1085, 1);//Star of Accuracy
LearnSkill(1090, 1);//Magic Sheild
LearnSkill(1195, 1);//Meditation
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 142)//FireTaoist
{
LearnSkill(1175, 1);//Adv. Cure
LearnSkill(1075, 1);//Invisibility
LearnSkill(1050, 0);//Revive
LearnSkill(1055, 1);//HealingRain
LearnSkill(4000, 1);//SummonGuard
}
if (ToJob == 132)//WaterTaoist
{
LearnSkill(3090, 1);//Pervade
LearnSkill(4000, 1);//SummonGuard
}
}
Potency += 5;
Job = ToJob;
DataBase.GetStats(this);
GetEquipStats(1, true);
GetEquipStats(2, true);
GetEquipStats(3, true);
GetEquipStats(4, true);
GetEquipStats(5, true);
GetEquipStats(6, true);
GetEquipStats(7, true);
GetEquipStats(8, true);
MinAtk = Str;
MaxAtk = Str;
MaxHP = BaseMaxHP();
Potency = Level;
GetEquipStats(1, false);
GetEquipStats(2, false);
GetEquipStats(3, false);
GetEquipStats(4, false);
GetEquipStats(5, false);
GetEquipStats(6, false);
GetEquipStats(7, false);
GetEquipStats(8, false);
CurHP = MaxHP;
if (Job == 11)
{
Str = 5;
Agi = 2;
Vit = 3;
Spi = 0;
}
if (Job == 21)
{
Str = 5;
Agi = 2;
Vit = 3;
Spi = 0;
}
if (Job == 41)
{
Str = 2;
Agi = 7;
Vit = 1;
Spi = 0;
}
if (Job == 132)
{
Str = 0;
Agi = 2;
Vit = 3;
Spi = 5;
}
if (Job == 142)
{
Str = 0;
Agi = 2;
Vit = 3;
Spi = 5;
}
MyClient.SendPacket(General.MyPackets.Vital((long)UID, 7, Job));
MyClient.SendPacket(General.MyPackets.Vital((long)UID, 16, Str));
MyClient.SendPacket(General.MyPackets.Vital((long)UID, 17, Agi));
MyClient.SendPacket(General.MyPackets.Vital((long)UID, 15, Vit));
MyClient.SendPacket(General.MyPackets.Vital((long)UID, 14, Spi));
MyClient.SendPacket(General.MyPackets.GeneralData((long)UID, 0, 0, 0, 92));
MyClient.SendPacket(General.MyPackets.Vital((long)UID, 0, CurHP));
StatP += 20;
MyClient.SendPacket(General.MyPackets.Vital(UID, 11, StatP));
for (byte i = 1; i < 9; i++)
{
if (Equips[i] == null || Equips[i] == "") continue;
string I = Equips[i];
string[] II = I.Split('-');
uint IID = uint.Parse(II[0]);
byte Quality = (byte)Other.ItemQuality(IID);
if (i == 1)
{
string NewID = "";
if (Other.WeaponType(IID) == 111 || Other.WeaponType(IID) == 113 || Other.WeaponType(IID) == 114 || Other.WeaponType(IID) == 118 || Other.WeaponType(IID) == 117)
{
NewID = II[0].Remove(4, 2);
NewID = NewID + "0" + Quality.ToString();
Equips[i] = NewID + "-" + II[1] + "-" + II[2] + "-" + II[3] + "-" + II[4] + "-" + II[5];
II[0] = NewID;
MyClient.SendPacket(General.MyPackets.AddItem(Equips_UIDs[i], int.Parse(II[0]), byte.Parse(II[1]), byte.Parse(II[2]), byte.Parse(II[3]), byte.Parse(II[4]), byte.Parse(II[5]), i, 100, 100));
}
else if (Other.WeaponType(IID) == 112)
{
byte Type = byte.Parse(II[0][4].ToString());
byte Color = byte.Parse(II[0][3].ToString());
NewID = "11" + Type.ToString() + Color.ToString() + "0" + Quality.ToString();
Equips[i] = NewID + "-" + II[1] + "-" + II[2] + "-" + II[3] + "-" + II[4] + "-" + II[5];
II[0] = NewID;
MyClient.SendPacket(General.MyPackets.AddItem(Equips_UIDs[i], int.Parse(II[0]), byte.Parse(II[1]), byte.Parse(II[2]), byte.Parse(II[3]), byte.Parse(II[4]), byte.Parse(II[5]), i, 100, 100));
}
}
else if (i == 2)
{
string NewID = "";
NewID = II[0].Remove(3, 3);
NewID += "00" + Quality.ToString();
Equips[i] = NewID + "-" + II[1] + "-" + II[2] + "-" + II[3] + "-" + II[4] + "-" + II[5];
II[0] = NewID;
MyClient.SendPacket(General.MyPackets.AddItem(Equips_UIDs[i], int.Parse(II[0]), byte.Parse(II[1]), byte.Parse(II[2]), byte.Parse(II[3]), byte.Parse(II[4]), byte.Parse(II[5]), i, 100, 100));
}
else if (i == 3)
{
string NewID = "";
if (Other.WeaponType(IID) == 130 || Other.WeaponType(IID) == 131 || Other.WeaponType(IID) == 133 || Other.WeaponType(IID) == 134)
{
NewID = II[0].Remove(4, 2);
NewID = NewID + "0" + Quality.ToString();
Equips[i] = NewID + "-" + II[1] + "-" + II[2] + "-" + II[3] + "-" + II[4] + "-" + II[5];
II[0] = NewID;
MyClient.SendPacket(General.MyPackets.AddItem(Equips_UIDs[i], int.Parse(II[0]), byte.Parse(II[1]), byte.Parse(II[2]), byte.Parse(II[3]), byte.Parse(II[4]), byte.Parse(II[5]), i, 100, 100));
}
else if (Other.WeaponType(IID) == 135 || Other.WeaponType(IID) == 136 || Other.WeaponType(IID) == 138 || Other.WeaponType(IID) == 139)
{
byte Type = byte.Parse(II[0][2].ToString());
byte Color = byte.Parse(II[0][3].ToString());
Type -= 5;
NewID = "13" + Type.ToString() + Color.ToString() + "0" + Quality.ToString();
Equips[i] = NewID + "-" + II[1] + "-" + II[2] + "-" + II[3] + "-" + II[4] + "-" + II[5];
II[0] = NewID;
MyClient.SendPacket(General.MyPackets.AddItem(Equips_UIDs[i], int.Parse(II[0]), byte.Parse(II[1]), byte.Parse(II[2]), byte.Parse(II[3]), byte.Parse(II[4]), byte.Parse(II[5]), i, 100, 100));
}
}
else if (i == 4)
{
string NewID = "";
NewID = II[0].Remove(3, 3);
NewID += "02" + Quality.ToString();
Equips[i] = NewID + "-" + II[1] + "-" + II[2] + "-" + II[3] + "-" + II[4] + "-" + II[5];
II[0] = NewID;
MyClient.SendPacket(General.MyPackets.AddItem(Equips_UIDs[i], int.Parse(II[0]), byte.Parse(II[1]), byte.Parse(II[2]), byte.Parse(II[3]), byte.Parse(II[4]), byte.Parse(II[5]), i, 100, 100));
}
else if (i == 5)
{
string NewID = "";
if (Other.WeaponType(IID) == 900)
{
NewID = II[0].Remove(4, 2);
NewID += "0" + Quality.ToString();
Equips[i] = NewID + "-" + II[1] + "-" + II[2] + "-" + II[3] + "-" + II[4] + "-" + II[5];
II[0] = NewID;
MyClient.SendPacket(General.MyPackets.AddItem(Equips_UIDs[i], int.Parse(II[0]), byte.Parse(II[1]), byte.Parse(II[2]), byte.Parse(II[3]), byte.Parse(II[4]), byte.Parse(II[5]), i, 100, 100));
}
else if (Other.ItemType(IID) == 4 || Other.ItemType(IID) == 5)
{
NewID = II[0].Remove(3, 3);
NewID += "02" + Quality.ToString();
Equips[i] = NewID + "-" + II[1] + "-" + II[2] + "-" + II[3] + "-" + II[4] + "-" + II[5];
II[0] = NewID;
MyClient.SendPacket(General.MyPackets.AddItem(Equips_UIDs[i], int.Parse(II[0]), byte.Parse(II[1]), byte.Parse(II[2]), byte.Parse(II[3]), byte.Parse(II[4]), byte.Parse(II[5]), i, 100, 100));
}
}
else if (i == 6)
{
string NewID = "";
NewID = II[0].Remove(3, 3);
NewID += "01" + Quality.ToString();
Equips[i] = NewID + "-" + II[1] + "-" + II[2] + "-" + II[3] + "-" + II[4] + "-" + II[5];
II[0] = NewID;
MyClient.SendPacket(General.MyPackets.AddItem(Equips_UIDs[i], int.Parse(II[0]), byte.Parse(II[1]), byte.Parse(II[2]), byte.Parse(II[3]), byte.Parse(II[4]), byte.Parse(II[5]), i, 100, 100));
}
else if (i == 8)
{
string NewID = "";
NewID = II[0].Remove(3, 3);
NewID += "01" + Quality.ToString();
Equips[i] = NewID + "-" + II[1] + "-" + II[2] + "-" + II[3] + "-" + II[4] + "-" + II[5];
II[0] = NewID;
MyClient.SendPacket(General.MyPackets.AddItem(Equips_UIDs[i], int.Parse(II[0]), byte.Parse(II[1]), byte.Parse(II[2]), byte.Parse(II[3]), byte.Parse(II[4]), byte.Parse(II[5]), i, 100, 100));
}
}
MyClient.SendPacket(General.MyPackets.Vital(UID, 13, Level));
MyClient.SendPacket(General.MyPackets.String(UID, 10, "hitstar"));
World.SendMsgToAll(Name + " completed First Rebirth!", "SYSTEM", 2011);
World.SendMsgToAll(Name + " completed First Rebirth!", "SYSTEM", 2005);
World.UpdateSpawn(this);
}
catch (Exception Exc) { Console.WriteLine(Exc); }
World.UpdateSpawn(this);
}
*Note*
The Freezing Arrow Skill ID is currently 9999, this is not the ID, I just don't know the ID =P
Press Thanks if this helped!