Custom default animation feature

This commit is contained in:
mani1232
2022-09-27 11:04:39 +02:00
parent c9755066b4
commit f10084d523
3 changed files with 10 additions and 2 deletions

View File

@@ -54,7 +54,7 @@ class EcoPetsPlugin : LibReforgePlugin() {
return listOf(
IntegrationLoader("ModelEngine") {
PetEntity.registerPetEntity("modelengine") { pet, id ->
ModelEnginePetEntity(pet, id)
ModelEnginePetEntity(pet, id, pet.entityAnimation)
}
}
)

View File

@@ -114,6 +114,8 @@ class Pet(
val entityTexture = config.getString("entity-texture")
val entityAnimation = config.getString("default-animation")
private val levelXpRequirements = listOf(0) + config.getInts("level-xp-requirements")
val maxLevel = levelXpRequirements.size

View File

@@ -7,12 +7,18 @@ import org.bukkit.entity.ArmorStand
class ModelEnginePetEntity(
pet: Pet,
private val modelID: String
private val modelID: String,
private val animationString: String,
) : PetEntity(pet) {
override fun spawn(location: Location): ArmorStand {
val stand = emptyArmorStandAt(location, pet)
val model = ModelEngineAPI.createActiveModel(modelID)
val animationHandler = model.animationHandler;
val modelAnimation = animationHandler.getAnimation(animationString);
if (modelAnimation != null) animationHandler.playAnimation(modelAnimation, true);
val modelled = ModelEngineAPI.createModeledEntity(stand)
modelled.addModel(model, true)