public void ChangeRole(DNMPlayer player) { CheckState(new DNMState[] { DNMState.Offline, DNMState.Host }); CheckGameState(GameState.NoGame); int currentRole = player.GetRole(); int newRole; if (currentRole == DNM.SpecRole) { newRole = DNM.FirstPlayerRole; } else { newRole = currentRole + 1; if (newRole > levelData.MaxPlayers) { // no spec role in offline mode newRole = state == DNMState.Offline ? DNM.FirstPlayerRole : DNM.SpecRole; } } if (newRole != currentRole) { player.SetRole(newRole); } else { Log.Warn("No role to change?"); } }
void Awake() { DNMPlayer dnmPlayer = GetComponent <DNMPlayer>(); if (dnmPlayer == null) { Log.Warn("Component DNMPlayer not found!"); return; } dnmPlayer.AddListener(this); TBPlayer tbPlayer = GetComponent <TBPlayer>(); if (tbPlayer == null) { Log.Warn("Component TBPlayer not found!"); return; } tbPlayer.AddListener(this); }
public void AddPlayer(DNMPlayer player) { players.Add(player); }