36 lines
1001 B
C#
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);
|
|
}
|
|
}
|
|
}
|
|
} |