This commit is contained in:
aozhiwei 2023-11-04 21:18:28 +08:00
parent bed1c91d66
commit 958e9a4b47
4 changed files with 7 additions and 10 deletions

View File

@ -60,7 +60,7 @@ void MapService::UnInit()
CellNode,
entry);
list_del_init(&e->entry);
delete e;
e->holder = nullptr;
}
}
if (map_cells_) {

View File

@ -28,13 +28,13 @@ void MatchPool::_CMJoin(f8::MsgHdr& hdr, const cs::CMJoin& msg)
{
}
MatchTeamNew* MatchPool::GetTeam(const std::string& team_uuid)
std::shared_ptr<MatchTeamNew> MatchPool::GetTeam(const std::string& team_uuid)
{
auto itr = team_hash_.find(team_uuid);
return itr != team_hash_.end() ? itr->second : nullptr;
}
void MatchPool::TraverseTeam(std::function<void (MatchTeamNew*, bool&)> func)
void MatchPool::TraverseTeam(std::function<void (std::shared_ptr<MatchTeamNew>&, bool&)> func)
{
if (!func) {
return;
@ -54,7 +54,6 @@ void MatchPool::RemoveTeam(const std::string& team_uuid)
{
auto itr = team_hash_.find(team_uuid);
if (itr != team_hash_.end()) {
delete itr->second;
team_hash_.erase(itr);
}
}

View File

@ -25,18 +25,18 @@ public:
private:
void TraverseTeam(std::function<void (MatchTeamNew*, bool&)> func);
void TraverseTeam(std::function<void (std::shared_ptr<MatchTeamNew>&, bool&)> func);
bool NeedMatch(const cs::CMJoin& msg);
MatchTeamNew* GetTeam(const std::string& team_uuid);
std::shared_ptr<MatchTeamNew> GetTeam(const std::string& team_uuid);
void RemoveTeam(const std::string& team_uuid);
void RemoveSocket(int socket_handle);
void Update();
private:
f8::Attacher timer_attacher_;
std::map<std::string, MatchTeamNew*> team_hash_;
std::map<int, std::tuple<std::string, MatchTeamNew*>> socket_hash_;
std::map<std::string, std::shared_ptr<MatchTeamNew>> team_hash_;
std::map<int, std::tuple<std::string, std::shared_ptr<MatchTeamNew>>> socket_hash_;
std::map<long long, std::shared_ptr<TeamGroup>> group_hash_;
std::map<long long, std::shared_ptr<TeamGroup>> matching_list_;

View File

@ -376,7 +376,6 @@ void Room::AddPlayer(Player* hum, std::shared_ptr<BornPoint> init_born_point, bo
Team* t = a->GetTeam();
leader->GetTeam()->CombineTeam(a->GetTeam());
team_hash_.erase(t->GetTeamId());
delete t;
}
}
leader = humans.at(3);
@ -393,7 +392,6 @@ void Room::AddPlayer(Player* hum, std::shared_ptr<BornPoint> init_born_point, bo
Team* t = a->GetTeam();
leader->GetTeam()->CombineTeam(a->GetTeam());
team_hash_.erase(t->GetTeamId());
delete t;
}
}
}