我有一个附有ZombieController脚本的Zombie Controller GameObject。它使用以下函数来生成一个僵尸。我的主人可以看到僵尸,但客户端不能。
void Update() {
slider.onValueChanged.AddListener(delegate { ValueChangeCheck(); });
int spawnPointNumber = Random.Range(0, spawnPoints.Length); // exclusive of maximum
spawnTimer += Time.deltaTime;
if (spawnTimer > spawnWaitTime) {
GameObject spawnPoint = spawnPoints[spawnPointNumber];
Vector3 worldSpawnPosition = spawnPoint.transform.position;
if (zombiesLeft < maxZombies) {
CmdSpawnZombie(worldSpawnPosition);
}
spawnTimer = 0f;
}
}
[Command]
private void CmdSpawnZombie(Vector3 worldSpawnPosition) {
int zombieNumber = Random.Range(0, zombiePrefabs.Length);// exclusive of maximum
zombiePrefab = zombiePrefabs[zombieNumber];
GameObject zombie = Instantiate(zombiePrefab, worldSpawnPosition, Quaternion.identity);
zombie.transform.SetParent(this.gameObject.transform);
zombie.gameObject.name = zombiePrefab.gameObject.name;
zombiesLeft++;
NetworkServer.Spawn(zombie);
}
ZombieController.cs继承了NetworkBehaviour。
ZombieController和所有zombiePrefabs都附有网络标识(不勾选勾选框)。 zombiePrefabs也有网络转换(显然网络发送速率应该在这里设置为0?我尝试过非零,但仍然无效)
zombiePrefabs(甚至僵尸控制器)附加到网络管理器'Registered Spawnable Prefabs'
我检查了客户端层次结构,僵尸肯定不会产生! 我不知道还有什么可以尝试的。 任何帮助都会很棒! 谢谢你们