summaryrefslogtreecommitdiff
path: root/sourcemod/scripting/include/smlib/concommands.inc
diff options
context:
space:
mode:
authornavewindre <nw@moneybot.cc>2023-11-13 14:28:08 +0100
committernavewindre <nw@moneybot.cc>2023-11-13 14:28:08 +0100
commitda518fdc0f32839730ccdee8098b59c6f842d93f (patch)
treed6f856a6148c0b4d5819f88f068b7287b8044513 /sourcemod/scripting/include/smlib/concommands.inc
parentbc678b10830cdaef64bcc592ca2524ebe0fcdc45 (diff)
ya
Diffstat (limited to 'sourcemod/scripting/include/smlib/concommands.inc')
-rw-r--r--sourcemod/scripting/include/smlib/concommands.inc45
1 files changed, 45 insertions, 0 deletions
diff --git a/sourcemod/scripting/include/smlib/concommands.inc b/sourcemod/scripting/include/smlib/concommands.inc
new file mode 100644
index 0000000..2bd708f
--- /dev/null
+++ b/sourcemod/scripting/include/smlib/concommands.inc
@@ -0,0 +1,45 @@
+#if defined _smlib_concommands_included
+ #endinput
+#endif
+#define _smlib_concommands_included
+
+#include <sourcemod>
+#include <smlib/clients>
+
+/**
+ * Checks if a ConCommand has one or more flags set.
+ *
+ * @param command ConCommand name.
+ * @param flags Flags to check.
+ * @return True if flags are set, false otherwise.
+ */
+stock bool ConCommand_HasFlags(const char[] command, int flags)
+{
+ return GetCommandFlags(command) & flags > 0;
+}
+
+/**
+ * Adds one or more flags to a ConCommand.
+ *
+ * @param command ConCommand name.
+ * @param flags Flags to add.
+ */
+stock void ConCommand_AddFlags(const char[] command, int flags)
+{
+ int newFlags = GetCommandFlags(command);
+ newFlags |= flags;
+ SetCommandFlags(command, newFlags);
+}
+
+/**
+ * Removes one ore more flags from a ConCommand.
+ *
+ * @param command ConCommand name.
+ * @param flags Flags to remove
+ */
+stock void ConCommand_RemoveFlags(const char[] command, int flags)
+{
+ int newFlags = GetCommandFlags(command);
+ newFlags &= ~flags;
+ SetCommandFlags(command, newFlags);
+}