RanSjStr » 历史记录 » 版本 3
yangdefeng, 2023-08-17 15:04
1 | 1 | yangdefeng | h4. _*%{color:green}ranSjStr%*_ |
---|---|---|---|
2 | |||
3 | 等概率或者按权重随机获取分割字符串 |
||
4 | |||
5 | |||
6 | 标签:命令定义|ranSjStr>ranSjStr |
||
7 | |||
8 | *格式* |
||
9 | |命令名 |参数1 |参数2 |参数3 |参数4 |参数5 | |
||
10 | |ranSjStr |原字符串 |随机模式 |返回模式 |随机到的字符串保存变量 |剩余的字符串保存变量 | |
||
11 | |||
12 | *说明* |
||
13 | * 参数1:需要获取随机的字符串 |
||
14 | 格式 |
||
15 | 字符串1#权重1|字符串2#权重2|字符串3#权重3... |
||
16 | <notextile></notextile> |
||
17 | #代表某字符与其权重的分隔符 |
||
18 | <notextile>|代表不同字符串的分隔符</notextile> |
||
19 | |||
20 | * 参数2:随机模式,0或1 |
||
21 | 0=系统权重随机,有几个字符串就是几份之一 |
||
22 | 1=按#位权重随机总权重为各项;位权重总和 |
||
23 | |||
24 | * 参数3:返回模式0-3 |
||
25 | 0=参数4和参数5,显示#权重数字 |
||
26 | 1=参数4和参数5,不显示#权重数字 |
||
27 | 2=参数4,显示权重;参数5,不显示权重 |
||
28 | 3=参数4,不显示权重;参数5,显示权重 |
||
29 | |||
30 | * 参数4:随机到的字符串保存变量 |
||
31 | |||
32 | * 参数5:剩余的字符串保存变量 |
||
33 | |||
34 | - |
||
35 | - |
||
36 | |||
37 | h4. *%{color:deepskyblue}特戒引擎脚本示例:%* |
||
38 | 2 | yangdefeng | |
39 | bq. [@main] |
||
40 | #if |
||
41 | #act |
||
42 | *{color:green}ranSjStr* 测试1#2000|测试2#1000|测试3#5000 1 3 s0 s1 |
||
43 | %{color:lightGrey};总权重说明:总权重为2000+1000+5000=8000% |
||
44 | [[print]] 随机的字符串:<$str(s0)> |
||
45 | [[print]] 剩余字符串值:<$str(s1)> |
||
46 | %{color:lightGrey};假设分割出来的是:测试2#1000% |
||
47 | %{color:lightGrey};继续分割剩余的字符串 总权重为2000-1000+5000=7000% |
||
48 | *{color:green}ranSjStr* <$str(s1)> 1 3 s2 s3 |
||
49 | [[print]] 随机的字符串:<$str(s2)> |
||
50 | [[print]] 剩余字符串值:<$str(s3)> |
||
51 | 3 | yangdefeng | |
52 | - |
||
53 | - |
||
54 | |||
55 | h4. *%{color:deepskyblue}特戒引擎脚本示例:%* |
||
56 | |||
57 | bq. [@main] |
||
58 | #if |
||
59 | #act |
||
60 | *{color:green}ranSjStr* 木剑#3|铁剑#3|短剑#3 0 1 s0 s1 |
||
61 | [[print]] 随机的字符串:<$str(s0)> |
||
62 | [[print]] 剩余字符串值:<$str(s1)> |
||
63 | %{color:lightGrey};总权重说明:总权重为3(系统权重随机时,有几个字符串就是几份之一)% |
||
64 | [[print]] 本次随机到了<$str(s0)> |