diff options
author | Andrei Karas <akaras@inbox.ru> | 2015-09-18 19:41:33 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2015-09-18 19:41:33 +0300 |
commit | e477186c0da2f88d39323de390b75ffa08cbf10c (patch) | |
tree | 5fd052cae997956e8fecbe1438d19794f5440291 /src/emap | |
parent | 6115c65dbe02e495f67bf7a8b0cb48725a06c1f3 (diff) | |
download | evol-hercules-e477186c0da2f88d39323de390b75ffa08cbf10c.tar.gz evol-hercules-e477186c0da2f88d39323de390b75ffa08cbf10c.tar.bz2 evol-hercules-e477186c0da2f88d39323de390b75ffa08cbf10c.tar.xz evol-hercules-e477186c0da2f88d39323de390b75ffa08cbf10c.zip |
Add script function for check is parameter string or not.
New script function: isstr
Example:
isstr(10) - will return 0
isstr("test") - will return 1
Diffstat (limited to 'src/emap')
-rw-r--r-- | src/emap/init.c | 1 | ||||
-rw-r--r-- | src/emap/script.c | 15 | ||||
-rw-r--r-- | src/emap/script.h | 1 |
3 files changed, 17 insertions, 0 deletions
diff --git a/src/emap/init.c b/src/emap/init.c index 7313d74..73ea165 100644 --- a/src/emap/init.c +++ b/src/emap/init.c @@ -119,6 +119,7 @@ HPExport void plugin_init (void) addScriptCommand("failedrefindex", "i", failedRefIndex); addScriptCommand("downrefindex", "ii", downRefIndex); addScriptCommand("successrefindex", "ii", successRefIndex); + addScriptCommand("isstr", "v", isStr); do_init_langs(); diff --git a/src/emap/script.c b/src/emap/script.c index 8c0b15c..18df0b5 100644 --- a/src/emap/script.c +++ b/src/emap/script.c @@ -1357,3 +1357,18 @@ BUILDIN(successRefIndex) return true; } + +// return paramater type +// 0 - int +// 1 - string +// 2 - other +BUILDIN(isStr) +{ + if (script_isinttype(st, 2)) + script_pushint(st, 0); + else if (script_isstringtype(st, 2)) + script_pushint(st, 1); + else + script_pushint(st, 2); + return true; +} diff --git a/src/emap/script.h b/src/emap/script.h index 3cf023a..17518a4 100644 --- a/src/emap/script.h +++ b/src/emap/script.h @@ -47,5 +47,6 @@ BUILDIN(isUnitWalking); BUILDIN(failedRefIndex); BUILDIN(downRefIndex); BUILDIN(successRefIndex); +BUILDIN(isStr); #endif // EVOL_MAP_SCRIPT |