aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav
diff options
context:
space:
mode:
authorJulienraptor01 <julienraptor01@gmail.com>2023-03-17 23:29:45 +0100
committerGitHub <noreply@github.com>2023-03-17 23:29:45 +0100
commit32503b6d23ef83b4d388a78daf5b0165fe64ffb8 (patch)
tree2ee94b85d5aaa6bc2342b692201e4eadbf5ad4f8 /src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav
parent55ce581f51ccf26892c0d948a998cfa5bfabc968 (diff)
parent542e60cb90c4c0cdc932f3cfb3529ea33a2f2970 (diff)
downloadSkyblocker-32503b6d23ef83b4d388a78daf5b0165fe64ffb8.tar.gz
Skyblocker-32503b6d23ef83b4d388a78daf5b0165fe64ffb8.tar.bz2
Skyblocker-32503b6d23ef83b4d388a78daf5b0165fe64ffb8.zip
Merge pull request #3 from AzureAaron/1.19.3
Fixes to QuickNav, Recipe Book & Others
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNav.java27
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java44
2 files changed, 41 insertions, 30 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNav.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNav.java
index bcc57a00..62f8c34d 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNav.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNav.java
@@ -1,32 +1,33 @@
package me.xmrvizzy.skyblocker.skyblock.quicknav;
+import java.util.ArrayList;
+import java.util.List;
+
import com.mojang.brigadier.exceptions.CommandSyntaxException;
+
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.nbt.StringNbtReader;
-import java.util.ArrayList;
-import java.util.List;
-
public class QuickNav {
private static final String skyblockHubIconNbt = "{id:\"minecraft:player_head\",Count:1,tag:{SkullOwner:{Id:[I;-300151517,-631415889,-1193921967,-1821784279],Properties:{textures:[{Value:\"e3RleHR1cmVzOntTS0lOOnt1cmw6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZDdjYzY2ODc0MjNkMDU3MGQ1NTZhYzUzZTA2NzZjYjU2M2JiZGQ5NzE3Y2Q4MjY5YmRlYmVkNmY2ZDRlN2JmOCJ9fX0=\"}]}}}}";
private static final String dungeonHubIconNbt = "{id:\"minecraft:player_head\",Count:1,tag:{SkullOwner:{Id:[I;1605800870,415127827,-1236127084,15358548],Properties:{textures:[{Value:\"e3RleHR1cmVzOntTS0lOOnt1cmw6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNzg5MWQ1YjI3M2ZmMGJjNTBjOTYwYjJjZDg2ZWVmMWM0MGExYjk0MDMyYWU3MWU3NTQ3NWE1NjhhODI1NzQyMSJ9fX0=\"}]}}}}";
public static List<QuickNavButton> init(String screenTitle) {
List<QuickNavButton> buttons = new ArrayList<>();
try {
- buttons.add(new QuickNavButton(0, screenTitle.contains("Your Skills"), "/skills", new ItemStack(Items.DIAMOND_SWORD)));
- buttons.add(new QuickNavButton(1, screenTitle.contains("Collection"), "/collection", new ItemStack(Items.PAINTING)));
+ buttons.add(new QuickNavButton(0, screenTitle.contains("Your Skills"), "skills", new ItemStack(Items.DIAMOND_SWORD)));
+ buttons.add(new QuickNavButton(1, screenTitle.contains("Collection"), "collection", new ItemStack(Items.PAINTING)));
- buttons.add(new QuickNavButton(3, screenTitle.contains("Pets"), "/pets", new ItemStack(Items.BONE)));
- buttons.add(new QuickNavButton(4, screenTitle.contains("Wardrobe"), "/wardrobe", ItemStack.fromNbt(StringNbtReader.parse("{id:\"minecraft:leather_chestplate\", Count:1, tag:{display:{color:8991416}}}"))));
- buttons.add(new QuickNavButton(5, screenTitle.contains("Storage"), "/storage", new ItemStack(Items.ENDER_CHEST)));
+ buttons.add(new QuickNavButton(3, screenTitle.contains("Pets"), "pets", new ItemStack(Items.BONE)));
+ buttons.add(new QuickNavButton(4, screenTitle.contains("Wardrobe"), "wardrobe", ItemStack.fromNbt(StringNbtReader.parse("{id:\"minecraft:leather_chestplate\", Count:1, tag:{display:{color:8991416}}}"))));
+ buttons.add(new QuickNavButton(5, screenTitle.contains("Storage"), "storage", new ItemStack(Items.ENDER_CHEST)));
- buttons.add(new QuickNavButton(6, false, "/warp hub", ItemStack.fromNbt(StringNbtReader.parse(skyblockHubIconNbt))));
- buttons.add(new QuickNavButton(7, false, "/warp dungeon_hub", ItemStack.fromNbt(StringNbtReader.parse(dungeonHubIconNbt))));
+ buttons.add(new QuickNavButton(6, false, "warp hub", ItemStack.fromNbt(StringNbtReader.parse(skyblockHubIconNbt))));
+ buttons.add(new QuickNavButton(7, false, "warp dungeon_hub", ItemStack.fromNbt(StringNbtReader.parse(dungeonHubIconNbt))));
- buttons.add(new QuickNavButton(9, screenTitle.contains("Enchant Item"), "/etable", new ItemStack(Items.ENCHANTING_TABLE)));
- buttons.add(new QuickNavButton(10, screenTitle.contains("Anvil"), "/anvil", new ItemStack(Items.ANVIL)));
- buttons.add(new QuickNavButton(11, screenTitle.contains("Craft Item"), "/craft", new ItemStack(Items.CRAFTING_TABLE)));
+ buttons.add(new QuickNavButton(9, screenTitle.contains("Enchant Item"), "etable", new ItemStack(Items.ENCHANTING_TABLE)));
+ buttons.add(new QuickNavButton(10, screenTitle.contains("Anvil"), "anvil", new ItemStack(Items.ANVIL)));
+ buttons.add(new QuickNavButton(11, screenTitle.contains("Craft Item"), "craft", new ItemStack(Items.CRAFTING_TABLE)));
} catch (CommandSyntaxException e) {
e.printStackTrace();
}
diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java
index d977a400..e1ac3c5f 100644
--- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java
+++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/quicknav/QuickNavButton.java
@@ -1,6 +1,7 @@
package me.xmrvizzy.skyblocker.skyblock.quicknav;
import com.mojang.blaze3d.systems.RenderSystem;
+
import me.xmrvizzy.skyblocker.mixin.HandledScreenAccessor;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
@@ -11,7 +12,6 @@ import net.minecraft.client.gui.screen.narration.NarrationMessageBuilder;
import net.minecraft.client.gui.widget.ClickableWidget;
import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.item.ItemStack;
-import net.minecraft.text.LiteralTextContent;
import net.minecraft.text.Text;
import net.minecraft.util.Identifier;
@@ -20,11 +20,6 @@ public class QuickNavButton extends ClickableWidget {
private static final MinecraftClient CLIENT = MinecraftClient.getInstance();
private static final Identifier BUTTON_TEXTURE = new Identifier("textures/gui/container/creative_inventory/tabs.png");
- @Override
- public void appendNarrations(NarrationMessageBuilder builder) {
-
- }
-
private int index;
private boolean toggled;
private int u;
@@ -33,7 +28,7 @@ public class QuickNavButton extends ClickableWidget {
private final ItemStack icon;
public QuickNavButton(int index, boolean toggled, String command, ItemStack icon) {
- super(0, 0, 28, 32, Text.empty());
+ super(0, 0, 26, 32, Text.empty());
this.index = index;
this.toggled = toggled;
this.command = command;
@@ -50,10 +45,10 @@ public class QuickNavButton extends ClickableWidget {
int h = ((HandledScreenAccessor)handledScreen).getBackgroundHeight();
if (h > 166) --h; // why is this even a thing
// this.x = x + this.index % 6 * 28 + 4;
- this.setX(x + this.index % 6 * 28 + 4);
+ this.setX(x + this.index % 6 * 26 + 4);
// this.y = this.index < 6 ? y - 28 : y + h - 4;
- this.setY(this.index < 6 ? y - 28 : y + h - 4);
- this.u = 28;
+ this.setY(this.index < 6 ? y - 26 : y + h - 4);
+ this.u = 26;
this.v = (index < 6 ? 0 : 64) + (toggled ? 32 : 0);
}
}
@@ -62,8 +57,7 @@ public class QuickNavButton extends ClickableWidget {
public void onClick(double mouseX, double mouseY) {
if (!this.toggled) {
this.toggled = true;
- // CLIENT.player.sendChatMessage(command, Text.of(command));
- CLIENT.player.sendMessage(Text.of(command));
+ CLIENT.player.networkHandler.sendCommand(command.replace("/", ""));
// TODO : add null check with log error
}
}
@@ -75,6 +69,9 @@ public class QuickNavButton extends ClickableWidget {
RenderSystem.disableDepthTest();
// render button background
if (!this.toggled) {
+ //Move buttons 1 pixel up if they aren't selected
+ matrices.push();
+ matrices.translate(0f, -1f, 0f);
if (this.index >= 6)
// this.drawTexture(matrices, this.x, this.y + 4, this.u, this.v + 4, this.width, this.height - 4);
this.drawTexture(matrices, this.getX(), this.getY() + 4, this.u, this.v + 4, this.width, this.height - 4);
@@ -82,23 +79,36 @@ public class QuickNavButton extends ClickableWidget {
// this.drawTexture(matrices, this.x, this.y, this.u, this.v, this.width, this.height - 4);
this.drawTexture(matrices, this.getX(), this.getY(), this.u, this.v, this.width, this.height - 4);
// } else this.drawTexture(matrices, this.x, this.y, this.u, this.v, this.width, this.height);
- } else this.drawTexture(matrices, this.getX(), this.getY(), this.u, this.v, this.width, this.height);
+ matrices.pop();
+ } else {
+ matrices.push();
+ //Move the top buttons 2 pixels up if they're selected
+ if (this.index < 6) matrices.translate(0f, -2f, 0f);
+ this.drawTexture(matrices, this.getX(), this.getY(), this.u, this.v, this.width, this.height);
+ matrices.pop();
+ }
// render button icon
if (!this.toggled) {
if (this.index >= 6)
// CLIENT.getItemRenderer().renderInGui(this.icon,this.x + 6, this.y + 6);
- CLIENT.getItemRenderer().renderInGui(this.icon,this.getX() + 6, this.getY() + 6);
+ CLIENT.getItemRenderer().renderInGui(this.icon,this.getX() + 5, this.getY() + 5);
else
// CLIENT.getItemRenderer().renderInGui(this.icon,this.x + 6, this.y + 9);
- CLIENT.getItemRenderer().renderInGui(this.icon,this.getX() + 6, this.getY() + 9);
+ CLIENT.getItemRenderer().renderInGui(this.icon,this.getX() + 5, this.getY() + 8);
} else {
if (this.index >= 6)
// CLIENT.getItemRenderer().renderInGui(this.icon,this.x + 6, this.y + 9);
- CLIENT.getItemRenderer().renderInGui(this.icon,this.getX() + 6, this.getY() + 9);
+ CLIENT.getItemRenderer().renderInGui(this.icon,this.getX() + 5, this.getY() + 8);
else
// CLIENT.getItemRenderer().renderInGui(this.icon,this.x + 6, this.y + 6);
- CLIENT.getItemRenderer().renderInGui(this.icon,this.getX() + 6, this.getY() + 6);
+ CLIENT.getItemRenderer().renderInGui(this.icon,this.getX() + 5, this.getY() + 5);
}
RenderSystem.enableDepthTest();
}
+
+ @Override
+ protected void appendClickableNarrations(NarrationMessageBuilder builder) {
+ // TODO Auto-generated method stub
+
+ }
}