mirror of
https://github.com/Motschen/Blur.git
synced 2025-12-16 11:45:09 +01:00
Add config GUI
This commit is contained in:
@@ -8,6 +8,8 @@ import org.apache.commons.lang3.ArrayUtils;
|
|||||||
|
|
||||||
import com.google.common.base.Throwables;
|
import com.google.common.base.Throwables;
|
||||||
|
|
||||||
|
import static com.tterrag.blurbg.BlurBG.*;
|
||||||
|
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.client.gui.GuiChat;
|
import net.minecraft.client.gui.GuiChat;
|
||||||
import net.minecraft.client.renderer.EntityRenderer;
|
import net.minecraft.client.renderer.EntityRenderer;
|
||||||
@@ -18,6 +20,7 @@ import net.minecraft.util.ResourceLocation;
|
|||||||
import net.minecraftforge.client.event.GuiOpenEvent;
|
import net.minecraftforge.client.event.GuiOpenEvent;
|
||||||
import net.minecraftforge.common.MinecraftForge;
|
import net.minecraftforge.common.MinecraftForge;
|
||||||
import net.minecraftforge.common.config.Configuration;
|
import net.minecraftforge.common.config.Configuration;
|
||||||
|
import net.minecraftforge.fml.client.event.ConfigChangedEvent.OnConfigChangedEvent;
|
||||||
import net.minecraftforge.fml.common.Mod;
|
import net.minecraftforge.fml.common.Mod;
|
||||||
import net.minecraftforge.fml.common.Mod.EventHandler;
|
import net.minecraftforge.fml.common.Mod.EventHandler;
|
||||||
import net.minecraftforge.fml.common.Mod.Instance;
|
import net.minecraftforge.fml.common.Mod.Instance;
|
||||||
@@ -27,12 +30,18 @@ import net.minecraftforge.fml.common.gameevent.TickEvent.Phase;
|
|||||||
import net.minecraftforge.fml.common.gameevent.TickEvent.RenderTickEvent;
|
import net.minecraftforge.fml.common.gameevent.TickEvent.RenderTickEvent;
|
||||||
import net.minecraftforge.fml.relauncher.ReflectionHelper;
|
import net.minecraftforge.fml.relauncher.ReflectionHelper;
|
||||||
|
|
||||||
@Mod(modid = "blurbg", name = "BlurBG", version = "@VERSION@", acceptedMinecraftVersions = "[1.9, 1.12)", clientSideOnly = true)
|
@Mod(modid = MODID, name = MOD_NAME, version = VERSION, acceptedMinecraftVersions = "[1.9, 1.12)", clientSideOnly = true, guiFactory = "com.tterrag.blurbg.config.BlurGuiFactory")
|
||||||
public class BlurBG {
|
public class BlurBG {
|
||||||
|
|
||||||
|
public static final String MODID = "blurbg";
|
||||||
|
public static final String MOD_NAME = "BlurBG";
|
||||||
|
public static final String VERSION = "@VERSION@";
|
||||||
|
|
||||||
@Instance
|
@Instance
|
||||||
public static BlurBG instance;
|
public static BlurBG instance;
|
||||||
|
|
||||||
|
public Configuration config;
|
||||||
|
|
||||||
private String[] blurExclusions;
|
private String[] blurExclusions;
|
||||||
|
|
||||||
private Field _listShaders;
|
private Field _listShaders;
|
||||||
@@ -45,7 +54,11 @@ public class BlurBG {
|
|||||||
public void preInit(FMLPreInitializationEvent event) {
|
public void preInit(FMLPreInitializationEvent event) {
|
||||||
MinecraftForge.EVENT_BUS.register(this);
|
MinecraftForge.EVENT_BUS.register(this);
|
||||||
|
|
||||||
Configuration config = new Configuration(new File(event.getModConfigurationDirectory(), "blurbg.cfg"));
|
config = new Configuration(new File(event.getModConfigurationDirectory(), "blurbg.cfg"));
|
||||||
|
saveConfig();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void saveConfig() {
|
||||||
|
|
||||||
blurExclusions = config.getStringList("guiExclusions", Configuration.CATEGORY_GENERAL, new String[] {
|
blurExclusions = config.getStringList("guiExclusions", Configuration.CATEGORY_GENERAL, new String[] {
|
||||||
GuiChat.class.getName(),
|
GuiChat.class.getName(),
|
||||||
@@ -66,6 +79,13 @@ public class BlurBG {
|
|||||||
config.save();
|
config.save();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@SubscribeEvent
|
||||||
|
public void onConfigChanged(OnConfigChangedEvent event) {
|
||||||
|
if (event.getModID().equals(MODID)) {
|
||||||
|
saveConfig();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@SuppressWarnings("null")
|
@SuppressWarnings("null")
|
||||||
@SubscribeEvent
|
@SubscribeEvent
|
||||||
public void onGuiChange(GuiOpenEvent event) {
|
public void onGuiChange(GuiOpenEvent event) {
|
||||||
|
|||||||
15
src/main/java/com/tterrag/blurbg/config/BlurConfigGui.java
Normal file
15
src/main/java/com/tterrag/blurbg/config/BlurConfigGui.java
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
package com.tterrag.blurbg.config;
|
||||||
|
|
||||||
|
import com.tterrag.blurbg.BlurBG;
|
||||||
|
|
||||||
|
import net.minecraft.client.gui.GuiScreen;
|
||||||
|
import net.minecraftforge.common.config.ConfigElement;
|
||||||
|
import net.minecraftforge.common.config.Configuration;
|
||||||
|
import net.minecraftforge.fml.client.config.GuiConfig;
|
||||||
|
|
||||||
|
public class BlurConfigGui extends GuiConfig {
|
||||||
|
|
||||||
|
public BlurConfigGui(GuiScreen parentScreen) {
|
||||||
|
super(parentScreen, new ConfigElement(BlurBG.instance.config.getCategory(Configuration.CATEGORY_GENERAL)).getChildElements(), "blurbg", false, false, "blurbg.config.title");
|
||||||
|
}
|
||||||
|
}
|
||||||
30
src/main/java/com/tterrag/blurbg/config/BlurGuiFactory.java
Normal file
30
src/main/java/com/tterrag/blurbg/config/BlurGuiFactory.java
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
package com.tterrag.blurbg.config;
|
||||||
|
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
import net.minecraft.client.Minecraft;
|
||||||
|
import net.minecraft.client.gui.GuiScreen;
|
||||||
|
import net.minecraftforge.fml.client.IModGuiFactory;
|
||||||
|
|
||||||
|
public class BlurGuiFactory implements IModGuiFactory {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void initialize(Minecraft minecraftInstance) {}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Class<? extends GuiScreen> mainConfigGuiClass() {
|
||||||
|
return BlurConfigGui.class;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Set<RuntimeOptionCategoryElement> runtimeGuiCategories() {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Deprecated
|
||||||
|
public RuntimeOptionGuiHandler getHandlerFor(RuntimeOptionCategoryElement element) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
16
src/main/resources/mcmod.info
Normal file
16
src/main/resources/mcmod.info
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"modid": "blurbg",
|
||||||
|
"name": "BlurBG",
|
||||||
|
"description": "Adds a blurry background when viewing GUIs",
|
||||||
|
"version": "${version}",
|
||||||
|
"mcversion": "${mcversion}",
|
||||||
|
"url": "http://tterrag.com",
|
||||||
|
"updateUrl": "http://ci.tterrag.com/job/BlurBG",
|
||||||
|
"authorList": ["tterrag"],
|
||||||
|
"credits": "",
|
||||||
|
"logoFile": "",
|
||||||
|
"screenshots": [],
|
||||||
|
"dependencies": []
|
||||||
|
}
|
||||||
|
]
|
||||||
Reference in New Issue
Block a user