Эх сурвалжийг харах

20w21a

Signed-off-by: shedaniel <daniel@shedaniel.me>
shedaniel 5 жил өмнө
parent
commit
b7dc2671af

+ 4 - 3
build.gradle

@@ -16,6 +16,7 @@ repositories {
     }
     jcenter()
     maven { url "https://jitpack.io" }
+    maven { url "https://dl.bintray.com/shedaniel/legacy-yarn-updated" }
 }
 
 sourceCompatibility = targetCompatibility = 1.8
@@ -38,13 +39,13 @@ dependencies {
     compile("org.jetbrains:annotations:18.0.0")
 
     minecraft("com.mojang:minecraft:${project.minecraft_version}")
-    mappings("net.fabricmc:yarn:${project.yarn_mappings}:v2")
+    mappings("me.shedaniel:legacy-yarn:${project.yarn_mappings}:v2")
 
     modApi("net.fabricmc:fabric-loader:${project.loader_version}")
     modApi("net.fabricmc.fabric-api:fabric-api:${project.fabric_version}")
 
-    modApi("me.shedaniel.cloth:basic-math:0.5.0")
-    include("me.shedaniel.cloth:basic-math:0.5.0")
+    modApi("me.shedaniel.cloth:basic-math:0.5.1")
+    include("me.shedaniel.cloth:basic-math:0.5.1")
 
     modCompileOnly("io.github.prospector:modmenu:${modmenu_version}")
     modRuntime("io.github.prospector:modmenu:${modmenu_version}")

+ 6 - 6
gradle.properties

@@ -1,8 +1,8 @@
-supported_version=20w18a
-minecraft_version=20w18a
-yarn_mappings=20w18a+build.1
-loader_version=0.8.2+build.194
-fabric_version=0.7.1+build.331-1.16
+supported_version=20w21a
+minecraft_version=20w21a
+yarn_mappings=20w21a+build.15+legacy.20w09a+build.8
+loader_version=0.8.4+build.198
+fabric_version=0.10.10+build.347-1.16
 mod_version=4.4.0-unstable
-modmenu_version=1.11.2+build.6
+modmenu_version=1.11.6+build.11
 nec_version=1.2.3+1.15.1

+ 1 - 1
src/main/java/me/shedaniel/clothconfig2/api/ConfigEntryBuilder.java

@@ -93,7 +93,7 @@ public interface ConfigEntryBuilder {
     }
     
     default KeyCodeBuilder fillKeybindingField(Text fieldNameKey, KeyBinding value) {
-        return startKeyCodeField(fieldNameKey, ((KeyCodeAccessor) value).getKeyCode()).setDefaultValue(value.getDefaultKeyCode()).setSaveConsumer(code -> {
+        return startKeyCodeField(fieldNameKey, ((KeyCodeAccessor) value).getBoundKey()).setDefaultValue(value.getDefaultKeyCode()).setSaveConsumer(code -> {
             value.setKeyCode(code);
             KeyBinding.updateKeysByCode();
             MinecraftClient.getInstance().options.write();

+ 7 - 7
src/main/java/me/shedaniel/clothconfig2/gui/ClothConfigScreen.java

@@ -247,7 +247,7 @@ public abstract class ClothConfigScreen extends AbstractTabbedConfigScreen {
         if (isTransparentBackground()) {
             fillGradient(matrices, 0, 0, this.width, this.height, -1072689136, -804253680);
         } else {
-            renderDirtBackground(0);
+            renderBackgroundTexture(0);
         }
         listWidget.render(matrices, mouseX, mouseY, delta);
         ScissorsHandler.INSTANCE.scissor(new Rectangle(listWidget.left, listWidget.top, listWidget.width, listWidget.bottom - listWidget.top));
@@ -255,7 +255,7 @@ public abstract class ClothConfigScreen extends AbstractTabbedConfigScreen {
             child.lateRender(matrices, mouseX, mouseY, delta);
         ScissorsHandler.INSTANCE.removeLastScissor();
         if (isShowingTabs()) {
-            method_27534(matrices, client.textRenderer, title, width / 2, 18, -1);
+            drawCenteredText(matrices, client.textRenderer, title, width / 2, 18, -1);
             Rectangle onlyInnerTabBounds = new Rectangle(tabsBounds.x + 20, tabsBounds.y, tabsBounds.width - 40, tabsBounds.height);
             ScissorsHandler.INSTANCE.scissor(onlyInnerTabBounds);
             if (isTransparentBackground())
@@ -268,7 +268,7 @@ public abstract class ClothConfigScreen extends AbstractTabbedConfigScreen {
             buttonLeftTab.render(matrices, mouseX, mouseY, delta);
             buttonRightTab.render(matrices, mouseX, mouseY, delta);
         } else
-            method_27534(matrices, client.textRenderer, title, width / 2, 12, -1);
+            drawCenteredText(matrices, client.textRenderer, title, width / 2, 12, -1);
         
         if (isEditable()) {
             List<Text> errors = Lists.newArrayList();
@@ -281,22 +281,22 @@ public abstract class ClothConfigScreen extends AbstractTabbedConfigScreen {
                 RenderSystem.color4f(1.0F, 1.0F, 1.0F, 1.0F);
                 String text = "§c" + (errors.size() == 1 ? errors.get(0).copy().getString() : I18n.translate("text.cloth-config.multi_error"));
                 if (isTransparentBackground()) {
-                    int stringWidth = client.textRenderer.getWidth(text);
+                    int stringWidth = client.textRenderer.getStringWidth(text);
                     fillGradient(matrices, 8, 9, 20 + stringWidth, 14 + client.textRenderer.fontHeight, 0x68000000, 0x68000000);
                 }
                 drawTexture(matrices, 10, 10, 0, 54, 3, 11);
-                drawString(matrices, client.textRenderer, text, 18, 12, -1);
+                drawStringWithShadow(matrices, client.textRenderer, text, 18, 12, -1);
             }
         } else if (!isEditable()) {
             client.getTextureManager().bindTexture(CONFIG_TEX);
             RenderSystem.color4f(1.0F, 1.0F, 1.0F, 1.0F);
             String text = "§c" + I18n.translate("text.cloth-config.not_editable");
             if (isTransparentBackground()) {
-                int stringWidth = client.textRenderer.getWidth(text);
+                int stringWidth = client.textRenderer.getStringWidth(text);
                 fillGradient(matrices, 8, 9, 20 + stringWidth, 14 + client.textRenderer.fontHeight, 0x68000000, 0x68000000);
             }
             drawTexture(matrices, 10, 10, 0, 54, 3, 11);
-            drawString(matrices, client.textRenderer, text, 18, 12, -1);
+            drawStringWithShadow(matrices, client.textRenderer, text, 18, 12, -1);
         }
         super.render(matrices, mouseX, mouseY, delta);
     }

+ 4 - 4
src/main/java/me/shedaniel/clothconfig2/gui/GlobalizedClothConfigScreen.java

@@ -157,14 +157,14 @@ public class GlobalizedClothConfigScreen extends AbstractConfigScreen implements
         if (isTransparentBackground()) {
             fillGradient(matrices, 0, 0, this.width, this.height, -1072689136, -804253680);
         } else {
-            renderDirtBackground(0);
+            renderBackgroundTexture(0);
         }
         listWidget.render(matrices, mouseX, mouseY, delta);
         ScissorsHandler.INSTANCE.scissor(new Rectangle(listWidget.left, listWidget.top, listWidget.width, listWidget.bottom - listWidget.top));
         for (AbstractConfigEntry<?> child : listWidget.children())
             child.lateRender(matrices, mouseX, mouseY, delta);
         ScissorsHandler.INSTANCE.removeLastScissor();
-        method_27534(matrices, client.textRenderer, title, width / 2, 12, -1);
+        drawCenteredText(matrices, client.textRenderer, title, width / 2, 12, -1);
         super.render(matrices, mouseX, mouseY, delta);
         if (isTransparentBackground()) {
 //            fillGradient(matrices, 0, 0, (int) sideSlider.scrollAmount, height, -1072689136, -804253680);
@@ -240,7 +240,7 @@ public class GlobalizedClothConfigScreen extends AbstractConfigScreen implements
         
         @Override
         public int getItemHeight() {
-            List<Text> strings = MinecraftClient.getInstance().textRenderer.wrapLines(text, getParent().getItemWidth());
+            List<Text> strings = MinecraftClient.getInstance().textRenderer.wrapStringToWidthAsList(text, getParent().getItemWidth());
             if (strings.isEmpty())
                 return 0;
             return 4 + strings.size() * 10;
@@ -262,7 +262,7 @@ public class GlobalizedClothConfigScreen extends AbstractConfigScreen implements
         @Override
         public void render(MatrixStack matrices, int index, int y, int x, int entryWidth, int entryHeight, int mouseX, int mouseY, boolean isHovered, float delta) {
             int yy = y + 2;
-            List<Text> texts = MinecraftClient.getInstance().textRenderer.wrapLines(this.text, getParent().getItemWidth());
+            List<Text> texts = MinecraftClient.getInstance().textRenderer.wrapStringToWidthAsList(this.text, getParent().getItemWidth());
             for (Text text : texts) {
                 MinecraftClient.getInstance().textRenderer.drawWithShadow(matrices, text, x - 4 + entryWidth / 2 - MinecraftClient.getInstance().textRenderer.getWidth(text) / 2, yy, -1);
                 yy += 10;

+ 2 - 2
src/main/java/me/shedaniel/clothconfig2/gui/entries/TextListEntry.java

@@ -45,7 +45,7 @@ public class TextListEntry extends TooltipListEntry<Object> {
         super.render(matrices, index, y, x, entryWidth, entryHeight, mouseX, mouseY, isSelected, delta);
         this.savedWidth = entryWidth;
         int yy = y + 4;
-        List<Text> strings = MinecraftClient.getInstance().textRenderer.wrapLines(text, savedWidth);
+        List<Text> strings = MinecraftClient.getInstance().textRenderer.wrapStringToWidthAsList(text, savedWidth);
         for (Text string : strings) {
             MinecraftClient.getInstance().textRenderer.drawWithShadow(matrices, string, x, yy, color);
             yy += MinecraftClient.getInstance().textRenderer.fontHeight + 3;
@@ -56,7 +56,7 @@ public class TextListEntry extends TooltipListEntry<Object> {
     public int getItemHeight() {
         if (savedWidth == -1)
             return 12;
-        List<Text> strings = MinecraftClient.getInstance().textRenderer.wrapLines(text, savedWidth);
+        List<Text> strings = MinecraftClient.getInstance().textRenderer.wrapStringToWidthAsList(text, savedWidth);
         if (strings.isEmpty())
             return 0;
         return 15 + strings.size() * 12;

+ 0 - 83
src/main/java/me/shedaniel/clothconfig2/impl/FakeKeyBindings.java

@@ -1,83 +0,0 @@
-package me.shedaniel.clothconfig2.impl;
-
-import me.shedaniel.clothconfig2.api.Modifier;
-import me.shedaniel.clothconfig2.api.ModifierKeyCode;
-import net.fabricmc.api.EnvType;
-import net.fabricmc.api.Environment;
-import net.minecraft.client.options.KeyBinding;
-import net.minecraft.client.util.InputUtil;
-import net.minecraft.text.Text;
-
-import java.util.UUID;
-import java.util.function.Consumer;
-
-@Environment(EnvType.CLIENT)
-public class FakeKeyBindings extends KeyBinding {
-    private final UUID uuid;
-    private final ModifierKeyCode keyCode;
-    private final ModifierKeyCode defaultKeyCode;
-    private final Consumer<ModifierKeyCode> onChanged;
-    
-    public FakeKeyBindings(String key, ModifierKeyCode keyCode, ModifierKeyCode defaultKeyCode, String category, Consumer<ModifierKeyCode> onChanged) {
-        super(UUID.randomUUID().toString(), InputUtil.Type.KEYSYM, -1, category);
-        uuid = UUID.fromString(getId());
-        ((KeyBindingHooks) this).cloth_setId("ZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZZ" + key);
-        this.keyCode = keyCode;
-        this.defaultKeyCode = ModifierKeyCode.copyOf(defaultKeyCode);
-        this.onChanged = onChanged;
-    }
-    
-    @Override
-    public InputUtil.KeyCode getDefaultKeyCode() {
-        return defaultKeyCode.getKeyCode();
-    }
-    
-    @Override
-    public void setKeyCode(InputUtil.KeyCode inputUtil$KeyCode_1) {
-        keyCode.setKeyCode(inputUtil$KeyCode_1);
-        keyCode.setModifier(Modifier.none());
-        onChanged.accept(keyCode);
-    }
-    
-    @Override
-    public boolean equals(KeyBinding keyBinding_1) {
-        return false;
-    }
-    
-    @Override
-    public boolean isNotBound() {
-        return keyCode.isUnknown();
-    }
-    
-    @Override
-    public boolean matchesKey(int int_1, int int_2) {
-        return keyCode.matchesKey(int_1, int_2);
-    }
-    
-    @Override
-    public boolean matchesMouse(int int_1) {
-        return keyCode.matchesMouse(int_1);
-    }
-    
-    @Override
-    public Text getLocalizedName() {
-        return keyCode.getLocalizedName();
-    }
-    
-    @Override
-    public boolean isDefault() {
-        return keyCode.equals(defaultKeyCode);
-    }
-    
-    @Override
-    public String getName() {
-        return keyCode.getLocalizedName().getString();
-    }
-    
-    @Override
-    public String getId() {
-        if (uuid == null)
-            return super.getId();
-        return super.getId().substring(77);
-    }
-}

+ 1 - 1
src/main/java/me/shedaniel/clothconfig2/impl/ModifierKeyCodeImpl.java

@@ -47,7 +47,7 @@ public class ModifierKeyCodeImpl implements ModifierKeyCode {
     
     @Override
     public Text getLocalizedName() {
-        Text base = this.keyCode.method_27445();
+        Text base = this.keyCode.getLocalizedText();
         if (modifier.hasShift())
             base = new TranslatableText("modifier.cloth-config.shift", base);
         if (modifier.hasControl())