Beispiel #1
0
 public void GiveInteractionOrder(Interactible interactible, Action finishedCallback = null)
 {
     CancelCurrentInteractionOrder();
     _finishedInteraction         = false;
     _finishedInteractionCallback = finishedCallback;
     CurrentInteractTarget        = interactible;
     _interactionTime             = 0;
 }
Beispiel #2
0
 public void CancelCurrentInteractionOrder()
 {
     GameManager.Instance.WaypointProvider.ClearWaypointActionsForEntity(this);
     _finishedInteraction         = true;
     _startedInteraction          = false;
     _finishedInteractionCallback = null;
     CurrentInteractTarget        = null;
     _interactionTime             = 0;
 }
        public void RemoveImpediment(Interactible interactible)
        {
            if (!_impedimentEntries.ContainsKey(interactible))
            {
                return;
            }

            var entry = _impedimentEntries[interactible];

            _impedimentEntries.Remove(interactible);
            Destroy(entry.gameObject);
        }
        public void AddImpediment(Interactible interactible, bool IsUnique = false)
        {
            if (IsUnique)
            {
                if (_impedimentEntries.ContainsKey(interactible))
                {
                    return;
                }
            }

            var entry = Instantiate(ImpedimentEntryPrefab, ImpedimentsContainer.transform);

            //entry.transform.localPosition = Vector3.zero;
            entry.TextElement.text = interactible.GetTooltip();

            _impedimentEntries[interactible] = entry;
        }