-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add data-driven shields #128
Comments
Is this still work in progress? |
Still brainstorming it. Currently we're more focused on updating the wiki page and ironing out bugs. |
The Speaking of the data-driven shields, my suggestion is to create a shield registry similar to how the vanilla biome registry works. The shield characteristics are described in JSON files ( We use Mixin to add a method ( |
Another way of doing this is to take advantage of the DataComponent system introduced in 1.21. We will consider all items in If a modded shield wants to have a different cooling downtime or enchantment value, the modder can add a newly-defined |
See my progress here: https://github.com/rikka0w0/Fabric-Shield-Lib/tree/experimental |
Yeah, makes sense! I wonder why we ddint do that in the first place lol.
We only use the proprietary tag in versions where the c: isnt available.
Yeah that's basically @StellarWind22 's initial plan with this. Would this just entail changing every check for "FabricShield" into a check for "c:shield"?
Yeah, sounds good!
Sorry, but I am not very familiar with DataCompnents yet (school hasn't given me time to look into them), but how would this change the item initialization process? Would devs still just do new fabricshielditem or would we have to change the process up?
Will check out after exams along with your PR #182! |
I LOVE the FabricShieldUtils.java you made! I still have to look at the rest of the repo, but I just wanted to check out the utils file after I saw it in your PR/ |
Allow items to be treated as shields by simply including them in the
#fabricshieldlib:shields
tag. Any shields registered this way will just use default settings(cooldown);The text was updated successfully, but these errors were encountered: