地图传送功能
传送指定配置id场景
接口transfer_id(player, id, x, y, radius)
参数含义:指定玩家,目的场景配置id,目标坐标位置,随机范围,默认范围5,超过5则全图随机, 0:表示定点传送
- 接口样例
local function _transfer_id(player)
--场景配置路径:dev\config\scene\scene_cs.xlsx
local scene_meta_id = 1001 -- 场景配置id
local pScene = edi.scene:get_one(scene_meta_id)--通过配置id获得其中一个场景对象
if pScene then
local born_pos = edi.scene:get_born_pos(pScene)--获得该场景配置的出生点坐标
edi.scene:transfer_id(player, 2, born_pos.x, born_pos.y)--根据场景配置id传送
end
end
edi.event:reg_gm("test:map_trans:_transfer_id", _transfer_id)
- 样例展示
传送指定唯一id场景
接口transfer_uuid(player, id, x, y, radius)
参数含义:指定玩家,目的场景唯一id,目标坐标位置,随机范围,默认范围5,超过5则全图随机, 0:表示定点传送
- 接口样例
local function _transfer_uuid(player)
--场景配置路径:dev\config\scene\scene_cs.xlsx
local scene_meta_id = 10 --盟重 场景配置id
local scenes = edi.scene:get_by_id(scene_meta_id)--获得场景对象列表, 一个场景配置id可能对应多个场景对象
for _, scene in pairs(scenes) do
local born_pos = edi.scene:get_born_pos(scene) --获得该场景配置的出生点坐标
edi.scene:transfer_uuid(player, edi.scene:get_uuid(scene), born_pos.x, born_pos.y)--根据场景uuid传送
return
end
end
edi.event:reg_gm("test:map_trans:_transfer_uuid", _transfer_uuid)
- 样例展示
传送指定npc位置
接口 transfer2npc(player, npc)
参数含义:玩家对象, npc对象
- 接口样例
local function _transfer2npc(player)
--npc配置路径:\dev\config\npc_cs.xlsx
local npc_id = 201 --新人大使
local npc = edi.npc:get_by_id(npc_id)--根据配置id查找npc
if npc then
edi.scene:transfer2npc(player, npc)--传送指定npc位置
end
end
edi.event:reg_gm("test:map_trans:_transfer2npc", _transfer2npc)
- 样例展示
传送到当前场景指定位置
接口 move_to(player, x, y, radius)
参数含义:玩家对象, 指定位置,随机范围,默认范围5,超过5则全图随机, 0:表示定点传送
- 两个特例:
1. x,y 均为 0 时,传送到地图出生点
2. radius 大于 5 时,随机一个传送点
- 接口样例
local function _move_to(player)
edi.scene:move_to(player, 1, 1, 999) -- 传送到当前场景随机位置
end
edi.event:reg_gm("test:map_trans:_move_to", _move_to)
- 样例展示