Esempio n. 1
0
    void Update()
    {
        switch (CurrentState)
        {
        case PatrollerState.MovingRight:
            if (_ledgeCheckRight.isApproachingLedge || _wallCheckRight.isApproachingWall)
            {
                CurrentState = PatrollerState.MovingLeft;
            }

            spriteRenderer.transform.localScale = new Vector3(Mathf.Abs(spriteSize), spriteSize);
            //TODO Make Moving better
            transform.position = new Vector3(transform.position.x + _moveSpeed, transform.position.y, 0);
            break;

        case PatrollerState.MovingLeft:
            if (_ledgeCheckLeft.isApproachingLedge || _wallCheckLeft.isApproachingWall)
            {
                CurrentState = PatrollerState.MovingRight;
            }

            spriteRenderer.transform.localScale = new Vector3(-Mathf.Abs(spriteSize), spriteSize);
            //TODO Make Moving better
            transform.position = new Vector3(transform.position.x - _moveSpeed, transform.position.y, 0);
            break;
        }
    }
Esempio n. 2
0
    void Start()
    {
        int rand = Random.Range(0, 2);

        if (rand == 1)
        {
            CurrentState = PatrollerState.MovingLeft;
        }
        else
        {
            CurrentState = PatrollerState.MovingRight;
        }
    }