[trunk] warp sign: Only charge the user, if he is authorized to use the sign.

git-svn-id: https://svn.java.net/svn/essentials~svn/trunk@1377 e251c2fe-e539-e718-e476-b85c1f46cddb
This commit is contained in:
snowleo 2011-05-08 22:45:10 +00:00
parent 02a9909e8b
commit 14b53db85a

View file

@ -453,6 +453,39 @@ public class EssentialsPlayerListener extends PlayerListener
return;
}
if (sign.getLine(0).equals("§1[Warp]"))
{
if (!sign.getLine(2).isEmpty())
{
if (sign.getLine(2).equals("§2Everyone"))
{
chargeUserForWarp(sign, user);
user.getTeleport().warp(sign.getLine(1), "warpsign");
return;
}
if (user.inGroup(sign.getLine(2)))
{
chargeUserForWarp(sign, user);
user.getTeleport().warp(sign.getLine(1), "warpsign");
return;
}
}
if (user.isAuthorized("essentials.signs.warp.use")
&& (!ess.getSettings().getPerWarpPermission() || user.isAuthorized("essentials.warp." + sign.getLine(1))))
{
chargeUserForWarp(sign, user);
user.getTeleport().warp(sign.getLine(1), "warpsign");
}
return;
}
}
catch (Throwable ex)
{
user.sendMessage("§cError: " + ex.getMessage());
}
}
private void chargeUserForWarp(Sign sign, User user) throws Exception
{
if (!sign.getLine(3).isEmpty())
{
@ -483,31 +516,6 @@ public class EssentialsPlayerListener extends PlayerListener
user.updateInventory();
}
}
if (!sign.getLine(2).isEmpty())
{
if (sign.getLine(2).equals("§2Everyone"))
{
user.getTeleport().warp(sign.getLine(1), "warpsign");
return;
}
if (user.inGroup(sign.getLine(2)))
{
user.getTeleport().warp(sign.getLine(1), "warpsign");
return;
}
}
if (user.isAuthorized("essentials.signs.warp.use")
&& (!ess.getSettings().getPerWarpPermission() || user.isAuthorized("essentials.warp." + sign.getLine(1))))
{
user.getTeleport().warp(sign.getLine(1), "warpsign");
}
return;
}
}
catch (Throwable ex)
{
user.sendMessage("§cError: " + ex.getMessage());
}
}
@Override