private UICountdownVisualization AddBoosterUIVisualization(PickupBoosterConfig takedBooster) { var countdownUI = Instantiate(takedBooster.visualization, boostersUIParent); StartCoroutine(countdownUI.StartCountdown(takedBooster.duration, takedBooster.boosterName)); return(countdownUI); }
private void ApplyBooster(PickupBoosterConfig takedBooster) { statsForBoost.applyModifiers.Add(takedBooster.booster); var visualisation = AddBoosterUIVisualization(takedBooster); visualisation.CountdownIsOver += DestroyBooster; AppliedBooster appliedBooster = new AppliedBooster(visualisation, takedBooster.booster); appliedBoosters.Add(takedBooster.boosterName, appliedBooster); }
public void TakeBooster(PickupBoosterConfig takedBooster) { if (appliedBoosters.ContainsKey(takedBooster.boosterName)) { appliedBoosters[takedBooster.boosterName].countdownVisualization.AddRemainingDuration(takedBooster.duration); } else { ApplyBooster(takedBooster); } }