/// <summary> /// Tries to find the group by ID and returns it /// </summary> /// <param name="ID">The group ID to look for</param> /// <param name="group">The group instance</param> /// <returns>If the group was found</returns> public static bool TryFindGroup(string ID, out PointBlankGroup group) { PointBlankGroup g = Find(ID); group = g; return(g != null); }
/// <summary> /// Removes a group inherit from the group /// </summary> /// <param name="group">The group inherit to remove</param> public void RemoveInherit(PointBlankGroup group) { if (!_Inherits.Contains(group)) { return; } _Inherits.Remove(group); PointBlankGroupEvents.RunInheritRemoved(this, group); }
/// <summary> /// Removes a group from the server /// </summary> /// <param name="group">The group to remove</param> public static void RemoveGroup(PointBlankGroup group) { if (!_Groups.ContainsValue(group)) { return; } _Groups.Remove(group.ID); if (Loaded) { PointBlankGroupEvents.RunGroupRemoved(group); } }
/// <summary> /// Adds a group to the server groups /// </summary> /// <param name="group">The group instance to add</param> public static void AddGroup(PointBlankGroup group) { if (_Groups.ContainsKey(group.ID)) { return; } _Groups.Add(group.ID, group); if (Loaded) { PointBlankGroupEvents.RunGroupAdded(group); } }
/// <summary> /// Adds a group inherit to the group /// </summary> /// <param name="group">The group to inherit from</param> public void AddInherit(PointBlankGroup group) { if (_Inherits.Contains(group)) { return; } if (_Inherits.Count(a => a.ID == group.ID) > 0) { return; } _Inherits.Add(group); PointBlankGroupEvents.RunInheritAdded(this, group); }
/// <summary> /// Removes a group from the server /// </summary> /// <param name="ID">The ID of the group</param> public static void RemoveGroup(string ID) { if (!_Groups.ContainsKey(ID)) { return; } PointBlankGroup group = _Groups[ID]; _Groups.Remove(ID); if (Loaded) { PointBlankGroupEvents.RunGroupRemoved(group); } }
/// <summary> /// Creates and adds a group to the server group /// </summary> /// <param name="ID">The group ID</param> /// <param name="Name">The group name</param> /// <param name="Cooldown">The command cooldown for the group</param> public static void AddGroup(string ID, string Name, bool isDefault, int Cooldown, Color color) { if (_Groups.ContainsKey(ID)) { return; } PointBlankGroup group = new PointBlankGroup(ID, Name, isDefault, Cooldown, color); _Groups.Add(ID, group); if (Loaded) { PointBlankGroupEvents.RunGroupAdded(group); } }
internal static void RunGroupRemoved(PointBlankGroup g) => OnGroupRemoved?.Invoke(g);
internal static void RunInheritRemoved(PointBlankGroup instance, PointBlankGroup group) => OnInheritRemoved?.Invoke(instance, @group);
internal static void RunSuffixRemoved(PointBlankGroup instance, string suffix) => OnSuffixRemoved?.Invoke(instance, suffix);
internal static void RunPrefixRemoved(PointBlankGroup instance, string prefix) => OnPrefixRemoved?.Invoke(instance, prefix);
internal static void RunPermissionRemoved(PointBlankGroup instance, string permission) => OnPermissionRemoved?.Invoke(instance, permission);
/// <summary> /// Tries to find the group by ID and returns it /// </summary> /// <param name="ID">The group ID to look for</param> /// <param name="group">The group instance</param> /// <returns>If the group was found</returns> public static bool TryFindGroup(string ID, out PointBlankGroup group) => PointBlankGroup.TryFindGroup(ID, out group);