mirror of
https://github.com/songoda/EpicHoppers.git
synced 2024-10-01 09:07:29 +02:00
Fixes WorldGuard interact/use flag getting checked wrong
When trying to open the GUI in a world where `use` is set to allowed, it just returned and never opened the GUI
This commit is contained in:
parent
0bb6724378
commit
1e3f72f235
@ -4,10 +4,10 @@ import com.songoda.core.hooks.ProtectionManager;
|
|||||||
import com.songoda.core.hooks.WorldGuardHook;
|
import com.songoda.core.hooks.WorldGuardHook;
|
||||||
import com.songoda.epichoppers.EpicHoppers;
|
import com.songoda.epichoppers.EpicHoppers;
|
||||||
import com.songoda.epichoppers.hopper.Hopper;
|
import com.songoda.epichoppers.hopper.Hopper;
|
||||||
|
import com.songoda.epichoppers.hopper.teleport.TeleportTrigger;
|
||||||
import com.songoda.epichoppers.player.PlayerData;
|
import com.songoda.epichoppers.player.PlayerData;
|
||||||
import com.songoda.epichoppers.player.SyncType;
|
import com.songoda.epichoppers.player.SyncType;
|
||||||
import com.songoda.epichoppers.settings.Settings;
|
import com.songoda.epichoppers.settings.Settings;
|
||||||
import com.songoda.epichoppers.hopper.teleport.TeleportTrigger;
|
|
||||||
import com.songoda.skyblock.SkyBlock;
|
import com.songoda.skyblock.SkyBlock;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
@ -62,10 +62,7 @@ public class InteractListeners implements Listener {
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (WorldGuardHook.isInteractAllowed(event.getClickedBlock().getLocation()))
|
if (Settings.USE_PROTECTION_PLUGINS.getBoolean() && ProtectionManager.canInteract(player, event.getClickedBlock().getLocation()) && WorldGuardHook.isInteractAllowed(event.getClickedBlock().getLocation())) {
|
||||||
return;
|
|
||||||
|
|
||||||
if (Settings.USE_PROTECTION_PLUGINS.getBoolean() && !ProtectionManager.canInteract(player, event.getClickedBlock().getLocation())) {
|
|
||||||
player.sendMessage(plugin.getLocale().getMessage("event.general.protected").getPrefixedMessage());
|
player.sendMessage(plugin.getLocale().getMessage("event.general.protected").getPrefixedMessage());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -73,11 +70,9 @@ public class InteractListeners implements Listener {
|
|||||||
if (Bukkit.getPluginManager().isPluginEnabled("FabledSkyBlock")) {
|
if (Bukkit.getPluginManager().isPluginEnabled("FabledSkyBlock")) {
|
||||||
SkyBlock skyBlock = SkyBlock.getInstance();
|
SkyBlock skyBlock = SkyBlock.getInstance();
|
||||||
|
|
||||||
if (skyBlock.getWorldManager().isIslandWorld(event.getPlayer().getWorld()))
|
if (skyBlock.getWorldManager().isIslandWorld(event.getPlayer().getWorld()) &&
|
||||||
if (!skyBlock.getPermissionManager().hasPermission(event.getPlayer(),
|
!skyBlock.getPermissionManager().hasPermission(event.getPlayer(), skyBlock.getIslandManager().getIslandAtLocation(event.getClickedBlock().getLocation()), "EpicHoppers"))
|
||||||
skyBlock.getIslandManager().getIslandAtLocation(event.getClickedBlock().getLocation()),
|
return;
|
||||||
"EpicHoppers"))
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
PlayerData playerData = plugin.getPlayerDataManager().getPlayerData(player);
|
PlayerData playerData = plugin.getPlayerDataManager().getPlayerData(player);
|
||||||
@ -108,10 +103,11 @@ public class InteractListeners implements Listener {
|
|||||||
&& Settings.ENDERCHESTS.getBoolean())) {
|
&& Settings.ENDERCHESTS.getBoolean())) {
|
||||||
Hopper hopper = playerData.getLastHopper();
|
Hopper hopper = playerData.getLastHopper();
|
||||||
if (event.getClickedBlock().getLocation().equals(playerData.getLastHopper().getLocation())) {
|
if (event.getClickedBlock().getLocation().equals(playerData.getLastHopper().getLocation())) {
|
||||||
if (!hopper.getLinkedBlocks().isEmpty())
|
if (!hopper.getLinkedBlocks().isEmpty()) {
|
||||||
plugin.getLocale().getMessage("event.hopper.syncfinish").sendPrefixedMessage(player);
|
plugin.getLocale().getMessage("event.hopper.syncfinish").sendPrefixedMessage(player);
|
||||||
else
|
} else {
|
||||||
plugin.getLocale().getMessage("event.hopper.synccanceled").sendPrefixedMessage(player);
|
plugin.getLocale().getMessage("event.hopper.synccanceled").sendPrefixedMessage(player);
|
||||||
|
}
|
||||||
hopper.cancelSync(player);
|
hopper.cancelSync(player);
|
||||||
} else if (playerData.getSyncType() != null) {
|
} else if (playerData.getSyncType() != null) {
|
||||||
hopper.link(event.getClickedBlock(), playerData.getSyncType() == SyncType.FILTERED, player);
|
hopper.link(event.getClickedBlock(), playerData.getSyncType() == SyncType.FILTERED, player);
|
||||||
|
Loading…
Reference in New Issue
Block a user