summaryrefslogtreecommitdiff
path: root/npc/functions/input.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/functions/input.txt')
-rw-r--r--npc/functions/input.txt29
1 files changed, 29 insertions, 0 deletions
diff --git a/npc/functions/input.txt b/npc/functions/input.txt
index f71b7ae7..62c53fd1 100644
--- a/npc/functions/input.txt
+++ b/npc/functions/input.txt
@@ -34,3 +34,32 @@ function script menuint {
@menuret = .@vals[@menu];
return @menuret;
}
+
+function script menustr {
+ deletearray .@vals$;
+ .@menustr$ = "";
+ .@cnt = 0;
+
+ for (.@f = 0; .@f < getargcount(); .@f = .@f + 2)
+ {
+ if (getarg(.@f) != "")
+ {
+ .@menustr$ = .@menustr$ + getarg(.@f) + ":";
+ .@vals$[.@cnt] = getarg(.@f + 1);
+ .@cnt ++;
+ }
+ }
+
+ @menu = 255;
+ @menuret = -1;
+ select(.@menustr$);
+ if (@menu == 255)
+ return "";
+
+ @menu --;
+ if (@menu < 0 || @menu >= getarraysize(.@vals$))
+ return "";
+
+ @menuret$ = .@vals$[@menu];
+ return @menuret$;
+}