- void handleCommand(ToServerPacket* pkt);
-
- void handleCommand_Null(ToServerPacket* pkt) {};
- void handleCommand_Deprecated(ToServerPacket* pkt);
- void handleCommand_Init(ToServerPacket* pkt);
- void handleCommand_Init2(ToServerPacket* pkt);
- void handleCommand_RequestMedia(ToServerPacket* pkt);
- void handleCommand_ReceivedMedia(ToServerPacket* pkt);
- void handleCommand_ClientReady(ToServerPacket* pkt);
- void handleCommand_GotBlocks(ToServerPacket* pkt);
- void handleCommand_PlayerPos(ToServerPacket* pkt);
- void handleCommand_DeletedBlocks(ToServerPacket* pkt);
- void handleCommand_InventoryAction(ToServerPacket* pkt);
- void handleCommand_ChatMessage(ToServerPacket* pkt);
- void handleCommand_Damage(ToServerPacket* pkt);
- void handleCommand_Breath(ToServerPacket* pkt);
- void handleCommand_Password(ToServerPacket* pkt);
- void handleCommand_PlayerItem(ToServerPacket* pkt);
- void handleCommand_Respawn(ToServerPacket* pkt);
- void handleCommand_Interact(ToServerPacket* pkt);
- void handleCommand_RemovedSounds(ToServerPacket* pkt);
- void handleCommand_NodeMetaFields(ToServerPacket* pkt);
- void handleCommand_InventoryFields(ToServerPacket* pkt);
-
- void ProcessData(u8 *data, u32 datasize, u16 peer_id);
-
- // Environment must be locked when called
+ void handleCommand(NetworkPacket* pkt);
+
+ void handleCommand_Null(NetworkPacket* pkt) {};
+ void handleCommand_Deprecated(NetworkPacket* pkt);
+ void handleCommand_Init(NetworkPacket* pkt);
+ void handleCommand_Init_Legacy(NetworkPacket* pkt);
+ void handleCommand_Init2(NetworkPacket* pkt);
+ void handleCommand_RequestMedia(NetworkPacket* pkt);
+ void handleCommand_ReceivedMedia(NetworkPacket* pkt);
+ void handleCommand_ClientReady(NetworkPacket* pkt);
+ void handleCommand_GotBlocks(NetworkPacket* pkt);
+ void handleCommand_PlayerPos(NetworkPacket* pkt);
+ void handleCommand_DeletedBlocks(NetworkPacket* pkt);
+ void handleCommand_InventoryAction(NetworkPacket* pkt);
+ void handleCommand_ChatMessage(NetworkPacket* pkt);
+ void handleCommand_Damage(NetworkPacket* pkt);
+ void handleCommand_Breath(NetworkPacket* pkt);
+ void handleCommand_Password(NetworkPacket* pkt);
+ void handleCommand_PlayerItem(NetworkPacket* pkt);
+ void handleCommand_Respawn(NetworkPacket* pkt);
+ void handleCommand_Interact(NetworkPacket* pkt);
+ void handleCommand_RemovedSounds(NetworkPacket* pkt);
+ void handleCommand_NodeMetaFields(NetworkPacket* pkt);
+ void handleCommand_InventoryFields(NetworkPacket* pkt);
+ void handleCommand_FirstSrp(NetworkPacket* pkt);
+ void handleCommand_SrpBytesA(NetworkPacket* pkt);
+ void handleCommand_SrpBytesM(NetworkPacket* pkt);
+
+ void ProcessData(NetworkPacket *pkt);
+
+ void Send(NetworkPacket* pkt);
+
+ // Helper for handleCommand_PlayerPos and handleCommand_Interact
+ void process_PlayerPos(RemotePlayer *player, PlayerSAO *playersao,
+ NetworkPacket *pkt);
+
+ // Both setter and getter need no envlock,
+ // can be called freely from threads