public void InitValue(IntCurrency fromCurrency) { TextToUpdate.text = fromCurrency.Amount.ToString(); TextToUpdate.color = fromCurrency.Variable.IconColor; ImageToUpdate.sprite = fromCurrency.Variable.Icon; ImageToUpdate.color = fromCurrency.Variable.IconColor; }
public void ReturnToMap(bool victory) { if (victory) { var newScore = new IntCurrency { Variable = _playerData.TotalScore.Variable, Amount = Score.Value }; var diff = _playerData.SetOrAddScore(Configuration, newScore); int playerLevel = _playerData.PlayerLevel; _playerData.TotalScore.Amount += diff.Amount; while (_playerData.TotalScore.Amount >= _playerData.ScoreFormula.GetLevelRequirement(playerLevel)) { playerLevel++; } _playerData.PlayerLevel = playerLevel; } Time.timeScale = 1; GetComponent <UiLevel>().LoadLevel(); }
public IntCurrency SetOrAddScore(LevelConfiguration level, IntCurrency newScore) { if (TryGetLevel(level, out var levelScore)) { int oldAmount = levelScore.HighestScore.Amount; int newAmount = newScore.Amount; if (newAmount > oldAmount) { int diff = newAmount - oldAmount; levelScore.HighestScore.Amount = newAmount; return(new IntCurrency { Amount = diff, Variable = newScore.Variable }); } else { return(new IntCurrency { Amount = 0, Variable = newScore.Variable }); } } else { CompletedLevels.Add( new HighestScorePerLevel { Level = level, HighestScore = newScore }); } return(newScore); }