Cheos137 / ArmorpointsPlusplus

A light-weight mod overhauling vanilla ui components
https://modrinth.com/mod/armorpoints
MIT License
2 stars 2 forks source link

[1.12.2] Support for Potion Core's 'Resist' & 'Magic Shield' + other. #11

Closed SonicX8000 closed 2 years ago

SonicX8000 commented 3 years ago

I wonder if support could be added by allowing some hud stuff for Potion Core's Damage Resist & Magic Shielding.

Resist is an attribute that reduces overall damage. Potion Core by default draws a red border around the armor if the hud option is enabled.

Magic Shielding reduces magic-like damage. Potion Core by default draws a enchantment-like overlay over the armor if the hud option is enabled.

A screenshot of the overlays and their meaning...

Aqua Border: Toughness

Purple Enchantment Overlay: Magic Shielding

Red Border: Resist (Can be from the Resist Potion Effect or Potion Core's Resist attribute, these are two different types of damage reduction so these shouldn't be mixed together if you're adding in a overlay for Potion Resist)

=====

Now... for your mod... I think Toughness Shields aren't colored if you go above 20 which can be done if using certain mods that can affect the player's toughness. I was also wondering if overlays can be done in a way like this...

This image is what my current hud looks like with a bunch of mods added.

I have overloaded armor bar, as well as toughness bar which allows colored bars, but it lacks a number. Scaling Health adds in it's custom heart & absorb texture although it has an option to disable it if you wanted. Scaling Feast affects the hunger bar and finally, Elenei Dodge 2 for the feather bar, which is for dodging.

If this can be done... I wonder if...

Absorb being it's own bar like in the above image, with the colored hearts or showing small resized hearts much like how you have the Armor Icon & Toughness Icons on there.

Toughness being it's own bar like in the above image. Magic Shielding from Potion Core could be put here since... well... shield icons and that it's a magic 'shield'. Potion Core Resist Overlay could be applied on the toughness bar since vanilla resist is already on the armor bar.

Armor Bar having the Protection Overlay as well as the Resist overlay, which is what you have it at currently.

I think that might be it for the suggestion.

=====

Tossing a conflict report here, but the health hud gets overwritten by Mantle's Heart & Absorb overlays. Mantle doesn't have an option to disable it's own rendering and I dunno if they still do updates to 1.12.

Cheos137 commented 3 years ago

I can definitely add support for PotionCore's Toughness, Magic Shield and Resist - that shouldn't prove too much of a problem. I'll probably put them on a separate third bar to not clutter the armor bar which has already three overlays (protection, resistance, armor toughness).

Adding an option for absorption hearts to be on their own bar won't prove problematic too - i'd implement that by showing the first 20 absorption hp like vanilla does and then - like you suggested - putting colored hearts on top like i do it with the armor toughness icons.

I could implement a separate (toggleable, like the absorption bar above) armor toughness bar, though that would need a bunch of new icons in my texture atlas (i do not recolor my icons live, in-game as i think that by just adding a color overlay it doesn't look as good) which i do have enough space for (without resizing the texture atlas). I'll still be thinking more about this one... In the meantime - Appp is compatible with toughness bar, so you can just disable the toughness icons of appp in it's config (if you want)

The thing with mantle really bugs me, someone else already said something about it's 1.16 version and then found a config option there. Sadly though, as you said, mantle 1.12 doesn't seem to have this config option, too. Maybe i can fix this by removing mantle's eventlistener for the RenderGameOverlayEvent - just theorizing, though.

Cheos137 commented 3 years ago

Quick update: i'm probably not gonna get this done in august because i'm currently really low on free time - maybe mid september? We'll see.

Cheos137 commented 2 years ago

included with 3.0.0-alpha7