Files
unity-iso-tools/Assets/IsoTools/Examples/Scripts/Kenney/AlienBallController.cs
2016-11-27 05:47:38 +07:00

39 lines
1014 B
C#

using UnityEngine;
using IsoTools.Physics;
using System.Collections;
namespace IsoTools.Examples.Kenney {
[RequireComponent(typeof(IsoRigidbody))]
public class AlienBallController : MonoBehaviour {
IsoObject _isoObject = null;
IsoRigidbody _isoRigidbody = null;
void Start() {
_isoObject = GetComponent<IsoObject>();
if ( !_isoObject ) {
throw new UnityException("AlienBallController. IsoObject component not found!");
}
_isoRigidbody = GetComponent<IsoRigidbody>();
if ( !_isoRigidbody ) {
throw new UnityException("AlienBallController. IsoRigidbody component not found!");
}
StartCoroutine(AddRndForce());
}
void Update() {
if ( _isoObject.positionZ < 0.0f ) {
Destroy(gameObject);
}
}
IEnumerator AddRndForce() {
while ( true ) {
var dx = Random.Range(-2.0f, 2.0f);
var dy = Random.Range(-2.0f, 2.0f);
_isoRigidbody.AddForce(new Vector3(dx, dy, 0.0f), ForceMode.Impulse);
yield return new WaitForSeconds(1);
}
}
}
}