summaryrefslogtreecommitdiff
path: root/npc/functions/array.txt
diff options
context:
space:
mode:
Diffstat (limited to 'npc/functions/array.txt')
-rw-r--r--npc/functions/array.txt18
1 files changed, 18 insertions, 0 deletions
diff --git a/npc/functions/array.txt b/npc/functions/array.txt
index 1a106175e..4da22b6fe 100644
--- a/npc/functions/array.txt
+++ b/npc/functions/array.txt
@@ -71,6 +71,24 @@ function script array_find {
freeloop(false);
return -1;
}
+// array_find2(<array>, <needle>)
+// Simplified version
+// if not found it returns -1
+
+function script array_find2 {
+ .@size = getarraysize(getarg(0));
+ freeloop(true);
+
+ for (.@i = getarrayindex(getarg(0)); .@i < .@size; ++.@i) {
+ if (getelementofarray(getarg(0), .@i) == getarg(1)) {
+ freeloop(false);
+ return true;
+ }
+ }
+
+ freeloop(false);
+ return -1;
+}