mirror of
https://github.com/Xiao-MoMi/craft-engine.git
synced 2025-12-19 15:09:15 +00:00
feat(compatibility): 添加多个插件的兼容性支持
- 兼容 AureliumSkills、McMMO、MMOCore、Jobs、EcoSkills 和 EcoJobs 的等级支持 - 兼容 FreeMinecraftModels 模型放置模型 - 兼容从 CustomFishing 获取物品
This commit is contained in:
@@ -11,6 +11,10 @@ repositories {
|
|||||||
maven("https://nexus.phoenixdevt.fr/repository/maven-public/") // mmoitems
|
maven("https://nexus.phoenixdevt.fr/repository/maven-public/") // mmoitems
|
||||||
maven("https://repo.viaversion.com") // via
|
maven("https://repo.viaversion.com") // via
|
||||||
maven("https://repo.skriptlang.org/releases/") // skript
|
maven("https://repo.skriptlang.org/releases/") // skript
|
||||||
|
maven("https://nexus.neetgames.com/repository/maven-releases/") // mcmmo
|
||||||
|
maven("https://repo.dmulloy2.net/repository/public/") // mcmmo required
|
||||||
|
maven("https://repo.auxilor.io/repository/maven-public/") // eco
|
||||||
|
maven("https://repo.magmaguy.com/releases")
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
@@ -49,6 +53,23 @@ dependencies {
|
|||||||
compileOnly("com.fastasyncworldedit:FastAsyncWorldEdit-Bukkit") { isTransitive = false }
|
compileOnly("com.fastasyncworldedit:FastAsyncWorldEdit-Bukkit") { isTransitive = false }
|
||||||
// MythicMobs
|
// MythicMobs
|
||||||
compileOnly("io.lumine:Mythic-Dist:5.9.0")
|
compileOnly("io.lumine:Mythic-Dist:5.9.0")
|
||||||
|
// McMMO
|
||||||
|
compileOnly("com.gmail.nossr50.mcMMO:mcMMO:2.2.038")
|
||||||
|
// MMOCore
|
||||||
|
compileOnly("net.Indyuce:MMOCore-API:1.12.1-SNAPSHOT")
|
||||||
|
// JobsReborn
|
||||||
|
compileOnly("com.github.Zrips:Jobs:v5.2.2.3")
|
||||||
|
// CustomFishing
|
||||||
|
compileOnly("net.momirealms:custom-fishing:2.3.3")
|
||||||
|
// eco
|
||||||
|
compileOnly("com.willfp:eco:6.70.1")
|
||||||
|
compileOnly("com.willfp:EcoJobs:3.56.1")
|
||||||
|
compileOnly("com.willfp:EcoSkills:3.46.1")
|
||||||
|
compileOnly("com.willfp:libreforge:4.58.1")
|
||||||
|
// AureliumSkills
|
||||||
|
compileOnly("com.github.Archy-X:AureliumSkills:Beta1.3.21")
|
||||||
|
// FreeMinecraftModels
|
||||||
|
compileOnly("com.magmaguy:FreeMinecraftModels:2.1.0")
|
||||||
}
|
}
|
||||||
|
|
||||||
java {
|
java {
|
||||||
|
|||||||
@@ -1,14 +1,16 @@
|
|||||||
package net.momirealms.craftengine.bukkit.compatibility;
|
package net.momirealms.craftengine.bukkit.compatibility;
|
||||||
|
|
||||||
import net.momirealms.craftengine.bukkit.block.BukkitBlockManager;
|
import net.momirealms.craftengine.bukkit.block.BukkitBlockManager;
|
||||||
import net.momirealms.craftengine.bukkit.compatibility.bettermodel.BetterModelModel;
|
import net.momirealms.craftengine.bukkit.compatibility.model.bettermodel.BetterModelModel;
|
||||||
|
import net.momirealms.craftengine.bukkit.compatibility.item.CustomFishingProvider;
|
||||||
import net.momirealms.craftengine.bukkit.compatibility.item.MMOItemsProvider;
|
import net.momirealms.craftengine.bukkit.compatibility.item.MMOItemsProvider;
|
||||||
import net.momirealms.craftengine.bukkit.compatibility.item.MythicMobsProvider;
|
import net.momirealms.craftengine.bukkit.compatibility.item.MythicMobsProvider;
|
||||||
import net.momirealms.craftengine.bukkit.compatibility.item.NeigeItemsProvider;
|
import net.momirealms.craftengine.bukkit.compatibility.item.NeigeItemsProvider;
|
||||||
import net.momirealms.craftengine.bukkit.compatibility.legacy.slimeworld.LegacySlimeFormatStorageAdaptor;
|
import net.momirealms.craftengine.bukkit.compatibility.legacy.slimeworld.LegacySlimeFormatStorageAdaptor;
|
||||||
import net.momirealms.craftengine.bukkit.compatibility.leveler.AuraSkillsLevelerProvider;
|
import net.momirealms.craftengine.bukkit.compatibility.leveler.*;
|
||||||
import net.momirealms.craftengine.bukkit.compatibility.modelengine.ModelEngineModel;
|
import net.momirealms.craftengine.bukkit.compatibility.model.freeminecraftmodels.FreeMinecraftModelsModel;
|
||||||
import net.momirealms.craftengine.bukkit.compatibility.modelengine.ModelEngineUtils;
|
import net.momirealms.craftengine.bukkit.compatibility.model.modelengine.ModelEngineModel;
|
||||||
|
import net.momirealms.craftengine.bukkit.compatibility.model.modelengine.ModelEngineUtils;
|
||||||
import net.momirealms.craftengine.bukkit.compatibility.mythicmobs.MythicMobsListener;
|
import net.momirealms.craftengine.bukkit.compatibility.mythicmobs.MythicMobsListener;
|
||||||
import net.momirealms.craftengine.bukkit.compatibility.papi.PlaceholderAPIUtils;
|
import net.momirealms.craftengine.bukkit.compatibility.papi.PlaceholderAPIUtils;
|
||||||
import net.momirealms.craftengine.bukkit.compatibility.permission.LuckPermsEventListeners;
|
import net.momirealms.craftengine.bukkit.compatibility.permission.LuckPermsEventListeners;
|
||||||
@@ -43,7 +45,8 @@ public class BukkitCompatibilityManager implements CompatibilityManager {
|
|||||||
this.plugin = plugin;
|
this.plugin = plugin;
|
||||||
this.modelProviders = new HashMap<>(Map.of(
|
this.modelProviders = new HashMap<>(Map.of(
|
||||||
"ModelEngine", ModelEngineModel::new,
|
"ModelEngine", ModelEngineModel::new,
|
||||||
"BetterModel", BetterModelModel::new
|
"BetterModel", BetterModelModel::new,
|
||||||
|
"FreeMinecraftModels", FreeMinecraftModelsModel::new
|
||||||
));
|
));
|
||||||
this.levelerProviders = new HashMap<>();
|
this.levelerProviders = new HashMap<>();
|
||||||
}
|
}
|
||||||
@@ -105,6 +108,29 @@ public class BukkitCompatibilityManager implements CompatibilityManager {
|
|||||||
this.registerLevelerProvider("AuraSkills", new AuraSkillsLevelerProvider());
|
this.registerLevelerProvider("AuraSkills", new AuraSkillsLevelerProvider());
|
||||||
logHook("AuraSkills");
|
logHook("AuraSkills");
|
||||||
}
|
}
|
||||||
|
if (this.isPluginEnabled("AureliumSkills")) {
|
||||||
|
this.registerLevelerProvider("AureliumSkills", new AureliumSkillsLevelerProvider());
|
||||||
|
}
|
||||||
|
if (this.isPluginEnabled("McMMO")) {
|
||||||
|
this.registerLevelerProvider("McMMO", new McMMOLevelerProvider());
|
||||||
|
logHook("McMMO");
|
||||||
|
}
|
||||||
|
if (this.isPluginEnabled("MMOCore")) {
|
||||||
|
this.registerLevelerProvider("MMOCore", new MMOCoreLevelerProvider());
|
||||||
|
logHook("MMOCore");
|
||||||
|
}
|
||||||
|
if (this.isPluginEnabled("Jobs")) {
|
||||||
|
registerLevelerProvider("Jobs", new JobsRebornLevelerProvider());
|
||||||
|
logHook("Jobs");
|
||||||
|
}
|
||||||
|
if (this.isPluginEnabled("EcoSkills")) {
|
||||||
|
registerLevelerProvider("EcoSkills", new EcoSkillsLevelerProvider());
|
||||||
|
logHook("EcoSkills");
|
||||||
|
}
|
||||||
|
if (this.isPluginEnabled("EcoJobs")) {
|
||||||
|
registerLevelerProvider("EcoJobs", new EcoJobsLevelerProvider());
|
||||||
|
logHook("EcoJobs");
|
||||||
|
}
|
||||||
if (this.isPluginEnabled("MythicMobs")) {
|
if (this.isPluginEnabled("MythicMobs")) {
|
||||||
BukkitItemManager.instance().registerExternalItemProvider(new MythicMobsProvider());
|
BukkitItemManager.instance().registerExternalItemProvider(new MythicMobsProvider());
|
||||||
new MythicMobsListener(this.plugin);
|
new MythicMobsListener(this.plugin);
|
||||||
@@ -231,6 +257,10 @@ public class BukkitCompatibilityManager implements CompatibilityManager {
|
|||||||
itemManager.registerExternalItemProvider(new MMOItemsProvider());
|
itemManager.registerExternalItemProvider(new MMOItemsProvider());
|
||||||
logHook("MMOItems");
|
logHook("MMOItems");
|
||||||
}
|
}
|
||||||
|
if (this.isPluginEnabled("CustomFishing")) {
|
||||||
|
itemManager.registerExternalItemProvider(new CustomFishingProvider());
|
||||||
|
logHook("CustomFishing");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private Plugin getPlugin(String name) {
|
private Plugin getPlugin(String name) {
|
||||||
|
|||||||
@@ -0,0 +1,23 @@
|
|||||||
|
package net.momirealms.craftengine.bukkit.compatibility.item;
|
||||||
|
|
||||||
|
import net.momirealms.craftengine.core.item.ExternalItemProvider;
|
||||||
|
import net.momirealms.craftengine.core.item.ItemBuildContext;
|
||||||
|
import net.momirealms.customfishing.api.BukkitCustomFishingPlugin;
|
||||||
|
import net.momirealms.customfishing.api.mechanic.context.Context;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
|
import org.bukkit.inventory.ItemStack;
|
||||||
|
import org.jetbrains.annotations.Nullable;
|
||||||
|
|
||||||
|
public class CustomFishingProvider implements ExternalItemProvider<ItemStack> {
|
||||||
|
@Override
|
||||||
|
public String plugin() {
|
||||||
|
return "CustomFishing";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Nullable
|
||||||
|
@Override
|
||||||
|
public ItemStack build(String id, ItemBuildContext context) {
|
||||||
|
return BukkitCustomFishingPlugin.getInstance().getItemManager()
|
||||||
|
.buildInternal(Context.player(((Player) context.player().platformPlayer())), id);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,27 @@
|
|||||||
|
package net.momirealms.craftengine.bukkit.compatibility.leveler;
|
||||||
|
|
||||||
|
import com.archyx.aureliumskills.api.AureliumAPI;
|
||||||
|
import com.archyx.aureliumskills.leveler.Leveler;
|
||||||
|
import com.archyx.aureliumskills.skills.SkillRegistry;
|
||||||
|
import net.momirealms.craftengine.core.entity.player.Player;
|
||||||
|
import net.momirealms.craftengine.core.plugin.compatibility.LevelerProvider;
|
||||||
|
|
||||||
|
public class AureliumSkillsLevelerProvider implements LevelerProvider {
|
||||||
|
private final Leveler leveler;
|
||||||
|
private final SkillRegistry skillRegistry;
|
||||||
|
|
||||||
|
public AureliumSkillsLevelerProvider() {
|
||||||
|
this.leveler = AureliumAPI.getPlugin().getLeveler();
|
||||||
|
this.skillRegistry = AureliumAPI.getPlugin().getSkillRegistry();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addExp(Player player, String target, double amount) {
|
||||||
|
this.leveler.addXp(((org.bukkit.entity.Player) player.platformPlayer()), this.skillRegistry.getSkill(target), amount);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getLevel(Player player, String target) {
|
||||||
|
return AureliumAPI.getSkillLevel(((org.bukkit.entity.Player) player.platformPlayer()), this.skillRegistry.getSkill(target));
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,28 @@
|
|||||||
|
package net.momirealms.craftengine.bukkit.compatibility.leveler;
|
||||||
|
|
||||||
|
import com.willfp.ecojobs.api.EcoJobsAPI;
|
||||||
|
import com.willfp.ecojobs.jobs.Job;
|
||||||
|
import com.willfp.ecojobs.jobs.Jobs;
|
||||||
|
import net.momirealms.craftengine.core.entity.player.Player;
|
||||||
|
import net.momirealms.craftengine.core.plugin.compatibility.LevelerProvider;
|
||||||
|
|
||||||
|
public class EcoJobsLevelerProvider implements LevelerProvider {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addExp(Player player, String target, double amount) {
|
||||||
|
org.bukkit.entity.Player bukkitPlayer = (org.bukkit.entity.Player) player.platformPlayer();
|
||||||
|
for (Job job : EcoJobsAPI.getActiveJobs(bukkitPlayer)) {
|
||||||
|
if (job.getId().equals(target)) {
|
||||||
|
EcoJobsAPI.giveJobExperience(bukkitPlayer, job, amount);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getLevel(Player player, String target) {
|
||||||
|
Job job = Jobs.getByID(target);
|
||||||
|
if (job == null) return 0;
|
||||||
|
return EcoJobsAPI.getJobLevel(((org.bukkit.entity.Player) player.platformPlayer()), job);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,21 @@
|
|||||||
|
package net.momirealms.craftengine.bukkit.compatibility.leveler;
|
||||||
|
|
||||||
|
import com.willfp.ecoskills.api.EcoSkillsAPI;
|
||||||
|
import com.willfp.ecoskills.skills.Skills;
|
||||||
|
import net.momirealms.craftengine.core.entity.player.Player;
|
||||||
|
import net.momirealms.craftengine.core.plugin.compatibility.LevelerProvider;
|
||||||
|
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
|
public class EcoSkillsLevelerProvider implements LevelerProvider {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addExp(Player player, String target, double amount) {
|
||||||
|
EcoSkillsAPI.gainSkillXP(((org.bukkit.entity.Player) player.platformPlayer()), Objects.requireNonNull(Skills.INSTANCE.getByID(target)), amount);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getLevel(Player player, String target) {
|
||||||
|
return EcoSkillsAPI.getSkillLevel(((org.bukkit.entity.Player) player.platformPlayer()), Objects.requireNonNull(Skills.INSTANCE.getByID(target)));
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
package net.momirealms.craftengine.bukkit.compatibility.leveler;
|
||||||
|
|
||||||
|
import com.gamingmesh.jobs.Jobs;
|
||||||
|
import com.gamingmesh.jobs.container.Job;
|
||||||
|
import com.gamingmesh.jobs.container.JobProgression;
|
||||||
|
import com.gamingmesh.jobs.container.JobsPlayer;
|
||||||
|
import net.momirealms.craftengine.core.entity.player.Player;
|
||||||
|
import net.momirealms.craftengine.core.plugin.compatibility.LevelerProvider;
|
||||||
|
|
||||||
|
public class JobsRebornLevelerProvider implements LevelerProvider {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addExp(Player player, String target, double amount) {
|
||||||
|
JobsPlayer jobsPlayer = Jobs.getPlayerManager().getJobsPlayer(player.uuid());
|
||||||
|
Job job = Jobs.getJob(target);
|
||||||
|
if (jobsPlayer != null && jobsPlayer.isInJob(job)) {
|
||||||
|
Jobs.getPlayerManager().addExperience(jobsPlayer, job, amount);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getLevel(Player player, String target) {
|
||||||
|
JobsPlayer jobsPlayer = Jobs.getPlayerManager().getJobsPlayer(player.uuid());
|
||||||
|
if (jobsPlayer != null) {
|
||||||
|
JobProgression jobProgression = jobsPlayer.getJobProgression(Jobs.getJob(target));
|
||||||
|
return jobProgression.getLevel();
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
package net.momirealms.craftengine.bukkit.compatibility.leveler;
|
||||||
|
|
||||||
|
import net.Indyuce.mmocore.MMOCore;
|
||||||
|
import net.Indyuce.mmocore.api.player.PlayerData;
|
||||||
|
import net.Indyuce.mmocore.experience.EXPSource;
|
||||||
|
import net.momirealms.craftengine.core.entity.player.Player;
|
||||||
|
import net.momirealms.craftengine.core.plugin.compatibility.LevelerProvider;
|
||||||
|
|
||||||
|
public class MMOCoreLevelerProvider implements LevelerProvider {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addExp(Player player, String target, double amount) {
|
||||||
|
MMOCore.plugin.professionManager.get(target).giveExperience(PlayerData.get(player.uuid()), amount, null , EXPSource.OTHER);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getLevel(Player player, String target) {
|
||||||
|
return PlayerData.get(player.uuid()).getCollectionSkills().getLevel(MMOCore.plugin.professionManager.get(target));
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
package net.momirealms.craftengine.bukkit.compatibility.leveler;
|
||||||
|
|
||||||
|
import com.gmail.nossr50.api.ExperienceAPI;
|
||||||
|
import com.gmail.nossr50.datatypes.skills.PrimarySkillType;
|
||||||
|
import net.momirealms.craftengine.core.entity.player.Player;
|
||||||
|
import net.momirealms.craftengine.core.plugin.compatibility.LevelerProvider;
|
||||||
|
|
||||||
|
public class McMMOLevelerProvider implements LevelerProvider {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void addExp(Player player, String target, double amount) {
|
||||||
|
ExperienceAPI.addRawXP((org.bukkit.entity.Player) player.platformPlayer(), target, (float) amount, "UNKNOWN");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getLevel(Player player, String target) {
|
||||||
|
return ExperienceAPI.getLevel((org.bukkit.entity.Player) player.platformPlayer(), PrimarySkillType.valueOf(target));
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package net.momirealms.craftengine.bukkit.compatibility.bettermodel;
|
package net.momirealms.craftengine.bukkit.compatibility.model.bettermodel;
|
||||||
|
|
||||||
import net.momirealms.craftengine.core.entity.AbstractEntity;
|
import net.momirealms.craftengine.core.entity.AbstractEntity;
|
||||||
import net.momirealms.craftengine.core.entity.furniture.AbstractExternalModel;
|
import net.momirealms.craftengine.core.entity.furniture.AbstractExternalModel;
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package net.momirealms.craftengine.bukkit.compatibility.bettermodel;
|
package net.momirealms.craftengine.bukkit.compatibility.model.bettermodel;
|
||||||
|
|
||||||
import kr.toxicity.model.api.BetterModel;
|
import kr.toxicity.model.api.BetterModel;
|
||||||
import kr.toxicity.model.api.data.renderer.BlueprintRenderer;
|
import kr.toxicity.model.api.data.renderer.BlueprintRenderer;
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
package net.momirealms.craftengine.bukkit.compatibility.model.freeminecraftmodels;
|
||||||
|
|
||||||
|
import net.momirealms.craftengine.core.entity.AbstractEntity;
|
||||||
|
import net.momirealms.craftengine.core.entity.furniture.AbstractExternalModel;
|
||||||
|
|
||||||
|
public class FreeMinecraftModelsModel extends AbstractExternalModel {
|
||||||
|
|
||||||
|
|
||||||
|
public FreeMinecraftModelsModel(String id) {
|
||||||
|
super(id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String plugin() {
|
||||||
|
return "FreeMinecraftModels";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void bindModel(AbstractEntity entity) {
|
||||||
|
org.bukkit.entity.Entity bukkitEntity = (org.bukkit.entity.Entity) entity.literalObject();
|
||||||
|
FreeMinecraftModelsUtils.bindModel(bukkitEntity, id());
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
package net.momirealms.craftengine.bukkit.compatibility.model.freeminecraftmodels;
|
||||||
|
|
||||||
|
import com.magmaguy.freeminecraftmodels.customentity.StaticEntity;
|
||||||
|
import net.momirealms.craftengine.bukkit.plugin.BukkitCraftEngine;
|
||||||
|
import net.momirealms.craftengine.bukkit.plugin.scheduler.impl.FoliaTask;
|
||||||
|
import net.momirealms.craftengine.core.plugin.scheduler.SchedulerTask;
|
||||||
|
import net.momirealms.craftengine.core.util.VersionHelper;
|
||||||
|
import org.bukkit.entity.Entity;
|
||||||
|
|
||||||
|
public class FreeMinecraftModelsUtils {
|
||||||
|
|
||||||
|
public static void bindModel(Entity base, String id) {
|
||||||
|
StaticEntity staticEntity = StaticEntity.create(id, base.getLocation());
|
||||||
|
if (staticEntity != null) {
|
||||||
|
new FreeMinecraftModelsModelTask(staticEntity, base);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class FreeMinecraftModelsModelTask implements Runnable {
|
||||||
|
private final StaticEntity staticEntity;
|
||||||
|
private final Entity base;
|
||||||
|
private final SchedulerTask task;
|
||||||
|
|
||||||
|
public FreeMinecraftModelsModelTask(StaticEntity staticEntity, Entity base) {
|
||||||
|
this.staticEntity = staticEntity;
|
||||||
|
this.base = base;
|
||||||
|
if (VersionHelper.isFolia()) {
|
||||||
|
this.task = new FoliaTask(base.getScheduler().runAtFixedRate(BukkitCraftEngine.instance().javaPlugin(), (t) -> this.run(), () -> {}, 1, 1));
|
||||||
|
} else {
|
||||||
|
this.task = BukkitCraftEngine.instance().scheduler().sync().runRepeating(this, 1, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
if (!this.base.isValid()) {
|
||||||
|
this.staticEntity.remove();
|
||||||
|
this.task.cancel();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package net.momirealms.craftengine.bukkit.compatibility.modelengine;
|
package net.momirealms.craftengine.bukkit.compatibility.model.modelengine;
|
||||||
|
|
||||||
import net.momirealms.craftengine.core.entity.AbstractEntity;
|
import net.momirealms.craftengine.core.entity.AbstractEntity;
|
||||||
import net.momirealms.craftengine.core.entity.furniture.AbstractExternalModel;
|
import net.momirealms.craftengine.core.entity.furniture.AbstractExternalModel;
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
package net.momirealms.craftengine.bukkit.compatibility.modelengine;
|
package net.momirealms.craftengine.bukkit.compatibility.model.modelengine;
|
||||||
|
|
||||||
import com.ticxo.modelengine.api.ModelEngineAPI;
|
import com.ticxo.modelengine.api.ModelEngineAPI;
|
||||||
import com.ticxo.modelengine.api.model.ActiveModel;
|
import com.ticxo.modelengine.api.model.ActiveModel;
|
||||||
@@ -77,14 +77,22 @@ paper {
|
|||||||
// external models
|
// external models
|
||||||
register("ModelEngine") { required = false }
|
register("ModelEngine") { required = false }
|
||||||
register("BetterModel") { required = false }
|
register("BetterModel") { required = false }
|
||||||
|
register("FreeMinecraftModels") { required = false }
|
||||||
|
|
||||||
// external items
|
// external items
|
||||||
register("NeigeItems") { required = false }
|
register("NeigeItems") { required = false }
|
||||||
register("MMOItems") { required = false }
|
register("MMOItems") { required = false }
|
||||||
register("MythicMobs") { required = false }
|
register("MythicMobs") { required = false }
|
||||||
|
register("CustomFishing") { required = false }
|
||||||
|
|
||||||
// leveler
|
// leveler
|
||||||
register("AuraSkills") { required = false }
|
register("AuraSkills") { required = false }
|
||||||
|
register("AureliumSkills") { required = false }
|
||||||
|
register("McMMO") { required = false }
|
||||||
|
register("MMOCore") { required = false }
|
||||||
|
register("Jobs") { required = false }
|
||||||
|
register("EcoSkills") { required = false }
|
||||||
|
register("EcoJobs") { required = false }
|
||||||
|
|
||||||
// anti grief lib
|
// anti grief lib
|
||||||
register("Dominion") { required = false }
|
register("Dominion") { required = false }
|
||||||
|
|||||||
@@ -122,6 +122,8 @@ public abstract class AbstractFurnitureManager implements FurnitureManager {
|
|||||||
externalModel = Optional.of(plugin.compatibilityManager().createModel("ModelEngine", placementArguments.get("model-engine").toString()));
|
externalModel = Optional.of(plugin.compatibilityManager().createModel("ModelEngine", placementArguments.get("model-engine").toString()));
|
||||||
} else if (placementArguments.containsKey("better-model")) {
|
} else if (placementArguments.containsKey("better-model")) {
|
||||||
externalModel = Optional.of(plugin.compatibilityManager().createModel("BetterModel", placementArguments.get("better-model").toString()));
|
externalModel = Optional.of(plugin.compatibilityManager().createModel("BetterModel", placementArguments.get("better-model").toString()));
|
||||||
|
} else if (placementArguments.containsKey("free-minecraft-models")) {
|
||||||
|
externalModel = Optional.of(plugin.compatibilityManager().createModel("FreeMinecraftModels", placementArguments.get("free-minecraft-models").toString()));
|
||||||
} else {
|
} else {
|
||||||
externalModel = Optional.empty();
|
externalModel = Optional.empty();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user