热血传奇 Blue 引擎脚本中有许多常用命令,它们被广泛用于实现游戏中的各种功能,如 NPC 交互、玩家奖励发放、怪物行为控制等。以下是对一些常见命令的详细介绍:
### 一、条件判断命令
#### 1. #IF
- **功能**:这是一个基础的条件判断命令,用于检查各种条件是否满足,后续通常会搭配 `#ACT` 命令执行相应动作。
- **示例**
```plaintext
#IF
CHECKLEVELEX > 10 ; 检查玩家等级是否大于 10
#ACT
SENDMSG 0 "你的等级已经超过 10 级啦!"
```
#### 2. CHECKITEM
- **功能**:用于检查玩家背包中是否拥有指定的物品。
- **示例**
```plaintext
#IF
CHECKITEM 战神盔甲 1 ; 检查玩家背包中是否有 1 件战神盔甲
#ACT
SENDMSG 0 "你拥有战神盔甲,可进入特殊地图。"
```
#### 3. CHECKGOLD
- **功能**:检查玩家的金币数量是否满足特定要求。
- **示例**
```plaintext
#IF
CHECKGOLD > 5000 ; 检查玩家金币是否超过 5000
#ACT
SENDMSG 0 "你金币充足,可以购买此物品。"
```
### 二、动作执行命令
#### 1. #ACT
- **功能**:当 `#IF` 条件判断为真时,执行 `#ACT` 后面的动作命令,可包含多个动作,用换行分隔。
- **示例**
```plaintext
#IF
CHECKLEVELEX > 20
#ACT
GIVEITEM 炼狱 1 ; 给予玩家 1 把炼狱
SENDMSG 0 "恭喜你,达到 20 级,获得炼狱一把!"
```
#### 2. GIVEITEM
- **功能**:给玩家发放指定数量的物品到背包。
- **示例**
```plaintext
#IF
#ACT
GIVEITEM 太阳水 20 ; 给予玩家 20 瓶太阳水
```
#### 3. TAKEITEM
- **功能**:从玩家背包中扣除指定数量的物品。
- **示例**
```plaintext
#IF
CHECKITEM 放大镜 1
#ACT
TAKEITEM 放大镜 1 ; 扣除玩家 1 个放大镜
SENDMSG 0 "已收取你的放大镜。"
```
#### 4. SENDMSG
- **功能**:向玩家发送消息,消息类型有多种,`0` 表示普通白色消息。
- **示例**
```plaintext
#IF
#ACT
SENDMSG 0 "欢迎来到传奇世界!"
```
#### 5. MAPMOVE
- **功能**:将玩家传送至指定地图的指定坐标。
- **示例**
```plaintext
#IF
#ACT
MAPMOVE 比奇城 333 222 ; 将玩家传送至比奇城坐标 (333, 222) 处
```
### 三、菜单命令
#### 1. #MENU
- **功能**:创建一个菜单供玩家选择,菜单选项用 `|` 分隔。
- **示例**
```plaintext
#IF
#ACT
SENDMSG 0 "请选择你的操作:"
#MENU
领取任务|GETTASK
购买物品|BUYITEM
离开此地|LEAVEMAP
```
### 四、怪物相关命令
#### 1. [MonGen]
- **功能**:用于定义怪物的生成信息,如生成地图、坐标、怪物名称、数量和刷新时间等。
- **示例**
```plaintext
[MonGen]
[0]
Map=盟重省
X=300
Y=400
MonName=祖玛卫士
Count=5
RegenTime=600 ; 每 600 秒刷新 5 个祖玛卫士
```
#### 2. [MonDrop]
- **功能**:设置怪物的掉落规则,包括掉落物品、数量和概率。
- **示例**
```plaintext
[MonDrop]
[祖玛卫士]
Item1=裁决之杖 1 0.01 ; 祖玛卫士有 0.01% 的概率掉落 1 把裁决之杖
Item2=随机传送卷 5 10 ; 有 10% 的概率掉落 5 张随机传送卷
```
### 五、变量相关命令
#### 1. SETVARIABLE
- **功能**:设置一个变量的值,方便后续脚本中使用。
- **示例**
```plaintext
#IF
#ACT
SETVARIABLE @QuestStep 1 ; 设置变量 @QuestStep 的值为 1
```
#### 2. CHECKVARIABLE
- **功能**:检查变量的值是否满足特定条件。
- **示例**
```plaintext
#IF
CHECKVARIABLE @QuestStep == 1
#ACT
SENDMSG 0 "你当前处于任务第一步。"
```

