9
0
mirror of https://github.com/Auxilor/EcoSkills.git synced 2026-01-01 05:16:28 +00:00

Merge pull request #22

Fixed decimals format in MegneticRod effect description && Added support for negative numbers to EcoSkillsPlayer#giveSkillExperience
This commit is contained in:
Will FP
2021-11-12 18:11:08 +00:00
committed by GitHub
3 changed files with 18 additions and 3 deletions

View File

@@ -92,6 +92,20 @@ fun Player.giveSkillExperience(skill: Skill, experience: Double, noMultiply: Boo
Bukkit.getPluginManager().callEvent(levelUpEvent)
this.giveSkillExperience(skill, overshoot, true)
}
else if (this.getSkillProgress(skill) < skill.getExpForLevel(level) && level >= 1) {
val overshoot = 0.0
this.setSkillProgress(skill, 0.0)
this.setSkillLevel(skill, level - 1)
val levelUpEvent = PlayerSkillLevelUpEvent(this, skill, level - 1)
Bukkit.getPluginManager().callEvent(levelUpEvent)
this.giveSkillExperience(skill, overshoot, true)
}
if (this.getSkillProgress(skill) < 0) {
this.setSkillProgress(skill, 0.0)
}
}
fun OfflinePlayer.getSkillLevel(skill: Skill): Int {

View File

@@ -54,7 +54,7 @@ class CommandRecount(plugin: EcoPlugin): Subcommand(
}
sender.sendMessage(
plugin.langYml.getMessage("recounted-player")
.replace("%player%", player.name)
.replace("%player%", player.displayName)
.replace("%effect%", "&6ALL")
.replace("%level%", total.toString())
)
@@ -65,7 +65,7 @@ class CommandRecount(plugin: EcoPlugin): Subcommand(
} else {
sender.sendMessage(
plugin.langYml.getMessage("recounted-player")
.replace("%player%", player.name)
.replace("%player%", player.displayName)
.replace("%effect%", effect.id)
.replace("%level%", recount(player, effect).toString())
)

View File

@@ -1,5 +1,6 @@
package com.willfp.ecoskills.effects.effects
import com.willfp.eco.util.NumberUtils
import com.willfp.ecoskills.effects.Effect
import com.willfp.ecoskills.getEffectLevel
import org.bukkit.event.EventHandler
@@ -10,7 +11,7 @@ class EffectMagneticRod : Effect(
"magnetic_rod"
) {
override fun formatDescription(string: String, level: Int): String {
return string.replace("%percentage%", (level * config.getDouble("speed-per-level")).toString())
return string.replace("%percentage%", NumberUtils.format(level * config.getDouble("speed-per-level")))
}
@EventHandler(priority = EventPriority.HIGH, ignoreCancelled = true)