chore: update to 1.21
This commit is contained in:
parent
dcfd363b60
commit
7ec7604dd1
@ -24,14 +24,14 @@ repositories {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
val muscriptVersion = "1.7-SNAPSHOT"
|
val muscriptVersion = "2.0.0-SNAPSHOT"
|
||||||
val modmenuVersion = "10.0.0-beta.1"
|
val modmenuVersion = "11.0.0-beta.1"
|
||||||
jfMod {
|
jfMod {
|
||||||
minecraftVersion = "1.20.6"
|
minecraftVersion = "1.21"
|
||||||
yarn("build.1")
|
yarn("build.1")
|
||||||
loaderVersion = "0.15.10"
|
loaderVersion = "0.15.11"
|
||||||
libJfVersion = "3.15.8"
|
libJfVersion = "3.16.0"
|
||||||
fabricApiVersion = "0.97.8+1.20.6"
|
fabricApiVersion = "0.100.1+1.21"
|
||||||
|
|
||||||
modrinth {
|
modrinth {
|
||||||
projectId = "respackopts"
|
projectId = "respackopts"
|
||||||
@ -74,5 +74,5 @@ dependencies {
|
|||||||
//modClientRuntimeOnly("io.vram:canvas-fabric:20.2.+")
|
//modClientRuntimeOnly("io.vram:canvas-fabric:20.2.+")
|
||||||
|
|
||||||
// Sodium for debugging
|
// Sodium for debugging
|
||||||
modClientRuntimeOnly("maven.modrinth:sodium:mc1.20.6-0.5.8")
|
modClientRuntimeOnly("maven.modrinth:sodium:mc1.21-0.5.9")
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,7 @@ import java.util.concurrent.CompletableFuture;
|
|||||||
@Environment(EnvType.CLIENT)
|
@Environment(EnvType.CLIENT)
|
||||||
public class RespackoptsClient implements ClientModInitializer, SaveHook {
|
public class RespackoptsClient implements ClientModInitializer, SaveHook {
|
||||||
private static final boolean FREX_LOADED = FabricLoader.getInstance().isModLoaded("frex");
|
private static final boolean FREX_LOADED = FabricLoader.getInstance().isModLoaded("frex");
|
||||||
public static final Identifier RPO_SHADER_ID = new Identifier(Respackopts.ID, "config_supplier");
|
public static final Identifier RPO_SHADER_ID = Identifier.of(Respackopts.ID, "config_supplier");
|
||||||
public static boolean forcePackReload = false;
|
public static boolean forcePackReload = false;
|
||||||
private static String shaderImportSource;
|
private static String shaderImportSource;
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ public abstract class ResourcePackEntryMixin {
|
|||||||
d = widget.getRowWidth() - d;
|
d = widget.getRowWidth() - d;
|
||||||
int e = mouseY - y;
|
int e = mouseY - y;
|
||||||
rpo$selected = d <= 32 && d >= 12 && e <= entryHeight / 2 + 10 && e >= entryHeight / 2 - 10;
|
rpo$selected = d <= 32 && d >= 12 && e <= entryHeight / 2 + 10 && e >= entryHeight / 2 - 10;
|
||||||
rpo$renderButton(context, rpo$selected, new Identifier("modmenu", "textures/gui/configure_button.png"), x + entryWidth - 30, y + entryHeight / 2 - 10);
|
rpo$renderButton(context, rpo$selected, Identifier.of("modmenu", "textures/gui/configure_button.png"), x + entryWidth - 30, y + entryHeight / 2 - 10);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -50,7 +50,7 @@ public class FileFallbackProvider {
|
|||||||
if (FileRpoSearchProvider.isRpo(path)) {
|
if (FileRpoSearchProvider.isRpo(path)) {
|
||||||
String expectedTarget = path.substring(0, path.length() - Respackopts.FILE_EXTENSION.length());
|
String expectedTarget = path.substring(0, path.length() - Respackopts.FILE_EXTENSION.length());
|
||||||
if (ids.stream().noneMatch(s -> s.getPath().equals(expectedTarget)) && fileHasFallback(key, fs, type.getDirectory() + "/" + expectedTarget)) {
|
if (ids.stream().noneMatch(s -> s.getPath().equals(expectedTarget)) && fileHasFallback(key, fs, type.getDirectory() + "/" + expectedTarget)) {
|
||||||
Identifier id = new Identifier(namespace, expectedTarget);
|
Identifier id = Identifier.of(namespace, expectedTarget);
|
||||||
ids.add(id);
|
ids.add(id);
|
||||||
out.accept(id, fs.open(type, id));
|
out.accept(id, fs.open(type, id));
|
||||||
}
|
}
|
||||||
|
@ -28,7 +28,7 @@ public class BoolExprDeserializer extends TypeAdapter<BoolExpr> {
|
|||||||
public static final BoolExprDeserializer INSTANCE = new BoolExprDeserializer();
|
public static final BoolExprDeserializer INSTANCE = new BoolExprDeserializer();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> BoolExpr deserialize(Reader reader) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Reader extends SerializeReader<TEx, ?>> BoolExpr deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||||
if (AttachmentHolder.getAttachedVersion() > 7) {
|
if (AttachmentHolder.getAttachedVersion() > 7) {
|
||||||
return ExprUtils.asBool(ExprDeserializer.INSTANCE.deserialize(reader));
|
return ExprUtils.asBool(ExprDeserializer.INSTANCE.deserialize(reader));
|
||||||
}
|
}
|
||||||
@ -68,7 +68,7 @@ public class BoolExprDeserializer extends TypeAdapter<BoolExpr> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> BoolExpr merge(Reader source, Token token) throws TEx, MalformedDataException {
|
private <TEx extends Exception, Reader extends SerializeReader<TEx, ?>> BoolExpr merge(Reader source, Token token) throws TEx, MalformedDataException {
|
||||||
if (token == Token.BangEqual)
|
if (token == Token.BangEqual)
|
||||||
return new Not(CodeLocation.NONE, merge(source, Token.EqualEqual));
|
return new Not(CodeLocation.NONE, merge(source, Token.EqualEqual));
|
||||||
List<BoolExpr> expressions = new ArrayList<>();
|
List<BoolExpr> expressions = new ArrayList<>();
|
||||||
@ -114,7 +114,7 @@ public class BoolExprDeserializer extends TypeAdapter<BoolExpr> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(BoolExpr boolExpr, Writer writer) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Writer extends SerializeWriter<TEx, ?>> void serialize(BoolExpr boolExpr, Writer writer) throws TEx, MalformedDataException {
|
||||||
ExprDeserializer.INSTANCE.serialize(boolExpr, writer);
|
ExprDeserializer.INSTANCE.serialize(boolExpr, writer);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -12,12 +12,12 @@ import io.gitlab.jfronny.respackopts.model.Condition;
|
|||||||
@SerializerFor(targets = Condition.class)
|
@SerializerFor(targets = Condition.class)
|
||||||
public class ConditionDeserializer extends TypeAdapter<Condition> {
|
public class ConditionDeserializer extends TypeAdapter<Condition> {
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Condition condition, Writer writer) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Writer extends SerializeWriter<TEx, ?>> void serialize(Condition condition, Writer writer) throws TEx, MalformedDataException {
|
||||||
BoolExprDeserializer.INSTANCE.serialize(condition.expr(), writer);
|
BoolExprDeserializer.INSTANCE.serialize(condition.expr(), writer);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Condition deserialize(Reader reader) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Reader extends SerializeReader<TEx, ?>> Condition deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||||
String source = "Source unavailable";
|
String source = "Source unavailable";
|
||||||
if (reader.peek() == Token.STRING) {
|
if (reader.peek() == Token.STRING) {
|
||||||
source = reader.nextString();
|
source = reader.nextString();
|
||||||
|
@ -18,7 +18,7 @@ import io.gitlab.jfronny.respackopts.model.tree.*;
|
|||||||
@SerializerFor(targets = ConfigEntry.class)
|
@SerializerFor(targets = ConfigEntry.class)
|
||||||
public class ConfigEntryTypeAdapter extends TypeAdapter<ConfigEntry<?>> {
|
public class ConfigEntryTypeAdapter extends TypeAdapter<ConfigEntry<?>> {
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(ConfigEntry<?> entry, Writer writer) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Writer extends SerializeWriter<TEx, ?>> void serialize(ConfigEntry<?> entry, Writer writer) throws TEx, MalformedDataException {
|
||||||
switch (entry) {
|
switch (entry) {
|
||||||
case ConfigBooleanEntry bl -> GC_ConfigBooleanEntry.serialize(bl, writer);
|
case ConfigBooleanEntry bl -> GC_ConfigBooleanEntry.serialize(bl, writer);
|
||||||
case ConfigNumericEntry num -> GC_ConfigNumericEntry.serialize(num, writer);
|
case ConfigNumericEntry num -> GC_ConfigNumericEntry.serialize(num, writer);
|
||||||
@ -30,7 +30,7 @@ public class ConfigEntryTypeAdapter extends TypeAdapter<ConfigEntry<?>> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> ConfigEntry<?> deserialize(Reader reader) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Reader extends SerializeReader<TEx, ?>> ConfigEntry<?> deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||||
return switch (reader.peek()) {
|
return switch (reader.peek()) {
|
||||||
case BOOLEAN -> GC_ConfigBooleanEntry.deserialize(reader);
|
case BOOLEAN -> GC_ConfigBooleanEntry.deserialize(reader);
|
||||||
case NUMBER -> GC_ConfigNumericEntry.deserialize(reader);
|
case NUMBER -> GC_ConfigNumericEntry.deserialize(reader);
|
||||||
|
@ -21,12 +21,12 @@ public class ExprDeserializer extends TypeAdapter<Expr> {
|
|||||||
private static final Map<String, Expr> compiledScripts = new HashMap<>();
|
private static final Map<String, Expr> compiledScripts = new HashMap<>();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(Expr expr, Writer writer) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Writer extends SerializeWriter<TEx, ?>> void serialize(Expr expr, Writer writer) throws TEx, MalformedDataException {
|
||||||
writer.value(Decompiler.decompile(expr));
|
writer.value(Decompiler.decompile(expr));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> Expr deserialize(Reader reader) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Reader extends SerializeReader<TEx, ?>> Expr deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||||
if (reader.peek() == Token.STRING) {
|
if (reader.peek() == Token.STRING) {
|
||||||
return parse(reader.nextString());
|
return parse(reader.nextString());
|
||||||
} else if (reader.peek() == Token.BEGIN_OBJECT) {
|
} else if (reader.peek() == Token.BEGIN_OBJECT) {
|
||||||
|
@ -11,12 +11,12 @@ import io.gitlab.jfronny.muscript.ast.context.ExprUtils;
|
|||||||
@SerializerFor(targets = StringExpr.class)
|
@SerializerFor(targets = StringExpr.class)
|
||||||
public class StringExprDeserializer extends TypeAdapter<StringExpr> {
|
public class StringExprDeserializer extends TypeAdapter<StringExpr> {
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(StringExpr stringExpr, Writer writer) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Writer extends SerializeWriter<TEx, ?>> void serialize(StringExpr stringExpr, Writer writer) throws TEx, MalformedDataException {
|
||||||
ExprDeserializer.INSTANCE.serialize(stringExpr, writer);
|
ExprDeserializer.INSTANCE.serialize(stringExpr, writer);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> StringExpr deserialize(Reader reader) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Reader extends SerializeReader<TEx, ?>> StringExpr deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||||
return ExprUtils.asString(ExprDeserializer.INSTANCE.deserialize(reader));
|
return ExprUtils.asString(ExprDeserializer.INSTANCE.deserialize(reader));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,12 +16,12 @@ public class BooleanEntrySerializer extends TypeAdapter<ConfigBooleanEntry> {
|
|||||||
public static final Set<String> TYPES = Set.of("boolean", "toggle");
|
public static final Set<String> TYPES = Set.of("boolean", "toggle");
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(ConfigBooleanEntry configBooleanEntry, Writer writer) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Writer extends SerializeWriter<TEx, ?>> void serialize(ConfigBooleanEntry configBooleanEntry, Writer writer) throws TEx, MalformedDataException {
|
||||||
writer.value(configBooleanEntry.getValue());
|
writer.value(configBooleanEntry.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> ConfigBooleanEntry deserialize(Reader reader) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Reader extends SerializeReader<TEx, ?>> ConfigBooleanEntry deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||||
if (reader.peek() == Token.BOOLEAN) {
|
if (reader.peek() == Token.BOOLEAN) {
|
||||||
return new ConfigBooleanEntry(reader.nextBoolean());
|
return new ConfigBooleanEntry(reader.nextBoolean());
|
||||||
} else if (reader.peek() == Token.BEGIN_OBJECT) {
|
} else if (reader.peek() == Token.BEGIN_OBJECT) {
|
||||||
|
@ -15,7 +15,7 @@ import java.util.Map;
|
|||||||
@SerializerFor(targets = ConfigBranch.class)
|
@SerializerFor(targets = ConfigBranch.class)
|
||||||
public class ConfigBranchSerializer extends TypeAdapter<ConfigBranch> {
|
public class ConfigBranchSerializer extends TypeAdapter<ConfigBranch> {
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(ConfigBranch configBranch, Writer writer) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Writer extends SerializeWriter<TEx, ?>> void serialize(ConfigBranch configBranch, Writer writer) throws TEx, MalformedDataException {
|
||||||
writer.beginObject();
|
writer.beginObject();
|
||||||
for (Map.Entry<String, ConfigEntry<?>> entry : configBranch.getValue().entrySet()) {
|
for (Map.Entry<String, ConfigEntry<?>> entry : configBranch.getValue().entrySet()) {
|
||||||
writer.name(entry.getKey());
|
writer.name(entry.getKey());
|
||||||
@ -25,7 +25,7 @@ public class ConfigBranchSerializer extends TypeAdapter<ConfigBranch> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> ConfigBranch deserialize(Reader reader) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Reader extends SerializeReader<TEx, ?>> ConfigBranch deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||||
if (reader.peek() != Token.BEGIN_OBJECT) throw new MalformedDataException("ConfigBranch is not an object");
|
if (reader.peek() != Token.BEGIN_OBJECT) throw new MalformedDataException("ConfigBranch is not an object");
|
||||||
reader.beginObject();
|
reader.beginObject();
|
||||||
ConfigBranch cbNew = new ConfigBranch();
|
ConfigBranch cbNew = new ConfigBranch();
|
||||||
|
@ -18,12 +18,12 @@ public class EnumEntrySerializer extends TypeAdapter<ConfigEnumEntry> {
|
|||||||
public static final Set<String> TYPES = Set.of("enum", "select");
|
public static final Set<String> TYPES = Set.of("enum", "select");
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(ConfigEnumEntry configEnumEntry, Writer writer) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Writer extends SerializeWriter<TEx, ?>> void serialize(ConfigEnumEntry configEnumEntry, Writer writer) throws TEx, MalformedDataException {
|
||||||
writer.value(configEnumEntry.getValue());
|
writer.value(configEnumEntry.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> ConfigEnumEntry deserialize(Reader reader) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Reader extends SerializeReader<TEx, ?>> ConfigEnumEntry deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||||
ConfigEnumEntry result = new ConfigEnumEntry();
|
ConfigEnumEntry result = new ConfigEnumEntry();
|
||||||
if (reader.peek() == Token.STRING) {
|
if (reader.peek() == Token.STRING) {
|
||||||
result.setValue(reader.nextString());
|
result.setValue(reader.nextString());
|
||||||
|
@ -17,12 +17,12 @@ public class NumericEntrySerializer extends TypeAdapter<ConfigNumericEntry> {
|
|||||||
public static final Set<String> INT_TYPES = Set.of("integer", "int", "long", "whole");
|
public static final Set<String> INT_TYPES = Set.of("integer", "int", "long", "whole");
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Writer extends SerializeWriter<TEx, Writer>> void serialize(ConfigNumericEntry configNumericEntry, Writer writer) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Writer extends SerializeWriter<TEx, ?>> void serialize(ConfigNumericEntry configNumericEntry, Writer writer) throws TEx, MalformedDataException {
|
||||||
writer.value(configNumericEntry.getValue());
|
writer.value(configNumericEntry.getValue());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public <TEx extends Exception, Reader extends SerializeReader<TEx, Reader>> ConfigNumericEntry deserialize(Reader reader) throws TEx, MalformedDataException {
|
public <TEx extends Exception, Reader extends SerializeReader<TEx, ?>> ConfigNumericEntry deserialize(Reader reader) throws TEx, MalformedDataException {
|
||||||
ConfigNumericEntry result = new ConfigNumericEntry();
|
ConfigNumericEntry result = new ConfigNumericEntry();
|
||||||
if (reader.peek() == Token.NUMBER) {
|
if (reader.peek() == Token.NUMBER) {
|
||||||
double value = reader.nextDouble();
|
double value = reader.nextDouble();
|
||||||
|
@ -73,7 +73,7 @@ public class ResourcePackManagerMixin {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Identifier confId = new Identifier(Respackopts.ID, "conf.json");
|
Identifier confId = Identifier.of(Respackopts.ID, "conf.json");
|
||||||
for (ResourceType type : ResourceType.values()) {
|
for (ResourceType type : ResourceType.values()) {
|
||||||
conf = rpi.open(type, confId);
|
conf = rpi.open(type, confId);
|
||||||
if (conf != null) {
|
if (conf != null) {
|
||||||
|
@ -19,7 +19,7 @@ public class FallbackI18n {
|
|||||||
public static Map<String, String> loadFrom(ResourcePack pack, String packId) {
|
public static Map<String, String> loadFrom(ResourcePack pack, String packId) {
|
||||||
Map<String, String> translations = new HashMap<>();
|
Map<String, String> translations = new HashMap<>();
|
||||||
for (String namespace : pack.getNamespaces(ResourceType.CLIENT_RESOURCES)) {
|
for (String namespace : pack.getNamespaces(ResourceType.CLIENT_RESOURCES)) {
|
||||||
var translation = pack.open(ResourceType.CLIENT_RESOURCES, new Identifier(namespace, "lang/en_us.json"));
|
var translation = pack.open(ResourceType.CLIENT_RESOURCES, Identifier.of(namespace, "lang/en_us.json"));
|
||||||
if (translation == null) continue;
|
if (translation == null) continue;
|
||||||
try (InputStream is = translation.get()) {
|
try (InputStream is = translation.get()) {
|
||||||
Language.load(is, (key, value) -> {
|
Language.load(is, (key, value) -> {
|
||||||
|
Loading…
Reference in New Issue
Block a user