コード例 #1
0
        private void PlaceSelectedObject()
        {
            currentlySelectedObject.Indestuctable = false;

            if (IsValidPlacement == false)
            {
                GameManager.Instance.DespawnObject(currentlySelectedObject.gameObject);
            }
            else
            {
                currentlySelectedObject.ChangeColor(defaultColor);

                if (currentlySelectedObject.FirstPlacement == false)
                {
                    if (CanStartGame == false)
                    {
                        CanStartGame = true;
                    }

                    currentlySelectedObject.FirstPlacement = true;

                    GameManager.Instance.AddPlant(currentlySelectedObject);
                }
            }

            SetSelectedObject(null);
            GameManager.Instance.HidePlacementSpots();
            IsValidPlacement = false;
        }
コード例 #2
0
 public void Deselect(Selectable item)
 {
     foreach (var x in item.GetComponents <ISelectable>())
     {
         x.OnDeselect();
     }
     selectedItems.Remove(item);
     item.ChangeColor(Color.clear);
 }
コード例 #3
0
        public void SetSelectedObject(MoneyPlant newSelectedObject)
        {
            currentlySelectedObject = newSelectedObject;

            if (currentlySelectedObject != null)
            {
                currentlySelectedObject.ChangeColor(invalidPlacementColor);
            }

            GameManager.Instance.ShowPlacementSpots();
        }
コード例 #4
0
    public void UnHover(Selectable item)
    {
        if (!hoveredItems.Contains(item))
        {
            return;
        }

        if (!selectedItems.Contains(item))
        {
            item.ChangeColor(Color.clear);
        }
        hoveredItems.Remove(item);
    }
コード例 #5
0
    public void Hover(Selectable hoveredItem)
    {
        if (!isEnabled)
        {
            return;
        }

        if (hoveredItems.Contains(hoveredItem))
        {
            return;
        }

        hoveredItems.Add(hoveredItem);
        if (!selectedItems.Contains(hoveredItem))
        {
            hoveredItem.ChangeColor(highlightColor);
        }
    }
コード例 #6
0
 // Unit cannot move or attack but selector is still active (used for death animation)
 internal void FinishUnit()
 {
     moveIsDone   = true;
     actionIsDone = true;
     unitSelectable.ChangeColor(2);
 }