public List <Army> LoadArmies(SavableArmies sa) { GameObject gameControllerObject = GameObject.Find("GameController") as GameObject; GameController gameController = gameControllerObject.GetComponent <GameController>(); List <Army> la = new List <Army>(); for (int i = 0; i < sa.savableArmies.Length; ++i) { GameObject armyObject = Instantiate(army, new Vector3(1000, 1000, -1000), Quaternion.identity) as GameObject; Army a = armyObject.GetComponent <Army>(); a.leader = LoadCharacter(sa.savableArmies[i].leader); a.soldiers = sa.savableArmies[i].soldiers; a.position.x = sa.savableArmies[i].posX; a.position.y = sa.savableArmies[i].posY; a.isStored = sa.savableArmies[i].isStored; //objectives a.primaryObjective = sa.savableArmies[i].primaryObjective; a.primaryObjectiveLoc.x = sa.savableArmies[i].primaryObjectivePosX; a.primaryObjectiveLoc.y = sa.savableArmies[i].primaryObjectivePosY; a.secondaryObjective = sa.savableArmies[i].primaryObjective; a.secondaryObjectiveLoc.x = sa.savableArmies[i].secondaryObjectivePosX; a.secondaryObjectiveLoc.y = sa.savableArmies[i].secondaryObjectivePosY; armyObject.transform.position = new Vector3(1000, 1000, -1000); la.Add(a); gameController.grid [sa.savableArmies [i].posX, sa.savableArmies [i].posY].GetComponent <Tile>().occupant = a; } return(la); }
public SavableArmies SaveArmies(List <Army> la) { SavableArmies sa = new SavableArmies(); sa.savableArmies = new SavableArmy[la.Count]; for (int i = 0; i < la.Count; ++i) { sa.savableArmies[i] = new SavableArmy(); sa.savableArmies[i].leader = SaveCharacter(la[i].leader); sa.savableArmies[i].soldiers = la[i].soldiers; sa.savableArmies[i].posX = (int)la[i].position.x; sa.savableArmies[i].posY = (int)la[i].position.y; sa.savableArmies[i].isStored = la[i].isStored; //objectives sa.savableArmies[i].primaryObjective = la[i].primaryObjective; sa.savableArmies[i].primaryObjectivePosX = (int)la[i].primaryObjectiveLoc.x; sa.savableArmies[i].primaryObjectivePosY = (int)la[i].primaryObjectiveLoc.y; sa.savableArmies[i].secondaryObjective = la[i].secondaryObjective; sa.savableArmies[i].secondaryObjectivePosX = (int)la[i].secondaryObjectiveLoc.x; sa.savableArmies[i].secondaryObjectivePosY = (int)la[i].secondaryObjectiveLoc.y; } return(sa); }