public bool CanExecuteAction(int actionId) { if (CharacterActionTree.RecoveryTimeRemaining > 0) { return(false); } CharacterAction action = CharacterActionTree.GetActionById(actionId); if (action.IsAffectedByGlobalCooldown) { if (CharacterActionTree.GlobalCooldownTimeRemaining > 0) { return(false); } } if (action.IsAffectedByGroupCooldown) { if (action.Group.GroupCooldownTimeRemaining > 0) { return(false); } } if (action.CooldownTimeRemaining > 0) { return(false); } return(true); }
public CharacterActionGroup(CharacterActionTree tree, CharacterActionGroup group) { this.Tree = tree; this.Group = group; }