mirror of
https://github.com/BentoBoxWorld/Warps.git
synced 2024-11-25 12:06:24 +01:00
Add support for hanging signs.
Warps to below the sign.
This commit is contained in:
parent
b88497397f
commit
bc1e92ee8d
@ -21,6 +21,7 @@ import org.bukkit.ChatColor;
|
|||||||
import org.bukkit.Location;
|
import org.bukkit.Location;
|
||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.Sound;
|
import org.bukkit.Sound;
|
||||||
|
import org.bukkit.Tag;
|
||||||
import org.bukkit.World;
|
import org.bukkit.World;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
import org.bukkit.block.BlockFace;
|
import org.bukkit.block.BlockFace;
|
||||||
@ -423,7 +424,7 @@ public class WarpSignsManager {
|
|||||||
}
|
}
|
||||||
// Find out which direction the warp is facing
|
// Find out which direction the warp is facing
|
||||||
Block b = warpSpot.getBlock();
|
Block b = warpSpot.getBlock();
|
||||||
if (b.getType().name().contains("WALL_SIGN")) {
|
if (Tag.WALL_SIGNS.isTagged(b.getType())) {
|
||||||
org.bukkit.block.data.type.WallSign s = (org.bukkit.block.data.type.WallSign) b.getBlockData();
|
org.bukkit.block.data.type.WallSign s = (org.bukkit.block.data.type.WallSign) b.getBlockData();
|
||||||
BlockFace directionFacing = s.getFacing();
|
BlockFace directionFacing = s.getFacing();
|
||||||
Location inFront = b.getRelative(directionFacing).getLocation();
|
Location inFront = b.getRelative(directionFacing).getLocation();
|
||||||
@ -436,7 +437,13 @@ public class WarpSignsManager {
|
|||||||
warpPlayer(user, oneDown, owner, directionFacing, pvp);
|
warpPlayer(user, oneDown, owner, directionFacing, pvp);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
} else if (b.getType().name().contains("SIGN")) {
|
} else if (Tag.ALL_HANGING_SIGNS.isTagged(b.getType())) {
|
||||||
|
Location below = b.getRelative(BlockFace.DOWN).getRelative(BlockFace.DOWN).getLocation();
|
||||||
|
if ((addon.getIslands().isSafeLocation(below))) {
|
||||||
|
warpPlayer(user, below, owner, BlockFace.DOWN, pvp);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
} else if (Tag.STANDING_SIGNS.isTagged(b.getType())) {
|
||||||
org.bukkit.block.data.type.Sign s = (org.bukkit.block.data.type.Sign) b.getBlockData();
|
org.bukkit.block.data.type.Sign s = (org.bukkit.block.data.type.Sign) b.getBlockData();
|
||||||
BlockFace directionFacing = s.getRotation();
|
BlockFace directionFacing = s.getRotation();
|
||||||
Location inFront = b.getRelative(directionFacing).getLocation();
|
Location inFront = b.getRelative(directionFacing).getLocation();
|
||||||
|
@ -25,6 +25,7 @@ import org.bukkit.Location;
|
|||||||
import org.bukkit.Material;
|
import org.bukkit.Material;
|
||||||
import org.bukkit.OfflinePlayer;
|
import org.bukkit.OfflinePlayer;
|
||||||
import org.bukkit.Server;
|
import org.bukkit.Server;
|
||||||
|
import org.bukkit.Tag;
|
||||||
import org.bukkit.World;
|
import org.bukkit.World;
|
||||||
import org.bukkit.World.Environment;
|
import org.bukkit.World.Environment;
|
||||||
import org.bukkit.block.Block;
|
import org.bukkit.block.Block;
|
||||||
@ -203,6 +204,9 @@ public class WarpSignsManagerTest {
|
|||||||
PowerMockito.mockStatic(Bukkit.class, Mockito.RETURNS_MOCKS);
|
PowerMockito.mockStatic(Bukkit.class, Mockito.RETURNS_MOCKS);
|
||||||
when(Bukkit.getPluginManager()).thenReturn(pim);
|
when(Bukkit.getPluginManager()).thenReturn(pim);
|
||||||
|
|
||||||
|
// Tags
|
||||||
|
when(Tag.STANDING_SIGNS.isTagged(Material.ACACIA_SIGN)).thenReturn(true);
|
||||||
|
|
||||||
// Players Manager
|
// Players Manager
|
||||||
when(plugin.getPlayers()).thenReturn(pm);
|
when(plugin.getPlayers()).thenReturn(pm);
|
||||||
when(pm.getName(uuid)).thenReturn("tastybento");
|
when(pm.getName(uuid)).thenReturn("tastybento");
|
||||||
|
Loading…
Reference in New Issue
Block a user