Skip to content

Commit cc7f574

Browse files
committed
[络络/教程/手写mvu变量卡] 优化 getvar 解释
1 parent 452fb56 commit cc7f574

1 file changed

Lines changed: 16 additions & 4 deletions

File tree

  • 络络/教程/手写mvu变量卡/动态发送提示词

络络/教程/手写mvu变量卡/动态发送提示词/index.md

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -118,11 +118,17 @@ if (设定的条件) {
118118

119119
你看, 通过换行, 整个结构变得清晰易读. 现在, 你再回头看一些 MVU 卡中的代码, 是不是感觉变得能看懂些了?
120120

121-
### `getvar()` 获取变量
121+
### `getvar('变量路径')` 获取变量
122122

123-
但在实际代码中, `if` 后的括号里并不是 "某个条件" 这几个字, 而是一长串代码. 我们就是通过编写这长串代码, 将提示词与变量情况相关联, 从而判断提示词是否该被发送: 比如角色好感度大于 30.
123+
但在实际代码中, `if` 后的括号里并不是 "某个条件" 这几个字, 而是一长串代码. 我们就是通过编写这长串代码, 将提示词与变量情况相关联, 从而判断提示词是否该被发送.
124124

125-
`getvar()` 函数就是我们获取变量数据的信使. 它能准确地从我们之前设置的变量 (`stat_data`) 中, 取出我们需要的那个变量值. 令人惊讶地是 (并非), 用它获取变量值的方法和 `{{format_message_variable::变量}}` 差不多!
125+
比如, 我们想要络络好感度小于 30 时才发送某段提示词, 这该怎么办呢? 我们用 `getvar('变量路径')` 获取变量路径下的内容, 用 `<` 符号让这个内容与 `30` 相比较:
126+
127+
```js
128+
getvar('变量路径') < 30
129+
```
130+
131+
当然, 要获取络络好感度, 我们显然不能写个`变量路径``getvar` 里, 而是要确确实实地写络络好感度这个变量的路径——我们早就知道怎么做了! 还记得 `{{format_message_variable::变量路径}}` 宏吗? `getvar('变量路径')` 中要填的变量路径和这个宏是一样的.
126132

127133
假设我们的变量结构是这样的:
128134

@@ -161,9 +167,15 @@ export const Schema = z.object({
161167
162168
::::
163169
164-
那么请回想一下, 我们该怎么用 `{{format_message_variable::变量}}` 获取络络的好感度值? 答案是 `{{format_message_variable::stat_data.角色.络络.好感度}}`. \
170+
那么请回想一下, 我们该怎么用 `{{format_message_variable::变量路径}}` 获取络络的好感度值? 答案是 `{{format_message_variable::stat_data.角色.络络.好感度}}`. \
165171
与之相应地, 我们用 `getvar()` 获取络络好感度的方法是 `getvar('stat_data.角色.络络.好感度')`.
166172

173+
所以, "络络好感度小于 30" 的代码是:
174+
175+
```js
176+
getvar('stat_data.角色.络络.好感度') < 30
177+
```
178+
167179
### 组装一个完整的EJS代码块
168180

169181
现在, 我们将所有部件组装起来, 看看一个完整、正确的 EJS 代码块是什么样的:

0 commit comments

Comments
 (0)