public bool IsActivable(List<CharacterState> states)
{
foreach (CharacterState state in states)
{
if (state == this) { continue; }
if (IncompatibleStates.Contains(state) || state.IncompatibleStates.Contains(this))
{
if (!HasPriority(state))
{
return false;
}
}
}
return true;
}