1
我試圖在每次調用NewSpawn()時實例化一個殭屍預製件,這是當reSpawn變量變爲'true'(通過檢查器)時。但是,一旦我實例化了一個殭屍,它會對殭屍的無限循環進行無限循環。 [克隆克隆克隆]如何限制每個方法調用一個殭屍實例化? (我想打10個殭屍,而不是10,000。 謝謝! Unity:GameObject反覆實例化問題
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class Zombie : MonoBehaviour {
public GameObject zombiePrefab;
public Transform zombieSpawnPoint;
private Transform[] spawnPositions;
public bool reSpawn = false;
private bool lastToggle = false;
// Use this for initialization
void Start() {
spawnPositions = zombieSpawnPoint.GetComponentsInChildren<Transform>();
}
private void NewSpawn() //spawn location of newZombie
{
Instantiate(zombiePrefab, transform.position, transform.rotation);
int i = Random.Range(1, spawnPositions.Length);
transform.position = spawnPositions[i].transform.position;
}
void Update() { //T-toggle
if (reSpawn != lastToggle)
{
NewSpawn();
reSpawn = false;
}
else
lastToggle = reSpawn;
}
}
好了,想通了,它這是因爲被實例化的預製具有殭屍腳本。當我刪除它時,它被單例化。但是,我遇到了殭屍預製不接受場景的玩家變換的問題,並且當我將玩家預製時,他們不再朝着玩家跑去。我如何讓殭屍向玩家預製的殭屍奔跑,而不是玩家場景? – BenSmith
@BenSmith這是一個完全不同的話題。考慮爲此提出一個新問題。我會盡力幫助你。 – Deadzone