aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.github/workflows/build.yml8
-rw-r--r--build.gradle43
-rw-r--r--gradle.properties29
-rw-r--r--gradle/wrapper/gradle-wrapper.jarbin59203 -> 59536 bytes
-rw-r--r--gradle/wrapper/gradle-wrapper.properties2
-rwxr-xr-xgradlew4
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java10
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/config/modmenu/ModMenuEntry.java6
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerEntityMixin.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/mixin/InGameHudMixin.java29
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java8
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/HotbarSlotLock.java8
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java2
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMap.java12
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java10
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java51
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java14
-rw-r--r--src/main/resources/assets/skyblocker/lang/en_us.json1
-rw-r--r--src/main/resources/fabric.mod.json16
-rw-r--r--src/main/resources/skyblocker.mixins.json5
20 files changed, 145 insertions, 115 deletions
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 31c38eec..62417f76 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -12,9 +12,7 @@ jobs:
matrix:
# Use these Java versions
java: [
- 1.8, # Minimum supported by Minecraft
- 11, # Current Java LTS
- 15 # Latest version
+ 16 # Minimum supported by Minecraft
]
# and run on both Linux and Windows
os: [ubuntu-20.04, windows-latest]
@@ -34,8 +32,8 @@ jobs:
- name: build
run: ./gradlew build
- name: capture build artifacts
- if: ${{ runner.os == 'Linux' && matrix.java == '11' }} # Only upload artifacts built from LTS java on one OS
+ if: ${{ runner.os == 'Linux' && matrix.java == '16' }} # Only upload artifacts built from latest java on one OS
uses: actions/upload-artifact@v2
with:
name: Artifacts
- path: build/libs/
+ path: build/libs/ \ No newline at end of file
diff --git a/build.gradle b/build.gradle
index a711062e..140f0dc8 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,10 +1,10 @@
plugins {
- id 'fabric-loom' version '0.6-SNAPSHOT'
+ id 'fabric-loom' version '0.9-SNAPSHOT'
id 'maven-publish'
}
-sourceCompatibility = JavaVersion.VERSION_1_8
-targetCompatibility = JavaVersion.VERSION_1_8
+sourceCompatibility = JavaVersion.VERSION_16
+targetCompatibility = JavaVersion.VERSION_16
archivesBaseName = project.archives_base_name
version = project.mod_version
@@ -19,29 +19,31 @@ repositories {
flatDir {
dirs 'libs'
}
+ maven { url "https://maven.terraformersmc.com/releases" }
+ maven { url "https://maven.shedaniel.me/" }
+ maven {
+ url 'https://repo.maven.apache.org/maven2'
+ name 'Maven Central'
+ }
+
}
dependencies {
- implementation 'com.google.code.gson:gson:2.8.6'
+ implementation 'com.google.code.gson:gson:2.8.7'
// To change the versions see the gradle.properties file
minecraft "com.mojang:minecraft:${project.minecraft_version}"
mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
modImplementation "net.fabricmc:fabric-loader:${project.loader_version}"
- // Cloth API
- include "me.shedaniel.cloth:config-2:${project.cloth_api_version}"
- modApi("me.shedaniel.cloth:config-2:${project.cloth_api_version}") {
- exclude(group: "net.fabricmc.fabric-api")
- }
-
- // Auto Config
- include "me.sargunvohra.mcmods:autoconfig1u:${project.auto_config_version}"
- modApi("me.sargunvohra.mcmods:autoconfig1u:${project.auto_config_version}") {
- exclude(group: "net.fabricmc.fabric-api")
+ // Cloth config
+ modImplementation("me.shedaniel.cloth:cloth-config-fabric:${project.clothconfig_version}") {
+ exclude group: "net.fabricmc.fabric-api"
+ exclude module: "modmenu"
}
+ include "me.shedaniel.cloth:cloth-config-fabric:${project.clothconfig_version}"
// Mod Menu
- modImplementation "io.github.prospector:modmenu:${project.mod_menu_version}"
+ modImplementation "com.terraformersmc:modmenu:${project.mod_menu_version}"
// Fabric API. This is technically optional, but you probably want it anyway.
modImplementation "net.fabricmc.fabric-api:fabric-api:${project.fabric_version}"
@@ -65,13 +67,8 @@ tasks.withType(JavaCompile).configureEach {
// If Javadoc is generated, this must be specified in that task too.
it.options.encoding = "UTF-8"
- // The Minecraft launcher currently installs Java 8 for users, so your mod probably wants to target Java 8 too
- // JDK 9 introduced a new way of specifying this that will make sure no newer classes or methods are used.
- // We'll use that if it's available, but otherwise we'll use the older option.
- def targetVersion = 8
- if (JavaVersion.current().isJava9Compatible()) {
- it.options.release = targetVersion
- }
+ // Minecraft 1.17 (21w19a) upwards uses Java 16.
+ it.options.release = 16
}
java {
@@ -108,4 +105,4 @@ publishing {
// The repositories here will be used for publishing your artifact, not for
// retrieving dependencies.
}
-}
+} \ No newline at end of file
diff --git a/gradle.properties b/gradle.properties
index fca4137a..1a49ff52 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -1,23 +1,20 @@
org.gradle.jvmargs=-Xmx1G
-# Fabric Properties (https://modmuss50.me/fabric.html)
- minecraft_version=1.16.5
- yarn_mappings=1.16.5+build.5
- loader_version=0.11.3
+# Fabric Properties (https://fabricmc.net/versions.html)
+minecraft_version=1.17.1
+yarn_mappings=1.17.1+build.39
+loader_version=0.11.6
-fabric_api_version=0.29.3+1.16
-fabric_version=0.31.0+1.16
-# APIs
+#Fabric api
+fabric_version=0.38.0+1.17
+
+# Dependencies
## Cloth Api (https://www.curseforge.com/minecraft/mc-mods/cloth-config/files)
-cloth_api_version=4.8.3
-## Auto Config (https://bintray.com/shedaniel/autoconfig1u/autoconfig1u/_latestVersion)
-auto_config_version=3.3.1
-## Mod Menu (https://maven.fabricmc.net/io/github/prospector/modmenu/)
-mod_menu_version=1.14.13+build.21
+clothconfig_version=5.0.38
+## Mod Menu (https://www.curseforge.com/minecraft/mc-mods/modmenu/files)
+mod_menu_version=2.0.4
# Mod Properties
-mod_version = 1.0.5
+mod_version = 1.0.6
maven_group = me.xmrvizzy
-archives_base_name = skyblocker
-
-org.gradle.java.home=C:\\Program Files\\Java\\jdk1.8.0_281 \ No newline at end of file
+archives_base_name = skyblocker \ No newline at end of file
diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar
index e708b1c0..7454180f 100644
--- a/gradle/wrapper/gradle-wrapper.jar
+++ b/gradle/wrapper/gradle-wrapper.jar
Binary files differ
diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties
index 442d9132..b3974a11 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-6.8.3-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
+distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-all.zip \ No newline at end of file
diff --git a/gradlew b/gradlew
index 4f906e0c..fe1f4e62 100755
--- a/gradlew
+++ b/gradlew
@@ -72,7 +72,7 @@ case "`uname`" in
Darwin* )
darwin=true
;;
- MINGW* )
+ MSYS* | MINGW* )
msys=true
;;
NONSTOP* )
@@ -182,4 +182,4 @@ APP_ARGS=`save "$@"`
# Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
-exec "$JAVACMD" "$@"
+exec "$JAVACMD" "$@" \ No newline at end of file
diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java
index cdf60eed..0bda79d6 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java
@@ -1,10 +1,10 @@
package me.xmrvizzy.skyblocker.config;
-import me.sargunvohra.mcmods.autoconfig1u.AutoConfig;
-import me.sargunvohra.mcmods.autoconfig1u.ConfigData;
-import me.sargunvohra.mcmods.autoconfig1u.annotation.Config;
-import me.sargunvohra.mcmods.autoconfig1u.annotation.ConfigEntry;
-import me.sargunvohra.mcmods.autoconfig1u.serializer.GsonConfigSerializer;
+import me.shedaniel.autoconfig.AutoConfig;
+import me.shedaniel.autoconfig.ConfigData;
+import me.shedaniel.autoconfig.annotation.Config;
+import me.shedaniel.autoconfig.annotation.ConfigEntry;
+import me.shedaniel.autoconfig.serializer.GsonConfigSerializer;
import java.util.ArrayList;
import java.util.List;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/modmenu/ModMenuEntry.java b/src/main/java/me/xmrvizzy/skyblocker/config/modmenu/ModMenuEntry.java
index cd0c7ad2..f9d4e8fe 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/config/modmenu/ModMenuEntry.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/config/modmenu/ModMenuEntry.java
@@ -1,8 +1,8 @@
package me.xmrvizzy.skyblocker.config.modmenu;
-import io.github.prospector.modmenu.api.ConfigScreenFactory;
-import io.github.prospector.modmenu.api.ModMenuApi;
-import me.sargunvohra.mcmods.autoconfig1u.AutoConfig;
+import me.shedaniel.autoconfig.AutoConfig;
+import com.terraformersmc.modmenu.api.ConfigScreenFactory;
+import com.terraformersmc.modmenu.api.ModMenuApi;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerEntityMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerEntityMixin.java
index 343794b1..5825b394 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerEntityMixin.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/ClientPlayerEntityMixin.java
@@ -29,6 +29,6 @@ public abstract class ClientPlayerEntityMixin extends AbstractClientPlayerEntity
@Inject(method = "dropSelectedItem", at = @At("HEAD"), cancellable = true)
public void dropSelectedItem(boolean dropEntireStack, CallbackInfoReturnable<Boolean> cir) {
- if (Utils.isSkyblock) HotbarSlotLock.handleDropSelectedItem(this.inventory.selectedSlot, cir);
+ if (Utils.isSkyblock) HotbarSlotLock.handleDropSelectedItem(this.getInventory().selectedSlot, cir);
}
} \ No newline at end of file
diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/InGameHudMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/InGameHudMixin.java
index eba58fd0..b2a6dab2 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/mixin/InGameHudMixin.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/InGameHudMixin.java
@@ -1,5 +1,6 @@
package me.xmrvizzy.skyblocker.mixin;
+import com.mojang.blaze3d.systems.RenderSystem;
import me.xmrvizzy.skyblocker.SkyblockerMod;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
import me.xmrvizzy.skyblocker.skyblock.Attribute;
@@ -29,7 +30,7 @@ import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@Mixin(InGameHud.class)
public abstract class InGameHudMixin extends DrawableHelper {
private static final Identifier SLOT_LOCK = new Identifier(SkyblockerMod.NAMESPACE, "textures/gui/slot_lock.png");
- private static final Identifier BARS = new Identifier(SkyblockerMod.NAMESPACE, "textures/gui/bars.png");
+ private static final Identifier BARS = new Identifier(SkyblockerMod.NAMESPACE,"textures/gui/bars.png");
private MatrixStack hotbarMatrices;
private int hotbarSlotIndex;
@@ -41,8 +42,8 @@ public abstract class InGameHudMixin extends DrawableHelper {
private int scaledHeight;
@Shadow
private int scaledWidth;
-
- @Shadow public abstract TextRenderer getFontRenderer();
+ @Shadow
+ public abstract TextRenderer getTextRenderer();
@ModifyVariable(method = "setOverlayMessage(Lnet/minecraft/text/Text;Z)V", at = @At("HEAD"))
private Text setOverlayMessage(Text message) {
@@ -61,10 +62,10 @@ public abstract class InGameHudMixin extends DrawableHelper {
}
@Inject(method = "renderHotbarItem", at = @At("HEAD"))
- public void renderHotbarItem(int i, int j, float f, PlayerEntity player, ItemStack item, CallbackInfo ci) {
+ public void renderHotbarItem(int i, int j, float f, PlayerEntity player, ItemStack stack, int seed, CallbackInfo ci) {
if (Utils.isSkyblock) {
if (HotbarSlotLock.isLocked(hotbarSlotIndex)) {
- this.client.getTextureManager().bindTexture(SLOT_LOCK);
+ RenderSystem.setShaderTexture(0,SLOT_LOCK);
this.drawTexture(hotbarMatrices, i, j, 0, 0,16, 16);
}
hotbarSlotIndex++;
@@ -108,7 +109,8 @@ public abstract class InGameHudMixin extends DrawableHelper {
int xp = (int) (this.client.player.experienceProgress * 33.0F);
// Icons
- this.client.getTextureManager().bindTexture(BARS);
+// this.client.getTextureManager().bindTexture(BARS);
+ RenderSystem.setShaderTexture(0,InGameHudMixin.BARS);
this.drawTexture(matrices, left, top, 0, 0, 9, 9);
this.drawTexture(matrices, left + 47, top, 9, 0, 7, 9);
this.drawTexture(matrices, left + 92, top, 16, 0, 9, 9);
@@ -131,17 +133,20 @@ public abstract class InGameHudMixin extends DrawableHelper {
renderText(matrices, Attribute.MANA.get(), left + 56, top, 5636095);
renderText(matrices, Attribute.DEFENCE.get(), left + 103, top, 12106180);
renderText(matrices, this.client.player.experienceLevel, left + 150, top, 8453920);
+
}
private void renderText(MatrixStack matrices, int value, int left, int top, int color) {
String text = Integer.toString(value);
- int x = left + (33 - this.getFontRenderer().getWidth(text)) / 2;
+ int x = left + (33 - this.getTextRenderer().getWidth(text)) / 2;
int y = top - 3;
- this.getFontRenderer().draw(matrices, text, (float) (x + 1), (float) y, 0);
- this.getFontRenderer().draw(matrices, text, (float) (x - 1), (float) y, 0);
- this.getFontRenderer().draw(matrices, text, (float) x, (float) (y + 1), 0);
- this.getFontRenderer().draw(matrices, text, (float) x, (float) (y - 1), 0);
- this.getFontRenderer().draw(matrices, text, (float) x, (float) y, color);
+ this.getTextRenderer().draw(matrices, text, (float) (x + 1), (float) y, 0);
+ this.getTextRenderer().draw(matrices, text, (float) (x - 1), (float) y, 0);
+ this.getTextRenderer().draw(matrices, text, (float) x, (float) (y + 1), 0);
+ this.getTextRenderer().draw(matrices, text, (float) x, (float) (y - 1), 0);
+ this.getTextRenderer().draw(matrices, text, (float) x, (float) y, color);
}
+
+
} \ No newline at end of file
diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java
index eaac1c9c..90f82da6 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/ItemRendererMixin.java
@@ -10,7 +10,7 @@ import net.minecraft.client.render.BufferBuilder;
import net.minecraft.client.render.Tessellator;
import net.minecraft.client.render.item.ItemRenderer;
import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.CompoundTag;
+import net.minecraft.nbt.NbtCompound;
import net.minecraft.text.LiteralText;
import net.minecraft.util.math.MathHelper;
import org.jetbrains.annotations.Nullable;
@@ -32,7 +32,7 @@ public abstract class ItemRendererMixin {
if (Utils.isSkyblock && SkyblockerConfig.get().locations.dwarvenMines.enableDrillFuel) {
if (!stack.isEmpty()) {
- CompoundTag tag = stack.getTag();
+ NbtCompound tag = stack.getNbt();
if (tag != null && tag.contains("ExtraAttributes")) {
if (tag.getCompound("ExtraAttributes").contains("drill_fuel")) {
float current = 3000.0F;
@@ -50,7 +50,7 @@ public abstract class ItemRendererMixin {
RenderSystem.disableDepthTest();
RenderSystem.disableTexture();
- RenderSystem.disableAlphaTest();
+// RenderSystem.disableAlphaTest();
RenderSystem.disableBlend();
Tessellator tessellator = Tessellator.getInstance();
BufferBuilder buffer = tessellator.getBuffer();
@@ -60,7 +60,7 @@ public abstract class ItemRendererMixin {
this.renderGuiQuad(buffer, x + 2, y + 13, 13, 2, 0,0,0,255);
this.renderGuiQuad(buffer, x + 2, y + 13, width, 1, rgb >> 16 & 255, rgb >> 8 & 255, rgb & 255, 255);
RenderSystem.enableBlend();
- RenderSystem.enableAlphaTest();
+// RenderSystem.enableAlphaTest();
RenderSystem.enableTexture();
RenderSystem.enableDepthTest();
}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/HotbarSlotLock.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/HotbarSlotLock.java
index 42b9db1d..e9b2bfa3 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/HotbarSlotLock.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/HotbarSlotLock.java
@@ -1,10 +1,10 @@
package me.xmrvizzy.skyblocker.skyblock;
-import me.sargunvohra.mcmods.autoconfig1u.AutoConfig;
+import me.shedaniel.autoconfig.AutoConfig;
import me.xmrvizzy.skyblocker.config.SkyblockerConfig;
import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper;
import net.minecraft.client.network.ClientPlayerEntity;
-import net.minecraft.client.options.KeyBinding;
+import net.minecraft.client.option.KeyBinding;
import org.lwjgl.glfw.GLFW;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
@@ -32,8 +32,8 @@ public class HotbarSlotLock {
public static void handleInputEvents(ClientPlayerEntity player) {
while (hotbarSlotLock.wasPressed()) {
List<Integer> lockedSlots = SkyblockerConfig.get().general.lockedSlots;
- int selected = player.inventory.selectedSlot;
- if (!isLocked(player.inventory.selectedSlot)) lockedSlots.add(selected);
+ int selected = player.getInventory().selectedSlot;
+ if (!isLocked(player.getInventory().selectedSlot)) lockedSlots.add(selected);
else lockedSlots.remove(Integer.valueOf(selected));
AutoConfig.getConfigHolder(SkyblockerConfig.class).save();
}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java
index 4d77f734..fd20c3a4 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonBlaze.java
@@ -38,7 +38,7 @@ import net.minecraft.client.render.debug.DebugRenderer;
import net.minecraft.client.render.debug.DebugRenderer.Renderer;
import net.minecraft.client.render.entity.EntityRenderDispatcher;
import net.minecraft.client.util.math.MatrixStack;
-import net.minecraft.client.util.math.Vector3f;
+import net.minecraft.util.math.Vec3f;
import net.minecraft.entity.Entity;
import net.minecraft.entity.mob.BlazeEntity;
import net.minecraft.text.LiteralText;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMap.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMap.java
index 61e747d0..c6da694b 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMap.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/dungeon/DungeonMap.java
@@ -1,32 +1,32 @@
package me.xmrvizzy.skyblocker.skyblock.dungeon;
import net.minecraft.client.MinecraftClient;
-import net.minecraft.client.gui.MapRenderer;
+import net.minecraft.client.render.MapRenderer;
import net.minecraft.client.render.VertexConsumerProvider;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.item.FilledMapItem;
import net.minecraft.item.ItemStack;
import net.minecraft.item.map.MapState;
-import net.minecraft.nbt.CompoundTag;
+import net.minecraft.nbt.NbtCompound;
public class DungeonMap {
public static void render(MatrixStack matrices) {
MinecraftClient client = MinecraftClient.getInstance();
if (client.player == null && client.world == null) return;
- ItemStack item = client.player.inventory.main.get(8);
- CompoundTag tag = item.getTag();
+ ItemStack item = client.player.getInventory().main.get(8);
+ NbtCompound tag = item.getNbt();
if (tag != null && tag.contains("map")) {
VertexConsumerProvider.Immediate vertices = client.getBufferBuilders().getEffectVertexConsumers();
MapRenderer map = client.gameRenderer.getMapRenderer();
- MapState state = FilledMapItem.getMapState(item, client.world);
+ MapState state = FilledMapItem.getOrCreateMapState(item, client.world);
if (state == null) return;
matrices.push();
matrices.translate(2, 2, 0);
matrices.scale(1, 1, 0);
- map.draw(matrices, vertices, state, false, 15728880);
+ map.draw(matrices, vertices, 15728880,state, false,15728880);
vertices.draw();
matrices.pop();
}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java
index c4c3fb9c..ff02c675 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/item/PriceInfoTooltip.java
@@ -19,7 +19,7 @@ import java.util.zip.GZIPInputStream;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.item.TooltipContext;
import net.minecraft.item.ItemStack;
-import net.minecraft.nbt.CompoundTag;
+import net.minecraft.nbt.NbtCompound;
import net.minecraft.text.LiteralText;
import net.minecraft.text.Text;
import net.minecraft.util.Formatting;
@@ -65,14 +65,14 @@ public class PriceInfoTooltip {
}
public static String getInternalNameForItem(ItemStack stack) {
if(stack == null) return null;
- CompoundTag tag = stack.getTag();
+ NbtCompound tag = stack.getNbt();
return getInternalnameFromNBT(tag);
}
- public static String getInternalnameFromNBT(CompoundTag tag) {
+ public static String getInternalnameFromNBT(NbtCompound tag) {
String internalname = null;
if(tag != null && tag.contains("ExtraAttributes", 10)) {
- CompoundTag ea = tag.getCompound("ExtraAttributes");
+ NbtCompound ea = tag.getCompound("ExtraAttributes");
if(ea.contains("id", 8)) {
internalname = ea.getString("id").replaceAll(":", "-");
@@ -82,7 +82,7 @@ public class PriceInfoTooltip {
if("ENCHANTED_BOOK".equals(internalname)) {
- CompoundTag enchants = ea.getCompound("enchantments");
+ NbtCompound enchants = ea.getCompound("enchantments");
for(String enchname : enchants.getKeys()) {
internalname = enchname.toUpperCase() + ";" + enchants.getInt(enchname);
diff --git a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java
index f88accab..472c41d6 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtils.java
@@ -26,14 +26,20 @@ public class RenderUtils {
// Fill
Tessellator tessellator = Tessellator.getInstance();
BufferBuilder buffer = tessellator.getBuffer();
- buffer.begin(5, VertexFormats.POSITION_COLOR);
+
+ VertexFormat.DrawMode drawMode = VertexFormat.DrawMode.QUADS;
+ buffer.begin(drawMode, VertexFormats.POSITION_COLOR);
+
+// buffer.begin(5, VertexFormats.POSITION_COLOR);
WorldRenderer.drawBox(buffer,
box.minX, box.minY, box.minZ,
box.maxX, box.maxY, box.maxZ, r, g, b, a / 2f);
tessellator.draw();
// Outline
- buffer.begin(3, VertexFormats.POSITION_COLOR);
+ buffer.begin(drawMode, VertexFormats.POSITION_COLOR);
+
+// buffer.begin(3, VertexFormats.POSITION_COLOR);
buffer.vertex(box.minX, box.minY, box.minZ).color(r, g, b, a).next();
buffer.vertex(box.minX, box.minY, box.maxZ).color(r, g, b, a).next();
buffer.vertex(box.maxX, box.minY, box.maxZ).color(r, g, b, a).next();
@@ -70,7 +76,11 @@ public class RenderUtils {
float float_8 = (color2 & 255) / 255.0F;
Tessellator tessellator_1 = Tessellator.getInstance();
BufferBuilder bufferBuilder_1 = tessellator_1.getBuffer();
- bufferBuilder_1.begin(7, VertexFormats.POSITION_COLOR);
+
+ VertexFormat.DrawMode drawMode = VertexFormat.DrawMode.QUADS;
+ bufferBuilder_1.begin(drawMode, VertexFormats.POSITION_COLOR);
+
+// bufferBuilder_1.begin(7, VertexFormats.POSITION_COLOR);
bufferBuilder_1.vertex(x1, y1, 0).color(float_2, float_3, float_4, float_1).next();
bufferBuilder_1.vertex(x1, y2, 0).color(float_2, float_3, float_4, float_1).next();
bufferBuilder_1.vertex(x2, y2, 0).color(float_6, float_7, float_8, float_5).next();
@@ -86,7 +96,10 @@ public class RenderUtils {
BufferBuilder buffer = tessellator.getBuffer();
// Outline
- buffer.begin(3, VertexFormats.POSITION_COLOR);
+ VertexFormat.DrawMode drawMode = VertexFormat.DrawMode.QUADS;
+ buffer.begin(drawMode, VertexFormats.POSITION_COLOR);
+
+// buffer.begin(3, VertexFormats.POSITION_COLOR);
buffer.vertex(box.minX, box.minY, box.minZ).color(r, g, b, a).next();
buffer.vertex(box.minX, box.minY, box.maxZ).color(r, g, b, a).next();
buffer.vertex(box.maxX, box.minY, box.maxZ).color(r, g, b, a).next();
@@ -114,7 +127,11 @@ public class RenderUtils {
Tessellator tessellator = Tessellator.getInstance();
BufferBuilder buffer = tessellator.getBuffer();
- buffer.begin(3, VertexFormats.POSITION_COLOR);
+
+ VertexFormat.DrawMode drawMode = VertexFormat.DrawMode.QUADS;
+ buffer.begin(drawMode, VertexFormats.POSITION_COLOR);
+
+// buffer.begin(3, VertexFormats.POSITION_COLOR);
buffer.vertex(x1, y1, z1).color(r, g, b, 0.0F).next();
buffer.vertex(x1, y1, z1).color(r, g, b, 1.0F).next();
buffer.vertex(x2, y2, z2).color(r, g, b, 1.0F).next();
@@ -130,21 +147,26 @@ public class RenderUtils {
float blue = (float) (color & 255) / 255.0F;
final Tessellator tessellator = Tessellator.getInstance();
final BufferBuilder bufferbuilder = tessellator.getBuffer();
- GlStateManager.enableBlend();
- GlStateManager.disableTexture();
- GlStateManager.blendFuncSeparate(770, 771, 1, 0);
- bufferbuilder.begin(7, VertexFormats.POSITION_COLOR);
+ GlStateManager._enableBlend();
+ GlStateManager._disableTexture();
+ GlStateManager._blendFuncSeparate(770, 771, 1, 0);
+
+ VertexFormat.DrawMode drawMode = VertexFormat.DrawMode.QUADS;
+ bufferbuilder.begin(drawMode, VertexFormats.POSITION_COLOR);
+
+// bufferbuilder.begin(7, VertexFormats.POSITION_COLOR);
bufferbuilder.vertex(x, h, 0.0D).color(red, green, blue, alpha).next();
bufferbuilder.vertex(w, h, 0.0D).color(red, green, blue, alpha).next();
bufferbuilder.vertex(w, y, 0.0D).color(red, green, blue, alpha).next();
bufferbuilder.vertex(x, y, 0.0D).color(red, green, blue, alpha).next();
tessellator.draw();
- GlStateManager.enableTexture();
- GlStateManager.disableBlend();
+ GlStateManager._enableTexture();
+ GlStateManager._disableBlend();
}
public static void offsetRender() {
- Camera camera = BlockEntityRenderDispatcher.INSTANCE.camera;
+ //debg
+ Camera camera = MinecraftClient.getInstance().gameRenderer.getCamera();
Vec3d camPos = camera.getPos();
GL11.glRotated(MathHelper.wrapDegrees(camera.getPitch()), 1, 0, 0);
GL11.glRotated(MathHelper.wrapDegrees(camera.getYaw() + 180.0), 0, 1, 0);
@@ -177,7 +199,10 @@ public class RenderUtils {
final Tessellator tessellator = Tessellator.getInstance();
final BufferBuilder bufferbuilder = tessellator.getBuffer();
- bufferbuilder.begin(GL11.GL_TRIANGLE_FAN, VertexFormats.POSITION);
+ VertexFormat.DrawMode drawMode = VertexFormat.DrawMode.TRIANGLE_FAN;
+ bufferbuilder.begin(drawMode, VertexFormats.POSITION_COLOR);
+
+// bufferbuilder.begin(GL11.GL_TRIANGLE_FAN, VertexFormats.POSITION);
float alpha = (float) (color >> 24 & 255) / 255.0F;
float red = (float) (color >> 16 & 255) / 255.0F;
diff --git a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java
index a4c00499..6fca52a0 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/utils/RenderUtilsLiving.java
@@ -22,6 +22,7 @@ package me.xmrvizzy.skyblocker.utils;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.render.BufferBuilder;
import net.minecraft.client.render.Tessellator;
+import net.minecraft.client.render.VertexFormat;
import net.minecraft.client.render.VertexFormats;
import net.minecraft.client.render.model.json.ModelTransformation.Mode;
import net.minecraft.client.resource.language.I18n;
@@ -54,7 +55,11 @@ public class RenderUtilsLiving {
GL11.glDisable(GL11.GL_TEXTURE_2D);
Tessellator tessellator = Tessellator.getInstance();
BufferBuilder bufferbuilder = tessellator.getBuffer();
- bufferbuilder.begin(7, VertexFormats.POSITION_COLOR);
+
+ VertexFormat.DrawMode drawMode = VertexFormat.DrawMode.QUADS;
+ bufferbuilder.begin(drawMode, VertexFormats.POSITION_COLOR);
+
+// bufferbuilder.begin(7, VertexFormats.POSITION_COLOR);
float f = mc.options.getTextBackgroundOpacity(0.25F);
bufferbuilder.vertex(-i - 1, -1, 0.0D).color(red, green, blue, f).next();
bufferbuilder.vertex(-i - 1, 8, 0.0D).color(red, green, blue, f).next();
@@ -76,8 +81,7 @@ public class RenderUtilsLiving {
GL11.glTranslated(offX, offY, 0);
if (item.getItem() instanceof BlockItem) GL11.glRotatef(180F, 1F, 180F, 10F);
- mc.getItemRenderer().renderItem(new ItemStack(
- item.getItem()), Mode.GUI, 0, 0, new MatrixStack(), mc.getBufferBuilders().getEntityVertexConsumers());
+ mc.getItemRenderer().renderItem(new ItemStack(item.getItem()), Mode.GUI, 0, 0, new MatrixStack(), mc.getBufferBuilders().getEntityVertexConsumers(),42);
if (item.getItem() instanceof BlockItem) GL11.glRotatef(-180F, -1F, -180F, -10F);
GL11.glDisable(GL11.GL_LIGHTING);
@@ -118,8 +122,8 @@ public class RenderUtilsLiving {
RenderUtils.offsetRender();
GL11.glTranslated(x, y, z);
GL11.glNormal3f(0.0F, 1.0F, 0.0F);
- GL11.glRotatef(-mc.player.yaw, 0.0F, 1.0F, 0.0F);
- GL11.glRotatef(mc.player.pitch, 1.0F, 0.0F, 0.0F);
+ GL11.glRotatef(-mc.player.getYaw(), 0.0F, 1.0F, 0.0F);
+ GL11.glRotatef(mc.player.getPitch(), 1.0F, 0.0F, 0.0F);
//GL11.glDisable(GL11.GL_LIGHTING);
GL11.glDisable(GL11.GL_DEPTH_TEST);
diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json
index 590057a2..b716764b 100644
--- a/src/main/resources/assets/skyblocker/lang/en_us.json
+++ b/src/main/resources/assets/skyblocker/lang/en_us.json
@@ -15,6 +15,7 @@
"text.autoconfig.skyblocker.option.locations.dungeons.solveThreeWeirdos": "Solve Three Weirdos Puzzle",
"text.autoconfig.skyblocker.option.locations.dwarvenMines": "Dwarven Mines",
"text.autoconfig.skyblocker.option.locations.dwarvenMines.enableDrillFuel": "Enable Drill Fuel",
+ "text.autoconfig.skyblocker.option.locations.dwarvenMines.solveFetchur": "Solve Fetchur",
"text.autoconfig.skyblocker.option.locations.dwarvenMines.solvePuzzler": "Solve Puzzler Puzzle",
"text.autoconfig.skyblocker.category.messages": "Messages",
diff --git a/src/main/resources/fabric.mod.json b/src/main/resources/fabric.mod.json
index 53050b9e..fd452708 100644
--- a/src/main/resources/fabric.mod.json
+++ b/src/main/resources/fabric.mod.json
@@ -2,11 +2,13 @@
"schemaVersion": 1,
"id": "skyblocker",
"version": "${version}",
- "name": "Skyblocker",
+ "name": "Skyblocker LIAP",
"description": "Hypixel Skyblock Mod",
- "authors": ["xMrVizzy"],
+ "authors": ["xMrVizzy, d3dx9, LifeIsAParadox"],
"contact": {
- "homepage": "https://modrinth.com/mod/skyblocker"
+ "homepage": "https://modrinth.com/mod/skyblocker",
+ "sources": "https://github.com/LifeIsAParadox/Skyblocker",
+ "issues": "https://github.com/LifeIsAParadox/Skyblocker/issues"
},
"license": "CC0-1.0",
"icon": "assets/skyblocker/icon.png",
@@ -23,10 +25,12 @@
"skyblocker.mixins.json"
],
"depends": {
- "fabricloader": ">=0.7.4",
- "fabric": "*"
+ "fabricloader": ">=0.11.3",
+ "fabric": "*",
+ "cloth-config2": "*",
+ "minecraft": "1.17.x",
+ "java": ">=16"
},
"custom": {
- "modmenu:clientsideOnly": true
}
}
diff --git a/src/main/resources/skyblocker.mixins.json b/src/main/resources/skyblocker.mixins.json
index 4a7691a7..9664f9e4 100644
--- a/src/main/resources/skyblocker.mixins.json
+++ b/src/main/resources/skyblocker.mixins.json
@@ -1,15 +1,14 @@
{
"required": true,
"package": "me.xmrvizzy.skyblocker.mixin",
- "compatibilityLevel": "JAVA_8",
+ "compatibilityLevel": "JAVA_16",
"client": [
"ChatHudListenerMixin",
- "ChatScreenMixin",
"ClientPlayerEntityMixin",
"ClientPlayNetworkHandlerMixin",
"InGameHudMixin",
"ItemRendererMixin",
- "MinecraftClientMixin",
+ "MinecraftClientMixin"
],
"injectors": {