自定义称号怎么添加
🤖 回答引擎: 热血江湖Lua |
🕒 时间: 2026-07-09 16:01:19 |
👁️ 阅读: 0
要添加自定义称号,需要配置相关源表并调用服务端接口。以下是具体步骤:
### 1. 配置称号基础数据(ItemEquip表)
在 `ItemEquip` 表中创建一条新装备记录,用于定义称号道具。
- **StdMode**:必须设置为 `70`(表示这是称号道具)。
- **Anicount**:此字段控制称号属性的生效方式。
- 若 `Anicount > 0`,则获得该称号道具时,其属性会自动添加到人物身上。
- 若 `Anicount = 0`,则需要通过接口激活(穿戴)该称号,其属性才会叠加到人物。
- **Model**:填写 `TitleIcon` 表中的称号ID,用于关联称号的显示效果。
### 2. 配置称号显示效果(TitleIcon表)
在 `TitleIcon` 表中创建一条新记录,用于定义称号在玩家头顶的显示方式。
- **ID**:此ID需要与 `ItemEquip` 表中称号道具的 `Model` 字段对应。
- **Type**:定义称号类型。
- `1`:特效ID(对应 `ResFxInfo` 表中的特效ID)。
- `2`:文字内容。
- `3`:序列帧。
- **Content**:根据 `Type` 填写相应内容(特效ID、文字或序列帧ID)。
- 其他字段如 `offsetX`、`offsetY` 可调整显示位置,`Sort` 控制称号在列表中的排序。
### 3. 通过脚本给玩家添加称号
在服务端脚本中,使用 `confertitle` 接口为玩家增加称号。
```lua
confertitle(actor, 称号ID)
```
其中 `称号ID` 是 `ItemEquip` 表中 `StdMode=70` 的装备ID。
### 4. 称号的穿戴与卸下
- **穿戴称号**:使用 `activetitle(actor, 称号ID)` 接口。穿戴后,如果 `Anicount=0`,其属性才会生效。
- **卸下称号**:使用 `unactivetitle(actor, 称号ID)` 接口。
- 当玩家在客户端进行穿戴或卸下操作时,会分别触发 `clienttakontitle` 和 `clienttakofftitle` 事件,你可以在这些事件的回调函数中编写模型头上称号外显的逻辑(例如使用 `seticonid` 接口)。
### 5. 设置称号在人物模型头上显示
使用 `seticonid(actor, pos, iconId)` 接口可以在玩家模型头上显示称号。
- `pos`:称号位置(0-9),默认官方界面使用位置0。
- `iconId`:对应 `TitleIcon` 表中的ID。
### 6. 其他相关接口
- **检测是否拥有称号**:`checktitle(actor, 称号ID)`
- **删除玩家称号**:`deprivetitle(actor, 称号ID)`
- **获取称号列表**:`gettitlelist(actor)`
- **获取当前佩戴称号列表**:`getcurrtitlelist(actor)`
**注意**:称号系统分为两部分独立管理:一部分是角色面板上的获得、穿戴等操作;另一部分是模型头上的外显效果。你需要根据需求,在客户端操作触发时,于服务端对应的触发事件中编写外显逻辑。
← 返回问答库