mirror of
https://github.com/Auxilor/EcoQuests.git
synced 2026-01-06 15:52:00 +00:00
Added quest_xp_multipleir
This commit is contained in:
@@ -12,6 +12,7 @@ import com.willfp.ecoquests.libreforge.ConditionHasCompletedTask
|
|||||||
import com.willfp.ecoquests.libreforge.ConditionHasQuestActive
|
import com.willfp.ecoquests.libreforge.ConditionHasQuestActive
|
||||||
import com.willfp.ecoquests.libreforge.EffectGainTaskXp
|
import com.willfp.ecoquests.libreforge.EffectGainTaskXp
|
||||||
import com.willfp.ecoquests.libreforge.EffectGiveTaskXp
|
import com.willfp.ecoquests.libreforge.EffectGiveTaskXp
|
||||||
|
import com.willfp.ecoquests.libreforge.EffectQuestXpMultiplier
|
||||||
import com.willfp.ecoquests.libreforge.EffectStartQuest
|
import com.willfp.ecoquests.libreforge.EffectStartQuest
|
||||||
import com.willfp.ecoquests.libreforge.FilterQuest
|
import com.willfp.ecoquests.libreforge.FilterQuest
|
||||||
import com.willfp.ecoquests.libreforge.FilterTask
|
import com.willfp.ecoquests.libreforge.FilterTask
|
||||||
@@ -40,6 +41,7 @@ class EcoQuestsPlugin : LibreforgePlugin() {
|
|||||||
Conditions.register(ConditionHasQuestActive)
|
Conditions.register(ConditionHasQuestActive)
|
||||||
Effects.register(EffectGainTaskXp)
|
Effects.register(EffectGainTaskXp)
|
||||||
Effects.register(EffectGiveTaskXp)
|
Effects.register(EffectGiveTaskXp)
|
||||||
|
Effects.register(EffectQuestXpMultiplier)
|
||||||
Effects.register(EffectStartQuest)
|
Effects.register(EffectStartQuest)
|
||||||
Filters.register(FilterQuest)
|
Filters.register(FilterQuest)
|
||||||
Filters.register(FilterTask)
|
Filters.register(FilterTask)
|
||||||
|
|||||||
@@ -0,0 +1,24 @@
|
|||||||
|
package com.willfp.ecoquests.libreforge
|
||||||
|
|
||||||
|
import com.willfp.ecoquests.api.event.PlayerTaskExpGainEvent
|
||||||
|
import com.willfp.ecoquests.quests.Quest
|
||||||
|
import com.willfp.ecoquests.quests.Quests
|
||||||
|
import com.willfp.libreforge.effects.templates.MultiMultiplierEffect
|
||||||
|
import org.bukkit.event.EventHandler
|
||||||
|
|
||||||
|
object EffectQuestXpMultiplier : MultiMultiplierEffect<Quest>("quest_xp_multiplier") {
|
||||||
|
override val key = "quests"
|
||||||
|
|
||||||
|
override fun getElement(key: String): Quest? {
|
||||||
|
return Quests[key]
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun getAllElements(): Collection<Quest> {
|
||||||
|
return Quests.values()
|
||||||
|
}
|
||||||
|
|
||||||
|
@EventHandler(ignoreCancelled = true)
|
||||||
|
fun handle(event: PlayerTaskExpGainEvent) {
|
||||||
|
event.amount *= getMultiplier(event.player, event.quest)
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user