9
0
mirror of https://github.com/Auxilor/EcoMobs.git synced 2025-12-19 15:09:17 +00:00

Compare commits

...

55 Commits

Author SHA1 Message Date
Will FP
27215efaf6 libreforge-updater 2023-12-24 14:54:39 +01:00
Auxilor
e82cd59d72 libreforge-updater 2023-12-20 15:56:34 +00:00
Will FP
6e384c248d libreforge-updater 2023-12-14 16:13:22 +00:00
Will FP
e83cafb752 libreforge-updater 2023-12-11 12:12:40 +00:00
Will FP
a4aa97006a libreforge-updater 2023-12-07 17:25:29 +00:00
Will FP
3d1dce4567 Switched to ModelEngineBridge 2023-12-03 16:04:46 +00:00
Will FP
45ef970521 libreforge-updater 2023-12-03 15:58:59 +00:00
Will FP
16c9640163 libreforge-updater 2023-11-30 14:27:19 +00:00
Will FP
8ed4dbc9d3 libreforge-updater 2023-11-26 23:24:25 +00:00
Will FP
3805f8e2dd libreforge-updater 2023-11-23 13:21:18 +00:00
Auxilor
97e0832f7a libreforge-updater 2023-11-21 22:41:27 +00:00
Auxilor
99a3a1f4a9 libreforge-updater 2023-11-19 14:14:11 +00:00
Auxilor
87989ef899 libreforge-updater 2023-11-17 19:02:19 +00:00
Auxilor
754ab3b6fe libreforge-updater 2023-11-11 17:58:46 +00:00
Auxilor
8b0dfd4d8c libreforge-updater 2023-11-10 13:59:16 +00:00
Auxilor
bb73e2e8f7 libreforge-updater 2023-11-05 13:41:54 +00:00
Auxilor
4ab79995b3 libreforge-updater 2023-10-30 13:30:55 +00:00
Auxilor
4e3ba7321a libreforge-updater 2023-10-28 14:15:22 +01:00
Auxilor
0dbee3cead libreforge-updater 2023-10-24 15:39:20 +01:00
Auxilor
5c8cb3baf3 libreforge-updater 2023-10-19 12:52:24 +01:00
Auxilor
314d977a8b libreforge-updater 2023-10-14 14:20:21 +01:00
Auxilor
93c435be9e libreforge-updater 2023-10-14 14:18:59 +01:00
Auxilor
5293dd2095 libreforge-updater 2023-10-02 11:54:11 +01:00
Auxilor
1a9a9afab3 libreforge-updater 2023-09-26 14:45:45 +01:00
Auxilor
934de35447 libreforge-updater 2023-09-20 15:33:42 +01:00
Auxilor
909eaab967 libreforge-updater 2023-09-17 11:20:07 +01:00
Auxilor
27ddb0b97f libreforge-updater 2023-09-13 15:08:42 +01:00
Auxilor
6b0708cb5d libreforge-updater 2023-09-07 16:01:22 +01:00
Auxilor
c8bd1b379d libreforge-updater 2023-09-02 17:34:12 +01:00
Auxilor
683b3fe082 libreforge-updater 2023-08-31 16:59:07 +01:00
Auxilor
0b95669a35 libreforge-updater 2023-08-30 11:31:06 +01:00
Auxilor
f6a9493645 libreforge-updater 2023-08-26 18:11:12 +01:00
Auxilor
fb3aae24e0 libreforge-updater 2023-08-23 15:31:26 +01:00
Auxilor
9c05965b76 libreforge-updater 2023-08-19 15:32:18 +01:00
Auxilor
fdc12dda3d libreforge-updater 2023-08-15 18:52:11 +01:00
Auxilor
f79aad596f libreforge-updater 2023-08-13 14:42:18 +01:00
Auxilor
b29de7effb libreforge-updater 2023-08-10 19:59:11 +01:00
Auxilor
45725b95fe libreforge-updater 2023-08-10 19:57:00 +01:00
Auxilor
a350769ff2 libreforge-updater 2023-08-09 15:58:19 +01:00
Auxilor
9028db8309 libreforge-updater 2023-08-09 14:40:13 +01:00
Auxilor
1535ab476e libreforge-updater 2023-08-09 14:36:57 +01:00
Auxilor
908d929718 libreforge-updater 2023-08-08 17:58:57 +01:00
Auxilor
f410216ab8 libreforge-updater 2023-08-05 21:06:36 +01:00
Auxilor
26cc3be8a7 libreforge-updater 2023-07-27 15:21:12 +01:00
Auxilor
91b85fea88 libreforge-updater 2023-07-27 15:18:31 +01:00
Auxilor
b16e427da6 libreforge-updater 2023-07-25 14:37:47 +01:00
Auxilor
16df926b84 libreforge-updater 2023-07-23 11:40:00 +01:00
Auxilor
16336c5716 libreforge-updater 2023-07-22 14:59:25 +01:00
Auxilor
776b8718b2 libreforge-updater 2023-07-21 12:32:38 +01:00
Auxilor
2dec97e473 libreforge-updater 2023-07-20 13:06:36 +01:00
Auxilor
c177543653 libreforge-updater 2023-07-19 14:14:25 +01:00
Auxilor
aeae0d3737 libreforge-updater 2023-07-17 18:32:06 +01:00
Auxilor
710fb6d2e4 libreforge-updater 2023-07-16 13:32:53 +01:00
Auxilor
9a903e285e libreforge-updater 2023-07-12 13:07:51 +01:00
Auxilor
a033751019 libreforge-updater 2023-07-09 17:24:14 +01:00
13 changed files with 30 additions and 92 deletions

View File

@@ -2,7 +2,7 @@ plugins {
java
`java-library`
`maven-publish`
kotlin("jvm") version "1.7.10"
kotlin("jvm") version "1.9.20"
id("com.github.johnrengelman.shadow") version "8.0.0"
id("com.willfp.libreforge-gradle-plugin") version "1.0.0"
}
@@ -40,7 +40,7 @@ allprojects {
dependencies {
compileOnly("com.willfp:eco:6.56.0")
compileOnly("org.jetbrains:annotations:23.0.0")
compileOnly("org.jetbrains.kotlin:kotlin-stdlib:1.7.10")
compileOnly("org.jetbrains.kotlin:kotlin-stdlib:1.9.20")
}
java {
@@ -51,6 +51,7 @@ allprojects {
tasks {
shadowJar {
relocate("com.willfp.libreforge.loader", "com.willfp.ecobosses.libreforge.loader")
relocate("com.willfp.modelenginebridge", "com.willfp.ecobosses.modelenginebridge")
}
compileKotlin {

View File

@@ -4,7 +4,7 @@ version = rootProject.version
dependencies {
compileOnly("io.papermc.paper:paper-api:1.19.3-R0.1-SNAPSHOT")
compileOnly("com.github.lokka30:LevelledMobs:3.1.4")
compileOnly("com.ticxo.modelengine:api:R3.1.6")
implementation("com.willfp:ModelEngineBridge:1.2.0")
}
publishing {

View File

@@ -30,7 +30,9 @@ import com.willfp.libreforge.loader.LibreforgePlugin
import com.willfp.libreforge.loader.configs.ConfigCategory
import com.willfp.libreforge.mutators.Mutators
import com.willfp.libreforge.registerHolderProvider
import com.willfp.libreforge.registerSpecificHolderProvider
import com.willfp.libreforge.triggers.Triggers
import org.bukkit.entity.Player
import org.bukkit.event.Listener
class EcoBossesPlugin : LibreforgePlugin() {
@@ -52,7 +54,9 @@ class EcoBossesPlugin : LibreforgePlugin() {
}
override fun handleEnable() {
registerHolderProvider { it.bossHolders }
registerSpecificHolderProvider<Player> {
it.bossHolders
}
}
override fun handleReload() {

View File

@@ -1,6 +1,5 @@
package com.willfp.ecobosses.bosses
import com.ticxo.modelengine.api.ModelEngineAPI
import com.willfp.eco.core.EcoPlugin
import com.willfp.eco.core.config.interfaces.Config
import com.willfp.eco.core.entities.CustomEntity
@@ -42,6 +41,7 @@ import com.willfp.libreforge.Holder
import com.willfp.libreforge.ViolationContext
import com.willfp.libreforge.conditions.Conditions
import com.willfp.libreforge.effects.Effects
import com.willfp.modelenginebridge.ModelEngineBridge
import net.kyori.adventure.bossbar.BossBar
import org.bukkit.Bukkit
import org.bukkit.Location
@@ -306,8 +306,6 @@ class EcoBoss(
private val modelEngineID = config.getStringOrNull("model-engine-id")
private val modelEngineAnimation = config.getStringOrNull("model-engine-animation")
private val currentlyAlive = mutableMapOf<UUID, LivingEcoBoss>()
override val conditions = Conditions.compile(
@@ -357,32 +355,15 @@ class EcoBoss(
}
if (modelEngineID != null && Bukkit.getPluginManager().isPluginEnabled("ModelEngine")) {
val model = ModelEngineAPI.createActiveModel(modelEngineID)
val model = ModelEngineBridge.instance.createActiveModel(modelEngineID)
if (model == null) {
plugin.logger.warning("Invalid Model Engine ID for boss $id")
} else {
val modelled = ModelEngineBridge.instance.createModeledEntity(mob)
modelled.addModel(model)
modelled.isBaseEntityVisible = false
}
if (modelEngineAnimation != null) {
val animationHandler = model.animationHandler
val animationProperty = animationHandler.getAnimation(modelEngineAnimation)
if (animationProperty != null) {
animationHandler.playAnimation(animationProperty, true)
} else {
plugin.logger.warning("Animation $modelEngineAnimation not found in model $modelEngineID, defaulting to walk!")
val animationPropertyWalk = animationHandler.getAnimation("walk")
if (animationPropertyWalk != null) {
animationHandler.playAnimation(animationPropertyWalk, true)
} else {
plugin.logger.warning("Walk animation not found in $modelEngineID!")
}
}
}
val modelled = ModelEngineAPI.createModeledEntity(mob)
modelled.addModel(model, true)
modelled.isBaseEntityVisible = false
}
val boss = LivingEcoBoss(

View File

@@ -6,6 +6,7 @@ import com.willfp.eco.core.display.DisplayModule
import com.willfp.eco.core.display.DisplayPriority
import com.willfp.eco.core.fast.fast
import com.willfp.libreforge.SimpleProvidedHolder
import com.willfp.libreforge.toDispatcher
import org.bukkit.entity.Player
import org.bukkit.inventory.ItemStack
@@ -27,7 +28,7 @@ class EggDisplay(
val egg = itemStack.bossEgg ?: return
val lines = egg.spawnConditions
.filterNot { it.isMet(player, SimpleProvidedHolder(egg)) }
.filterNot { it.isMet(player.toDispatcher(), SimpleProvidedHolder(egg)) }
.map { it.notMetLines.map { line -> Display.PREFIX + line } }
.flatten()

View File

@@ -4,6 +4,7 @@ import com.willfp.ecobosses.bosses.Bosses
import com.willfp.ecobosses.bosses.EcoBoss
import com.willfp.ecobosses.events.BossTryDropItemEvent
import com.willfp.libreforge.effects.templates.MultiMultiplierEffect
import com.willfp.libreforge.toDispatcher
import org.bukkit.event.EventHandler
object EffectBossDropChanceMultiplier : MultiMultiplierEffect<EcoBoss>("boss_drop_chance_multiplier") {
@@ -21,7 +22,7 @@ object EffectBossDropChanceMultiplier : MultiMultiplierEffect<EcoBoss>("boss_dro
fun handle(event: BossTryDropItemEvent) {
val player = event.player ?: return
val multiplier = getMultiplier(player, event.boss)
val multiplier = getMultiplier(player.toDispatcher(), event.boss)
event.chance *= multiplier
}

View File

@@ -1,6 +1,7 @@
package com.willfp.ecobosses.libreforge
import com.willfp.ecobosses.events.BossKillEvent
import com.willfp.libreforge.toDispatcher
import com.willfp.libreforge.triggers.Trigger
import com.willfp.libreforge.triggers.TriggerData
import com.willfp.libreforge.triggers.TriggerParameter
@@ -20,7 +21,7 @@ object TriggerKillBoss : Trigger("kill_boss") {
val entity = event.boss.entity
this.dispatch(
killer,
killer.toDispatcher(),
TriggerData(
player = killer,
victim = entity,

View File

@@ -1,6 +1,7 @@
package com.willfp.ecobosses.libreforge
import com.willfp.ecobosses.events.BossSpawnEvent
import com.willfp.libreforge.toDispatcher
import com.willfp.libreforge.triggers.Trigger
import com.willfp.libreforge.triggers.TriggerData
import com.willfp.libreforge.triggers.TriggerParameter
@@ -18,7 +19,7 @@ object TriggerSpawnBoss : Trigger("spawn_boss") {
val location = event.location
this.dispatch(
player,
player.toDispatcher(),
TriggerData(
player = player,
location = location

View File

@@ -4,6 +4,7 @@ import com.willfp.ecobosses.EcoBossesPlugin
import com.willfp.ecobosses.bosses.bossEgg
import com.willfp.ecobosses.events.BossSpawnEvent
import com.willfp.libreforge.SimpleProvidedHolder
import com.willfp.libreforge.toDispatcher
import org.bukkit.Bukkit
import org.bukkit.Location
import org.bukkit.block.Container
@@ -79,7 +80,7 @@ class SpawnEggHandler(
}
if (player != null) {
if (!boss.spawnConditions.areMet(player, SimpleProvidedHolder(boss))) {
if (!boss.spawnConditions.areMet(player.toDispatcher(), SimpleProvidedHolder(boss))) {
return false
}
}

View File

@@ -5,6 +5,7 @@ import com.willfp.ecobosses.bosses.Bosses
import com.willfp.ecobosses.events.BossSpawnEvent
import com.willfp.ecobosses.util.SpawnTotem
import com.willfp.libreforge.SimpleProvidedHolder
import com.willfp.libreforge.toDispatcher
import org.bukkit.Bukkit
import org.bukkit.Material
import org.bukkit.block.Block
@@ -55,7 +56,7 @@ class SpawnTotemHandler : Listener {
val player = event.player
if (!boss.spawnConditions.areMet(player, SimpleProvidedHolder(boss))) {
if (!boss.spawnConditions.areMet(player.toDispatcher(), SimpleProvidedHolder(boss))) {
return
}

View File

@@ -1,7 +1,6 @@
mob: illusioner attack-damage:50 health:600 hand:"iron_sword sharpness:5"
model-engine-id: ""
model-engine-animation: ""
display-name: "&9Illusioner &7| &c%health%♥ &7| &e%time%"

View File

@@ -1,53 +0,0 @@
name: ${pluginName}
version: ${version}
main: com.willfp.ecobosses.EcoBossesPlugin
api-version: 1.19
dependencies:
- name: eco
required: true
bootstrap: false
- name: libreforge
required: false
bootstrap: false
load-after:
- name: eco
bootstrap: false
permissions:
ecobosses.*:
description: All ecobosses permissions
default: op
children:
ecobosses.command.*: true
ecobosses.command.*:
description: All ecobosses commands
default: op
children:
ecobosses.command.ecobosses: true
ecobosses.command.reload: true
ecobosses.command.spawn: true
ecobosses.command.give: true
ecobosses.command.ecobosses:
description: Allows the use of /ecobosses
default: true
ecobosses.command.give:
description: Allows the use of /ecobosses give
default: op
ecobosses.command.spawn:
description: Allows the use of /ecobosses spawn
default: op
ecobosses.command.killall:
description: Allows the use of /ecobosses killall
default: op
ecobosses.command.reload:
description: Allows the use of /ecobosses reload
default: op

View File

@@ -1,5 +1,5 @@
#libreforge-updater
#Thu Jul 06 18:46:37 BST 2023
#Sun Dec 24 14:54:39 CET 2023
kotlin.code.style=official
libreforge-version=4.21.1
version=9.20.1
libreforge-version=4.51.0
version=9.50.0