From 5cd33034bd53a070056b863684348191242f367a Mon Sep 17 00:00:00 2001 From: MATRIX-feather Date: Sun, 22 Oct 2023 14:28:24 +0800 Subject: [PATCH] misc: Initial Folia support? I'm not sure --- src/main/java/xiamomc/morph/MorphPlugin.java | 12 ++++++++++++ src/main/java/xiamomc/morph/MorphPluginObject.java | 12 ++++++++++++ .../morph/providers/DefaultDisguiseProvider.java | 4 +++- .../morph/skills/impl/TeleportMorphSkill.java | 9 +++++---- 4 files changed, 32 insertions(+), 5 deletions(-) diff --git a/src/main/java/xiamomc/morph/MorphPlugin.java b/src/main/java/xiamomc/morph/MorphPlugin.java index 347aa153..c509f7a4 100644 --- a/src/main/java/xiamomc/morph/MorphPlugin.java +++ b/src/main/java/xiamomc/morph/MorphPlugin.java @@ -217,4 +217,16 @@ public boolean acceptSchedules() { return true; } + + @Override + public void startMainLoop(Runnable r) + { + Bukkit.getGlobalRegionScheduler().runAtFixedRate(this, o -> r.run(), 1, 1); + } + + @Override + public void runAsync(Runnable r) + { + Bukkit.getAsyncScheduler().runNow(this, o -> r.run()); + } } diff --git a/src/main/java/xiamomc/morph/MorphPluginObject.java b/src/main/java/xiamomc/morph/MorphPluginObject.java index e538eaa2..9f40ad7f 100644 --- a/src/main/java/xiamomc/morph/MorphPluginObject.java +++ b/src/main/java/xiamomc/morph/MorphPluginObject.java @@ -1,5 +1,7 @@ package xiamomc.morph; +import org.bukkit.Bukkit; +import org.bukkit.entity.Entity; import xiamomc.pluginbase.PluginObject; public class MorphPluginObject extends PluginObject @@ -9,4 +11,14 @@ protected String getPluginNamespace() { return MorphPlugin.getMorphNameSpace(); } + + protected void scheduleOn(Entity entity, Runnable r) + { + entity.getScheduler().execute(plugin, r, null, 1); + } + + protected void scheduleWorld(Entity entity, Runnable r) + { + Bukkit.getRegionScheduler().execute(plugin, entity.getLocation(), r); + } } diff --git a/src/main/java/xiamomc/morph/providers/DefaultDisguiseProvider.java b/src/main/java/xiamomc/morph/providers/DefaultDisguiseProvider.java index 0cd02351..cafd9821 100644 --- a/src/main/java/xiamomc/morph/providers/DefaultDisguiseProvider.java +++ b/src/main/java/xiamomc/morph/providers/DefaultDisguiseProvider.java @@ -12,6 +12,7 @@ import org.bukkit.scoreboard.Scoreboard; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import xiamomc.morph.MorphManager; import xiamomc.morph.RevealingHandler; import xiamomc.morph.abilities.AbilityHandler; import xiamomc.morph.backends.DisguiseBackend; @@ -24,6 +25,7 @@ import xiamomc.morph.network.server.ServerSetEquipCommand; import xiamomc.morph.skills.MorphSkillHandler; import xiamomc.morph.skills.SkillType; +import xiamomc.pluginbase.Annotations.Initializer; import xiamomc.pluginbase.Annotations.Resolved; import xiamomc.pluginbase.Messages.MessageStore; import xiamomc.pluginbase.Utilities.ColorUtils; @@ -152,7 +154,7 @@ private void addIfPresents(EntityEquipment equipment, ObjectArrayList + { + playSoundToNearbyPlayers(player, 10, + Key.key("minecraft", "entity.enderman.teleport"), Sound.Source.HOSTILE); + }); //重设下落距离 player.setFallDistance(0);