예제 #1
0
 // Use this for initialization
 void Start()
 {
     myFacing       = Pathfinding.Direction.South;
     currHP         = maxHP;
     currMP         = maxMP;
     aStar          = GameObject.FindGameObjectWithTag("A*");
     battleGrid     = aStar.GetComponent <AStarGrid>().battleGrid;
     onHitManager   = GameObject.FindGameObjectWithTag("GameManager").GetComponent <OnHitEffects>();
     selector       = GameObject.FindGameObjectWithTag("GameManager").GetComponent <SelectionManager>();
     unitAttackMenu = GameObject.FindGameObjectWithTag("AttackMenu").GetComponent <AttackMenuScript>();
 }
예제 #2
0
    public void InitiateMovement(Pathfinding.Direction moveDir)
    {
        switch (moveDir)
        {
        case Pathfinding.Direction.North:
        {
            //Debug.Log("Moved " + moveDir);
            transform.position = battleGrid[Mathf.RoundToInt(transform.position.x - 1), Mathf.RoundToInt(transform.position.y)].transform.position;
            myFacing           = moveDir;
            break;
        }

        case Pathfinding.Direction.NorthEast:
        {
            //Debug.Log("Moved " + moveDir);
            transform.position = battleGrid[Mathf.RoundToInt(transform.position.x), Mathf.RoundToInt(transform.position.y)].transform.position;
            myFacing           = moveDir;
            break;
        }

        case Pathfinding.Direction.NorthWest:
        {
            //Debug.Log("Moved " + moveDir);
            transform.position = battleGrid[Mathf.RoundToInt(transform.position.x - 2), Mathf.RoundToInt(transform.position.y)].transform.position;
            myFacing           = moveDir;
            break;
        }

        case Pathfinding.Direction.West:
        {
            //Debug.Log("Moved " + moveDir);
            transform.position = battleGrid[Mathf.RoundToInt(transform.position.x - 2), Mathf.RoundToInt(transform.position.y - 1)].transform.position;
            myFacing           = moveDir;
            break;
        }

        case Pathfinding.Direction.East:
        {
            //Debug.Log("Moved " + moveDir);
            transform.position = battleGrid[Mathf.RoundToInt(transform.position.x), Mathf.RoundToInt(transform.position.y - 1)].transform.position;
            myFacing           = moveDir;
            break;
        }

        case Pathfinding.Direction.South:
        {
            //Debug.Log("Moved " + moveDir);
            transform.position = battleGrid[Mathf.RoundToInt(transform.position.x - 1), Mathf.RoundToInt(transform.position.y - 2)].transform.position;
            myFacing           = moveDir;
            break;
        }

        case Pathfinding.Direction.SouthEast:
        {
            //Debug.Log("Moved " + moveDir);
            transform.position = battleGrid[Mathf.RoundToInt(transform.position.x), Mathf.RoundToInt(transform.position.y - 2)].transform.position;
            myFacing           = moveDir;
            break;
        }

        case Pathfinding.Direction.SouthWest:
        {
            //Debug.Log("Moved " + moveDir);
            transform.position = battleGrid[Mathf.RoundToInt(transform.position.x - 2), Mathf.RoundToInt(transform.position.y - 2)].transform.position;
            myFacing           = moveDir;
            break;
        }
        }
    }