コード例 #1
0
ファイル: Boss.cs プロジェクト: LeanRodriguez98/Eterjam2019
 override public void Movement()
 {
     if (playerReference != null)
     {
         if (Vector3.Distance(transform.position, playerReference.transform.position) < targetDistance)
         {
             if (Vector3.Distance(transform.position, playerReference.transform.position) < meleDistance)
             {
                 if (!canAttack)
                 {
                     canAttack = true;
                     if (transform.position.x < playerReference.gameObject.transform.position.x)
                     {
                         directionAttack = DirectionAttack.Right;
                         animator.SetTrigger("AttackRight");
                     }
                     if (transform.position.x > playerReference.gameObject.transform.position.x)
                     {
                         directionAttack = DirectionAttack.Left;
                         animator.SetTrigger("AttackLeft");
                     }
                 }
             }
             else
             {
                 if (!canAttack)
                 {
                     if (transform.position.x > playerReference.gameObject.transform.position.x)
                     {
                         gameObject.transform.position -= transform.right * stats.speedMovement * Time.deltaTime;
                     }
                     if (transform.position.x < playerReference.gameObject.transform.position.x)
                     {
                         gameObject.transform.position += transform.right * stats.speedMovement * Time.deltaTime;
                     }
                 }
             }
         }
     }
 }
コード例 #2
0
ファイル: Controller.cs プロジェクト: Inlight2/heartPump
    private void DoMovement()
    {
        _translateX = Input.GetAxis(_myID + ": Horizontal") * _speed * Time.deltaTime;
        _translateY = Input.GetAxis(_myID + ": Vertical") * _speed * Time.deltaTime;

        _myTransform.Translate(_translateX, _translateY, 0);

        #region Movement Constraints
        if (_myTransform.position.x >= RIGHT_X_CONSTRAINT)
        {
            _myTransform.position = new Vector3(RIGHT_X_CONSTRAINT, _myTransform.position.y, _myTransform.position.z);
        }

        if (_myTransform.position.x <= LEFT_X_CONSTRAINT)
        {
            _myTransform.position = new Vector3(LEFT_X_CONSTRAINT, _myTransform.position.y, _myTransform.position.z);
        }

        if (_myTransform.position.y >= UP_Y_CONSTRAINT)
        {
            _myTransform.position = new Vector3(_myTransform.position.x, UP_Y_CONSTRAINT, _myTransform.position.z);
        }

        if (_myTransform.position.y <= DOWN_Y_CONSTRAINT)
        {
            _myTransform.position = new Vector3(_myTransform.position.x, DOWN_Y_CONSTRAINT, _myTransform.position.z);
        }
        #endregion

        #region Grab Direction
        if (Input.GetAxis(_myID + ": Horizontal") > 0f)
        {
            myDirection = Direction.Right;
            myDirectAttack = DirectionAttack.Right;
        }
        else if (Input.GetAxis(_myID + ": Horizontal") < 0f)
        {
            myDirection = Direction.Left;
            myDirectAttack = DirectionAttack.Left;
        }
        else if (Input.GetAxis(_myID + ": Vertical") > 0f)
        {
            myDirection = Direction.Up;
        }
        else if (Input.GetAxis(_myID + ": Vertical") < 0f)
        {
            myDirection = Direction.Down;
        }
        #endregion
    }