public void GetGameItem(List <ItemData> items) { if (container == null) { throw new Exception("You must provide a container to your GameItemContainerInserter"); } else { List <SelectedGenerationItem> giveItems = new List <SelectedGenerationItem>(); int GenerationID = 0; foreach (ItemData item in items) { if (item.IsGenerated) { GenerationID = item.GenerationID; } SelectedGenerationItem selectItem = new SelectedGenerationItem(); selectItem.ItemId = item.ItemID; selectItem.Amount = item.stackSize; AddItemToGenerationPackage("User", item.GenerationID, container.GetComponentInChildren <PersistentItemContainer>().Location, selectItem); giveItems.Add(selectItem); } InitialUpdateContainerDisplay(giveItems); } }
public void InitializeItemIDs(SelectedGenerationItem selectedItem) { selectedItems.Add(selectedItem); if (!isGenerateTimerStarted) { isGenerateTimerStarted = true; } }
public void AddItemID(SelectedGenerationItem selectedItem) { SelectedGenerationItem generationItem = selectedItems.Find(x => x.ItemId == selectedItem.ItemId); if (generationItem != null) { generationItem.Amount += selectedItem.Amount; } else { selectedItems.Add(selectedItem); } }
void AddItemToGenerationPackage(string UserType, int GenerationID, int location, SelectedGenerationItem selectedItem) { GenerationItemPackage generationItemPackage = CloudGoods.GenerationPackages.Find(x => x.UserType == UserType && x.GenerationID == GenerationID && x.Location == location); if (generationItemPackage != null && !generationItemPackage.HasPackageBeenSent()) { Debug.Log("Checking for generation packages: " + generationItemPackage + " has item been sent: " + generationItemPackage.HasPackageBeenSent()); generationItemPackage.AddItemID(selectedItem); } else { CreateGenerationPackage(UserType, GenerationID, location, selectedItem); } }
void CreateGenerationPackage(string UserType, int GenerationID, int location, SelectedGenerationItem selectedItems) { GameObject packageObj = new GameObject(); packageObj.name = "Generation Package : " + GenerationID; GenerationItemPackage generationPackage = packageObj.AddComponent <GenerationItemPackage>(); generationPackage.UserType = UserType; generationPackage.GenerationID = GenerationID; generationPackage.Location = location; generationPackage.InitializeItemIDs(selectedItems); generationPackage.targetContainer = container; CloudGoods.GenerationPackages.Add(generationPackage); }