public void ItemUnEquiped(Global.slotItem item)
{
#region Unequip items
LoadBluesid(item.dbID);
try
{
if (item.Slot <= 5)
{
Character.Stat.MagDef -= Data.ItemBase[item.ID].Defans.MinMagDef + (item.PlusValue * (double)Data.ItemBase[item.ID].Defans.MagDefINC);
Character.Stat.PhyDef -= Data.ItemBase[item.ID].Defans.MinPhyDef + (item.PlusValue * (double)Data.ItemBase[item.ID].Defans.PhyDefINC);
Character.Stat.Parry -= Data.ItemBase[item.ID].Defans.Parry;
if (Data.ItemBlue[item.dbID].totalblue != 0) AddRemoveBlues(this, item, false);
client.Send(Packet.PlayerStat(Character));
}
if (item.Slot == 6)
{
Character.Stat.MinPhyAttack -= Data.ItemBase[item.ID].Attack.Min_LPhyAttack + (item.PlusValue * (double)Data.ItemBase[item.ID].Attack.PhyAttackInc);
Character.Stat.MaxPhyAttack -= Data.ItemBase[item.ID].Attack.Min_HPhyAttack + (item.PlusValue * (double)Data.ItemBase[item.ID].Attack.PhyAttackInc);
Character.Stat.MinMagAttack -= Data.ItemBase[item.ID].Attack.Min_LMagAttack + (item.PlusValue * (double)Data.ItemBase[item.ID].Attack.MagAttackINC);
Character.Stat.MaxMagAttack -= Data.ItemBase[item.ID].Attack.Min_HMagAttack + (item.PlusValue * (double)Data.ItemBase[item.ID].Attack.MagAttackINC);
Character.Stat.Hit -= Data.ItemBase[item.ID].Attack.MinAttackRating;
if (Data.ItemBlue[item.dbID].totalblue != 0) AddRemoveBlues(this, item, false);
client.Send(Packet.PlayerStat(Character));
Character.Information.Item.wID = 0;
}
if (item.Slot == 7)
{
if (Data.ItemBase[item.ID].Itemtype == Global.item_database.ItemType.CH_SHIELD || Data.ItemBase[item.ID].Itemtype == Global.item_database.ItemType.EU_SHIELD)
{
Character.Stat.MagDef -= Data.ItemBase[item.ID].Defans.MinMagDef + (item.PlusValue * (double)Data.ItemBase[item.ID].Defans.MagDefINC);
Character.Stat.PhyDef -= Data.ItemBase[item.ID].Defans.MinPhyDef + (item.PlusValue * (double)Data.ItemBase[item.ID].Defans.PhyDefINC);
if (Data.ItemBlue[item.dbID].totalblue != 0) AddRemoveBlues(this, item, false);
}
client.Send(Packet.PlayerStat(Character));
Character.Information.Item.sAmount = 0;
Character.Information.Item.sID = 0;
}
if (item.Slot == 8)
{
if (Character.Job.Jobname != "0" && Character.Job.state == 1)
{
//Teleport user back to binded location
Send(Packet.StatePack(Character.Information.UniqueID, 0x0B, 0x01, false));
Character.Information.Scroll = true;
StartScrollTimer(0);
MsSQL.UpdateData("UPDATE character_jobs SET job_state='0' WHERE character_name='" + Character.Information.Name + "'");
Character.Job.state = 0;
SavePlayerReturn();
}
}
if (item.Slot >= 9 && item.Slot <= 12)
{
Character.Stat.MagDef -= (short)(Data.ItemBase[item.ID].Defans.MagAbsorb + (item.PlusValue * (double)Data.ItemBase[item.ID].Defans.AbsorbINC) * 10);
Character.Stat.PhyDef -= (short)(Data.ItemBase[item.ID].Defans.PhyAbsorb + (item.PlusValue * (double)Data.ItemBase[item.ID].Defans.AbsorbINC) * 10);
client.Send(Packet.PlayerStat(Character));
if (Data.ItemBlue[item.dbID].totalblue != 0) AddRemoveBlues(this, item, false);
}
Send(Packet.MoveItemUnequipEffect(Character.Information.UniqueID, item.Slot, item.ID));
SavePlayerInfo();
}
catch (Exception ex)
{
Console.WriteLine(ex);
}
#endregion
}