我正在使用Stickybombs在Unity中制作一个小游戏。我做到这一点,当你按下右键单击时,粘性炸弹爆炸,自我毁灭,并实例化爆炸的粒子效果。以下是代码:
void Update () {
if(Input.GetButtonDown("Fire2")) {
GetComponent<Rigidbody>().isKinematic = false;
GetComponent<Rigidbody>().AddExplosionForce(explosionForce, transform.position, explosionRadius, 3.0f);
Destroy(gameObject);
Instantiate (Explosion, transform.position, new Quaternion(0, 0, 0, 0));
}
}
然而,行GetComponent()。AddExplosionForce(explosionForce,transform.position,explosionRadius,3.0f);没有做任何事情。我做错了吗?
这是变量。提前致谢:D
public GameObject Explosion;
private float explosionForce = 300;
private float explosionRadius = 15f;
&#13;
答案 0 :(得分:0)
我之前的评论,转换为答案:
不知道它是否可以提供帮助,但是一旦调用AddExplosionForce
就会销毁该对象。这样,您就没有时间模拟爆炸效果,因为对象会立即被破坏。你有没有试过删除Destroy()
电话,看看有什么好吃的?
旁注:我建议最后调用Destroy()
函数,并使用延迟作为示例。