Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.Collections;
- using System.Collections.Generic;
- using UnityEngine;
- using Photon.Pun;
- using RenderHeads.Media.AVProVideo;
- public class NetworkedPlayer : MonoBehaviourPunCallbacks
- {
- private GameObject spawnedCameraRig;
- private GameObject menuMenu;
- private GameObject _temp;
- private NetworkManager _name;
- public GameObject body;
- public Transform _playerLocal;
- public Transform _playerGlobal;
- private Vector3 receivedHeadPos;
- private Quaternion receivedHeadRota;
- private GameObject _meshes;
- private GameObject _bodymeshes;
- private Transform leftAnchor;
- private Transform rightAnchor;
- [HideInInspector]
- public bool _visibility = true;
- private GameObject _Sphere;
- private HAL _HAL;
- void Start()
- {
- if (photonView.IsMine)
- {
- _temp = GameObject.Find("NetworkManager");
- _name = _temp.GetComponent<NetworkManager>();
- if (PhotonNetwork.IsMasterClient)
- {
- spawnedCameraRig = (GameObject)Instantiate(Resources.Load("Player" + _name.number + "/Camera_" + _name.number), new Vector3(0f, 0f, 3f), Quaternion.identity);
- menuMenu = (GameObject)Instantiate(Resources.Load("Player" + _name.number + "/MenuPanel"), new Vector3(0f, 0f, 0f), Quaternion.identity);
- menuMenu.transform.SetParent(GameObject.Find("LeftHand_" + _name.number + "(Clone)").transform);
- menuMenu.transform.localPosition = new Vector3(-0.0358f, 0.0321f, 0f);
- _temp = GameObject.Find("Discovery One(Clone)");
- _HAL = _temp.GetComponent<HAL>();
- _HAL._Player1 = true;
- } else if (!PhotonNetwork.IsMasterClient)
- {
- spawnedCameraRig = (GameObject)Instantiate(Resources.Load("Player" + _name.number + "/Camera_" + _name.number), new Vector3(0f, 0f, 0f), Quaternion.identity);
- }
- _meshes = GameObject.Find("Avatar_" + _name.number + "(Clone)/TyTheFinal_Trial/Boy_01_Meshes");
- _bodymeshes = GameObject.Find("Avatar_" + _name.number + "(Clone)/TyTheFinal_Trial/Boy01_UpperBody_Geo1");
- _playerGlobal = GameObject.Find("Camera_" + _name.number + "(Clone)").transform;
- _playerLocal = _playerGlobal.Find("TrackingSpace/CenterEyeAnchor");
- if (_playerLocal == null)
- {
- _playerLocal = _playerGlobal.Find("CenterEyeAnchor");
- }
- _meshes.SetActive(false);
- _bodymeshes.SetActive(false);
- SetParentAndFindStuff();
- }
- }
- void Update()
- {
- if (photonView.IsMine && _visibility == true)
- {
- body = GameObject.Find("Avatar_" + _name.number + "(Clone)");
- body.transform.position = new Vector3(_playerLocal.transform.position.x, _playerLocal.transform.position.y + 0.35f, _playerLocal.transform.position.z);
- }
- }
- public void SetParentAndFindStuff()
- {
- this.transform.parent = null;
- this.transform.SetParent(_playerLocal);
- this.transform.position = Vector3.zero;
- //The meshes disables
- body = GameObject.Find("Avatar_" + _name.number + "(Clone)");
- //Camera rig and place it so it matches with the head of the avatar
- //_playerGlobal = GameObject.Find("Camera_" + _name.number + "(Clone)").transform;
- //_playerLocal = _playerGlobal.Find("TrackingSpace/CenterEyeAnchor");
- //Jazz Hands!
- GameObject[] _hands = new GameObject[2];
- _hands[0] = GameObject.Find("RightHand_" + _name.number + "(Clone)");
- _hands[1] = GameObject.Find("LeftHand_" + _name.number + "(Clone)");
- for (int i = 0; i < _hands.Length; i++)
- {
- switch (i + 1)
- {
- case 1:
- rightAnchor = GameObject.Find("Camera_" + _name.number + "(Clone)/TrackingSpace/RightHandAnchor").transform;
- _hands[i].transform.SetParent(rightAnchor);
- _hands[i].transform.eulerAngles = rightAnchor.transform.position;
- break;
- case 2:
- leftAnchor = GameObject.Find("Camera_" + _name.number + "(Clone)/TrackingSpace/LeftHandAnchor").transform;
- _hands[i].transform.SetParent(leftAnchor);
- _hands[i].transform.eulerAngles = rightAnchor.transform.position;
- break;
- }
- }
- //if (_playerLocal == null)
- //{
- // _playerLocal = _playerGlobal.Find("CenterEyeAnchor");
- //}
- //this.transform.SetParent(_playerLocal);
- //this.transform.position = Vector3.zero;
- }
- private void OnPhotonSerializeView(PhotonStream stream, PhotonMessageInfo info)
- {
- if (stream.IsWriting)
- {
- Debug.Log("im sending alot of data!");
- stream.SendNext(_playerLocal.position);
- stream.SendNext(_playerLocal.rotation);
- }
- else
- {
- Debug.Log("Im receiving alot of data!");
- receivedHeadPos = (Vector3)stream.ReceiveNext();
- receivedHeadRota = (Quaternion)stream.ReceiveNext();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement