9
0
mirror of https://github.com/Auxilor/EcoJobs.git synced 2026-01-04 15:41:37 +00:00

Placeholder for the total levels of player's jobs

**The placeholder:** 😉
• `%ecojobs_total_jobs_level%`
This commit is contained in:
ItsMeKrisK
2022-10-11 03:11:24 +03:00
parent e0b2ae4f40
commit 21ab58b425

View File

@@ -18,6 +18,7 @@ import com.willfp.ecojobs.api.event.PlayerJobExpGainEvent
import com.willfp.ecojobs.api.event.PlayerJobJoinEvent
import com.willfp.ecojobs.api.event.PlayerJobLeaveEvent
import com.willfp.ecojobs.api.event.PlayerJobLevelUpEvent
import com.willfp.ecojobs.jobs.Jobs.unlockedJobs
import com.willfp.libreforge.conditions.Conditions
import com.willfp.libreforge.conditions.ConfiguredCondition
import com.willfp.libreforge.effects.ConfiguredEffect
@@ -166,11 +167,18 @@ class Job(
}.register()
PlayerPlaceholder(
plugin,
"${id}_level"
plugin,
"${id}_level"
) {
it.getJobLevel(this).toString()
}.register()
PlayerPlaceholder(
plugin,
"total_jobs_level"
) {
it.getTotalJobsLevel().toString()
}.register()
}
fun getLevel(level: Int): JobLevel = levels.get(level) {
@@ -409,6 +417,15 @@ val OfflinePlayer.activeJobLevel: JobLevel?
fun OfflinePlayer.getJobLevel(job: Job): Int =
this.profile.read(job.levelKey)
fun OfflinePlayer.getTotalJobsLevel(): Int {
//Get each job level and add them together
var total = 0;
for (job in Jobs.values()){
total += this.profile.read(job.levelKey);
}
return total;
}
fun OfflinePlayer.setJobLevel(job: Job, level: Int) =
this.profile.write(job.levelKey, level)