TotalFreedomMod/commons/src/main/java/me/totalfreedom/totalfreedommod/bridge/LibsDisguisesBridge.java

97 lines
2.3 KiB
Java

package me.totalfreedom.totalfreedommod.bridge;
import me.libraryaddict.disguise.BlockedDisguises;
import me.libraryaddict.disguise.DisguiseAPI;
import me.libraryaddict.disguise.LibsDisguises;
import me.totalfreedom.totalfreedommod.FreedomService;
import me.totalfreedom.totalfreedommod.util.FLog;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin;
public class LibsDisguisesBridge extends FreedomService
{
private static LibsDisguises libsDisguisesPlugin = null;
public static LibsDisguises getLibsDisguisesPlugin()
{
if (libsDisguisesPlugin == null)
{
try
{
final Plugin libsDisguises = Bukkit.getServer().getPluginManager().getPlugin("LibsDisguises");
if (libsDisguises instanceof LibsDisguises)
{
libsDisguisesPlugin = (LibsDisguises) libsDisguises;
}
} catch (Exception ex)
{
FLog.severe(ex);
}
}
return libsDisguisesPlugin;
}
@Override
public void onStart()
{
}
@Override
public void onStop()
{
}
public void undisguiseAll(boolean admin)
{
try
{
final LibsDisguises libsDisguises = getLibsDisguisesPlugin();
if (libsDisguises == null)
{
return;
}
for (Player player : server.getOnlinePlayers())
{
if (DisguiseAPI.isDisguised(player))
{
if (!admin && plugin.al.isAdmin(player))
{
continue;
}
DisguiseAPI.undisguiseToAll(player);
}
}
} catch (Exception ex)
{
FLog.severe(ex);
}
}
public boolean isDisguisesEnabled()
{
return !BlockedDisguises.disabled;
}
public static void setDisguisesEnabled(boolean state)
{
final LibsDisguises libsDisguises = getLibsDisguisesPlugin();
if (libsDisguises == null)
{
return;
}
BlockedDisguises.disabled = !state;
}
public boolean isEnabled()
{
final LibsDisguises libsDisguises = getLibsDisguisesPlugin();
return libsDisguises != null;
}
}