package com.io.yutian.gemsystem.util; import org.bukkit.Color; import org.bukkit.Location; import org.bukkit.World; import java.util.List; import java.util.Random; public class RandomUtil { public static boolean random(double d) { return d >= new Random().nextFloat(); } public static Color getRandomColor() { Random random = new Random(); int r = random.nextInt(256); int g = random.nextInt(256); int b = random.nextInt(256); return Color.fromRGB(r, g, b); } public static Location getRandomLocation(World world, double minX, double maxX, double minZ, double maxZ) { double rx = getRandomDouble(minX, maxX, 3); double rz = getRandomDouble(minZ, maxZ, 3); int y = world.getHighestBlockAt((int)rx, (int)rz).getY()+1; Location location = new Location(world, rx, y, rz); return location; } public static E getRandomElement(List list) { if (list.size() == 0) { return null; } return list.get(getRandomInt(0, list.size()-1)); } public static String getRandomString(String[] array) { Random r = new Random(); return array[getRandomInt(0, array.length)]; } public static int getRandomInt(int min, int max) { if (min == max) { return max; } Random r = new Random(); int i = min < max ? min : max; int a = min < max ? max : min; return r.nextInt(a - i + 1) + i; } public static double getRandomDouble(double min, double max, int scl) { int pow = (int) Math.pow(10, scl); return Math.floor((Math.random() * (max - min) + min) * pow) / pow; } }