Exemple #1
0
        public void GenerateLevel()
        {
            print("GENERATE");
            //GameSingleton.Instance.GetPlayer().goldStartLevel = GameSingleton.Instance.GetPlayer().gold;
            //GameSingleton.Instance.uiManager.inventoryUi.UpdateGold();
            //update gold inventoryUI
            Player player = GameSingleton.Instance.GetPlayer();

            //player.currentLevelArcade = PlayerPrefs.GetInt("CurrentLevelArcade", 0);
            player.currentLevelArcade = player.currentLevelArcade + 1;

            if (player.currentLevelArcade == 1)
            {
                seed = Random.Range(Int32.MinValue, Int32.MaxValue);
                player.currentSeed = seed;
            }

            loadedLevel = grp.GenerateNextLevel(seed, player.currentLevelArcade);

            GameSingleton.Instance.levelManager = this;

            loadedLevel = Instantiate(levelList.GetLevel(player.currentLevelArcade - 1));
            var matGradPair = gradientList.GetRandomGradient();

            loadedLevel.terrainBuilder.heightGradient = matGradPair.gradient;
            loadedLevel.terrainBuilder.waterObject.GetComponent <MeshRenderer>().material = matGradPair.material;
            loadedLevel.Init();

            /* foreach (var enemy in  enemySpawns)
             * {
             *   Vector2 spawnPosition = enemy.position;
             *
             *   float yPosition = loadedLevel.terrainBuilder.terrainOptions.modifierHeightMap[spawnPosition];
             *   Debug.Log("position :" + yPosition);
             *   Debug.Log(enemy.position);
             * }*/
        }