using MyCollections.DesignPatterns.Visitor; using MyCollections.Stats; using System.Collections; using System.Collections.Generic; using UnityEngine; using System; public abstract class Potion : Item, IVisitor { protected abstract void ApplyPotionEffect(PlayerController controller); public void Visit<T>(T visitable) where T : Component, IVisitable { if (visitable is PlayerController controller) { ApplyPotionEffect(controller); } } }