public void Equip(Relic relic, RelicSlot slot) { var previousSlot = FindContainingSlot(relic); if (previousSlot != null) { if (!slot.IsEmpty) { var temp = previousSlot.Relic; previousSlot.Equip(slot.Relic); slot.Equip(temp); return; } Unequip(relic); } if (!slot.IsEmpty) { Unequip(slot.Relic); } relic.Owner = gameObject; relic.Equip(); slot.Equip(relic); Equipped?.Invoke(this, relic); }
public void Equip() { if (IsEmpty) { return; } Owner.GetComponent <BehavioursComponent>().Apply(Behaviour, Owner); Experience.LevelUp += OnLevelUp; OnLevelUp(Experience); IsEquipped = true; Equipped?.Invoke(this); }
public void Equip(Relic relic) { Relic = relic; Equipped?.Invoke(this, relic); }