36 lines
1001 B
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace Template_RuntimeInstance
{
public class AbilityManager : MonoBehaviour
{
private Dictionary<string, AbilityInstance> abilityInstances = new Dictionary<string, AbilityInstance>();
public AbilityInstance CreateAbilityInstance(BaseAbility abilityTemplate)
{
AbilityInstance instance = new AbilityInstance(abilityTemplate);
abilityInstances[instance.id] = instance;
return instance;
}
public AbilityInstance GetAbilityInstance(string id)
{
if (abilityInstances.TryGetValue(id, out AbilityInstance instance))
{
return instance;
}
return null;
}
public void RemoveAbilityInstance(string id)
{
if (abilityInstances.ContainsKey(id))
{
abilityInstances.Remove(id);
}
}
}
}