2017-04-12 01:23:07 +09:00

30 lines
689 B
C#

using UnityEngine;
[AddComponentMenu("Destructible 2D/D2D Spawn On Collision")]
public class D2D_SpawnOnCollision : MonoBehaviour
{
public float RelativeVelocityRequired = 1.0f;
public GameObject Spawn;
public float SpawnCooldown;
private float cooldownTimer;
protected virtual void OnCollisionEnter2D(Collision2D collision)
{
if (Spawn != null && cooldownTimer <= 0.0f && collision.relativeVelocity.magnitude >= RelativeVelocityRequired)
{
cooldownTimer = SpawnCooldown;
var contact0 = collision.contacts[0];
Instantiate(Spawn, contact0.point, transform.rotation);
}
}
protected virtual void Update()
{
cooldownTimer -= Time.deltaTime;
}
}