From 852139d936d6fcf312a7d2d5dcacc76560518c02 Mon Sep 17 00:00:00 2001 From: altrisi Date: Thu, 14 Jan 2021 02:57:39 +0100 Subject: [PATCH 1/4] Make split split lists in list of single elements list without delimiter --- src/main/java/carpet/script/language/DataStructures.java | 2 +- src/main/java/carpet/script/value/ListValue.java | 2 +- src/main/java/carpet/script/value/Value.java | 6 +++++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/java/carpet/script/language/DataStructures.java b/src/main/java/carpet/script/language/DataStructures.java index 90d02d99..59418de5 100644 --- a/src/main/java/carpet/script/language/DataStructures.java +++ b/src/main/java/carpet/script/language/DataStructures.java @@ -57,7 +57,7 @@ public class DataStructures { if (lv.size() == 1) { hwat = lv.get(0); - delimiter = StringValue.EMPTY; + delimiter = null; } else if (lv.size() == 2) { diff --git a/src/main/java/carpet/script/value/ListValue.java b/src/main/java/carpet/script/value/ListValue.java index c3b23438..d5662d11 100644 --- a/src/main/java/carpet/script/value/ListValue.java +++ b/src/main/java/carpet/script/value/ListValue.java @@ -355,7 +355,7 @@ public class ListValue extends AbstractListValue implements ContainerValueInterf for (Value val : this.items) { index++; - if (val.equals(delimiter)) + if (val.equals(delimiter) || delimiter == null) { result.items.add(ListValue.wrap(this.items.subList(startIndex, index-1))); startIndex = index; diff --git a/src/main/java/carpet/script/value/Value.java b/src/main/java/carpet/script/value/Value.java index b9ac965c..5f228c7d 100644 --- a/src/main/java/carpet/script/value/Value.java +++ b/src/main/java/carpet/script/value/Value.java @@ -193,7 +193,11 @@ public abstract class Value implements Comparable, Cloneable public Value split(Value delimiter) { - try + if (delimiter == null) + { + delimiter = StringValue.EMPTY; + } + try { return ListValue.wrap(Arrays.stream(getString().split(delimiter.getString())).map(StringValue::new).collect(Collectors.toList())); } From 9eea3b47a6d67da9eb0cc026dedf35922253dfdb Mon Sep 17 00:00:00 2001 From: altrisi Date: Thu, 14 Jan 2021 03:08:33 +0100 Subject: [PATCH 2/4] Actually return those lists --- src/main/java/carpet/script/value/ListValue.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/carpet/script/value/ListValue.java b/src/main/java/carpet/script/value/ListValue.java index d5662d11..7fd693eb 100644 --- a/src/main/java/carpet/script/value/ListValue.java +++ b/src/main/java/carpet/script/value/ListValue.java @@ -350,12 +350,17 @@ public class ListValue extends AbstractListValue implements ContainerValueInterf @Override public Value split(Value delimiter) { ListValue result = new ListValue(); + if (delimiter == null) + { + this.forEach(item -> result.items.add(of(item))); + return result; + } int startIndex = 0; int index = 0; for (Value val : this.items) { index++; - if (val.equals(delimiter) || delimiter == null) + if (val.equals(delimiter)) { result.items.add(ListValue.wrap(this.items.subList(startIndex, index-1))); startIndex = index; From ecbd7f1dd7def8ac1d9683a12dacdd3ce4f0d89e Mon Sep 17 00:00:00 2001 From: altrisi Date: Thu, 14 Jan 2021 20:40:31 +0100 Subject: [PATCH 3/4] Fix NbtIo crash when loading appdata --- src/main/java/carpet/script/bundled/FileModule.java | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/main/java/carpet/script/bundled/FileModule.java b/src/main/java/carpet/script/bundled/FileModule.java index 8c32034e..4684b0fa 100644 --- a/src/main/java/carpet/script/bundled/FileModule.java +++ b/src/main/java/carpet/script/bundled/FileModule.java @@ -76,9 +76,14 @@ public class FileModule extends Module } catch (IOException e) { - try + // Copy of NbtIo.read(File) because that's now client-side only + if (!file.exists()) { - return NbtIo.read(file); + return null; + } + try (DataInputStream in = new DataInputStream(new FileInputStream(file))) + { + return NbtIo.read(in); } catch (IOException ioException) { From 7a141affaf5892ddc4f7b47f4be3f1c7a602f47b Mon Sep 17 00:00:00 2001 From: gnembon Date: Fri, 15 Jan 2021 11:37:17 -0400 Subject: [PATCH 4/4] 1.16.5 at 1.4.23 --- gradle.properties | 8 ++++---- src/main/java/carpet/CarpetSettings.java | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/gradle.properties b/gradle.properties index dde0de6c..6bf7b132 100644 --- a/gradle.properties +++ b/gradle.properties @@ -4,12 +4,12 @@ org.gradle.jvmargs=-Xmx1G # Fabric Properties # check these on https://fabricmc.net/use # or better: https://modmuss50.me/fabric.html - minecraft_version=1.16.4 - yarn_mappings=1.16.4+build.9 + minecraft_version=1.16.5 + yarn_mappings=1.16.5+build.1 loader_version=0.11.0 # Mod Properties - mod_version = 1.4.22 + mod_version = 1.4.23 maven_group = carpet archives_base_name = fabric-carpet @@ -17,7 +17,7 @@ org.gradle.jvmargs=-Xmx1G # The Curseforge versions "names" or ids for the main branch (comma separated: 1.16.4,1.16.5) # This is needed because CF uses too vague names for prereleases and release candidates # Can also be the version ID directly coming from https://minecraft.curseforge.com/api/game/versions?token=[API_TOKEN] - release-curse-versions = 1.16.3,1.16.4 + release-curse-versions = 1.16.4,1.16.5 # Whether or not to build another branch on release release-extra-branch = true # The name of the second branch to release diff --git a/src/main/java/carpet/CarpetSettings.java b/src/main/java/carpet/CarpetSettings.java index 32dba3cc..42ff3f64 100644 --- a/src/main/java/carpet/CarpetSettings.java +++ b/src/main/java/carpet/CarpetSettings.java @@ -37,7 +37,7 @@ import static carpet.settings.RuleCategory.CLIENT; @SuppressWarnings("CanBeFinal") public class CarpetSettings { - public static final String carpetVersion = "1.4.22+v210113"; + public static final String carpetVersion = "1.4.23+v210115"; public static final Logger LOG = LogManager.getLogger("carpet"); public static boolean skipGenerationChecks = false; public static boolean impendingFillSkipUpdates = false;