Example #1
0
 public void RemoveItem(ItemNode source, int amount)
 {
     if (source.GetProfile().stackable)
     {
         for (int i = 0; i < Items.Count; i++)
         {
             if (Items[i].Compare(source))
             {
                 Items[i].stack -= amount;
                 if (Items[i].stack <= 0)
                 {
                     Items.RemoveAt(i);
                 }
                 return;
             }
         }
     }
     else
     {
         for (int i = 0; i < amount; i++)
         {
             for (int j = 0; j < Items.Count; j++)
             {
                 if (Items[j].Compare(source))
                 {
                     Items.RemoveAt(j);
                     break;
                 }
             }
         }
     }
 }
Example #2
0
 public bool AddItem(ItemNode source)
 {
     if (source.GetProfile().stackable)
     {
         for (int i = 0; i < Items.Count; i++)
         {
             if (Items[i].Compare(source))
             {
                 Items[i].stack += source.stack;
                 return(true);
             }
         }
         if (Items.Count >= Size)
         {
             return(false);
         }
         Items.Add(source);
     }
     else
     {
         if (Items.Count >= Size)
         {
             return(false);
         }
         Items.Add(source);
     }
     return(true);
 }
Example #3
0
 public bool CheckEquipAvailable(ItemNode node)
 {
     foreach (string id in node.GetProfile().NGJobIDsList)
     {
         if (id == CurrentJob.ID)
         {
             return(false);
         }
     }
     return(true);
 }