コード例 #1
0
    // Update is called once per frame
    void Update()
    {
        if (restart)
        {
            if (Input.GetKeyDown(KeyCode.R))
            {
                SceneManager.LoadScene(SceneManager.GetActiveScene().name);
            }
        }

        if ((MyERC.getGameOver() || (failures > maxFailures)) && DataHolder.instance.nRestarts >= 1)
        {
            peopleSavedList.Add(peopleSaved);
            peopleNotSavedList.Add(allPeople - peopleSaved);
            allPeopleList.Add(allPeople);

            maxPeopleSaved    = Mathf.Max(maxPeopleSaved, peopleSaved);
            maxPeopleNotSaved = Mathf.Max(maxPeopleNotSaved, allPeople - peopleSaved);

            float rTimes = 0;
            for (var i = 0; i < responseTimes.Count; i++)
            {
                rTimes += responseTimes[i];
            }
            rTimes = rTimes / responseTimes.Count;

            float bRatios = 0;
            for (var i = 0; i < burnedRatio.Count; i++)
            {
                bRatios += burnedRatio[i];
            }
            bRatios = bRatios / burnedRatio.Count;

            DataHolder.instance.SendData(rTimes, peopleSavedList, peopleNotSavedList, allPeopleList, maxResponseTime, maxPeopleSaved, maxPeopleNotSaved, Time.time - runningTime, bRatios, ImpossibleEmergencies, MyERC.wastedAmbulances, MyERC.wastedFiretrucks);


            if (DataHolder.instance.nRestarts == 1)
            {
                DataHolder.instance.WriteFile();
                restart           = true;
                gameOverText.text = "Simulation Failed!";
                restartText.text  = "Press 'R' for Restart";
                Time.timeScale    = 0;
                DataHolder.instance.nRestarts--;
            }
            else
            {
                DataHolder.instance.nRestarts--;
                RestartAll();
            }
        }

        //else if ((MyERC.getGameOver() || (failures > maxFailures)) && DataHolder.instance.nRestarts == 1)
        //{
        //    peopleSavedList.Add(peopleSaved);
        //    peopleNotSavedList.Add(allPeople - peopleSaved);
        //    allPeopleList.Add(allPeople);

        //    maxPeopleSaved = Mathf.Max(maxPeopleSaved, peopleSaved);
        //    maxPeopleNotSaved = Mathf.Max(maxPeopleNotSaved, allPeople - peopleSaved);

        //    float rTimes = 0;
        //    for (var i = 0; i < responseTimes.Count; i++)
        //    {
        //        rTimes += responseTimes[i];
        //    }
        //    rTimes = rTimes / responseTimes.Count;

        //    float bRatios = 0;
        //    for (var i = 0; i < burnedRatio.Count; i++)
        //    {
        //        bRatios += burnedRatio[i];
        //    }
        //    bRatios = bRatios / burnedRatio.Count;

        //    DataHolder.instance.SendData(rTimes, peopleSavedList, peopleNotSavedList, allPeopleList, maxResponseTime, maxPeopleSaved, maxPeopleNotSaved, Time.time - runningTime, bRatios, ImpossibleEmergencies, MyERC.wastedAmbulances, MyERC.wastedFiretrucks);
        //    DataHolder.instance.WriteFile();
        //    restart = true;
        //    gameOverText.text = "Simulation Failed!";
        //    restartText.text = "Press 'R' for Restart";
        //    Time.timeScale = 0;
        //    DataHolder.instance.nRestarts--;
        //}
    }