private void OnTriggerEnter(Collider other) { TransportableByConveyor transportableByConveyor = null; if (other.gameObject.TryGetComponent(out transportableByConveyor)) { if (other.GetComponent <PhotonView>().IsMine) { PhotonNetwork.Destroy(other.gameObject); } } }
private void Awake() { _newPosition = transform.position; _renderer = GetComponent <Renderer>(); _networkController = GameObject.FindGameObjectWithTag("NetworkController").GetComponent <NetworkController>(); _gameController = GameObject.FindGameObjectWithTag("GameController").GetComponent <GameController>(); _transportableByConveyor = GetComponent <TransportableByConveyor>(); _photonView = GetComponent <PhotonView>(); Rigidbody = GetComponent <Rigidbody>(); _collider = GetComponent <Collider>(); _outline = GetComponent <Outline>(); _audioSource = GetComponent <AudioSource>(); }
private void OnCollisionExit(Collision collision) { TransportableByConveyor transportableByConveyor = null; Rigidbody rigidbody = null; if (collision.gameObject.TryGetComponent(out transportableByConveyor) && collision.gameObject.TryGetComponent(out rigidbody)) { if (objectsOnConveyor.ContainsKey(transportableByConveyor)) { objectsOnConveyor[transportableByConveyor].NumberOfTimeOnConveyor = objectsOnConveyor[transportableByConveyor].NumberOfTimeOnConveyor - 1; Debug.Log($"{collision.gameObject.name} has left the conveyor. ({objectsOnConveyor[transportableByConveyor].NumberOfTimeOnConveyor})"); if (objectsOnConveyor[transportableByConveyor].NumberOfTimeOnConveyor == 0) { transportableByConveyor.RemoveConveyor(this); objectsOnConveyor.Remove(transportableByConveyor); } } } }
private void OnCollisionEnter(Collision collision) { TransportableByConveyor transportableByConveyor = null; Rigidbody rigidbody = null; if (collision.gameObject.TryGetComponent(out transportableByConveyor) && collision.gameObject.TryGetComponent(out rigidbody)) { if (!objectsOnConveyor.ContainsKey(transportableByConveyor)) { objectsOnConveyor[transportableByConveyor] = new ConveyorObjectData() { NumberOfTimeOnConveyor = 0, Rigidbody = rigidbody, TransportableByConveyor = transportableByConveyor }; transportableByConveyor.AddConveyor(Priority, this); } objectsOnConveyor[transportableByConveyor].NumberOfTimeOnConveyor = objectsOnConveyor[transportableByConveyor].NumberOfTimeOnConveyor + 1; Debug.Log($"{collision.gameObject.name} has entered the conveyor. ({objectsOnConveyor[transportableByConveyor].NumberOfTimeOnConveyor})"); } }