package net.minecraft.command.type.custom.coordinate;
import net.minecraft.command.CommandException;
import net.minecraft.command.ICommandSender;
import net.minecraft.command.type.custom.coordinate.Coordinate.CoordValue;
public class SingleCoordinate
{
public static final CoordValue tildeCoord = new CoordValue.Constant(0.0, false);
public static final Coordinate tildexC = new x(tildeCoord, true, true);
public static final Coordinate tildexNC = new x(tildeCoord, true, false);
public static final Coordinate tildeyC = new y(tildeCoord, true, true);
public static final Coordinate tildeyNC = new y(tildeCoord, true, false);
public static final Coordinate tildezC = new z(tildeCoord, true, true);
public static final Coordinate tildezNC = new z(tildeCoord, true, false);
private SingleCoordinate()
{
}
public static class x extends Coordinate
{
public x(final CoordValue comp, final boolean relative, final boolean centerBlock)
{
super(comp, relative, centerBlock);
}
@Override
public Double eval(final ICommandSender sender) throws CommandException
{
return this.evalCoord(sender, sender.getPositionVector().xCoord);
}
}
public static class y extends Coordinate
{
public y(final CoordValue comp, final boolean relative, final boolean centerBlock)
{
super(comp, relative, centerBlock);
}
@Override
public Double eval(final ICommandSender sender) throws CommandException
{
return this.evalCoord(sender, sender.getPositionVector().yCoord);
}
}
public static class z extends Coordinate
{
public z(final CoordValue comp, final boolean relative, final boolean centerBlock)
{
super(comp, relative, centerBlock);
}
@Override
public Double eval(final ICommandSender sender) throws CommandException
{
return this.evalCoord(sender, sender.getPositionVector().zCoord);
}
}
public static class shift extends Coordinate
{
public shift(final CoordValue comp, final boolean relative, final boolean centerBlock)
{
super(comp, relative, centerBlock);
}
@Override
public Double eval(final ICommandSender sender) throws CommandException
{
return this.evalShift(sender);
}
}
}