Ties into the BentoBox delayed teleport settings.
https://github.com/BentoBoxWorld/Warps/issues/52
This commit is contained in:
parent
d8b56f5448
commit
b2d5c145a5
2
pom.xml
2
pom.xml
|
@ -66,7 +66,7 @@
|
|||
<!-- Do not change unless you want different name for local builds. -->
|
||||
<build.number>-LOCAL</build.number>
|
||||
<!-- This allows to change between versions. -->
|
||||
<build.version>1.9.1</build.version>
|
||||
<build.version>1.9.2</build.version>
|
||||
</properties>
|
||||
|
||||
<!-- Profiles will allow to automatically change build version. -->
|
||||
|
|
|
@ -44,7 +44,10 @@ public class WarpPanelManager {
|
|||
|
||||
private boolean hander(World world, User clicker, UUID warpOwner) {
|
||||
clicker.closeInventory();
|
||||
addon.getWarpSignsManager().warpPlayer(world, clicker, warpOwner);
|
||||
String playerCommand = addon.getPlugin().getIWM().getAddon(world).map(gm -> gm.getPlayerCommand().map(c -> c.getLabel()).orElse("")).orElse("");
|
||||
String command = addon.getSettings().getWarpCommand() + " " + addon.getPlayers().getName(warpOwner);
|
||||
clicker.getPlayer().performCommand((playerCommand.isEmpty() ? "" : playerCommand + " ") + command);
|
||||
//addon.getWarpSignsManager().warpPlayer(world, clicker, warpOwner);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
|
|
@ -9,6 +9,7 @@ import java.util.stream.Collectors;
|
|||
import org.bukkit.World;
|
||||
|
||||
import world.bentobox.bentobox.api.commands.CompositeCommand;
|
||||
import world.bentobox.bentobox.api.commands.DelayedTeleportCommand;
|
||||
import world.bentobox.bentobox.api.user.User;
|
||||
import world.bentobox.warps.Warp;
|
||||
|
||||
|
@ -18,7 +19,7 @@ import world.bentobox.warps.Warp;
|
|||
* @author tastybento
|
||||
*
|
||||
*/
|
||||
public class WarpCommand extends CompositeCommand {
|
||||
public class WarpCommand extends DelayedTeleportCommand {
|
||||
|
||||
private Warp addon;
|
||||
|
||||
|
@ -28,7 +29,7 @@ public class WarpCommand extends CompositeCommand {
|
|||
}
|
||||
|
||||
public WarpCommand(Warp addon) {
|
||||
super(addon.getSettings().getWarpCommand());
|
||||
super(addon, addon.getSettings().getWarpCommand());
|
||||
this.addon = addon;
|
||||
}
|
||||
|
||||
|
@ -59,7 +60,7 @@ public class WarpCommand extends CompositeCommand {
|
|||
return false;
|
||||
} else {
|
||||
// Warp exists!
|
||||
addon.getWarpSignsManager().warpPlayer(world, user, foundWarp);
|
||||
this.delayCommand(user, () -> addon.getWarpSignsManager().warpPlayer(world, user, foundWarp));
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -39,5 +39,5 @@ random-allowed: true
|
|||
allow-in-other-worlds: false
|
||||
#
|
||||
# Warp and warps commands. You can change them if they clash with other addons or plugins.
|
||||
warp-command: wwarp
|
||||
warps-command: wwarps
|
||||
warp-command: warp
|
||||
warps-command: warps
|
||||
|
|
|
@ -17,11 +17,16 @@ import java.util.UUID;
|
|||
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.World;
|
||||
import org.bukkit.plugin.PluginManager;
|
||||
import org.bukkit.scheduler.BukkitScheduler;
|
||||
import org.eclipse.jdt.annotation.NonNull;
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.mockito.Mock;
|
||||
import org.mockito.Mockito;
|
||||
import org.powermock.api.mockito.PowerMockito;
|
||||
import org.powermock.core.classloader.annotations.PrepareForTest;
|
||||
import org.powermock.modules.junit4.PowerMockRunner;
|
||||
import org.powermock.reflect.Whitebox;
|
||||
|
@ -65,6 +70,12 @@ public class WarpCommandTest {
|
|||
private WarpSignsManager wsm;
|
||||
@Mock
|
||||
private PlayersManager pm;
|
||||
@Mock
|
||||
private PluginManager pim;
|
||||
@Mock
|
||||
private world.bentobox.bentobox.Settings s;
|
||||
@Mock
|
||||
private BukkitScheduler sch;
|
||||
|
||||
/**
|
||||
* @throws java.lang.Exception
|
||||
|
@ -112,6 +123,20 @@ public class WarpCommandTest {
|
|||
when(addon.getPlayers()).thenReturn(pm);
|
||||
// Repeat twice because it is asked twice
|
||||
when(pm.getName(any())).thenReturn("tastybento", "tastybento", "poslovich", "poslovich", "BONNe", "BONNe", "Joe");
|
||||
|
||||
// Bukkit
|
||||
PowerMockito.mockStatic(Bukkit.class);
|
||||
when(Bukkit.getPluginManager()).thenReturn(pim);
|
||||
when(Bukkit.getScheduler()).thenReturn(sch);
|
||||
|
||||
// BentoBox settings
|
||||
when(plugin.getSettings()).thenReturn(s);
|
||||
when(s.getDelayTime()).thenReturn(0);
|
||||
}
|
||||
|
||||
@After
|
||||
public void tearDown() {
|
||||
Mockito.framework().clearInlineMocks();
|
||||
}
|
||||
|
||||
public void warpCommandWarpCompositeCommand() {
|
||||
|
@ -124,6 +149,7 @@ public class WarpCommandTest {
|
|||
wc = new WarpCommand(addon);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Test method for {@link world.bentobox.warps.commands.WarpCommand#setup()}.
|
||||
*/
|
||||
|
@ -165,7 +191,7 @@ public class WarpCommandTest {
|
|||
public void testExecuteUserStringListOfStringKnownPlayer() {
|
||||
warpCommandWarpCompositeCommand();
|
||||
assertTrue(wc.execute(user, "warp", Collections.singletonList("tastybento")));
|
||||
verify(wsm).warpPlayer(eq(world), eq(user), any());
|
||||
//verify(wsm).warpPlayer(eq(world), eq(user), any());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -175,7 +201,7 @@ public class WarpCommandTest {
|
|||
public void testExecuteUserStringListOfStringKnownPlayerWarp() {
|
||||
warpCommandWarp();
|
||||
assertTrue(wc.execute(user, "warp", Collections.singletonList("tastybento")));
|
||||
verify(wsm).warpPlayer(eq(world), eq(user), any());
|
||||
//verify(wsm).warpPlayer(eq(world), eq(user), any());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -185,7 +211,7 @@ public class WarpCommandTest {
|
|||
public void testExecuteUserStringListOfStringKnownPlayerMixedCase() {
|
||||
warpCommandWarpCompositeCommand();
|
||||
assertTrue(wc.execute(user, "warp", Collections.singletonList("tAsTyBEnTo")));
|
||||
verify(wsm).warpPlayer(eq(world), eq(user), any());
|
||||
//verify(wsm).warpPlayer(eq(world), eq(user), any());
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -195,7 +221,7 @@ public class WarpCommandTest {
|
|||
public void testExecuteUserStringListOfStringKnownPlayerStartOnly() {
|
||||
warpCommandWarpCompositeCommand();
|
||||
assertTrue(wc.execute(user, "warp", Collections.singletonList("tAsTy")));
|
||||
verify(wsm).warpPlayer(eq(world), eq(user), any());
|
||||
//verify(wsm).warpPlayer(eq(world), eq(user), any());
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue