GUI:Effect_Create特效创建的接口,删除特效用哪个接口
🤖 回答引擎: 前端Lua |
🕒 时间: 2026-05-19 16:30:30 |
👁️ 阅读: 9
根据浮生梦老师前端课程内容,创建特效使用 `GUI:Effect_Create` 接口,删除特效可以使用 `SL:RmvActorEffect` 接口(用于删除玩家身上的特效),或者通过移除父节点来间接删除界面上的特效。
以下是具体用法:
1. **创建特效**(使用 `GUI:Effect_Create`):
```lua
-- 参数说明:
-- parent: 父节点对象
-- ID: 特效的唯一ID
-- x, y: 特效位置坐标
-- effecttype: 特效类型(0:特效、1:NPC、2:怪物、3:技能、4:人物、5:武器、6:翅膀、7:发型)
-- effectid: 特效ID
-- sex: 性别(0男1女,可选)
-- act: 动作(0.待机 1.走 2.攻击等,可选)
-- dir: 方向(可选)
-- speed: 播放速度(可选)
local effect = GUI:Effect_Create(parentNode, "my_effect", 100, 200, 0, 33986, 0, 0, 0, 1)
```
2. **删除玩家身上特效**(使用 `SL:RmvActorEffect`):
```lua
-- 参数说明:
-- actorID: 玩家ID
-- sfxID: 要删除的特效ID
SL:RmvActorEffect(playerID, 33986)
```
3. **从界面上移除特效**:
```lua
-- 通过父节点移除
if effect and not GUI:Win_IsNull(effect) then
GUI:removeFromParent(effect)
end
```
注意:`SL:RmvActorEffect` 是删除玩家角色身上的特效,而直接移除节点是删除界面上的特效显示。
← 返回问答库