public void RemoveCharacterTurn(CharacterManager character) { Debug.Log("looking to remove " + character.name + " from turn order"); charactersInBattle.Remove(character); for (int i = 0; i < charactersInBattle.Count; i++) { Debug.Log("characters left are " + charactersInBattle[i].name); } // remove from list of characters in battle if (character.gameObject.tag == "Player Ally") { Debug.Log("removing " + character + " from player list"); playerAllies.Remove(character); for (int i = 0; i < playerAllies.Count; i++) { Debug.Log("players left " + playerAllies[i]); } Debug.Log("player count is " + playerAllies.Count); if (playerAllies.Count <= 0) { LevelManager levelManager = GameObject.Find("LevelManager").GetComponent <LevelManager>(); levelManager.LoadLevel("Lose"); } } else if (character.gameObject.tag == "Enemy Ally") { Debug.Log("removing " + character + " from enemy list"); enemyAllies.Remove(character); for (int i = 0; i < enemyAllies.Count; i++) { Debug.Log("enemies left " + enemyAllies[i]); } Debug.Log("enemy count is " + enemyAllies.Count); if (enemyAllies.Count <= 0) { LootManager lootManager = GameObject.Find("LootManager").GetComponent <LootManager>(); lootManager.EnemyDrops(); LevelManager levelManager = GameObject.Find("LevelManager").GetComponent <LevelManager>(); levelManager.LoadLevel("Win"); } } }