public class Spawner : Monobehaviour
{
public GameObject playerPrefab;
public void spawn()
{
Instantiate(playerPrefab, spawnPosition, spawnRotation);
}
}
然后,当你的 Player 死亡时,你可以 SendMessage 到 Spawner 类 .
public class Player : MonoBehaviour
{
void Update()
{
if(hp <= 0)
{
// Grab the reference to the Spawner class.
GameObject spawner = GameObject.Find("Spawner");
// Send a Message to the Spawner class which calls the spawn() function.
spawner.SendMessage("spawn");
Destroy(gameObject);
}
}
}
UnityScript 中的相同代码
Spawner.js
var playerPrefab : GameObject;
function spawn()
{
Instantiate(playerPrefab, spawnPosition, spawnRotation);
}
Player.js
function Update()
{
if(hp <= 0)
{
// Grab the reference to the Spawner class.
var spawner : GameObject = GameObject.Find("Spawner");
// Send a Message to the Spawner class which calls the spawn() function.
spawner.SendMessage("spawn");
Destroy(gameObject);
}
}
1 回答
有一个类从预制件每几秒钟实例化一次 . 您需要通过编辑器拖动
playerPrefab
,然后您需要指定生成的位置 .然后,当你的
Player
死亡时,你可以SendMessage
到Spawner
类 .UnityScript
中的相同代码Spawner.js
Player.js