public bool Add(uint id, byte plus, byte times, bool bound = false)
{
try
{
Database.ConquerItemInformation infos = new Database.ConquerItemInformation(id, plus);
while (times > 0)
{
if (Count <= 39)
{
Owner.SpiltStack = true;
ConquerItem item = new Network.GamePackets.ConquerItem(true);
item.ID = id;
item.Bound = bound;
item.Plus = plus;
item.Durability = item.MaximDurability = infos.BaseInformation.Durability;
Add(item, Enums.ItemUse.CreateAndAdd);
Owner.SpiltStack = false;
}
else
{
return false;
}
times--;
}
}
catch (Exception e)
{
Program.SaveException(e);
}
return true;
}
public bool AddBoundItem(uint id, byte plus, byte times, bool bound = true)
{
try
{
Database.ConquerItemInformation infos = new Database.ConquerItemInformation(id, plus);
while (times > 0)
{
if (Count <= 39)
{
Owner.SpiltStack = true;
ConquerItem item = new ConquerItem(true);
item.ID = id;
item.Plus = plus;
item.Bound = bound;
item.Durability = item.MaximDurability = infos.BaseInformation.Durability;
item.Color = (Conquer_Online_Server.Game.Enums.Color)Kernel.Random.Next(4, 8);
Add(item, Enums.ItemUse.CreateAndAdd);
Owner.SpiltStack = false;
}
else
{
return false;
}
times--;
}
}
catch (Exception e)
{
Program.SaveException(e);
}
return true;
}
public bool AddTime(uint id, uint TimeLeft, bool bound = false, bool bless = false)
{
try
{
Database.ConquerItemInformation infos = new Database.ConquerItemInformation(id, 0);
if (Count <= 39)
{
ConquerItem item;
item = new ConquerItem(true);
{
item.ID = id;
if (id >= 730001 && id <= 730009)
{
item.Plus = (byte)(id - 730000);
}
else item.Plus = 0;
if (bless == true)
item.Bless = 1;
item.Enchant = 0;
item.Bound = bound;
item.DayStamp = DateTime.Now;
TimeSpan span1 = new TimeSpan(item.DayStamp.AddSeconds(item.Days).Ticks);
TimeSpan span2 = new TimeSpan(DateTime.Now.Ticks);
item.TimeLeftInMinutes = (uint)(span1.TotalSeconds - span2.TotalSeconds);
item.Durability = item.MaximDurability = infos.BaseInformation.Durability;
};
this.Add(item, Enums.ItemUse.CreateAndAdd);
Database.ConquerItemTable.Update_Free(item, Owner);
Database.ConquerItemTable.UpdateBless(item);
Database.ConquerItemTable.UpdateBound(item, Owner);
}
else
{
return false;
}
}
catch (Exception e)
{
Program.SaveException(e);
}
return true;
}