Fabric Shield Lib

Fabric Shield Lib

3M Downloads

(Unsure) Disabling a fabric shield causes vanilla shields, but not other fabric shields, to become disabled.

CringeStar opened this issue ยท 11 comments

commented

Whenever a fabric shield gets disabled, all vanilla shields and that type of fabric shield (banner/non-banner) in the inventory are disabled. Now I don't know whether this is fine, or if it should be fixed by either making vanilla shields not disable or by making all shields disable when one gets disabled.

commented

I have found that making the PlayerEntityMixin cancellable seems to stop this behavior, and seems to cause no issues.

commented

I will make a PR for a fix for this once I get home. Then I feel confident that 1.6.1 will be ready for release.

commented

I remember trying to work on this issue once myself and hitting a wall so I don't remember what exactly made it seem "unsolvable", but yeah this is a longstanding issue that would be really nice to not have lol. I think it was I couldn't decide if having one shield be disabled should disable all others & was thinking about making that configurable on a per-shield basis but that's kinda dumb so we should probably just make the behavior completely consistent and then just include a config option.

commented

also I guess I'd call the option "Global shield disabling" I'm mainly writing this here as notes for if I decide fix it myself or just wait for CringeStar to.

commented

The solution I've found makes shields only diasble their own kinds of shields, like vanilla only disables vanilla, fabric banner disables fabric banner, and fabric disables fabric.

commented

Not sure how to make it so every type of shield is disabled, would have to dig into that.

commented

Also I have no experience with adding config options so if you want it like that, then you should do that part.

commented

ok yeah I think that's the Issue I had so maybe we should just go with each shield disables that specific shield. That adds in the possibility of it being exploited but like sitting there switching between a bunch of different shields just to "exploit" a single enemy that can disable shields seems a bit dumb.

commented

Yeah, that exploit will be possible, but at least you'll need many unique shields, so it won't be too easy

commented

Not sure how to make it so every type of shield is disabled, would have to dig into that.

Fabric will have a c:shields tag soon (see FabricMC/fabric#2727), so that might help a tiny bit

commented

Fabric will have a c:shields tag soon (see FabricMC/fabric#2727), so that might help a tiny bit

That's good to know! I will try to add a universal disable once that comes out.