Exemplo n.º 1
0
    // Start is called before the first frame update
    void Start()
    {
        startScript  = GameObject.Find("StartManager").GetComponent <StartLogic>();
        blobNumber   = startScript.blobs;
        initialSpeed = (float)startScript.initialSpeed;
        initialRange = startScript.range;

        for (int i = 1; i <= blobNumber; i++)
        {
            currentObject = Instantiate(blobPrefab);

            BlobLogic blobScript = currentObject.GetComponent <BlobLogic>();
            blobScript.speed = initialSpeed;
            blobScript.range = (int)initialRange;

            int ran = Random.Range(0, 2);
            if (ran == 0)
            {
                ran = Random.Range(0, 2);
                if (ran == 0)
                {
                    x = 45;
                    z = Random.Range(45, -46);
                }
                else
                {
                    x = -45;
                    z = Random.Range(45, -46);
                }
            }
            else
            {
                ran = Random.Range(0, 2);
                if (ran == 0)
                {
                    z = 45;
                    x = Random.Range(45, -46);
                }
                else
                {
                    z = -45;
                    x = Random.Range(45, -46);
                }
            }

            currentObject.transform.position = new Vector3(x, 2.5f, z);
        }

        originalBlobText.text = "Original Count: " + blobNumber.ToString();

        initialSpeedText.text = "Initial Speed: " + initialSpeed.ToString();

        initialRangeText.text = "Initial Detection Range: " + initialRange.ToString();


        averageSpeed = initialSpeed;

        averageRange = initialRange;
    }
 public string InitControllersLayer()
 {
     return(StartLogic.StartProgect());
 }
Exemplo n.º 3
0
    // Start is called before the first frame update
    void Start()
    {
        StartLogic startScript = GameObject.Find("StartManager").GetComponent <StartLogic>();

        foodNumber = startScript.food;
    }
Exemplo n.º 4
0
    // Start is called before the first frame update
    void Start()
    {
        startScript   = GameObject.Find("StartManager").GetComponent <StartLogic>();
        sensor        = GetComponentInChildren <SphereCollider>();
        sensor.radius = range / 2;

        spawnScript  = GameObject.Find("GameManager").GetComponent <BlobSpawn>();
        initialSpeed = spawnScript.initialSpeed;
        initialRange = spawnScript.initialRange;

        currentMat = GetComponent <Renderer>().material;

        direction = (new Vector3(Random.Range(-1.0f, 1.0f), 0.0f, Random.Range(-1.0f, 1.0f))).normalized;

        foodCount = 1.0;

        startColor = new Color(1f, 0f, 0f, 1f);

        if (speed <= 0)
        {
            startColor.r = 0f;
        }
        else if (speed <= initialSpeed)
        {
            startColor.r = (speed / initialSpeed);
            if (range <= initialRange)
            {
                startColor.g = 1 - (range / initialRange);
            }
            else if (range > initialRange)
            {
                startColor.b = (range / initialRange) - 1;
            }
        }
        else if (speed <= (initialSpeed * 2) - 2)
        {
            startColor.g = 1 - (initialSpeed / speed);
            startColor.b = 1 - (initialSpeed / speed);
            if (range <= initialRange)
            {
                startColor.g = 1 - (range / initialRange);
            }
            else if (range > initialRange)
            {
                startColor.b = (range / initialRange) - 1;
            }
        }
        else if (speed > (initialSpeed * 2) - 2)
        {
            startColor.g = 1 - (initialSpeed / ((initialSpeed * 2) - 2));
            startColor.b = 1 - (initialSpeed / ((initialSpeed * 2) - 2));

            if (range <= initialRange)
            {
                startColor.g = 1 - (range / initialRange);
            }
            else if (range > initialRange)
            {
                startColor.b = (range / initialRange) - 1;
            }
        }

        currentMat.color = startColor;


        if (startScript.stamina == true)
        {
            foodPercentage = 1 / (speed / initialSpeed);
        }
        else
        {
            foodPercentage = 1;
        }
    }