From fbe9be8cc0df35e2e39416751679a81243ce234b Mon Sep 17 00:00:00 2001 From: Auxilor Date: Sat, 13 May 2023 13:02:03 +0100 Subject: [PATCH] Added option to always show skills --- .../kotlin/com/willfp/ecoskills/gui/components/SkillIcon.kt | 4 +++- .../com/willfp/ecoskills/skills/display/GainXPDisplay.kt | 6 +++++- eco-core/core-plugin/src/main/resources/config.yml | 1 + 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/eco-core/core-plugin/src/main/kotlin/com/willfp/ecoskills/gui/components/SkillIcon.kt b/eco-core/core-plugin/src/main/kotlin/com/willfp/ecoskills/gui/components/SkillIcon.kt index 764f6f5..634e5a5 100644 --- a/eco-core/core-plugin/src/main/kotlin/com/willfp/ecoskills/gui/components/SkillIcon.kt +++ b/eco-core/core-plugin/src/main/kotlin/com/willfp/ecoskills/gui/components/SkillIcon.kt @@ -19,6 +19,8 @@ class SkillIcon( config: Config, plugin: EcoPlugin ) : PositionedComponent { + private val hideBeforeLevel1 = plugin.configYml.getBool("hide-before-level-1") + private val baseIcon = Items.lookup(config.getString("icon")).item private val slot = slot({ player, _ -> @@ -62,7 +64,7 @@ class SkillIcon( override val column = config.getInt("position.column") override fun getSlotAt(row: Int, column: Int, player: Player, menu: Menu): Slot { - return if (player.getSkillLevel(skill) > 0) { + return if (player.getSkillLevel(skill) > 0 || !hideBeforeLevel1) { slot } else { unknownSlot diff --git a/eco-core/core-plugin/src/main/kotlin/com/willfp/ecoskills/skills/display/GainXPDisplay.kt b/eco-core/core-plugin/src/main/kotlin/com/willfp/ecoskills/skills/display/GainXPDisplay.kt index 252bdfd..183d64b 100644 --- a/eco-core/core-plugin/src/main/kotlin/com/willfp/ecoskills/skills/display/GainXPDisplay.kt +++ b/eco-core/core-plugin/src/main/kotlin/com/willfp/ecoskills/skills/display/GainXPDisplay.kt @@ -18,6 +18,8 @@ import org.bukkit.event.Listener class GainXPDisplay( private val plugin: EcoPlugin ) : Listener { + private val hideBeforeLevel1 = plugin.configYml.getBool("hide-before-level-1") + private val sound = if (plugin.configYml.getBool("skills.gain-xp.sound.enabled")) { PlayableSound.create( plugin.configYml.getSubsection("skills.gain-xp.sound") @@ -74,7 +76,9 @@ class GainXPDisplay( private fun String.formatMessage(event: PlayerSkillXPGainEvent): String = this.replace( "%skill%", - if (event.player.getSkillLevel(event.skill) > 0) event.skill.name else plugin.langYml.getString("learning-skill") + if (event.player.getSkillLevel(event.skill) > 0 || !hideBeforeLevel1) event.skill.name else plugin.langYml.getString( + "learning-skill" + ) ) .replace("%current_xp%", event.player.getSkillXP(event.skill).toNiceString()) .replace("%required_xp%", event.player.getFormattedRequiredXP(event.skill)) diff --git a/eco-core/core-plugin/src/main/resources/config.yml b/eco-core/core-plugin/src/main/resources/config.yml index 81ee649..764dca4 100644 --- a/eco-core/core-plugin/src/main/resources/config.yml +++ b/eco-core/core-plugin/src/main/resources/config.yml @@ -276,6 +276,7 @@ damage-indicators: skills: prevent-levelling-while-afk: true # If the player is AFK then don't give xp + hide-before-level-1: true # If skills should be hidden before level 1 # Ways to tell the player about skill xp gain gain-xp: