summaryrefslogtreecommitdiff
path: root/src/misc/aiscript
diff options
context:
space:
mode:
authorsyuilo <syuilotan@yahoo.co.jp>2019-06-23 00:06:39 +0900
committersyuilo <syuilotan@yahoo.co.jp>2019-06-23 00:06:39 +0900
commitbb4ca7b31ad81b92651c81203fa74c1c8e4cbd87 (patch)
tree15bc1c039216dad9d0d8179cefe4682392c0bcd6 /src/misc/aiscript
parentFix #4519 (diff)
downloadsharkey-bb4ca7b31ad81b92651c81203fa74c1c8e4cbd87.tar.gz
sharkey-bb4ca7b31ad81b92651c81203fa74c1c8e4cbd87.tar.bz2
sharkey-bb4ca7b31ad81b92651c81203fa74c1c8e4cbd87.zip
Resolve #5010
Diffstat (limited to 'src/misc/aiscript')
-rw-r--r--src/misc/aiscript/evaluator.ts1
-rw-r--r--src/misc/aiscript/index.ts1
2 files changed, 2 insertions, 0 deletions
diff --git a/src/misc/aiscript/evaluator.ts b/src/misc/aiscript/evaluator.ts
index d93fcebcf7..f6165afb64 100644
--- a/src/misc/aiscript/evaluator.ts
+++ b/src/misc/aiscript/evaluator.ts
@@ -171,6 +171,7 @@ export class ASEvaluator {
numberToString: (a: number) => a.toString(),
splitStrByLine: (a: string) => a.split('\n'),
pick: (list: any[], i: number) => list[i - 1],
+ listLen: (list: any[]) => list.length,
random: (probability: number) => Math.floor(seedrandom(`${this.opts.randomSeed}:${block.id}`)() * 100) < probability,
rannum: (min: number, max: number) => min + Math.floor(seedrandom(`${this.opts.randomSeed}:${block.id}`)() * (max - min + 1)),
randomPick: (list: any[]) => list[Math.floor(seedrandom(`${this.opts.randomSeed}:${block.id}`)() * list.length)],
diff --git a/src/misc/aiscript/index.ts b/src/misc/aiscript/index.ts
index 8635399daa..3a21e9b1cc 100644
--- a/src/misc/aiscript/index.ts
+++ b/src/misc/aiscript/index.ts
@@ -74,6 +74,7 @@ export const funcDefs: Record<string, { in: any[]; out: any; category: string; i
numberToString: { in: ['number'], out: 'string', category: 'convert', icon: faExchangeAlt, },
splitStrByLine: { in: ['string'], out: 'stringArray', category: 'convert', icon: faExchangeAlt, },
pick: { in: [null, 'number'], out: null, category: 'list', icon: faIndent, },
+ listLen: { in: [null], out: 'number', category: 'list', icon: faIndent, },
rannum: { in: ['number', 'number'], out: 'number', category: 'random', icon: faDice, },
dailyRannum: { in: ['number', 'number'], out: 'number', category: 'random', icon: faDice, },
seedRannum: { in: [null, 'number', 'number'], out: 'number', category: 'random', icon: faDice, },