53 lines
1.5 KiB
Java
53 lines
1.5 KiB
Java
package com.earth2me.essentials.protect;
|
|
|
|
import static com.earth2me.essentials.I18n._;
|
|
import com.earth2me.essentials.IEssentials;
|
|
import com.earth2me.essentials.User;
|
|
import org.bukkit.block.Block;
|
|
import org.bukkit.event.EventHandler;
|
|
import org.bukkit.event.EventPriority;
|
|
import org.bukkit.event.Listener;
|
|
import org.bukkit.event.block.Action;
|
|
import org.bukkit.event.player.PlayerInteractEvent;
|
|
|
|
|
|
public class EssentialsProtectPlayerListener implements Listener
|
|
{
|
|
private final transient IProtect prot;
|
|
private final transient IEssentials ess;
|
|
|
|
public EssentialsProtectPlayerListener(final IProtect prot)
|
|
{
|
|
this.prot = prot;
|
|
this.ess = prot.getEssentialsConnect().getEssentials();
|
|
}
|
|
|
|
@EventHandler(priority = EventPriority.LOW)
|
|
public void onPlayerInteract(final PlayerInteractEvent event)
|
|
{
|
|
// Do not return if cancelled, because the interact event has 2 cancelled states.
|
|
final User user = ess.getUser(event.getPlayer());
|
|
|
|
if (user.isAuthorized("essentials.protect.ownerinfo") && event.getAction() == Action.RIGHT_CLICK_BLOCK)
|
|
{
|
|
final StringBuilder stringBuilder = new StringBuilder();
|
|
boolean first = true;
|
|
final Block blockClicked = event.getClickedBlock();
|
|
for (String owner : prot.getStorage().getOwners(blockClicked))
|
|
{
|
|
if (!first)
|
|
{
|
|
stringBuilder.append(", ");
|
|
}
|
|
first = false;
|
|
stringBuilder.append(owner);
|
|
}
|
|
final String ownerNames = stringBuilder.toString();
|
|
if (ownerNames != null && !ownerNames.isEmpty())
|
|
{
|
|
user.sendMessage(_("protectionOwner", ownerNames));
|
|
}
|
|
}
|
|
}
|
|
}
|