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.
Implemented some initial physics synchronization from server to client.
Fixed events sent before initial replication of their target.
Added toggleMute command to turn sound on and off to allow multiplayer sound testing
Added base MessageEvent type
Added events for propagating sounds
Added support for event handlers not tied to any components
Removed use of Vector3d from SoundSystem
Did some work on the audio system to fix issues with positional sounds.
Added volume config (not hooked to UI)
Added ability to disable sound in config (doesn't load openal at all)
Added Direction enum to clarify directions used by camera.
Fixed setting received items to be owned by the player.
UseItem (specifically block placement) now works in multiplayer