Exemple #1
0
 public void Add(WorldItemRecord item, int quantity)
 {
     if (this.HasSame(item))
     {
         var same = this.GetSame(item);
         same.Quantity += quantity;
         item.Quantity -= quantity;
         same.SaveAndFlush();
         item.SaveAndFlush();
     }
     else
     {
         if (item.Quantity - quantity < 0)
         {
             item.Quantity = quantity;
             item.SaveAndFlush();
             this.Items.Add(item);
         }
         else
         {
             var newItem = item.Engine.DuplicateItem(item, -1, false);
             newItem.Owner = -1;
             newItem.Quantity = quantity;
             this.Items.Add(newItem);
             newItem.SaveAndFlush();
         }
     }
 }
Exemple #2
0
 public void Add(WorldItemRecord item, int quantity)
 {
     if (this.HasSame(item))
     {
         var same = this.GetSame(item);
         same.Quantity += quantity;
         item.Quantity -= quantity;
         same.SaveAndFlush();
         item.SaveAndFlush();
     }
     else
     {
         if (item.Quantity - quantity < 0)
         {
             item.Quantity = quantity;
             item.SaveAndFlush();
             this.Items.Add(item);
         }
         else
         {
             var newItem = item.Engine.DuplicateItem(item, -1, false);
             newItem.Owner    = -1;
             newItem.Quantity = quantity;
             this.Items.Add(newItem);
             newItem.SaveAndFlush();
         }
     }
 }
Exemple #3
0
 public bool HasSame(WorldItemRecord item)
 {
     foreach (var i in this.Items)
     {
         if (i.IsSame(item))
         {
             return(true);
         }
     }
     return(false);
 }
Exemple #4
0
 public WorldItemRecord GetSame(WorldItemRecord item)
 {
     foreach (var i in this.Items)
     {
         if (i.IsSame(item))
         {
             return(i);
         }
     }
     return(null);
 }
Exemple #5
0
 public void Add(WorldItemRecord item)
 {
     if (this.HasSame(item))
     {
         var same = this.GetSame(item);
         same.Quantity += item.Quantity;
     }
     else
     {
         this.Items.Add(item);
     }
 }
Exemple #6
0
 public void Add(WorldItemRecord item)
 {
     if (this.HasSame(item))
     {
         var same = this.GetSame(item);
         same.Quantity += item.Quantity;
     }
     else
     {
         this.Items.Add(item);
     }
 }
Exemple #7
0
 public bool HasSame(WorldItemRecord item)
 {
     foreach (var i in this.Items)
     {
         if (i.IsSame(item)) return true;
     }
     return false;
 }
Exemple #8
0
 public WorldItemRecord GetSame(WorldItemRecord item)
 {
     foreach (var i in this.Items)
     {
         if (i.IsSame(item)) return i;
     }
     return null;
 }