diff --git a/cardinal-ui/src/main/java/folk/sisby/switchy/client/CardinalClientModuleLoader.java b/cardinal-ui/src/main/java/folk/sisby/switchy/client/CardinalClientModuleLoader.java index 5b3f51f..04cb965 100644 --- a/cardinal-ui/src/main/java/folk/sisby/switchy/client/CardinalClientModuleLoader.java +++ b/cardinal-ui/src/main/java/folk/sisby/switchy/client/CardinalClientModuleLoader.java @@ -9,6 +9,7 @@ import com.mojang.serialization.JsonOps; import folk.sisby.switchy.client.api.module.SwitchyClientModuleRegistry; import folk.sisby.switchy.client.api.modules.CardinalSerializerClientModule; +import folk.sisby.switchy.util.Feedback; import net.fabricmc.fabric.api.resource.IdentifiableResourceReloadListener; import net.minecraft.command.argument.NbtPathArgumentType; import net.minecraft.item.ItemStack; @@ -45,7 +46,7 @@ public class CardinalClientModuleLoader extends JsonDataLoader implements Identi * The global instance for this resource loader. */ public static final CardinalClientModuleLoader INSTANCE = new CardinalClientModuleLoader(new Gson()); - private static final Identifier ID = Identifier.of(SwitchyCardinalClient.ID, "module_loader"); + private static final Identifier ID = Feedback.identifier(SwitchyCardinalClient.ID, "module_loader"); private static final String KEY_CONDITION = "condition"; private static final String KEY_ICON = "icon"; private static final String KEY_ICON_PATH = "path"; diff --git a/cardinal/src/main/java/folk/sisby/switchy/CardinalModuleLoader.java b/cardinal/src/main/java/folk/sisby/switchy/CardinalModuleLoader.java index 237a668..89028dc 100644 --- a/cardinal/src/main/java/folk/sisby/switchy/CardinalModuleLoader.java +++ b/cardinal/src/main/java/folk/sisby/switchy/CardinalModuleLoader.java @@ -44,7 +44,7 @@ public class CardinalModuleLoader extends JsonDataLoader implements Identifiable * The global instance for this resource loader. */ public static final CardinalModuleLoader INSTANCE = new CardinalModuleLoader(new Gson()); - private static final Identifier ID = Identifier.of(SwitchyCardinal.ID, "module_loader"); + private static final Identifier ID = Feedback.identifier(SwitchyCardinal.ID, "module_loader"); private static final String KEY_DEFAULT = "default"; private static final String KEY_EDITABLE = "editable"; private static final String KEY_IF_MODS_LOADED = "ifModsLoaded"; diff --git a/client/src/main/java/folk/sisby/switchy/SwitchyClientServerNetworking.java b/client/src/main/java/folk/sisby/switchy/SwitchyClientServerNetworking.java index 5edcebd..ddf28cf 100644 --- a/client/src/main/java/folk/sisby/switchy/SwitchyClientServerNetworking.java +++ b/client/src/main/java/folk/sisby/switchy/SwitchyClientServerNetworking.java @@ -20,6 +20,7 @@ import folk.sisby.switchy.packet.S2CPreviewPresets; import folk.sisby.switchy.packet.S2CSwitchEvent; import folk.sisby.switchy.presets.SwitchyPresetsImpl; +import folk.sisby.switchy.util.Feedback; import folk.sisby.switchy.util.PresetConverter; import folk.sisby.switchy.util.SwitchyCommand; import net.fabricmc.fabric.api.networking.v1.PayloadTypeRegistry; diff --git a/client/src/main/java/folk/sisby/switchy/client/argument/IdentifiersArgumentType.java b/client/src/main/java/folk/sisby/switchy/client/argument/IdentifiersArgumentType.java index acb6cf3..817bc6e 100644 --- a/client/src/main/java/folk/sisby/switchy/client/argument/IdentifiersArgumentType.java +++ b/client/src/main/java/folk/sisby/switchy/client/argument/IdentifiersArgumentType.java @@ -7,6 +7,7 @@ import com.mojang.brigadier.exceptions.SimpleCommandExceptionType; import com.mojang.brigadier.suggestion.Suggestions; import com.mojang.brigadier.suggestion.SuggestionsBuilder; +import folk.sisby.switchy.util.Feedback; import net.minecraft.util.Identifier; import java.util.ArrayList; @@ -76,7 +77,7 @@ public List parse(StringReader reader) throws CommandSyntaxException while (reader.canRead() && isPathCharacterValid(reader.peek())) { reader.skip(); } - outList.add(Identifier.tryParse(reader.getString().substring(start, reader.getCursor()))); + outList.add(Feedback.identifier(reader.getString().substring(start, reader.getCursor()))); if (reader.canRead() && reader.peek() == ',') { reader.skip(); if (!reader.canRead() || reader.peek() == ' ') { diff --git a/compat-ui/src/main/java/folk/sisby/switchy/client/modules/OriginsClientModule.java b/compat-ui/src/main/java/folk/sisby/switchy/client/modules/OriginsClientModule.java index a4ad305..93d0153 100644 --- a/compat-ui/src/main/java/folk/sisby/switchy/client/modules/OriginsClientModule.java +++ b/compat-ui/src/main/java/folk/sisby/switchy/client/modules/OriginsClientModule.java @@ -48,7 +48,7 @@ public class OriginsClientModule implements SwitchyClientModule, SwitchyUIModule * Identifier for this module. * Must match {@link OriginsModule}. */ - public static final Identifier ID = Identifier.of("switchy", "origins"); + public static final Identifier ID = Feedback.identifier("switchy", "origins"); /** * The NBT key where the list of origins is stored. diff --git a/compat-ui/src/main/java/folk/sisby/switchy/client/modules/StyledNicknamesClientModule.java b/compat-ui/src/main/java/folk/sisby/switchy/client/modules/StyledNicknamesClientModule.java index 34927f6..93c90e5 100644 --- a/compat-ui/src/main/java/folk/sisby/switchy/client/modules/StyledNicknamesClientModule.java +++ b/compat-ui/src/main/java/folk/sisby/switchy/client/modules/StyledNicknamesClientModule.java @@ -6,6 +6,7 @@ import folk.sisby.switchy.modules.StyledNicknamesModule; import folk.sisby.switchy.ui.api.SwitchyUIPosition; import folk.sisby.switchy.ui.api.module.SwitchyUIModule; +import folk.sisby.switchy.util.Feedback; import io.wispforest.owo.ui.component.Components; import io.wispforest.owo.ui.core.Component; import net.minecraft.nbt.NbtCompound; @@ -28,7 +29,7 @@ public class StyledNicknamesClientModule implements SwitchyClientModule, Switchy * Identifier for this module. * Must match {@link StyledNicknamesModule}. */ - public static final Identifier ID = Identifier.of("switchy", "styled_nicknames"); + public static final Identifier ID = Feedback.identifier("switchy", "styled_nicknames"); /** * The NBT key where the nickname (in serialized text format) is stored. * Must match {@link StyledNicknamesModule#toClientNbt()}. diff --git a/compat/src/main/java/folk/sisby/switchy/modules/ApoliModule.java b/compat/src/main/java/folk/sisby/switchy/modules/ApoliModule.java index 7154831..83bab3b 100644 --- a/compat/src/main/java/folk/sisby/switchy/modules/ApoliModule.java +++ b/compat/src/main/java/folk/sisby/switchy/modules/ApoliModule.java @@ -7,6 +7,7 @@ import folk.sisby.switchy.api.module.SwitchyModuleInfo; import folk.sisby.switchy.api.module.SwitchyModuleRegistry; import folk.sisby.switchy.config.ApoliModuleConfig; +import folk.sisby.switchy.util.Feedback; import io.github.apace100.apoli.component.PowerHolderComponent; import io.github.apace100.apoli.power.InventoryPower; import io.github.apace100.apoli.power.Power; @@ -40,7 +41,7 @@ public class ApoliModule implements SwitchyModule { /** * Identifier for this module. */ - public static final Identifier ID = Identifier.of("switchy", "apoli"); + public static final Identifier ID = Feedback.identifier("switchy", "apoli"); /** * The config object for the apoli module, containing the current state of {@code /config/switchy/apoli.toml}. */ @@ -53,7 +54,7 @@ public class ApoliModule implements SwitchyModule { * The NBT key where the list of power data is stored. */ public static final String KEY_POWER_DATA_LIST = "PowerData"; - private static final Identifier COMMAND_SOURCE = Identifier.of("apoli", "command"); + private static final Identifier COMMAND_SOURCE = Feedback.identifier("apoli", "command"); /** * The NBT data for each power. */ diff --git a/compat/src/main/java/folk/sisby/switchy/modules/FabricTailorModuleData.java b/compat/src/main/java/folk/sisby/switchy/modules/FabricTailorModuleData.java index db40974..14808c6 100644 --- a/compat/src/main/java/folk/sisby/switchy/modules/FabricTailorModuleData.java +++ b/compat/src/main/java/folk/sisby/switchy/modules/FabricTailorModuleData.java @@ -1,6 +1,7 @@ package folk.sisby.switchy.modules; import folk.sisby.switchy.api.SwitchySerializable; +import folk.sisby.switchy.util.Feedback; import net.minecraft.nbt.NbtCompound; import net.minecraft.util.Identifier; import org.jetbrains.annotations.Nullable; @@ -17,7 +18,7 @@ public class FabricTailorModuleData implements SwitchySerializable { /** * Identifier for this module. */ - public static final Identifier ID = Identifier.of("switchy", "fabric_tailor"); + public static final Identifier ID = Feedback.identifier("switchy", "fabric_tailor"); /** * The NBT key where the base64 encoded json skin value is stored. diff --git a/compat/src/main/java/folk/sisby/switchy/modules/FabricationArmorModule.java b/compat/src/main/java/folk/sisby/switchy/modules/FabricationArmorModule.java index 1663b1f..2788c59 100644 --- a/compat/src/main/java/folk/sisby/switchy/modules/FabricationArmorModule.java +++ b/compat/src/main/java/folk/sisby/switchy/modules/FabricationArmorModule.java @@ -9,6 +9,7 @@ import folk.sisby.switchy.api.module.SwitchyModuleEditable; import folk.sisby.switchy.api.module.SwitchyModuleInfo; import folk.sisby.switchy.api.module.SwitchyModuleRegistry; +import folk.sisby.switchy.util.Feedback; import net.fabricmc.loader.api.FabricLoader; import net.minecraft.entity.EquipmentSlot; import net.minecraft.item.ItemStack; @@ -42,7 +43,7 @@ public class FabricationArmorModule implements SwitchyModule { /** * Identifier for this module. */ - public static final Identifier ID = Identifier.of("switchy", "hidearmor"); + public static final Identifier ID = Feedback.identifier("switchy", "hidearmor"); /** * The NBT key where the list of EquipmentSlots to hide is stored. diff --git a/compat/src/main/java/folk/sisby/switchy/modules/OriginsModule.java b/compat/src/main/java/folk/sisby/switchy/modules/OriginsModule.java index 3a0342f..a4cadb9 100644 --- a/compat/src/main/java/folk/sisby/switchy/modules/OriginsModule.java +++ b/compat/src/main/java/folk/sisby/switchy/modules/OriginsModule.java @@ -6,6 +6,7 @@ import folk.sisby.switchy.api.module.SwitchyModuleInfo; import folk.sisby.switchy.api.module.SwitchyModuleRegistry; import folk.sisby.switchy.api.module.SwitchyModuleTransferable; +import folk.sisby.switchy.util.Feedback; import io.github.apace100.origins.component.OriginComponent; import io.github.apace100.origins.origin.Origin; import io.github.apace100.origins.origin.OriginLayer; @@ -38,7 +39,7 @@ public class OriginsModule implements SwitchyModule, SwitchyModuleTransferable { /** * Identifier for this module. */ - public static final Identifier ID = Identifier.of("switchy", "origins"); + public static final Identifier ID = Feedback.identifier("switchy", "origins"); /** * The NBT key where the list of origins is stored. diff --git a/compat/src/main/java/folk/sisby/switchy/modules/PehkuiModule.java b/compat/src/main/java/folk/sisby/switchy/modules/PehkuiModule.java index e2cd4fb..a32cedd 100644 --- a/compat/src/main/java/folk/sisby/switchy/modules/PehkuiModule.java +++ b/compat/src/main/java/folk/sisby/switchy/modules/PehkuiModule.java @@ -6,6 +6,7 @@ import folk.sisby.switchy.api.module.SwitchyModuleInfo; import folk.sisby.switchy.api.module.SwitchyModuleRegistry; import folk.sisby.switchy.config.PehkuiModuleConfig; +import folk.sisby.switchy.util.Feedback; import net.fabricmc.loader.api.FabricLoader; import net.minecraft.nbt.NbtCompound; import net.minecraft.server.network.ServerPlayerEntity; @@ -30,7 +31,7 @@ public class PehkuiModule implements SwitchyModule { /** * Identifier for this module. */ - public static final Identifier ID = Identifier.of("switchy", "pehkui"); + public static final Identifier ID = Feedback.identifier("switchy", "pehkui"); /** * The config object for the pehkui module, containing the current state of {@code /config/switchy/pehkui.toml}. */ @@ -41,7 +42,7 @@ public class PehkuiModule implements SwitchyModule { public final Map scaleValues = new HashMap<>(); PehkuiModule() { - CONFIG.scaleTypes.forEach(id -> scaleValues.put(ScaleRegistries.SCALE_TYPES.get(Identifier.tryParse(id)), null)); + CONFIG.scaleTypes.forEach(id -> scaleValues.put(ScaleRegistries.SCALE_TYPES.get(Feedback.identifier(id)), null)); } /** diff --git a/compat/src/main/java/folk/sisby/switchy/modules/StyledNicknamesModule.java b/compat/src/main/java/folk/sisby/switchy/modules/StyledNicknamesModule.java index 395d82e..3aa301e 100644 --- a/compat/src/main/java/folk/sisby/switchy/modules/StyledNicknamesModule.java +++ b/compat/src/main/java/folk/sisby/switchy/modules/StyledNicknamesModule.java @@ -10,6 +10,7 @@ import folk.sisby.switchy.api.module.SwitchyModuleInfo; import folk.sisby.switchy.api.module.SwitchyModuleRegistry; import folk.sisby.switchy.api.module.SwitchyModuleTransferable; +import folk.sisby.switchy.util.Feedback; import net.minecraft.nbt.NbtCompound; import net.minecraft.nbt.NbtOps; import net.minecraft.server.network.ServerPlayerEntity; @@ -34,7 +35,7 @@ public class StyledNicknamesModule implements SwitchyModule, SwitchyModuleTransf /** * Identifier for this module. */ - public static final Identifier ID = Identifier.of("switchy", "styled_nicknames"); + public static final Identifier ID = Feedback.identifier("switchy", "styled_nicknames"); /** * The NBT key where the nickname is stored. diff --git a/core/src/main/java/folk/sisby/switchy/presets/SwitchyPresetsDataImpl.java b/core/src/main/java/folk/sisby/switchy/presets/SwitchyPresetsDataImpl.java index d999c11..060fd53 100644 --- a/core/src/main/java/folk/sisby/switchy/presets/SwitchyPresetsDataImpl.java +++ b/core/src/main/java/folk/sisby/switchy/presets/SwitchyPresetsDataImpl.java @@ -7,6 +7,7 @@ import folk.sisby.switchy.api.exception.PresetNotFoundException; import folk.sisby.switchy.api.presets.SwitchyPresetData; import folk.sisby.switchy.api.presets.SwitchyPresetsData; +import folk.sisby.switchy.util.Feedback; import net.minecraft.nbt.NbtCompound; import net.minecraft.nbt.NbtElement; import net.minecraft.nbt.NbtList; @@ -90,7 +91,7 @@ public void fillFromNbt(NbtCompound nbt) { NbtCompound configCompound = nbt.getCompound(KEY_MODULE_CONFIGS); for (String key : configCompound.getKeys()) { try { - SwitchySerializable config = setConfig(Identifier.tryParse(key)); + SwitchySerializable config = setConfig(Feedback.identifier(key)); if (config != null) { config.fillFromNbt(configCompound.getCompound(key)); } diff --git a/core/src/main/java/folk/sisby/switchy/util/Feedback.java b/core/src/main/java/folk/sisby/switchy/util/Feedback.java index 44ca8ec..e55b988 100644 --- a/core/src/main/java/folk/sisby/switchy/util/Feedback.java +++ b/core/src/main/java/folk/sisby/switchy/util/Feedback.java @@ -61,6 +61,14 @@ public static void sendMessage(ServerPlayerEntity player, Text text) { player.sendMessage(literal("[Switchy] ").setStyle(Style.EMPTY.withColor(Formatting.AQUA)).append(text), false); } + public static Identifier identifier(String identifier) { + return new Identifier(identifier); + } + + public static Identifier identifier(String namespace, String key) { + return new Identifier(namespace, key); + } + /** * Creates translatable text from a key. * diff --git a/gradle.properties b/gradle.properties index 2fc6e7b..e23b700 100644 --- a/gradle.properties +++ b/gradle.properties @@ -39,7 +39,7 @@ compatUiId=switchy-compat-ui compatUiName=Switchy Compat UI compatUiDescription=UI previews for Switchy Compat modules for Switchy UI # Mod Version -baseVersion=2.9.4 +baseVersion=2.9.5 # Branch Metadata branch=1.21 tagBranch=1.19 diff --git a/ui/src/main/java/folk/sisby/switchy/ui/screen/ManageScreen.java b/ui/src/main/java/folk/sisby/switchy/ui/screen/ManageScreen.java index 493e05b..333159b 100644 --- a/ui/src/main/java/folk/sisby/switchy/ui/screen/ManageScreen.java +++ b/ui/src/main/java/folk/sisby/switchy/ui/screen/ManageScreen.java @@ -310,9 +310,9 @@ public void refresh() { leftModulesFlow.clearChildren(); rightModulesFlow.clearChildren(); int labelSize = 100; - leftModulesFlow.child(getModuleFlow(Identifier.of("placeholder", "placeholder"), Feedback.literal(""), (b, i) -> { + leftModulesFlow.child(getModuleFlow(Feedback.identifier("placeholder", "placeholder"), Feedback.literal(""), (b, i) -> { }, true, Feedback.translatable("screen.switchy.manage.modules.disable"), Feedback.literal(""), labelSize).verticalSizing(Sizing.fixed(0))); - rightModulesFlow.child(getModuleFlow(Identifier.of("placeholder", "placeholder"), Feedback.literal(""), (b, i) -> { + rightModulesFlow.child(getModuleFlow(Feedback.identifier("placeholder", "placeholder"), Feedback.literal(""), (b, i) -> { }, true, Feedback.translatable("screen.switchy.manage.modules.disable"), Feedback.literal(""), labelSize).verticalSizing(Sizing.fixed(0))); // Disabled Modules @@ -495,9 +495,9 @@ protected void refreshDataModulesFlow() { moduleSelector.leftModulesFlow.clearChildren(); moduleSelector.rightModulesFlow.clearChildren(); int labelSize = 100; - moduleSelector.leftModulesFlow.child(ModuleSelectorFlow.getModuleFlow(Identifier.of("placeholder", "placeholder"), Feedback.literal(""), (b, i) -> { + moduleSelector.leftModulesFlow.child(ModuleSelectorFlow.getModuleFlow(Feedback.identifier("placeholder", "placeholder"), Feedback.literal(""), (b, i) -> { }, false, Feedback.translatable("screen.switchy.manage.data.add"), Feedback.literal(""), labelSize).verticalSizing(Sizing.fixed(0))); - moduleSelector.rightModulesFlow.child(ModuleSelectorFlow.getModuleFlow(Identifier.of("placeholder", "placeholder"), Feedback.literal(""), (b, i) -> { + moduleSelector.rightModulesFlow.child(ModuleSelectorFlow.getModuleFlow(Feedback.identifier("placeholder", "placeholder"), Feedback.literal(""), (b, i) -> { }, false, Feedback.translatable("screen.switchy.manage.data.remove"), Feedback.literal(""), labelSize).verticalSizing(Sizing.fixed(0))); if (isImporting) {