public void Buy() { if (_parameters.goldAmount < item.price) { return; } _parameters.goldAmount -= item.price; _moneyAmountText.text = _parameters.goldAmount.ToString(); if (badge != null) { if (counter == 0) { badge.gameObject.SetActive(true); } counter++; badge.text = counter.ToString(); } _inventory.StashItem(item); _parameters.Save(); _equipPanel.UpdateStash(); OnItemBought?.Invoke(); }
public void Check() { _check = !_check; checkMark.SetActive(_check); SetParams(_check); parameters.Save(); mixer.audioMixer.SetFloat(mixer.name, _check ? 0 : -80f); }
private IEnumerator WinCoroutine() { musicSource.Stop(); musicSource.clip = winMusic; musicSource.loop = false; DisableUI(); PlayerMover mover = _player.GetComponent <PlayerMover>(); mover.enabled = false; PlayerAnimator playerAnimator = _player.GetComponent <PlayerAnimator>(); playerAnimator.SetSpeed(0); DestroySnowballs(); yield return(new WaitForSecondsRealtime(waitTimeBeforeWin)); // spin player and jump yield return(SpinAndJump(spinsAmount, spinTime, jumpHeight)); musicSource.Play(); // show score // TODO: animations and score winPanel.SetActive(true); winPanelMoneyText.text = $"Earned ${onWinGoldAmount}"; yield return(null); int lastLocationFinished = parameters.finishedLevelsOnLocation[parameters.finishedLevelsOnLocation.Count - 1]; if (lastLocationFinished >= 10) { parameters.finishedLevelsOnLocation.Add(0); } parameters.goldAmount += onWinGoldAmount; OpenLevel(); parameters.Save(); }
public void UseItem() { if (inventoryButton == null) { Debug.LogError("Inventory button was not found"); return; } Inventory inventory = parameters.inventory; foreach (ItemEffect effect in activeItem.effects) { switch (effect.name) { case "Heal": Heal((int)effect.value); break; default: Debug.LogError("Effect " + effect.name + " was not found"); break; } } if (activeItem is ThrowableItem) { PlayerShooter shooter = _player.GetComponent <PlayerShooter>(); shooter.nextSnowballPrefab = ((ThrowableItem)activeItem).throwablePrefab; } inventory.activeItemsEquipped.RemoveAt(itemIndex); parameters.Save(); inventoryButton.OnPress(); foreach (Transform button in transform.parent) { Destroy(button.gameObject); } }
public void OnReturnToMenu() { _inventory.UnequipActiveItems(); parameters.Save(); }