Esempio n. 1
0
    protected override void SetupSelectionTracker()
    {
        SelectionSettings settings = new SelectionSettings();

        settings.shouldDrawArea = false;
        SelectionTracker.GetInstance().SetSettings(settings);
    }
Esempio n. 2
0
    protected override void UnsubscribeFromEvents()
    {
        InputListener.GetInstance().OnMouse0_Down -= OnLeftMouseDown;
        InputListener.GetInstance().OnMouse0_Up   -= OnLeftMouseUp;
        InputListener.GetInstance().OnMouse1_Down -= SwitchToDefaultState;

        SelectionTracker.GetInstance().OnAreaChange -= OnAreaChange;
    }
    protected override void SubscribeToEvents()
    {
        InputListener.GetInstance().OnMouse0_Down += OnLeftClickDown;
        InputListener.GetInstance().OnMouse0_Up   += OnLeftClickUp;
        InputListener.GetInstance().OnMouse1_Down += SwitchToDefaultState;
        InputListener.GetInstance().OnEscape_Down += SwitchToDefaultState;

        SelectionTracker.GetInstance().OnAreaChange += OnAreaChange;
    }
    protected override void SetupSelectionTracker()
    {
        SelectionSettings settings = new SelectionSettings();

        settings.selectionMask = new List <System.Type>()
        {
            typeof(Human)
        };
        settings.shouldDrawArea = true;
        SelectionTracker.GetInstance().SetSettings(settings);
    }
    private void MoveSelectedUnits()
    {
        if (UnityEngine.EventSystems.EventSystem.current.IsPointerOverGameObject())
        {
            return;
        }
        Node cursorNode = Utils.NodeAt(Utils.CursorToCoordinates());

        if (cursorNode is null)
        {
            return;
        }

        List <Human> colonists   = SelectionTracker.GetInstance().GetSelected <Human>();
        List <Node>  targetNodes = Dijkstra.DijkstraFor(colonists.Count, cursorNode);

        for (int i = 0; i < targetNodes.Count; i++)
        {
            Task moveTask = new Task();
            moveTask.AddCommand(new MoveCommand(colonists[i].MotionComponent, targetNodes[i].Position));
            colonists[i].AI.CommandProcessor.AddUrgentTask(moveTask);
        }
    }
 private void OnLeftClickUp() => SelectionTracker.GetInstance().OnLeftMouseButtonUp();
Esempio n. 7
0
 protected void OnLeftMouseUp() => SelectionTracker.GetInstance().OnLeftMouseButtonUp();
Esempio n. 8
0
 protected virtual void SetupSelectionTracker() => SelectionTracker.GetInstance().SetSettings(new SelectionSettings());
 public void OnLeftMouseButtonDown() => SelectionTracker.GetInstance().OnLeftMouseButtonDown();