Created
October 3, 2015 14:55
-
-
Save mzandvliet/5d31f84394608c9f5ba4 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
private void OnClientAddPlayer(NetworkMessage netmsg) { | |
var msg = netmsg.ReadMessage<AddPlayerMessage>(); | |
Debug.Log("Spawning object for player: " + msg.playerControllerId); | |
/* First, create instance and spawn it */ | |
var instance = (GameObject)Instantiate(_playerPrefab, Vector3.zero, Quaternion.identity); | |
NetworkServer.AddPlayerForConnection(netmsg.conn, instance, msg.playerControllerId); | |
/* Then add role-specific components and resolve dependencies, if prefab needs it */ | |
var simulator = instance.GetComponent<PlayerSimulation>(); | |
simulator.GameClockFixed = _gameClockFixed; | |
var network = instance.GetComponent<PlayerNetwork>(); | |
var server = instance.AddComponent<PlayerServer>(); | |
server.GameClockFixed = _gameClockFixed; | |
server.GameClock = _gameClock; | |
server.Simulation = simulator; | |
server.Network = network; | |
var dedicated = instance.AddComponent<PlayerDedicated>(); | |
dedicated.Network = network; | |
dedicated.Server = server; | |
instance.name += "_server"; | |
LayerUtil.SetLayerRecursively(instance.transform, LayerMask.NameToLayer("Server")); | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment