跳到主要内容

接口

获取道具唯一id getuuiditem

  • args:
名字类型说明、描述
itemuserdata道具对象
---
  • ret: string 道具唯一id

  • 示例:

function isc_test_0001:getuuiditem()
local player = module.player

additems(player, "bag_system_item", {{item_id = 1001, item_num = 1, bind = false}},"")
local item = getbyslot(player, "bag_system_item", 0)
if item == nil then
return
end
local result = getuuiditem(item)
print("isc_test_item get_uuid: " .. tostring(result))
end

获取道具配置id getiditem

  • args:
名字类型说明、描述
itemuserdata道具对象
---
  • ret: number 道具配置id

  • 示例:

function isc_test_0001:getiditem()
local player = module.player
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
local result = getiditem(item)
print("isc_test_item get_id: " .. tostring(result))
end

获取道具配置信息 getmetaitem

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

  • 示例:

function isc_test_0001:getmetaitem()
local player = module.player
local item = getbyslot(player, "bag_system_item", 0)
if item == nil then
return
end
local result = getmetaitem(item)
print("isc getmetaitem: " .. tostring(result))
end

获取道具绑定状态 getitembind

  • args:
名字类型说明、描述
itemuserdata道具对象
---
  • ret: boolean 道具绑定状态

  • 示例:

function isc_test_0001:getitembind()
local player = module.player
local item = getbyslot(player, "bag_system_item", 0)
if item == nil then
return
end
local result = getitembind(item)
print("isc getitembind: " .. tostring(result))
end

设置道具绑定状态 setitembind

  • args:
名字类型说明、描述
itemuserdata道具对象
bindboolean是否绑定
---
  • ret: 无

  • 示例:

function isc_test_0001:setitembind()
local player = module.player
local item = getbyslot(player, "bag_system_item", 0)
if item == nil then
return
end
setitembind(item, true)
print("isc setitembind: ")
end

获取道具来源 getitemsource

  • args:
名字类型说明、描述
itemuserdata道具对象
---
  • ret: string 道具来源信息

  • 示例:

function isc_test_0001:getitemsource()
local player = module.player
local item = getbyslot(player, "bag_system_item", 0)
if item == nil then
return
end
local result = getitemsource(item)
print("isc getitemsource: " .. tostring(result))
end

设置道具来源 setitemsource

  • args:
名字类型说明、描述
itemuserdata道具对象
sourcestring道具来源信息
---
  • ret: 无

  • 示例:

function isc_test_0001:setitemsource()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
setitemsource(item, "isc_test_item")
print("isc_test_item set_source")
end

获取道具内观 getiteminlook

  • args:
名字类型说明、描述
itemuserdata道具对象
---
  • ret: number 道具内观

  • 示例:

function isc_test_0001:getiteminlook()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
local result = getiteminlook(item)
print("isc_test_item getiteminlook: " .. tostring(result))
end

设置道具内观 setiteminlook

  • args:
名字类型说明、描述
itemuserdata道具对象
inlooknumber道具内观
---
  • ret: 无

  • 示例:

function isc_test_0001:setiteminlook()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
setiteminlook(item, 1)
print("isc_test_item setiteminlook: ")
end

获取道具外观 getitemoutlookitem

  • args:
名字类型说明、描述
itemuserdata道具对象
---
  • ret: number 道具外观

  • 示例:

function isc_test_0001:getitemoutlookitem()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
local result = getitemoutlookitem(item)
print("isc_test_item getitemoutlookitem: " .. tostring(result))
end

设置道具外观 setitemoutlookitem

  • args:
名字类型说明、描述
itemuserdata道具对象
outlooknumber道具外观
---
  • ret: 无

  • 示例:

function isc_test_0001:setitemoutlookitem()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
setitemoutlookitem(item, 1)
print("isc_test_item setitemoutlookitem: ")
end

获取道具过期时间 getitemexpiretimestamp

  • args:
名字类型说明、描述
itemuserdata道具对象
---
  • ret: number 过期时间戳(秒级),0表示不会过期

  • 示例:

function isc_test_0001:getitemexpiretimestamp()
local items = edi.bag:get_all(module.player, "bag_system_item")
for _, item in pairs(items) do
print("isc_test_item getitemexpiretimestamp: " .. getitemexpiretimestamp(item) .. " : " .. edi.item:get_id(item))
end
end

设置道具过期时间 setitemexpiretimestamp

  • args:
名字类型说明、描述
itemuserdata道具对象
owner_idinteger拥有者玩家ID
expire_secondinteger过期时间(秒级),0表示不会过期
bag_typestring背包类型
---
  • ret: 无

  • 示例:

function isc_test_0001:setitemexpiretimestamp()
local items = edi.bag:get_all(module.player, "bag_system_item")
for _, item in pairs(items) do
print("isc_test_item setitemexpiretimestamp: " .. setitemexpiretimestamp(item, 0, 3,"bag_system_item") .. " : " .. edi.item:get_id(item))
end
end

添加指定属性id的属性值 additemattr

  • args:
名字类型说明、描述
itemuserdata道具对象
modeATTR_MODE_TYPE属性模块
attr_idnumber属性id
attr_valnumber属性值
---
  • ret: 无

  • 示例:

function isc_test_0001:additemattr()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
additemattr(item, 1, 1, 1)
print("isc_test_item additemattr: ")
end

获取指定属性id的属性值 getattritem

  • args:
名字类型说明、描述
itemuserdata道具对象
modeATTR_MODE_TYPE属性模块
attr_idnumber属性id
---
  • ret: number 属性值

  • 示例:

function isc_test_0001:getattritem()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
local result = getattritem(item, 1, 1)
print("isc_test_item getattritem: " .. tostring(result))
end

设置指定属性id的属性值 setattritem

  • args:
名字类型说明、描述
itemuserdata道具对象
modeATTR_MODE_TYPE属性模块
attr_idnumber属性id
attr_valnumber属性值
---
  • ret: 无

  • 示例:

function isc_test_0001:setattritem()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
local result = setattritem(item, 0, 1, 1)
print("isc_test_item setattritem: " .. tostring(result))
end

删除指定属性id的属性值 delitemattr

  • args:
名字类型说明、描述
itemuserdata道具对象
modeATTR_MODE_TYPE属性模块
attr_idnumber属性id 填0代表移除指定模块所有属性加成
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0001:delitemattr()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
local result = delitemattr(item, 1, 1)
print("isc_test_item delitemattr: " .. tostring(result))
end

添加扩展信息 additemextra

  • args:
名字类型说明、描述
itemuserdata道具对象
extra_idstring扩展信息id
extra_valstring扩展信息数据
---
  • ret: 无

  • 示例:

function isc_test_0001:additemextra()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
additemextra(item, "extra_id", "extra_val")
print("isc_test_item additemextra: ")
end

获取扩展信息 getitemextra

  • args:
名字类型说明、描述
itemuserdata道具对象
extra_idstring扩展信息id
---
  • ret: string 扩展信息数据

  • 示例:

function isc_test_0001:getitemextra()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
local result = getitemextra(item, "extra_id")
print("isc_test_item getitemextra: " .. result)
end

删除扩展信息 delitemextra

  • args:
名字类型说明、描述
itemuserdata道具对象
extra_idstring扩展信息id
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0001:delitemextra()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
local result = delitemextra(item, "extra_id")
print("isc_test_item delitemextra: " .. tostring(result))
end

获取二进制数据(包含道具所有动态信息) getitembinary

  • args:
名字类型说明、描述
itemuserdata道具对象
---
  • ret: string 二进制数据

  • 示例:

function isc_test_0001:getitembinary()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
local result = getitembinary(item)
print("isc_test_item getitembinary: " .. tostring(result))
end

添加技能 additemskill

  • args:
名字类型说明、描述
itemuserdata道具对象
skill_idnumber技能id
---
  • ret: 无

  • 示例:

function isc_test_0001:additemskill()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
additemskill(item, 1)
print("isc_test_item additemskill")
end

删除技能 delitemskill

  • args:
名字类型说明、描述
itemuserdata道具对象
skill_idnumber技能id
---
  • ret: 无

  • 示例:

function isc_test_0001:delitemskill()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
delitemskill(item, 1)
print("isc_test_item del_skill")
end

更新道具 updateitem

  • args:
名字类型说明、描述
playeruserdata角色对象
itemuserdata道具对象
---
  • ret: 无

  • 示例:

function isc_test_0001:updateitem()
local item = getbyslot(module.player, "bag_system_item", 0)
if item == nil then
return
end
local bRet = updateitem(item, item)
print("isc updateitem:".. bRet)
end

是否是怪物 ismonster

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

  • 示例:

function isc_test_0001:ismonster()
edi.general:send_player_notice(module.player, CoreDef.NOTICE_TYPE.ChatBox, "玩家不是怪物: " .. tostring(ismonster(module.player)))
-- 获取当前玩家坐标
local scene = edi.player:get_scene(module.player)
local pos = edi.player:get_scene_pos(module.player)
-- 在玩家周围召唤一只怪物
local monster = summonmonster(scene, 1, pos.x, pos.y)
edi.general:send_player_notice(module.player, CoreDef.NOTICE_TYPE.ChatBox, "召唤的怪物是怪物: " .. tostring(ismonster(monster)))
local monster_id = getidmonster(monster)
edi.general:send_player_notice(module.player, CoreDef.NOTICE_TYPE.ChatBox, "召唤的怪物配置ID是: " .. tostring(monster_id))
local monster_uuid = getuuidmonster(monster)
edi.general:send_player_notice(module.player, CoreDef.NOTICE_TYPE.ChatBox, "召唤的怪物唯一ID是: " .. tostring(monster_uuid))
local monster_name = getnamemonster(monster)
edi.general:send_player_notice(module.player, CoreDef.NOTICE_TYPE.ChatBox, "召唤的怪物名字是: " .. tostring(monster_name))
local belong_uid = getmonsterbelongeruuid(monster)
edi.general:send_player_notice(module.player, CoreDef.NOTICE_TYPE.ChatBox, "召唤的怪物归属是: " .. tostring(belong_uid))
end

获得怪物配置id getidmonster

  • args:
名字类型说明、描述
monsteruserdata怪物
---
  • ret: number 配置id

  • 示例:

function isc_test_0001:getidmonster()
-- see: is_monster
print("isc getidmonster")
end

获得怪物唯一id getuuidmonster

  • args:
名字类型说明、描述
monsteruserdata怪物
---
  • ret: number 唯一id

  • 示例:

function isc_test_0001:getuuidmonster()
-- see: is_monster
print("isc getuuidmonster")
end

添加额外掉落物品 addmonsterextdrop

  • args:
名字类型说明、描述
monsteruserdata怪物
infoitem_infoitem_info 道具结构
---
  • ret: 无

  • 示例:

function isc_test_0001:addmonsterextdrop()
local scene = edi.player:get_scene(module.player)
local pos = edi.player:get_scene_pos(module.player)
local monster = summonmonster(scene, 1, pos.x, pos.y)
local item = {
item_id = 101,
item_num = 20,
bind = false
}
addmonsterextdrop(monster, item)
print("isc addmonsterextdrop")
end

通过怪物id查找对象 getbyuuidmonster

  • args:
名字类型说明、描述
mon_idnumber怪物id
---
  • ret: userdata 怪物对象

  • 示例:

function isc_test_0001:getbyuuidmonster()
local scene = edi.player:get_scene(module.player)
local pos = edi.player:get_scene_pos(module.player)
local monster = summonmonster(scene, 1, pos.x, pos.y)
local mon_info = getbyuuidmonster(getbyuuidmonster(monster))
print("isc getbyuuidmonster")
end

获取怪物归属玩家uuid getmonsterbelongeruuid

  • args:
名字类型说明、描述
monsteruserdata怪物
---
  • ret: integer 玩家UUID

  • 示例:

function isc_test_0001:getmonsterbelongeruuid()
-- see: is_monster
print("isc getmonsterbelongeruuid")
end

是否是npc isnpc

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

  • 示例:

function isc_test_0001:isnpc()
edi.scene:transfer_id(module.player, 1, -1, -1)

local bit_player = 1
local bit_monster = 1 << 1
local bit_npc = 1 << 2
local bit_pet = 1 << 3
local bit_scene_item = 1 << 4

local obj = edi.player:owner(module.player)
local scene = edi.player:get_scene(obj)
-- 查找场景内的npc
local objects = geteyeobjects(obj, bit_npc | bit_player)
for _, object in pairs(objects) do
isnpc(object)
end
end

获得npc配置id getidnpc

  • args:
名字类型说明、描述
npcuserdatanpc
---
  • ret: number 配置id(npc_cs.xlsx nMetaId)

  • 示例:

function isc_test_0001:getidnpc()
edi.scene:transfer_id(module.player, 1, -1, -1)

local bit_player = 1
local bit_monster = 1 << 1
local bit_npc = 1 << 2
local bit_pet = 1 << 3
local bit_scene_item = 1 << 4

local obj = edi.player:owner(module.player)
local scene = edi.player:get_scene(obj)
-- 查找场景内的npc
local objects = geteyeobjects(obj, bit_npc)
for _, object in pairs(objects) do
local npc = edi.npc:cast(object)
print("isc test: " .. getidnpc(npc))
end
print("isc getuuidnpc")
end

获得npc唯一id getuuidnpc

  • args:
名字类型说明、描述
npcuserdatanpc
---
  • ret: number 唯一id

  • 示例:

function isc_test_0001:getuuidnpc()
edi.scene:transfer_id(module.player, 1, -1, -1)

local bit_player = 1
local bit_monster = 1 << 1
local bit_npc = 1 << 2
local bit_pet = 1 << 3
local bit_scene_item = 1 << 4

local obj = edi.player:owner(module.player)
local scene = edi.player:get_scene(obj)
-- 查找场景内的npc
local objects = geteyeobjects(obj, bit_npc)
for _, object in pairs(objects) do
local npc = edi.npc:cast(object)
print("isc test: " .. getuuidnpc(npc))
end
print("isc getuuidnpc")
end

设置npc特效 setnpceffect

  • args:
名字类型说明、描述
npcuserdatanpc
effect_idnumber特效编号
---
  • ret: 无

  • 示例:

function isc_test_0001:setnpceffect()
edi.scene:transfer_id(module.player, 1, -1, -1)

local bit_player = 1
local bit_monster = 1 << 1
local bit_npc = 1 << 2
local bit_pet = 1 << 3
local bit_scene_item = 1 << 4

local obj = edi.player:owner(module.player)
local scene = edi.player:get_scene(obj)
-- 查找场景内的npc
local objects = geteyeobjects(obj, bit_npc)
for _, object in pairs(objects) do
local npc = edi.npc:cast(object)
-- todo: 纯特效绑定待开发
setnpceffect(npc, 999)
edi.object:refresh_appear(object)
print("isc test: npc effect: " .. edi.npc:get_name(npc) .. " effect: " .. edi.npc:get_effect(npc))
break
end
print("isc setnpceffect")
end

获得npc特效 getnpceffect

  • args:
名字类型说明、描述
npcuserdatanpc
---
  • ret: number 特效编号

  • 示例:

function isc_test_0001:getnpceffect()
-- see isc_test_npc:set_effect
print("isc getnpceffect")
end

根据配置id查找npc getbyidnpc

  • args:
名字类型说明、描述
idnumber配置id(npc_cs.xlsx nMetaId)
---
  • ret: userdata npc

  • 示例:

function isc_test_0001:getbyidnpc()
edi.scene:transfer_id(module.player, 1, -1, -1)

local bit_player = 1
local bit_monster = 1 << 1
local bit_npc = 1 << 2
local bit_pet = 1 << 3
local bit_scene_item = 1 << 4

local obj = edi.player:owner(module.player)
local scene = edi.player:get_scene(obj)
-- 查找场景内的npc
local objects = geteyeobjects(obj, bit_npc)
for _, object in pairs(objects) do
local npc = edi.npc:cast(object)
local npcid = edi.npc:get_id(object)
local npc1 = getbyidnpc(npcid)
print("npc: " .. getnamenpc(npc1))
end
print("isc getbyidnpc")
end

根据唯一id查找npc getbyuuidnpc

  • args:
名字类型说明、描述
uuidnumber唯一id
---
  • ret: userdata npc

  • 示例:

function isc_test_0001:getbyuuidnpc()
edi.scene:transfer_id(module.player, 1, -1, -1)

local bit_player = 1
local bit_monster = 1 << 1
local bit_npc = 1 << 2
local bit_pet = 1 << 3
local bit_scene_item = 1 << 4

local obj = edi.player:owner(module.player)
local scene = edi.player:get_scene(obj)
-- 查找场景内的npc
local objects = geteyeobjects(obj, bit_npc)
for _, object in pairs(objects) do
local npc = edi.npc:cast(object)
local npcuid = edi.npc:get_uuid(object)
local npc1 = getbyuuidnpc(npcuid)
print("npc: " .. getnamenpc(npc1))
end
print("isc getbyuuidnpc")
end

获得npc与玩家的距离(不在同一场景返回-1) getdistancenpc

  • args:
名字类型说明、描述
npcuserdatanpc
playeruserdata玩家
---
  • ret: number 距离

  • 示例:

function isc_test_0001:getdistancenpc()
-- 先找到新人大使
local npc = getbyidnpc(201)
if npc then
print("isc test: " .. getdistancenpc(npc, module.player))
end
print("isc getdistancenpc")
end

获取墓碑怪npc倒计时时间戳 gettombchecktime

  • args:
名字类型说明、描述
npcuserdatanpc
---
  • ret: number 倒计时时间戳(ms)

  • 示例:

function isc_test_0001:gettombchecktime()
local npc = getbyidnpc(201)
local time = gettombchecktime(npc)
print("isc gettombchecktime:".. time)
end

用户名字 getusername

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

集体传送 mapmovehum

  • args:
名字类型说明、描述
playeruserdata玩家对象
curMapnumber原地图
objMapnumber目标地图
---
  • ret: 无

调整玩家等级 changelevel

  • args:
名字类型说明、描述
playeruserdata玩家对象
Typestring操作符号.可选+、-、=
Amountinteger等级
---
  • ret: 无

调整PK值 changepkpoint

  • args:
名字类型说明、描述
playeruserdata玩家对象
Typestring操作符号.可选+、-、=
AmountintegerPK点数
---
  • ret: 无

添加技能 addskill

  • args:
名字类型说明、描述
playeruserdata玩家对象
skillNamestring技能名称
skillLevelinteger学习的技能等级.可选参数.默认为0(0-15)
---
  • ret: 无

删除所有技能 clearskill

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

删除指定技能 delskill

  • args:
名字类型说明、描述
playeruserdata玩家对象
skillNamestring技能名称
---
  • ret: 无

删除非当前玩家职业的所有技能 delnojobskill

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

调整技能等级 skilllevel

  • args:
名字类型说明、描述
playeruserdata玩家对象
skillNamestring技能名称
typestring操作符号.可选+、-、=
skillLevelinteger学习的技能等级
---
  • ret: 无

从玩家包裹收回指定物品 take

  • args:
名字类型说明、描述
playeruserdata玩家对象
inItemNamestring要收回的物品名字
inAmountnumber收回的数量,留空则为默认1
inTypenumber绑定模式,可省略
---
  • ret: boolean 是否成功

给玩家指定物品 give

  • args:
名字类型说明、描述
playeruserdata玩家对象
itemNamestring要给予的物品名
countinteger给予的数量.留空则为默认值1
bindinteger为1时,则给出的物品全部为绑定状态
---
  • ret: 无

从玩家身上收回指定物品 takew

  • args:
名字类型说明、描述
playeruserdata玩家对象
inItemNamestring要收回的物品名字
inAmountnumber收回的数量,留空则为默认1
---
  • ret: boolean 是否成功

取走对应序列号的物品 takem

  • args:
名字类型说明、描述
playeruserdata玩家对象
inMakeIndexstring物品的序列号(MakeIndex)
---
  • ret: boolean 是否成功

把玩家身上的装备放入包裹中 takeb

  • args:
名字类型说明、描述
playeruserdata玩家对象
itemNamestring装备名字 ALL支持把身上所有装备收回包裹里
numnumber装备数量
---
  • ret: boolean 是否成功

HP的操作 humanhp

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring操作符(+ - =)
valueinteger数值
---
  • ret: 无

MP的操作 humanmp

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring操作符(+ - =)
valueinteger数值
---
  • ret: 无

人物转生 renewlevel

  • args:
名字类型说明、描述
playeruserdata玩家对象
countinteger转生次数(1-255).代表一次转多少级
levelinteger转后等级.代表转生后玩家的等级.0为不改变玩家当前等级
pointinteger分配点数.代表转生后可以得到的属性点数
---
  • ret: 无

清除人物转生 restrenewlevel

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

调整全局杀怪经验 killmonexpmultiple

  • args:
名字类型说明、描述
playeruserdata玩家对象
Rateinteger服务器所有玩家杀怪获得的经验倍数
---
  • ret: 无

调整人物攻击速度 setplayinfo

  • args:
名字类型说明、描述
playeruserdata玩家对象
speedTypestring类型(目前只支持 HITSPEED=攻击速度(值最大值不能超过15))
typestring操作符(+-=)
valinteger
---
  • ret: 无

调整物品或者装备属性 adduseriteminfo

  • args:
名字类型说明、描述
playeruserdata玩家对象
itemIdinteger需要标记来源的物品序列号
origin_objstring物品来源对象
origin_mapstring来源地图名
---
  • ret: 无

开启定时器 setontimer

  • args:
名字类型说明、描述
playeruserdata玩家对象
timerIdinteger定时器索引(0-24)
tickinteger定时间隔(单位为秒)
loopinteger循环次数(可为空,当不为空时,循环指定次数后退出)
funcfunction回调函数(function(player_uuid, timer_id) end)
---
  • ret: boolean 是否添加成功

  • 示例:

function isc_test_0001:setontimer()
local player = module.player
setontimer(player, 2, 1, -1, function(player_uuid, item_id)
LOGI("timer callback " .. player_uuid .. ', ' .. item_id)
end)
print("isc SETONTIMER")
end

关闭定时器 setofftimer

  • args:
名字类型说明、描述
playeruserdata玩家对象
timerIdinteger定时器索引(0-24)
---
  • ret: 无

设置攻击力倍数 powerrate

  • args:
名字类型说明、描述
playeruserdata玩家对象
rateinteger攻击力倍数.倍数除以100为真正的倍率(200为2倍.150为1.5倍)
timeinteger有效时间,单位为秒
---
  • ret: 无

设置防御倍数 defencerate

  • args:
名字类型说明、描述
playeruserdata玩家对象
rateinteger防御倍数,倍数除以100为真正的倍率(200为2倍.150为1.5倍)
timeinteger有效时间,单位为秒
---
  • ret: 无

临时增加人物属性- 下线消失 setprovisionalabil

  • args:
名字类型说明、描述
playeruserdata玩家对象
numberinteger属性编号
typestring操作符(+-=)
valinteger
---
  • ret: 无

设置杀怪经验倍数 killmonexprate

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ratenumber杀怪经验倍数.倍数除以100为真正的倍率(200为2倍.150为1.5倍)
Time(Sec)number有效时间.单位为秒
---
  • ret: 无

初始化角色临时属性 restprovisionalabil

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger属性编号
---
  • ret: 无

在线泡经验 setautogetexp

  • args:
名字类型说明、描述
playeruserdata玩家对象
Time(sec)number间隔时间
Expnumber经验
InSafeZone(0/1)0:在任何地方有效1:在指定安全区有效
Mapnumber地图号
isSoulexpnumber聚灵珠是否能获取经验(0=不可以 1= 可以)
keepTime(sec)number泡点获得经验的时间
levelnumber等级(多少级以下可以获得经验)
---
  • ret: 无

  • 示例:

function isc_test_0001:setautogetexp()
local player = module.player
setautogetexp(player, 1, 1,1,1,1,1,1)
print("isc setautogetexp")
end

获得对象唯一id getuuidobject

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: number 唯一id

通过唯一id获得对象 getbyuuidobject

  • args:
名字类型说明、描述
uuidnumber唯一id
---
  • ret: userdata 对象

获取对象基础属性 int getattrint

  • args:
名字类型说明、描述
objuserdata对象
idnumber属性id
---
  • ret: number 属性值

  • 示例:

function isc_test_0001:getattrint()
local player = module.player
local bRet = getattrint(player,1)
print("isc getattrint:".. bRet)
end

设置对象基础属性 int setattrint

  • args:
名字类型说明、描述
objuserdata对象
idnumber属性id
valnumber属性值
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0001:setattrint()
local player = module.player
setattrint(player,1 ,2)
print("isc setattrint")
end

获得对象名字 getnameobject

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: string 名字

  • 示例:

function isc_test_0001:getnameobject()
local player = module.player
getnameobject(player)
print("isc getnameobject")
end

判断对象是否是玩家 isplayerobject

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: boolean true:是,false:否

  • 示例:

function isc_test_0001:isplayerobject()
local player = module.player
isplayerobject(player)
print("isc isplayerobject")
end

判断对象是否是怪物 ismonsterobject

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: boolean true:是,false:否

  • 示例:

function isc_test_0001:ismonsterobject()
local player = module.player
ismonsterobject(player)
print("isc ismonsterobject")
end

判断对象是否是npc isnpcobject

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: boolean true:是,false:否

  • 示例:

function isc_test_0001:isnpcobject()
local player = module.player
isnpcobject(player)
print("isc isnpcobject")
end

判断对象是否是宠物 ispet

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: boolean true:是,false:否

  • 示例:

function isc_test_0001:ispet()
local player = module.player
ispet(player)
print("isc ispet")
end

判断对象是否是场景道具 issceneitem

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: boolean true:是,false:否

  • 示例:

function isc_test_0001:issceneitem()
local player = module.player
issceneitem(player)
print("isc issceneitem")
end

获得对象当前场景 getsceneobject

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: userdata 当前场景

  • 示例:

function isc_test_0001:getsceneobject()
local player = module.player
getsceneobject(player)
print("isc getsceneobject")
end

获得对象当前场景配置id getsceneid

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: number 当前场景配置id

  • 示例:

function isc_test_0001:getsceneid()
local player = module.player
local bRet = getsceneid(player)
print("isc getsceneid:".. bRet)
end

获得对象当前场景唯一id getsceneuuid

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: number 当前场景唯一id

  • 示例:

function isc_test_0001:getsceneuuid()
local player = module.player
local bRet = getsceneuuid(player)
print("isc getsceneuuid:".. bRet)
end

获得对象当前坐标 getsceneposobject

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: pos_info 当前坐标

  • 示例:

function isc_test_0001:getsceneposobject()
local player = module.player
getsceneposobject(player)
print("isc getsceneposobject")
end

设置对象立即死亡 setdead

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: 无

  • 示例:

function isc_test_0001:setdead()
local player = module.player
setdead(player)
print("isc setdead")
end

判断对象是否死亡 isdeadobject

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: boolean 是否死亡

  • 示例:

function isc_test_0001:isdeadobject()
local player = module.player
isdeadobject(player)
print("isc isdeadobject")
end

刷新外观信息 refreshappear

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: 无

  • 示例:

function isc_test_0001:refreshappear()
local player = module.player
refreshappear(player)
print("isc refreshappear")
end

获得对象自定义扩展数据(运行时数据,不存储数据库) getext

  • args:
名字类型说明、描述
objuserdata对象
keystring扩展数据key
---
  • ret: string 扩展数据

  • 示例:

function isc_test_0001:getext()
local player = module.player
local bRet = getext(player, "test")
print("isc getext:".. bRet)
end

设置对象自定义扩展数据(运行时数据,不存储数据库) setext

  • args:
名字类型说明、描述
objuserdata对象
keystring扩展数据key
valstring扩展数据
---
  • ret: 无

  • 示例:

function isc_test_0001:setext()
local player = module.player
setext(player, "test","testval")
print("isc setext")
end

获得对象之间的距离(不在同一场景返回-1) getdistanceobject

  • args:
名字类型说明、描述
obj1userdata对象
obj2userdata对象
---
  • ret: number 距离

  • 示例:

function isc_test_0001:getdistanceobject()
local player = module.player
local bRet = getdistanceobject(player, player)
print("isc getdistanceobject:".. bRet)
end

获得对象与指定坐标点的距离 posdistance

  • args:
名字类型说明、描述
objuserdata对象
cptpos_info坐标点
---
  • ret: number 距离

  • 示例:

function isc_test_0001:posdistance()
local player = module.player
local pos = {0,0}
local bRet = posdistance(player, pos)
print("isc posdistance:".. bRet)
end

设置显示信息 setshowobject

  • args:
名字类型说明、描述
objuserdata对象
showobject_show_info显示信息对象(object_show_info结构)
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0001:setshowobject()
local player = module.player
setshowobject(player, 0)
print("isc setshowobject")
end

获取显示信息 getshowobject

  • args:
名字类型说明、描述
objuserdata对象
idnumber显示信息id
---

清除显示信息 clearshow

  • args:
名字类型说明、描述
objuserdata对象
idnumber显示信息id
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0001:clearshow()
local player = module.player
clearshow(player, 0)
print("isc clearshow")
end

是否是玩家 isplayer

  • args:
名字类型说明、描述
objuserdata对象
---
  • ret: boolean 是否是玩家

  • 示例:

function isc_test_0001:isplayer()
local player = module.player
isplayer(player)
print("isc isplayer")
end

判断玩家是否死亡 isdeadplayer

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: boolean 是否死亡

  • 示例:

function isc_test_0001:isdeadplayer()
local player = module.player
isdeadplayer(player)
print("isc isdeadplayer")
end

获取所有在线玩家 getallplayers

  • args:
名字类型说明、描述
---
  • ret: table 玩家列表

  • 示例:

function isc_test_0001:getallplayers()
local player = module.player
local all = getallplayers()
print("isc getallplayers:".. #all)
end

通过名字获得玩家实例 getbyname

  • args:
名字类型说明、描述
namestring玩家名字
---
  • ret: userdata 玩家对象

通过唯一id获得玩家实例 getbyuuidplayer

  • args:
名字类型说明、描述
uuidnumber玩家唯一id
---
  • ret: userdata 玩家对象

获得玩家账号 getaccount

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: string 玩家账号

  • 示例:

function isc_test_0001:getaccount()
local player = module.player
local account = getaccount(player)
print("isc getaccount:".. account)
end

获得玩家转生等级 getrlevel

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 转生等级

添加玩家当前经验 addexp

  • args:
名字类型说明、描述
playeruserdata玩家对象
exp_numnumber经验值
---
  • ret: 无

  • 示例:

function isc_test_interface:addexp()
local player = module.player
local exp = 500
addexp(player, exp)
local exp = getexp(player)
LOGI("isc addexp test:".. exp)
end

减少玩家当前经验 subexp

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 玩家当前经验

  • 示例:

function isc_test_interface:subexp()
local player = module.player
local exp = 50
subexp(player, exp)
local exp = getexp(player)
LOGI("isc subexp test:".. exp)
end

获得玩家当前经验 getexp

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 玩家当前经验

  • 示例:

function isc_test_interface:getexp()
local player = module.player
local exp = getexp(player)
LOGI("isc getexp test:".. exp)
end

获得玩家下一等级经验 getnexp

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 玩家下一等级经验

  • 示例:

function isc_test_interface:getnexp()
local player = module.player
local nexp = getnexp(player)
LOGI("isc getnexp:".. nexp)
end

获得玩家性别 getsex

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 性别

设置玩家性别 setsex

  • args:
名字类型说明、描述
playeruserdata玩家对象
sexnumber#性别
---
  • ret: 无

  • 示例:

function isc_test_interface:setsex()
local player = module.player
local sex = 0
setsex(player, sex)
local sex = edi.player:get_sex(player)
LOGI("isc player test:".. sex)
end

获得玩家职业 getjob

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 职业

设置玩家职业 setjob

  • args:
名字类型说明、描述
playeruserdata玩家对象
jobnumber#职业
---
  • ret: 无

  • 示例:

function isc_test_interface:setjob()
local player = module.player
local job = 2
setjob(player, job)
local job = edi.player:get_job(player)
LOGI("isc player test:".. job)
end

获得玩家uuid getuuidplayer

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number uuid

获得玩家公会id getguildid

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: string 公会id

获得玩家当前目标 getselecttarget

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_interface:getselecttarget()
local player = module.player
local bRet = getselecttarget(player)
if bRet ~= nil then
LOGI("yes! get target")
else
LOGI("no! no target")
end
end

获得货币数量 getmoney

  • args:
名字类型说明、描述
playeruserdata玩家对象
item_idnumber货币配置id
---
  • ret: number 货币数量

获得对象当前坐标 getsceneposplayer

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: pos_info 坐标

获得对象当前场景对象 getsceneplayer

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: userdata 当前场景对象

获得对象当前行会名称 getguildname

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: string 行会名称

获得攻击模式 getattackmode

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 攻击模式:0全体,1和平,2编组,3行会,4善恶,5阵营,6盟友,7敌

获得玩家状态 getstate

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: ROLE_STATE 玩家状态(枚举在constDef.lua)

获得玩家当前方向 getdirector

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 当前方向

  • 示例:

function isc_test_interface:getdirector()
local player = module.player
local bRet = getdirector(player)
LOGI("isc getdirector:".. bRet)
end

增加临时NPC mobnpc

  • args:
名字类型说明、描述
playeruserdata玩家对象
AstringNpc的名字
Bstring读取Market_def里脚本文件,支持同读,且支持2级目录
Cnumber外形
D(x,y)stringD=地图号 x=x坐标 y=y坐标
Enumber有效时间,单位为秒,时间到后Npc消失
---
  • ret: 无

  • 示例:

function isc_test_interface:mobnpc()
local player = module.player
local a = "比奇疏导员"
local b = "no"
local c = 20
local d = "1(323,265)"
local e = 20
mobnpc(player, a, b, c, d, e)
end

创建临时npc createnpc

  • args:
名字类型说明、描述
playeruserdata玩家对象
AstringNPC名字
Bnumber地图编号
Cnumber坐标X(-1时随机) todo
Dnumber坐标Y(-1时随机)todo
Enumber外观
Fstring脚本文件名称
Gnumber脚本文件是否要加上地图名称
HnumberNPCID
---
  • ret: 无

  • 示例:

function isc_test_interface:createnpc()
local player = module.player
local a = "比奇疏导员"
local b = 1
local c = 323
local d = 265
local e = 0
local f = ""
local g = 0
local h = 0
createnpc(player, a, b, c, d, e, f, g, h)
end

删除临时npc delnpc

  • args:
名字类型说明、描述
playeruserdata玩家对象
AnumberNPC名字
Bnumber地图号(为空时表示全部地图) todo
---
  • ret: 无

  • 示例:

function isc_test_interface:delnpc()
local player = module.player
local name = "比奇老兵"
local map_id = 1
local bret = delnpc(player, name, map_id)
ret_bool(bret, "delnpc")
end

增加脚本命令 insertvarlist

  • args:
名字类型说明、描述
playeruserdata玩家对象
A integer指定行数,如果为1则表示在第一行的后面插入一行;undefined
B string数据内容undefined
C string文件路径undefined
D integer=1,表示可以写入重复数据undefined
---
  • ret: 无

增加检测命令(文本中) posinlist

  • 检测某文本中是否包含另外一段字符,检测B文本中是否包含A内容,如果存在则返回内容至C变量,D参数返回内容所在文本行数(数值型变量)

  • args:

名字类型说明、描述
playeruserdata玩家对象
Astring字符支持变量
Bstring文件路径
Cstring变量(可忽略)
Dinteger返回行数(可忽略)
Einteger(0、1) 0为原始方式(可忽略); 1为相反检测;
---
  • ret: 无

增加检测命令(文本中) getvalidstr

  • 获取某段文本中以某文本为分割的第一段文本和剩余内容

  • ;将A文本中,以B字符(只支持一个英文半角字符)为分割,获取第一段内容存入C变量,剩下内容存入D变量

  • args:

名字类型说明、描述
playeruserdata玩家对象
Astring文本
Bstring字符
Cstring变量
Dstring变量
---
  • ret: 无

检测A字符是否与B字符相同 comparetext

  • C=0 表示区分大小写,默认区分大小写,可忽略;

  • args:

名字类型说明、描述
playeruserdata玩家对象
Astring字符
Bstring字符
Cinteger0/1
---
  • ret: 无

将字符变量A以空格填满至B长度 filltext

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring变量A
Binteger长度
---
  • ret: 无

将格式化后的字符写入相应的文本变量 formatstr

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring变量名称,将格式化后的字符写入相应的文本变量
Bstring文本格式,应该由字符和格式化文本组成 类似:我的名字是%s
Cstring变量内容,B参数中有几个格式化参数,这里就应该有几个变量内容,使用
---
  • ret: 无

分割文本字符串变量命令 textsplit

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring需要分割使用的文本(支持变量)
Bstring以此为分割条件的文本(支持变量)
Cstring用于范围分割文本数组的起始变量(仅支持文本型)
Dinteger数字型变量,返回分割总数,可不填
---
  • ret: 无

踢玩家下线 kick

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_interface:kick()
local player = module.player
local bret = kick(player)
LOGI("isc KICK:".. bRet)
end

广播给公会成员 broadcastguild

  • args:
名字类型说明、描述
guild_objuserdata行会对象
styleNOTICE_TYPE枚举
contentstring内容
---
  • ret: 无

加入列表行会名 addguildlist

  • args:
名字类型说明、描述
playeruserdata玩家对象
GuildFileNamestring行会列表文件名
---
  • ret: 无

删除列表行会名 delguildlist

  • args:
名字类型说明、描述
playeruserdata玩家对象
GuildFileNamestring行会列表文件名
---
  • ret: 无

用于截取某一段文本中指定长度的字符串 copytext

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring待处理字符串
Binteger待拷贝字符初始位置
Cinteger拷贝字符位数
Dstring保存的字符串
---
  • ret: 无

用于检测目标文件是否存在 checktxt

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring路径
---
  • ret: 无

用于复制一个文件到指定目录 filecopy

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring被复制的文件名
Bstring复制到的文件名
---
  • ret: 无

获取指定文件的行数 txtline

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring路径
---
  • ret: 无

将变量S中的 A 替换成 B ansireplacetext

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring要替换的字符型变量名
Bstring要替换的文本
Cstring替换的内容
Dinteger替换模式不写默认为0 模式:0-5
---
  • ret: 无

设置临时地图光圈脚本命令 setmaplightzone

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger地图号
Binteger坐标X
Cinteger坐标Y
Dinteger10000以内表示方形区域 10000以上表示圆形区域
Einteger单位:秒 0=永久 -1:暂不支持xxx
Finteger光圈类型
---
  • ret: 无

  • 示例:

function isc_test_interface:setmaplightzone()
local player = module.player
local a = 1
local b = 323
local c = 266
local d = 999
local e = 0
local f = 10
local ret = setmaplightzone(player, a, b, c, d, e, f)
ret_bool(ret, "setmaplightzone")
end

获取初始点信息 getborninfo

  • args:
名字类型说明、描述
dguserdata副本对象
---
  • ret: dg_transfer_info | {} #出生点信息

  • 示例:

function isc_test_interface:getborninfo()
local flag_id = 4
local dg = createdg(flag_id, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")
local born = edi.dg:get_born_info(dg)
LOGI("born: scene_uuid " .. born.scene_uuid)
LOGI("born: scene_id " .. born.scene_id)
LOGI("born: x " .. born.x)
LOGI("born: y " .. born.y)
LOGI("born: radius " .. born.radius)
end

设置传出点 setleaveinfo

  • args:
名字类型说明、描述
dguserdata副本对象
scene_idnumber场景id
axis_xnumberX轴
axis_ynumberY轴
radiusnumber半径
---
  • ret: boolean true-修改成功 false-修改失败

  • 示例:

function isc_test_interface:setleaveinfo()
local player_uuid = edi.player:get_uuid(module.player)
local dg = createdg(player_uuid, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")
edi.dg:set_leave_info(dg, 1, 20, 20, 5)
LOGI("set_leave_info ok")
end

获取离开点信息 getleaveinfo

  • args:
名字类型说明、描述
dguserdata副本对象
---
  • ret: dg_transfer_info | {} #离开点信息

  • 示例:

function isc_test_interface:getleaveinfo()
local player_uuid = edi.player:get_uuid(module.player)
local dg = createdg(player_uuid, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")
local leave = edi.dg:get_leave_info(dg)
LOGI("leave: scene_uuid ".. leave.scene_uuid)
LOGI("leave: scene_id ".. leave.scene_id)
LOGI("leave: x ".. leave.x)
LOGI("leave: y ".. leave.y)
LOGI("leave: radius ".. leave.radius)
end

进入单人的副本(没有则直接创建新的) entersolo

  • args:
名字类型说明、描述
playeruserdata玩家对象
scriptstring脚本字符串标记
scene_idnumber场景id
lifenumber副本时长(秒)
extstring拓展数据
remarkstring原因标记
---
  • ret: boolean true-进入成功 false-进入失败

进入多人副本 entermulti

  • args:
名字类型说明、描述
playeruserdata玩家
dg_uidnumber副本唯一id
remarkstring来源
trans_pospos_info?传送进入坐标 不填默认为副本出生点
---
  • ret: 无

设置定时器 addtimerdg

  • args:
名字类型说明、描述
dguserdata副本对象
timer_keystring定时器标记
ticknumber间隔触发时间(毫秒)
countnumber次数(-1表示不限制次数)
callback_funcfun(dguid:number,params:string) 回调函数
callback_datastring回调数据
---
  • ret: boolean 是否成功

销毁定时器 deltimerdg

  • args:
名字类型说明、描述
dguserdata副本对象
timer_keystring定时器标记
---
  • ret: 无

是否有定时器 hastimerdg

  • args:
名字类型说明、描述
dguserdata副本对象
timer_keystring定时器标记
---
  • ret: boolean true-存在 false-不存在

是否是生物 iscreature

  • 玩家(player)、怪物(monster)、npc、宠物(pet)都是生物对象

  • args:

名字类型说明、描述
objuserdata对象
---
  • ret: boolean 是否

获取等级 getlevel

  • 目前只提供了玩家、怪物的等级、其余默认为1

  • args:

名字类型说明、描述
creatureuserdata对象
---
  • ret: integer 等级(默认都是1级)

获取名字 getname

  • 目前只提供了玩家、怪物、npc的名字、其余默认为''

  • args:

名字类型说明、描述
creatureuserdata对象
---
  • ret: string 名字

获得最大hp maxhp

  • args:
名字类型说明、描述
creatureuserdata生物(player,monster,pet,npc)
---
  • ret: number 最大hp

获得当前hp currhp

  • args:
名字类型说明、描述
creatureuserdata生物(player,monster,pet,npc)
---
  • ret: number 当前hp

获得指定属性值 getattrcreature

  • args:
名字类型说明、描述
creatureuserdata生物(player,monster,pet,npc)
attr_idnumber属性id(attribute.xlsx表,对应attrDef.lua的AttrDef枚举, attr_id需1000以内)
---
  • ret: number 属性值

  • 示例:

function isc_test_interface:getattrcreature()
local obj = edi.player:owner(module.player)
local creature = edi.creature:cast(obj)
local attrid = 1
local bRet = getattrcreature(creature, attrid)
LOGI("isc getattrcreature:".. bRet)
end

设置属性值 setattrcreature

  • args:
名字类型说明、描述
creatureuserdata生物(player,monster,pet,npc)
attr_idnumber属性id(attribute.xlsx表,对应attrDef.lua的AttrDef枚举, attr_id需1000以内)
valnumber属性值
---
  • ret: boolean 是否设置成功

  • 示例:

function isc_test_interface:setattrcreature()
local obj = edi.player:owner(module.player)
local creature = edi.creature:cast(obj)
local attrid = 116
local val = 99
local bRet = setattrcreature(creature, attrid, val)
LOGI("isc getattrcreature:".. bRet)
end

设置穿人 setthroughhum

  • args:
名字类型说明、描述
creatureuserdata生物(player,monster,pet,npc)
ensureboolean是否穿人
---
  • ret: 无

  • 示例:

function isc_test_interface:setthroughhum()
local obj = edi.player:owner(module.player)
local creature = edi.creature:cast(obj)
local ensure = false
local bret = setthroughhum(creature)
ret_bool(bret, "setthroughhum")
end

设置穿怪 setthroughmonster

  • args:
名字类型说明、描述
creatureuserdata生物(player,monster,pet,npc)
ensureboolean是否穿怪
---
  • ret: 无

  • 示例:

function isc_test_interface:setthroughmonster()
local obj = edi.player:owner(module.player)
local creature = edi.creature:cast(obj)
local ensure = false
local bret = setthroughmonster(creature, ensure)
ret_bool(bret, "setthroughmonster")
end

编码转换: gbk转utf-8 sysgbk2utf8

  • args:
名字类型说明、描述
sourcestring源字符串
---
  • ret: string utf-8编码字符串

编码转换: utf-8转gbk sysutf82gbk

  • args:
名字类型说明、描述
sourcestring源字符串
---
  • ret: string gbk编码字符串

系统路径编码转换(主要应用于中文路径,windows平台转换为gbk编码,linux平台转换为utf-8编码) syspathencoding

  • args:
名字类型说明、描述
sourcestring源字符串
---
  • ret: string 转换后的字符串

载入文件 x_include

  • args:
名字类型说明、描述
require_filestring需要载入的文件,core同级别的相对路径
---
  • ret: table 载入的文件module

初始化全局数据 initglobalval

  • args:
名字类型说明、描述
modestring模块名
is_safeboolean是否存储(默认有变化时3分钟模块自动存盘)
---
  • ret: 无

清空全局数据 cleanglobalval

  • args:
名字类型说明、描述
modestring模块名
---
  • ret: 无

获取全局int数据 getglobalint

  • args:
名字类型说明、描述
modestring模块名
keynumber
---
  • ret: number

设置全局inti数据 setglobalint

  • args:
名字类型说明、描述
modestring模块名
keynumber
valnumber
---
  • ret: 无

获取全部int数据 getallglobalint

  • args:
名字类型说明、描述
modestring模块名
---
  • ret: table 全局string数据列表<k, v>

获取全局string数据 getglobalstr

  • args:
名字类型说明、描述
modestring模块名
keystring
---
  • ret: string

设置全局string数据 setglobalstr

  • args:
名字类型说明、描述
modestring模块名
keystring
valstring
---
  • ret: 无

生成唯一ID makeuuid

  • args:
名字类型说明、描述
---
  • ret: string 字符串唯一ID

获取基础执行路径 getenvirbasedir

  • args:
名字类型说明、描述
---
  • ret: string 执行路径

是否存在非法字符 TODO 未接敏感词 isfilterchar

  • args:
名字类型说明、描述
ctxstring内容
---
  • ret: boolean true-是 false-否

发送系统邮件 sendsysmail

  • args:
名字类型说明、描述
recv_idnumber邮件接收者玩家id
mail_titlestring邮件标题
mail_cxtstring邮件内容
itemsitem_info[]附件奖励 { item_info }
remarkstring标记
---
  • ret: 无

聊天 chat

  • args:
名字类型说明、描述
fromuserdata
rev_namestring接收者玩家名字
channelCHAT_TYPE频道枚举
saystring聊天内容
---
  • ret: 无

发送文字提示 sendplayernotice

  • args:
名字类型说明、描述
playeruserdata玩家对象
styleNOTICE_TYPE枚举
contentstring内容
---
  • ret: 无

全服广播 sendbroadcastnotice

  • args:
名字类型说明、描述
styleNOTICE_TYPE枚举
contentstring内容
---
  • ret: 无

全视野广播 broadcastnoticeeyeshot

  • args:
名字类型说明、描述
objectuserdata对象
styleNOTICE_TYPE枚举
contentstring内容
---
  • ret: 无

全地图广播 broadcastnoticemap

  • args:
名字类型说明、描述
sceneuserdata场景对象
styleNOTICE_TYPE枚举
contentstring内容
---
  • ret: 无

全队广播 broadcastnoticeteam

  • args:
名字类型说明、描述
teamuserdata组队对象
styleNOTICE_TYPE枚举
contentstring内容
---
  • ret: 无

全公会广播 broadcastnoticeguild

  • args:
名字类型说明、描述
guilduserdata公会对象
styleNOTICE_TYPE枚举
contentstring内容
---
  • ret: 无

发送错误码 senderrnotice

  • args:
名字类型说明、描述
playeruserdata玩家对象
errnumber错误码id common_error_code.xlsx表
paramstable?
---
  • ret: 无

打开ssr界面 sendopenssr

  • args:
名字类型说明、描述
playeruserdata玩家对象
contentstring内容
---
  • ret: 无

设置翅膀 wingtype

  • args:
名字类型说明、描述
playeruserdata玩家对象
wing_typeinteger翅膀类型 1 黄色翅膀 2 蓝色翅膀 3 紫色翅膀 4 褐色翅膀 5 红色翅膀 6 黑色翅膀
side_typeinteger描边类型 1 白边 2 金边
---
  • ret: 无

增加人物称号 confertitle

  • args:
名字类型说明、描述
playeruserdata玩家对象
title_namestring称号名
---
  • ret: 无

删除人物称号 deprivetitle

  • args:
名字类型说明、描述
playeruserdata玩家对象
...string,string,...称号名,称号名,称号名...
---
  • ret: 无

弹出窗口消息 messagebox

  • args:
名字类型说明、描述
playeruserdata玩家对象
msgstring消息内容
---
  • ret: 无

设置定时器 setontimerex

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring定时器ID
Bnumber间隔事件(秒)
---
  • ret: 无

停止定时器 setofftimerex

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring定时器ID
---
  • ret: 无

脚本调用lua calllua

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring文件
Bstring函数
---
  • ret: 无

获取玩家信息 getinfo

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: { mid:string, device_id:string, ip:string, port:integer } #tlog信息包含 mid device_id ip port

检测是否有指定地图属性 existsmapproperty

  • args:
名字类型说明、描述
playeruserdata玩家对象
map_propertynumber属性
---
  • ret: boolean 是否有

使用道具 eatitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
item_uuidstring道具uid
numinteger使用数量
use_typenumber使用类型
---
  • ret: 无

  • 示例:

function isc_test_interface:eatitem()

local itemid = "item_name"
local times = 10

eatitem(module.player, itemid, times)
LOGI("isc_test_interface eatitem result:")
end

使用道具 recycleitems

  • args:
名字类型说明、描述
playeruserdata玩家对象
item_uuid_listtable{integer-id} 道具uid列表
---
  • ret: 无

获取pk等级(罪恶等级,灰名,黄名,红名) getpklv

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: ENUM_GAELV | integer 红名规则等级

初始化排行榜 init

  • args:
名字类型说明、描述
rank_keystring排行榜key
sizenumber展示榜的排名数量
---
  • ret: 无

添加排行榜规则 addsortrule

  • args:
名字类型说明、描述
rank_keystring排行榜key
sort_key_namestring排序关键字名
is_lowboolean是否降序 true-降序 false-升序
---
  • ret: 无

查询排行榜信息 getranklistinfo

  • args:
名字类型说明、描述
rank_keystring排行榜信息
start_idxnumber从第几名开始查询(从1开始)
end_idxnumber从第几名查询结束查询(从1开始)
---
  • ret: rank_info[] 排行榜列表信息 { rank_info }

更新排行榜信息 updateinfo

  • args:
名字类型说明、描述
rank_keystring排行榜key
uuidnumber排行信息唯一标识符
namestring名字
ttable{ ["key"] = val } key: 排序关键字名 val:数据值
notifybooleanundefined
---
  • ret: 无

删除指定标记信息(如果标记是玩家id则删除玩家排名) delrankinfo

  • args:
名字类型说明、描述
rank_keystring排行榜key
uuidnumber唯一标记
---
  • ret: 无

清空排行榜 clean

  • args:
名字类型说明、描述
rank_keystring排行榜key
---
  • ret: 无

获取目标排名信息 getrankinfo

  • args:
名字类型说明、描述
rank_keystring排行榜信息
uuidnumber排行信息唯一标识符
---

获取目标排位 getrankpos

  • args:
名字类型说明、描述
rank_keystring排行榜信息
uuidnumber排行信息唯一标识符
---
  • ret: number 排行榜信息

获取场景道具配置信息 getmetasceneitem

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

获取道具对象 getitem

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

通过配置id(scene_cs.xlsx id)(副本场景,一个场景配置id可能对应多个场景对象) getbyidscene

  • args:
名字类型说明、描述
idnumber配置id
---
  • ret: table 场景列表

通过配置id获得其中一个场景对象 getone

  • args:
名字类型说明、描述
idnumber配置id
---
  • ret: userdata 场景对象

通过唯一id获得场景 getbyuuidscene

  • args:
名字类型说明、描述
uidnumber唯一id
---
  • ret: userdata 场景

获得场景配置名(scene_cs.xlsx name) getnamescene

  • args:
名字类型说明、描述
sceneuserdata场景
---
  • ret: string 名字

获得场景配置id getidscene

  • args:
名字类型说明、描述
sceneuserdata场景
---
  • ret: number 配置id(scene_cs.xlsx id)

获得场景唯一id getuuidscene

  • args:
名字类型说明、描述
sceneuserdata场景
---
  • ret: number 唯一id

是否是副本场景 isdg

  • args:
名字类型说明、描述
sceneuserdata场景
---
  • ret: boolean 是否

副本唯一id getdguuidbyscene

  • args:
名字类型说明、描述
sceneuserdata场景对象
---
  • ret: number 副本唯一id 未获取到副本时返回0

获得场景出生点 getbornpos

  • args:
名字类型说明、描述
sceneuserdata场景
---
  • ret: pos_info 出生点

设置场景出生点 setbornpos

  • args:
名字类型说明、描述
sceneuserdata场景
xnumberx
ynumbery
---
  • ret: 无

随机一个坐标点 getrandompos

  • args:
名字类型说明、描述
sceneuserdata场景
objuserdata对象(需要产生随机点的目标对象)
---
  • ret: pos_info 坐标点

是否是非阻挡点(只检查了物理阻挡) isemptypos

  • args:
名字类型说明、描述
sceneuserdata场景
xnumberx
ynumbery
---
  • ret: boolean 是否

对指定对象是否是非阻挡点 isobjectemptypos

  • args:
名字类型说明、描述
sceneuserdata场景
objuserdata对象
xnumberx
ynumbery
---
  • ret: boolean 是否

是否是安全区点 issafepos

  • args:
名字类型说明、描述
sceneuserdata场景
xnumberx
ynumbery
---
  • ret: boolean 是否

跳转指定配置id场景(确认 scene_cs.xlsx scene_type 是静态场景,否则可能会是错误的传送) transferid

  • args:
名字类型说明、描述
playeruserdata指定玩家
idnumber目的场景id
xnumber目的坐标x
ynumber目的坐标y
radiusnumber?随机范围,默认范围5,超过5则全图随机, 0:表示定点传送
---
  • ret: boolean 是否成功

跳转指定唯一id场景(副本场景,一个场景配置id对应多个场景实例,也就是多个唯一id) transferuuid

  • args:
名字类型说明、描述
playeruserdata指定玩家
uidnumber目的场景唯一id
xnumber目的坐标x
ynumber目的坐标y
radiusnumber?随机范围,默认范围5,超过5则全图随机, 0:表示定点传送
---
  • ret: boolean 是否成功

直接传送到指定npc位置(默认在npc 3格访问内) transfer2npc

  • args:
名字类型说明、描述
playeruserdata玩家对象
npcuserdatanpc对象
---
  • ret: 无

寻路到指定npc位置(默认在npc 20格访问外则自动给传送) route2npc

  • args:
名字类型说明、描述
playeruserdata玩家对象
npcuserdatanpc对象
task_idinteger
---
  • ret: 无

寻路到指定位置(这里只能针对非副本(镜像)地图) route2pos

  • args:
名字类型说明、描述
playeruserdata玩家对象
scene_idinteger场景ID
dest_xintegernpc对象
dest_yintegernpc对象
task_idinteger
commandstring达到指定目标后执行命名
---
  • ret: 无

移动到当前场景指定位置 moveto

  • args:
名字类型说明、描述
playeruserdata指定玩家
xnumber目的坐标x
ynumber目的坐标y
radiusnumber随机范围,默认范围5,超过5则全图随机, 0:表示定点传送
---
  • ret: boolean 是否成功

场景内所有对象 getallobjects

  • args:
名字类型说明、描述
sceneuserdata场景
bits_filternumber过滤器
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

场景内所有玩家对象 getallplayersscene

  • args:
名字类型说明、描述
sceneuserdata场景
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

场景内所有怪物对象 getallmonsters

  • args:
名字类型说明、描述
sceneuserdata场景
only_countboolean?是否是获取数量
---
  • ret: table|number 对象列表

场景内所有npc对象 getallnpcs

  • args:
名字类型说明、描述
sceneuserdata场景
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

  • 示例:

function isc_test_interface:getallnpcs()
local scene = edi.player:get_scene(module.player)
LOGI("getallnpcs: " .. tostring(getallnpcs(scene, true)))
end

场景内所有场景道具对象 getallsceneitems

  • args:
名字类型说明、描述
sceneuserdata场景
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

  • 示例:

function isc_test_interface:getallsceneitems()
local scene = edi.player:get_scene(module.player)
LOGI("getallsceneitems: " .. tostring(getallsceneitems(scene, true)))
end

场景内所有扩展对象(特效、传送点) getallexts

  • args:
名字类型说明、描述
sceneuserdata场景
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

  • 示例:

function isc_test_interface:getallexts()
local scene = edi.player:get_scene(module.player)
LOGI("getallexts: " .. tostring(getallexts(scene, true)))
end

视野内对象 geteyeobjects

  • args:
名字类型说明、描述
objuserdata指定对象
bits_filternumber过滤器
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

  • 示例:

function isc_test_interface:geteyeobjects()
LOGI("geteyeobjects: " .. tostring(geteyeobjects(module.player, 1, true)))
end

视野内所有玩家对象 geteyeplayers

  • args:
名字类型说明、描述
objuserdata场景
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

  • 示例:

function isc_test_interface:geteyeplayers()
LOGI("geteyeplayers: " .. tostring(geteyeplayers(module.player, true)))
end

视野内所有怪物对象 geteyemonsters

  • args:
名字类型说明、描述
objuserdata场景
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

视野内所有npc对象 geteyenpcs

  • args:
名字类型说明、描述
objuserdata场景
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

  • 示例:

function isc_test_interface:geteyenpcs()
LOGI("geteyenpcs: " .. tostring(geteyenpcs(module.player, true)))
end

视野内所有场景道具对象 geteyesceneitems

  • args:
名字类型说明、描述
objuserdata场景
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

  • 示例:

function isc_test_interface:geteyesceneitems()
LOGI("geteyesceneitems: " .. tostring(geteyesceneitems(module.player, true)))
end

指定半径范围内对象 getrectobjects

  • args:
名字类型说明、描述
sceneuserdata场景
centerpos_info中心点
radiusnumber半径
bits_filternumber过滤器
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

  • 示例:

function isc_test_interface:getrectobjects()
local scene = edi.player:get_scene(module.player)
LOGI("getrectobjects: " .. tostring(getrectobjects(
scene,
edi.player:get_scene_pos(module.player),
5,
1,
true)))
end

指定半径范围内玩家对象 getrectplayers

  • args:
名字类型说明、描述
sceneuserdata场景
centerpos_info中心点
radiusnumber半径
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

  • 示例:

function isc_test_interface:getrectplayers()
local scene = edi.player:get_scene(module.player)
LOGI("getrectplayers: " .. tostring(getrectplayers(
scene,
edi.player:get_scene_pos(module.player),
5,
true)))
end

通区同步文件 updatetongfile

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring文件路径
Bstring文件路径
---
  • ret: 无

  • 示例:

function isc_test_interface:updatetongfile()
updatetongfile(module.player, "../editing.version", "../editing.version.bak")
end

复位人物属性点 restbonuspoint

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_interface:restbonuspoint()
restbonuspoint(module.player)
end

人物属性点 usebonuspoint

  • args:
名字类型说明、描述
playeruserdata玩家对象
Anumber属性枚举
Bstring控制符(= + -)
Cnumber点数(0-1000)
Dnumber模式(0或空=上下限都加 1=下限 2=上限)todo待定
---
  • ret: 无

  • 示例:

function isc_test_interface:usebonuspoint()
usebonuspoint(module.player, 1, '+', 100)
end

调整人物属性点 bonuspoint

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring控制符(= + -)
Bnumber点数(0-1000)
---
  • ret: 无

  • 示例:

function isc_test_interface:bonuspoint()
bonuspoint(module.player, '+', 100)
end

调整人物经验点数 changeexp

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring控制符(= + -)
Bnumber经验值
Cnumber空或0=不增加聚灵珠子经验 1=同时聚灵珠经验增加
---
  • ret: 无

  • 示例:

function isc_test_interface:changeexp()
changeexp(module.player, '+', 100)
end

临时调整人物属性 changehumability

  • args:
名字类型说明、描述
playeruserdata玩家对象
Anumber属性id
Bstring控制符(= + -)
Cnumber
Dnumber有效时间(秒)
---
  • ret: 无

  • 示例:

function isc_test_interface:changehumability()
changehumability(module.player, 11, '+', 100)
end

调整物品元素属性 setnewitemvalue

  • args:
名字类型说明、描述
playeruserdata玩家对象
Anumber位置(-1=ok框中的装备, 0-55穿在身上的装备)
Bnumber属性(0-10)
Cstring控制符(= + -)
Dnumber
---
  • ret: 无

  • 示例:

function isc_test_interface:setnewitemvalue()
setnewitemvalue(module.player, 1, 6, '+', 100)
end

人物杀怪爆率倍数 (不同步到跨服) killmonburstrate

  • args:
名字类型说明、描述
playeruserdata玩家对象
Anumber倍率
Bnumber时间(秒)
---
  • ret: 无

  • 示例:

function isc_test_interface:killmonburstrate()
killmonburstrate(module.player, 1, 30)
end

检测人物职业 checkjob

  • args:
名字类型说明、描述
playeruserdata玩家对象
jobstring职业名
---
  • ret: 无

  • 示例:

function isc_test_interface:checkjob()
checkjob(module.player, "WARRIOR")
end

人物身上装备修改持久 changeitemdura

  • args:
名字类型说明、描述
playeruserdata玩家对象
Anumber装备位置
Bstring操作符号(+ - = )
Cnumber数值
Dnumber模式(空或0: 修改当当前持久 1:修改当前最大持久)
---
  • ret: 无

  • 示例:

function isc_test_interface:changeitemdura()
changeitemdura(module.player, 1, '+', 30)
end

调整HP(血量)的百分比 addhpper

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring操作符号(+ - = )
Bnumber数值
---
  • ret: 无

  • 示例:

function isc_test_interface:addhpper()
addhpper(module.player, '+', 30)
end

调整MP(蓝量)的百分比 addmpper

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring操作符号(+ - = )
Bnumber数值
---
  • ret: 无

  • 示例:

function isc_test_interface:addmpper()
addmpper(module.player, '+', 10)
end

隐藏角色全部斗笠 sethathide

  • args:
名字类型说明、描述
playeruserdata玩家对象
Anumber0=显示 1=隐藏
---
  • ret: 无

  • 示例:

function isc_test_interface:sethathide()
sethathide(module.player, 1)
end

设置部位属性 -- todo 实际功能未处理 setequipaddvalue

  • args:
名字类型说明、描述
playeruserdata玩家对象
Anumber部位(装备位置)
Bstring控制符(+ - =)
Cnumber倍数(万分比)
---
  • ret: 无

获取部位属性倍数 getequipaddvalue

  • args:
名字类型说明、描述
playeruserdata玩家对象
Anumber部位(装备位置)
---
  • ret: 无

  • 示例:

function isc_test_interface:getequipaddvalue()
getequipaddvalue(module.player, 1)
end

调整人物所有属性 changehumnewvalue

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger位置 对应cfg_att_score 属性ID
Binteger对应属性值
Cinteger有效时间,秒
---
  • ret: 无

  • 示例:

function isc_test_interface:changehumnewvalue()
changehumnewvalue(module.player, 1, 10, 10)
end

SendMsg(发送文字信息说明) sendmsg

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger详细参考 http://cshelp.996m2.com/web/#/7/181
Bstring发送的信息内容。可用特殊变量:%s替代当前人物名,%d替代当前NPC名
Cinteger颜色0…255(8、9、24、25、26、27支持字体颜色,不支持背景颜色)
Dinteger颜色0…255(16,17、21同时支持字体与背景颜色)
---
  • ret: 无

  • 示例:

function isc_test_interface:sendmsg()
sendmsg(module.player, 1, "yahaha~~~~", 10, 11)
end

GuildNoticeMsg (发送自定义颜色的文字信息.) guildnoticemsg

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger前景颜色
Binteger背景颜色
Cstring发送的信息内容。可用特殊变量:%s替代当前人物名,%d替代当前NPC名
Dstring参数四等于'Self'时只发送给自己, 等于'Group'时发送给组队,等于'Map'时发送到当前地图中的人物.如果省略参数四表示全服发送
---
  • ret: 无

  • 示例:

function isc_test_interface:guildnoticemsg()
guildnoticemsg(module.player, 1, 2, "yahaha1~~~~", "map")
end

发送聊天框固顶信息 sendtopchatboardmsg

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger发送模式(0发送给所有人,1发送给自己)
Binteger字体颜色
Cinteger背景颜色
Dinteger时间(秒)
Estring信息
Finteger是否显示人物名称(0显示,1不显示)
---
  • ret: 无

  • 示例:

function isc_test_interface:sendtopchatboardmsg()
sendtopchatboardmsg(module.player, 1, 1, 2, 10, "yahaha2~~~~", 0)
end

发送屏幕滚动信息 sendmovemsg

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger发送模式(0发送给所有人,1发送给自己)
Binteger字体颜色
Cinteger背景颜色
DintegerY坐标
Einteger滚动次数
Fstring信息内容
---
  • ret: 无

  • 示例:

function isc_test_interface:sendmovemsg()
sendmovemsg(module.player, 1, 1, 2, 10, 5, "yahaha3~~~~")
end

发送屏幕中间大字体信息 sendcentermsg

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger前景色
Binteger背景颜色
Cstring信息内容
Dinteger0=发送给自己 1=发送所有人物 2=发送行会 3=发送国家 4=发送当前地图 5=替换模式 7=组队
---
  • ret: 无

  • 示例:

function isc_test_interface:sendcentermsg()
sendcentermsg(module.player, 1, 1, "yahaha4~~~~", 1)
end

主屏幕弹出公告 sendmsgnew

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger前景色
Binteger背景颜色
Cstring信息内容
Dinteger模式:0=发送给自己 1=发送所有人物 2=发送行会 3=发送当前地图 4= 组队
---
  • ret: 无

  • 示例:

function isc_test_interface:sendmsgnew()
sendmsgnew(module.player, 1, 1, "yahaha5~~~~", 1)
end

获取指定地图玩家数量 getplaycountinmap

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring地图编号
Bnumber是否全部获取 0=全部获取 1=排除已死亡的
---
  • ret: 无

  • 示例:

function isc_test_interface:getplaycountinmap()
getplaycountinmap(module.player, '0', 0)
end

添加场景定时器 setenvirontimer

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring地图编号
Bstring定时器ID
Cnumber定时器间隔
Dstring调用QM的标签名
---
  • ret: 无

删除场景定时器 setenvirofftimer

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring地图编号
Bstring定时器ID
---
  • ret: 无

获取当前地图指定怪物名称的数量 findmapmonster

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring地图编号
Bstring怪物名称
Dstring模式 0或空= 当前地图共存在怪物数量,包含死亡怪物,尸体未清理掉的 1=当前地图存活的怪物数量 2=当前地图死亡的怪物数量
---
  • ret: 无

  • 示例:

function isc_test_interface:findmapmonster()
findmapmonster(module.player, '0', '森林雪人', 0)
end

定点传送到地图里 mapmove

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring地图编号
Bnumber坐标X
Cnumber坐标Y
Dnumber范围(可忽略)
---
  • ret: 无

  • 示例:

function isc_test_interface:mapmove()
mapmove(module.player, '0', 328, 263, 5)
end

把某个地图中的玩家全部移动到另外一个地图 movemapplay

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring原地图编号
Bstring目标地图编号
Cnumber坐标X
Dnumber坐标Y
---
  • ret: 无

  • 示例:

function isc_test_interface:movemapplay()
movemapplay(module.player, '0', '0', 328, 263)
end

获取当前登录时间 (秒) getlogintime

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 最近一次登录时间

  • 示例:

function isc_test_interface:getlogintime()
LOGI("test: getlogintime" .. tostring(getlogintime(module.player)))
end

获得上一个场景id getlastmapid

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 场景id(配置id)

  • 示例:

function isc_test_interface:getlastmapid()
LOGI("test: getlastmapid" .. tostring(getlastmapid(module.player)))
end

获得当前副本对象 getdgbyplayer

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: userdata 副本对象

设置玩家状态 setstate

  • args:
名字类型说明、描述
playeruserdata玩家对象
stateROLE_STATE状态((枚举在constDef.lua))
---
  • ret: 无

  • 示例:

function isc_test_interface:setstate()
setstate(module.player, core_def.ROLE_STATE.player)
end

设置玩家名字 setname

  • args:
名字类型说明、描述
playeruserdata玩家对象
newNamestring新名字
ItemIdentnumber消耗物uid
ItemNumnumber消耗物数量
---
  • ret: 无

  • 示例:

function isc_test_interface:setname()
-- setname(module.player, 'yahaha', 0, 0)
end

设置攻击模式 setattackmode

  • args:
名字类型说明、描述
playeruserdata玩家对象
modenumber攻击模式:0全体,1和平,2编组,3行会,4善恶,5阵营,6盟友,7敌
forceboolean是否强制
---
  • ret: 无

  • 示例:

function isc_test_interface:setattackmode()
setattackmode(module.player, 1, true)
end

设置优先打怪 setpriorityattackmonsters

  • args:
名字类型说明、描述
playeruserdata玩家对象
monsterstable?怪物配置id,nil为清空
---
  • ret: 无

添加货币 addmoney

  • args:
名字类型说明、描述
playeruserdata玩家对象
item_idnumber货币配置id
countnumber货币数量
---
  • ret: boolean 是否添加成功

扣除货币 submoney

  • args:
名字类型说明、描述
playeruserdata玩家对象
item_idnumber货币配置id
countnumber货币数量
---
  • ret: boolean 是否扣除成功

设置指定地点复活 reliveassign

  • args:
名字类型说明、描述
playeruserdata玩家对象
pospos_info坐标
scene_idnumber场景配置id
---
  • ret: boolean 是否成功

原地复活 reliveorigin

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: boolean 是否成功

设置玩家等级 setlevel

  • args:
名字类型说明、描述
playeruserdata玩家对象
levelnumber等级
---
  • ret: 无

设置玩家转生等级 setrlevel

  • args:
名字类型说明、描述
playeruserdata玩家对象
rlevelnumber转生等级
---
  • ret: 无

设置玩家攻击目标 setattacktargetbyuuid

  • args:
名字类型说明、描述
playeruserdata玩家对象
object_idnumber攻击目标uuid
---
  • ret: 无

获取玩家攻击目标 getattacktarget

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 攻击目标uuid

修改属性值 changeattr

  • args:
名字类型说明、描述
playeruserdata玩家对象
attr_idnumber属性id(attribute.xlsx表,对应attrDef.lua的AttrDef枚举, attr_id需1000以内)
valnumber属性值
---
  • ret: boolean 是否修改成功

  • 示例:

function isc_test_interface:changeattr()
changeattr(module.player, 1, 100)
end

修改属性值 changeattrex

  • args:
名字类型说明、描述
playeruserdata玩家对象
str_curattrstring当前属性配置数据
str_nextattrstring变化属性配置数据
---
  • ret: 无

获取指定模块的键值对Key对应的值(int2int) getintkv

  • args:
名字类型说明、描述
playeruserdata玩家对象
modKV_MODE自定义模块ID(core_def.lua的KVModeDef枚举,引擎提供枚举值100以内, 客户自定义模块枚举值需>100,若使用引擎提供mod枚举,key需要>3000)
keynumber自定义Key
---
  • ret: number 自定义Key对应值

  • 示例:

function isc_test_interface:getintkv()
local curr_exp = getintkv(module.player, core_def.KV_MODE.DEFAULT, OtherDef.EN_OTHER_2)
print("isc_test_interface test:".. curr_exp)
setintkv(module.player, core_def.KV_MODE.DEFAULT, OtherDef.EN_OTHER_2, curr_exp + 100)

local intkeys = getmodintkey(module.player, core_def.KV_MODE.DEFAULT)
for _, ik in ipairs(intkeys) do
print("isc_test_interface test keys: ".. ik)
end

setstrkv(module.player, core_def.KV_MODE.DEFAULT, "ceshi", "ceshi-value")
print("isc_test_interface test str:" .. getstrkv(module.player, core_def.KV_MODE.DEFAULT, "ceshi"))

local strkeys = getmodintkey(module.player, core_def.KV_MODE.DEFAULT)
for _, ik in ipairs(strkeys) do
print("isc_test_interface test str keys: ".. ik)
end

clearmodkey(module.player, core_def.KV_MODE.DEFAULT)

local strkeys = getmodintkey(module.player, core_def.KV_MODE.DEFAULT)
for _, ik in ipairs(strkeys) do
print("isc_test_interface test str keys 2: ".. ik)
end
end

获取指定模块的Key(int2int) getmodintkey

  • args:
名字类型说明、描述
playeruserdata玩家对象
modKV_MODE自定义模块ID(core_def.lua的KVModeDef枚举,引擎提供枚举值100以内, 客户自定义模块枚举值需>100,若使用引擎提供mod枚举,key需要>3000)
---
  • ret: table 自定义模块对应key

设置指定模块的键值对Key对应值(int2int) setintkv

  • args:
名字类型说明、描述
playeruserdata玩家对象
modKV_MODE自定义模块ID(core_def.lua的KVModeDef枚举,引擎提供枚举值100以内, 客户自定义模块枚举值需>100,若使用引擎提供mod枚举,key需要>3000)
keynumber自定义Key
valnumber自定义Key对应值
---
  • ret: 无

获取指定模块的键值对Key对应的值(str2str) getstrkv

  • args:
名字类型说明、描述
playeruserdata玩家对象
modKV_MODE自定义模块ID
keystring自定义Key
---
  • ret: string 自定义Key对应值

获取指定模块的Key(str2str) getmodstrkey

  • args:
名字类型说明、描述
playeruserdata玩家对象
modKV_MODE自定义模块ID
---
  • ret: table 自定义模块kv值

设置指定模块的键值对Key对应值(str2str) setstrkv

  • args:
名字类型说明、描述
playeruserdata玩家对象
modKV_MODE自定义模块ID
keystring自定义Key
valstring自定义Key对应值
---
  • ret: 无

清空指定模块的Key clearmodkey

  • args:
名字类型说明、描述
playeruserdata玩家对象
modKV_MODE自定义模块ID(core_def.lua的KVModeDef枚举,引擎提供枚举值100以内, 客户自定义模块枚举值需>100,若使用引擎提供mod枚举,key需要>3000)
---
  • ret: 无

获取指定模块的键值对Key对应的值(str2int) getgrowthkv

  • args:
名字类型说明、描述
playeruserdata玩家对象
modKV_MODE自定义模块ID(core_def.lua的KVModeDef枚举)
keystring自定义Key
---
  • ret: number 自定义Key对应值

设置指定模块的键值对Key对应值(str2int) setgrowthkv

  • args:
名字类型说明、描述
playeruserdata玩家对象
modKV_MODE自定义模块ID(core_def.lua的KVModeDef枚举)
keystring自定义Key
valnumber自定义Key对应值
---
  • ret: 无

获取指定模块的键值对Key对应的值(str2int) 只针对成长线用的 getgrowthkvex

  • args:
名字类型说明、描述
playeruserdata玩家对象
keystring自定义Key
---
  • ret: number 自定义Key对应值

设置指定模块的键值对Key对应值(str2int) 只针对成长线用的 setgrowthkvex

  • args:
名字类型说明、描述
playeruserdata玩家对象
keystring自定义Key
valnumber自定义Key对应值
---
  • ret: 无

获取指定模块的Key(str2int) getmodgrowthkey

  • args:
名字类型说明、描述
playeruserdata玩家对象
modKV_MODE自定义模块ID
---
  • ret: table 自定义模块kv值

设置玩家额外离线数据 setofflineextdata

  • args:
名字类型说明、描述
player_idnumber玩家uuid
keystring自定义Key
valstring自定义Key对应值
---
  • ret: 无

  • 示例:

function isc_test_interface:setofflineextdata()
setofflineextdata(edi.player:get_uuid(module.player), "txt:test", "txt:offline:test")

local function _callback(data)
print("offline data: ", data)
end
getofflineextdata(edi.player:get_uuid(module.player), {"txt:test"}, _callback, '')

clearofflineextdata(edi.player:get_uuid(module.player))

end

获取玩家额外离线指定key数据 getofflineextdata

  • args:
名字类型说明、描述
player_idnumber玩家uuid
vec_keyOFFLINE_INFO_TYPE[] or string[]离线数据key集合
call_backfunction回调
str_paramsstring透传参数
---
  • ret: 无

清除玩家额外离线数据 clearofflineextdata

  • args:
名字类型说明、描述
player_idnumber玩家uuid
---
  • ret: 无

设置红点 setredpoint

  • args:
名字类型说明、描述
playeruserdata玩家对象
red_pointnumber红点id
notifyboolean是否通知客户端
---
  • ret: 无

  • 示例:

function isc_test_interface:setredpoint()
local player = module.player
local red_point = 1
local notify = true
setredpoint(player, red_point, notify)
getredpoint(player, red_point)

savedb(player)
end

获得红点 getredpoint

  • args:
名字类型说明、描述
playeruserdata玩家对象
red_pointnumber红点id
---
  • ret: boolean 是否存在该红点

玩家数据打包入库 savedb

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

player添加定时器 addtimerplayer

  • args:
名字类型说明、描述
playeruserdata玩家对象
index_keystring标记
ticknumber间隔时间(毫秒)
countnumber重复次数
callback_funcfunction回调函数
callback_datastring?回调数据
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_interface:addtimerplayer()

local _callback = function(uuid, timer_key, callback_params)
print("isc_test_interface:callback================================== ", uuid, callback_params)
end

local player = module.player
local index_key = "player_timer"
local tick = 200
local count = 1
local params = "6"

addtimerplayer(player, index_key, tick, count, _callback, params)
hastimerplayer(player, index_key)
deltimerplayer(player, index_key)
end

删除指定定时器 deltimerplayer

  • args:
名字类型说明、描述
playeruserdata玩家对象
index_keystring标记
---
  • ret: 无

判断是否有指定定时器 hastimerplayer

  • args:
名字类型说明、描述
playeruserdata玩家对象
index_keystring标记
---
  • ret: boolean 是否成功

通知客户端属性变化 sendattrchange

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_interface:sendattrchange()
local player = module.player
sendattrchange(player)
end

充值接口 recharge

  • args:
名字类型说明、描述
playeruserdata玩家对象
productstring充值商品
custom_datastring用户自定义透传数据
is_real1 or 0=1真实充值 =0扶持充值(直接发货)
resourcestring原因
---
  • ret: 无

  • 示例:

function isc_test_interface:recharge()
local player = module.player
recharge(player, "com.cq.1", "1|2|4", 1, "test reason")
end

设置显示信息 setshowplayer

  • args:
名字类型说明、描述
playeruserdata玩家对象
showobject_show_info显示信息对象(object_show_info结构)
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_interface:setshowplayer()
local player = module.player
setshowplayer(player, {id = 1, show_type=1, ctx="context"})
local ret = getshowplayer(player, 1)
print("result = ", ret)
end

获取显示信息 getshowplayer

  • args:
名字类型说明、描述
playeruserdata玩家对象
idnumber显示信息id
---

设置外观显示 setoutlookplayer

  • args:
名字类型说明、描述
playeruserdata玩家对象
typeOUTLOOK_TYPE外观显示类型
valnumber外观显示类型对应值
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_interface:setoutlookplayer()
local player = module.player
setoutlookplayer(player, 1, 1)
local ret = getoutlookplayer(player, 1)
print("result = ", ret)
end

获取外观显示 getoutlookplayer

  • args:
名字类型说明、描述
playeruserdata玩家对象
typeOUTLOOK_TYPE外观显示类型
---
  • ret: number 外观显示类型对应值

设置名字颜色 setnamecolor

  • args:
名字类型说明、描述
playeruserdata玩家对象
colorinteger颜色
---
  • ret: 无

  • 示例:

function isc_test_interface:setnamecolor()
local player = module.player
setnamecolor(player, tonumber('FF', 16))
print("result = ", ret)
end

获取玩家登录渠道 getchannel

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: string 玩家登录渠道

  • 示例:

function isc_test_interface:getchannel()
local player = module.player
local result = getchannel(player)
print("get_channel result ", result)
end

获取玩家登录平台 getplat

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 玩家登录平台

  • 示例:

function isc_test_interface:getplat()
local player = module.player
local result = getplat(player)
print("get_plat result ", result)
end

指定背包爆出道具 burstitems

  • args:
名字类型说明、描述
playeruserdata玩家对象(爆出装备的玩家对象)
attackeruserdata攻击者
bag_typestring背包类型
item_listtable{item_info} 道具列表
reasonstringundefined
---
  • ret: 无

  • 示例:

function isc_test_interface:burstitems()
local player = module.player
local bag_type = include("engine.define.bag_def").EN_BAG_1
local items = edi.bag:get_all(player, bag_type);
local M = include("engine.core.module.struct")
local drops = {}
for _, item in pairs(items) do
local uuid = edi.item:get_uuid(item)
local num = edi.bag:overlap_count(player, bag_type, uuid)
local data = M:make_item_uuid_info(uuid, num)
table.insert(drops, data)
end
burstitems(player, player, bag_type, drops, "reason")
end

获取掉落物 getdropitems

  • args:
名字类型说明、描述
playeruserdata玩家对象
drop_id_listinteger[]掉落id 列表 {id1, id2}
coefficientinteger系数
---
  • ret: item_info[] 掉落物

  • 示例:

function isc_test_interface:getdropitems()
local player = module.player
local items = getdropitems(player, {2001}, 0)
for _, v in pairs(items) do
print("item ", v.item_id, v.item_num, v.bind)
end
end

获取玩家好友列表 getfriendslist

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: table 好友列表(玩家uuid)

踢玩家下线 kickout

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_interface:kickout()
-- kickout(module.player)
endinclude("engine.core.interface")

关闭当前对话框 closedialog

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_interface:closedialog()

closedialog(module.player)
LOGI("isc_test_interface closedialog")
end

打开/关闭游戏面板 operatorpanel

  • args:
名字类型说明、描述
playeruserdata玩家对象
panel_indexPANEL_INDEX面板index
closeboolean?是否执行关闭
---
  • ret: 无

  • 示例:

function isc_test_interface:operatorpanel()

local panel_index = 1
local close = false

operatorpanel(module.player, panel_index, close)
LOGI("isc_test_interface operatorpanel")
end

打开/关闭自动战斗 operatorautogame

  • args:
名字类型说明、描述
playeruserdata玩家对象
openboolean?是否执行开启
---
  • ret: 无

  • 示例:

function isc_test_interface:operatorautogame()

local open = false

operatorautogame(module.player, open)
LOGI("isc_test_interface operatorautogame")
end

编组地图传送 groupmapmove

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring地图ID
Bintegerx坐标
Cintegery坐标
Dinteger可以传送最低等级(可以为空,为空时不检测队员的等级直接传送)
Einteger传送范围。(以队长为中心传送队友,0为不需要范围)
Fstring触发字段 @xxxxx
---
  • ret: 无

  • 示例:

function isc_test_interface:groupmapmove()

local map_name = "比奇"
local posx = 100
local posy = 100
local lv = 1
local radius = 5
local qfunc = ""

groupmapmove(module.player, map_name, posx, posy, lv, radius, qfunc)
LOGI("isc_test_interface groupmapmove")
end

随机传送到地图里 groupmove

  • args:
名字类型说明、描述
playeruserdata玩家对象
Anumber地图编号
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_interface:groupmove()

local map_name = "比奇"

local result = groupmove(module.player, map_name)
LOGI("isc_test_interface groupmove result:", ret_bool(result, "groupmove"))
end

定时返回源地图 timerecall

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger时间(单位 分钟)
---
  • ret: 无

  • 示例:

function isc_test_interface:timerecall()

local time = 1

local result = timerecall(module.player, time)
LOGI("isc_test_interface timerecall result:", ret_bool(result, "timerecall"))
end

返回安全区 gohome

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_interface:gohome()

local result = gohome(module.player)
LOGI("isc_test_interface gohome result:", ret_bool(result, "gohome"))
end

在地图上播放魔法 addmapeffectevent

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger特效播放ID,用于区分多个地图特效
Bstring地图编号
Cinteger坐标X
Dinteger坐标Y
Einteger特效ID(data/cfg_model_info.xls表里的ID)
Finteger持续时间(秒)
Ginteger0:有人可见 1:自己可见 2:组队可见 3:行会成员可见 4:敌对可见
---
  • ret: 无

  • 示例:

function isc_test_interface:addmapeffectevent()

local eff_uuid = 1
local map_name = "name"
local posx = 2
local posy = 3
local eff_id = 4
local pay_time = 5
local mode = 1

addmapeffectevent(module.player, eff_uuid, map_name, posx, posy, eff_id, pay_time, mode)
LOGI("isc_test_interface addmapeffectevent")
end

删除地图播放魔法 delmapeffectevent

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger特效播放ID,用于区分多个地图特效
---
  • ret: 无

  • 示例:

function isc_test_interface:delmapeffectevent()

local eff_uuid = 1

delmapeffectevent(module.player, eff_uuid)
LOGI("isc_test_interface delmapeffectevent")
end

检测当前名字是否存在 ishavename

  • args:
名字类型说明、描述
playeruserdata玩家对象
namestring名字
---
  • ret: 无

  • 示例:

function isc_test_interface:ishavename()

local name = 1

local result = ishavename(module.player, name)
LOGI("isc_test_interface ishavename result:", result)
end

打开指定NPC面板 opennpcshow

  • args:
名字类型说明、描述
playeruserdata玩家/怪物 对象
NPCIndexintegerNPC索引(NPC配置表中的ID)
nRangeinteger范围值,在此范围内允许打开
---
  • ret: 无

  • 示例:

function isc_test_interface:opennpcshow()

local npcindex = 1
local nrange = 2

opennpcshow(module.player, npcindex, nrange)
LOGI("isc_test_interface opennpcshow")
end

自动移动到指定坐标,专用登陆器 gotonow

  • args:
名字类型说明、描述
playeruserdata玩家/怪物 对象
XintegerX坐标
YintegerY坐标
---
  • ret: 无

  • 示例:

function isc_test_interface:gotonow()

local x = 100
local y = 200

gotonow(module.player, x, y)
LOGI("isc_test_interface gotonow")
end

改变人物攻击模式 changeattackmode

  • args:
名字类型说明、描述
playeruserdata玩家/怪物 对象
attackmodeinteger攻击模式 0:全体 1:和平 2:阵营 3:盟友 4:编组 5:行会 6:善恶 7:敌人
---
  • ret: 无

  • 示例:

function isc_test_interface:changeattackmode()

local attackmode = 1

changeattackmode(module.player, attackmode)
LOGI("isc_test_interface changeattackmode")
end

调整人物攻击模式 sethumattackmode

  • args:
名字类型说明、描述
playeruserdata玩家/怪物 对象
attackmodeinteger攻击模式 0:全体 1:和平 2:阵营 3:盟友 4:编组 5:行会 6:善恶 7:敌人
timeinteger时间(秒)
---
  • ret: 无

  • 示例:

function isc_test_interface:sethumattackmode()

local attackmode = 1
local time = 2

sethumattackmode(module.player, attackmode, time)
LOGI("isc_test_interface sethumattackmode")
end

修改人物名字颜色 changenamecolor

  • args:
名字类型说明、描述
playeruserdata玩家/怪物 对象
colorinteger996m2 颜色列表
---
  • ret: 无

  • 示例:

function isc_test_interface:changenamecolor()

local color = 111

changenamecolor(module.player, color)
LOGI("isc_test_interface changenamecolor")
end

更改头发类型 hairstyle

  • args:
名字类型说明、描述
playeruserdata玩家/怪物 对象
Ainteger头发类型
---
  • ret: 无

  • 示例:

function isc_test_interface:hairstyle()

local hair = 333

hairstyle(module.player, hair)
LOGI("isc_test_interface hairstyle")
end

增加动态地图连接 addmaproute

  • args:
名字类型说明、描述
playeruserdata玩家/怪物 对象
namestring连接名称
Mapfromstring地图ID
X1integerX(小于0时随机坐标)
Y1integerY(小于0时随机坐标)
rangeinteger范围
Maptostring到达地图号
X2string到达地图X(小于0时随机坐标)
Y2integer到达地图Y(小于0时随机坐标)
timeinteger有效时间秒
---
  • ret: 无

  • 示例:

function isc_test_interface:addmaproute()

local name = "name"
local mapfrom = "mapfrom"
local x1 = 1
local y1 = 2
local range = 3
local mapto = 3
local x2 = 3
local y2 = 3
local time = 3

local result = addmaproute(module.player, name, mapfrom, x1, y1, range, mapto, x2, y2, time)
LOGI("isc_test_interface addmaproute")
end

删除动态地图连接 delmaproute

  • args:
名字类型说明、描述
playeruserdata玩家
namestring连接名称
Mapfromstring地图ID
---
  • ret: 无

  • 示例:

function isc_test_interface:delmaproute()

local name = "name"
local mapfrom = 1

delmaproute(module.player, name, mapfrom)
LOGI("isc_test_interface delmaproute")
end

获取动态地图连接坐标 getmaprouteinfo

  • args:
名字类型说明、描述
playeruserdata玩家
namestring连接名称
Mapfromstring地图ID
X1integerX(小于0时随机坐标)
Y1integerY(小于0时随机坐标)
Maptostring到达地图号
X2string到达地图X(小于0时随机坐标)
Y2integer到达地图Y(小于0时随机坐标)
---
  • ret: 无

  • 示例:

function isc_test_interface:getmaprouteinfo()

local name = "name"
local mapfrom = "比奇"
local x1 = 100
local y1 = 100
local mapto = 100
local x2 = 200
local y2 = 200

--getmaprouteinfo(name, mapfrom, x1, y1, mapto, x2, y2)
end

自动寻路打开指定NPC面板 opennpcshowex

  • args:
名字类型说明、描述
actoruserdata玩家对象
AnumberNPC的id范围
---
  • ret: 无

  • 示例:

function isc_test_interface:opennpcshowex()

local npcid = 1

--opennpcshowex(module.player, npcid)
--LOGI("isc_test_interface opennpcshowex")
end

在地上放置物品 throwitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring地图名称
Binteger坐标X
Cinteger坐标Y
Dinteger范围
Estring物品名
Fstring数量
Ginteger是否掉率提示 0=不提示 1=提示
Hinteger是否可以立即拾取0=不能立即拾取 1可以立即拾取
Iinteger是否只有自己或队友拾取其他人需要等待 1=只有自己 0=所有人
---
  • ret: 无

  • 示例:

function isc_test_interface:throwitem()

local map_name = "3"
local posx = 1
local posy = 2
local radius = 3
local item_name = "回城卷"
local str_data = "1|2"
local hint = 1
local code2 = 2
local onlyself =2

throwitem(module.player, map_name, posx, posy, radius, item_name, str_data, hint, code2, onlyself)
LOGI("isc_test_interface throwitem")
end

获取当前地图的boss状态 mapboss

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring地图编号
Bstring怪物名称
Cinteger怪物名字格式,0=默认名称(带数字) 1=显示名字(不带数字)
Dstring结果存入的变量名(字符串变量)
---
  • ret: 无

  • 示例:

function isc_test_interface:mapboss()

local map_id = 10
local map_name = "比奇"
local type = 0
local str = ""

mapboss(module.player, map_id, map_name, type, str)
LOGI("isc_test_interface mapboss")
end

获取指定地图指定怪物当前血量和最大血量 findmapmonsterhealth

  • 建议使用在活动那个或者当前地图就一致这个怪物的情况下

  • args:

名字类型说明、描述
playeruserdata玩家对象
Astring地图编号
Bstring怪物名称
Cstring结果存入的变量名(字符串变量)当前血量
Dstring结果存入的变量名(字符串变量)最大血量
---
  • ret: 无

  • 示例:

function isc_test_interface:findmapmonsterhealth()

local map_id = 10
local map_name = "比奇"
local type = 0
local str = ""

mapboss(module.player, map_id, map_name, type, str)
LOGI("isc_test_interface mapboss")
end

随机杀死地图中的怪物 randomkillmon

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring地图Id 如果发送的是‘self’ 表示玩家当前地图
Bstring怪物名字
Cinteger数量(1-255)
Dinteger掉落物品(0,1) 0=掉落 1=不掉落
---
  • ret: 无

  • 示例:

function isc_test_interface:randomkillmon()

local map_name = "1"
local mon_name = "2"
local num = 3
local isdrop = false

--local result = randomkillmon(module.player, mon_name, map_name, num, isdrop)
--LOGI("isc_test_interface randomkillmon result:", result)
end

移动指定坐标的怪物到新的位置 movemontopos

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring怪物名字
Bstring地图编号
Cinteger老坐标X
Dinteger老坐标Y
Einteger新坐标X
Finteger新坐标Y
---
  • ret: 无

  • 示例:

function isc_test_interface:movemontopos() -- 未实现

end

脚本命令刷怪 mongenex

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring地图名字
Binteger坐标X
Cinteger坐标Y
Dstring怪物名称
Einteger范围
Finteger数量
Ginteger名称颜色(该本吧不支持)
Hstring怪物自定义名称
Iinteger0=不过滤 1=过滤
---
  • ret: 无

设置怪物标记内容 setactorflag

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring参数1
---
  • ret: 无

  • 示例:

function isc_test_interface:setactorflag()

local map_name = "比奇"
local x = 1
local y = 1
local mon_name = "name"
local radius = 5
local num = 1
local color = 1
local mon_def = 1
local mode = 1

local result = setactorflag(module.player, map_name, x, y, mon_name, radius, num, color, mon_def, mode)
LOGI("isc_test_interface setactorflag result:", ret_bool(result, "setactorflag"))
end

回收背包矿石(目前是直接扣) takemine

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring物品名字
Binteger数量
Cstring操作符(< > =)
Dinteger品质(0-99)
---
  • ret: 无

  • 示例:

function isc_test_interface:takemine()

local itemid = "100010"
local num = 10
local op = "="
local quality = 0

takemine(module.player, itemid, num, op, quality)
LOGI("isc_test_interface takemine result:")
end

批量使用叠加消耗类型物品(只支持叠加物品) eatoverlapitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring物品名字(支持200,31,2类)
Binteger使用次数(0或空批量使用1 为使用1次)
---
  • ret: 无

穿人模式 throughhum

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger0=恢复, 1=穿人,2=穿怪,3=穿人穿怪
Binteger时间(秒)
Cinteger对象(0 当前人物 1自己宝宝)
---
  • ret: 无

  • 示例:

function isc_test_interface:throughhum()

local a = ""
local b = 1
local c = 2

throughhum(module.player, a, b, c)
LOGI("isc_test_interface throughhum result:")
end

创建背包 createbag

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
init_capacitynumber初始背包容量
max_capacitynumber最大背包容量
is_equip_bagboolean是否为装备背包
---
  • ret: boolean 是否创建成功 true-是 false-否

  • 示例:

function isc_test_interface:createbag()

local type = "111"
local init_capacity = 1
local max_capacity = 2
local is_equip_bag = true

local result = createbag(module.player, type, init_capacity, max_capacity, is_equip_bag)
LOGI("isc_test_interface createbag result:", ret_bool(result, "createbag"))
end

移除背包 removebag

  • 背包内物品会被删除

  • 背包内物品会被删除

  • args:

名字类型说明、描述
playeruserdata玩家对象
typestring背包类型(系统背包不可移除,只能移除自定义背包)
---
  • ret: boolean 是否移除成功 true-是 false-否

  • 示例:

function isc_test_interface:removebag()

local type = "111"

local result = removebag(module.player, type)
LOGI("isc_test_interface removebag result:", ret_bool(result, "removebag"))
end

是否为装备背包 isequipbag

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
---
  • ret: boolean 是否为装备背包 true-是 false-否

  • 示例:

function isc_test_interface:isequipbag()

local type = "bag_system_item"

local result = isequipbag(module.player, type)
LOGI("isc_test_interface isequipbag result:", ret_bool(result, "isequipbag"))
end

添加单个道具,指定背包与位置 addtoslot

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
slot_idnumber槽位id
itemitem_info(struct.lua.md##item_info) 道具信息
---
  • ret: boolean 是否添加成功 true-是 false-否

  • 示例:

function isc_test_interface:addtoslot()

local type = "bag_system_item"
local slot_id = 1
local item = edi.struct:make_item_info(1, 1, false)

local result = addtoslot(module.player, type, slot_id, item)
LOGI("isc_test_interface addtoslot result:", ret_bool(result, "addtoslot"))
end

添加多个道具 additems

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
itemsitem_info[] or item_uuid_info[]道具信息列表(item_info结构)
sourcestring来源信息
---
  • ret: boolean 是否添加成功 true-是 false-否

  • 示例:

function isc_test_interface:additems()

local type = "bag_system_item"
local item = {{item_id=1, item_num=1, bind=false}}
local source = ""

local result = additems(module.player, type, item, source)
LOGI("isc_test_interface additems result:", ret_bool(result, "additems"))
end

是否能添加多个道具 isenoughcapacity

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
itemsitem_info[] or item_uuid_info[]道具信息列表(item_info结构)
---
  • ret: boolean 是否能添加 true-是 false-否

  • 示例:

function isc_test_interface:isenoughcapacity()

local type = "bag_system_item"
local items = {{item_id=1, item_num=1, bind=false}}

local result = isenoughcapacity(module.player, type, items)
LOGI("isc_test_interface isenoughcapacity result:", ret_bool(result, "isenoughcapacity"))
end

移除多个道具(玩家主背包) subitems

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
itemsitem_info[] or item_uuid_info[]移除道具信息列表(item_info结构)(item_id不为0时,根据道具配置id扣除,item_uuid不为0时,根据道具唯一id扣除)
---
  • ret: boolean 是否移除成功 true-是 false-否

  • 示例:

function isc_test_interface:subitems()
local type = "bag_system_item"
local items = {{item_id=1, item_num=1, bind=false}}

local result = subitems(module.player, type, items)
LOGI("isc_test_interface subitems result:", ret_bool(result, "subitems"))
end

移除多个道具 subitemsex

  • args:
名字类型说明、描述
playeruserdata玩家对象
stritemsstring1
---
  • ret: boolean 是否移除成功 true-是 false-否

是否能移除多个道具(玩家主背包) isenoughitemsex

  • args:
名字类型说明、描述
playeruserdata玩家对象
stritemsstring1
---
  • ret: boolean 是否能移除多个道具 true-是 false-否

是否能移除多个道具 isenoughitems

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
itemsitem_info[] or item_uuid_info[]道具信息列表(item_info结构)
---
  • ret: boolean 是否能移除多个道具 true-是 false-否

  • 示例:

function isc_test_interface:isenoughitems()

local type = "bag_system_item"
local items = {{item_id=1, item_num=1, bind=false}}

local result = isenoughitems(module.player, type, items)
LOGI("isc_test_interface isenoughitems result:", ret_bool(result, "isenoughitems"))
end

根据道具唯一id获取道具对象 getitembyuuid

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
uuidstring道具唯一id
---
  • ret: userdata 道具对象

  • 示例:

function isc_test_interface:getitembyuuid()

local type = "bag_system_item"
local uuid = 1

local result = getitembyuuid(module.player, type, uuid)
LOGI("isc_test_interface getitembyuuid result:", ret_bool(result, "getitembyuuid"))
end

获取指定槽位id的道具对象 getbyslot

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
slot_idnumber槽位id
---
  • ret: userdata 道具对象

  • 示例:

function isc_test_interface:getbyslot()

local type = "bag_system_item"
local slot_id = 1

local result = getbyslot(module.player, type, slot_id)
LOGI("isc_test_interface getbyslot result:", ret_bool(result, "getbyslot"))
end

根据道具二进制数据还原道具 restoreitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
binarystring道具二进制数据
---
  • ret: bool 是否成功

  • 示例:

function isc_test_interface:restoreitem()

local type = "bag_system_item"
local binary = ""

local result = restoreitem(module.player, type, binary)
LOGI("isc_test_interface restoreitem result:", ret_bool(result, "restoreitem"))
end

根据配置id获取uuid列表 getuuidsbyid

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
idnumber道具配置id
---
  • ret: table uuid列表

  • 示例:

function isc_test_interface:getuuidsbyid()

local type = "bag_system_item"
local id = 1

local result = getuuidsbyid(module.player, type, id)
LOGI("isc_test_interface getuuidsbyid result:", ret_bool(result, "getuuidsbyid"))
end

交换同背包道具 swapslots

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
src_slot_idnumber资源槽位id
target_slot_idnumber目标槽位id
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_interface:swapslots()

local type = "bag_system_item"
local src_slot_id = 1
local target_slot_id = 2

local result = swapslots(module.player, type, src_slot_id, target_slot_id)
LOGI("isc_test_interface swapslots result:", ret_bool(result, "swapslots"))
end

交换不同背包道具 swapbags

  • args:
名字类型说明、描述
playeruserdata玩家对象
src_typestring资源背包类型
src_slot_idnumber资源槽位id
target_typestring目标背包类型
target_slot_idnumber目标槽位id
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_interface:swapbags()

local src_type = "bag_system_item"
local src_slot_id = 1
local target_type = "bag_equip_equip"
local target_slot_id = 2

--local result = swapbags(module.player, src_type, src_slot_id, target_type, target_slot_id)
-- LOGI("isc_test_interface swapbags result:", result)
end

获取背包当前格子容量 getcurcapacity

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
---
  • ret: number 背包当前格子容量

  • 示例:

function isc_test_interface:getcurcapacity()

local type = "bag_system_item"

local result = getcurcapacity(module.player, type)
LOGI("isc_test_interface getcurcapacity result:", ret_bool(result, "getcurcapacity"))
end

获取背包空余格子容量 getemptycapacity

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
---
  • ret: number 背包空余格子容量

  • 示例:

function isc_test_interface:getemptycapacity()

local type = "bag_system_item"

local result = getemptycapacity(module.player, type)
LOGI("isc_test_interface getemptycapacity result:", ret_bool(result, "getemptycapacity"))
end

获取背包最大格子容量 getmaxcapacity

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
---
  • ret: number 背包最大格子容量

  • 示例:

function isc_test_interface:getmaxcapacity()

local type = "bag_system_item"

local result = getmaxcapacity(module.player, type)
LOGI("isc_test_interface getmaxcapacity result:", ret_bool(result, "getmaxcapacity"))
end

获取背包下个空格子id getnextemptyslotid

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
---
  • ret: number 下个空格子id

  • 示例:

function isc_test_interface:getnextemptyslotid()

local type = "bag_system_item"

local result = getnextemptyslotid(module.player, type)
LOGI("isc_test_interface getnextemptyslotid result:", ret_bool(result, "getnextemptyslotid"))
end

获取背包内所有道具列表 getall

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
---
  • ret: userdata[] 所有道具列表

  • 示例:

function isc_test_interface:getall()

local type = "bag_system_item"

local result = getall(module.player, type)
LOGI("isc_test_interface getall result:", ret_bool(result, "getall"))
end

根据道具唯一id获取槽位id getslotid

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
uuidstring道具唯一id
---
  • ret: number 槽位id

  • 示例:

function isc_test_interface:getslotid()

local type = "bag_system_item"
local uuid = "111"

local result = getslotid(module.player, type, uuid)
LOGI("isc_test_interface getslotid result:", ret_bool(result, "getslotid"))
end

根据道具唯一id获取道具数量 overlapcount

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
uuidstring道具唯一id
---
  • ret: number 道具数量

  • 示例:

function isc_test_interface:overlapcount()

local type = "bag_system_item"
local uuid = "111"

local result = overlapcount(module.player, type, uuid)
LOGI("isc_test_interface overlapcount result:", ret_bool(result, "overlapcount"))
end

根据道具唯一id获取背包类型 gettype

  • args:
名字类型说明、描述
playeruserdata玩家对象
uuidstring道具唯一id
---
  • ret: string | nil #背包类型

  • 示例:

function isc_test_interface:gettype()

local uuid = "111"

local result = gettype(module.player, uuid)
LOGI("isc_test_interface gettype result:", ret_bool(result, "gettype"))
end

根据配置id获取道具数量 itemnum

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型(*表示全背包)
item_idnumber道具配置id
---
  • ret: number 道具数量

  • 示例:

function isc_test_interface:itemnum()

local type = "bag_system_item"
local item_id = 2

local result = itemnum(module.player, type, item_id)
LOGI("isc_test_interface itemnum result:", ret_bool(result, "itemnum"))
end

根据配置id获取对应自定义组信息 getitemreserveds

  • args:
名字类型说明、描述
item_idinteger道具配置id
---
  • ret: table {{id = id,leevl = reserved.level},...}

  • 示例:

function isc_test_interface:getitemreserveds()

local item_id = 1

local result = getitemreserveds(item_id)
LOGI("isc_test_interface getitemreserveds result:", ret_bool(result, "getitemreserveds"))
end

整理背包 arrange

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
---
  • ret: 无

  • 示例:

function isc_test_interface:arrange()

local type = "bag_system_item"

local result = arrange(module.player, type)
LOGI("isc_test_interface arrange result:", ret_bool(result, "arrange"))
end

清空背包 clear

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
---
  • ret: 无

  • 示例:

function isc_test_interface:clear()

local type = "bag_system_item"

local result = clear(module.player, type)
LOGI("isc_test_interface clear result:", ret_bool(result, "clear"))
end

背包扩容 enlarge

  • args:
名字类型说明、描述
playeruserdata玩家对象
typestring背包类型
countnumber扩容数量
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_interface:enlarge()

local type = "bag_system_item"
local count = 10

local result = enlarge(module.player, type, count)
LOGI("isc_test_interface enlarge result:", ret_bool(result, "enlarge"))
end

穿装备 takeon

  • args:
名字类型说明、描述
playeruserdata玩家对象
item_uuidstring装备uid
bag_typestring背包类型
---
  • ret: 无

  • 示例:

function isc_test_interface:takeon()

local uuid = "1111"
local type = "bag_system_item"

local result = takeon(module.player, uuid, type)
LOGI("isc_test_interface takeon result:", ret_bool(result, "takeon"))
end

脱装备 takeoff

  • args:
名字类型说明、描述
playeruserdata玩家对象
item_uuidstring装备uid
bag_typestring背包类型
---
  • ret: 无

  • 示例:

function isc_test_interface:takeoff()

local uuid = "1111"
local type = "bag_system_item"

local result = takeoff(module.player, uuid, type)
LOGI("isc_test_interface takeoff result:", ret_bool(result, "takeoff"))
end

选择标记指定道具(背包打卡状态下有效) selectitems

  • args:
名字类型说明、描述
playeruserdata玩家对象
item_uuidstable装备uids
---
  • ret: 无

  • 示例:

function isc_test_interface:selectitems()

local item_uuids = "11111"

local result = selectitems(module.player, {item_uuids})
LOGI("isc_test_interface selectitems result:", ret_bool(result, "selectitems"))
end

创建副本 createdg

  • args:
名字类型说明、描述
idxnumber标记(每一类副本的唯一标记,方便查找:如个人副本用玩家id,组队用队伍id)
scriptstring挂载脚本名(副本脚本中自定义的副本名字)
namestring副本名
scene_idnumber场景出生id
scene_listtable场景列表 {1,2,3}
lifenumber副本时长(秒)
extstring?拓展字符串
---
  • ret: userdata? 副本对象

  • 示例:

function isc_test_interface:createdg()

local idx = edi.player:get_uuid(module.player)
local script = "除魔挑战"
local name = "除魔挑战"
local scene_id = 1026
local scene_list = {1026}
local life = 120
local ext = ""

local dg = createdg(idx, script, name, scene_id, scene_list, life, ext)
LOGI("isc_test_interface createdg dg:", dg)

module.dg = dg
module.flag_id = idx
module.script = ""
module.uuid = ""

end

关闭副本 closedg

  • args:
名字类型说明、描述
dguserdata副本示例对象
---
  • ret: 无

副本是否关闭 isclosedg

  • args:
名字类型说明、描述
dguserdata副本对象
---
  • ret: boolean 副本是否已经关闭 true-关闭 false-未关闭

  • 示例:

function isc_test_interface:isclosedg()

local flag_id = 4
local dg = createdg(flag_id, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")

local result = isclosedg(dg)
LOGI("isc_test_interface isclosedg result:", ret_bool(result, "isclosedg"))
end

查找副本 finddg

  • args:
名字类型说明、描述
uuidnumber副本唯一id
---
  • ret: userdata 副本对象

  • 示例:

function isc_test_interface:finddg()

local uuid = "11111"

local result = finddg(uuid)
LOGI("isc_test_interface finddg result:", ret_bool(result, "finddg"))
end

获取副本 getdg

  • args:
名字类型说明、描述
scriptstring副本脚本
idxnumber唯一标记
---
  • ret: userdata? 副本对象

  • 示例:

function isc_test_interface:getdg()
getdg(module.player)
end

获取副本标记ID getdgflagid

  • args:
名字类型说明、描述
dguserdata副本对象
---
  • ret: integer | number 标记ID

  • 示例:

function isc_test_interface:getdgflagid()

local flag_id = 4
local dg = createdg(flag_id, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")

local result = getdgflagid(dg)
LOGI("isc_test_interface getdgflagid result:", ret_bool(result, "getdgflagid"))
end

获取副本的唯一ID getdguuid

  • args:
名字类型说明、描述
dguserdata副本对象
---
  • ret: number? 副本唯一ID

  • 示例:

function isc_test_interface:getdguuid()

local flag_id = 4
local dg = createdg(flag_id, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")

local result = getdguuid(dg)
LOGI("isc_test_interface getdguuid result:", ret_bool(result, "getdguuid"))
end

获取副本的脚本 getdgscript

  • args:
名字类型说明、描述
dguserdata副本对象
---
  • ret: string? 副本脚本名

  • 示例:

function isc_test_interface:getdgscript()

local flag_id = 4
local dg = createdg(flag_id, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")

local result = getdgscript(dg)
LOGI("isc_test_interface getdgscript result:", ret_bool(result, "getdgscript"))
end

设置战斗结果数据(如胜负信息) setdgresult

  • args:
名字类型说明、描述
dguserdata副本对象
retstring结果信息
---
  • ret: 无

  • 示例:

function isc_test_interface:setdgresult()

local flag_id = 4
local dg = createdg(flag_id, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")
local ret = "result"

setdgresult(dg, ret)
LOGI("isc_test_interface setdgresult")
end

获取副本基础信息 getdgbaseinfo

  • args:
名字类型说明、描述
dguserdata副本对象
---
  • ret: dg_base_info? 副本基础信息

  • 示例:

function isc_test_interface:getdgbaseinfo()

local flag_id = 4
local dg = createdg(flag_id, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")

local result = getdgbaseinfo(dg)
LOGI("isc_test_interface getdgbaseinfo result:", ret_bool(result, "getdgbaseinfo"))
end

设置副本lua数据 setdgluaext

  • args:
名字类型说明、描述
dguserdata副本对象
keystring数据key
valstring数据val
---
  • ret: 无

  • 示例:

function isc_test_interface:setdgluaext()

local flag_id = 4
local dg = createdg(flag_id, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")
local key = "1"
local val = 1

local result = setdgluaext(dg, key, val)
LOGI("isc_test_interface setdgluaext result:", ret_bool(result, "setdgluaext"))
end

获取副本lua数据 getdgluaext

  • args:
名字类型说明、描述
dguserdata副本对象
keystring数据key
---
  • ret: string 数据val

  • 示例:

function isc_test_interface:getdgluaext()

local flag_id = 4
local dg = createdg(flag_id, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")
local key = "1"
print("db dg,", dg)

local result = getdgluaext(dg, key)
LOGI("isc_test_interface getdgluaext result:", ret_bool(result, "getdgluaext"))
end

获取副本指定层的场景(超过则取副本最大层的场景) getdglayerscene

  • args:
名字类型说明、描述
dguserdata副本对象
layernumber层级
---
  • ret: userdata 场景

  • 示例:

function isc_test_interface:getdglayerscene()

local flag_id = 4
local dg = createdg(flag_id, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")
local layer = 1

local result = getdglayerscene(dg, layer)
LOGI("isc_test_interface getdglayerscene result:", ret_bool(result, "getdglayerscene"))
end

是否自动回收副本 setdgautorecycle

  • args:
名字类型说明、描述
dguserdata副本对象
is_openboolean是否开启自动回收副本(默认副本没人3分钟后自动回收),想常驻则设置false
---
  • ret: boolean true-成功 false-失败

  • 示例:

function isc_test_interface:setdgautorecycle()

local flag_id = 4
local dg = createdg(flag_id, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")
local is_open = false

local result = setdgautorecycle(dg, is_open)
LOGI("isc_test_interface setdgautorecycle result:", ret_bool(result, "setdgautorecycle"))
end

设置出生点 setdgborninfo

  • args:
名字类型说明、描述
dguserdata副本对象
scene_idnumber场景id
axis_xnumberX轴
axis_ynumberY轴
radiusnumber半径
---
  • ret: boolean true-修改成功 false-修改失败

  • 示例:

function isc_test_interface:setdgborninfo()

local flag_id = 4
local dg = createdg(flag_id, "除魔挑战", "除魔挑战", 1026, {1026}, 120, "")
local scene_id = 1
local axis_x = 1
local axis_y = 1
local radius = 5

local result = setdgborninfo(dg, scene_id, axis_x, axis_y, radius)
print("setdgborninfo result:", ret_bool(result, "setdgborninfo"))
end

改变人物模式 changemode

  • args:
名字类型说明、描述
actoruserdata玩家对象
modeinteger模式1~24
timeinteger时间(秒)
param1integer参数1,12-13,18,20,21代表几率,其余代表属性值
param2integer参数2,代表属性值
---
  • ret: 无

  • 示例:

function isc_test_interface:changemode() -- 未实现
end

删除仓库物品 delstorageitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring唯一ID或Idx (多个物品用逗号隔开 34233,43242,552)
Binteger0=删除所有Idx物品,1=删除唯一ID物品
---
  • ret: 无

  • 示例:

function isc_test_interface:delstorageitem()

local strids = "1001"
local mode = 0

delstorageitem(module.player, strids, mode)
LOGI("isc_test_interface delstorageitem")
end

修改装备内观Looks值 setitemlooks

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring唯一ID或Idx (多个物品用逗号隔开 34233,43242,552)
Bstring操作符(+ - =)
Cstring内观图片
---
  • ret: 无

  • 示例:

function isc_test_interface:setitemlooks()

local slot_id = 1
local op = "="
local looks = "picture"

setitemlooks(module.player, slot_id, op, looks)
LOGI("isc_test_interface setitemlooks")
end

设置人物背包格子数量 extbagopenitemcount

  • 快捷栏6格也算到角色背包格子内

  • args:

名字类型说明、描述
playeruserdata玩家对象
Ainteger格子数量(46-126)
---
  • ret: 无

  • 示例:

function isc_test_0002:extbagopenitemcount()
local player = module.player
local bret = extbagopenitemcount(player, 50)
--LOGI("isc extbagopenitemcount:".. bret)
end

通过物品唯一ID获取该物品是否绑定 getitembindinfo

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger物品唯一id
---
  • ret: string "1"表示绑定, "0"表示非绑定

  • 示例:

function isc_test_0002:getitembindinfo()
local player = module.player
local bret = getitembindinfo(player, 228324448775766017 , "")
--LOGI("isc getitembindinfo:".. bret)
end

设置装备和人物绑定状态 setequipbind

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置(0~55,-1时为ok框中物品)
Binteger绑定(0-1)
---
  • ret: 无

检测装备和人物绑定状态 checkitembind

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置(0~55,-1时为ok框中物品)
---
  • ret: boolean true表示绑定, false表示非绑定

  • 示例:

function isc_test_0002:checkitembind()
local player = module.player
local bret = checkitembind(player, 1)
--LOGI("isc checkitembind:".. bret)
end

物品添加标记-检测 checkitemflag

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置(0~55,-1时为ok框中物品)
Binteger标识(1-32)
---
  • ret: boolean true表示成功, false表示失败

  • 示例:

function isc_test_0002:checkitemflag()
local player = module.player
local bret = checkitemflag(player,1,1)
--LOGI("isc checkitemflag:".. bret)
end

物品添加标记-添加 setitemflag

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置(0~55,-1时为ok框中物品)
Binteger标识(1-32)
Cinteger状态(0,1)0或为空=清除 1=添加
---
  • ret: 无

  • 示例:

function isc_test_0002:setitemflag()
local player = module.player
local bret = setitemflag(player,1,1,1)
--LOGI("isc setitemflag:".. bret)
end

通过物品唯一ID获取物品名称 getitemnamebymakeindex

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger物品唯一id
---
  • ret: string 变量名

  • 示例:

function isc_test_0002:getitemnamebymakeindex()
local player = module.player
local bret = getitemnamebymakeindex(player,228324485549850625)
--LOGI("isc getitemnamebymakeindex:".. bret)
end

通过物品的唯一ID删除物品 delitembymakeindex

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger物品唯一id(多个用逗号隔开 343234,315342,554)
Bstring返回变量值(大于0代表绑定)
Cstring返回变量值(大于0代表删除失败)
---
  • ret: 无

  • 示例:

function isc_test_0002:delitembymakeindex()
local player = module.player
local bret = delitembymakeindex(player,228324485549850625)
--LOGI("isc delitembymakeindex:".. bret)
end

把人物身上装备放入背包中 takeex

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置
---
  • ret: 无

  • 示例:

function isc_test_0002:takeex()
local player = module.player
local bret = takeex(player,1)
--LOGI("isc takeex:".. bret)
end

解锁仓库格子 changestorage

  • args:
名字类型说明、描述
playeruserdata玩家对象
countinteger解锁的格子数
---
  • ret: 无

  • 示例:

function isc_test_0002:changestorage()
local player = module.player
local bret = changestorage(player,100)
--LOGI("isc changestorage:".. bret)
end

修改物品的附加属性值 changeitemaddvalue

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置
Binteger属性位置
Cstring符号
Dinteger
---
  • ret: 无

  • 示例:

function isc_test_0002:changeitemaddvalue()
local player = module.player
local bret = changeitemaddvalue(player,1,3,"+",1000)
--LOGI("isc changeitemaddvalue:".. bret)
end

装备升级功能可以指定升级物品及属性,按指定机率得到结果。 upgradeitemex

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置
Binteger属性位置
Cinteger成功机率(0-100)
Dinteger点数机率(0-255)
Einteger是否破碎(0,1)
Finteger是否显示文字信息(0,1)-- todo: 暂时不知道怎么用
---
  • ret: 无

  • 示例:

function isc_test_0002:upgradeitemex()
local player = module.player
local bret = upgradeitemex(player,1,3,100,155,0,1)
--LOGI("isc upgradeitemex:".. bret)
end

自动穿背包中的装备 autotakeonitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring装备名称
Binteger装备位置
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0002:autotakeonitem()
local player = module.player
local bret = autotakeonitem(player,"铁剑",1)
--LOGI("isc autotakeonitem:".. bret)
end

获取当前物品的附加元素属性 getnewitemaddvalue

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring装备位置/物品位置
Bstring元素属性数据
---
  • ret: 无

  • 示例:

function isc_test_0002:getnewitemaddvalue()
local player = module.player
local bret = getnewitemaddvalue(player,1,1)
--LOGI("isc getnewitemaddvalue:".. bret)
end

人物强制掉线 logout

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_0002:logout()
local player = module.player
local bret = logout(player)
--LOGI("isc logout:".. bret)
end

清理地图上指定名字的物品 clearitemmap

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger场景ID
BintegerX坐标
CintegerY坐标
Dinteger范围
Einteger道具名
---
  • ret: 无

  • 示例:

function isc_test_0002:clearitemmap()
local player = module.player
local bret = clearitemmap(player,1,345,268,10,"木剑")
--LOGI("isc clearitemmap:".. bret)
end

取指定位置的装备名字 getuseritemname

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置
---
  • ret: 无

  • 示例:

function isc_test_0002:getuseritemname()
local player = module.player
local bret = getuseritemname(player,1)
--LOGI("isc getuseritemname:".. bret)
end

刷新包裹 querybagitems

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_0002:querybagitems()
local player = module.player
local bret = querybagitems(player)
--LOGI("isc querybagitems:".. bret)
end

一键回收包裹物品的脚本命令 takebagitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring物品名称
Binteger回收数量
---
  • ret: 无

  • 示例:

function isc_test_0002:takebagitem()
local player = module.player
local bret = takebagitem(player,"铁剑",1)
--LOGI("isc takebagitem:".. bret)
end

穿装备 takeonitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring装备名称
Binteger装备位置
---
  • ret: 无

  • 示例:

function isc_test_0002:takeonitem()
local player = module.player
local bret = takeonitem(player,"铁剑",1)
--LOGI("isc takeonitem:".. bret)
end

脱装备 takeoffitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置
---
  • ret: 无

  • 示例:

function isc_test_0002:takeoffitem()
local player = module.player
local bret = takeoffitem(player,1)
--LOGI("isc takeoffitem:".. bret)
end

增加通过物品唯一ID穿戴装备 takeonmakeindex

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置
Binteger物品唯一ID
---
  • ret: 无

  • 示例:

function isc_test_0002:takeonmakeindex()
local player = module.player
local bret = takeonmakeindex(player,1,228324492105023489)
--LOGI("isc takeonmakeindex:".. bret)
end

通过物品IDX穿戴装备 takeonidx

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置
Binteger物品ID
---
  • ret: 无

  • 示例:

function isc_test_0002:takeonidx()
local player = module.player
local bret = takeonidx(player,1,8)
--LOGI("isc takeonidx:".. bret)
end

自动取装备 autotakeoffitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置
---
  • ret: 无

  • 示例:

function isc_test_0002:autotakeoffitem()
local player = module.player
local bret = autotakeoffitem(player)
--LOGI("isc autotakeoffitem:".. bret)
end

增加获取人物身上属性值 getabilvalue

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger属性ID
---
  • ret: integer 属性值

  • 示例:

function isc_test_0002:getabilvalue()
local player = module.player
local bret = getabilvalue(player,1)
--LOGI("isc getabilvalue:".. bret)
end

获取当前行会人数 guildmembercount

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:guildmembercount()
local player = module.player
local bret = guildmembercount(player)
--LOGI("isc guildmembercount:".. bret)
end

设置行会人数上限 setguildinfo

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:setguildinfo()
local player = module.player
local bret = setguildinfo(player)
--LOGI("isc setguildinfo:".. bret)
end

获取当前行会名称 getguildinfo

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:getguildinfo()
local player = module.player
local bret = getguildinfo(player)
--LOGI("isc getguildinfo:".. bret)
end

建立新行会 addguild

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:addguild()
local player = module.player
local bret = addguild(player,"啦啦啦")
--LOGI("isc addguild:".. bret)
end

把人物加入行会 addguildmember

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:addguildmember()
local player = module.player
local bret = addguildmember(player,"啦啦啦","")
--LOGI("isc addguildmember:".. bret)
end

增加调整当前行会的人数上线 addguildmembercount

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:addguildmembercount()
local player = module.player
local bret = addguildmembercount(player,"啦啦啦","+",100)
--LOGI("isc addguildmembercount:".. bret)
end

调整玩家货币 getbindmoney

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring货币名称
Bstring存入变量
---
  • ret: 无

  • 示例:

function isc_test_0002:getbindmoney()
local player = module.player
local bret = getbindmoney(player)
--LOGI("isc getbindmoney:".. bret)
end

调整玩家货币 changebindmoney

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring货币名称
Binteger数量
---
  • ret: 无

  • 示例:

function isc_test_0002:changebindmoney()
local player = module.player
local bret = changebindmoney(player)
--LOGI("isc changebindmoney:".. bret)
end

调整玩家选定货币数量 change_money

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring货币名
Bstring(+ - =)
Cinteger数量
---
  • ret: 无

调整玩家元宝 gamegold

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring(+ - =)
Binteger数量
---
  • ret: 无

  • 示例:

function isc_test_0002:gamegold()
local player = module.player
local bret = gamegold(player,"+",10000)
--LOGI("isc gamegold:".. bret)
end

调整玩家灵符 gamegird

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring(+ - =)
Binteger数量
---
  • ret: 无

  • 示例:

function isc_test_0002:gamegird()
local player = module.player
local bret = gamegird(player,"+",10000)
--LOGI("isc gamegird:".. bret)
end

金刚石 gamediamond

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring(+ - =)
Binteger数量
---
  • ret: 无

  • 示例:

function isc_test_0002:gamediamond()
local player = module.player
local bret = gamediamond(player,"+",10000)
--LOGI("isc gamediamond:".. bret)
end

关闭ssr界面 sendclosessr

  • args:
名字类型说明、描述
playeruserdata玩家对象
ssr_uidintegerSSR界面ID
---
  • ret: 无

  • 示例:

function isc_test_0002:sendclosessr()
local player = module.player
local bret = sendclosessr(player)
--LOGI("isc sendclosessr:".. bret)
end

局部刷新ssr界面 sendexecutessr

  • args:
名字类型说明、描述
playeruserdata玩家对象
contentstring数据内容
---
  • ret: 无

  • 示例:

function isc_test_0002:sendexecutessr()
local player = module.player
local bret = sendexecutessr(player)
--LOGI("isc sendexecutessr:".. bret)
end

发送协议给玩家 sendplayerproto

  • args:
名字类型说明、描述
playeruserdata玩家对象
cmdstring协议命令
ctxstring推送内容
---
  • ret: 无

  • 示例:

function isc_test_0002:sendplayerproto()
local player = module.player
local bret = sendplayerproto(player)
--LOGI("isc sendplayerproto:".. bret)
end

在线人员全服广播推送协议 sendbroadcastproto

  • args:
名字类型说明、描述
cmdstring协议命令
ctxstring推送内容
---
  • ret: 无

  • 示例:

function isc_test_0002:sendbroadcastproto()
local player = module.player
local bret = sendbroadcastproto(player)
--LOGI("isc sendbroadcastproto:".. bret)
end

通过配置名以及id获取数据 global.xlsx表需要特殊处理 返回值为string类型的value 非配置表数据 不可通过'*'获取全部配置 readxlsx

  • args:
名字类型说明、描述
xlsx_namestringexcel/xlsx配置表名字
keynumber or string配置key '*'表示全部数据, 表id查询用number型,用名字查询用string, 当前并非所有表都支持通过名字查询配置信息
---
  • ret: excel_cfg|excel_cfg[]|string? xlsx 的配置信息(每张表各不相同,具体字段名对照xlsx表的字段名),如items.xlsx 的字段name,表示名字,那么lua中使用为 table.name

  • 示例:

function isc_test_0002:readxlsx()
local player = module.player
local bret = readxlsx(player)
--LOGI("isc readxlsx:".. bret)
end

添加定时器 addtimergeneral

  • args:
名字类型说明、描述
keystring标记
ticknumber间隔时间(毫秒)
coutnumber次数
callback_funcfunction回调函数
callback_datastring回调数据
---
  • ret: 无

  • 示例:

function isc_test_0002:addtimergeneral()
local player = module.player
local bret = addtimergeneral(player)
--LOGI("isc addtimergeneral:".. bret)
end

删除定时器 deltimergeneral

  • args:
名字类型说明、描述
keystring标记
---
  • ret: 无

  • 示例:

function isc_test_0002:deltimergeneral()
local player = module.player
local bret = deltimergeneral(player)
--LOGI("isc deltimergeneral:".. bret)
end

判断是否存在指定定时器 hastimergeneral

  • args:
名字类型说明、描述
keystring标记
---
  • ret: boolean true-存在 false-不存在

  • 示例:

function isc_test_0002:hastimergeneral()
local player = module.player
local bret = hastimergeneral(player)
--LOGI("isc hastimergeneral:".. bret)
end

添加计划任务 addcrontab

  • args:
名字类型说明、描述
keystring标记
crontabstring计划任务 * * * * * *
callback_funcfunction回调函数
callback_datastring回调数据
---
  • ret: 无

  • 示例:

function isc_test_0002:addcrontab()
local player = module.player
local bret = addcrontab(player)
--LOGI("isc addcrontab:".. bret)
end

删除计划任务 delcrontab

  • args:
名字类型说明、描述
keystring标记
---
  • ret: 无

  • 示例:

function isc_test_0002:delcrontab()
local player = module.player
local bret = delcrontab(player)
--LOGI("isc delcrontab:".. bret)
end

判断是否有指定的计划任务 hascrontab

  • args:
名字类型说明、描述
keystring标记
---
  • ret: boolean true-存在 false-不存在

  • 示例:

function isc_test_0002:hascrontab()
local player = module.player
local bret = hascrontab(player)
--LOGI("isc hascrontab:".. bret)
end

获取当前时间戳(秒) getnowseconds

  • args:
名字类型说明、描述
---
  • ret: integer 当前时间戳(秒)

  • 示例:

function isc_test_0002:getnowseconds()
local player = module.player
local bret = getnowseconds(player)
LOGI("isc getnowseconds:".. bret)
end

获取当前为开服第几天 getopensvrday

  • args:
名字类型说明、描述
---
  • ret: integer 开服第几天

  • 示例:

function isc_test_0002:getopensvrday()
local player = module.player
local bret = getopensvrday(player)
LOGI("isc getopensvrday:".. bret)
end

获取首次开服时间 getserverfirstopentimestamp

  • args:
名字类型说明、描述
---
  • ret: integer 获取首次开服时间戳(秒)

  • 示例:

function isc_test_0002:getserverfirstopentimestamp()
local player = module.player
local bret = getserverfirstopentimestamp(player)
LOGI("isc getserverfirstopentimestamp:".. bret)
end

获取当前毫秒时间戳 getnowmilliseconds

  • args:
名字类型说明、描述
---
  • ret: integer 当前毫秒

  • 示例:

function isc_test_0002:getnowmilliseconds()
local player = module.player
local bret = getnowmilliseconds(player)
LOGI("isc getnowmilliseconds:".. bret)
end

获取0点时间戳(秒) dayzerotime

  • args:
名字类型说明、描述
time_stampinteger时间戳
---
  • ret: integer 0点时间戳(秒)

  • 示例:

function isc_test_0002:dayzerotime()
local player = module.player
local bret = dayzerotime(getnowseconds())
LOGI("isc dayzerotime:".. bret)
end

计算周几 getweekday

  • args:
名字类型说明、描述
timenumber时间戳(秒)
---
  • ret: integer 周几 -1 表示无效: 0-6表示从周天到周六

  • 示例:

function isc_test_0002:getweekday()
local player = module.player
local bret = getweekday(getnowseconds())
LOGI("isc getweekday:".. bret)
end

发送日志 recordtlog

  • args:
名字类型说明、描述
contentstring内容
---
  • ret: 无

  • 示例:

function isc_test_0002:recordtlog()
local player = module.player
local bret = recordtlog("deposit_glog","hhh|aaa",edi.player:get_uuid(player))
LOGI("isc recordtlog:".. bret)
end

获取mid getmid

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: string mid

  • 示例:

function isc_test_0002:getmid()
local player = module.player
local bret = getmid(player)
LOGI("isc getmid:".. bret)
end

获取设备id getdeviceid

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: string 设备id

  • 示例:

function isc_test_0002:getdeviceid()
local player = module.player
local bret = getdeviceid(player)
LOGI("isc getdeviceid:".. bret)
end

获取玩家ip getplayerip

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: string 玩家ip

  • 示例:

function isc_test_0002:getplayerip()
local player = module.player
local bret = getplayerip(player)
LOGI("isc getplayerip:".. bret)
end

获取玩家端口 getplayerport

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: number 玩家端口

  • 示例:

function isc_test_0002:getplayerport()
local player = module.player
local bret = getplayerport(player)
LOGI("isc getplayerport:".. bret)
end

获取服id getgroupid

  • args:
名字类型说明、描述
---
  • ret: number 服id

  • 示例:

function isc_test_0002:getgroupid()
local player = module.player
local bret = getgroupid(player)
LOGI("isc getgroupid:".. bret)
end

获取一级渠道id getchannelid

  • args:
名字类型说明、描述
---
  • ret: string 一级渠道id

  • 示例:

function isc_test_0002:getchannelid()
local player = module.player
local bret = getchannelid(player)
LOGI("isc getchannelid:".. bret)
end

获取二级渠道id getsubchannelid

  • args:
名字类型说明、描述
---
  • ret: string 二级渠道id

  • 示例:

function isc_test_0002:getsubchannelid()
local player = module.player
local bret = getsubchannelid(player)
LOGI("isc getsubchannelid:".. bret)
end

获取平台id getplatform

  • args:
名字类型说明、描述
---
  • ret: string 获取平台id

  • 示例:

function isc_test_0002:getplatform()
local player = module.player
local bret = getplatform(player)
LOGI("isc getplatform:".. bret)
end

获取游戏名称 getgameprojectname

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: string 游戏名称

  • 示例:

function isc_test_0002:getgameprojectname()
local player = module.player
local bret = getgameprojectname(player)
LOGI("isc getgameprojectname:".. bret)
end

是否开启tlog isopentlog

  • args:
名字类型说明、描述
---
  • ret: boolean 是否开启tlog

  • 示例:

function isc_test_0002:isopentlog()
local player = module.player
local bret = isopentlog(player)
LOGI("isc isopentlog:".. tostring(bret))
end

获取全局信息 getglobalinfo

  • args:
名字类型说明、描述
---
  • ret: {app_id:string,area_id:string,server_id:string,channel_id:string,sub_channel_id:string,platform:string,game_name:string} 全局信息表包含:app_id area_id server_id channel_id sub_channel_id platform game_name

  • 示例:

function isc_test_0002:getglobalinfo()
local player = module.player
local bret = getglobalinfo(player)
--{app_id:string,area_id:string,server_id:string,channel_id:string,sub_channel_id:string,platform:string,game_name:string}
print(bret.app_id ..
bret.area_id ..
bret.server_id ..
bret.channel_id ..
bret.sub_channel_id ..
bret.platform ..
bret.game_name)

--LOGI("isc getglobalinfo:".. bret)
end

随机数生成 random

  • args:
名字类型说明、描述
param1integer or number参数1
param2integer or number参数2
---
  • ret: number 随机数

  • 示例:

function isc_test_0002:random()
local player = module.player
local bret = random(1,100)
--LOGI("isc random:".. bret)
end

注册配置信息到服务器(接口偏向引擎协助支持具体功能用) regcfgtoserver

  • growup_tips 表的内容 为 { tips = "key对应的描述内容" }

  • args:

名字类型说明、描述
table_namestring表名字
keystring
ctxtable内容 table数据 引擎内部依据需要向lua获取数据,依据每个table的规则进行解析
---
  • ret: 无

  • 示例:

function isc_test_0002:regcfgtoserver()
local player = module.player
local bret = regcfgtoserver(player)
--LOGI("isc regcfgtoserver:".. bret)
end

重名检测 checkduplicatename

  • args:
名字类型说明、描述
playeruserdata玩家对象
namestring名字
---
  • ret: boolean 是否重名

  • 示例:

function isc_test_0002:checkduplicatename()
local player = module.player
local bret = checkduplicatename(player,"hahah")
LOGI("isc checkduplicatename:".. bret)
end

获取区ID getareaid

  • args:
名字类型说明、描述
---
  • ret: number 区ID

  • 示例:

function isc_test_0002:getareaid()
local player = module.player
local bret = getareaid(player)
LOGI("isc getareaid:".. bret)
end

获取游戏ID getappid

  • args:
名字类型说明、描述
---
  • ret: number 游戏ID

  • 示例:

function isc_test_0002:getappid()
local player = module.player
local bret = getappid(player)
LOGI("isc getappid:".. bret)
end

http请求 httprequest

  • args:
名字类型说明、描述
methodnumber0:post,1:get
urlstring请求域名
payloadstring请求内容(get时无效)
index_keystring标记Key
callback_funcfunction回调函数(参数参考示例)
callback_datastring回调数据
---
  • ret: 无

  • 示例:

function isc_test_0002:httprequest()
local player = module.player
local bret = httprequest(player)
--LOGI("isc httprequest:".. bret)
end

打印table表,debug级别 printtab

  • args:
名字类型说明、描述
...any任意数据
---
  • ret: 无

  • 示例:

function isc_test_0002:printtab()
local player = module.player
local bret = printtab(player)
--LOGI("isc printtab:".. bret)
end

通过行会id查找行会 getguild

  • args:
名字类型说明、描述
guild_idstring行会id
---
  • ret: userdata 行会对象(没有找到返回nil)

  • 示例:

function isc_test_0002:getguild()
local player = module.player
local bret = getguild(player)
--LOGI("isc getguild:".. bret)
end

获取所有的行会 getallguild

  • args:
名字类型说明、描述
---
  • ret: table 行会列表{ {行会ID, 行会对象}}

  • 示例:

function isc_test_0002:getallguild()
local player = module.player
local bret = getallguild(player)
--LOGI("isc getallguild:".. bret)
end

通过行会名称查找行会 getguildbyname

  • args:
名字类型说明、描述
guild_namestring行会名称
---
  • ret: userdata 行会对象(没有找到返回nil)

  • 示例:

function isc_test_0002:getguildbyname()
local player = module.player
local bret = getguildbyname(player)
--LOGI("isc getguildbyname:".. bret)
end

获取公会基础信息 getbasedata

  • args:
名字类型说明、描述
guild_objuserdata行会对象
---
  • ret: guild_info | nil 公会基础信息(失败返回nil)

  • 示例:

function isc_test_0002:getbasedata()
local player = module.player
local bret = getbasedata(player)
--LOGI("isc getbasedata:".. bret)
end

获取行会唯一id getuuidguild

  • args:
名字类型说明、描述
guild_objuserdata行会对象
---
  • ret: string | nil 行会唯一id(失败返回nil)

  • 示例:

function isc_test_0002:getuuidguild()
local player = module.player
local bret = getuuidguild(player)
--LOGI("isc getuuidguild:".. bret)
end

获取行会名字 getnameguild

  • args:
名字类型说明、描述
guild_objuserdata行会对象
---
  • ret: string | nil 行会名(失败返回nil)

  • 示例:

function isc_test_0002:getnameguild()
local player = module.player
local bret = getnameguild(player)
--LOGI("isc getnameguild:".. bret)
end

获取公会成员数量 getmembercount

  • args:
名字类型说明、描述
guild_objuserdata行会对象
---
  • ret: number 成员数量

  • 示例:

function isc_test_0002:getmembercount()
local player = module.player
local bret = getmembercount(player)
--LOGI("isc getmembercount:".. bret)
end

获取行会成员列表 getmemberidsguild

  • args:
名字类型说明、描述
guild_objuserdata行会对象
---
  • ret: table 成员id列表

  • 示例:

function isc_test_0002:getmemberidsguild()
local player = module.player
local bret = getmemberidsguild(player)
--LOGI("isc getmemberidsguild:".. bret)
end

获取行会成员对象 getmemberinfo

  • args:
名字类型说明、描述
guild_objuserdata行会对象
player_idnumber玩家uid
---
  • ret: guild_member_info 成员对象(失败返回nil)

  • 示例:

function isc_test_0002:getmemberinfo()
local player = module.player
local bret = getmemberinfo(player)
--LOGI("isc getmemberinfo:".. bret)
end

设置lua拓展数据 setluaextguild

  • args:
名字类型说明、描述
guild_objuserdata行会对象
keystring
valuestring
bsaveboolean是否保存
---
  • ret: 无

  • 示例:

function isc_test_0002:setluaextguild()
local player = module.player
local bret = setluaextguild(player)
--LOGI("isc setluaextguild:".. bret)
end

获取lua拓展数据 getluaextguild

  • args:
名字类型说明、描述
guild_objuserdata行会对象
keystring
---
  • ret: string

  • 示例:

function isc_test_0002:getluaextguild()
local player = module.player
local bret = getluaextguild(player)
--LOGI("isc getluaextguild:".. bret)
end

获取玩家选定货币数量 get_money

  • args:
名字类型说明、描述
playeruserdata玩家对象
var_namestring货币名
varstring货币名参数
---
  • ret: 无

  • 示例:

function isc_test_interface:get_money()
local player = module.player
local item_id = 1
local money = edi.player:get_money(player, item_id)
LOGI("isc player test:".. money)
end

调整玩家游戏点 gamepoint

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring(+ - =)
Binteger数量
---
  • ret: 无

  • 示例:

function isc_test_0002:gamepoint()
local player = module.player
local bret = gamepoint(player)
ret_bool(bret, "isc_test_0002:gamepoint")
----LOGI("isc gamepoint:".. bret)
end

调整玩家荣誉点 gameglory

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring(+ - =)
Binteger数量
---
  • ret: 无

  • 示例:

function isc_test_0002:gameglory()
local player = module.player
local bret = gameglory(player)
--LOGI("isc gameglory:".. bret)
end

调整玩家声望点数 creditpoint

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring(+ - =)
Binteger数量
---
  • ret: 无

  • 示例:

function isc_test_0002:creditpoint()
local player = module.player
local bret = creditpoint(player)
--LOGI("isc creditpoint:".. bret)
end

修改行会职位命令 setranksguild

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:setranksguild()
local player = module.player
local bret = setranksguild(player)
--LOGI("isc setranksguild:".. bret)
end

批量拿走背包物品 takes

  • args:
名字类型说明、描述
playeruserdata玩家对象
ItemInfostring要收回的物品名字 物品名称#物品数量&物品名称#物品数量
Bindnumber绑定状态 0 非绑定 1 绑定
Typenumber参数1中的物品名称是ID还是道具名称 0 道具名称 1 道具ID
Categorynumber填1表示优先收走绑定的 可省略
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0002:takes()
local player = module.player
local bret = takes(player)
--LOGI("isc takes:".. bret)
end

批量给予物品 givestateitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
ItemInfostring要给予的物品名字 物品名称#物品数量#绑定状态&物品名称#物品数量#绑定状态
---
  • ret: 无

  • 示例:

function isc_test_0002:givestateitem()
local player = module.player
local bret = givestateitem(player)
--LOGI("isc givestateitem:".. bret)
end

给予物品到指定位置 giveonitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
Anumber位置
Bstring物品名称
Cnumber数量
Dstring属性位置
---
  • ret: 无

  • 示例:

function isc_test_0002:giveonitem()
local player = module.player
local bret = giveonitem(player)
--LOGI("isc giveonitem:".. bret)
end

设置装备内观特效 setitemeffect

  • args:
名字类型说明、描述
playeruserdata玩家对象
Slotnumber装备位置
BagEffectIdnumber背包特效Id 0 清空特效
ItemEffectIdnumber装备内观特效Id 0 清空特效
---
  • ret: 无

  • 示例:

function isc_test_0002:setitemeffect()
local player = module.player
local bret = setitemeffect(player)
--LOGI("isc setitemeffect:".. bret)
end

设置物品来源 setthrowitemly

  • args:
名字类型说明、描述
playeruserdata玩家对象
Anumber来源 1 GM制作 2 NPC制造 5 怪物爆出
Bstring地图名称
Cstring怪物名称
Dstring人物名称
Estring年-月-日
Fstring时:分:秒
---
  • ret: 无

  • 示例:

function isc_test_0002:setthrowitemly()
local player = module.player
local bret = setthrowitemly(player)
--LOGI("isc setthrowitemly:".. bret)
end

设置攻击目标 setattacktargetbyname

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring攻击目标名称
---
  • ret: 无

修改衣服武器外观的Shape changeiteshape

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置(0-55,-1表示ok框里的物品)
Bstring操作符 (+ - = )目前只有 = 有效
Cinteger值 0=恢复为DB力的Shape(物品的Shape字段值),大于0表示修改
---
  • ret: 无

  • 示例:

function isc_test_0002:changeiteshape()
local player = module.player
local bret = changeiteshape(player)
--LOGI("isc changeiteshape:".. bret)
end

修改衣服武器外观的Shape changedresseffect

  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger装备位置(0衣服 1=武器)
Binteger特效ID(衣服或者武器其他的不支持 -1 恢复初始状态)
Cinteger显示模式 0=自己看到 1=所有人看到(目前只支持所有人看到)
---
  • ret: 无

  • 示例:

function isc_test_0002:changedresseffect()
local player = module.player
local bRet = changedresseffect(player, 0, -1, 1)
LOGI("isc changedresseffect:".. bRet)
end

清除地图中的怪物 clearmapmon

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring地图名
---
  • ret: 无

  • 示例:

function isc_test_0002:clearmapmon()                --  clearmapmon不生效
local player = module.player
local bRet = clearmapmon(player, 0)
if bRet then
LOGI("isc clearmapmon: true")
else
LOGI("isc clearmapmon: false")
end


end

复活 realive

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_0002:realive()
local player = module.player
local bRet = realive(player)
LOGI("isc realive:")
end

记录玩家NPC操作日志 setnpcmsg

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring记录信息
---
  • ret: 无

  • 示例:

function isc_test_0002:setnpcmsg()
local player = module.player
local bRet = setnpcmsg(player)
LOGI("isc setnpcmsg:")
end
  • args:
名字类型说明、描述
playeruserdata玩家对象
Ainteger记录信息
Binteger操作行为 1:打开,2:关闭
---
  • ret: 无

  • 示例:

function isc_test_0002:openhyperlink()
local player = module.player
local bRet = openhyperlink(player, 1, 1)
LOGI("isc openhyperlink:")
end

开启自动战斗 startautoplaygame

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_0002:startautoplaygame()
local player = module.player
local bRet = startautoplaygame(player)
LOGI("isc startautoplaygame:")
end

关闭自动战斗 stopautoplaygame

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_0002:stopautoplaygame()
local player = module.player
local bRet = stopautoplaygame(player)
LOGI("isc stopautoplaygame:")
end

打开仓库 openstorage

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_0002:openstorage()
local player = module.player
local bRet = openstorage(player)
LOGI("isc openstorage:")
end

关闭仓库 closestorage

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_0002:closestorage()
local player = module.player
local bRet = closestorage(player)
LOGI("isc closestorage:")
end

怪物掉落前必爆物品命令 addmondrop

  • args:
名字类型说明、描述
playeruserdata玩家对象
infostring物品名称 多个物品用
---
  • ret: 无

  • 示例:

function isc_test_0002:addmondrop()
local player = module.player
local bRet = addmondrop(player, 1894)
LOGI("isc addmondrop:")
end

把包裹中的物品放入OK框中 bagitemintobox

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring物品名称
BnumberOK框编号
---
  • ret: 无

  • 示例:

function isc_test_0002:bagitemintobox()
local player = module.player
local bRet = bagitemintobox(player, "青铜斧", 1)
LOGI("isc bagitemintobox:")
end

把包裹中的唯一ID物品放入OK框中 bagitemmakeindex

  • args:
名字类型说明、描述
playeruserdata玩家对象
Anumber物品唯一ID
BnumberOK框编号
---
  • ret: 无

  • 示例:

function isc_test_0002:bagitemmakeindex()
local player = module.player
local bRet = bagitemmakeindex(player, 228324454619480065, 1)
LOGI("isc bagitemmakeindex:")
end

禁止放入命令,在OK框里放入物品时触发使用 unallowitemintobox

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_0002:unallowitemintobox()
local player = module.player
local bRet = unallowitemintobox(player)
LOGI("isc unallowitemintobox:")
end

OK框中物品返回到包裹 returnboxitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
AnumberOK框编号
---
  • ret: 无

  • 示例:

function isc_test_0002:returnboxitem()
local player = module.player
local bRet = returnboxitem(player, 1)
LOGI("isc returnboxitem:")
end

删除OK框物品 delboxitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
AnumberOK框编号
Bnumber删除数量 (nil 为全删)
---
  • ret: 无

  • 示例:

function isc_test_0002:delboxitem()
local player = module.player
local bRet = delboxitem(player, 1, 1)
LOGI("isc delboxitem:")
end

优先打指定打怪,支持多个怪物一起 killmobappoint

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring地图:xxx暂时无效
Binteger坐标X:xxx暂时无效
Cinteger坐标Y:xxx暂时无效
Dinteger范围::xxx暂时无效
Estring怪物名称
---
  • ret: 无

  • 示例:

function isc_test_0002:killmobappoint()
local player = module.player
local bRet = killmobappoint(player,1,1,1,1,"半兽人")
LOGI("isc killmobappoint:")
end

停止打指定怪物 stopautoattack

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_0002:stopautoattack()
local player = module.player
local bRet = stopautoattack(player)
LOGI("isc stopautoattack:")
end

绘制主界面的魔法球血球效果 playmagicballeffect

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring图片开始序号 图片路径
Binteger播放张数
Cinteger播放速度(毫秒)
Dinteger有效时间(秒 -1时永久有效)
Einteger类型(0=HP 1=MP 2=FHP)
Finteger绘制高度(0=完整绘制 1=按照HP或者MP的高度绘制)
Ginteger微调坐标X
Hinteger微调坐标Y
Iinteger显示缩放比例(填写的数值除以100如:50=0.5倍显示 110=1.1倍显示)
---
  • ret: 无

  • 示例:

function isc_test_0002:playmagicballeffect()
local player = module.player
local bRet = playmagicballeffect(player)
LOGI("isc playmagicballeffect:")
end

屏幕播放特效 screffects

  • args:
名字类型说明、描述
playeruserdata玩家对象
AintegerID
Binteger特效ID
Cintegerx坐标
Dintegery坐标
Einteger播放速度
Finteger播放次数(0=永久播放)
Ginteger播放模式(0=发送给自己 1=发送所有人)
---
  • ret: 无

  • 示例:

function isc_test_0002:screffects()
local player = module.player
local bRet = screffects(player)
LOGI("isc screffects:".. bRet)
end

删除屏幕特效 deleffects

  • args:
名字类型说明、描述
playeruserdata玩家对象
AintegerID
---
  • ret: 无

  • 示例:

function isc_test_0002:deleffects()
local player = module.player
local bRet = deleffects(player)
LOGI("isc deleffects:".. bRet)
end

给按钮增加红点 reddot

  • args:
名字类型说明、描述
playeruserdata玩家对象
win_idinteger窗口ID
btn_idinteger按钮ID/任务栏填任务ID
xintegerX坐标
yintegerY坐标
typeinteger红点模式 0=图片,1=特效
paramsinteger红点模式=0(填图片路径) 红点模式=1(填特效编号)
---
  • ret: 无

  • 示例:

function isc_test_0002:reddot()
local player = module.player
local bRet = reddot(player)
LOGI("isc reddot:".. bRet)
end

给按钮删除红点 reddel

  • args:
名字类型说明、描述
playeruserdata玩家对象
win_idinteger窗口ID
btn_idinteger按钮ID/任务栏填任务ID
---
  • ret: 无

  • 示例:

function isc_test_0002:reddel()
local player = module.player
local bRet = reddel(player)
LOGI("isc reddel:".. bRet)
end

遍历背包勾选物品 loopbagitems

  • args:
名字类型说明、描述
playeruserdata玩家对象
_1string参数1:回调接口@跳转
_2string参数2:物品唯一ID存到变量
_3string参数3:物品名字存到变量
_4string参数4:物品数量存到变量
_5string参数5:物品颜色存入到变量:xxx:不明确具体是什么
_6string参数6:物品标记存入到变量:xxx:不明确具体是什么
_7string参数7:当前物品,是否极品存入变量:xxx:不明确具体是什么
---
  • ret: 无

  • 示例:

function isc_test_0002:loopbagitems()
local player = module.player
local bRet = loopbagitems(player)
LOGI("isc loopbagitems:")
end

勾选背包物品 selectbagitems

  • args:
名字类型说明、描述
playeruserdata玩家对象
_1string物品唯一ID (逗号,为分割符号)
---
  • ret: 无

  • 示例:

function isc_test_0002:selectbagitems()
local player = module.player
local bRet = selectbagitems(player, "228324455102873606")
LOGI("isc selectbagitems:")
end

设置聊天前缀 setchatprefix

  • args:
名字类型说明、描述
playeruserdata玩家对象
_1string聊天前缀(支持文字前缀和图片前缀)
_2integer?前缀类型(1:文字前缀,2:图片前缀)
---
  • ret: 无

  • 示例:

function isc_test_0002:setchatprefix()
local player = module.player
local bRet = setchatprefix(player,"123",1)
LOGI("isc setchatprefix:")
end

脚本控制一键拾取:开启 autopickitembybtn

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_0002:autopickitembybtn()
local player = module.player
local bRet = autopickitembybtn(player)
LOGI("isc autopickitembybtn:")
end

脚本控制一键拾取:关闭 stopautopickitembybtn

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: 无

  • 示例:

function isc_test_0002:stopautopickitembybtn()
local player = module.player
local bRet = stopautopickitembybtn(player)
LOGI("isc stopautopickitembybtn:")
end

指定半径范围内怪物对象 getrectmonsters

  • args:
名字类型说明、描述
sceneuserdata场景
centerpos_info中心点
radiusnumber半径
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

  • 示例:

function isc_test_0002:getrectmonsters()
local player = module.player
local bRet = getrectmonsters(player)
LOGI("isc getrectmonsters:".. bRet)
end

指定半径范围内npc对象 getrectnpcs

  • args:
名字类型说明、描述
sceneuserdata场景
centerpos_info中心点
radiusnumber半径
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

  • 示例:

function isc_test_0002:getrectnpcs()
local player = module.player
local bRet = getrectnpcs(player)
LOGI("isc getrectnpcs:".. bRet)
end

指定半径范围内场景道具对象 getrectsceneitems

  • args:
名字类型说明、描述
sceneuserdata场景
centerpos_info中心点
radiusnumber半径
bits_filternumber过滤器
only_countboolean?是否是获取数量
---
  • ret: table 对象列表

  • 示例:

function isc_test_0002:getrectsceneitems()
local player = module.player
local bRet = getrectsceneitems(player)
LOGI("isc getrectsceneitems:".. bRet)
end

广播给场景玩家 broadcastscene

  • args:
名字类型说明、描述
sceneuserdata场景
styleNOTICE_TYPE枚举
contentstring内容
---
  • ret: 无

  • 示例:

function isc_test_0002:broadcastscene()
local player = module.player
local bRet = broadcastscene(player, "1000", "12345")
LOGI("isc broadcastscene:")
end

刷怪(x,y均传-1表示由系统随机刷怪点) summonmonster

  • args:
名字类型说明、描述
sceneuserdata场景
monster_idnumber怪物配置id
xnumberx
ynumbery
---
  • ret: userdata? 怪物对象nil表示失败

  • 示例:

function isc_test_0002:summonmonster()
local player = module.player
local bRet = summonmonster(player, 1016, 56, 417)
LOGI("isc summonmonster:")
end

刷npc summonnpc

  • args:
名字类型说明、描述
sceneuserdata场景
npc_idnumber怪物配置id
xnumberx
ynumbery
---
  • ret: userdata? npc对象nil表示失败

  • 示例:

function isc_test_0002:summonnpc()
local player = module.player
local bRet = summonnpc(player, 14, 56, 417)
LOGI("isc summonnpc:")
end

删除npc delnpcbyscene

  • args:
名字类型说明、描述
sceneuserdata场景
npc_idnumbernpc id
---
  • ret: 无

刷传送点 summontransport

  • args:
名字类型说明、描述
sceneuserdata场景
transport_idnumber传送点配置id (scene_delivery_point.xlsx id)
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0002:summontransport()
local player = module.player
local bRet = summontransport(player)
LOGI("isc summontransport:".. bRet)
end

添加自定义场景传送点 addexttransport

  • args:
名字类型说明、描述
index_keystring标记
src_sceneuserdata添加到那个场景
src_xnumber传送点x
src_ynumber传送点y
dst_scene_idnumber传送到的目标场景id
dst_xnumber目标点x
dst_ynumber目标点y
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0002:addexttransport()
local player = module.player
local bRet = addexttransport(player)
LOGI("isc addexttransport:".. bRet)
end

删除自定义场景传送点 delexttransport

  • args:
名字类型说明、描述
index_keystring标记
---
  • ret: 无

  • 示例:

function isc_test_0002:delexttransport()
local player = module.player
local bRet = delexttransport(player)
LOGI("isc delexttransport:".. bRet)
end

获取自定义场景传送点 getexttransport

  • args:
名字类型说明、描述
index_keystring标记
---
  • ret: ext_transport 场景传送点

  • 示例:

function isc_test_0002:getexttransport()
local player = module.player
local bRet = getexttransport(player)
LOGI("isc getexttransport:".. bRet)
end

指定场景添加定时器 addtimerscene

  • args:
名字类型说明、描述
sceneuserdata场景
index_keystring标记
uticknumber间隔时间(毫秒)
countnumber重复次数
callback_funcfunction回调函数
callback_datastring回调数据
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0002:addtimerscene()
local player = module.player
local bRet = addtimerscene(player)
LOGI("isc addtimerscene:".. bRet)
end

删除指定定时器 deltimerscene

  • args:
名字类型说明、描述
sceneuserdata场景
index_keystring标记
---
  • ret: 无

  • 示例:

function isc_test_0002:deltimerscene()
local player = module.player
local bRet = deltimerscene(player)
LOGI("isc deltimerscene:".. bRet)
end

判断是否有指定定时器 hastimerscene

  • args:
名字类型说明、描述
sceneuserdata场景
index_keystring标记
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0002:hastimerscene()
local player = module.player
local bRet = hastimerscene(player)
LOGI("isc hastimerscene:".. bRet)
end

获取场景内指定的一个npc对象 getnpcscene

  • args:
名字类型说明、描述
sceneuserdata场景对象
npc_idnumbernpc配置id
---
  • ret: userdata 对象实例

  • 示例:

function isc_test_0002:getnpcscene()
local player = module.player
local bRet = getnpcscene(player)
LOGI("isc getnpcscene:".. bRet)
end

创建一个场景范围特效(类似安全区光圈) createrangeeffect

  • args:
名字类型说明、描述
sceneuserdata场景对象
center_pospos_info中心点坐标
radiusnumber半径
shapenumber形状(0:方形,1:圆形)
effect_idnumber特效id
---
  • ret: userdata 对象实例

  • 示例:

function isc_test_0002:createrangeeffect()
local player = module.player
local bRet = createrangeeffect(player)
LOGI("isc createrangeeffect:".. bRet)
end

场景中掉落物品 dropitem

  • args:
名字类型说明、描述
sceneuserdata场景对象
owneridnumber掉落物品拥有者ID
itemidnumber物品配置id
itemnumnumber物品数量
xnumber掉落x坐标
ynumber掉落y坐标
rangenumber掉落范围
showtimenumber展示时间
ownerpickupnumber拥有者拾取时间
globalpickupnumber全局拾取时间
droptypenumber掉落类型
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0002:dropitem()
local player = module.player
local bRet = dropitem(player)
LOGI("isc dropitem:".. bRet)
end

学习技能 studyskill

  • args:
名字类型说明、描述
playeruserdata对象
skill_idnumber技能id
---
  • ret: boolean 是否学习成功

  • 示例:

function isc_test_0002:studyskill()
local player = module.player
local bRet = studyskill(player, 43)
if bRet then
LOGI("isc studyskill: true")
else
LOGI("isc studyskill: false")
end

end

删除技能 forgetskill

  • args:
名字类型说明、描述
playeruserdata对象
skill_idnumber技能id
---
  • ret: boolean 是否删除成功

  • 示例:

function isc_test_0002:forgetskill()
local player = module.player
local bRet = forgetskill(player, 43)
LOGI("isc forgetskill:")
end

获得技能对象 getskill

  • args:
名字类型说明、描述
playeruserdata对象
skill_idnumber技能id
---
  • ret: userdata 技能对象

  • 示例:

function isc_test_0002:getskill()
local player = module.player
local bRet = getskill(player)
LOGI("isc getskill:".. bRet)
end

是否已学习技能 hasskill

  • args:
名字类型说明、描述
playeruserdata对象
skill_idnumber技能id
---
  • ret: boolean 是否已学习

  • 示例:

function isc_test_0002:hasskill()
local player = module.player
local bRet = hasskill(player, 43)
if bRet then
LOGI("isc hasskill: true")
else
LOGI("isc hasskill: false")
end

end

清空玩家身上技能 clearallskills

  • args:
名字类型说明、描述
playeruserdata对象
---
  • ret: 无

  • 示例:

function isc_test_0002:clearallskills()
local player = module.player
local bRet = clearallskills(player)
LOGI("isc clearallskills:")
end

获得玩家所有已学技能 getallskills

  • args:
名字类型说明、描述
playeruserdata对象
---
  • ret: table 技能列表

  • 示例:

function isc_test_0002:getallskills()
local player = module.player
local bRet = getallskills(player)
LOGI("isc getallskills:".. bRet)
end

设置技能等级 setskilllevel

  • args:
名字类型说明、描述
playeruserdata对象
skill_idnumber技能id
levelnumber等级
---
  • ret: boolean 是否设置成功

  • 示例:

function isc_test_0002:setskilllevel()
local player = module.player
local bRet = setskilllevel(player, 43, 2)
if bRet then
LOGI("isc setskilllevel: true")
else
LOGI("isc setskilllevel: false")
end

end

获得技能等级 getlevelskill

  • args:
名字类型说明、描述
pSkilluserdata技能对象
---
  • ret: number 技能等级

  • 示例:

function isc_test_0002:getlevelskill()
local player = module.player
local pskill = getskill(player, 43)
local bRet = getlevelskill(player, pskill)
LOGI("isc getlevelskill level:".. bRet)
end

获得技能熟练度 getcurexp

  • args:
名字类型说明、描述
pSkilluserdata技能对象
---
  • ret: number 技能熟练度

  • 示例:

function isc_test_0002:getcurexp()
local player = module.player
local pskill = getskill(player, 43)
local bRet = getcurexp(pskill)
LOGI("isc getcurexp exp:".. bRet)
end

获得技能配置数据 getmetaskill

  • args:
名字类型说明、描述
pSkilluserdata技能对象
---
  • ret: userdata 技能配置数据

  • 示例:

function isc_test_0002:getmetaskill()
local player = module.player
local pskill = getskill(player, 43)
local pcfg = getmetaskill(pskill)
LOGI("isc getmetaskill: id".. pcfg.id)
end

添加任务 getidtask

  • args:
名字类型说明、描述
taskuserdata任务对象
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0002:getidtask()
local player = module.player
local bRet = getidtask(player)
LOGI("isc getidtask:".. bRet)
end

添加任务 add

  • args:
名字类型说明、描述
playeruserdata玩家对象
task_idnumber任务id
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0002:add()
local player = module.player
local bRet = add(player, 10004)
if bRet then
LOGI("isc add: true")
else
LOGI("isc add: false")
end

end

领取任务 accept

  • args:
名字类型说明、描述
playeruserdata玩家对象
task_idnumber任务id
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0002:accept()
local player = module.player
local bRet = accept(player, 10004)
if bRet then
LOGI("isc add: true")
else
LOGI("isc add: false")
end
end

删除任务 remove

  • args:
名字类型说明、描述
playeruserdata玩家对象
task_idnumber任务id
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0002:remove()
local player = module.player
local bRet = remove(player, 10004)
if bRet then
LOGI("isc remove: true")
else
LOGI("isc remove: false")
end
end

完成任务 finish

  • args:
名字类型说明、描述
playeruserdata玩家对象
task_idnumber任务id
---
  • ret: 无

  • 示例:

function isc_test_0002:finish()
local player = module.player
local bRet = finish(player, 10001)
if bRet then
LOGI("isc finish: true")
else
LOGI("isc finish: false")
end
end

提交任务 submit

  • args:
名字类型说明、描述
playeruserdata玩家对象
task_idnumber任务id
---
  • ret: boolean 是否成功

  • 示例:

function isc_test_0002:submit()
local player = module.player
local bRet = submit(player, 10002)
if bRet then
LOGI("isc submit: true")
else
LOGI("isc submit: false")
end
end

获取任务对象 findtask

  • args:
名字类型说明、描述
playeruserdata玩家对象
task_idnumber任务id
---
  • ret: userdata 任务对象

  • 示例:

function isc_test_0002:findtask()
local player = module.player
local bRet = findtask(player)
LOGI("isc findtask:".. bRet)
end

根据任务状态获取任务列表 getlist

  • args:
名字类型说明、描述
playeruserdata玩家对象
stateeTaskStateType任务状态(任务状态为:TASK_STATE_NONE时获取所有任务)
---
  • ret: table 任务对象列表

  • 示例:

function isc_test_0002:getlist()
local player = module.player
local bRet = getlist(player)
LOGI("isc getlist:".. bRet)
end

置顶该任务 topshow

  • args:
名字类型说明、描述
playeruserdata玩家对象
task_idnumber任务id
---
  • ret: 无

  • 示例:

function isc_test_0002:topshow()
local player = module.player
local bRet = topshow(player, 10004)
if bRet then
LOGI("isc topshow true")
else
LOGI("isc topshow false")
end

end

获取任务状态 getstatus

  • args:
名字类型说明、描述
taskuserdata任务对象
---
  • ret: eTaskStateType 任务状态 1.任务未接取 2.任务接取未完成 3.任务完成未领取奖励 4.任务完成并领取奖励

  • 示例:

function isc_test_0002:getstatus()
local player = module.player
local bRet = getstatus(player)
LOGI("isc getstatus:".. bRet)
end

获取奖励列表 getrewardlist

  • args:
名字类型说明、描述
taskuserdata任务对象
---
  • ret: table 奖励列表

  • 示例:

function isc_test_0002:getrewardlist()
local player = module.player
local bRet = getrewardlist(player)
LOGI("isc getrewardlist:".. bRet)
end

获取任务描述 getdesc

  • args:
名字类型说明、描述
taskuserdata任务对象
---
  • ret: string 任务描述

  • 示例:

function isc_test_0002:getdesc()
local player = module.player
local pTask = findtask(player, 10004)
local bRet = getdesc(pTask, true)
LOGI("isc getdesc:".. bRet)
end

获取配置表ID getconfigid

  • args:
名字类型说明、描述
taskuserdata任务对象
---
  • ret: integer 任务配置表ID

  • 示例:

function isc_test_0002:getconfigid()
local player = module.player
local pTask = findtask(player, 10004)
local bRet = getconfigid(pTask)
LOGI("isc getconfigid:".. bRet)
end

获取任务条件列表 getconditionlist

  • args:
名字类型说明、描述
taskuserdata任务对象
---
  • ret: table 条件列表

  • 示例:

function isc_test_0002:getconditionlist()
local player = module.player
local pTask = findtask(player, 10004)
local bRet = getconditionlist(pTask)
LOGI("isc getconditionlist:".. bRet.dwTaskId)
end

任务条件是否达成 iscomplete

  • args:
名字类型说明、描述
conditionuserdata任务条件对象
---
  • ret: boolean 是否达成

  • 示例:

function isc_test_0002:iscomplete()
local player = module.player
local bRet = iscomplete(player)
LOGI("isc iscomplete:".. bRet)
end

获取任务条件进度 getconditionschedule

  • args:
名字类型说明、描述
conditionuserdata任务条件
---
  • ret: number 任务进度进度

  • 示例:

function isc_test_0002:getconditionschedule()
local player = module.player
local bRet = getconditionschedule(player)
LOGI("isc getconditionschedule:".. bRet)
end

获取任务条件id getconditionid

  • args:
名字类型说明、描述
conditionuserdata任务条件
---
  • ret: number 任务条件id

  • 示例:

function isc_test_0002:getconditionid()
local player = module.player
local bRet = getconditionid(player)
LOGI("isc getconditionid:".. bRet)
end

获取当前需要完成的任务条件列表 getcurrentsequenceneedfinishcondition

  • args:
名字类型说明、描述
taskuserdata任务对象
---
  • ret: table 需要完成的任务条件列表

  • 示例:

function isc_test_0002:getcurrentsequenceneedfinishcondition()
local player = module.player
local bRet = getcurrentsequenceneedfinishcondition(player)
LOGI("isc getcurrentsequenceneedfinishcondition:".. bRet)
end

更新任务进度 updateschedule

  • args:
名字类型说明、描述
playeruserdata玩家对象
task_typeinteger任务类型
paramsstring[]?额外参数
---
  • ret: 无

  • 示例:

function isc_test_0002:updateschedule()
local player = module.player
local bRet = updateschedule(player, 1, 1)
if bRet then
LOGI("isc updateschedule: true")
else
LOGI("isc updateschedule: false")
end

end

获取任务NPC getnpctask

  • args:
名字类型说明、描述
taskuserdata任务对象
---
  • ret: userdata | nil npc对象

  • 示例:

function isc_test_0002:getnpctask()
local player = module.player
local bRet = getnpctask(player)
LOGI("isc getnpctask:".. bRet)
end

触发任务进度更新 touch

  • args:
名字类型说明、描述
playeruserdata玩家对象
task_typeinteger任务类型
paramstring参数
---
  • ret: 无

  • 示例:

function isc_test_0002:touch()
local player = module.player
local bRet = touch(player, 1, 1)
if bRet then
LOGI("isc touch: true")
else
LOGI("isc touch: false")
end
end

任务点击事件 click

  • args:
名字类型说明、描述
playeruserdata玩家对象
task_idinteger任务ID
condi_idinteger条件
paramstring参数
---
  • ret: 无

  • 示例:

function isc_test_0002:click()
local player = module.player
local bRet = click(player)
LOGI("isc click:".. bRet)
end

获取队伍对象 getteam

  • args:
名字类型说明、描述
playeruserdata玩家对象
---
  • ret: userdata 队伍对象

  • 示例:

function isc_test_0002:getteam()
local player = module.player
local bRet = getteam(player)
LOGI("isc getteam:".. bRet)
end

获取队伍id getteamid

  • args:
名字类型说明、描述
teamuserdata队伍对象
---
  • ret: number 队伍id

  • 示例:

function isc_test_0002:getteamid()
local player = module.player
local pteam = getteam()
local bRet = getteamid(pteam)
LOGI("isc getteamid:".. bRet)
end

获取队长id getcaptainid

  • args:
名字类型说明、描述
teamuserdata队伍对象
---
  • ret: number 队长id

  • 示例:

function isc_test_0002:getcaptainid()
local player = module.player
local pteam = getteam()
local bRet = getcaptainid(pteam)
LOGI("isc getcaptainid:".. bRet)
end

获取队长名字 getcaptainname

  • args:
名字类型说明、描述
teamuserdata队伍对象
---
  • ret: string 队长名字

  • 示例:

function isc_test_0002:getcaptainname()
local player = module.player
local bRet = getcaptainname(player)
LOGI("isc getcaptainname:".. bRet)
end

获取成员列表 getmemberidsteam

  • args:
名字类型说明、描述
teamuserdata队伍对象
---
  • ret: table 成员列表

  • 示例:

function isc_test_0002:getmemberidsteam()
local player = module.player
local bRet = getmemberidsteam(player)
LOGI("isc getmemberidsteam:".. bRet)
end

31类型与2类型当前使用的物品IDX curreateitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
var_namestring变量名
---
  • ret: 无

  • 示例:

function isc_test_0002:curreateitem()
local player = module.player
local bRet = curreateitem(player)
LOGI("isc curreateitem:".. bRet)
end

修改行会建设度 guildbuildpoint

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:guildbuildpoint()
local player = module.player
local bRet = guildbuildpoint(player, "+", 99)
RET_BOOL(bRet, "guildbuildpoint")

local guildid = edi.player:get_guild_id(player)
local guild = edi.guild:get_guild(guildid)
if not guild then
return false
end

local set_num = edi.guild:get_build_point(guild)
LOGI("guildbuildpoint get_build_point = "..set_num)
end

修改行会人气度 guildauraepoint

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:guildauraepoint()
local player = module.player
local bRet = guildauraepoint(player, "=", 88)
RET_BOOL(bRet, "guildauraepoint")

local guildid = edi.player:get_guild_id(player)
local guild = edi.guild:get_guild(guildid)
if not guild then
return false
end

local set_num = edi.guild:get_aurae_point(guild)
LOGI("guildauraepoint get_aurae_point = "..set_num)
end

修改行会安定度 guildstabilitypoint

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:guildstabilitypoint()
local player = module.player
local bRet = guildstabilitypoint(player, "+", 22)
RET_BOOL(bRet, "guildstabilitypoint")

local guildid = edi.player:get_guild_id(player)
local guild = edi.guild:get_guild(guildid)
if not guild then
return false
end

local set_num = edi.guild:get_stability_point(guild)
LOGI("guildstabilitypoint get_stability_point = "..set_num)
end

修改行会繁荣度 guildflourishpoint

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:guildflourishpoint()
local player = module.player
local bRet = guildflourishpoint(player, "+", 55)
RET_BOOL(bRet, "guildflourishpoint")

local guildid = edi.player:get_guild_id(player)
local guild = edi.guild:get_guild(guildid)
if not guild then
return false
end

local set_num = edi.guild:get_flourish_point(guild)
LOGI("guildflourishpoint get_flourish_point = "..set_num)
end

装备改名 changeitemname

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:changeitemname()
local player = module.player
local bRet = changeitemname(player, 1, "武器max")
RET_BOOL(bRet, "changeitemname")

local item = getbyslot(player, "bag_equip_equip", 1)
if nil == item then
return false
end
local after_name = edi.item:get_extra(item, "custom_name")
LOGI("changeitemname after_name = "..after_name)
end

调整物品颜色 changeitemnamecolor

  • args:
名字类型说明、描述
---
  • ret: 无

  • 示例:

function isc_test_0002:changeitemnamecolor()
local player = module.player
local bRet = changeitemnamecolor(player, 1, "0x0000f")
local item = getbyslot(player, "bag_equip_equip", 1)
if nil == item then
return false
end
local after_color = edi.item:get_extra(item, "custom_color")
LOGI("changeitemnamecolor after_color = "..after_color)
end

txt添加特效 playeffect

  • args:
名字类型说明、描述
---
  • ret: 无

txt删除特效 clearplayeffect

  • args:
名字类型说明、描述
---
  • ret: 无

txt设置人物变色 setbodycolor

  • args:
名字类型说明、描述
---
  • ret: 无

txt设置人物虚影 showphantom

  • args:
名字类型说明、描述
playeruserdata玩家/怪物 对象
Ainteger透明度值越小越透明(0~255)
Binteger显示时间(秒)
---
  • ret: 无

接取任务格式:NEWPICKTASK 任务ID newpicktask

  • args:
名字类型说明、描述
playeruserdata玩家
Ainteger任务ID
---
  • ret: 无

  • 示例:

function isc_test_0002:newpicktask()
local player = module.player
local taskid = 10004
local bRet = newpicktask(player, taskid)
--LOGI("isc newpicktask:".. bRet)
end

刷新任务格式:NEWCHANGETASK 任务ID newchangetask

  • args:
名字类型说明、描述
playeruserdata玩家
Ainteger任务ID
Binteger任务状态标记1~9
---
  • ret: 无

  • 示例:

function isc_test_0002:newchangetask()
local player = module.player
local bRet = newchangetask(player, 10004, 2)
--LOGI("isc newchangetask:".. bRet)
end

完成任务格式:NEWCOMPLETETASK 任务ID newcompletetask

  • args:
名字类型说明、描述
playeruserdata玩家
Ainteger任务ID
---
  • ret: 无

  • 示例:

function isc_test_0002:newcompletetask()
local player = module.player
local bRet = newcompletetask(player, 10004)
--LOGI("isc newcompletetask:".. bRet)
end

删除任务格式:NEWDELETETASK 任务ID newdeletetask

  • args:
名字类型说明、描述
playeruserdata玩家
Ainteger任务ID
---
  • ret: 无

  • 示例:

function isc_test_0002:newdeletetask()
local player = module.player
local bRet = newdeletetask(player, 10004)
--LOGI("isc newdeletetask:".. bRet)
end

任务栏置顶:TASKTOPSHOW 任务ID tasktopshow

  • args:
名字类型说明、描述
playeruserdata玩家
Ainteger任务ID
---
  • ret: 无

光速拾取小精灵 pickupitems

  • args:
名字类型说明、描述
playeruserdata玩家
Ainteger0=人物为中心捡取,1=小精灵为中心捡取,3、4一个个拾取 xxx: 仅支持人物为中心
Binteger拾取范围 (32位最大:6格 64位最大:8格)
---
  • ret: 无

  • 示例:

function isc_test_0002:pickupitems()
local player = module.player
local bRet = pickupitems(player, 0, 8)
local range = edi.player:get_int_kv(player, coredef.kv_mode.default, otherdef.en_other_5)
--LOGI("pickupitems range = "..range)
end

小精灵捡取开关 setspritemode

  • args:
名字类型说明、描述
playeruserdata玩家
Ainteger1=捡取,2=不捡取
---
  • ret: 无

  • 示例:

function isc_test_0002:setspritemode()
local player = module.player
local bRet = setspritemode(player, 1)
--LOGI("isc setspritemode:".. bRet)
end

转换职业 changejob

  • args:
名字类型说明、描述
playeruserdata玩家
Astring职业名称
---
  • ret: 无

  • 示例:

function isc_test_0002:changejob()
local player = module.player
local bRet = changejob(player, "warrior")
--LOGI("isc changejob:".. bRet)
end

人物在线改名 changehumname

  • args:
名字类型说明、描述
playeruserdata玩家
Astring名字
---
  • ret: 无

  • 示例:

function isc_test_0002:changehumname()
local player = module.player
local bRet = changehumname(player, "6")
--LOGI("isc changehumname:".. bRet)
end

更换性别 changegender

  • args:
名字类型说明、描述
playeruserdata玩家对象
Astring性别
---
  • ret: 无

  • 示例:

function isc_test_0002:changegender()
local player = module.player
local bRet = changegender(player, "woman")
--LOGI("isc changegender:".. bRet)
end

回收格式:TakeStateItem 物品名称 数量 项目1 项目2 项目3 项目4 项目5 项目6 项目7 项目8 ;0为正常,1为绑定项目类型 takestateitem

  • args:
名字类型说明、描述
playeruserdata玩家
Ainteger主窗口ID
Binteger图标ID
Cinteger1=禁止扔 0=否 1=是
Dinteger2=禁止交易 0=否 1=是
Einteger3=禁止存 0=否 1=是
Finteger4=禁止修 0=否 1=是
Ginteger5=禁止出售 0=否 1=是
Hinteger6=禁止爆出的装备 0=否 1=是
Iinteger7=丢弃消失 0=否 1=是
Jinteger8=禁止摆摊或拍卖行 0=否 1=是
---
  • ret: 无

  • 示例:

function isc_test_0002:takestateitem() -- ok
local player = module.player
local a = "木剑"
local b = 1
local c = 0
local d = 0
local e = 0
local f = 0
local g = 0
local h = 0
local i = 0
local j = 0
local bRet = takestateitem(player, a, b, c, d, e, f, g, h, i, j)
LOGI("isc takestateitem:".. bRet)
end

使用此脚本命令实现GM命令的功能 gmexecute

  • args:
名字类型说明、描述
playeruserdata玩家
Astring命令字符串
...any任意值
---
  • ret: 无

  • 示例:

function isc_test_0002:gmexecute() -- ok
local player = module.player
gmexecute(player, "test")
end

新手界面引导功能 navigation

  • args:
名字类型说明、描述
playeruserdata玩家
Ainteger主窗口ID
Binteger图标ID
Cstring图标路径
---
  • ret: 无

  • 示例:

function isc_test_0002:navigation() -- todo
local player = module.player
local a = 0
local b = 0
local c = ""
navigation(player, a, b, c)
end

邮件给物品 mailgive

  • args:
名字类型说明、描述
playeruserdata玩家
Astring物品名称
Binteger数量
---
  • ret: 无

  • 示例:

function isc_test_0002:mailgive() -- ok
local player = module.player
local item_name = "木剑"
local item_num = 2
mailgive(player, item_name, item_num)
end

发送邮件 sendmail

  • args:
名字类型说明、描述
playeruserdata玩家
Astring自定义邮件ID
Bstring邮件标题
Cstring邮件内容
---
  • ret: 无

  • 示例:

function isc_test_0002:sendmail() -- ok
local player = module.player
local a = "12315"
local b = "测试邮件标题"
local c = "测试邮件内容"
sendmail(player, a, b, c)
end

添加镜像地图 addmirrormap

  • args:
名字类型说明、描述
playeruserdata玩家
Anumber原地图编号
Bnumber新地图编号
Cstring新地图名
Dinteger该地图存在的有效时间(秒),此地图自定回收,并将地图上的人传送至E参数设置的地图
Enumber人物退出时返回的地图编号
Fnumber小地图编号
Gnumber返回地图的X坐标
Hnumber返回地图的Y坐标
---
  • ret: 无

  • 示例:

function isc_test_0002:addmirrormap() -- ok
local player = module.player
local a = 1
local b = 6
local c = "沙巴克"
local d = 120
local e = 1
local f = ""
local g = 0
local h = 0
local dg = addmirrormap(player, a, b, c, d, e, f, g, h)

local dg_uuid = edi.dg:get_uuid(dg)
print("dungeon uid=" .. dg_uuid)
end

删除动态创建的镜像地图 delmirrormap

  • args:
名字类型说明、描述
playeruserdata玩家
Anumber地图id
---
  • ret: 无

  • 示例:

function isc_test_0002:delmirrormap() -- ok
local player = module.player
local b = 6
delmirrormap(player, b)
end

检测镜像地图是否已经创建 checkmirrormap

  • args:
名字类型说明、描述
playeruserdata玩家
Anumber地图id
---
  • ret: 无

  • 示例:

function isc_test_0002:checkmirrormap() -- ok
local player = module.player
local b = 6
local bRet = checkmirrormap(player, b)
if bRet == true then
LOGI("mirror map is exist")
else
LOGI("mirror map is not exist")
end
end

设置/获取地图的时间 mirrormaptime

  • args:
名字类型说明、描述
playeruserdata玩家
Anumber地图名
Binteger时间(秒)
---
  • ret: 无

  • 示例:

function isc_test_0002:mirrormaptime()-- todo
local player = module.player
local bRet = mirrormaptime(player)
LOGI("isc mirrormaptime:".. bRet)
end

初始化全局自定义变量 initsysvar

  • args:
名字类型说明、描述
typestringundefined
varNamestringundefined
---
  • ret: 无

  • 示例:

function isc_test_0002:initsysvar() -- ok
local var_type = "12315"
local var_name = "123333"
local ext_type = 1
initsysvar(var_type, var_name, ext_type)
end

获取自定义变量值 getsysvarex

  • args:
名字类型说明、描述
var_namestring变量名
---
  • ret: 无

  • 示例:

function isc_test_0002:getsysvarex() -- ok
local var_name = "123333"
local ret = getsysvarex(var_name)
LOGI("getsysvarex result=".. ret)
end

设置自定义变量值 setsysvarex

  • args:
名字类型说明、描述
var_namestring变量名
var_valuestring/number
save_typenumber暂时无效
---
  • ret: 无

  • 示例:

function isc_test_0002:setsysvarex() -- ok
local var_value = "sys_test"
local var_name = "123333"
local save_type = 1
setsysvarex(var_name, var_value, save_type)
end

获取玩家变量 getplaydef

  • args:
名字类型说明、描述
playeruserdata玩家对象
var_namestring变量名
---
  • ret: 无

  • 示例:

function isc_test_0002:getplaydef()
local player = module.player
local var_name = "123333"
local result = getplaydef(player, var_name)
LOGI("isc getplaydef:".. result)
end

设置玩家变量值 setplaydef

  • args:
名字类型说明、描述
playeruserdata玩家对象
var_namestring变量名
var_valuestring
---
  • ret: 无

  • 示例:

function isc_test_0002:setplaydef()
local player = module.player
local var_name = "123333"
local var_value = "12333"
setplaydef(player, var_name, var_value)
end

初始化个人、行会自定义变量 initplayvar

  • 自定义变量一定要先初始化,然后再使用!

  • 自定义变量一定要先初始化,然后再使用!

  • 自定义变量一定要先初始化,然后再使用!

  • args:

名字类型说明、描述
playeruserdata玩家对象
var_typestring变量类型(integer/string)
sign_typestring变量范围(HUMAN/GUILD)
var_namestring变量名
---
  • ret: 无

  • 示例:

function isc_test_0002:initplayvar()
local player = module.player
local var_type = "12315"
local var_name = "123333"
local sign_type = 1
initplayvar(player, var_type, sign_type, var_name)
end

获取玩家变量 getplayvar

  • args:
名字类型说明、描述
playeruserdata玩家对象
sign_typestring变量范围(HUMAN/GUILD)
var_namestring变量名
---
  • ret: 无

  • 示例:

function isc_test_0002:getplayvar()
local player = module.player
local var_name = "123333"
local sign_type = 1
local bRet = getplayvar(player, sign_type, var_name)
LOGI("isc getplayvar:".. bRet)
end

设置玩家变量值 setplayvar

  • args:
名字类型说明、描述
playeruserdata玩家对象
sign_typestring变量范围(HUMAN/GUILD)
var_namestring变量名
var_valuestring
---
  • ret: 无

  • 示例:

function isc_test_0002:setplayvar()
local player = module.player
local var_value = "12332"
local var_name = "123333"
local sign_type = 1
setplayvar(player, sign_type, var_name, var_value)
end

解析文本 parsetext

  • args:
名字类型说明、描述
textstring文本内容
playeruserdata玩家对象
---
  • ret: string 返回结果文本内容

读取lua配置 readconfiglua

  • args:
名字类型说明、描述
playeruserdata玩家对象
filestring文件路径
idinteger文件配置id
---
  • ret: table 配置

读取lua配置项数据 readconfigluaitem

  • args:
名字类型说明、描述
playeruserdata玩家对象
filestring文件路径
idinteger文件配置id
keystring配置表的key
var_namestring变量(将数据放入玩家的自定义变量中)
---
  • ret: 无

解析配置属性 parseconfigluaattrshow

  • 将 7|20;8|10 解析成

  • 道术:20

  • 最大道术: 10

  • args:

名字类型说明、描述
playeruserdata玩家对象
configstrstring配置字符串
---
  • ret: string 解析结果

解析配置属性 parseconfigluaitemshow

  • 将 7|20;8|10 解析成

  • 道术:20

  • 最大道术: 10

  • args:

名字类型说明、描述
playeruserdata玩家对象
var_namestring变量名
---
  • ret: 无

检查限制条件 checklimitcondition

  • args:
名字类型说明、描述
playeruserdata玩家对象
limitstrstring限制条件字符串 1
---
  • ret: 无