diff options
-rw-r--r-- | .github/workflows/beta.yml | 4 | ||||
-rw-r--r-- | .github/workflows/buildrelease.yml | 182 | ||||
-rw-r--r-- | FEATURES.md | 9 | ||||
-rw-r--r-- | README.md | 73 | ||||
-rw-r--r-- | build.gradle | 19 | ||||
-rw-r--r-- | gradle.properties | 13 | ||||
-rw-r--r-- | gradle/wrapper/gradle-wrapper.properties | 2 | ||||
-rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/SkyblockerInitializer.java | 2 | ||||
-rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/skyblock/item/WikiLookup.java | 72 | ||||
-rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java | 6 | ||||
-rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/utils/Vertexer.java | 20 | ||||
-rw-r--r-- | src/main/resources/assets/skyblocker/lang/en_us.json | 1 | ||||
-rw-r--r-- | src/main/resources/fabric.mod.json | 5 | ||||
-rw-r--r-- | src/main/resources/skyblocker.mixins.json | 3 |
14 files changed, 277 insertions, 134 deletions
diff --git a/.github/workflows/beta.yml b/.github/workflows/beta.yml index 54292277..c5927d9e 100644 --- a/.github/workflows/beta.yml +++ b/.github/workflows/beta.yml @@ -26,11 +26,11 @@ jobs: file = file.toString().split("\n").map(e => e.trim().startsWith("mod_version") ? `${e}-beta-${process.env.GITHUB_SHA.substring(0, 7)}` : e).join("\n"); fs.writeFileSync("./gradle.properties", file); - - name: Set up JDK 16 + - name: Set up JDK 17 uses: actions/setup-java@v2 with: distribution: 'adopt' - java-version: '16' + java-version: '17' - name: Grant execute permission for gradlew run: chmod +x gradlew diff --git a/.github/workflows/buildrelease.yml b/.github/workflows/buildrelease.yml index afc4bf68..b1fa84d8 100644 --- a/.github/workflows/buildrelease.yml +++ b/.github/workflows/buildrelease.yml @@ -1,92 +1,92 @@ -# This is a basic workflow to help you get started with Actions - -name: Build Release - -# Controls when the action will run. Triggers the workflow on push or pull request -# events but only for the master branch -on: - release: - types: [created] - -jobs: - # This workflow contains a single job called "build" - build: - # The type of runner that the job will run on - runs-on: ubuntu-latest - # Steps represent a sequence of tasks that will be executed as part of the job - steps: - # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - - uses: actions/checkout@v2 - - name: Set up JDK 16 - uses: actions/setup-java@v2 - with: - distribution: 'adopt' - java-version: '16' - - - name: Grant execute permission for gradlew - run: chmod +x gradlew - - - name: Build with Gradle - run: ./gradlew build - - - uses: actions/upload-artifact@v2 - with: - name: Artifacts - path: build/libs/ - - - name: Read Changelog - id: read_changelog - shell: bash - run: | - CHANGELOG=$(sed '/___/Q' CHANGELOG.md | grep -v '# ') - echo "Changelog:\n$CHANGELOG" - CHANGELOG="${CHANGELOG//'%'/'%25'}" - CHANGELOG="${CHANGELOG//$'\n'/'%0A'}" - CHANGELOG="${CHANGELOG//$'\r'/'%0D'}" - echo "::set-output name=changelog::$CHANGELOG" - - - uses: actions/github-script@v2 - id: fname - with: - result-encoding: string - script: | - const fs = require("fs") - return fs.readdirSync("build/libs/").filter(e => !e.endsWith("dev.jar") && !e.endsWith("sources.jar") && e.endsWith(".jar"))[0] - - name: Release - id: uploadrelease - uses: softprops/action-gh-release@v1 - with: - body: ${{ steps.read_changelog.outputs.changelog }} - files: build/libs/${{ steps.fname.outputs.result }} - - - name: Publish to Modrinth - id: modrinth - env: - MODRINTH_TOKEN: ${{ secrets.MODRINTH_TOKEN }} - CHANGELOG: ${{ steps.read_changelog.outputs.changelog }} - run: ./gradlew publishModrinth - - - name: Get version tag - id: version_tag - run: | - [[ ! "$GITHUB_REF" =~ refs/tags ]] && exit - echo "::set-output name=value::${GITHUB_REF#refs/tags/}" - - - name: Discord notification - env: - DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }} - uses: Ilshidur/action-discord@master - with: - args: | - "@here" - "Skyblocker ${{ steps.version_tag.outputs.value }}" - "" - "Changelog" - "```md" - "${{ steps.read_changelog.outputs.changelog }}" - "```" - ":inbox_tray: Download latest version on Modrinth or Github:" - "<:modrinth:900697862206287882> <${{ steps.modrinth.outputs.url }}>" - "<:github:900697885706952725> <${{ steps.uploadrelease.outputs.url }}>" - "" +# This is a basic workflow to help you get started with Actions
+
+name: Build Release
+
+# Controls when the action will run. Triggers the workflow on push or pull request
+# events but only for the master branch
+on:
+ release:
+ types: [created]
+
+jobs:
+ # This workflow contains a single job called "build"
+ build:
+ # The type of runner that the job will run on
+ runs-on: ubuntu-latest
+ # Steps represent a sequence of tasks that will be executed as part of the job
+ steps:
+ # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
+ - uses: actions/checkout@v2
+ - name: Set up JDK 17
+ uses: actions/setup-java@v2
+ with:
+ distribution: 'adopt'
+ java-version: '17'
+
+ - name: Grant execute permission for gradlew
+ run: chmod +x gradlew
+
+ - name: Build with Gradle
+ run: ./gradlew build
+
+ - uses: actions/upload-artifact@v2
+ with:
+ name: Artifacts
+ path: build/libs/
+
+ - name: Read Changelog
+ id: read_changelog
+ shell: bash
+ run: |
+ CHANGELOG=$(sed '/___/Q' CHANGELOG.md | grep -v '# ')
+ echo "Changelog:\n$CHANGELOG"
+ CHANGELOG="${CHANGELOG//'%'/'%25'}"
+ CHANGELOG="${CHANGELOG//$'\n'/'%0A'}"
+ CHANGELOG="${CHANGELOG//$'\r'/'%0D'}"
+ echo "::set-output name=changelog::$CHANGELOG"
+
+ - uses: actions/github-script@v2
+ id: fname
+ with:
+ result-encoding: string
+ script: |
+ const fs = require("fs")
+ return fs.readdirSync("build/libs/").filter(e => !e.endsWith("dev.jar") && !e.endsWith("sources.jar") && e.endsWith(".jar"))[0]
+ - name: Release
+ id: uploadrelease
+ uses: softprops/action-gh-release@v1
+ with:
+ body: ${{ steps.read_changelog.outputs.changelog }}
+ files: build/libs/${{ steps.fname.outputs.result }}
+
+ - name: Publish to Modrinth
+ id: modrinth
+ env:
+ MODRINTH_TOKEN: ${{ secrets.MODRINTH_TOKEN }}
+ CHANGELOG: ${{ steps.read_changelog.outputs.changelog }}
+ run: ./gradlew publishModrinth
+
+ - name: Get version tag
+ id: version_tag
+ run: |
+ [[ ! "$GITHUB_REF" =~ refs/tags ]] && exit
+ echo "::set-output name=value::${GITHUB_REF#refs/tags/}"
+
+ - name: Discord notification
+ env:
+ DISCORD_WEBHOOK: ${{ secrets.DISCORD_WEBHOOK }}
+ uses: Ilshidur/action-discord@master
+ with:
+ args: |
+ "@here"
+ "Skyblocker ${{ steps.version_tag.outputs.value }}"
+ ""
+ "Changelog"
+ "```md"
+ "${{ steps.read_changelog.outputs.changelog }}"
+ "```"
+ ":inbox_tray: Download latest version on Modrinth or Github:"
+ "<:modrinth:900697862206287882> <${{ steps.modrinth.outputs.url }}>"
+ "<:github:900697885706952725> <${{ steps.uploadrelease.outputs.url }}>"
+ ""
"<https://hysky.de/>"
\ No newline at end of file diff --git a/FEATURES.md b/FEATURES.md index 9c9afafc..0b53c91f 100644 --- a/FEATURES.md +++ b/FEATURES.md @@ -1,10 +1,13 @@ * Bars: Health and absorption, Mana, Defense, XP * Hide Messages: Ability Cooldown, Heal, AOTE, Implosion, Molten Wave * Dungeon Minimap -* Dungeon Puzzle Solver: Three Weirdos, Blaze +* Dungeon Puzzle Solver: + * Three Weirdos + * Blaze * F7 Terminal: Order, Color, Name * Dwarven Mines Solver: Fetchur, Puzzler * Drill Fuel in Item Durability Bar -* Hotbar Slot Lock Keybind (Select the hotbar slot you want to lock/unlock and press the button) +* Hotbar Slot Lock Keybind (Select the hotbar slot you want to lock/unlock and press the lockbutton) * price tooltip: npc, bazaar (avg, lbin), ah, museum -* reparty: write /rp to reparty
\ No newline at end of file +* reparty: write /rp to reparty +* Wiki Lookup: press f4 to open the wiki page about the held item
\ No newline at end of file @@ -1,3 +1,5 @@ +<img height="150" src="https://hypixel.net/attachments/skyblocker-png.2715347" /> + ## Skyblocker [](https://modrinth.com/mod/skyblocker-liap) [](https://github.com/LifeIsAParadox/Skyblocker/releases/latest) @@ -5,23 +7,65 @@ [](https://discord.com/invite/aNNJHQykck) [](https://ko-fi.com/wohlhabend) -Hypixel Skyblock Mod for Minecraft 1.17+ this [Features](FEATURES.md) are implemented + +Hypixel Skyblock Mod for Minecraft 1.17.x + 1.18.x -### Table of content +### Table of content +* [Features](#features) +* [Images](#images) * [Requirements](#requirements) * [Install Fabric](#install-fabric) * [Install Skyblocker](#install-skyblocker) -* [Alternative](#alternative) easy install (modpack) (recommended) +* [Modpack](#modpack) easy install (recommended) <small><i><a href='http://ecotrust-canada.github.io/markdown-toc/'>Table of contents generated with markdown-toc</a></i></small> ___ +## Features +<details open> +<summary>open</summary> + +* Bars: Health and absorption, Mana, Defense, XP +* Hide Messages: Ability Cooldown, Heal, AOTE, Implosion, Molten Wave +* Dungeon Minimap +* Dungeon Puzzle Solver: + * Three Weirdos + * Blaze + * F7 Terminal: Order, Color, Name +* Dwarven Mines Solver: Fetchur, Puzzler +* Drill Fuel in Item Durability Bar +* Hotbar Slot Lock Keybind (Select the hotbar slot you want to lock/unlock and press the lockbutton) +* price tooltip: npc, bazaar (avg, lbin), ah, museum +* reparty: write /rp to reparty +* Wiki Lookup: press f4 to open the wiki page about the held item + +</details> + +___ +## Images +<details> +<summary>open (no images yet)</summary> + +<img height="150" src="https://i.etsystatic.com/30407219/r/il/1183a7/3143262438/il_fullxfull.3143262438_9m3l.jpg" /> + +</details> + +___ ## Requirements -**Fabric Loader**: https://fabricmc.net/use/ \ +<details> +<summary>open</summary> + +**Fabric Loader** 0.12.11 or higher: https://fabricmc.net/use/ \ **Fabric API**: https://modrinth.com/mod/fabric-api/versions \ (optional) **modmenu**: https://modrinth.com/mod/modmenu + +</details> + ___ ## Install Fabric +<details> +<summary>open</summary> + 1. Download the Fabric installer from https://fabricmc.net/use/. Similar to Forge, this installer will generate all of the required files for whichever version of Minecraft you select. However, Fabric does not have multiple installers for each version and you can install any version you want via the same installer. 2. Open the Fabric installer, which should automatically have the `Client` tab selected at the top. \  @@ -35,8 +79,15 @@ ___ 1. Open the Minecraft Launcher and the newly created Fabric profile should automatically be selected. Click `Play`, and your Fabric install will load up. \  \ <small><i>Source and images: <a href='https://web.archive.org/web/20211023134636/https://shockbyte.com/billing/knowledgebase/212/How-to-install-FabricMC-on-your-PC.html'>schockbyte.com</a></i></small> + +</details> + ___ ## Install Skyblocker + +<details> +<summary>open</summary> + 1. Download Skyblocker from [Modrinth](https://modrinth.com/mod/skyblocker-liap/versions) or [Github](https://github.com/LifeIsAParadox/Skyblocker/releases/latest) 2. Download Fabric Api from [Modrinth](https://modrinth.com/mod/fabric-api/versions) or [Curseforge](https://www.curseforge.com/minecraft/mc-mods/fabric-api) 1. (optional) Download Modmenu from [Modrinth](https://modrinth.com/mod/modmenu/versions) or [Curseforge](https://www.curseforge.com/minecraft/mc-mods/modmenu) @@ -51,9 +102,17 @@ ___ 6. After moving all the files, open the Minecraft Launcher and start the game using your Fabric profile. <small><i>Source and image: <a href='https://web.archive.org/web/20211024070022/https://shockbyte.com/billing/knowledgebase/213/How-to-install-FabricMC-Mods-on-your-PC.html'>schockbyte.com</a></i></small> + +</details> + ___ -## Alternative -Installing via modpack +## Modpack + +<details> +<summary>open</summary> + 1. Download the [skyblocker modpack](https://github.com/LifeIsAParadox/Skyblocker-modpack/releases/latest). Select Multimc or ~~Curseforge~~ version. 1. (Multimc) Drag and drop the zip into Multi mc and start the new instance. Every time you start the instance the modpack checks and updates mods to the latest version. - 2. (Curseforge) not implemented yet
\ No newline at end of file + 2. (Curseforge) not implemented yet + +</details>
\ No newline at end of file diff --git a/build.gradle b/build.gradle index c5656d10..a05703ab 100644 --- a/build.gradle +++ b/build.gradle @@ -7,11 +7,11 @@ plugins { import com.modrinth.minotaur.TaskModrinthUpload import com.modrinth.minotaur.request.VersionType -sourceCompatibility = JavaVersion.VERSION_16 -targetCompatibility = JavaVersion.VERSION_16 +sourceCompatibility = JavaVersion.VERSION_17 +targetCompatibility = JavaVersion.VERSION_17 archivesBaseName = project.archives_base_name -version = "${project.mod_version}+${project.minecraft_version}" +version = "${project.mod_version}+${project.suported_version}" group = project.maven_group repositories { @@ -67,8 +67,14 @@ processResources { } tasks.withType(JavaCompile).configureEach { - // Minecraft 1.17 (21w19a) upwards uses Java 16. - it.options.release = 16 + // ensure that the encoding is set to UTF-8, no matter what the system default is + // this fixes some edge cases with special characters not displaying correctly + // see http://yodaconditions.net/blog/fix-for-java-file-encoding-problems-with-gradle.html + // If Javadoc is generated, this must be specified in that task too. + it.options.encoding = "UTF-8" + + // Minecraft 1.18 upwards uses Java 17. + it.options.release = 17 } java { @@ -97,8 +103,9 @@ task publishModrinth(type: TaskModrinthUpload) { token = System.getenv('MODRINTH_TOKEN') projectId = project.modrinth_id versionNumber = "v${project.version}" - versionName = "Skyblocker ${project.mod_version} (${project.minecraft_version})" + versionName = "Skyblocker ${project.mod_version} (${project.suported_version})" uploadFile = remapJar + addGameVersion('1.17.1') addGameVersion((String) project.minecraft_version) addLoader('fabric') versionType = VersionType.RELEASE diff --git a/gradle.properties b/gradle.properties index 52e12079..3952ba70 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,21 +1,22 @@ org.gradle.jvmargs=-Xmx1G # Fabric Properties (https://fabricmc.net/versions.html) -minecraft_version=1.17.1 -yarn_mappings=1.17.1+build.65 +minecraft_version=1.18.1 +yarn_mappings=1.18.1+build.2 loader_version=0.12.11 #Fabric api -fabric_version=0.44.0+1.17 +fabric_version=0.44.0+1.18 # Dependencies ## Cloth Api (https://www.curseforge.com/minecraft/mc-mods/cloth-config/files) -clothconfig_version=5.2.47 +clothconfig_version=6.1.48 ## Mod Menu (https://www.curseforge.com/minecraft/mc-mods/modmenu/files) -mod_menu_version=2.0.14 +mod_menu_version=3.0.0 # Mod Properties mod_version = 1.4.3 maven_group = me.xmrvizzy archives_base_name = skyblocker -modrinth_id=y6DuFGwJ
\ No newline at end of file +modrinth_id=y6DuFGwJ +suported_version=1.17.x-1.18.x
\ No newline at end of file diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 54e9a60b..a33384a3 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.3-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.1-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists
\ No newline at end of file diff --git a/src/main/java/me/xmrvizzy/skyblocker/SkyblockerInitializer.java b/src/main/java/me/xmrvizzy/skyblocker/SkyblockerInitializer.java index b3a50697..93eac100 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/SkyblockerInitializer.java +++ b/src/main/java/me/xmrvizzy/skyblocker/SkyblockerInitializer.java @@ -3,6 +3,7 @@ package me.xmrvizzy.skyblocker; import me.xmrvizzy.skyblocker.config.SkyblockerConfig; import me.xmrvizzy.skyblocker.skyblock.HotbarSlotLock; import me.xmrvizzy.skyblocker.skyblock.item.PriceInfoTooltip; +import me.xmrvizzy.skyblocker.skyblock.item.WikiLookup; import net.fabricmc.api.ClientModInitializer; public class SkyblockerInitializer implements ClientModInitializer { @@ -11,5 +12,6 @@ public class SkyblockerInitializer implements ClientModInitializer { HotbarSlotLock.init(); SkyblockerConfig.init(); PriceInfoTooltip.init(); + WikiLookup.init(); } } diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/WikiLookup.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/WikiLookup.java new file mode 100644 index 00000000..30da694e --- /dev/null +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/WikiLookup.java @@ -0,0 +1,72 @@ +package me.xmrvizzy.skyblocker.skyblock.item; + +import com.google.gson.Gson; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.JsonParser; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; +import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper; +import net.minecraft.client.MinecraftClient; +import net.minecraft.client.option.KeyBinding; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NbtCompound; +import net.minecraft.text.Text; +import net.minecraft.util.Util; +import org.lwjgl.glfw.GLFW; + +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import java.net.URL; +import java.net.URLConnection; + +public class WikiLookup { + public static KeyBinding wikiLookup; + static MinecraftClient client = MinecraftClient.getInstance(); + static String id; + public static Gson gson = new Gson(); + + public static void init(){ + wikiLookup = KeyBindingHelper.registerKeyBinding(new KeyBinding( + "key.wikiLookup", + GLFW.GLFW_KEY_F4, + "key.categories.skyblocker" + )); + ClientTickEvents.END_CLIENT_TICK.register(client -> { + while (wikiLookup.wasPressed()) { + id = getSkyblockId(); + + try { + //Setting up a connection with the repo + String urlString = "https://raw.githubusercontent.com/NotEnoughUpdates/NotEnoughUpdates-REPO/master/items/" + id + ".json"; + URL url = new URL(urlString); + URLConnection request = url.openConnection(); + request.connect(); + + //yoinking the wiki link + JsonElement root = JsonParser.parseReader(new InputStreamReader((InputStream) request.getContent())); + JsonObject rootobj = root.getAsJsonObject(); + String wikiLink = rootobj.get("info").getAsString(); + Util.getOperatingSystem().open(wikiLink); + } catch (IOException | NullPointerException e) { + e.printStackTrace(); + client.player.sendMessage(Text.of("Can't locate a wiki article for this item..."), false); + } + + } + }); + } + + public static String getSkyblockId() { + + //Grabbing the skyblock NBT data + ItemStack mainStack = client.player.getMainHandStack(); + NbtCompound nbt = mainStack.getSubNbt("ExtraAttributes"); + if (nbt != null) { + id = nbt.getString("id"); + } + + return id; + } + +} diff --git a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java index f6fb1bc1..962421b7 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java +++ b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java @@ -67,17 +67,17 @@ public class RenderUtilsLiving { if (fill) { int opacity = (int) (MinecraftClient.getInstance().options.getTextBackgroundOpacity(0.25F) * 255.0F) << 24; - mc.textRenderer.draw(text, -halfWidth, 0f, 553648127, false, matrices.peek().getModel(), immediate, true, opacity, 0xf000f0); + mc.textRenderer.draw(text, -halfWidth, 0f, 553648127, false, matrices.peek().getPositionMatrix(), immediate, true, opacity, 0xf000f0); immediate.draw(); } else { matrices.push(); matrices.translate(1, 1, 0); - mc.textRenderer.draw(text.copy(), -halfWidth, 0f, 0x202020, false, matrices.peek().getModel(), immediate, true, 0, 0xf000f0); + mc.textRenderer.draw(text.copy(), -halfWidth, 0f, 0x202020, false, matrices.peek().getPositionMatrix(), immediate, true, 0, 0xf000f0); immediate.draw(); matrices.pop(); } - mc.textRenderer.draw(text, -halfWidth, 0f, -1, false, matrices.peek().getModel(), immediate, true, 0, 0xf000f0); + mc.textRenderer.draw(text, -halfWidth, 0f, -1, false, matrices.peek().getPositionMatrix(), immediate, true, 0, 0xf000f0); immediate.draw(); RenderSystem.disableBlend(); diff --git a/src/main/java/me/xmrvizzy/skyblocker/utils/Vertexer.java b/src/main/java/me/xmrvizzy/skyblocker/utils/Vertexer.java index f9ac629e..12f4b0fd 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/utils/Vertexer.java +++ b/src/main/java/me/xmrvizzy/skyblocker/utils/Vertexer.java @@ -57,17 +57,17 @@ public class Vertexer { int[] color = quadColor.getAllColors(); if (cullMode != CULL_FRONT) { - vertexConsumer.vertex(matrices.peek().getModel(), x1, y1, z1).color(color[0], color[1], color[2], color[3]).next(); - vertexConsumer.vertex(matrices.peek().getModel(), x2, y2, z2).color(color[4], color[5], color[6], color[7]).next(); - vertexConsumer.vertex(matrices.peek().getModel(), x3, y3, z3).color(color[8], color[9], color[10], color[11]).next(); - vertexConsumer.vertex(matrices.peek().getModel(), x4, y4, z4).color(color[12], color[13], color[14], color[15]).next(); + vertexConsumer.vertex(matrices.peek().getPositionMatrix(), x1, y1, z1).color(color[0], color[1], color[2], color[3]).next(); + vertexConsumer.vertex(matrices.peek().getPositionMatrix(), x2, y2, z2).color(color[4], color[5], color[6], color[7]).next(); + vertexConsumer.vertex(matrices.peek().getPositionMatrix(), x3, y3, z3).color(color[8], color[9], color[10], color[11]).next(); + vertexConsumer.vertex(matrices.peek().getPositionMatrix(), x4, y4, z4).color(color[12], color[13], color[14], color[15]).next(); } if (cullMode != CULL_BACK) { - vertexConsumer.vertex(matrices.peek().getModel(), x4, y4, z4).color(color[0], color[1], color[2], color[3]).next(); - vertexConsumer.vertex(matrices.peek().getModel(), x3, y3, z3).color(color[4], color[5], color[6], color[7]).next(); - vertexConsumer.vertex(matrices.peek().getModel(), x2, y2, z2).color(color[8], color[9], color[10], color[11]).next(); - vertexConsumer.vertex(matrices.peek().getModel(), x1, y1, z1).color(color[12], color[13], color[14], color[15]).next(); + vertexConsumer.vertex(matrices.peek().getPositionMatrix(), x4, y4, z4).color(color[0], color[1], color[2], color[3]).next(); + vertexConsumer.vertex(matrices.peek().getPositionMatrix(), x3, y3, z3).color(color[4], color[5], color[6], color[7]).next(); + vertexConsumer.vertex(matrices.peek().getPositionMatrix(), x2, y2, z2).color(color[8], color[9], color[10], color[11]).next(); + vertexConsumer.vertex(matrices.peek().getPositionMatrix(), x1, y1, z1).color(color[12], color[13], color[14], color[15]).next(); } } @@ -132,8 +132,8 @@ public class Vertexer { } public static void vertexLine(MatrixStack matrices, VertexConsumer vertexConsumer, float x1, float y1, float z1, float x2, float y2, float z2, LineColor lineColor) { - Matrix4f model = matrices.peek().getModel(); - Matrix3f normal = matrices.peek().getNormal(); + Matrix4f model = matrices.peek().getPositionMatrix(); + Matrix3f normal = matrices.peek().getNormalMatrix(); Vec3f normalVec = getNormal(normal, x1, y1, z1, x2, y2, z2); diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json index a1f0198e..680787e8 100644 --- a/src/main/resources/assets/skyblocker/lang/en_us.json +++ b/src/main/resources/assets/skyblocker/lang/en_us.json @@ -1,6 +1,7 @@ { "key.categories.skyblocker": "Skyblocker", "key.hotbarSlotLock": "Slot Lock (Hotbar)", + "key.wikiLookup": "Wiki Lookup", "text.autoconfig.skyblocker.title": "Skyblocker Settings", diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json index 250e5737..8ef1482d 100644 --- a/src/main/resources/fabric.mod.json +++ b/src/main/resources/fabric.mod.json @@ -5,7 +5,7 @@ "name": "Skyblocker", "description": "Hypixel Skyblock Mod", "authors": ["xMrVizzy", "d3dx9", "LifeIsAParadox"], - "contributors": ["ExternalTime", "Zailer43"], + "contributors": ["ExternalTime", "Zailer43", "TacoMonkey"], "contact": { "homepage": "https://hysky.de", "sources": "https://github.com/LifeIsAParadox/Skyblocker", @@ -29,8 +29,7 @@ "fabricloader": ">=0.12.11", "fabric": "*", "cloth-config2": "*", - "minecraft": "1.17.x", - "java": ">=16" + "minecraft": ["1.18.x","1.17.x"] }, "custom": { "modmenu": { diff --git a/src/main/resources/skyblocker.mixins.json b/src/main/resources/skyblocker.mixins.json index bfc6b0f2..abc219fa 100644 --- a/src/main/resources/skyblocker.mixins.json +++ b/src/main/resources/skyblocker.mixins.json @@ -1,11 +1,10 @@ { "required": true, "package": "me.xmrvizzy.skyblocker.mixin", - "compatibilityLevel": "JAVA_16", + "compatibilityLevel": "JAVA_17", "client": [ "ChatHudListenerMixin", "ClientPlayerEntityMixin", - "ClientPlayNetworkHandlerMixin", "InGameHudMixin", "ItemRendererMixin", "MinecraftClientMixin", |