Exemple #1
0
    void StartDeath()
    {
        for (int i = 0; i < deathPeopleNumber; ++i)
        {
            GameObject people = Instantiate(deathPeoplePrefab, transform, false) as GameObject;

            float   toAngle = Random.Range(-180f, 0f) * Mathf.Deg2Rad;
            float   range   = circleRadius * Random.Range(0.9f, 1.1f);
            Vector3 toPos   = new Vector3(Mathf.Cos(toAngle), 0.13f, Mathf.Sin(toAngle)) * range;
            people.transform.localPosition = toPos;
            DeathPeople dp = people.GetComponent <DeathPeople> ();
            dp.Init(transform.position, transform, range + 0.1f);
        }

        for (int i = 0; i < deathPeopleNumber / 5; ++i)
        {
            GameObject people = Instantiate(deathPeoplePrefab, transform, false) as GameObject;

            float   toAngle = Random.Range(0f, 270f) * Mathf.Deg2Rad;
            float   range   = circleRadius * Random.Range(0.9f, 1.1f);
            Vector3 toPos   = new Vector3(Mathf.Cos(toAngle), 0.13f, Mathf.Sin(toAngle)) * range;
            people.transform.localPosition = toPos;
            DeathPeople dp = people.GetComponent <DeathPeople> ();
            dp.Init(transform.position, transform, range + 0.1f);
        }
    }
Exemple #2
0
//	void StartDeath()
//	{
//		StartCoroutine (CreatePeople());
//	}

    IEnumerator CreatePeople()
    {
        for (int i = 0; i < deathPeopleNumber; ++i)
        {
            Random.InitState((int)(Time.time * 777));

            GameObject people = Instantiate(deathPeoplePrefab, transform, false) as GameObject;
            float      angle  = Random.Range(-100f, 100f);
            Vector3    pos    = new Vector3(Mathf.Cos(angle) * createRadius, 0, Mathf.Sin(angle) * createRadius);
            people.transform.localPosition = pos;

            float       toAngle = angle + Random.Range(-30f, 30f) * Mathf.Deg2Rad;
            float       range   = circleRadius * Random.Range(0.9f, 1.1f);
            Vector3     toPos   = new Vector3(Mathf.Cos(toAngle) * range, 0, Mathf.Sin(toAngle) * range);
            DeathPeople dp      = people.GetComponent <DeathPeople> ();
            dp.Init(transform.position, transform, range);

            yield return(new WaitForSeconds(createInterval));
        }
    }