void loadMapFromXML(string mapName) { MapXMLContainer container = MapSaveLoad.Load(mapName); mapSize = container.size; for (int i = 0; i < mapTransform.childCount; i++) { Destroy(mapTransform.GetChild(i).gameObject); } for (int i = 0; i < mapSize; i++) { List <Tile> row = new List <Tile>(); for (int j = 0; j < mapSize; j++) { Tile tile = Instantiate(PrefabHolder.instance.TILE_BASE_PREFAB, new Vector3(i - Mathf.Floor(mapSize / 2), 0, -j + Mathf.Floor(mapSize / 2)), Quaternion.Euler(new Vector3())).GetComponent <Tile>(); tile.transform.parent = mapTransform; tile.gridPosition = new Vector2(i, j); tile.setType((TileType)container.tiles.Where(x => x.locX == i && x.locY == j).First().id); row.Add(tile); } map.Add(row); } }
private void CreateMap() { CellMapXMLContainer container = MapSaveLoad.Load("map.xml"); mapSize = container.size; //initially remove all children // for (int i = 0; i < mapTransform.childCount; i++) //{ // Destroy(mapTransform.GetChild(i).gameObject); //} map = new List <List <Cell> >(); for (int i = 0; i < mapSize; i++) { List <Cell> row = new List <Cell>(); for (int j = 0; j < mapSize; j++) { GameObject cellPrefab; cellPrefab = ((GameObject)Instantiate(PrefabHolder.instance.BASE_TILE_PREFAB.gameObject, new Vector3(i - Mathf.Floor(mapSize / 2), 0, -j + Mathf.Floor(mapSize / 2)), Quaternion.Euler(new Vector3()))); Cell cell = cellPrefab.GetComponent <Cell>(); cell.transform.parent = mapTransform; cell.gridPosition = new Vector2(i, j); cell.type = (CellType)(container.cells.Where(x => x.locX == i && x.locY == j).First().id); row.Add(cell); } map.Add(row); } }
public static MapXmlContainer CreateMapContainer(List <List <Tile> > map, List <UnidadeNoTabuleiro> unidades, int linhas, int colunas) { List <TileXml> tiles = new List <TileXml>(); List <UnidadeXml> unidadesXML = new List <UnidadeXml>(); for (int i = 0; i < colunas; i++) { for (int j = 0; j < linhas; j++) { tiles.Add(MapSaveLoad.CreateTileXml(map[i][j])); } } foreach (UnidadeNoTabuleiro u in unidades) { unidadesXML.Add(MapSaveLoad.CreateUnidadeXml(u)); } return(new MapXmlContainer() { lines = linhas, coluns = colunas, unidadesNoTabuleiro = unidadesXML, tiles = tiles }); }
private void loadMapFromXml() { CellMapXMLContainer container = MapSaveLoad.Load("map.xml"); mapSize = container.size; //initially remove all children for (int i = 0; i < mapTransform.childCount; i++) { Destroy(mapTransform.GetChild(i).gameObject); } map = new List <List <Cell> >(); for (int i = 0; i < mapSize; i++) { List <Cell> row = new List <Cell>(); for (int j = 0; j < mapSize; j++) { Cell tile = ((GameObject)Instantiate(PrefabHolder.instance.BASE_TILE_PREFAB, new Vector3(i - Mathf.Floor(mapSize / 2), 0, -j + Mathf.Floor(mapSize / 2)), Quaternion.Euler(new Vector3()))).GetComponent <Cell>(); tile.transform.parent = mapTransform; tile.gridPosition = new Vector2(i, j); tile.setType((CellType)container.cells.Where(x => x.locX == i && x.locY == j).First().id); row.Add(tile); } map.Add(row); } }
//建立網格背景 private void ConstructGraphView() { graphView = new LevelFlowGraphView(this); graphView.StretchToParentSize(); rootVisualElement.Add(graphView); mapSaveLoad = new MapSaveLoad(graphView); }
public static MapXMLContainer CreateMapContainer(List <List <Tile> > map) { List <TileXML> tiles = new List <TileXML>(); for (int i = 0; i < map.Count; i++) { for (int j = 0; j < map[i].Count; j++) { tiles.Add(MapSaveLoad.CreateTileXML(map[i][j])); } } return(new MapXMLContainer() { size = map.Count, tiles = tiles }); }
public void loadMapFromXml(string nome) { MapXmlContainer container = MapSaveLoad.MapBuildLoad(nome + ".xml"); colunas = container.coluns; linhas = container.lines; destruirTabuleiroAtual(); for (int i = 0; i < colunas; i++) { List <Tile> row = new List <Tile>(); for (int j = 0; j < linhas; j++) { Tile tile = ((GameObject)Instantiate(tilePrefab, new Vector3(i - Mathf.Floor(linhas / 2), 0, -j + Mathf.Floor(colunas / 2)), Quaternion.Euler(new Vector3()))).GetComponent <Tile>(); tile.transform.parent = mapHolder.transform; tile.noConstrutor = true; tile.posicaoNoTabuleiro = new Vector2(i, j); tile.setarTipoeVisual((TileType)container.tiles.Where(x => x.locX == i && x.locY == j).First().id); tile.setarMecanicaeVisual((TileMechanic)container.tiles.Where(x => x.locX == i && x.locY == j).First().mechanic); row.Add(tile); } tabuleiro.Add(row); } foreach (UnidadeXml uXML in container.unidadesNoTabuleiro) { UnidadeNoTabuleiro unidadeNova = ((GameObject)Instantiate(unidadePrefab, tabuleiro[uXML.locX][uXML.locY].transform.position + 1 * Vector3.up, Quaternion.Euler(new Vector3(90, 0, 0)))).GetComponent <UnidadeNoTabuleiro>(); unidadeNova.gridPosition = new Vector2(uXML.locX, uXML.locY); unidadeNova.unidadeAssociada = BancoDeDados.instancia.retornarUnidade(uXML.id); unidadeNova.gameObject.GetComponent <Animator>().runtimeAnimatorController = controladoresInimigos[(int)unidadeNova.unidadeAssociada.classe]; //Aqui so entrarão unidades que vão estar contra você no jogo, então sempre serão inimigos unidadeNova.inimigo = true; tabuleiro[uXML.locX][uXML.locY].ocupado = true; unidadesNoTabuleiro.Add(unidadeNova); } configurarCameraParaNovoTabuleiro(tabuleiro); }
void saveMapFromXML() { MapSaveLoad.Save(MapSaveLoad.CreateMapContainer(map), "map2"); SavingMap = "map2"; }
public void popularInteligencia() { if (!inteligenciaHolder.activeSelf) { inteligenciaHolder.SetActive(true); } if (suprimentosHolder.activeSelf) { suprimentosHolder.SetActive(false); } List <Unidade> inimigosNoJogo = new List <Unidade>(); int numeroDeInimigos = 0; int numeroDeSuporte = 0; MapXmlContainer container; container = MapSaveLoad.OnGameLoad(1); foreach (UnidadeXml uXML in container.unidadesNoTabuleiro) { inimigosNoJogo.Add(BancoDeDados.instancia.retornarUnidade(uXML.id)); } container = MapSaveLoad.OnGameLoad(2); foreach (UnidadeXml uXML in container.unidadesNoTabuleiro) { numeroDeSuporte++; inimigosNoJogo.Add(BancoDeDados.instancia.retornarUnidade(uXML.id)); } container = MapSaveLoad.OnGameLoad(3); foreach (UnidadeXml uXML in container.unidadesNoTabuleiro) { inimigosNoJogo.Add(BancoDeDados.instancia.retornarUnidade(uXML.id)); } numeroDeInimigos = inimigosNoJogo.Count; classeMajoritaria.text = VerificarClasseMajoritariaOuMinoritaria(inimigosNoJogo, true).ToString(); classeMinoritaria.text = VerificarClasseMajoritariaOuMinoritaria(inimigosNoJogo, false).ToString(); this.numeroDeInimigos.text = numeroDeInimigos.ToString(); this.numeroDeSuporte.text = numeroDeSuporte.ToString(); if (!opcoesDeAtaque.activeSelf) { opcoesDeAtaque.SetActive(true); } if (opcoesDeSuprimento.activeSelf) { opcoesDeSuprimento.SetActive(false); } if (GameController.instancia.primeiroBatalhao.Count == 0) { Blitz.interactable = false; } else { Blitz.interactable = true; } if ((GameController.instancia.segundoBatalhao.Count + GameController.instancia.terceiroBatalhao.Count) == 0) { Organizada.interactable = false; } else { Organizada.interactable = true; } }
void saveMapToXml() { MapSaveLoad.Save(MapSaveLoad.CreateMapContainer(map), "map.xml"); }
void saveMapToXml(string s) { MapSaveLoad.Save(MapSaveLoad.CreateMapContainer(map), s); }
public void UISaveMap(string s) { MapSaveLoad.Save(MapSaveLoad.CreateMapContainer(map), s); }
public void saveMapToXml(string nome) { MapSaveLoad.Save(MapSaveLoad.CreateMapContainer(tabuleiro, unidadesNoTabuleiro, linhas, colunas), nome + ".xml"); }