UnitController.Move C# (CSharp) Метод

Move() публичный Метод

public Move ( GameObject dest ) : void
dest GameObject
Результат void
    public void Move(GameObject dest)
    {
        GetComponent<UnitGUIController>().DisableGUI();
        //valid movement, give control to destination
        if(GetComponent<MovementController>().Move(dest))
        {
            m_currentGrid.GetComponent<TnGAttribute>().m_unit = null;
            //give control to destination node
            dest.GetComponent<TnGAttribute>().m_unit = gameObject;
            m_currentGrid = dest;
        }
    }

Usage Example

Пример #1
0
    void Update()
    {
        //  _direction = _target.transform.position.x - transform.position.x;
        if (_Triggergate.isTrigger)
        {
            Debug.Log(_Triggergate.isTrigger);
            return;
        }
        if (Vector2.Distance(transform.position, _target.position) > 3)
        {
            animatorenemy.SetBool("isRunning", true);
            if ((_target.transform.position.x - transform.position.x < 0) && (_target.transform.position.y == transform.position.y))
            {
                _enemycontroll.Move(-1);
            }
            else if ((_target.transform.position.x - transform.position.x > 0) && (_target.transform.position.y == transform.position.y))
            {
                _enemycontroll.Move(1);
            }
            else if ((_target.transform.position.y < transform.position.y) && (!_enemycontroll.jumpstatus))
            {
                if (Vector2.Distance(transform.position, _points[0].transform.position) > Vector2.Distance(transform.position, _points[1].transform.position))
                {
                    _enemycontroll.Move(1);
                }
                else if (Vector2.Distance(transform.position, _points[0].transform.position) < Vector2.Distance(transform.position, _points[1].transform.position))
                {
                    _enemycontroll.Move(-1);
                }
            }
            else if ((_target.transform.position.y > transform.position.y) && (!_enemycontroll.jumpstatus))
            {
                animatorenemy.SetBool("isRunning", false);
                if ((Vector2.Distance(transform.position, _points[0].transform.position) > Vector2.Distance(transform.position, _points[1].transform.position)) && (!_enemycontroll.jumpstatus))
                {
                    transform.position = Vector2.MoveTowards(transform.position, _points[1].transform.position, _enemycontroll.speed * Time.deltaTime);
                }
                else if ((Vector2.Distance(transform.position, _points[0].transform.position) < Vector2.Distance(transform.position, _points[1].transform.position)) && (!_enemycontroll.jumpstatus))
                {
                    transform.position = Vector2.MoveTowards(transform.position, _points[0].transform.position, _enemycontroll.speed * Time.deltaTime);
                }
            }

            //transform.position = Vector2.MoveTowards(transform.position, _target.position, _enemycontroll._speed * Time.deltaTime);
            _enemycontroll.Flip();
        }

        Debug.Log(_Triggergate.isTrigger);
        //_enemycontroll.Move(1f);
        // _enemycontroll.Flip();
    }
All Usage Examples Of UnitController::Move