FireworkPolymer
我的列表类似于[apple, juice, orange, banana]而且是以变量返回值的
变量是%mycommand_playerdatafor_词条列表_list%

类似于上图

Neige
var list = eval(vars(变量字符串塞这儿))
list[Math.floor(Math.random()*list.length)]
性能较差,别瞎jb用,死都看不出怎么死的

FireworkPolymer
Neige 发表于 2023-7-9 06:48
var list = eval(vars(变量字符串塞这儿))
list[Math.floor(Math.random()*list.length)]
性能较差,别瞎jb ...

可以写个详细点的例子吗,我纯小白,可以加金粒

Neige
FireworkPolymer 发表于 2023-7-9 08:00
可以写个详细点的例子吗,我纯小白,可以加金粒

内置函数
https://trmenu.trixey.cc/menu/configuration/internal-functions
  1. Functions:
  2.   test: |-
  3.     function test() {
  4.         var list = eval(vars(变量字符串塞这儿))
  5.         return list[Math.floor(Math.random()*list.length)]
  6.     }
  7.     test()
复制代码
调用
  1. - 'set-meta: test ${test}'
复制代码

FireworkPolymer
Neige 发表于 2023-7-8 22:54
内置函数
https://trmenu.trixey.cc/menu/configuration/internal-functions调用

这个列表的每一个项没有""包裹,能否检测,我刚才试了下不包裹会报错

Neige
FireworkPolymer 发表于 2023-7-9 15:07
这个列表的每一个项没有""包裹,能否检测,我刚才试了下不包裹会报错
  1. Functions:
  2.   test: |-
  3.     function test() {
  4.         var str = vars("%mycommand_playerdatafor_词条列表_list%")
  5.         var list = str.substring(1, str.length-1).split(", ")
  6.         return list[Math.floor(Math.random()*list.length)]
  7.     }
  8.     test()
复制代码