mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
56 lines
1.8 KiB
Java
56 lines
1.8 KiB
Java
package com.hbm.util;
|
|
|
|
import com.hbm.tileentity.machine.rbmk.RBMKDials;
|
|
import net.minecraft.util.MathHelper;
|
|
import net.minecraft.world.GameRules;
|
|
import net.minecraft.world.World;
|
|
|
|
public class GameRuleHelper {
|
|
|
|
public static double getClampedDouble(World world, RBMKDials.RBMKKeys rule, double min, double max) {
|
|
return MathHelper.clamp_double(GameRuleHelper.parseDouble(world, world.getGameRules().getGameRuleStringValue(rule.keyString), (double) rule.defValue), min, max);
|
|
}
|
|
|
|
public static int getClampedInt(World world, RBMKDials.RBMKKeys rule, int min, int max) {
|
|
return MathHelper.clamp_int(GameRuleHelper.parseInt(world, world.getGameRules().getGameRuleStringValue(rule.keyString), (int) rule.defValue), min, max);
|
|
}
|
|
|
|
public static double getDoubleMinimum(World world, RBMKDials.RBMKKeys rule, double min) {
|
|
return Math.max(GameRuleHelper.parseDouble(world, world.getGameRules().getGameRuleStringValue(rule.keyString), (double) rule.defValue), min);
|
|
}
|
|
|
|
public static int getIntegerMinimum(World world, RBMKDials.RBMKKeys rule, int min) {
|
|
return Math.max(GameRuleHelper.parseInt(world, world.getGameRules().getGameRuleStringValue(rule.keyString), (int) rule.defValue), min);
|
|
}
|
|
|
|
public static double parseDouble(World world, String s, double def) {
|
|
|
|
GameRules rules = world.getGameRules();
|
|
if(s.isEmpty() && !rules.hasRule(s)) {
|
|
rules.addGameRule(s, String.valueOf(def));
|
|
return def;
|
|
}
|
|
|
|
try {
|
|
return Double.parseDouble(s);
|
|
} catch(Exception ex) { }
|
|
|
|
return def;
|
|
}
|
|
|
|
public static int parseInt(World world, String s, int def) {
|
|
|
|
GameRules rules = world.getGameRules();
|
|
if(s.isEmpty() && !rules.hasRule(s)) {
|
|
rules.addGameRule(s, String.valueOf(def));
|
|
}
|
|
|
|
try {
|
|
return Integer.parseInt(s);
|
|
} catch(Exception ex) { }
|
|
|
|
return def;
|
|
}
|
|
|
|
}
|