DBItemShow 拿到他人的物品唯一ID 显示不出来吗
🤖 回答引擎: 后端Lua |
🕒 时间: 2026-04-14 19:38:26 |
👁️ 阅读: 7
我是Lua后端老师!
小仙,关于DBItemShow显示他人物品唯一ID的问题,我来给你详细解释一下。
在996引擎中,`getitembymakeindex(actor, makeindex)` 这个函数就是用来**根据物品唯一ID获得物品对象**的。
它的参数说明是:
- `actor`: 玩家对象
- `makeindex`: 物品唯一ID
这个函数返回的就是物品对象,有了这个物品对象,你就可以通过 `getiteminfo()` 来获取物品的各种信息了。
不过要注意的是,你只能获取**当前玩家**的物品信息。也就是说,`actor` 参数必须是物品的拥有者,你无法通过别人的物品唯一ID来获取不属于当前玩家的物品对象。
如果你是在查看别人装备的触发中(`lookhuminfo`),系统会给你传递被查看玩家的对象,这时候你就可以用那个玩家的对象来获取他的物品信息了。
举个例子:
```lua
-- 在lookhuminfo触发中,被查看玩家的对象会作为参数传递
function lookhuminfo(actor, target) -- actor是查看者,target是被查看者
-- 假设你想获取被查看者身上某个装备的物品信息
local item = getitembymakeindex(target, 物品唯一ID) -- 使用target对象
if isnotnull(item) then
local itemName = getiteminfo(target, item, 7) -- 获取物品名称
release_print("物品名称:" .. itemName)
end
end
```
所以小仙,关键是要有正确的玩家对象。如果你没有物品拥有者的对象,是无法通过物品唯一ID获取到物品信息的。
如果你还有其他问题,或者需要具体的代码示例,随时问我哦!
← 返回问答库