mirror of
https://github.com/NoCheatPlus/NoCheatPlus.git
synced 2024-09-27 14:13:11 +02:00
[BREAKING] Move isBadCoordinate to LocUtil.
This commit is contained in:
parent
68eec44f14
commit
b406204ce2
@ -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;
|
||||
|
@ -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.
|
||||
|
@ -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.
|
||||
*
|
||||
|
@ -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.
|
||||
*
|
||||
|
@ -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);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user