mirror of
https://github.com/TotalFreedomMC/TF-EssentialsX.git
synced 2025-02-12 12:23:59 +00:00
Update tp to check if target player has tptoggle disabled.
Update tpo to allow player to player tp.
This commit is contained in:
parent
47cf1289d7
commit
2cc96e995b
3 changed files with 43 additions and 19 deletions
|
@ -49,6 +49,14 @@ public class Commandtp extends EssentialsCommand
|
||||||
user.sendMessage(_("teleporting"));
|
user.sendMessage(_("teleporting"));
|
||||||
final User target = getPlayer(server, args, 0);
|
final User target = getPlayer(server, args, 0);
|
||||||
final User toPlayer = getPlayer(server, args, 1);
|
final User toPlayer = getPlayer(server, args, 1);
|
||||||
|
if (!target.isTeleportEnabled())
|
||||||
|
{
|
||||||
|
throw new Exception(_("teleportDisabled", target.getDisplayName()));
|
||||||
|
}
|
||||||
|
if (!toPlayer.isTeleportEnabled())
|
||||||
|
{
|
||||||
|
throw new Exception(_("teleportDisabled", toPlayer.getDisplayName()));
|
||||||
|
}
|
||||||
if (target.getWorld() != toPlayer.getWorld() && ess.getSettings().isWorldTeleportPermissions()
|
if (target.getWorld() != toPlayer.getWorld() && ess.getSettings().isWorldTeleportPermissions()
|
||||||
&& !user.isAuthorized("essentials.world." + toPlayer.getWorld().getName()))
|
&& !user.isAuthorized("essentials.world." + toPlayer.getWorld().getName()))
|
||||||
{
|
{
|
||||||
|
|
|
@ -16,33 +16,49 @@ public class Commandtpo extends EssentialsCommand
|
||||||
@Override
|
@Override
|
||||||
public void run(final Server server, final User user, final String commandLabel, final String[] args) throws Exception
|
public void run(final Server server, final User user, final String commandLabel, final String[] args) throws Exception
|
||||||
{
|
{
|
||||||
if (args.length < 1)
|
switch (args.length)
|
||||||
{
|
{
|
||||||
|
case 0:
|
||||||
throw new NotEnoughArgumentsException();
|
throw new NotEnoughArgumentsException();
|
||||||
}
|
|
||||||
|
|
||||||
//Just basically the old tp command
|
case 1:
|
||||||
final User player = getPlayer(server, args, 0, true);
|
final User player = getPlayer(server, args, 0, true);
|
||||||
// Check if user is offline
|
if (!player.isOnline() || (player.isHidden() && !user.isAuthorized("essentials.teleport.hidden")))
|
||||||
if (!player.isOnline())
|
|
||||||
{
|
{
|
||||||
throw new NoSuchFieldException(_("playerNotFound"));
|
throw new NoSuchFieldException(_("playerNotFound"));
|
||||||
}
|
}
|
||||||
|
|
||||||
// Verify permission
|
|
||||||
if (!player.isHidden() || user.isAuthorized("essentials.teleport.hidden"))
|
|
||||||
{
|
|
||||||
if (user.getWorld() != player.getWorld() && ess.getSettings().isWorldTeleportPermissions()
|
if (user.getWorld() != player.getWorld() && ess.getSettings().isWorldTeleportPermissions()
|
||||||
&& !user.isAuthorized("essentials.world." + player.getWorld().getName()))
|
&& !user.isAuthorized("essentials.world." + player.getWorld().getName()))
|
||||||
{
|
{
|
||||||
throw new Exception(_("noPerm", "essentials.world." + player.getWorld().getName()));
|
throw new Exception(_("noPerm", "essentials.world." + player.getWorld().getName()));
|
||||||
}
|
}
|
||||||
user.getTeleport().now(player, false, TeleportCause.COMMAND);
|
|
||||||
user.sendMessage(_("teleporting"));
|
user.sendMessage(_("teleporting"));
|
||||||
|
user.getTeleport().now(player, false, TeleportCause.COMMAND);
|
||||||
|
|
||||||
|
default:
|
||||||
|
if (!user.isAuthorized("essentials.tp.others"))
|
||||||
|
{
|
||||||
|
throw new Exception(_("noPerm", "essentials.tp.others"));
|
||||||
}
|
}
|
||||||
else
|
user.sendMessage(_("teleporting"));
|
||||||
|
final User target = getPlayer(server, args, 0, true);
|
||||||
|
final User toPlayer = getPlayer(server, args, 1, true);
|
||||||
|
|
||||||
|
if (!target.isOnline() || !toPlayer.isOnline()
|
||||||
|
|| ((target.isHidden() || toPlayer.isHidden()) && !user.isAuthorized("essentials.teleport.hidden")))
|
||||||
{
|
{
|
||||||
throw new NoSuchFieldException(_("playerNotFound"));
|
throw new NoSuchFieldException(_("playerNotFound"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (target.getWorld() != toPlayer.getWorld() && ess.getSettings().isWorldTeleportPermissions()
|
||||||
|
&& !user.isAuthorized("essentials.world." + toPlayer.getWorld().getName()))
|
||||||
|
{
|
||||||
|
throw new Exception(_("noPerm", "essentials.world." + toPlayer.getWorld().getName()));
|
||||||
|
}
|
||||||
|
|
||||||
|
target.getTeleport().now(toPlayer, false, TeleportCause.COMMAND);
|
||||||
|
target.sendMessage(_("teleportAtoB", user.getDisplayName(), toPlayer.getDisplayName()));
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -375,7 +375,7 @@ commands:
|
||||||
aliases: [s,etphere]
|
aliases: [s,etphere]
|
||||||
tpo:
|
tpo:
|
||||||
description: Teleport override for tptoggle.
|
description: Teleport override for tptoggle.
|
||||||
usage: /<command> <player>
|
usage: /<command> <player> [otherplayer]
|
||||||
aliases: [etpo]
|
aliases: [etpo]
|
||||||
tpohere:
|
tpohere:
|
||||||
description: Teleport here override for tptoggle.
|
description: Teleport here override for tptoggle.
|
||||||
|
|
Loading…
Reference in a new issue