protected override LevelUpStats GetLevel( int[] growths, int[] gainedStats, int[] currentLevelStats, bool atBaseLevel) { bool[] cappedStats = GetCappedStats(gainedStats); if (atBaseLevel && Global.ActorConfig.SemifixedFirstLevelUp) { var stats = new SemifixedLevelUpStats( growths, currentLevelStats, cappedStats); return(stats); } else { #if DEBUG // In the unit editor, random level up stats are only used for the // leftover value, and use a fixed roll if (Global.scene.scene_type == "Scene_Map_Unit_Editor" && Actor.is_generic_actor) { var stats = new Roll50LevelUpStats(growths, currentLevelStats, cappedStats); return(stats); } else #endif if (Global.ActorConfig.NoEmptyLevels) { var stats = new NoZeroLevelUpStats(growths, currentLevelStats, cappedStats); return(stats); } else { var stats = new LevelUpStats(growths, currentLevelStats, cappedStats); return(stats); } } }
private void _playerLevelUp(LevelUpStats _stats) { World.Instance.MainPlayer.ActiveCharacter.Emote(Emote.LevelUp); World.Instance.ActiveCharacterRenderer.PlayerEmote(); CharStatData stats = World.Instance.MainPlayer.ActiveCharacter.Stats; stats.level = _stats.Level; stats.statpoints = _stats.StatPoints; stats.skillpoints = _stats.SkillPoints; stats.SetMaxHP(_stats.MaxHP); stats.SetMaxTP(_stats.MaxTP); stats.SetMaxSP(_stats.MaxSP); m_game.Hud.RefreshStats(); }