public void TransitionToLevel(int id) { if (levelDictionary.ContainsKey(id)) { if (currentLevel != null) { currentLevel.OnEndLevel(); } currentLevel = levelDictionary[id]; currentLevel.OnStartLevel(); eventManager.FireEvent(NewTargetWeightEvent, new NewTargetWeightEventArgs(currentLevel.WeightGoal, currentLevel.WeightMax)); } else { Debug.LogError("Unable to find level with Id: " + id.ToString()); } }