Fix prevent AntiCheat Block Breaking (In Scripts)

Fix prevent AntiCheat Block Breaking (In Scripts)
This commit is contained in:
Anon 2024-12-25 16:56:07 +01:00 committed by GitHub
commit 2409de2a2f
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 100 additions and 16 deletions

View file

@ -0,0 +1,63 @@
using System;
namespace MinecraftClient.Mapping
{
public static class DirectionExtensions
{
public static Direction GetOpposite(this Direction direction)
{
switch (direction)
{
case Direction.SouthEast:
return Direction.NorthEast;
case Direction.SouthWest:
return Direction.NorthWest;
case Direction.NorthEast:
return Direction.SouthEast;
case Direction.NorthWest:
return Direction.SouthWest;
case Direction.West:
return Direction.East;
case Direction.East:
return Direction.West;
case Direction.North:
return Direction.South;
case Direction.South:
return Direction.North;
case Direction.Down:
return Direction.Up;
case Direction.Up:
return Direction.Down;
default:
return Direction.Up;
}
}
public static Direction[] HORIZONTAL =
{
Direction.South,
Direction.West,
Direction.North,
Direction.East
};
public static Direction FromRotation(double rotation)
{
double floor = Math.Floor((rotation / 90.0) + 0.5);
int value = (int)floor & 3;
return FromHorizontal(value);
}
public static Direction FromHorizontal(int value)
{
return HORIZONTAL[Math.Abs(value % HORIZONTAL.Length)];
}
}
}