Files
2026-02-02 09:14:41 +07:00

48 lines
1.1 KiB
C#

// Port of C++ EC_TeamMan.h/cpp - team manager (one team per leader).
using System.Collections.Generic;
using BrewMonster;
using UnityEngine;
namespace BrewMonster
{
public class CECTeamMan
{
private Dictionary<int, CECTeam> m_TeamTab = new Dictionary<int, CECTeam>();
public void Release()
{
m_TeamTab.Clear();
}
public CECTeam CreateTeam(int idLeader)
{
var pTeam = new CECTeam(idLeader);
m_TeamTab[idLeader] = pTeam;
return pTeam;
}
public void ReleaseTeam(int idLeader)
{
if (m_TeamTab.Remove(idLeader))
{ }
}
public CECTeam GetTeam(int idLeader)
{
return m_TeamTab.TryGetValue(idLeader, out var t) ? t : null;
}
public void ChangeTeamLeader(int idOldLeader, int idNewLeader)
{
var pTeam = GetTeam(idOldLeader);
if (pTeam != null)
{
pTeam.ChangeTeamLeader(idNewLeader);
m_TeamTab.Remove(idOldLeader);
m_TeamTab[idNewLeader] = pTeam;
}
}
}
}