From 67a0d3017b2da65021b7f4d9cf2124e8a05ba84c Mon Sep 17 00:00:00 2001 From: TheBrokenRail Date: Sun, 7 Jan 2024 04:57:16 -0500 Subject: [PATCH] Fix Furnace Visual Bug --- mods/src/misc/misc.c | 17 +++++++++++++++++ symbols/src/FurnaceTileEntity.def | 1 + 2 files changed, 18 insertions(+) diff --git a/mods/src/misc/misc.c b/mods/src/misc/misc.c index cf6bec3..4dc9cc2 100644 --- a/mods/src/misc/misc.c +++ b/mods/src/misc/misc.c @@ -517,6 +517,20 @@ static void glColor4f_injection(__attribute__((unused)) GLfloat red, __attribute } #endif +// Fix Furnace Visual Bug +static int FurnaceTileEntity_getLitProgress_injection(FurnaceTileEntity *furnace, int max) { + // Call Original Method + int ret = FurnaceTileEntity_getLitProgress(furnace, max); + + // Fix Bug + if (ret > max) { + ret = max; + } + + // Return + return ret; +} + // Init static void nop() { } @@ -694,6 +708,9 @@ void init_misc() { } #endif + // Fix Furnace Visual Bug + overwrite_calls((void *) FurnaceTileEntity_getLitProgress, (void *) FurnaceTileEntity_getLitProgress_injection); + // Init C++ And Logging _init_misc_cpp(); _init_misc_logging(); diff --git a/symbols/src/FurnaceTileEntity.def b/symbols/src/FurnaceTileEntity.def index 56390bc..4c36be4 100644 --- a/symbols/src/FurnaceTileEntity.def +++ b/symbols/src/FurnaceTileEntity.def @@ -2,3 +2,4 @@ extends TileEntity; virtual-method ItemInstance *getItem(int slot) = 0x2c; static-method int getBurnDuration(ItemInstance *item_instance) = 0xd33f8; +method int getLitProgress(int max) = 0xd3240;