summaryrefslogtreecommitdiff
path: root/sourcemod-1.5-dev/scripting/include/smlib/menus.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-1.5-dev/scripting/include/smlib/menus.inc
parentbc678b10830cdaef64bcc592ca2524ebe0fcdc45 (diff)
ya
Diffstat (limited to 'sourcemod-1.5-dev/scripting/include/smlib/menus.inc')
-rw-r--r--sourcemod-1.5-dev/scripting/include/smlib/menus.inc38
1 files changed, 38 insertions, 0 deletions
diff --git a/sourcemod-1.5-dev/scripting/include/smlib/menus.inc b/sourcemod-1.5-dev/scripting/include/smlib/menus.inc
new file mode 100644
index 0000000..c0c825d
--- /dev/null
+++ b/sourcemod-1.5-dev/scripting/include/smlib/menus.inc
@@ -0,0 +1,38 @@
+#if defined _smlib_menus_included
+ #endinput
+#endif
+#define _smlib_menus_included
+
+#include <sourcemod>
+#include <smlib/math>
+
+/**
+ * Adds an option to a menu with a String display but an integer
+ * identifying the option.
+ *
+ * @param menu Handle to the menu
+ * @param value Integer value for the option
+ * @param display Display text for the menu
+ * @noreturn
+ */
+stock Menu_AddIntItem(Handle:menu, any:value, String:display[])
+{
+ decl String:buffer[INT_MAX_DIGITS + 1];
+ IntToString(value, buffer, sizeof(buffer));
+ AddMenuItem(menu, buffer, display);
+}
+
+/**
+ * Retrieves an integer-value choice from a menu, where the
+ * menu's information strings were created as integers.
+ *
+ * @param menu Handle to the menu
+ * @param param2 The item position selected from the menu.
+ * @return Integer choice from the menu, or 0 if the integer could not be parsed.
+ */
+stock any:Menu_GetIntItem(Handle:menu, any:param2)
+{
+ decl String:buffer[INT_MAX_DIGITS + 1];
+ GetMenuItem(menu, param2, buffer, sizeof(buffer));
+ return StringToInt(buffer);
+}