From 180aad05decc7eefa87e4e45d6747c48f40e5361 Mon Sep 17 00:00:00 2001 From: Tyler Murphy Date: Mon, 17 Apr 2023 12:12:01 -0400 Subject: save --- .../net/tylermurphy/Minecraft/UI/UIMaster.java | 65 ++++++++++++++++++++++ 1 file changed, 65 insertions(+) create mode 100755 src/main/java/net/tylermurphy/Minecraft/UI/UIMaster.java (limited to 'src/main/java/net/tylermurphy/Minecraft/UI/UIMaster.java') diff --git a/src/main/java/net/tylermurphy/Minecraft/UI/UIMaster.java b/src/main/java/net/tylermurphy/Minecraft/UI/UIMaster.java new file mode 100755 index 0000000..8709aab --- /dev/null +++ b/src/main/java/net/tylermurphy/Minecraft/UI/UIMaster.java @@ -0,0 +1,65 @@ +package net.tylermurphy.Minecraft.UI; + +import java.util.ArrayList; +import java.util.List; + +import net.tylermurphy.Minecraft.Render.FontRenderer; +import net.tylermurphy.Minecraft.Render.GuiRenderer; +import net.tylermurphy.Minecraft.UI.Text.TextMaster; + +public class UIMaster { + + private static List uis = new ArrayList(); + private static int bindedID = 0; + protected static List componentBatch = new ArrayList(); + + public static void createUI(int id) { + uis.add(id,new UI()); + bindedID = id; + } + + private static UI getUI() { + return uis.get(bindedID); + } + + public static void add(UIComponent... components) { + for(UIComponent component : components) { + getUI().add(component); + } + } + + public static UIImage getImage(String key) { + return (UIImage) getUI().findKey(key); + } + + public static UIText getText(String key) { + return (UIText) getUI().findKey(key); + } + + public static void bindUI(int id) { + bindedID = id; + } + + public static void setEnabled(boolean value) { + getUI().enabled = value; + } + + public static boolean isEnabled() { + return getUI().enabled; + } + + public static void renderUI(GuiRenderer renderer, FontRenderer fontrenderer) { + for(UI ui : uis) { + if(!ui.enabled) continue; + ui.prepare(); + } + try{ + UILayerQuickSort.quickSort(componentBatch, 0, componentBatch.size()-1); + } catch (Exception ignore) {} + renderer.render(componentBatch); + TextMaster.render(componentBatch,fontrenderer); + componentBatch.clear(); + } + +} + -- cgit v1.2.3-freya