Beispiel #1
0
    public void OnPlayerTargetChanged(Event_PlayerTargetChanged evt)
    {
        playerTarget = evt.newTarget;
        for (int i = 0; i < sensorListItems.Count; i++) {
            var listItem = sensorListItems[i];
            if (listItem.entity == evt.oldTarget) {
                listItem.Deselect();
            }
        }

        //is it visible on current screen
        var selectedListItem = sensorListItems.Find((sensorItem) => {
            return sensorItem.entity == evt.newTarget;
        });

        int lastIndex = entities.IndexOf(evt.oldTarget);
        int index = entities.IndexOf(evt.newTarget);

        if (Util.Between(sensorListStart, index, sensorListStart + sensorListItems.Count)) {
            selectedListItem.Select();
        }
        else {
            sensorListStart = index;
            ResetListItems(evt.newTarget);
        }
    }
 public void OnPlayerTargetChanged(Event_PlayerTargetChanged evt)
 {
     SetTrackedObject(evt.newTarget);
     if(evt.newTarget != null) {
         reticule.color = FactionManager.GetColor(evt.newTarget.factionId);
     }
 }
Beispiel #3
0
 public void OnPlayerTargetChanged(Event_PlayerTargetChanged evt)
 {
     target = null;
     if (evt.newTarget) {
         target = evt.newTarget.transform;
         image.color = FactionManager.GetColor(evt.newTarget.factionId);
     }
     image.gameObject.SetActive(target != null);
 }
Beispiel #4
0
 public void OnPlayerTargetChanged(Event_PlayerTargetChanged evt)
 {
     if(evt.newTarget) {
         target = evt.newTarget;
         textElement.gameObject.SetActive(true);
     }
     else {
         textElement.gameObject.SetActive(false);
     }
 }
 public void OnPlayerTargetChanged(Event_PlayerTargetChanged evt)
 {
     if (evt.newTarget != null) {
         target = evt.newTarget.transform;
         Color color = FactionManager.GetColor(evt.newTarget.factionId);
         textElement.color = color;
         unitTextElement.color = color;
     }
     else {
         target = null;
     }
     textElement.gameObject.SetActive(target != null);
 }
Beispiel #6
0
    public void OnPlayerTargetChanged(Event_PlayerTargetChanged evt)
    {
        SensorListItem selected = GetItemForEntity(playerTarget);
        if (selected) selected.Deselect();

        playerTarget = evt.newTarget;
        //if we dont have a target there is nothing else to do
        if(playerTarget == null) {
            return;
        }

        SensorListItem newTargetItem = GetItemForEntity(playerTarget);
        if(newTargetItem) {
            //already displayed, we can just select it
            newTargetItem.Select();
            return;
        }

        if(selected == null) { //target is not on the list displayed
            sensorListItems[0].SetEntity(playerTarget, true);
            var node = linkedEntityList.Find(playerTarget);
            for(var i = 1; i < sensorListItems.Count; i++) {
                node = node.NextOrFirst();
                sensorListItems[i].SetEntity(node.Value);
            }
            return;
        }

        var currentTargetNode = linkedEntityList.Find(selected.entity);
        if(playerTarget == currentTargetNode.NextOrFirst().Value) {
            ShiftDown();
        }
        else if (playerTarget == currentTargetNode.PreviousOrLast().Value) {
            ShiftUp();
        }
        else {
            sensorListItems[0].SetEntity(playerTarget, true);
            var node = linkedEntityList.Find(playerTarget);
            for (var i = 1; i < sensorListItems.Count; i++) {
                node = node.NextOrFirst();
                sensorListItems[i].SetEntity(node.Value);
            }
        }
    }