Closed MetaflameDragon closed 1 year ago
I think I managed to zero in on the issue: My best guess is the usage of allMatch()
. The Fabric patch used noneMatch()
, which returns true for an empty stream - however, allMatch()
in the Forge patch also returns true for an empty stream. This means that if the player does not have any powers that modify equipped item rendering (apugli:modify_equipped_item_render
) for the chest slot, the return value will be set to false and the elytra will not render.
I applied a quick dummy test power onto the player, which tries to render air on the player's chest without overriding, and the Elytra began rendering.
{
"name": "Test power",
"type": "apugli:modify_equipped_item_render",
"slot": "chest",
"stack": {
"item": "minecraft:air"
}
}
Thanks for looking into this, I'll probably separate the classes into loader specifics when I can.
I'll fix this at some point.
It's luckily non-critical because it has a hacky fix. If I find some spare time, I might drop a PR (once I learn how to set up a local Forge modding environment).
I've implemented a fix for next update, thanks for explaining the issue to me so thoroughly.
Wonderful! Also, thank you for maintaining Origins Forge and this useful Apoli extension!
Elytra equipped on the player isn't being rendered (as well as on armor stands). I have no special origins or powers active (that is, I have the origins:human origin selected).
MC Version: 1.19.2 Forge
This occurs in the latest version (2.5.1), but I traced the behavior back to 2.4.4. Apugli 2.4.3 renders the Elytra correctly.
This happens even with no unrelated mods installed. My installation consists of Apugli, Caelus 1.19.2-3.0.0.6, and Origins Forge 1.19.2-1.7.1.2.
As a wild guess, this could possibly be related to #40 and the related fix in https://github.com/MerchantPug/apugli/commit/e88be8117248ec59b659477bf4bd07fd770254e5? Funny how that version specifically fixed Fabric but broke Forge.