public static void AddExistingRune(Combinator.Runes rune)
        {
            switch (rune)
            {
                case Combinator.Runes.FIRE:
                    RuneBag[0]++;
                    break;
                case Combinator.Runes.WATER:
                    RuneBag[1]++;
                    break;
                case Combinator.Runes.AIR:
                    RuneBag[2]++;
                    break;
                case Combinator.Runes.EARTH:
                    RuneBag[3]++;
                    break;
                case Combinator.Runes.LIGHTNING:
                    RuneBag[4]++;
                    break;
                case Combinator.Runes.NATURE:
                    RuneBag[5]++;
                    break;
                case Combinator.Runes.LIGHT:
                    RuneBag[6]++;
                    break;
                case Combinator.Runes.DARKNESS:
                    RuneBag[7]++;
                    break;
                case Combinator.Runes.COSMIC:
                    RuneBag[8]++;
                    break;

            }
        }
        public void generateTower(Tiles.EmptyTile emptyTile, Combinator.TowerType tower)
        {
            switch(tower)
            {
                case Combinator.TowerType.FIREBALL:
                towers.Add(Tower.getTower<FireTower>(Game, 40.0f, tileMap.EmptyTileList[emptyTile.index].position, 0.75f));
                break;

                case Combinator.TowerType.THUNDERSTORM:
                towers.Add(Tower.getTower<LightningTower>(Game, 10.0f, tileMap.EmptyTileList[emptyTile.index].position, 0.14f));
                break;

                case Combinator.TowerType.EARTHQUAKE:
                towers.Add(Tower.getTower<EarthTower>(Game, 0.0f, tileMap.EmptyTileList[emptyTile.index].position, 999999.0f));
                break;

                case Combinator.TowerType.CORROSIVE:
                towers.Add(Tower.getTower<PoisonTower>(Game, 2.0f, tileMap.EmptyTileList[emptyTile.index].position, 1.0f));
                break;

                case Combinator.TowerType.TORNADO:
                towers.Add(Tower.getTower<TornadoTower>(Game, 0.0f, tileMap.EmptyTileList[emptyTile.index].position, 999999.0f));
                break;

                case Combinator.TowerType.GLACIER:
                towers.Add(Tower.getTower<WaterTower>(Game, 10.0f, tileMap.EmptyTileList[emptyTile.index].position, 2.0f));
                break;

                case Combinator.TowerType.DARKFLAMES:
                towers.Add(Tower.getTower<ShadowTower>(Game, 10.0f, tileMap.EmptyTileList[emptyTile.index].position, 2.0f));
                break;

                case Combinator.TowerType.SOLAR:
                towers.Add(Tower.getTower<PlasmaTower>(Game, 10.0f, tileMap.EmptyTileList[emptyTile.index].position, 2.0f));
                break;

                case Combinator.TowerType.BLINDING:
                towers.Add(Tower.getTower<LightTower>(Game, 10.0f, tileMap.EmptyTileList[emptyTile.index].position, 2.0f));
                break;

                case Combinator.TowerType.BLACKHOLE:
                towers.Add(Tower.getTower<BlackHoleTower>(Game, 10.0f, tileMap.EmptyTileList[emptyTile.index].position, 2.0f));
                break;

                case Combinator.TowerType.INFINITY:
                towers.Add(Tower.getTower<InfinityTower>(Game, 10.0f, tileMap.EmptyTileList[emptyTile.index].position, 2.0f));
                break;

                case Combinator.TowerType.MAGMATIC:
                towers.Add(Tower.getTower<MagmaTower>(Game, 10.0f, tileMap.EmptyTileList[emptyTile.index].position, 2.0f));
                break;
            }
        }
 public Recipe(Combinator.Runes _rune1, Combinator.Runes _rune2, Combinator.Runes _rune3, Combinator.TowerType _tower)
 {
     rune1 = _rune1;
     rune2 = _rune2;
     rune3 = _rune3;
     towerType = _tower;
 }