private void AnimationEventBigFly() { Vector3 SummonDistance = new Vector3(0, -0.2f, 0) + transform.position; AttackFly fly = level.manager.GenerateGameObjectInCurrentRoom(attackFly, SummonDistance); fly.SetMaxHP(10); fly.transform.localScale *= 1.2f; flyList.Add(fly); }
private void AnimationEventSummonFlies() { int count = UnityEngine.Random.Range(2, 5); Vector3 SummonDistance = new Vector3(0, -0.2f, 0); for (int i = 0; i < count; i++) { //扇形分布 Vector3 RotateAxis = i % 2 == 0 ? Vector3.forward : -Vector3.forward; float angle = 45 * ((i / 2) + 1); Vector3 SummonPosition = Quaternion.AngleAxis(angle, RotateAxis) * SummonDistance + transform.position; AttackFly fly = level.manager.GenerateGameObjectInCurrentRoom(attackFly, SummonPosition); flyList.Add(fly); } }