Exemplo n.º 1
0
    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();
    }
Exemplo n.º 2
0
    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;
    }