Exemple #1
0
    public void GenerateSubset(Vector2 position, int level)
    {
        ABLevel generateSubset = LevelList.Instance.GetLevel(level);

        LevelSimulator.GenerateSubset(generateSubset, position.x, position.y);
        //		countTNT = generateSubset.tnts.Count;
    }
    /// <summary>
    /// ABLG!!
    /// Functions for Generating Levels
    /// </summary>


    public void GenerateSubset(Vector2 position, int tag, int level)
    {
        ABLevel generateSubset = LevelList.Instance.GetLevel(level);

        LevelSimulator.GenerateSubset(generateSubset, tag, position.x, position.y);
//		Debug.Log ("pos : " + position.ToString () + ", trigger : " + generateSubset.triggerX.ToString () + generateSubset.triggerY.ToString ());
        //		countTNT = generateSubset.tnts.Count;
    }
Exemple #3
0
    /// <summary>
    /// ABLG!!
    /// Functions for Generating Levels
    /// </summary>


    public void GenerateLevel()
    {
        /// Generate Level
        if (LevelSimulator.generateLevel)
        {
            int round = UnityEngine.Random.Range(2, 3);
            for (int i = 0; i < round; i++)
            {
                //Random subset for generate level
                int     selectedLevel   = UnityEngine.Random.Range(0, LevelList.Instance.GetAllLevel().Length / 2);
                ABLevel nextLevelSubset = LevelList.Instance.GetLevel(selectedLevel);
                LevelSimulator.ChangeSubsetPosition(nextLevelSubset, UnityEngine.Random.Range(4f, 6f), UnityEngine.Random.Range(-3f, 2f));
                LevelSimulator.GenerateSubset(nextLevelSubset, nextLevelSubset.triggerX, nextLevelSubset.triggerY);
            }
            //Save generate level on scene to xml
            _levelLoader.SaveLevelOnScene();
        }
    }
    public void SwitchSubsetAndLevel()
    {
        if (UnityEngine.SceneManagement.SceneManager.GetActiveScene().name != "GameWorld")
        {
            if (!LevelSimulator.generateLevel)
            {
                DeleteSubsetFiles();

                if (parameters.Count == 0)
                {
                    StreamReader sr   = new StreamReader(System.Environment.CurrentDirectory + "/parameters.txt", true);
                    string       temp = sr.ReadToEnd();
                    parameters = new List <string> (temp.Split('\n'));
                    sr.Close();
                }

                StreamWriter sw = new StreamWriter(Application.streamingAssetsPath + "/Subsets/parameters.txt", true);
                sw.WriteLine(parameters [0]);
                sw.WriteLine(parameters [1]);
                sw.WriteLine(parameters [2]);
                sw.Close();

                lvlNumberToGenerate = int.Parse(parameters [0]);
                pigRange            = System.Array.ConvertAll(parameters [2].Split(','), int.Parse);

                parameters.RemoveRange(0, 3);

                LevelSimulator.RunSubsetGenerator();
                LoadNextScene("LevelSelectMenu", false, null);
            }
            else
            {
                LoadNextScene("LevelSelectMenu", false, null);
            }
        }
    }
    // Use this for initialization
    void Start()
    {
        _pigs           = new List <ABPig>();
        _birds          = new List <ABBird>();
        _birdTrajectory = new List <ABParticle>();
        _levelCleared   = false;
        CurrentLevel    = LevelList.Instance.GetCurrentLevel();
        _levelLoader    = new LevelLoader();
        trajectory      = new List <ObjTrack>();
//		subsetList = new Dictionary<int,SubsetInfo> ();



        if (!_isSimulation)
        {
            GetComponent <AudioSource>().PlayOneShot(_clips[0]);
            GetComponent <AudioSource>().PlayOneShot(_clips[1]);
        }

        // If there are objects in the scene, use them to play
        if (_blocksTransform.childCount > 0 || _birdsTransform.childCount > 0)
        {
            foreach (Transform bird in _birdsTransform)
            {
                AddBird(bird.GetComponent <ABBird>());
            }

            foreach (Transform block in _blocksTransform)
            {
                ABPig pig = block.GetComponent <ABPig>();
                if (pig != null)
                {
                    _pigs.Add(pig);
                }
            }
        }
        else
        {
//            ABLevel currentLevel = LevelList.Instance.GetCurrentLevel();


            //ABLG!!
            //Randomize first subset position
            if (LevelSimulator.generateLevel)
            {
//				LevelSimulator.ChangeSubsetPosition (currentLevel, UnityEngine.Random.Range (-2f, 2f), UnityEngine.Random.Range (-1f, 2f));
                Vector2 temp = new Vector2(-4f, 1f);
                LevelSimulator.ChangeSubsetPosition(CurrentLevel, temp.x, temp.y);
                AddSubsetIntoList(0, CurrentLevel, temp);
            }
            //


            if (CurrentLevel != null)
            {
                DecodeLevel(CurrentLevel);
                AdaptCameraWidthToLevel();
                _levelTimesTried        = 0;
                _slingshotBaseTransform = GameObject.Find("slingshot_base").transform;
            }
        }

        if (_isSimulation)
        {
            Time.timeScale = 2;
        }
    }
Exemple #6
0
    // Use this for initialization
    void Start()
    {
        _pigs           = new List <ABPig>();
        _birds          = new List <ABBird>();
        _birdTrajectory = new List <ABParticle>();
        _levelLoader    = new LevelLoader();
        _levelCleared   = false;
        CurrentLevel    = LevelList.Instance.GetCurrentLevel();
        levelLoader     = new LevelLoader();

        positions       = new List <Vector2>();
        positionSubsets = new List <Vector2>();
        levelSubsets    = new List <int>();
        groundIndex     = new List <int>();


        if (!_isSimulation)
        {
            GetComponent <AudioSource>().PlayOneShot(_clips[0]);
            GetComponent <AudioSource>().PlayOneShot(_clips[1]);
        }

        // If there are objects in the scene, use them to play
        if (_blocksTransform.childCount > 0 || _birdsTransform.childCount > 0)
        {
            foreach (Transform bird in _birdsTransform)
            {
                AddBird(bird.GetComponent <ABBird>());
            }

            foreach (Transform block in _blocksTransform)
            {
                ABPig pig = block.GetComponent <ABPig>();
                if (pig != null)
                {
                    _pigs.Add(pig);
                }
            }
        }
        else
        {
            ABLevel currentLevel = LevelList.Instance.GetCurrentLevel();


            //ABLG!!
            //Randomize first subset position
            if (LevelSimulator.generateLevel)
            {
                LevelSimulator.ChangeSubsetPosition(currentLevel, UnityEngine.Random.Range(-2, 2), UnityEngine.Random.Range(-3, 2));
            }
            //


            if (currentLevel != null)
            {
                DecodeLevel(currentLevel);

                //ABLG!!
                //generateLevel
                if (LevelSimulator.generateLevel)
                {
                    GenerateLevel();
                }
                //

                AdaptCameraWidthToLevel();
                _levelTimesTried        = 0;
                _slingshotBaseTransform = GameObject.Find("slingshot_base").transform;
            }
        }

        if (_isSimulation)
        {
            Time.timeScale = 100;
        }
    }
        private LevelSimulator NewSubjectUnderTest()
        {
            var simulator = new LevelSimulator(ComponentManagerFactory);

              return simulator;
        }