Files
Meteor-Rejects/src/main/java/anticope/rejects/utils/RejectsUtils.java
2023-02-03 19:43:45 +01:00

58 lines
2.0 KiB
Java

package anticope.rejects.utils;
import anticope.rejects.utils.seeds.Seeds;
import meteordevelopment.meteorclient.MeteorClient;
import meteordevelopment.meteorclient.systems.modules.Module;
import meteordevelopment.meteorclient.systems.modules.Modules;
import meteordevelopment.meteorclient.utils.PostInit;
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
import net.minecraft.entity.Entity;
import net.minecraft.util.math.MathHelper;
import java.util.Random;
import static meteordevelopment.meteorclient.MeteorClient.mc;
public class RejectsUtils {
@PostInit
public static void init() {
Runtime.getRuntime().addShutdownHook(new Thread(() -> {
System.out.println("saving seeds...");
RejectsConfig.get().save(MeteorClient.FOLDER);
Seeds.get().save(MeteorClient.FOLDER);
}));
}
public static String getModuleName(String name) {
int dupe = 0;
for (Module module : Modules.get().getAll()) {
if (module.name.equals(name)) {
dupe++;
break;
}
}
return dupe == 0 ? name : getModuleName(name + "*".repeat(dupe));
}
public static String getRandomPassword(int num) {
String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_";
Random random = new Random();
StringBuilder sb = new StringBuilder();
for (int i = 0; i < num; i++) {
int number = random.nextInt(63);
sb.append(str.charAt(number));
}
return sb.toString();
}
public static boolean inFov(Entity entity, double fov) {
if (fov >= 360) return true;
float[] angle = PlayerUtils.calculateAngle(entity.getBoundingBox().getCenter());
double xDist = MathHelper.angleBetween(angle[0], mc.player.getYaw());
double yDist = MathHelper.angleBetween(angle[1], mc.player.getPitch());
double angleDistance = Math.hypot(xDist, yDist);
return angleDistance <= fov;
}
}