protected virtual void OnTriggerEnter(Collider other) { if (other.gameObject.layer == LayerMask.NameToLayer("Area")) { currentArea = other.gameObject.GetComponent <Area>(); OnEnterArea?.Invoke(this, new FrisbeeEventArgs(lastPlayer, currentArea)); } else if (other.gameObject.layer == LayerMask.NameToLayer("Player")) { Player player = other.gameObject.GetComponent <Player>(); player.OnCatchFrisbee(this); } else if (other.gameObject.layer == LayerMask.NameToLayer("Wall")) { Wall wall = other.gameObject.GetComponent <Wall>(); Bounce(wall.BouncingVector); } else if (other.gameObject.layer == LayerMask.NameToLayer("Deadzone")) { FindObjectOfType <GameMatchManager>().Goal(false, 0); } else if (other.gameObject.layer == LayerMask.NameToLayer("Goal")) { var fake = gameObject.GetComponent <FakeFrisbee>(); if (fake == null) { var goal = other.gameObject.GetComponent <Goal>(); OnGoal?.Invoke(this, new FrisbeeGoalEventArgs(goal)); } } }
private void OnTriggerEnter(Collider other) { if (other.gameObject.tag == "cubic") { if (other.TryGetComponent(out Renderer rend)) { rend.material = collectedCubeMat; } other.attachedRigidbody.velocity = (transform.position - other.transform.position) * magnetForce; other.gameObject.layer = 8; OnEnterArea?.Invoke(this); } }
private void EnterArea(params object[] param) { OnEnterArea?.Invoke(param[0]); }