mirror of
https://github.com/Auxilor/Reforges.git
synced 2025-12-21 16:09:20 +00:00
Compare commits
20 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
89c9935801 | ||
|
|
e15d6be301 | ||
|
|
d75a301cfa | ||
|
|
319afce452 | ||
|
|
8932593683 | ||
|
|
3fa95a5576 | ||
|
|
b5ec89f5d4 | ||
|
|
508c1e1d66 | ||
|
|
d921254584 | ||
|
|
2160fb5acc | ||
|
|
536b1d9dbf | ||
|
|
cef4abcfad | ||
|
|
7414ce787a | ||
|
|
d90fcc0d1a | ||
|
|
84e02044e1 | ||
|
|
19097fb7b5 | ||
|
|
8d86487eb6 | ||
|
|
32bf727816 | ||
|
|
023ae3d10e | ||
|
|
070b95eb94 |
@@ -28,6 +28,7 @@ class CommandApply(
|
|||||||
if (sender is Player) {
|
if (sender is Player) {
|
||||||
val item = sender.inventory.itemInMainHand
|
val item = sender.inventory.itemInMainHand
|
||||||
item.reforge = reforge
|
item.reforge = reforge
|
||||||
|
reforge.runOnReforgeEffects(sender, item)
|
||||||
sender.sendMessage(
|
sender.sendMessage(
|
||||||
plugin.langYml.getMessage("applied-reforge")
|
plugin.langYml.getMessage("applied-reforge")
|
||||||
.replace("%reforge%", reforge.name)
|
.replace("%reforge%", reforge.name)
|
||||||
@@ -45,7 +46,10 @@ class CommandApply(
|
|||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
player.inventory.itemInMainHand.reforge = reforge
|
val item = player.inventory.itemInMainHand
|
||||||
|
|
||||||
|
item.reforge = reforge
|
||||||
|
reforge.runOnReforgeEffects(player, item)
|
||||||
sender.sendMessage(
|
sender.sendMessage(
|
||||||
plugin.langYml.getMessage("applied-reforge")
|
plugin.langYml.getMessage("applied-reforge")
|
||||||
.replace("%reforge%", reforge.name)
|
.replace("%reforge%", reforge.name)
|
||||||
|
|||||||
@@ -150,6 +150,8 @@ private class ActivatorSlot(
|
|||||||
item.timesReforged++
|
item.timesReforged++
|
||||||
item.reforge = reforge
|
item.reforge = reforge
|
||||||
|
|
||||||
|
reforge.runOnReforgeEffects(player, item)
|
||||||
|
|
||||||
if (usedStone) {
|
if (usedStone) {
|
||||||
val stone = reforgeStone[player]
|
val stone = reforgeStone[player]
|
||||||
stone?.amount = stone?.amount?.minus(1) ?: 0
|
stone?.amount = stone?.amount?.minus(1) ?: 0
|
||||||
|
|||||||
@@ -11,12 +11,15 @@ import com.willfp.eco.core.recipe.Recipes
|
|||||||
import com.willfp.eco.core.registry.Registrable
|
import com.willfp.eco.core.registry.Registrable
|
||||||
import com.willfp.eco.util.StringUtils
|
import com.willfp.eco.util.StringUtils
|
||||||
import com.willfp.libreforge.Holder
|
import com.willfp.libreforge.Holder
|
||||||
|
import com.willfp.libreforge.ItemProvidedHolder
|
||||||
import com.willfp.libreforge.ViolationContext
|
import com.willfp.libreforge.ViolationContext
|
||||||
import com.willfp.libreforge.conditions.Conditions
|
import com.willfp.libreforge.conditions.Conditions
|
||||||
import com.willfp.libreforge.effects.Effects
|
import com.willfp.libreforge.effects.Effects
|
||||||
|
import com.willfp.libreforge.triggers.TriggerData
|
||||||
import com.willfp.reforges.ReforgesPlugin
|
import com.willfp.reforges.ReforgesPlugin
|
||||||
import com.willfp.reforges.util.reforgeStone
|
import com.willfp.reforges.util.reforgeStone
|
||||||
import net.kyori.adventure.text.format.TextDecoration
|
import net.kyori.adventure.text.format.TextDecoration
|
||||||
|
import org.bukkit.entity.Player
|
||||||
import org.bukkit.inventory.ItemStack
|
import org.bukkit.inventory.ItemStack
|
||||||
import java.util.Objects
|
import java.util.Objects
|
||||||
|
|
||||||
@@ -73,6 +76,11 @@ class Reforge(
|
|||||||
}
|
}
|
||||||
} else null
|
} else null
|
||||||
|
|
||||||
|
private val onReforgeEffects = Effects.compileChain(
|
||||||
|
config.getSubsections("on-reforge-effects"),
|
||||||
|
ViolationContext(plugin, "Reforge $id").with("on-reforge-effects")
|
||||||
|
)
|
||||||
|
|
||||||
init {
|
init {
|
||||||
stone.reforgeStone = this
|
stone.reforgeStone = this
|
||||||
|
|
||||||
@@ -98,6 +106,17 @@ class Reforge(
|
|||||||
return targets.any { target -> target.items.any { it.matches(item) } }
|
return targets.any { target -> target.items.any { it.matches(item) } }
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun runOnReforgeEffects(player: Player, item: ItemStack) {
|
||||||
|
onReforgeEffects?.trigger(
|
||||||
|
player,
|
||||||
|
TriggerData(
|
||||||
|
holder = ItemProvidedHolder(this, item),
|
||||||
|
player = player,
|
||||||
|
item = item
|
||||||
|
)
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
override fun getID(): String {
|
override fun getID(): String {
|
||||||
return this.id.key
|
return this.id.key
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -54,3 +54,6 @@ effects:
|
|||||||
|
|
||||||
# The conditions required to use the reforge
|
# The conditions required to use the reforge
|
||||||
conditions: [ ]
|
conditions: [ ]
|
||||||
|
|
||||||
|
# Effects to run when the reforge is applied to an item.
|
||||||
|
on-reforge-effects: [ ]
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#libreforge-updater
|
#libreforge-updater
|
||||||
#Wed Aug 23 15:32:20 BST 2023
|
#Fri Nov 10 13:58:55 GMT 2023
|
||||||
kotlin.code.style=official
|
kotlin.code.style=official
|
||||||
libreforge-version=4.29.2
|
libreforge-version=4.41.0
|
||||||
version=6.29.2
|
version=6.41.0
|
||||||
|
|||||||
Reference in New Issue
Block a user