Пример #1
0
        public void AddModifier(ModifierRule modifier)
        {
            if (!modifierDescriptors.ContainsKey(modifier.Id))
            {
                ModifierTextUI newDescriptor =
                    Instantiate(modifierUiPrefab, transform).GetComponent <ModifierTextUI>();
                modifierDescriptors[modifier.Id] = newDescriptor;
                gameManager.onModifierUpdated   += newDescriptor.OnModifierUpdated;
                gameManager.onModifierRemoved   += newDescriptor.OnModifierRemoved;
                newDescriptor.BindToId(modifier.Id);
            }

            modifierDescriptors[modifier.Id].modifierDescription.text = modifier.Description;
            modifierDescriptors[modifier.Id].remainingTimeText.text   = ((int)modifier.Duration).ToString() + "s";
        }
Пример #2
0
 public void RemoveModifier(ModifierRule modifier)
 {
     modifier.RevertRule(this);
     onModifierRemoved?.Invoke(modifier.Id);
     appliedModifiers.Remove(modifier.Id);
 }
Пример #3
0
 public void AddModifier(ModifierRule newModifier)
 {
     appliedModifiers[newModifier.Id] = newModifier;
     modifiersPanel.AddModifier(newModifier);
 }