/** Copyright: Copyright (c) 2015-2018 Andrey Penechko. License: $(WEB boost.org/LICENSE_1_0.txt, Boost License 1.0). Authors: Andrey Penechko. */ module voxelman.net.events; import netlib : SessionId; import datadriven : EntityId; import voxelman.world.storage.coordinates : ClientDimPos; import voxelman.net.packets : MessagePacket; struct ClientConnectedEvent { SessionId sessionId; } struct ClientDisconnectedEvent { SessionId sessionId; } struct ThisClientConnectedEvent {} struct ThisClientDisconnectedEvent { uint data; } struct ClientLoggedInEvent { EntityId clientId; bool newClient; } struct ClientLoggedOutEvent { EntityId clientId; } struct SendClientSettingsEvent {} struct ClientMovedEvent { EntityId clientId; ClientDimPos pos; ushort dimension; } struct MessageEvent { MessagePacket packet; string clientName; alias packet this; }