/// <summary> /// Adds beercase by GameObject /// </summary> /// <param name="beerGO">BeerCase GameObject.</param> public void AddBeerCase(GameObject beerGO) { var metaData = beerGO.GetComponent <Game.Components.PickupableMetaDataComponent>(); if (metaData.PrefabDescriptor.type == GamePickupableDatabase.PrefabType.BeerCase) { bool isDuplicate = false; foreach (BeerCase beer in beercases) { GameObject beerGameObject = beer.GetGameObject; if (beerGameObject == beerGO) { Logger.Debug($"Duplicate beercase rejected: {beerGameObject.name}"); isDuplicate = true; } } if (isDuplicate == false) { BeerCase beer = new BeerCase(beerGO); beercases.Add(beer); beer.onConsumedBeer = (beerObj) => { onBottleConsumed(beer.GetGameObject); }; } } }
/// <summary> /// Sets bottle count of beercase. /// </summary> /// <param name="beerGO"></param> /// <param name="bottleCount"></param> public void SetBottleCount(GameObject beerGO, int bottleCount) { BeerCase beer = FindBeerCase(beerGO); if (beer != null) { beer.RemoveBottles(BeerCaseManager.Instance.FullCaseBottles - bottleCount); } else { Logger.Log("SetBottleCount: Beercase not found!"); } }
/// <summary> /// Adds beercase by GameObject /// </summary> /// <param name="beerGO">BeerCase GameObject.</param> public void AddBeerCase(GameObject beerGO) { bool isDuplicate = false; foreach (BeerCase beer in beercases) { GameObject beerGameObject = beer.GetGameObject; if (beerGameObject == beerGO) { Logger.Debug($"Duplicate beercase rejected: {beerGameObject.name}"); isDuplicate = true; } } if (isDuplicate == false) { BeerCase beer = new BeerCase(beerGO); beercases.Add(beer); beer.onConsumedBeer = (beerObj) => { onBottleConsumed(beer.GetGameObject); }; } }