implement more widgets and screen fixes

This commit is contained in:
Draylar
2021-03-12 16:09:44 -06:00
parent 46d78cc585
commit 683ff10962
6 changed files with 59 additions and 22 deletions
@@ -8,8 +8,6 @@ import draylar.omegaconfig.api.SyncableExclusionStrategy;
import draylar.omegaconfig.exception.NoValidConstructorException;
import io.netty.buffer.Unpooled;
import net.fabricmc.api.ModInitializer;
import net.fabricmc.fabric.api.network.ServerSidePacketRegistry;
import net.fabricmc.fabric.api.networking.v1.ServerLoginNetworking;
import net.fabricmc.fabric.api.networking.v1.ServerPlayConnectionEvents;
import net.fabricmc.fabric.api.networking.v1.ServerPlayNetworking;
import net.fabricmc.loader.api.FabricLoader;
@@ -101,7 +99,7 @@ public class OmegaConfig implements ModInitializer {
}
}
private static <T extends Config> void writeConfig(Class<T> configClass, T instance) {
public static <T extends Config> void writeConfig(Class<T> configClass, T instance) {
// Write the config to disk with the default values.
String json = GSON.toJson(instance);
@@ -199,7 +197,7 @@ public class OmegaConfig implements ModInitializer {
}
public static Path getConfigPath(Config config) {
return Paths.get(FabricLoader.getInstance().getConfigDir().toString(), String.format("%s.json", config.getFileName()));
return Paths.get(FabricLoader.getInstance().getConfigDir().toString(), String.format("%s.json", config.getName()));
}
public static boolean configExists(Config config) {
@@ -10,7 +10,6 @@ import net.minecraft.client.RunArgs;
import net.minecraft.client.gui.screen.Screen;
import net.minecraft.nbt.CompoundTag;
import net.minecraft.nbt.ListTag;
import org.jetbrains.annotations.Nullable;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Unique;
import org.spongepowered.asm.mixin.injection.At;
@@ -47,7 +46,7 @@ public class ClientMixin {
// find configuration class by name
for (Config config : OmegaConfig.getRegisteredConfigurations()) {
if (config.getFileName().equals(name)) {
if (config.getName().equals(name)) {
// bring values from server to object
Config server = OmegaConfig.GSON.fromJson(json, config.getClass());
@@ -83,7 +82,7 @@ public class ClientMixin {
private void restoreConfigurations(Screen screen, CallbackInfo ci) {
for(Config config : savedClientConfig) {
for(Config potentiallySynced : OmegaConfig.getRegisteredConfigurations()) {
if(config.getFileName().equals(potentiallySynced.getFileName())) {
if(config.getName().equals(potentiallySynced.getName())) {
boolean allConfigSyncs = Arrays.stream(config.getClass().getAnnotations()).anyMatch(annotation -> annotation instanceof Syncing);
// mutate object in registered configurations