aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de/hysky/skyblocker/skyblock/events/JacobEventToast.java
diff options
context:
space:
mode:
authorvicisacat <victor.branchu@gmail.com>2024-04-21 23:16:20 +0200
committerviciscat <51047087+viciscat@users.noreply.github.com>2024-06-02 13:26:45 +0200
commit2617ae503efa5b13b84c8fd5530f219ebf28d427 (patch)
tree37435dd763524207a7ada00ce90607fe6840e326 /src/main/java/de/hysky/skyblocker/skyblock/events/JacobEventToast.java
parentcc4823e3646573d052ea36fef1ce6d9f9e9b90fd (diff)
downloadSkyblocker-2617ae503efa5b13b84c8fd5530f219ebf28d427.tar.gz
Skyblocker-2617ae503efa5b13b84c8fd5530f219ebf28d427.tar.bz2
Skyblocker-2617ae503efa5b13b84c8fd5530f219ebf28d427.zip
working notifications, probably
I ain't waiting 50 hours waiting for notifications
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/skyblock/events/JacobEventToast.java')
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/events/JacobEventToast.java71
1 files changed, 71 insertions, 0 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/events/JacobEventToast.java b/src/main/java/de/hysky/skyblocker/skyblock/events/JacobEventToast.java
new file mode 100644
index 00000000..4f9c3fd7
--- /dev/null
+++ b/src/main/java/de/hysky/skyblocker/skyblock/events/JacobEventToast.java
@@ -0,0 +1,71 @@
+package de.hysky.skyblocker.skyblock.events;
+
+import com.mojang.blaze3d.platform.GlStateManager;
+import net.minecraft.client.font.TextRenderer;
+import net.minecraft.client.gui.DrawContext;
+import net.minecraft.client.toast.ToastManager;
+import net.minecraft.item.ItemStack;
+import net.minecraft.item.Items;
+import net.minecraft.util.Colors;
+import net.minecraft.util.math.MathHelper;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class JacobEventToast extends EventToast{
+
+ private final String[] crops;
+
+ private static final Map<String, ItemStack> cropItems = new HashMap<>();
+
+ static {
+ cropItems.put("Wheat", new ItemStack(Items.WHEAT));
+ cropItems.put("Mushroom", new ItemStack(Items.RED_MUSHROOM));
+ cropItems.put("Pumpkin", new ItemStack(Items.CARVED_PUMPKIN));
+ cropItems.put("Melon", new ItemStack(Items.MELON));
+ cropItems.put("Sugar Cane", new ItemStack(Items.SUGAR_CANE));
+ cropItems.put("Cactus", new ItemStack(Items.CACTUS));
+ cropItems.put("Carrot", new ItemStack(Items.CARROT));
+ cropItems.put("Cocoa Beans", new ItemStack(Items.COCOA_BEANS));
+ cropItems.put("Potato", new ItemStack(Items.POTATO));
+ cropItems.put("Nether Wart", new ItemStack(Items.NETHER_WART));
+ }
+
+ public JacobEventToast(long eventStartTime, String name, String[] crops) {
+ super(eventStartTime, name, new ItemStack(Items.IRON_HOE));
+ this.crops = crops;
+ }
+
+ @Override
+ public Visibility draw(DrawContext context, ToastManager manager, long startTime) {
+ context.drawGuiTexture(TEXTURE, 0, 0, getWidth(), getHeight());
+
+ int y = 7;
+ TextRenderer textRenderer = manager.getClient().textRenderer;
+ if (startTime < 3_000){
+ int k = MathHelper.floor(MathHelper.clamp((3_000 - startTime) / 200.0f, 0.0f, 1.0f) * 255.0f) << 24 | 0x4000000;
+ y = 2 + drawMessage(context, 30, y, 0xFFFFFF | k);
+ } else {
+ int k = (~MathHelper.floor(MathHelper.clamp((startTime - 3_000) / 200.0f, 0.0f, 1.0f) * 255.0f)) << 24 | 0x4000000;
+
+
+ String s = "Crops:";
+ int x = 30 + textRenderer.getWidth(s) + 4;
+ context.drawText(textRenderer, s, 30, 7 + (16 - textRenderer.fontHeight)/2, Colors.WHITE, false);
+ for (int i = 0; i < crops.length; i++) {
+ context.drawItem(cropItems.get(crops[i]), x + i * (16 + 8), 7);
+ }
+ context.fill(30, 6, 30 + messageWidth, 22, 400, 0x212121 | k);
+ y += textRenderer.fontHeight * message.size();
+ }
+ drawTimer(context, 30, y);
+
+ context.drawItemWithoutEntity(icon, 8, getHeight()/2 - 8);
+ return startTime > 5_000 ? Visibility.HIDE: Visibility.SHOW;
+ }
+
+ @Override
+ public int getHeight() {
+ return Math.max(super.getHeight(), 32);
+ }
+}