Compare commits

...

13 Commits

Author SHA1 Message Date
Will FP
0b6112408f libreforge-updater 2023-11-26 23:24:54 +00:00
Will FP
8ee3852ad8 libreforge-updater 2023-11-23 13:21:50 +00:00
Auxilor
5aab3af9ea libreforge-updater 2023-11-21 22:41:48 +00:00
Auxilor
e83d8d4b14 libreforge-updater 2023-11-19 14:14:31 +00:00
Auxilor
0241b2fb2a libreforge-updater 2023-11-17 19:02:39 +00:00
Auxilor
ac9147463a libreforge-updater 2023-11-11 17:59:04 +00:00
Auxilor
d2928ee59f libreforge-updater 2023-11-10 13:59:34 +00:00
Auxilor
315d8f0954 libreforge-updater 2023-11-05 13:42:13 +00:00
Auxilor
7f616da0ce libreforge-updater 2023-10-30 13:31:12 +00:00
Auxilor
eeada10ef8 libreforge-updater 2023-10-28 14:15:39 +01:00
Auxilor
230eb9b87f libreforge-updater 2023-10-24 15:39:40 +01:00
Auxilor
803324c5c9 libreforge-updater 2023-10-19 12:52:41 +01:00
Auxilor
6aaf494b73 libreforge-updater 2023-10-14 14:20:38 +01:00
8 changed files with 50 additions and 18 deletions

View File

@@ -30,7 +30,9 @@ import com.willfp.libreforge.filters.Filters
import com.willfp.libreforge.loader.LibreforgePlugin import com.willfp.libreforge.loader.LibreforgePlugin
import com.willfp.libreforge.loader.configs.ConfigCategory import com.willfp.libreforge.loader.configs.ConfigCategory
import com.willfp.libreforge.registerHolderProvider import com.willfp.libreforge.registerHolderProvider
import com.willfp.libreforge.registerSpecificHolderProvider
import com.willfp.libreforge.triggers.Triggers import com.willfp.libreforge.triggers.Triggers
import org.bukkit.entity.Player
import org.bukkit.event.Listener import org.bukkit.event.Listener
class EcoPetsPlugin : LibreforgePlugin() { class EcoPetsPlugin : LibreforgePlugin() {
@@ -55,10 +57,10 @@ class EcoPetsPlugin : LibreforgePlugin() {
Triggers.register(TriggerGainPetXp) Triggers.register(TriggerGainPetXp)
Triggers.register(TriggerLevelUpPet) Triggers.register(TriggerLevelUpPet)
Filters.register(FilterPet) Filters.register(FilterPet)
registerHolderProvider { registerSpecificHolderProvider<Player> {
it.activePetLevel?.let { l -> it.activePetLevel?.let { p ->
listOf(SimpleProvidedHolder(l)) listOf(SimpleProvidedHolder(p))
} ?: emptyList() } ?: emptyList()
} }

View File

@@ -3,9 +3,12 @@ package com.willfp.ecopets.libreforge
import com.willfp.eco.core.config.interfaces.Config import com.willfp.eco.core.config.interfaces.Config
import com.willfp.ecopets.api.EcoPetsAPI import com.willfp.ecopets.api.EcoPetsAPI
import com.willfp.ecopets.pets.Pets import com.willfp.ecopets.pets.Pets
import com.willfp.libreforge.Dispatcher
import com.willfp.libreforge.NoCompileData import com.willfp.libreforge.NoCompileData
import com.willfp.libreforge.ProvidedHolder
import com.willfp.libreforge.arguments import com.willfp.libreforge.arguments
import com.willfp.libreforge.conditions.Condition import com.willfp.libreforge.conditions.Condition
import com.willfp.libreforge.get
import org.bukkit.entity.Player import org.bukkit.entity.Player
object ConditionHasActivePet : Condition<NoCompileData>("has_active_pet") { object ConditionHasActivePet : Condition<NoCompileData>("has_active_pet") {
@@ -13,11 +16,14 @@ object ConditionHasActivePet : Condition<NoCompileData>("has_active_pet") {
require("pet", "You must specify the pet!") require("pet", "You must specify the pet!")
} }
override fun isMet(player: Player, config: Config, compileData: NoCompileData): Boolean { override fun isMet(
dispatcher: Dispatcher<*>,
config: Config,
holder: ProvidedHolder,
compileData: NoCompileData
): Boolean {
val player = dispatcher.get<Player>() ?: return false
return EcoPetsAPI.instance.getActivePet(player) == Pets.getByID(config.getString("pet").lowercase()) return EcoPetsAPI.instance.getActivePet(player) == Pets.getByID(config.getString("pet").lowercase())
// return EcoPetsAPI.instance.hasPet(
// player,
// Pets.getByID(config.getString("pet").lowercase()) ?: return false
// )
} }
} }

View File

@@ -3,12 +3,22 @@ package com.willfp.ecopets.libreforge
import com.willfp.eco.core.config.interfaces.Config import com.willfp.eco.core.config.interfaces.Config
import com.willfp.ecopets.api.EcoPetsAPI import com.willfp.ecopets.api.EcoPetsAPI
import com.willfp.ecopets.pets.Pets import com.willfp.ecopets.pets.Pets
import com.willfp.libreforge.Dispatcher
import com.willfp.libreforge.NoCompileData import com.willfp.libreforge.NoCompileData
import com.willfp.libreforge.ProvidedHolder
import com.willfp.libreforge.conditions.Condition import com.willfp.libreforge.conditions.Condition
import com.willfp.libreforge.get
import org.bukkit.entity.Player import org.bukkit.entity.Player
object ConditionHasPet : Condition<NoCompileData>("has_pet") { object ConditionHasPet : Condition<NoCompileData>("has_pet") {
override fun isMet(player: Player, config: Config, compileData: NoCompileData): Boolean { override fun isMet(
dispatcher: Dispatcher<*>,
config: Config,
holder: ProvidedHolder,
compileData: NoCompileData
): Boolean {
val player = dispatcher.get<Player>() ?: return false
return EcoPetsAPI.instance.hasPet( return EcoPetsAPI.instance.hasPet(
player, player,
Pets.getByID(config.getString("pet").lowercase()) ?: return false Pets.getByID(config.getString("pet").lowercase()) ?: return false

View File

@@ -4,9 +4,13 @@ import com.willfp.eco.core.config.interfaces.Config
import com.willfp.ecopets.api.EcoPetsAPI import com.willfp.ecopets.api.EcoPetsAPI
import com.willfp.ecopets.api.event.PlayerPetLevelUpEvent import com.willfp.ecopets.api.event.PlayerPetLevelUpEvent
import com.willfp.ecopets.pets.Pets import com.willfp.ecopets.pets.Pets
import com.willfp.libreforge.Dispatcher
import com.willfp.libreforge.NoCompileData import com.willfp.libreforge.NoCompileData
import com.willfp.libreforge.ProvidedHolder
import com.willfp.libreforge.arguments import com.willfp.libreforge.arguments
import com.willfp.libreforge.conditions.Condition import com.willfp.libreforge.conditions.Condition
import com.willfp.libreforge.get
import com.willfp.libreforge.toDispatcher
import com.willfp.libreforge.updateEffects import com.willfp.libreforge.updateEffects
import org.bukkit.entity.Player import org.bukkit.entity.Player
import org.bukkit.event.EventHandler import org.bukkit.event.EventHandler
@@ -20,10 +24,17 @@ object ConditionHasPetLevel : Condition<NoCompileData>("has_pet_level") {
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true) @EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
fun handle(event: PlayerPetLevelUpEvent) { fun handle(event: PlayerPetLevelUpEvent) {
event.player.updateEffects() event.player.toDispatcher().updateEffects()
} }
override fun isMet(player: Player, config: Config, compileData: NoCompileData): Boolean { override fun isMet(
dispatcher: Dispatcher<*>,
config: Config,
holder: ProvidedHolder,
compileData: NoCompileData
): Boolean {
val player = dispatcher.get<Player>() ?: return false
return EcoPetsAPI.instance.getPetLevel( return EcoPetsAPI.instance.getPetLevel(
player, player,
Pets.getByID(config.getString("pet").lowercase()) ?: return false Pets.getByID(config.getString("pet").lowercase()) ?: return false

View File

@@ -4,6 +4,7 @@ import com.willfp.ecopets.api.event.PlayerPetExpGainEvent
import com.willfp.ecopets.pets.Pet import com.willfp.ecopets.pets.Pet
import com.willfp.ecopets.pets.Pets import com.willfp.ecopets.pets.Pets
import com.willfp.libreforge.effects.templates.MultiMultiplierEffect import com.willfp.libreforge.effects.templates.MultiMultiplierEffect
import com.willfp.libreforge.toDispatcher
import org.bukkit.event.EventHandler import org.bukkit.event.EventHandler
object EffectPetXpMultiplier : MultiMultiplierEffect<Pet>("pet_xp_multiplier") { object EffectPetXpMultiplier : MultiMultiplierEffect<Pet>("pet_xp_multiplier") {
@@ -21,6 +22,6 @@ object EffectPetXpMultiplier : MultiMultiplierEffect<Pet>("pet_xp_multiplier") {
fun handle(event: PlayerPetExpGainEvent) { fun handle(event: PlayerPetExpGainEvent) {
val player = event.player val player = event.player
event.amount *= getMultiplier(player, event.pet) event.amount *= getMultiplier(player.toDispatcher(), event.pet)
} }
} }

View File

@@ -1,6 +1,7 @@
package com.willfp.ecopets.libreforge package com.willfp.ecopets.libreforge
import com.willfp.ecopets.api.event.PlayerPetExpGainEvent import com.willfp.ecopets.api.event.PlayerPetExpGainEvent
import com.willfp.libreforge.toDispatcher
import com.willfp.libreforge.triggers.Trigger import com.willfp.libreforge.triggers.Trigger
import com.willfp.libreforge.triggers.TriggerData import com.willfp.libreforge.triggers.TriggerData
import com.willfp.libreforge.triggers.TriggerParameter import com.willfp.libreforge.triggers.TriggerParameter
@@ -18,7 +19,7 @@ object TriggerGainPetXp : Trigger("gain_pet_xp") {
val player = event.player val player = event.player
this.dispatch( this.dispatch(
player, player.toDispatcher(),
TriggerData( TriggerData(
player = player, player = player,
location = player.location, location = player.location,

View File

@@ -1,6 +1,7 @@
package com.willfp.ecopets.libreforge package com.willfp.ecopets.libreforge
import com.willfp.ecopets.api.event.PlayerPetLevelUpEvent import com.willfp.ecopets.api.event.PlayerPetLevelUpEvent
import com.willfp.libreforge.toDispatcher
import com.willfp.libreforge.triggers.Trigger import com.willfp.libreforge.triggers.Trigger
import com.willfp.libreforge.triggers.TriggerData import com.willfp.libreforge.triggers.TriggerData
import com.willfp.libreforge.triggers.TriggerParameter import com.willfp.libreforge.triggers.TriggerParameter
@@ -18,7 +19,7 @@ object TriggerLevelUpPet : Trigger("level_up_pet") {
val player = event.player val player = event.player
this.dispatch( this.dispatch(
player, player.toDispatcher(),
TriggerData( TriggerData(
player = player, player = player,
location = player.location, location = player.location,

View File

@@ -1,5 +1,5 @@
#libreforge-updater #libreforge-updater
#Sat Oct 14 14:19:18 BST 2023 #Sun Nov 26 23:24:54 GMT 2023
kotlin.code.style=official kotlin.code.style=official
libreforge-version=4.37.0 libreforge-version=4.46.0
version=2.37.0 version=2.46.0