Beispiel #1
0
    /*
     * Randomly select a type of scenario to generate from all of the options given in the Editor.
     */
    private void CreateScenarios()
    {
        for (int i = 0; i < numberOfScenariosToGenerate; i++)
        {
            int             randomScenarioIndex = UnityEngine.Random.Range(0, possibleScenarios.Count);
            ScenarioManager selectedScenario    = possibleScenarios[randomScenarioIndex];
            selectedScenario.centralLocation = new Vector3(i * spacingBetweenScenarios, 0.0f, 0.0f);
            selectedScenario.BuildScenario();

            // TODO:
            // Use randomly selected scenario index
        }
    }
Beispiel #2
0
    /*
     * Helps perform steps for building any specific scenario
     */
    private void BuildSpecificScenario <T>() where T : ScenarioManager
    {
        for (int i = 0; i < numberOfScenariosToGenerate; i++)
        {
            GameObject scenarioParent = new GameObject();
            scenarioParent.name = "ScenarioSpecific" + i;
            scenarioParent.transform.position = new Vector3(spacingBetweenScenarios * i, 0, 0);

            ScenarioManager currentScenario = scenarioManager.GetComponent <T>();
            //ScenarioManager testScenario = new < T >;
            //Type s1 = typeof(T);
            //ScenarioManager testtesttest = new T();
            //ScenarioManager rampTest = new RampBasicScenario();
            currentScenario.SetScenarioParent(scenarioParent);
            currentScenario.SetScenarioWidth(scenarioWidth);
            currentScenario.SetScenarioLength(spacingBetweenScenarios);
            currentScenario.SetRNG(psuedoRandom);
            currentScenario.BuildScenario();
        }
    }