diff options
Diffstat (limited to 'src/game/server/player.cpp')
| -rw-r--r-- | src/game/server/player.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/game/server/player.cpp b/src/game/server/player.cpp index a31cf21c..252e23e3 100644 --- a/src/game/server/player.cpp +++ b/src/game/server/player.cpp @@ -5,12 +5,20 @@ #include "player.hpp" #include "gamecontext.hpp" +MACRO_ALLOC_POOL_ID_IMPL(PLAYER, MAX_CLIENTS) + PLAYER::PLAYER(int client_id) { character = 0; this->client_id = client_id; } +PLAYER::~PLAYER() +{ + delete character; + character = 0; +} + /* void PLAYER::init(int client_id) { @@ -168,7 +176,7 @@ void PLAYER::try_respawn() if(num_ents == 0) { spawning = false; - character = new CHARACTER(); + character = new(client_id) CHARACTER(); character->spawn(this, spawnpos, team); } } |