RedWire's Plugin is a thing that I've been using mostly to help with my own mod-making experience. Hopefully, some of the additions from this plugin will be useful to other people :)
Supported plugin versions:
Forge 1.19.2, Forge 1.19.4, Forge 1.20.1, NeoForge 1.20.4, NeoForge 1.20.6, NeoForge 1.21.1, NeoForge 1.21.4, NeoForge 1.21.8
For info on most procedures and other stuff, check this file
Changelog
for the full list of changes, check this file
v6.2.2
Added (value = Dist.CLIENT) to the @EventBusSubscriber of "Client tick update" to prevent dedicated server crashes (teehee woopsies)
v6.2.1
The world dependency for "Client tick update" global trigger now uses Minecraft.level instead of Minecraft.player.level()Added some automatic null-checks if a procedure using the "Client tick update" global trigger requires the "world" dependency or "x, y, z" (which null-checks Minecraft.player)
v6.2.0
Set all util methods for 1.21.4< procedures to "private static" (not that it really matters procedure-wise anyway)Added global trigger "Client tick update". This is *not* the same as "doing something on player tick but client-only", as this event can fire each tick even if target entity or world is null. (With that being said, null-checks are highly recommended to avoid crashing). Personally, I added this for my C2S packets.
v6.1.2
Added a method override for "isCancelable" for the Forge version of PlaceholderEvent to actually allow event "canceling"
v6.1.1
Added client-side indicator to "Is [entity] moving" procedure (curse you deltamovement *shakes fist at air*)Added client-side indicator to "Are overlays hidden" (This one probably should have been more obvious, but still)
Comments
get key that keybind don't work, and how u think is need work? is need if pressed- return true, and equals to questions, if get key that keybind "Attack/Destroy (u is write what is a not "a,b,c, lmb or something)" = true
then return procedure
ITS NEED
if get key that keybind "Attack/Destroy" is assigned to = true
true = execute command "say 1" in the name of Event/Target entity
false - ignore procedure
what u do - idk, but its not work, and is a very nice reason to fix plugin, or pls write TRUE instruction
if you know how to use basic code for code blocks, the thing to get invulnerablity time is "entity.invulnerableTime"
so if you wanna grab that value, you can use "Set number [variable name] to" and put "entity.invulnerableTime" with a code snippet
to change it, use the other custom code snippet. for example if I wanna change it to 0 to make an entity able to be hurt again, simply do "entity.invulnerableTime = 0;"
Oh sorry, I said something stupid, I realized there was no longer support for 1.20.1. I'm glad you backtracked on that decision, 1.20.1 is still widely used.