예제 #1
0
    public void OnPointerUp(PointerEventData eventData)
    {
        if (firstSelect != null)
        {
            if (secondSelect != null)
            {
                // If two towers are selected and they are not the same tower, move units to second tower
                if (firstSelect != secondSelect)
                {
                    //Debug.Log("Sending Units: " + curUnitGroup.UnitCount);

                    TowerBehavior.MoveGroupFromTo(curUnitGroup, firstSelect.Tower, secondSelect.Tower);

                    curUnitGroup = null;
                }

                if (PlayerUnhoveredTower != null)
                {
                    PlayerUnhoveredTower(secondSelect);
                }
            }

            if (PlayerDeselectedTower != null)
            {
                PlayerDeselectedTower(firstSelect);
            }
        }

        // Reset unused units
        if (curUnitGroup != null)
        {
            curUnitGroup.UnprepareUnits();
            curUnitGroup = null;
        }

        firstSelect  = null;
        secondSelect = null;
    }
예제 #2
0
    //enumator to have ai Behavior wait for the units to occur on scene
    private IEnumerator WaittoAttack(UnitGroup currentGroup, TowerBehavior destination, float time)
    {
        yield return(new WaitForSeconds(time));

        TowerBehavior.MoveGroupFromTo(currentGroup, myTower, destination);
    }