we only used them for collect_vec. I think its worth the "effort" to write Vec type annotations ourself and have one big crate with way too may features we don't need less
* WIP interactive blocks
* Added jukebox and crafting table
* Making feature more dynamic allowing every block action to be registered here
* Renamed interactive_block_manager to block_manager
* Simplifying register functions
* Added on placed
* Fix master merge
* Added pumpkin_block macro
* Removed junk
* Added the option to block placing in on_use_with_item
* Fixed inventory lock
* Adding on_broken and implementing it for the jukebox
* Fixed merge
Before only Clientbound Packet IDs where parsed from JSON, Now Serverbound Packet IDs are parsed from JSON as well. This makes porting to new minecraft version much easier
* Added CSoundEffect packet
* Added sound macro
added a macro that turns sound namespaces to the sounds id
* added CEntitySoundEffect
* updated id to i32
* Added sound effects to pvp
* Added sweeping and particles
* Added I-Frames to living entity
* Refactored combat
split up the combat handling into multiple functions and a new combat module
* use new packet macro
* updated json files
* fixed attacking
* use builtin clamp
* Update JSON Files to 1.21.2
* Update constants to 1.21.2
* Port c_login_success to 1.21.2
* Fix: damage type
* Overhaul Packet ID system
We now use Packet IDS from enums.
1. This is very very nice for seeing which Packets are already implemented and which not.
2. This lets us easly port to newer Minecraft version, In vanilla there are no Packet ids hardcoded, Packet IDs will be parsed from a enum like this
* Port all Packets to 1.20.2
* Update README badge to 1.20.2
* Change doc for the new packet id system