2 Commits

Author SHA1 Message Date
YouHaveTrouble acaf8ac233 bump version 2025-09-27 23:14:23 +02:00
Matt Baxter c30c3ee7c9 Improve FUUID support: (#7)
Don't waste time if not in an enabled world.
Fixes test for protection that would always return true.
Fixes block use test to use more proper method.
2025-09-27 23:12:52 +02:00
2 changed files with 13 additions and 3 deletions
+1 -1
View File
@@ -6,7 +6,7 @@
<groupId>me.youhavetrouble</groupId>
<artifactId>YardWatch</artifactId>
<version>1.4.0</version>
<version>1.4.1</version>
<packaging>jar</packaging>
<name>YardWatch</name>
@@ -35,12 +35,13 @@ public class FactionsUUIDProtection implements Protection {
if (!FactionsPlugin.getInstance().worldUtil().isEnabled(location.getWorld())) return false;
FLocation fLocation = new FLocation(location);
Faction faction = Board.getInstance().getFactionAt(fLocation);
return faction != null;
return !faction.isWilderness();
}
@Override
public boolean canBreakBlock(Player player, BlockState blockState) {
if (!isEnabled()) return true;
if (!FactionsPlugin.getInstance().worldUtil().isEnabled(blockState.getWorld())) return true;
return FactionsBlockListener.playerCanBuildDestroyBlock(
player,
blockState.getLocation(),
@@ -52,6 +53,7 @@ public class FactionsUUIDProtection implements Protection {
@Override
public boolean canPlaceBlock(Player player, Location location) {
if (!isEnabled()) return true;
if (!FactionsPlugin.getInstance().worldUtil().isEnabled(location.getWorld())) return true;
return FactionsBlockListener.playerCanBuildDestroyBlock(
player,
location,
@@ -63,18 +65,26 @@ public class FactionsUUIDProtection implements Protection {
@Override
public boolean canInteract(Player player, BlockState blockState) {
if (!isEnabled()) return true;
return FactionsPlayerListener.canInteractHere(player, blockState.getLocation());
if (!FactionsPlugin.getInstance().worldUtil().isEnabled(blockState.getWorld())) return true;
return FactionsPlayerListener.canUseBlock(
player,
blockState.getType(),
blockState.getLocation(),
true
);
}
@Override
public boolean canInteract(Player player, Entity target) {
if (!isEnabled()) return true;
if (!FactionsPlugin.getInstance().worldUtil().isEnabled(target)) return true;
return FactionsEntityListener.canInteractHere(player, target.getLocation());
}
@Override
public boolean canDamage(Entity damager, Entity target) {
if (!isEnabled()) return true;
if (!FactionsPlugin.getInstance().worldUtil().isEnabled(target)) return true;
return FactionsEntityListener.canDamage(damager, target, false);
}
}