|
|
- using UnityEngine;
- using System.Collections;
-
- public class PlayerExplosion : MonoBehaviour {
-
- public float explosionDistance;
- public float explosionTime;
-
- public int fraqAmount = 0;
-
- // Use this for initialization
- void Start () {
-
- foreach (Transform child in transform)
- {
- fraqAmount++;
- StartCoroutine (explosion (child));
- }
-
- }
-
- // Update is called once per frame
- void Update () {
-
- }
-
- IEnumerator explosion(Transform debris){
- Vector3 centre = transform.position;
- Vector3 scaleDirection = debris.position - centre;
- Debug.Log ("Scale Direction" + scaleDirection);
-
- for (float i = 0; i < 1; i += Time.deltaTime/explosionTime) {
- debris.position =centre +( scaleDirection * Mathf.Lerp (1, explosionDistance, i));
-
- yield return null;
- }
-
- fraqAmount--;
-
- if (fraqAmount == 0) {
- Destroy(gameObject,0.0f);
- }
-
- }
- }
|