Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using UnityEngine;
- using System.Collections;
- using UnityEngine.Networking;
- public class NetworkPlayer : NetworkBehaviour {
- [SyncVar(hook = "OnPlayerIDChanged")] public string playerID;
- Camera playerCam;
- Transform labelHolder;
- void Awake()
- {
- playerCam = GetComponentInChildren<Camera>();
- playerCam.gameObject.SetActive(false);
- labelHolder = transform.Find("LabelHolder");
- }
- [Command]
- void CmdSetPlayerID(string newID)
- {
- playerID = newID;
- }
- public override void OnStartLocalPlayer ()
- {
- string myPlayerID = string.Format("Player {0}", netId.Value);
- CmdSetPlayerID(myPlayerID);
- playerCam.gameObject.SetActive(true);
- }
- public override void OnStartClient ()
- {
- OnPlayerIDChanged(playerID);
- }
- void Update()
- {
- if(isLocalPlayer)
- {
- playerCam.transform.rotation = Quaternion.Euler(new Vector3(90,0,0));
- }
- labelHolder.rotation = Quaternion.identity;
- }
- void OnPlayerIDChanged(string newValue)
- {
- var textMesh = labelHolder.Find("Label").GetComponent<TextMesh>();
- textMesh.text = newValue;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement