summaryrefslogtreecommitdiffstats
path: root/Essentials/src/net/ess3/commands/Commandfly.java
blob: f0b2e824020d78e023c93035fbbcb934cdbd1c72 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
package net.ess3.commands;

import static net.ess3.I18n._;
import net.ess3.api.IUser;
import net.ess3.permissions.Permissions;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;


public class Commandfly extends EssentialsToggleCommand
{
	@Override
	protected void setValue(final IUser player, final boolean value)
	{
		final Player realPlayer = player.getPlayer();
		realPlayer.setAllowFlight(value);
		if (!realPlayer.getAllowFlight())
		{
			realPlayer.setFlying(false);
		}
	}

	@Override
	protected boolean getValue(final IUser player)
	{
		return player.getPlayer().getAllowFlight();
	}

	@Override
	protected void informSender(final CommandSender sender, final boolean value, final IUser player)
	{
		if (value)
		{
			sender.sendMessage(_("Set fly mode {0} for {1}.", _(getValue(player) ? "enabled" : "disabled"), player.getPlayer().getDisplayName()));
		}
		else
		{
			sender.sendMessage(_("flyFailed", player.getName()));
		}
	}

	@Override
	protected void informPlayer(final IUser player)
	{
		final String message = _("Set fly mode {0} for {1}.", _(getValue(player) ? "enabled" : "disabled"), player.getPlayer().getDisplayName());
		player.sendMessage(message);
	}

	@Override
	protected boolean canEditOthers(final IUser user)
	{
		return Permissions.FLY_OTHERS.isAuthorized(user);
	}

	@Override
	protected boolean isExempt(final CommandSender sender, final IUser player)
	{
		return Permissions.FLY_EXEMPT.isAuthorized(player);
	}

	@Override
	protected boolean toggleOfflinePlayers()
	{
		return false;
	}
}