Initial work on establishing state-based character movement.
Jumping now works with the character state system.
Implemented client<->server character movement and delayed character interpolation.
Added the ability to have finegrained control over field replication by having components implement ReplicationCheck
Removed EventHandlerSystem, all ComponentSystems now eligable for events.
Renamed RegisterComponentSystem to RegisterSystem
Added Share annotation to publish a system through the CoreRegistry
- Added lag compensation support for server events. This causes the server to rewind character positions to the time of the event when it is received before enacting it.
- Timer should now be thread safe
- Some cleanup
- Implemented input overflow and underflow handling.
Set event fields to replicated by default, with a NoReplicate annotation to prevent them being sent
Added a skipInstigator option to Broadcast events, to send them to everyone except the instigator (useful where the event is simulated client-side)
Fixed issues with sending events to blocks.
Moved look pitch and yaw to CharacterComponent and added pitch to input. This means that they don't need to be sent with events.
Simplified AttackRequestEvent.
Network enabled block damage.
Added a prefab for block particles.