refactor: use of unique_ptr instead of new

This commit is contained in:
2021-11-06 13:02:53 +01:00
parent 26290d8332
commit 6825a6327f
19 changed files with 136 additions and 134 deletions

View File

@@ -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);
};

View File

@@ -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; }

View File

@@ -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

View File

@@ -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;
};

View File

@@ -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(); }

View File

@@ -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; }

View File

@@ -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);

View File

@@ -6,7 +6,7 @@ namespace td {
namespace protocol {
namespace PacketFactory {
Packet* createPacket(PacketType type, DataBuffer& buffer);
PacketPtr createPacket(PacketType type, DataBuffer& buffer);
}
} // namespace protocol

View File

@@ -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

View File

@@ -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; }