[BREAKING] Move isBadCoordinate to LocUtil.

This commit is contained in:
asofold 2016-12-27 15:30:51 +01:00
parent 68eec44f14
commit b406204ce2
5 changed files with 38 additions and 39 deletions

View File

@ -33,7 +33,7 @@ import fr.neatmonster.nocheatplus.checks.net.model.DataPacketFlying;
import fr.neatmonster.nocheatplus.config.ConfPaths;
import fr.neatmonster.nocheatplus.config.ConfigManager;
import fr.neatmonster.nocheatplus.logging.Streams;
import fr.neatmonster.nocheatplus.utilities.CheckUtils;
import fr.neatmonster.nocheatplus.utilities.location.LocUtil;
/**
* Run checks related to moving (pos/look/flying). Skip packets that shouldn't
@ -169,10 +169,10 @@ public class MovingFlying extends BaseAdapter {
}
private boolean isInvalidContent(final DataPacketFlying packetData) {
if (packetData.hasPos && CheckUtils.isBadCoordinate(packetData.getX(), packetData.getY(), packetData.getZ())) {
if (packetData.hasPos && LocUtil.isBadCoordinate(packetData.getX(), packetData.getY(), packetData.getZ())) {
return true;
}
if (packetData.hasLook && CheckUtils.isBadCoordinate(packetData.getYaw(), packetData.getPitch())) {
if (packetData.hasLook && LocUtil.isBadCoordinate(packetData.getYaw(), packetData.getPitch())) {
return true;
}
return false;

View File

@ -412,7 +412,7 @@ public class VehicleChecks extends CheckListener {
if (moveInfo.from.hasIllegalCoords()) {
// (from is from the past moves usually.)
// Attempt to use the current location.
if (CheckUtils.isBadCoordinate(vehicleLocation.getX(), vehicleLocation.getY(), vehicleLocation.getZ())) {
if (LocUtil.isBadCoordinate(vehicleLocation.getX(), vehicleLocation.getY(), vehicleLocation.getZ())) {
// Can't recover vehicle coordinates.
NCPAPIProvider.getNoCheatPlusAPI().getLogManager().warning(Streams.STATUS, CheckUtils.getLogMessagePrefix(player, checkType) + "Could not recover vehicle coordinates. Player will be kicked.");
// Just kick.

View File

@ -100,39 +100,6 @@ public class CheckUtils {
return ref;
}
/**
* Check for NaN, infinity.
*
* @param floats
* the floats
* @return true, if is bad coordinate
*/
public static boolean isBadCoordinate(float ... floats) {
for (int i = 0; i < floats.length; i++) {
if (Float.isNaN(floats[i]) || Float.isInfinite(floats[i])) {
return true;
}
}
return false;
}
/**
* Check for NaN, infinity, some random maximum coordinate.
*
* @param doubles
* the doubles
* @return true, if is bad coordinate
*/
public static boolean isBadCoordinate(double ... doubles) {
for (int i = 0; i < doubles.length; i++) {
final double x = doubles[i];
if (Double.isNaN(x) || Double.isInfinite(x) || Math.abs(x) > 3.2E7D) {
return true;
}
}
return false;
}
/**
* Check for config flag and exemption (hasBypass). Meant thread-safe.
*

View File

@ -264,6 +264,39 @@ public class LocUtil {
return Float.isNaN(pitch) || pitch < -90f || pitch > 90f;
}
/**
* Check for NaN, infinity.
*
* @param floats
* the floats
* @return true, if is bad coordinate
*/
public static boolean isBadCoordinate(float ... floats) {
for (int i = 0; i < floats.length; i++) {
if (Float.isNaN(floats[i]) || Float.isInfinite(floats[i])) {
return true;
}
}
return false;
}
/**
* Check for NaN, infinity, some random maximum coordinate.
*
* @param doubles
* the doubles
* @return true, if is bad coordinate
*/
public static boolean isBadCoordinate(double ... doubles) {
for (int i = 0; i < doubles.length; i++) {
final double x = doubles[i];
if (Double.isNaN(x) || Double.isInfinite(x) || Math.abs(x) > 3.2E7D) {
return true;
}
}
return false;
}
/**
* Quick out of bounds check for yaw and pitch.
*

View File

@ -29,7 +29,6 @@ import fr.neatmonster.nocheatplus.compat.blocks.changetracker.BlockChangeTracker
import fr.neatmonster.nocheatplus.components.location.IGetBlockPosition;
import fr.neatmonster.nocheatplus.components.location.IGetBukkitLocation;
import fr.neatmonster.nocheatplus.components.location.IGetPosition;
import fr.neatmonster.nocheatplus.utilities.CheckUtils;
import fr.neatmonster.nocheatplus.utilities.TickTask;
import fr.neatmonster.nocheatplus.utilities.collision.CollisionUtil;
import fr.neatmonster.nocheatplus.utilities.map.BlockCache;
@ -384,7 +383,7 @@ public class RichBoundsLocation implements IGetBukkitLocation, IGetBlockPosition
* @return true, if successful
*/
public boolean hasIllegalCoords() {
return CheckUtils.isBadCoordinate(minX, maxX, minY, maxY, minZ, maxZ);
return LocUtil.isBadCoordinate(minX, maxX, minY, maxY, minZ, maxZ);
}
/**