Exemple #1
0
 void OnTriggerEnter2D(Collider2D other)
 {
     if (other.CompareTag("zipline") && Time.time - _lastFinishTime > _minTimeOffset)
     {
         _onZipline = true;
         ZiplineBar ziplineBarScript = other.GetComponentInParent <ZiplineBar>();
         _target                     = ziplineBarScript.getEndPos();
         _target.z                   = transform.position.z;
         _saveGravityScale           = _rb.gravityScale;
         _betterJumpScript.enabled   = false;
         _movementController.enabled = false;
         _boxCollider2D.enabled      = false;
         _rb.gravityScale            = 0.0f;
         _rb.velocity                = Vector2.zero;
     }
 }
Exemple #2
0
    void Update()
    {
        if (Input.GetButtonDown("Fire1") && _inPlacement && _target != null && movementController.grounded())
        {
            _inPlacement = false;
            _endZiplineBarScript.setSpriteStatus(ZiplineBar.ZiplineStatus.Normal);
            _startZiplineBarScript.setSpriteStatus(ZiplineBar.ZiplineStatus.Normal);
            _startZiplineBarScript.confirmCreation();
            _startZiplineInst      = null;
            _endZiplineInst        = null;
            _startZiplineBarScript = null;
            _endZiplineBarScript   = null;
        }
        else if (Input.GetButtonDown("Skill1"))
        {
            _inPlacement = !_inPlacement;
            if (_inPlacement)
            {
                updateWorldPos();

                // instanciate start ziplineBar
                _startZiplineInst = Instantiate(zipline);
                _startZiplineInst.transform.position = new Vector3(transform.position.x, transform.position.y - _startYOffset, transform.position.z - 1.0f);
                _startZiplineBarScript = _startZiplineInst.GetComponent <ZiplineBar>();
                _startZiplineBarScript.setSpriteStatus(ZiplineBar.ZiplineStatus.Valid);

                // instanciate end ziplineBar
                _endZiplineInst = Instantiate(zipline);
                _endZiplineInst.transform.position = new Vector3(_worldPos.x, _worldPos.y, _worldPos.z - 1.0f);
                _endZiplineBarScript = _endZiplineInst.GetComponent <ZiplineBar>();
                _endZiplineBarScript.setSpriteStatus(ZiplineBar.ZiplineStatus.Valid);

                _startZiplineBarScript.initZipline(_endZiplineInst);
            }
            else
            {
                Destroy(_endZiplineInst);
                Destroy(_startZiplineInst);
                _startZiplineInst = null;
                _endZiplineInst   = null;
            }
        }
    }