Esempio n. 1
0
 public void RemoveOldTile(SelectedTileType _selectedTileType, Vector2 _position)
 {
     if (_selectedTileType == SelectedTileType.Tile)
     {
         // Remove tile if got the same position
         foreach (GameObject _tile in GameWorld.tiles)
         {
             if (_tile.Transform.Position == _position)
             {
                 GameWorld.Destroy(_tile);
             }
         }
     }
     else if (_selectedTileType == SelectedTileType.Decoration)
     {
         // Remove tile if got the same position
         foreach (GameObject _descriptions in GameWorld.descriptions)
         {
             if (_descriptions.Transform.Position == _position)
             {
                 GameWorld.Destroy(_descriptions);
             }
         }
     }
 }
Esempio n. 2
0
        public void MakeNewTileType(SelectedTileType _selectedTileType, Vector2 _position)
        {
            if (_selectedTileType == SelectedTileType.Tile)
            {
                Tile newTile = new Tile();
                newTile.Transform.Position = new Vector2(_position.X, _position.Y);
                float scaleNumber = (float)((float)sizeOfTile / (float)currentSprite.Height);
                newTile.Transform.Scale = new Vector2(scaleNumber, scaleNumber);
                newTile.Color           = Color.White;
                newTile.Sprite          = currentSprite;
                newTile.LayerDepth      = 0.001f;

                // Remove tile if got the same position
                foreach (GameObject _tile in GameWorld.tiles)
                {
                    if (_tile.Transform.Position == newTile.Transform.Position)
                    {
                        GameWorld.Destroy(_tile);
                    }
                }

                GameWorld.Instatiate(newTile);
            }
            else if (_selectedTileType == SelectedTileType.Decoration)
            {
                Description newDescriptions = new Description();
                newDescriptions.Transform.Position = new Vector2(_position.X, _position.Y);
                float scaleNumber = (float)((float)sizeOfTile / (float)currentSprite.Height);
                newDescriptions.Transform.Scale      = new Vector2(scaleNumber * scaleSize, scaleNumber * scaleSize);
                newDescriptions.Color                = Color.White;
                newDescriptions.Sprite               = currentSprite;
                newDescriptions.LayerDepth           = 0.002f + (((_position.Y / 100) + 10000) / 1000000);
                newDescriptions.Transform.DrawOffSet = new Vector2(drawPositionX, drawPositionY);
                newDescriptions.OriginEnum           = currentOriginPositionEnum;
                newDescriptions.SetOrigin();


                // Remove tile if got the same position
                foreach (GameObject _descriptions in GameWorld.descriptions)
                {
                    if (_descriptions.Transform.Position == newDescriptions.Transform.Position)
                    {
                        GameWorld.Destroy(_descriptions);
                    }
                }

                GameWorld.Instatiate(newDescriptions);
            }
        }