Fix Sugar Position In Hand
All checks were successful
CI / Build (AMD64) (push) Successful in 21m9s
CI / Build (ARM64) (push) Successful in 22m8s
CI / Build (ARMHF) (push) Successful in 12m24s
CI / Test (AMD64, Server) (push) Successful in 2m23s
CI / Build Example Mods (push) Successful in 1m44s
CI / Test (ARM64, Client) (push) Successful in 5m27s
CI / Test (AMD64, Client) (push) Successful in 6m10s
CI / Test (ARM64, Server) (push) Successful in 2m40s
CI / Test (ARMHF, Client) (push) Successful in 5m36s
CI / Test (ARMHF, Server) (push) Successful in 2m31s
CI / Release (push) Has been skipped

This commit is contained in:
TheBrokenRail 2024-11-03 20:04:19 -05:00
parent 9ae6cd17cf
commit a6dad72778
4 changed files with 14 additions and 1 deletions

View File

@ -51,6 +51,7 @@
* `Render Vignette` (Enabled By Default)
* `Increase Render Chunk Size` (Enabled By Default)
* `Proper Entity Shading` (Enabled By Default)
* `Fix Sugar Position In Hand` (Enabled By Default)
* Existing Functionality (All Enabled By Default)
* `Fix Screen Rendering When Hiding HUD`
* `Sanitize Usernames`

View File

@ -111,4 +111,5 @@ TRUE 3D Dropped Items
TRUE Render Entity Shadows
TRUE Render Vignette
TRUE Increase Render Chunk Size
TRUE Proper Entity Shading
TRUE Proper Entity Shading
TRUE Fix Sugar Position In Hand

View File

@ -442,6 +442,11 @@ static int Dimension_isValidSpawn_Level_getTopTile_injection(Level *self, int x,
return ret;
}
// Prevent Sugar From Being "handEquipped()"
static Item *Item_initItems_Item_handEquipped_injection(Item *self) {
return self;
}
// Init
void init_misc() {
// Sanitize Username
@ -592,6 +597,11 @@ void init_misc() {
overwrite_call((void *) 0xb198c, (void *) Dimension_isValidSpawn_Level_getTopTile_injection);
}
// Fix Sugar Rendering
if (feature_has("Fix Sugar Position In Hand", server_disabled)) {
overwrite_call((void *) 0x976f8, (void *) Item_initItems_Item_handEquipped_injection);
}
// Disable overwrite_calls() After Minecraft::init
misc_run_on_init([](__attribute__((unused)) Minecraft *minecraft) {
thunk_enabler = [](__attribute__((unused)) void *a, __attribute__((unused)) void *b) -> void * {

View File

@ -26,6 +26,7 @@ virtual-method std::string getDescriptionId(const ItemInstance *item_instance) =
virtual-method ItemInstance *getCraftingRemainingItem(ItemInstance *item_instance) = 0x84;
// Swing = 0, eating = 1, drinking = 2, bow = 4, anything else is nothing
virtual-method int getUseAnimation() = 0x94;
virtual-method Item *handEquipped() = 0x58;
property int id = 0x4;
property int max_damage = 0x8;