public static void giveExperience(Monster monster, int amount, Quinoa quinoa) { monster.stats.setExperience(monster.stats.getExperience() + amount); //check for level up int startLevel = monster.stats.getLevel(); int endLevel = monster.stats.getLevel(); for(int i=0; i < xpLevels.Length; i++) { if(monster.stats.getExperience() >= xpLevels[i]) { endLevel = (i + 1); } } if(endLevel > startLevel && startLevel != MonsterStats.MAX_LEVEL) { monster.stats.setLevel(endLevel); monster.stats.setAvailableStatPoints(monster.stats.getAvailableStatPoints() + ((endLevel - startLevel) * MonsterStats.STAT_POINTS_PER_LEVEL )); monster.stats.setCurrentHealth(monster.stats.getMaxHP()); if(isPlayer(monster)) { quinoa.getMessageManager().addMessage("Level up!"); quinoa.getUI().getScreen().displayDialog(); } } }