コード例 #1
0
    private void OnTriggerExit2D(Collider2D collision)
    {
        GregorController gregor = collision.GetComponent <GregorController>();

        if (gregor != null)
        {
            gregor.ResetMovementSpeed();
        }
    }
コード例 #2
0
    private void OnTriggerEnter2D(Collider2D collision)
    {
        GregorController gregor = collision.GetComponent <GregorController>();

        if (gregor != null)
        {
            gregor.ChangeMovementSpeed(slowAmount);
        }
    }
コード例 #3
0
    // Start is called before the first frame update
    void Start()
    {
        _interactCheckVisual = interactCheck.GetComponent <SpriteRenderer>();
        _ledgeCheckVisual    = ledgeCheck.GetComponent <SpriteRenderer>();

        waterQuantity = 0;
        water         = false;
        collectWater  = false;

        _waterParticles   = GetComponentInChildren <ParticleSystem>();
        _animator         = GetComponent <Animator>();
        _gregorController = GetComponent <GregorController>();
    }
コード例 #4
0
    //if collider is entered, BOOST the gameobject up!
    void OnTriggerEnter2D(Collider2D other)
    {
        Rigidbody2D rigidBody = other.GetComponent <Rigidbody2D>();

        GregorController gregor = other.GetComponent <GregorController>();

        // if gregor is getting boosted, he only is boosted if he is in the air (NOT if he just runs into it)
        bool gregorGrounded = false;

        if (gregor != null)
        {
            gregorGrounded = gregor.IsGrounded();
        }

        if (rigidBody != null && !gregorGrounded && !_delayBoosting)
        {
            _boost    = true;
            _boosting = rigidBody;

            // short delay so that multiple boost plants can't launch gregor into space
            _delayBoosting = true;
        }
    }