Unet Spawn Prefabs When Scenes Changes
I am extending the Network Manager script in an attempt to spawn enemy prefabs at specified locations on my scene. In my scene I have a game object name "meta_enemies" that contains child GameObjects with transforms that serve as spawn points for enemies. I would like to spawn enemies on the server when the scene loads, but I cannot call NetworkServer.spawn from my network manager script.
Here is my Network Manager:
using UnityEngine;
using UnityEngine.Networking;
using System.Collections;
public class CustomNetworkManager : NetworkManager {
// Overide Functions _________________________________________________________
public override void OnStartServer()
{
base.OnStartServer();
autoCreatePlayer = true;
}
public override void OnServerSceneChanged(string sceneName)
{
base.OnServerSceneChanged(sceneName);
GameObject enemies = GameObject.Find("meta_enemies");
foreach (Transform child in enemies.transform) {
if (child.name == "imp")
{
//Spawn imp enemies @ transform position
}
print("Foreach loop: " + child);
}
}
//___________________________________________________________________________
}
Here are my questions:
How should I spawn enemies when the scenes change?
How do specify with prefab I spawn from the list of spawnable prefabs?
Your answer
Follow this Question
Related Questions
The Unity version determines the hierarchical order of the Scenes 0 Answers
Unity Mirror - Player prefab rotation not syncronised on client 0 Answers
NetworkTransform did not working with RegisterSpawnHandlers 2 Answers
using GO with NetworkIdentity in offline scene (fight auto disabling) 0 Answers
Problem spawning prefabs client side, stand alone build. 0 Answers