Exemplo n.º 1
0
 public void DrawTile(Tile tile)
 {
     Vector2 drawPosition = ApplyTransformations(tile.Position);
     tile.Draw(spriteRenderer, drawPosition);
 }
Exemplo n.º 2
0
        public void LoadLevel(LevelLibrary.Level level)
        {
            collectedCount = 0;
            rows = level.Rows;
            cols = level.Columns;
            tiles = new Tile[rows, cols];
            int jewelcount = 0;

            for (int r = 0; r < rows; r++)
            {
                for (int c = 0; c < cols; c++)
                {
                    int symbol = level.GetValue(r, c);

                    switch (symbol) {
                        case 0:
                            tiles[r, c] = new Tile(0);
                            tiles[r, c].Position = new Vector2(r * tileHeight, c * tileWidth);
                            break;
                        case 1:
                            tiles[r, c] = new Tile(1);
                            tiles[r, c].Position = new Vector2(r * tileHeight, c * tileWidth);
                            break;
                        case 2:
                            tiles[r, c] = new Tile(2);
                            tiles[r, c].Position = new Vector2(r * tileHeight, c * tileWidth);
                            break;
                        case 3:
                            tiles[r, c] = new Tile(3);
                            tiles[r, c].Position = new Vector2(r * tileHeight, c * tileWidth);
                            break;
                        case 4:
                            tiles[r, c] = new Tile(4);
                            tiles[r, c].Position = new Vector2(r * tileHeight, c * tileWidth);
                            break;
                        case 5:
                            //Spawnpoint
                            spawn = new Vector2(r, c);
                            tiles[r, c] = new Tile(7);
                            tiles[r, c].Position = new Vector2(r * tileHeight, c * tileWidth);
                            spawnRow = r;
                            spawnCol = c;
                            spawn = new Vector2(r * tileHeight, c * tileWidth);
                            camera.Position=getCameraCenter();
                            currentPlayer.Position=spawn;
                            currentPlayer.setPosition(r,c);
                            break;
                        case 6:
                            //Jewel
                            jewels[jewelcount].Position = new Vector2(r * tileHeight, c * tileWidth);
                            jewels[jewelcount].setCol(c);
                            jewels[jewelcount].setRow(r);
                            tiles[r, c] = new Tile(7);
                            tiles[r, c].Position = new Vector2(r * tileHeight, c * tileWidth);
                            jewelcount++;
                            break;
                        case 7:
                            //Bird
                            birds.Add(new Bird(TextureRefs.bird,new Vector2(r * tileHeight, c * tileWidth),c,r));
                            tiles[r, c] = new Tile(7);
                            tiles[r, c].Position = new Vector2(r * tileHeight, c * tileWidth);
                            break;
                        case 8:
                            break;
                        case 9:
                            break;

                    }
                    /*char cType = symbol[0];
                    if (cType != '-')
                    {
                        LoadCritter(cType, Convert.ToInt32(symbol[1].ToString()), r, c);
                    }*/
                }
            }
        }