Esempio n. 1
0
    public void SaveMap()
    {
        if (mapName.Length > 0)
        {
            //Debug.Log("Dimensions: " + BoardEditProxy.instance.GetDimensions().ToString());
            BoardEditMeta bMeta = new BoardEditMeta((int)BoardEditProxy.instance.GetDimensions()[0], (int)BoardEditProxy.instance.GetDimensions()[1],
                                                    BoardEditProxy.instance.GetUnits().Where(unt => unt.GetData().GetTeam() == 0).ToArray(),
                                                    BoardEditProxy.instance.GetUnits().Where(unt => unt.GetData().GetTeam() == 1).ToArray(),
                                                    BoardEditProxy.instance.GetSpecialTiles(TileEditTypes.fire).ToArray(),
                                                    BoardEditProxy.instance.GetSpecialTiles(TileEditTypes.snow).ToArray(),
                                                    BoardEditProxy.instance.GetSpecialTiles(TileEditTypes.wall).ToArray(),
                                                    BoardEditProxy.instance.GetSpecialTiles(TileEditTypes.divine).ToArray()
                                                    );

            BoardEditProxy.SaveItemInfo(mapName, JsonUtility.ToJson(bMeta));
        }
    }
Esempio n. 2
0
    public void PopulateRetrievedInfo(BoardEditMeta bMeta)
    {
        Debug.Log("PopulateRetrievedInfo: " + bMeta);
        if (bMeta != null)
        {
            Debug.Log("Building Stored Board");
            height = bMeta.height;
            width  = bMeta.width;
            BuildTestBoard();

            PopulatePlayer(bMeta.players.Select(pos => instance.GetTileAtPosition(pos)).ToArray());
            PopulateEnemies(bMeta.enemies.Select(pos => instance.GetTileAtPosition(pos)).ToArray());

            foreach (Vector3Int pt in bMeta.fireTiles)
            {
                tiles[pt.x, pt.y].SetLifeFire(true);
            }
            foreach (Vector3Int pt in bMeta.snowTiles)
            {
                tiles[pt.x, pt.y].SetLifeSnow(true);
            }
            foreach (Vector3Int pt in bMeta.wallTiles)
            {
                tiles[pt.x, pt.y].SetLifeWall(true);
            }
            foreach (Vector3Int pt in bMeta.divineTiles)
            {
                tiles[pt.x, pt.y].SetLifeDivine(true);
            }
        }
        else
        {
            Debug.Log("Building sample board");
            BuildTestBoard();
            PopulatePlayer(GetSideTiles(PLAYER_TEAM));
            PopulateEnemies(GetSideTiles(ENEMY_TEAM));
            PlaceObstaclesAlt();
        }
        foreach (UnitProxy unit in GetUnits())
        {
            unit.AcceptAction(Skill.Actions.BeginGame, null);
        }
        PanelControllerNew.instance.LoadInitUnits(GetUnits());
        TurnController.instance.StartTurn(true);
    }
Esempio n. 3
0
 public void PopulateRetrievedInfo(BoardEditMeta bMeta)
 {
     if (bMeta != null)
     {
         height = bMeta.height;
         width  = bMeta.width;
         BoardEditProxy.instance.Resize(width, height);
         foreach (Vector3Int unt in bMeta.players)
         {
             TileEditorProxy tl = BoardEditProxy.instance.GetTileAtPosition(unt);
             tl.CreateUnitOnTile(glossary.GetComponent <Glossary>().playerTile, 0);
         }
         foreach (Vector3Int unt in bMeta.enemies)
         {
             TileEditorProxy tl = BoardEditProxy.instance.GetTileAtPosition(unt);
             tl.CreateUnitOnTile(glossary.GetComponent <Glossary>().enemyTile, 1);
         }
         foreach (Vector3Int unt in bMeta.fireTiles)
         {
             TileEditorProxy tl = BoardEditProxy.instance.GetTileAtPosition(unt);
             tl.gameObject.GetComponent <SpriteRenderer>().sprite = GetPaintTileSprite(TileEditTypes.fire);
             tl.SetLifeFire(true);
         }
         foreach (Vector3Int unt in bMeta.snowTiles)
         {
             TileEditorProxy tl = BoardEditProxy.instance.GetTileAtPosition(unt);
             tl.gameObject.GetComponent <SpriteRenderer>().sprite = GetPaintTileSprite(TileEditTypes.snow);
             tl.SetLifeSnow(true);
         }
         foreach (Vector3Int unt in bMeta.wallTiles)
         {
             TileEditorProxy tl = BoardEditProxy.instance.GetTileAtPosition(unt);
             tl.gameObject.GetComponent <SpriteRenderer>().sprite = GetPaintTileSprite(TileEditTypes.wall);
             tl.SetLifeWall(true);
         }
         foreach (Vector3Int unt in bMeta.divineTiles)
         {
             TileEditorProxy tl = BoardEditProxy.instance.GetTileAtPosition(unt);
             tl.gameObject.GetComponent <SpriteRenderer>().sprite = GetPaintTileSprite(TileEditTypes.divine);
             tl.SetLifeDivine(true);
         }
     }
 }