mirror of
https://github.com/squeek502/Squake.git
synced 2025-08-04 02:07:37 -04:00
100 lines
5.8 KiB
Java
100 lines
5.8 KiB
Java
package squeek.quakemovement;
|
|
|
|
import java.io.File;
|
|
import net.minecraftforge.common.Configuration;
|
|
|
|
public class ModConfig
|
|
{
|
|
private static final String CATEGORY_MOVEMENT = "movement";
|
|
|
|
public static float TRIMP_MULTIPLIER;
|
|
private static final String TRIMP_MULTIPLIER_NAME = "trimpMultiplier";
|
|
private static final double TRIMP_MULTIPLIER_DEFAULT = 1.4D;
|
|
|
|
public static float HARD_CAP;
|
|
private static final String HARD_CAP_NAME = "hardCapThreshold";
|
|
private static final double HARD_CAP_DEFAULT = 2.0D;
|
|
|
|
public static float SOFT_CAP;
|
|
private static final String SOFT_CAP_NAME = "softCapThreshold";
|
|
private static final double SOFT_CAP_DEFAULT = 1.4D;
|
|
|
|
public static float SOFT_CAP_DEGEN;
|
|
private static final String SOFT_CAP_DEGEN_NAME = "softCapDegen";
|
|
private static final double SOFT_CAP_DEGEN_DEFAULT = 0.65D; // 0.65
|
|
|
|
public static boolean SHARKING_ENABLED;
|
|
private static final String SHARKING_ENABLED_NAME = "sharkingEnabled";
|
|
private static final boolean SHARKING_ENABLED_DEFAULT = true;
|
|
|
|
public static double SHARKING_SURFACE_TENSION;
|
|
private static final String SHARKING_SURFACE_TENSION_NAME = "sharkingSurfaceTension";
|
|
private static final double SHARKING_SURFACE_TENSION_DEFAULT = 0.2D;
|
|
|
|
public static double SHARKING_WATER_FRICTION;
|
|
private static final String SHARKING_WATER_FRICTION_NAME = "sharkingWaterFriction";
|
|
private static final double SHARKING_WATER_FRICTION_DEFAULT = 0.1D;
|
|
|
|
public static double ACCELERATE;
|
|
private static final String ACCELERATE_NAME = "groundAccelerate";
|
|
private static final double ACCELERATE_DEFAULT = 10.0D;
|
|
|
|
public static double AIR_ACCELERATE;
|
|
private static final String AIR_ACCELERATE_NAME = "airAccelerate";
|
|
private static final double AIR_ACCELERATE_DEFAULT = 14.0D;
|
|
|
|
public static boolean UNCAPPED_BUNNYHOP_ENABLED;
|
|
private static final String UNCAPPED_BUNNYHOP_ENABLED_NAME = "uncappedBunnyhopEnabled";
|
|
private static final boolean UNCAPPED_BUNNYHOP_ENABLED_DEFAULT = true;
|
|
|
|
public static boolean TRIMPING_ENABLED;
|
|
private static final String TRIMPING_ENABLED_NAME = "trimpEnabled";
|
|
private static final boolean TRIMPING_ENABLED_DEFAULT = true;
|
|
|
|
public static double INCREASED_FALL_DISTANCE;
|
|
private static final String INCREASED_FALL_DISTANCE_NAME = "fallDistanceThresholdIncrease";
|
|
private static final double INCREASED_FALL_DISTANCE_DEFAULT = 0.0D;
|
|
|
|
public static double MAX_AIR_ACCEL_PER_TICK;
|
|
private static final String MAX_AIR_ACCEL_PER_TICK_NAME = "maxAirAccelerationPerTick";
|
|
private static final double MAX_AIR_ACCEL_PER_TICK_DEFAULT = 0.045D;
|
|
|
|
private static Configuration config;
|
|
|
|
public static void init(File file)
|
|
{
|
|
config = new Configuration(file);
|
|
|
|
load();
|
|
|
|
UNCAPPED_BUNNYHOP_ENABLED = config.get(CATEGORY_MOVEMENT, UNCAPPED_BUNNYHOP_ENABLED_NAME, UNCAPPED_BUNNYHOP_ENABLED_DEFAULT, "if enabled, the soft and hard caps will not be applied at all").getBoolean(UNCAPPED_BUNNYHOP_ENABLED_DEFAULT);
|
|
AIR_ACCELERATE = config.get(CATEGORY_MOVEMENT, AIR_ACCELERATE_NAME, AIR_ACCELERATE_DEFAULT, "a higher value means you can turn more sharply in the air without losing speed").getDouble(AIR_ACCELERATE_DEFAULT);
|
|
MAX_AIR_ACCEL_PER_TICK = config.get(CATEGORY_MOVEMENT, MAX_AIR_ACCEL_PER_TICK_NAME, MAX_AIR_ACCEL_PER_TICK_DEFAULT, "a higher value means faster air acceleration").getDouble(MAX_AIR_ACCEL_PER_TICK_DEFAULT);
|
|
ACCELERATE = config.get(CATEGORY_MOVEMENT, ACCELERATE_NAME, ACCELERATE_DEFAULT, "a higher value means you accelerate faster on the ground").getDouble(ACCELERATE_DEFAULT);
|
|
HARD_CAP = (float) (config.get(CATEGORY_MOVEMENT, HARD_CAP_NAME, HARD_CAP_DEFAULT, "see " + UNCAPPED_BUNNYHOP_ENABLED_NAME + "; if you ever jump while above the hard cap speed (moveSpeed*hardCapThreshold), your speed is set to the hard cap speed").getDouble(HARD_CAP_DEFAULT));
|
|
SOFT_CAP = (float) (config.get(CATEGORY_MOVEMENT, SOFT_CAP_NAME, SOFT_CAP_DEFAULT, "see " + UNCAPPED_BUNNYHOP_ENABLED_NAME + " and " + SOFT_CAP_DEGEN_NAME + "; soft cap speed = (moveSpeed*softCapThreshold)").getDouble(SOFT_CAP_DEFAULT));
|
|
SOFT_CAP_DEGEN = (float) (config.get(CATEGORY_MOVEMENT, SOFT_CAP_DEGEN_NAME, SOFT_CAP_DEGEN_DEFAULT, "the modifier used to calculate speed lost when jumping above the soft cap").getDouble(SOFT_CAP_DEGEN_DEFAULT));
|
|
|
|
SHARKING_ENABLED = config.get(CATEGORY_MOVEMENT, SHARKING_ENABLED_NAME, SHARKING_ENABLED_DEFAULT, "if enabled, holding jump while swimming at the surface of water allows you to glide").getBoolean(SHARKING_ENABLED_DEFAULT);
|
|
SHARKING_WATER_FRICTION = 1.0D - config.get(CATEGORY_MOVEMENT, SHARKING_WATER_FRICTION_NAME, SHARKING_WATER_FRICTION_DEFAULT, "amount of friction while sharking (between 0 and 1)").getDouble(SHARKING_WATER_FRICTION_DEFAULT) * 0.05D;
|
|
SHARKING_SURFACE_TENSION = 1.0D - config.get(CATEGORY_MOVEMENT, SHARKING_SURFACE_TENSION_NAME, SHARKING_SURFACE_TENSION_DEFAULT, "amount of downward momentum you lose while entering water, a higher value means that you are able to shark after hitting the water from higher up").getDouble(SHARKING_SURFACE_TENSION_DEFAULT);
|
|
|
|
TRIMPING_ENABLED = config.get(CATEGORY_MOVEMENT, TRIMPING_ENABLED_NAME, TRIMPING_ENABLED_DEFAULT, "if enabled, holding sneak while jumping will convert your horizontal speed into vertical speed").getBoolean(TRIMPING_ENABLED_DEFAULT);
|
|
TRIMP_MULTIPLIER = (float) (config.get(CATEGORY_MOVEMENT, TRIMP_MULTIPLIER_NAME, TRIMP_MULTIPLIER_DEFAULT, "a lower value means less horizontal speed converted to vertical speed and vice versa").getDouble(TRIMP_MULTIPLIER_DEFAULT));
|
|
|
|
INCREASED_FALL_DISTANCE = (float) (config.get(CATEGORY_MOVEMENT, INCREASED_FALL_DISTANCE_NAME, INCREASED_FALL_DISTANCE_DEFAULT, "increases the distance needed to fall in order to take fall damage; this is a server-side setting").getDouble(INCREASED_FALL_DISTANCE_DEFAULT));
|
|
|
|
save();
|
|
}
|
|
|
|
public static void save()
|
|
{
|
|
config.save();
|
|
}
|
|
|
|
public static void load()
|
|
{
|
|
config.load();
|
|
}
|
|
}
|