public void Grab(Yeeter yeeter) { IsHeld = true; LastYeeter = yeeter; this.transform.SetParent(yeeter.ItemMountPoint); this.transform.Reset(); this.transform.localScale = _originalScale; MyCollider.enabled = false; MyRigidbody.simulated = false; MyRigidbody.isKinematic = this._kinematic; OnGrab(); OnGrabCallback?.Invoke(); Debug.Log(this.gameObject.name + " grabbed by " + yeeter.gameObject.name); UpdateLayer(); }
void Awake() { _animator = GetComponent <Animator>(); _controller = GetComponent <RatController>(); _player = GetComponent <RatPlayer>(); _yeeter = GetComponent <Yeeter>(); _ratPlayer = GetComponent <RatPlayer>(); _ratCalculator = GetComponent <RatCalculator>(); _grabbable = GetComponent <Grabbable>(); _grabbable.OnGrabCallback += this.OnGrab; _grabbable.OnReleaseCallback += this.OnRelease; _myRigidbody = GetComponent <Rigidbody2D>(); // listen to some events for illustration purposes _controller.onControllerCollidedEvent += onControllerCollider; _controller.onTriggerEnterEvent += OnTriggerEnterEvent; _controller.onTriggerExitEvent += OnTriggerExitEvent; crownSprite.enabled = false; }