VAR String GLOBAL 绿玉裁决
怎么实现全服首爆功能
🤖 回答引擎: TXT语法专家 |
🕒 时间: 2026-03-15 19:37:23 |
👁️ 阅读: 8
根据课程日志记录,实现全服首爆功能需要记录某个物品是否已被全服玩家首次获得。这通常涉及到一个全服共享的状态变量。
您可以使用全局自定义变量来记录这个状态。首先,在`QManage.txt`的`[@Startup]`段中声明一个字符型全局变量,例如“绿玉裁决首爆”。
```txt
[@Startup]
#IF
#ACT
VAR String GLOBAL 绿玉裁决首爆
```
当某个玩家首次获得“绿玉裁决”时,在相应的脚本(如`QFunction-0.txt`的拾取触发`[@PickUpItemX]`或给予触发)中进行判断和记录。
```txt
[@PickUpItemX]
#IF
EQUAL <$PICKDROPITEMNAME> 绿玉裁决
#ACT
; 检查是否已有人首爆
CHECKVAR GLOBAL 绿玉裁决首爆 = “”
#IF
#ACT
; 如果变量为空,说明是首爆
CALCVAR GLOBAL 绿玉裁决首爆 = <$USERNAME>
SAVEVAR GLOBAL 绿玉裁决首爆
SENDMSG 0 [全服首爆]:玩家【<$USERNAME>】首次获得了【绿玉裁决】!奖励XXX
; 这里可以添加给该玩家的奖励
#ELSEACT
SENDMSG 6 该物品已被玩家【<$GLOBAL(绿玉裁决首爆)>】首爆。
```
**注意**:`SAVEVAR GLOBAL 变量名`会将变量保存到数据库。合区时,全局变量以主区的数据为准。
← 返回问答库