refactor: use of unique_ptr instead of new
This commit is contained in:
@@ -27,7 +27,7 @@ public:
|
||||
|
||||
network::Socket::Status getSocketStatus() const { return m_Socket.GetStatus(); }
|
||||
|
||||
void sendPacket(protocol::Packet* packet);
|
||||
void sendPacket(const protocol::Packet* packet);
|
||||
|
||||
REMOVE_COPY(Connexion);
|
||||
};
|
||||
|
||||
@@ -18,10 +18,10 @@ public:
|
||||
|
||||
virtual bool updateSocket();
|
||||
|
||||
virtual void HandlePacket(protocol::KeepAlivePacket* packet);
|
||||
virtual void HandlePacket(protocol::ConnexionInfoPacket* packet);
|
||||
virtual void HandlePacket(protocol::DisconnectPacket* packet);
|
||||
virtual void HandlePacket(protocol::ServerTpsPacket* packet);
|
||||
virtual void HandlePacket(const protocol::KeepAlivePacket* packet);
|
||||
virtual void HandlePacket(const protocol::ConnexionInfoPacket* packet);
|
||||
virtual void HandlePacket(const protocol::DisconnectPacket* packet);
|
||||
virtual void HandlePacket(const protocol::ServerTpsPacket* packet);
|
||||
|
||||
const std::string& getDisconnectReason() const { return m_DisconnectReason; }
|
||||
float getServerTPS() const { return m_ServerTPS; }
|
||||
|
||||
@@ -39,17 +39,17 @@ public:
|
||||
|
||||
void PlaceTower(game::TowerType type, const glm::vec2& position);
|
||||
|
||||
virtual void HandlePacket(protocol::ConnexionInfoPacket* packet);
|
||||
virtual void HandlePacket(protocol::PlayerJoinPacket* packet);
|
||||
virtual void HandlePacket(protocol::PlayerLeavePacket* packet);
|
||||
virtual void HandlePacket(protocol::PlayerListPacket* packet);
|
||||
virtual void HandlePacket(protocol::UpdatePlayerTeamPacket* packet);
|
||||
virtual void HandlePacket(protocol::UpdateGameStatePacket* packet);
|
||||
virtual void HandlePacket(protocol::UpdateLobbyTimePacket* packet);
|
||||
virtual void HandlePacket(protocol::UpdateMoneyPacket* packet);
|
||||
virtual void HandlePacket(protocol::DisconnectPacket* packet);
|
||||
virtual void HandlePacket(protocol::WorldDataPacket* packet);
|
||||
virtual void HandlePacket(protocol::WorldAddTowerPacket* packet);
|
||||
virtual void HandlePacket(const protocol::ConnexionInfoPacket* packet);
|
||||
virtual void HandlePacket(const protocol::PlayerJoinPacket* packet);
|
||||
virtual void HandlePacket(const protocol::PlayerLeavePacket* packet);
|
||||
virtual void HandlePacket(const protocol::PlayerListPacket* packet);
|
||||
virtual void HandlePacket(const protocol::UpdatePlayerTeamPacket* packet);
|
||||
virtual void HandlePacket(const protocol::UpdateGameStatePacket* packet);
|
||||
virtual void HandlePacket(const protocol::UpdateLobbyTimePacket* packet);
|
||||
virtual void HandlePacket(const protocol::UpdateMoneyPacket* packet);
|
||||
virtual void HandlePacket(const protocol::DisconnectPacket* packet);
|
||||
virtual void HandlePacket(const protocol::WorldDataPacket* packet);
|
||||
virtual void HandlePacket(const protocol::WorldAddTowerPacket* packet);
|
||||
};
|
||||
|
||||
} // namespace client
|
||||
|
||||
@@ -14,10 +14,10 @@ private:
|
||||
public:
|
||||
WorldClient(ClientGame* game);
|
||||
|
||||
virtual void HandlePacket(protocol::WorldBeginDataPacket* packet) override;
|
||||
virtual void HandlePacket(protocol::WorldDataPacket* packet) override;
|
||||
virtual void HandlePacket(protocol::SpawnMobPacket* packet) override;
|
||||
virtual void HandlePacket(protocol::UpgradeTowerPacket* packet) override;
|
||||
virtual void HandlePacket(const protocol::WorldBeginDataPacket* packet) override;
|
||||
virtual void HandlePacket(const protocol::WorldDataPacket* packet) override;
|
||||
virtual void HandlePacket(const protocol::SpawnMobPacket* packet) override;
|
||||
virtual void HandlePacket(const protocol::UpgradeTowerPacket* packet) override;
|
||||
|
||||
virtual void OnArrowShot(game::MobPtr target, game::Tower* shooter) override;
|
||||
};
|
||||
|
||||
@@ -70,7 +70,7 @@ public:
|
||||
|
||||
void removeConnexion(std::uint8_t connexionID);
|
||||
|
||||
void broadcastPacket(protocol::Packet* packet);
|
||||
void broadcastPacket(const protocol::Packet* packet);
|
||||
|
||||
float getTPS() const { return m_TickCounter.getTPS(); }
|
||||
|
||||
|
||||
@@ -33,13 +33,13 @@ public:
|
||||
|
||||
void setServer(Server* server);
|
||||
|
||||
virtual void HandlePacket(protocol::PlayerLoginPacket* packet);
|
||||
virtual void HandlePacket(protocol::KeepAlivePacket* packet);
|
||||
virtual void HandlePacket(protocol::SelectTeamPacket* packet);
|
||||
virtual void HandlePacket(protocol::DisconnectPacket* packet);
|
||||
virtual void HandlePacket(protocol::PlaceTowerPacket* packet);
|
||||
virtual void HandlePacket(protocol::SendMobsPacket* packet);
|
||||
virtual void HandlePacket(protocol::UpgradeTowerPacket* packet);
|
||||
virtual void HandlePacket(const protocol::PlayerLoginPacket* packet);
|
||||
virtual void HandlePacket(const protocol::KeepAlivePacket* packet);
|
||||
virtual void HandlePacket(const protocol::SelectTeamPacket* packet);
|
||||
virtual void HandlePacket(const protocol::DisconnectPacket* packet);
|
||||
virtual void HandlePacket(const protocol::PlaceTowerPacket* packet);
|
||||
virtual void HandlePacket(const protocol::SendMobsPacket* packet);
|
||||
virtual void HandlePacket(const protocol::UpgradeTowerPacket* packet);
|
||||
|
||||
std::uint8_t getID() const { return m_ID; }
|
||||
const game::Player* getPlayer() const { return m_Player; }
|
||||
|
||||
@@ -22,7 +22,7 @@ public:
|
||||
PacketDispatcher(PacketDispatcher&& rhs) = delete;
|
||||
PacketDispatcher& operator=(PacketDispatcher&& rhs) = delete;
|
||||
|
||||
void Dispatch(Packet* packet);
|
||||
void Dispatch(const PacketPtr& packet);
|
||||
|
||||
void RegisterHandler(PacketType type, PacketHandler* handler);
|
||||
void UnregisterHandler(PacketType type, PacketHandler* handler);
|
||||
|
||||
@@ -6,7 +6,7 @@ namespace td {
|
||||
namespace protocol {
|
||||
namespace PacketFactory {
|
||||
|
||||
Packet* createPacket(PacketType type, DataBuffer& buffer);
|
||||
PacketPtr createPacket(PacketType type, DataBuffer& buffer);
|
||||
|
||||
}
|
||||
} // namespace protocol
|
||||
|
||||
@@ -16,28 +16,28 @@ public:
|
||||
|
||||
PacketDispatcher* GetDispatcher() { return m_Dispatcher; }
|
||||
|
||||
virtual void HandlePacket(PlayerLoginPacket* packet) {}
|
||||
virtual void HandlePacket(WorldBeginDataPacket* packet) {}
|
||||
virtual void HandlePacket(WorldDataPacket* packet) {}
|
||||
virtual void HandlePacket(KeepAlivePacket* packet) {}
|
||||
virtual void HandlePacket(UpdateMoneyPacket* packet) {}
|
||||
virtual void HandlePacket(UpdateExpPacket* packet) {}
|
||||
virtual void HandlePacket(UpdateLobbyTimePacket* packet) {}
|
||||
virtual void HandlePacket(UpdateGameStatePacket* packet) {}
|
||||
virtual void HandlePacket(PlayerListPacket* packet) {}
|
||||
virtual void HandlePacket(PlayerJoinPacket* packet) {}
|
||||
virtual void HandlePacket(PlayerLeavePacket* packet) {}
|
||||
virtual void HandlePacket(ConnexionInfoPacket* packet) {}
|
||||
virtual void HandlePacket(SelectTeamPacket* packet) {}
|
||||
virtual void HandlePacket(UpdatePlayerTeamPacket* packet) {}
|
||||
virtual void HandlePacket(DisconnectPacket* packet) {}
|
||||
virtual void HandlePacket(ServerTpsPacket* packet) {}
|
||||
virtual void HandlePacket(SpawnMobPacket* packet) {}
|
||||
virtual void HandlePacket(PlaceTowerPacket* packet) {}
|
||||
virtual void HandlePacket(WorldAddTowerPacket* packet) {}
|
||||
virtual void HandlePacket(WorldRemoveTowerPacket* packet) {}
|
||||
virtual void HandlePacket(SendMobsPacket* packet) {}
|
||||
virtual void HandlePacket(UpgradeTowerPacket* packet) {}
|
||||
virtual void HandlePacket(const PlayerLoginPacket* packet) {}
|
||||
virtual void HandlePacket(const WorldBeginDataPacket* packet) {}
|
||||
virtual void HandlePacket(const WorldDataPacket* packet) {}
|
||||
virtual void HandlePacket(const KeepAlivePacket* packet) {}
|
||||
virtual void HandlePacket(const UpdateMoneyPacket* packet) {}
|
||||
virtual void HandlePacket(const UpdateExpPacket* packet) {}
|
||||
virtual void HandlePacket(const UpdateLobbyTimePacket* packet) {}
|
||||
virtual void HandlePacket(const UpdateGameStatePacket* packet) {}
|
||||
virtual void HandlePacket(const PlayerListPacket* packet) {}
|
||||
virtual void HandlePacket(const PlayerJoinPacket* packet) {}
|
||||
virtual void HandlePacket(const PlayerLeavePacket* packet) {}
|
||||
virtual void HandlePacket(const ConnexionInfoPacket* packet) {}
|
||||
virtual void HandlePacket(const SelectTeamPacket* packet) {}
|
||||
virtual void HandlePacket(const UpdatePlayerTeamPacket* packet) {}
|
||||
virtual void HandlePacket(const DisconnectPacket* packet) {}
|
||||
virtual void HandlePacket(const ServerTpsPacket* packet) {}
|
||||
virtual void HandlePacket(const SpawnMobPacket* packet) {}
|
||||
virtual void HandlePacket(const PlaceTowerPacket* packet) {}
|
||||
virtual void HandlePacket(const WorldAddTowerPacket* packet) {}
|
||||
virtual void HandlePacket(const WorldRemoveTowerPacket* packet) {}
|
||||
virtual void HandlePacket(const SendMobsPacket* packet) {}
|
||||
virtual void HandlePacket(const UpgradeTowerPacket* packet) {}
|
||||
};
|
||||
|
||||
} // namespace protocol
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
#include "game/World.h"
|
||||
#include "game/BaseGame.h"
|
||||
|
||||
#include <memory>
|
||||
|
||||
namespace td {
|
||||
namespace protocol {
|
||||
|
||||
@@ -65,12 +67,13 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const = 0;
|
||||
virtual void Deserialize(DataBuffer& data) = 0;
|
||||
virtual void Dispatch(PacketHandler* handler) = 0;
|
||||
virtual void Dispatch(PacketHandler* handler) const = 0;
|
||||
|
||||
virtual PacketType getType() const = 0;
|
||||
std::uint8_t getID() const { return (std::uint8_t)getType(); }
|
||||
};
|
||||
|
||||
typedef std::unique_ptr<Packet> PacketPtr;
|
||||
|
||||
class KeepAlivePacket : public Packet {
|
||||
private:
|
||||
@@ -82,9 +85,9 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
std::uint64_t getAliveID() { return m_AliveID; }
|
||||
std::uint64_t getAliveID() const { return m_AliveID; }
|
||||
|
||||
virtual PacketType getType() const { return PacketType::KeepAlive; }
|
||||
};
|
||||
@@ -99,11 +102,11 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
virtual PacketType getType() const { return PacketType::PlayerLogin; }
|
||||
|
||||
const std::string& getPlayerName() { return m_PlayerName; }
|
||||
const std::string& getPlayerName() const { return m_PlayerName; }
|
||||
};
|
||||
|
||||
class WorldBeginDataPacket : public Packet {
|
||||
@@ -118,7 +121,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
virtual PacketType getType() const { return PacketType::WorldBeginData; }
|
||||
|
||||
@@ -152,7 +155,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
virtual PacketType getType() const { return PacketType::WorldData; }
|
||||
|
||||
@@ -174,7 +177,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
virtual PacketType getType() const { return PacketType::UpdateMoney; }
|
||||
};
|
||||
@@ -189,7 +192,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
virtual PacketType getType() const { return PacketType::UpdateEXP; }
|
||||
};
|
||||
@@ -204,7 +207,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
std::uint32_t getRemainingTime() const { return m_RemainingTime; }
|
||||
|
||||
@@ -221,7 +224,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
game::GameState getGameState() const { return m_GameState; }
|
||||
|
||||
@@ -243,7 +246,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
const std::map<std::uint8_t, PlayerInfo>& getPlayers() const { return m_Players; }
|
||||
|
||||
@@ -261,7 +264,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
std::uint8_t getPlayerID() const { return m_PlayerID; }
|
||||
const std::string& getPlayerName() const { return m_PlayerName; }
|
||||
@@ -279,7 +282,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
std::uint8_t getPlayerID() const { return m_PlayerID; }
|
||||
|
||||
@@ -296,7 +299,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
std::uint8_t getConnectionID() const { return m_ConnectionID; }
|
||||
|
||||
@@ -313,7 +316,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
game::TeamColor getSelectedTeam() const { return m_SelectedTeam; }
|
||||
|
||||
@@ -331,7 +334,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
game::TeamColor getSelectedTeam() const { return m_SelectedTeam; }
|
||||
std::uint8_t getPlayerID() const { return m_PlayerID; }
|
||||
@@ -349,7 +352,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
const std::string& getReason() const { return m_Reason; }
|
||||
|
||||
@@ -367,7 +370,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
float getTPS() const { return m_TPS; }
|
||||
std::uint64_t getPacketSendTime() const { return m_PacketSendTime; }
|
||||
@@ -391,7 +394,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
const std::vector<MobSend>& getMobSends() const { return m_MobSends; }
|
||||
|
||||
@@ -415,7 +418,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
game::MobID getMobID() const { return m_MobID; }
|
||||
game::MobType getMobType() const { return m_MobType; }
|
||||
@@ -440,7 +443,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
std::int32_t getTowerX() const { return m_TowerX; }
|
||||
std::int32_t getTowerY() const { return m_TowerY; }
|
||||
@@ -463,7 +466,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
game::TowerID getTowerID() const { return m_TowerID; }
|
||||
std::int32_t getTowerX() const { return m_TowerX; }
|
||||
@@ -484,7 +487,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
game::TowerID getTowerID() const { return m_TowerID; }
|
||||
|
||||
@@ -502,7 +505,7 @@ public:
|
||||
|
||||
virtual DataBuffer Serialize() const;
|
||||
virtual void Deserialize(DataBuffer& data);
|
||||
virtual void Dispatch(PacketHandler* handler);
|
||||
virtual void Dispatch(PacketHandler* handler) const;
|
||||
|
||||
game::TowerID getTowerID() const { return m_TowerID; }
|
||||
game::TowerLevel getTowerLevel() const { return m_TowerLevel; }
|
||||
|
||||
Reference in New Issue
Block a user