package org.bukkit.craftbukkit.entity;
import org.bukkit.Bukkit;
import org.bukkit.Server;
import org.bukkit.craftbukkit.CraftServer;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.minecart.CommandMinecart;
import org.bukkit.permissions.PermissibleBase;
import org.bukkit.permissions.Permission;
import org.bukkit.permissions.PermissionAttachment;
import org.bukkit.permissions.PermissionAttachmentInfo;
import org.bukkit.plugin.Plugin;
import java.util.Set;
public class CraftMinecartCommand extends CraftMinecart implements CommandMinecart
{
private final PermissibleBase perm = new PermissibleBase(this);
public CraftMinecartCommand(CraftServer server, net.minecraft.entity.EntityMinecartCommandBlock entity)
{
super(server, entity);
}
@Override
public String getCommand()
{
return ((net.minecraft.entity.EntityMinecartCommandBlock) getHandle()).func_145822_e().func_145753_i();
}
@Override
public void setCommand(String command)
{
((net.minecraft.entity.EntityMinecartCommandBlock) getHandle()).func_145822_e().func_145752_a(command != null ? command : "");
}
@Override
public void setName(String name)
{
((net.minecraft.entity.EntityMinecartCommandBlock) getHandle()).func_145822_e().func_145754_b(name != null ? name : "@");
}
@Override
public EntityType getType()
{
return EntityType.MINECART_COMMAND;
}
@Override
public void sendMessage(String message)
{
}
@Override
public void sendMessage(String[] messages)
{
}
@Override
public String getName()
{
return ((net.minecraft.entity.EntityMinecartCommandBlock) getHandle()).func_145822_e().getCommandSenderName();
}
@Override
public boolean isOp()
{
return true;
}
@Override
public void setOp(boolean value)
{
throw new UnsupportedOperationException("Cannot change operator status of a minecart");
}
@Override
public boolean isPermissionSet(String name)
{
return perm.isPermissionSet(name);
}
@Override
public boolean isPermissionSet(Permission perm)
{
return this.perm.isPermissionSet(perm);
}
@Override
public boolean hasPermission(String name)
{
return perm.hasPermission(name);
}
@Override
public boolean hasPermission(Permission perm)
{
return this.perm.hasPermission(perm);
}
@Override
public PermissionAttachment addAttachment(Plugin plugin, String name, boolean value)
{
return perm.addAttachment(plugin, name, value);
}
@Override
public PermissionAttachment addAttachment(Plugin plugin)
{
return perm.addAttachment(plugin);
}
@Override
public PermissionAttachment addAttachment(Plugin plugin, String name, boolean value, int ticks)
{
return perm.addAttachment(plugin, name, value, ticks);
}
@Override
public PermissionAttachment addAttachment(Plugin plugin, int ticks)
{
return perm.addAttachment(plugin, ticks);
}
@Override
public void removeAttachment(PermissionAttachment attachment)
{
perm.removeAttachment(attachment);
}
@Override
public void recalculatePermissions()
{
perm.recalculatePermissions();
}
@Override
public Set<PermissionAttachmentInfo> getEffectivePermissions()
{
return perm.getEffectivePermissions();
}
@Override
public Server getServer()
{
return Bukkit.getServer();
}
}