valence/crates
Ryan Johnson 4cf6e1a207
Entity Rework (#294)
## Description

Closes #269
Closes #199 

- Removes `McEntity` and replaces it with bundles of components, one for
each entity type.
- Tracked data types are now separate components rather than stuffing
everything into a `TrackedData` enum.
- Tracked data is now cached in binary form within each entity,
eliminating some work when entities enter the view of clients.
- Complete redesign of entity code generator.
- More docs for some components.
- Field bits are moved out of the entity extractor and into the valence
entity module.
- Moved hitbox code to separate module.
- Refactor instance update systems to improve parallelism.

### TODOs
- [x] Update examples.
- [x] Update `default_event_handler`.
- [x] Fix bugs.

## Test Plan

Steps:
1. Check out the entity module docs with `cargo d --open`.
2. Run examples.
2023-03-21 23:29:38 -07:00
..
packet_inspector Packet inspector updates (#283) 2023-03-10 03:57:55 -08:00
playground Entity Rework (#294) 2023-03-21 23:29:38 -07:00
valence Entity Rework (#294) 2023-03-21 23:29:38 -07:00
valence_anvil Entity Rework (#294) 2023-03-21 23:29:38 -07:00
valence_nbt Refactor valence_protocol (#253) 2023-02-23 22:16:22 -08:00
valence_protocol Entity Rework (#294) 2023-03-21 23:29:38 -07:00
valence_protocol_macros Add packet_name (#274) 2023-03-07 04:12:08 -08:00
valence_spatial_index Reorganize Packages (#180) 2022-12-29 16:51:05 -08:00
valence_stresser Entity Rework (#294) 2023-03-21 23:29:38 -07:00