diff options
| author | daoge_cmd <3523206925@qq.com> | 2026-03-01 12:16:08 +0800 |
|---|---|---|
| committer | daoge_cmd <3523206925@qq.com> | 2026-03-01 12:16:08 +0800 |
| commit | b691c43c44ff180d10e7d4a9afc83b98551ff586 (patch) | |
| tree | 3e9849222cbc6ba49f2f1fc6e5fe7179632c7390 /Minecraft.Client/Gui.h | |
| parent | def8cb415354ac390b7e89052a50605285f1aca9 (diff) | |
Initial commit
Diffstat (limited to 'Minecraft.Client/Gui.h')
| -rw-r--r-- | Minecraft.Client/Gui.h | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/Minecraft.Client/Gui.h b/Minecraft.Client/Gui.h new file mode 100644 index 00000000..41762016 --- /dev/null +++ b/Minecraft.Client/Gui.h @@ -0,0 +1,68 @@ +#pragma once +#include "GuiComponent.h" +#include "GuiMessage.h" +class Random; +class Minecraft; +class ItemRenderer; + +class Gui : public GuiComponent +{ +private: + // 4J-PB - this doesn't account for the safe zone, and the indent applied to messages + //static const int MAX_MESSAGE_WIDTH = 320; + static const int m_iMaxMessageWidth = 280; + static ItemRenderer *itemRenderer; + vector<GuiMessage> guiMessages[XUSER_MAX_COUNT]; + Random *random; + + Minecraft *minecraft; +public: + wstring selectedName; +private: + int tickCount; + wstring overlayMessageString; + int overlayMessageTime; + bool animateOverlayMessageColor; + + // 4J Added + float lastTickA; + float fAlphaIncrementPerCent; +public: + static float currentGuiBlendFactor; // 4J added + static float currentGuiScaleFactor; // 4J added + + float progress; + +// private DecimalFormat df = new DecimalFormat("##.00"); + +public: + Gui(Minecraft *minecraft); + + void render(float a, bool mouseFree, int xMouse, int yMouse); + float tbr; + +private: + //void renderBossHealth(void); + void renderPumpkin(int w, int h); + void renderVignette(float br, int w, int h); + void renderTp(float br, int w, int h); + void renderSlot(int slot, int x, int y, float a); +public: + void tick(); + void clearMessages(int iPad=-1); + void addMessage(const wstring& string, int iPad,bool bIsDeathMessage=false); + void setNowPlaying(const wstring& string); + void displayClientMessage(int messageId, int iPad); + + // 4J Added + DWORD getMessagesCount(int iPad) { return (int)guiMessages[iPad].size(); } + wstring getMessage(int iPad, DWORD index) { return guiMessages[iPad].at(index).string; } + float getOpacity(int iPad, DWORD index); + + wstring getJukeboxMessage(int iPad) { return overlayMessageString; } + float getJukeboxOpacity(int iPad); + + // 4J Added + void renderGraph(int dataLength, int dataPos, __int64 *dataA, float dataAScale, int dataAWarning, __int64 *dataB, float dataBScale, int dataBWarning); + void renderStackedGraph(int dataPos, int dataLength, int dataSources, __int64 (*func)(unsigned int dataPos, unsigned int dataSource) ); +}; |
