销毁功能在Unity4中不起作用

时间:2013-06-30 05:43:03

标签: unity3d unityscript

我有一些我正在编写的书中的代码,但它是为Unity3编写的,虽然我正在尝试的东西似乎不起作用,并且想把它放在这里以获得一些新的眼睛:

function destroyPlayer(dpos : Vector3)
{  
   var plDeath : GameObject = Instantiate(playerDeathObj, dpos,   playerDeathObj.transform.rotation) as GameObject; 
   plDeath.animation["death"].speed = 3.5;
   yield WaitForSeconds(0.5);   
   Destroy(plDeath);    

}

所以,如果我拿出收益率,你看不到播放的动画,但它确实被清除了。虽然现在看动画播放然后坚持。   这是书中的代码

http://www.deeppixel.com/unity3d-indie-developers-blueprints-book-training/

没有看到任何更新,Errata想知道是否有人有什么建议要尝试?

2 个答案:

答案 0 :(得分:3)

此函数返回一个枚举器,因此它应该用作coroutine

如果您只是调用它,那么在执行yield语句之前的所有内容都将被执行,然后该函数将被暂停直到下一次调用。

答案 1 :(得分:0)

我实际上最终使用了Destroy采取另一个参数来销毁对象的事实,所以我删除了yield并做了这个:

Destroy(plDeath, 0.5);

并且它有效,请不确定为什么不首先出现这个?