diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-03-05 20:56:40 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-03-05 20:56:40 +0300 |
commit | 65cfd3242f14e27cad67440410783560dcea3656 (patch) | |
tree | 536d7e3dedc5c5562ccbc07874e572725d0d8329 /npc/functions | |
parent | fc16781cf16e7acb12228b9a8feefac9a0e242b3 (diff) | |
download | serverdata-65cfd3242f14e27cad67440410783560dcea3656.tar.gz serverdata-65cfd3242f14e27cad67440410783560dcea3656.tar.bz2 serverdata-65cfd3242f14e27cad67440410783560dcea3656.tar.xz serverdata-65cfd3242f14e27cad67440410783560dcea3656.zip |
Add function menustr.
It works same with menuint but return string and set variable @menuret$
Diffstat (limited to 'npc/functions')
-rw-r--r-- | npc/functions/input.txt | 29 |
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$; +} |