Files
Blitz/include/server/game/ServerGame.h
2024-03-21 16:43:45 +01:00

35 lines
748 B
C++

#pragma once
#include "blitz/game/Game.h"
#include "blitz/misc/Time.h"
namespace blitz {
namespace server {
class Server;
class ServerGame : public game::Game {
private:
Server* m_Server;
utils::Timer m_PositionTimer;
public:
ServerGame(Server* server);
virtual ~ServerGame();
void CheckShoot(game::PlayerID player, Vec3f position, float yaw, float pitch);
void AddPlayer(game::PlayerID player, const std::string& name) override;
void RemovePlayer(game::PlayerID player) override;
void Tick(std::uint64_t delta) override;
private:
void SendPlayerPositions();
void DamagePlayer(game::Player& player, game::Player& shooter);
void UpdateHP(game::Player& player, float newHP);
};
} // namespace server
} // namespace blitz