From 47b75694d8dbb3b24818d4eefa271acb079cecf7 Mon Sep 17 00:00:00 2001 From: i509VCB Date: Mon, 31 Aug 2020 19:14:22 -0500 Subject: [PATCH 1/2] Make it so dynmap commands can be proxied via `/execute` without failing to parse. Also adds some gitignore entries for stuff generated by fabric --- .gitignore | 2 ++ .../fabric_1_16_1/command/DynmapCommandExecutor.java | 8 +++++++- .../fabric_1_16_2/command/DynmapCommandExecutor.java | 8 +++++++- 3 files changed, 16 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 69aa8f48..16887976 100644 --- a/.gitignore +++ b/.gitignore @@ -24,9 +24,11 @@ /bin /dist /manifest.mf +/run # Mac filesystem dust /.DS_Store /dependency-reduced-pom.xml +*.log /.gradle diff --git a/fabric-1.16.1/src/main/java/org/dynmap/fabric_1_16_1/command/DynmapCommandExecutor.java b/fabric-1.16.1/src/main/java/org/dynmap/fabric_1_16_1/command/DynmapCommandExecutor.java index e255fd8a..85031c89 100644 --- a/fabric-1.16.1/src/main/java/org/dynmap/fabric_1_16_1/command/DynmapCommandExecutor.java +++ b/fabric-1.16.1/src/main/java/org/dynmap/fabric_1_16_1/command/DynmapCommandExecutor.java @@ -45,7 +45,13 @@ public class DynmapCommandExecutor implements Command { @Override public int run(CommandContext context) throws CommandSyntaxException { - String[] args = context.getInput().split("\\s+"); + // Commands in brigadier may be proxied in Minecraft via a syntax like `/execute ... ... run dmap [args]` + // Dynmap will fail to parse this properly, so we find the starting position of the actual command being parsed after any forks or redirects. + // The start position of the range specifies where the actual command dynmap has registered starts + int start = context.getRange().getStart(); + String dynmapInput = context.getInput().substring(start); + + String[] args = dynmapInput.split("\\s+"); plugin.handleCommand(context.getSource(), cmd, Arrays.copyOfRange(args, 1, args.length)); return 1; } diff --git a/fabric-1.16.2/src/main/java/org/dynmap/fabric_1_16_2/command/DynmapCommandExecutor.java b/fabric-1.16.2/src/main/java/org/dynmap/fabric_1_16_2/command/DynmapCommandExecutor.java index 40b9ae38..d1619a81 100644 --- a/fabric-1.16.2/src/main/java/org/dynmap/fabric_1_16_2/command/DynmapCommandExecutor.java +++ b/fabric-1.16.2/src/main/java/org/dynmap/fabric_1_16_2/command/DynmapCommandExecutor.java @@ -45,7 +45,13 @@ public class DynmapCommandExecutor implements Command { @Override public int run(CommandContext context) throws CommandSyntaxException { - String[] args = context.getInput().split("\\s+"); + // Commands in brigadier may be proxied in Minecraft via a syntax like `/execute ... ... run dmap [args]` + // Dynmap will fail to parse this properly, so we find the starting position of the actual command being parsed after any forks or redirects. + // The start position of the range specifies where the actual command dynmap has registered starts + int start = context.getRange().getStart(); + String dynmapInput = context.getInput().substring(start); + + String[] args = dynmapInput.split("\\s+"); plugin.handleCommand(context.getSource(), cmd, Arrays.copyOfRange(args, 1, args.length)); return 1; } From e2ad413f90d2d1d001f4821fbecc5739f787a8f5 Mon Sep 17 00:00:00 2001 From: KasaneKona Date: Fri, 18 Sep 2020 23:16:16 +0100 Subject: [PATCH 2/2] Fix podzol being biome tinted --- DynmapCore/src/main/resources/texture_1.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/DynmapCore/src/main/resources/texture_1.txt b/DynmapCore/src/main/resources/texture_1.txt index 8b5080e1..d99b81a3 100644 --- a/DynmapCore/src/main/resources/texture_1.txt +++ b/DynmapCore/src/main/resources/texture_1.txt @@ -565,8 +565,8 @@ block:id=dirt,allfaces=0:dirt,stdrot=true # Coarse Dirt block:id=coarse_dirt,allfaces=0:coarse_dirt,stdrot=true # Pozdol -block:id=podzol,data=0,allsides=0:grass_block_snow,top=1000:grass_block_top,bottom=0:dirt,stdrot=true -block:id=podzol,data=1,allsides=1000:podzol_side,top=1000:podzol_top,bottom=0:dirt,stdrot=true +block:id=podzol,data=0,allsides=0:grass_block_snow,top=0:grass_block_top,bottom=0:dirt,stdrot=true +block:id=podzol,data=1,allsides=0:podzol_side,top=0:podzol_top,bottom=0:dirt,stdrot=true # Cobblestone block:id=cobblestone,allfaces=0:cobblestone,stdrot=true # Wooden Plank (oak)