private void modifyExp(int exp, bool noReward = false) { _exp += exp; while (_exp >= _expNextLevel) { _exp -= _expNextLevel; _level++; _expNextLevel = calculateExpNextLevel(_level); _expBar.setExpRatio(1.0f); onLevelUp(noReward); } _expBar.setExpRatio((float)_exp / _expNextLevel); invalidUI(); }