跳到主要内容

场景道具

是否为场景道具对象 is_scene_item

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: boolean 是否为场景道具对象

  • 示例:

function isc_test_scene_item:is_scene_item()

local bit_scene_item = 1 << 4
local obj = edi.player:owner(module.player)
local scene = edi.object:get_scene(obj)

-- 查找场景内的scene_item
local objects = edi.scene:get_all_objects(scene, bit_scene_item)
for _, object in pairs(objects) do
local result = edi.scene_item:is_scene_item(object)
LOGI("isc_test_scene_item is_scene_item: " .. tostring(result))
end
end

获取场景道具配置信息 get_meta

  • args:
名字类型说明、描述
scene_itemuserdata场景道具对象
---
  • ret: items_cfg 场景道具配置信息 items_cfg

  • 示例:

function isc_test_scene_item:get_meta()

local bit_scene_item = 1 << 4

local obj = edi.player:owner(module.player)
print(obj)
local scene = edi.object:get_scene(obj)
print(scene)
-- 查找场景内的scene_item
local objects = edi.scene:get_all_objects(scene, bit_scene_item)
for _, object in pairs(objects) do
local scene_item = edi.scene_item:cast(object)
local result = edi.scene_item:get_meta(scene_item)
LOGI("isc_test_scene_item get_meta: " .. tostring(result))
end
end

获取道具对象 get_item

  • args:
名字类型说明、描述
scene_itemuserdata场景道具对象
---
  • ret: userdata 道具对象 item

  • 示例:

function isc_test_scene_item:get_item()
local bit_scene_item = 1 << 4
local obj = edi.player:owner(module.player)
local scene = edi.object:get_scene(obj)
-- 查找场景内的scene_item
local objects = edi.scene:get_all_objects(scene, bit_scene_item)
for _, object in pairs(objects) do
local scene_item = edi.scene_item:cast(object)
if scene_item ~= nil then
LOGI("isc_test_scene_item get_item ")
end
end
end