void Start()
 {
     register = transform.parent.GetComponent <AlgaeRegister>();
     prefab   = register.prefab;
     if (active)
     {
         spawn();
     }
 }
 void Start()
 {
     registry = transform.parent.gameObject.GetComponent <BoidRegister>();
     registry.register(this);
     rb             = GetComponent <Rigidbody>();
     chlorine       = registry.maxChlorine;
     power          = registry.maxPower;
     algaeCluster   = registry.algaeCluster;
     chlorineClouds = registry.chlorineClouds;
     boids          = new HashSet <BoidController>();
     cluster        = new HashSet <AlgaeController>();
     clouds         = new HashSet <ChlorineController>();
     closestChunk   = Vector3.zero;
 }
示例#3
0
    public void spawnAlgae()
    {
        float pondRadius = pondSize / 2;

        register = GetComponent <AlgaeRegister>();
        register.purge();
        offset      = new Vector3(pondRadius, pondRadius, pondRadius);
        pondRadius -= 10;
        for (int i = 0; i < numberOfClusters; i++)
        {
            Vector3 clusterPostion = Random.insideUnitSphere * pondRadius;
            for (int j = 0; j < averageAlgaePerCluster; j++)
            {
                Vector3    algaePosition = Random.insideUnitSphere * clusterSize;
                GameObject algae         = (GameObject)Instantiate(prefab, clusterPostion + algaePosition + offset, Quaternion.identity);
                algae.transform.parent = transform;
            }
        }
    }
 void Start()
 {
     registry = transform.parent.gameObject.GetComponent <AlgaeRegister>();
     registry.register(this);
 }