mirror of
https://github.com/squeek502/Squake.git
synced 2025-09-18 08:25:53 -04:00
Merge branch '1.10.2' of https://github.com/squeek502/Squake into 1.12.2
# Conflicts: # java/squeek/quakemovement/ModQuakeMovement.java
This commit is contained in:
commit
9d29ddaa1f
@ -1,12 +1,15 @@
|
||||
package squeek.quakemovement;
|
||||
|
||||
import java.io.File;
|
||||
import net.minecraftforge.common.config.Configuration;
|
||||
import net.minecraftforge.common.config.Property;
|
||||
import net.minecraftforge.fml.client.event.ConfigChangedEvent;
|
||||
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
||||
|
||||
import java.io.File;
|
||||
|
||||
public class ModConfig
|
||||
{
|
||||
private static final String CATEGORY_MOVEMENT = "movement";
|
||||
public static final String CATEGORY_MOVEMENT = "movement";
|
||||
|
||||
public static float TRIMP_MULTIPLIER;
|
||||
private static final String TRIMP_MULTIPLIER_NAME = "trimpMultiplier";
|
||||
@ -65,14 +68,19 @@ public class ModConfig
|
||||
private static final String ENABLED_NAME = "enabled";
|
||||
private static final boolean ENABLED_DEFAULT = true;
|
||||
|
||||
private static Configuration config;
|
||||
public static Configuration config;
|
||||
|
||||
public static void init(File file)
|
||||
{
|
||||
if (config == null)
|
||||
{
|
||||
config = new Configuration(file);
|
||||
|
||||
load();
|
||||
}
|
||||
}
|
||||
|
||||
public static void 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);
|
||||
@ -104,12 +112,19 @@ public class ModConfig
|
||||
}
|
||||
|
||||
public static void save()
|
||||
{
|
||||
if (config.hasChanged())
|
||||
{
|
||||
config.save();
|
||||
}
|
||||
}
|
||||
|
||||
public static void load()
|
||||
@SubscribeEvent
|
||||
public void onConfigurationChangedEvent(ConfigChangedEvent.OnConfigChangedEvent event)
|
||||
{
|
||||
config.load();
|
||||
if (event.getModID().equalsIgnoreCase(ModInfo.MODID))
|
||||
{
|
||||
load();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
13
java/squeek/quakemovement/ModConfigGui.java
Normal file
13
java/squeek/quakemovement/ModConfigGui.java
Normal file
@ -0,0 +1,13 @@
|
||||
package squeek.quakemovement;
|
||||
|
||||
import net.minecraft.client.gui.GuiScreen;
|
||||
import net.minecraftforge.common.config.ConfigElement;
|
||||
import net.minecraftforge.fml.client.config.GuiConfig;
|
||||
|
||||
public class ModConfigGui extends GuiConfig
|
||||
{
|
||||
public ModConfigGui(GuiScreen parentScreen)
|
||||
{
|
||||
super(parentScreen, new ConfigElement(ModConfig.config.getCategory(ModConfig.CATEGORY_MOVEMENT)).getChildElements(), ModInfo.MODID, false, false, GuiConfig.getAbridgedConfigPath(ModConfig.config.toString()));
|
||||
}
|
||||
}
|
33
java/squeek/quakemovement/ModConfigGuiFactory.java
Normal file
33
java/squeek/quakemovement/ModConfigGuiFactory.java
Normal file
@ -0,0 +1,33 @@
|
||||
package squeek.quakemovement;
|
||||
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.gui.GuiScreen;
|
||||
import net.minecraftforge.fml.client.IModGuiFactory;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
public class ModConfigGuiFactory implements IModGuiFactory
|
||||
{
|
||||
@Override
|
||||
public void initialize(Minecraft minecraftInstance)
|
||||
{
|
||||
}
|
||||
|
||||
@Override
|
||||
public Class<? extends GuiScreen> mainConfigGuiClass()
|
||||
{
|
||||
return ModConfigGui.class;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Set<RuntimeOptionCategoryElement> runtimeGuiCategories()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public RuntimeOptionGuiHandler getHandlerFor(RuntimeOptionCategoryElement element)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
@ -4,4 +4,5 @@ public final class ModInfo
|
||||
{
|
||||
public static final String MODID = "squake";
|
||||
public static final String VERSION = "${version}";
|
||||
public static final String CONFIG_GUI_FACTORY_CLASS = "squeek.quakemovement.ModConfigGuiFactory";
|
||||
}
|
||||
|
@ -11,7 +11,7 @@ import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
|
||||
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
|
||||
@Mod(modid = ModInfo.MODID, version = ModInfo.VERSION, name="Squake", acceptedMinecraftVersions="[1.12.2]", dependencies = "after:squeedometer")
|
||||
@Mod(modid = ModInfo.MODID, version = ModInfo.VERSION, name="Squake", acceptedMinecraftVersions="[1.12.2]", dependencies = "after:squeedometer", guiFactory = ModInfo.CONFIG_GUI_FACTORY_CLASS)
|
||||
public class ModQuakeMovement
|
||||
{
|
||||
// The instance of your mod that Forge uses.
|
||||
@ -22,6 +22,7 @@ public class ModQuakeMovement
|
||||
public void preInit(FMLPreInitializationEvent event)
|
||||
{
|
||||
ModConfig.init(event.getSuggestedConfigurationFile());
|
||||
MinecraftForge.EVENT_BUS.register(new ModConfig());
|
||||
MinecraftForge.EVENT_BUS.register(this);
|
||||
if (event.getSide() == Side.CLIENT)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user