vanishnopacket hook and set correct load order

This commit is contained in:
2023-08-14 16:35:50 +02:00
parent de833f809d
commit abf645a482
4 changed files with 32 additions and 4 deletions
+1
View File
@@ -23,6 +23,7 @@ dependencies {
paperweight.paperDevBundle("1.20.1-R0.1-SNAPSHOT", "org.purpurmc.purpur") paperweight.paperDevBundle("1.20.1-R0.1-SNAPSHOT", "org.purpurmc.purpur")
compileOnly("me.clip:placeholderapi:2.11.3") compileOnly("me.clip:placeholderapi:2.11.3")
compileOnly("com.github.LeonMangler:SuperVanish:6.2.17") compileOnly("com.github.LeonMangler:SuperVanish:6.2.17")
compileOnly("com.github.mbax:VanishNoPacket:3.22")
} }
tasks { tasks {
@@ -20,15 +20,14 @@ public final class NotJustNameplates extends JavaPlugin {
private final TeamManager teamManager = new TeamManager(); private final TeamManager teamManager = new TeamManager();
private NameplateManager nameplateManager = null; private NameplateManager nameplateManager = null;
private static boolean papiHook, superVanishHook = false; private static boolean papiHook, superVanishHook, vanishNoPacketHook = false;
@Override @Override
public void onEnable() { public void onEnable() {
instance = this; instance = this;
config = new NJNConfig(this); config = new NJNConfig(this);
papiHook = Bukkit.getPluginManager().getPlugin("PlaceholderAPI") != null && Bukkit.getPluginManager().isPluginEnabled("PlaceholderAPI"); checkHooks();
superVanishHook = Bukkit.getPluginManager().isPluginEnabled("SuperVanish") || Bukkit.getPluginManager().isPluginEnabled("PremiumVanish");
DefaultPermissions.registerPermission("notjustnameplates.seeown", "Allows a player to see their own nameplate", PermissionDefault.FALSE); DefaultPermissions.registerPermission("notjustnameplates.seeown", "Allows a player to see their own nameplate", PermissionDefault.FALSE);
DefaultPermissions.registerPermission("notjustnameplates.command", "Allows a player to use the /njn command", PermissionDefault.TRUE); DefaultPermissions.registerPermission("notjustnameplates.command", "Allows a player to use the /njn command", PermissionDefault.TRUE);
@@ -57,7 +56,7 @@ public final class NotJustNameplates extends JavaPlugin {
public void reloadPluginConfig() { public void reloadPluginConfig() {
config = new NJNConfig(this); config = new NJNConfig(this);
papiHook = Bukkit.getPluginManager().getPlugin("PlaceholderAPI") != null && Bukkit.getPluginManager().isPluginEnabled("PlaceholderAPI"); checkHooks();
nameplateManager.reloadNameplates(); nameplateManager.reloadNameplates();
updateNameplatesBasedOnPermission(); updateNameplatesBasedOnPermission();
} }
@@ -82,6 +81,12 @@ public final class NotJustNameplates extends JavaPlugin {
return config.getDisplayContent("default"); return config.getDisplayContent("default");
} }
private void checkHooks() {
papiHook = Bukkit.getPluginManager().isPluginEnabled("PlaceholderAPI");
superVanishHook = Bukkit.getPluginManager().isPluginEnabled("SuperVanish") || Bukkit.getPluginManager().isPluginEnabled("PremiumVanish");
vanishNoPacketHook = Bukkit.getPluginManager().isPluginEnabled("VanishNoPacket");
}
public TeamManager getTeamManager() { public TeamManager getTeamManager() {
return teamManager; return teamManager;
} }
@@ -109,4 +114,8 @@ public final class NotJustNameplates extends JavaPlugin {
public static boolean isSuperVanishHooked() { public static boolean isSuperVanishHooked() {
return superVanishHook; return superVanishHook;
} }
public static boolean isVanishNoPacketHooked() {
return vanishNoPacketHook;
}
} }
@@ -19,6 +19,9 @@ import org.bukkit.util.Transformation;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.joml.AxisAngle4f; import org.joml.AxisAngle4f;
import org.joml.Vector3f; import org.joml.Vector3f;
import org.kitteh.vanish.VanishCheck;
import org.kitteh.vanish.VanishPlugin;
import org.kitteh.vanish.staticaccess.VanishNoPacket;
import java.util.UUID; import java.util.UUID;
@@ -154,6 +157,14 @@ public class Nameplate {
return; return;
} }
if (NotJustNameplates.isVanishNoPacketHooked()) {
VanishPlugin vanishPlugin = (VanishPlugin) Bukkit.getPluginManager().getPlugin("VanishNoPacket");
if (vanishPlugin != null && vanishPlugin.getManager().isVanished(player)) {
remove();
return;
}
}
createDisplayEntity(); createDisplayEntity();
if (textDisplay == null || textDisplay.isDead()) return; if (textDisplay == null || textDisplay.isDead()) return;
if (!player.getPassengers().contains(textDisplay)) { if (!player.getPassengers().contains(textDisplay)) {
+7
View File
@@ -12,3 +12,10 @@ dependencies:
required: false required: false
- name: PremiumVanish - name: PremiumVanish
required: false required: false
- name: VanishNoPacket
required: false
load-after:
- name: PlaceholderAPI
- name: SuperVanish
- name: PremiumVanish
- name: VanishNoPacket