EVENTDATE = {
YEAR = 0,
MONTH = 1,
DAY = 2,
HOUR = 3,
MINUTE = 4,
SECOND = 5,
TIMESTAMP = 6
}
E = {
eventobjid = 1,
uielement = 1,
content = 1,
CustomUI = 1,
}
ErrorCode={
OK=0
}
local code = 0
local objtype = 0
local x, y, z = 0, 0, 0
local pos = 0
local dir = 0
local hp = 0
local maxhp = 0
local oxygen = 0
local yaw = 0
local pitch = 0
local switch = 0
local actorid = 0
local objid = 0
local height = 0
local w = 0
local h = 0
local modleName = 0
local areaid = 0
local lenx = 0
local leny = 0
local lenz = 0
local posBeg = 0
local posEnd = 0
local playerlist = {}
local objs = 0
local istar = 0
local iend = 0
local icount = 0
local num = 0
local arr = {}
local gridid = 0
local itemid = 0
local name = ""
local curstack = 0
local maxstack = 0
local durcur = 0
local durmax = 0
local type = 0
local equipid = 0
local ret = 0
local blockid = 0
local data = 0
local ix = 0
local desc = 0
local val = 0
local objid2 = 0
local value = 0
local teamid = 0
local icon = 0
local str = 0
local strs = 0
local info = 0
local graphid = 0
local shapeid = 0
local timerid = 0
local runtime = 0
local id = 0
local uin = 0
local result = 0
local score = 0
local rank = 0
local addnum = 0
local foodLevel = 0
local times = 0
local x = 0
local y = 0
local length = 0
local datas = 0
local len = 0
local no = 0
local hour = 0
local state = 0
local config = 0
local startX = 0
local startZ = 0
local endX = 0
local endZ = 0
local total = 0
local allarr = {}
local list = {}
local playerid = 0
local obj = 0
local particleId = 0
local lv = 0
local soundid = 0
local wtype = 0
local time = 0
local timestr = 0
local relNum = 0
Actor = {}
function Actor:isPlayer( -- 检测是否是玩家
--[[
objid:number:对象的objid
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:isMob( -- 检测是否是怪物
--[[
objid:number:对象的objid
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:getObjType( -- 获取对象类型(玩家、生物、投掷物、掉落物等)
--[[
objid:number:对象的objid
]]
objid
)
return code, objtype
--[[
code:number:成功(ErrorCode.OK),objtype:number:对象类型(OBJ_TYPE枚举值)
]]
end
function Actor:isInAir( -- 对象是否在空中
--[[
objid:number:对象的objid
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:getPosition( -- 获取actor位置
--[[
objid:number:对象的objid
]]
objid
)
return code, x, y, z
--[[
code:number:成功(ErrorCode.OK),x|y|z:number:方块坐标
]]
end
function Actor:getPositionV2( -- 获取actor位置
--[[
objid:number:对象的objid
]]
objid
)
return code, pos
--[[
code:number:成功(ErrorCode.OK),pos:table:方块坐标
]]
end
function Actor:setPosition( -- 设置Actor对象位置
--[[
objid:number:对象的objid,x|y|z:number:方块坐标
]]
objid,
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:jump( -- 使玩家/生物跳跃一次
--[[
objid:number:对象的objid
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:killSelf( -- 击败生物
--[[
objid:number:对象的objid
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:getCurPlaceDir( -- 获取对象当前朝向
--[[
objid:number:对象的objid
]]
objid
)
return code, dir
--[[
code:number:成功(ErrorCode.OK),dir:number:朝向(FACE_DIRECTION枚举值)
]]
end
function Actor:tryMoveToActor( -- 使对象向目标行动者移动(如果执行对象是刚创建出来的需要加个等待时间)
--[[
self_objid:number:执行动作的对象objid,target_objid:number:目标的对象objid,speed:number:移动速度
]]
self_objid,
target_objid,
speed
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:tryMoveToPos( -- 向目标位置移动(如果执行对象是刚创建出来的需要加个等待时间)
--[[
objid:number:执行动作的对象objid,x|y|z:number:移动到的位置,speed:number:移动速度
]]
objid,
x,
y,
z,
speed
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:addHP( -- 增加对象当前生命量
--[[
objid:number:生物对象objid,hp:number:血量值(hp>0增加血量,hp<0减少血量)
]]
objid,
hp
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:getHP( -- 获取对象的生命量
--[[
objid:number:生物对象objid
]]
objid
)
return code, hp
--[[
code:number:成功(ErrorCode.OK),hp:number:血量值
]]
end
function Actor:getMaxHP( -- 获取对象最大生命量
--[[
objid:number:生物对象objid
]]
objid
)
return code, maxhp
--[[
code:number:成功(ErrorCode.OK),maxhp:number:最大血量值
]]
end
function Actor:addOxygen( -- 增加对象的氧气值
--[[
objid:number:生物对象objid,oxygen:number:氧气值
]]
objid,
oxygen
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:getOxygen( -- 获取对象的氧气值
--[[
objid:number:生物对象objid
]]
objid
)
return code, oxygen
--[[
code:number:成功(ErrorCode.OK),oxygen:number:氧气值
]]
end
function Actor:addEnchant( -- 增加装备镶嵌
--[[
objid:number:生物对象objid, slot:number:镶嵌的格子位置(快捷栏索引等), enchantId:number:镶嵌的ID, enchantLevel:number:镶嵌等级
]]
objid,
slot,
enchantId,
enchantLevel
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:removeEnchant( -- 移除装备镶嵌
--[[
objid:number:生物对象objid, slot:number:镶嵌的格子位置(快捷栏索引等), enchantId:number:镶嵌的ID
]]
objid,
slot,
enchantId
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:findNearestBlock( -- 寻找对象附近某个类型方块的最近位置
--[[
objid:number:生物对象objid, blockid:number:查找的方块类型, blockRange:number:查找范围(传1表示1格方块距离)
]]
objid,
blockid,
blockRange
)
return code, x, y, z
--[[
code:number:成功(ErrorCode.OK),x|y|z:number:方块坐标
]]
end
function Actor:setFaceYaw( -- 设置actor横向旋转偏移角度
--[[
objid:number:生物对象objid, yaw:number:旋转角度(角度制)
]]
objid,
yaw
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:getFaceYaw( -- 获取actor横向旋转偏移角度
--[[
objid:number:生物对象objid
]]
objid
)
return code, yaw
--[[
code:number:成功(ErrorCode.OK),yaw:number:旋转角度(弧度制)
]]
end
function Actor:turnFaceYaw( -- 转动actor横向偏移角度
--[[
objid:number:生物对象objid, offset:number:旋转角度(角度制)
]]
objid,
offset
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:setFacePitch( -- 设置actor视角仰望角度
--[[
objid:number:生物对象objid,pitch:number:旋转角度(角度制)
]]
objid,
pitch
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:getFacePitch( -- 获取actor视角仰望角度
--[[
objid:number:生物对象objid
]]
objid
)
return code, pitch
--[[
code:number:成功(ErrorCode.OK),pitch:number:旋转角度(弧度制)
]]
end
function Actor:turnFacePitch( -- 转动actor仰望偏移角度
--[[
objid:number:生物对象objid, offset:number:旋转角度(角度制)
]]
objid,
offset
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:playBodyEffect( -- 对象播放特效
--[[
objid:number:生物对象objid, type:number:特效类型
]]
objid,
type
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:stopBodyEffect( -- 对象停止特效
--[[
objid:number:生物对象objid, type:number:特效类型
]]
objid,
type
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:playBodyEffectByFile( -- 播放文件特效
--[[
objid:number:生物对象objid, filename:string:特效文件名,sync:boolean:是否同步客机(默认为true)
]]
objid,
filename,
sync
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:stopBodyEffectByFile( -- 停止文件特效
--[[
objid:number:生物对象objid, filename:string:特效文件名
]]
objid,
filename
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:playSound( -- 对象播放声音
--[[
objid:number:生物对象objid, name:string:声音ID,volume:number:声音大小,flag:number:播放标记
]]
objid,
name,
volume,
pitch,
flag
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:playSoundSpecial( -- 播放声音(特定类型:GSOUND_TYPE)
--[[
objid:number:生物对象objid, name:string:声音ID,type:number:声音类型(0~4挖掘、破坏、放置、掉落到方块,行走)
]]
objid,
name,
type
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:clearActorWithId( -- 清除生物ID为actorid的生物
--[[
actorid:number:生物类型ID, bkill:boolean:是否被击败
]]
actorid,
bkill
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:setAttackType( -- 设置伤害类型
--[[
objid:number:生物对象objid, attacktype:number:伤害类型(HURTTYPE枚举值)
]]
objid,
attacktype
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:setImmuneType( -- 设置免疫伤害类型
--[[
objid:number:生物对象objid, immunetype:number:伤害类型(HURTTYPE枚举值),enable:boolean:是否开启
]]
objid,
immunetype,
enable
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:mountActor( -- 使对象登上、脱离载具
--[[
objid:number:生物对象objid, mountobjid:objid:坐骑、载具的objid,posindex:number:骑乘的位置(默认-1)
]]
objid,
mountobjid,
posindex
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:setActionAttrState( -- 设置生物行为属性状态
--[[
objid:number:生物对象objid, actionattr:number:权限属性枚举(PLAYERATTR.ENABLE_MOVE),switch:boolean:是否开启
]]
objid,
actionattr,
switch
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:getActionAttrState( -- 获取生物行为属性状态
--[[
objid:number:生物对象objid, actionattr:number:权限属性枚举(PLAYERATTR.ENABLE_MOVE)
]]
objid,
actionattr
)
return code, switch
--[[
code:number:成功(ErrorCode.OK),switch:boolean:是否开启
]]
end
function Actor:tryNavigationToPos( -- 寻路到目标位置
--[[
objid:number:生物对象objid,x|y|z:number:目标位置,cancontrol:boolean:是否可以操作打断,bshowtip:boolean:是否显示寻路路径
]]
objid,
x,
y,
z,
cancontrol,
bshowtip
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:randomActorID( -- 在资源库里随机创建一个生物
--[[
无
]]
)
return code, actorid
--[[
code:number:成功(ErrorCode.OK),actorid:number:生物类型ID
]]
end
function Actor:getRidingActorObjId( -- 获取骑乘生物的objid
--[[
objid:number:生物对象objid
]]
objid
)
return code, objid
--[[
code:number:成功(ErrorCode.OK),objid:number:坐骑ID(等于0时,没有坐骑)
]]
end
function Actor:playBodyEffectById( -- 在指定对象身上播放粒子特效
--[[
objid:number:生物对象objid,particleId:number:粒子特效ID,scale:number:特效大小缩放
]]
objid,
particleId,
scale
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:stopBodyEffectById( -- 停止指定对象身上的粒子特效
--[[
objid:number:生物对象objid,particleId:number:粒子特效ID
]]
objid,
particleId
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:setBodyEffectScale( -- 设置指定对象身上的特效大小
--[[
objid:number:生物对象objid,particleId:number:粒子特效ID,scale:number:特效大小缩放
]]
objid,
particleId,
scale
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:playSoundEffectById( -- 在指定对象身上播放音效
--[[
objid:number:生物对象objid,soundId:number:音效ID,volume:number:声音大小,pitch:number:音调,isLoop:number:是否循环
]]
objid,
soundId,
volume,
pitch,
isLoop
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:stopSoundEffectById( -- 停止指定对象身上的音效
--[[
objid:number:生物对象objid,soundId:number:音效ID
]]
objid,
soundId
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:appendSpeed( -- 给对象附加一个速度
--[[
objid:number:对象objid,x|y|z:number:轴向方向上的速度大小
]]
objid,
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:setFaceDirection( -- 设置对象朝向
--[[
objid:number:对象objid,x|y|z:number:轴向上的方向
]]
objid,
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:getFaceDirection( -- 获取actor朝向
--[[
objid:number:对象objid
]]
objid
)
return code, x, y, z
--[[
code:number:成功(ErrorCode.OK),x|y|z:number:轴向上的方向
]]
end
function Actor:calcDirectionByDirection( -- 通过对象的局部坐标方向计算绝对方向
--[[
objid:number:对象objid,x|y|z:number:轴向上的方向
]]
objid,
x,
y,
z
)
return code, pos
--[[
code:number:成功(ErrorCode.OK),pos:table:轴向上的方向
]]
end
function Actor:calcDirectionByAngle( -- 通过对象局部球坐标方向计算绝对方向
--[[
objid:number:对象objid,yaw:number:水平偏移夹角,pitch:number:垂直偏移夹角
]]
objid,
yaw,
pitch
)
return code, pos
--[[
code:number:成功(ErrorCode.OK),pos:table:轴向上的方向
]]
end
function Actor:calcDirectionByYawDirection( -- 通过局部坐标方向计算绝对正方向(忽略视角仰角)
--[[
objid:number:对象objid,x|y|z:number:轴向上的方向
]]
objid,
x,
y,
z
)
return code, pos
--[[
code:number:成功(ErrorCode.OK),pos:table:轴向上的方向
]]
end
function Actor:calcDirectionByYawAngle( -- 通过局部球坐标方向计算绝对正方向(忽略视角仰角)
--[[
objid:number:对象objid,yaw:number:水平偏移夹角,pitch:number:垂直偏移夹角
]]
objid,
yaw,
pitch
)
return code, pos
--[[
code:number:成功(ErrorCode.OK),pos:table:轴向上的方向
]]
end
function Actor:getEyeHeight( -- 获取眼睛高度
--[[
objid:number:对象objid
]]
objid
)
return code, height
--[[
code:number:成功(ErrorCode.OK),height:number:获取到的高度(方块高度)
]]
end
function Actor:getEyePosition( -- 获取眼睛位置
--[[
objid:number:对象objid
]]
objid
)
return code, x, y, z
--[[
code:number:成功(ErrorCode.OK),x|y|z:number:位置坐标
]]
end
function Actor:getBodySize( -- 获取对象身体尺寸
--[[
objid:number:对象objid
]]
objid
)
return code, w, h
--[[
code:number:成功(ErrorCode.OK),w:number:宽度,h:number:高度
]]
end
function Actor:playAct( -- 对象播放动作
--[[
objid:number:对象ID,actid:number:动作ID
]]
objid,
actid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:shownickname( -- 设置对象昵称是否显示
--[[
objid:number:对象ID,bshow:boolean:是否显示
]]
objid,
bshow
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:setnickname( -- 设置对象昵称
--[[
objid:number:对象ID,nickname:string:对象昵称
]]
objid,
nickname
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:getActorFacade( -- 获取对象外观描述
--[[
objid:number:对象ID
]]
objid
)
return code, modleName
--[[
code:number:成功(ErrorCode.OK),modleName:string:对象外观描述
]]
end
function Actor:changeCustomModel( -- 改变对象外观
--[[
objid:number:对象ID,modleName:string:对象外观描述
]]
objid,
modleName
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:recoverinitialModel( -- 恢复对象外观
--[[
objid:number:对象ID
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:randomFacadeID( -- 随机获取一个外观
--[[
无
]]
)
return code, modleName
--[[
code:number:成功(ErrorCode.OK),modleName:string:对象外观描述
]]
end
function Actor:playerHurt( -- 使玩家A对B造成伤害
--[[
objidA:number:玩家对象ID,objidB:number:目标对象ID,hp:number:血量值,attackType:number:伤害值
]]
objidA,
objidB,
hp,
attackType
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:actorHurt( -- 使生物A对B造成伤害
--[[
objidA:number:生物对象ID,objidB:number:目标对象ID,hp:number:血量值,attackType:number:伤害值
]]
objidA,
objidB,
hp,
attackType
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:playerHurtArea( -- 使玩家伤害区域内的目标
--[[
objidA:number:玩家对象ID,areaid:number:区域ID,hp:number:血量值,attackType:number:伤害值
]]
objidA,
areaid,
hp,
attackType
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Actor:actorHurtArea( -- 使生物伤害区域内的目标
--[[
objidA:number:生物对象ID,areaid:number:区域ID,hp:number:血量值,attackType:number:伤害值
]]
objidA,
areaid,
hp,
attackType
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
Area = {}
function Area:createAreaRect( -- 创建矩形区域
--[[
pos:table:区域中心位置,dim:table:区域的长宽高
]]
pos,
dim
)
return code, areaid
--[[
code:number:成功(ErrorCode.OK), areaid:number:区域ID
]]
end
function Area:createAreaRectByRange( -- 创建矩形区域(通过范围)
--[[
posBeg:table:区域起始坐标,posEnd:table:区域结束坐标
]]
posBeg,
posEnd
)
return code, areaid
--[[
code:number:成功(ErrorCode.OK), areaid:number:区域ID
]]
end
function Area:destroyArea( -- 销毁区域
--[[
areaid:number:区域ID
]]
areaid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:getAreaByPos( -- 通过位置查找区域
--[[
pos:table:区域中心位置
]]
pos
)
return code, areaid
--[[
code:number:成功(ErrorCode.OK), areaid:number:区域ID
]]
end
function Area:offsetArea( -- 区域偏移
--[[
areaid:number:区域ID,x|y|z:number:偏移距离
]]
areaid,
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:expandArea( -- 扩大区域
--[[
areaid:number:区域ID,x|y|z:number:偏移距离
]]
areaid,
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:getAreaCenter( -- 获取区域中间点
--[[
areaid:number:区域ID
]]
areaid
)
return code, pos
--[[
code:number:成功(ErrorCode.OK),pos:table:区域中心位置
]]
end
function Area:getAreaRectLength( -- 获取区域各边长
--[[
areaid:number:区域ID
]]
areaid
)
return code, lenx, leny, lenz
--[[
code:number:成功(ErrorCode.OK),lenx:number:x轴向长度,leny:number:y轴向长度,lenz:number:z轴向长度
]]
end
function Area:getAreaRectRange( -- 获取区域范围
--[[
areaid:number:区域ID
]]
areaid
)
return code, posBeg, posEnd
--[[
code:number:成功(ErrorCode.OK),posBeg:table:区域起始坐标,posEnd:table:区域结束坐标
]]
end
function Area:getRandomPos( -- 随机区域内位置
--[[
areaid:number:区域ID
]]
areaid
)
return code, pos
--[[
code:number:成功(ErrorCode.OK),pos:table:随机坐标
]]
end
function Area:objInArea( -- 检测obj是否在区域内
--[[
areaid:number:区域ID,objid:number:objid
]]
areaid,
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:blockInArea( -- 检测区域内是否有某个方块
--[[
areaid:number:区域ID,blockid:number:方块类型ID
]]
areaid,
blockid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:posInArea( -- 位置是否再区域内
--[[
pos:table:位置(x|y|z),areaid:number:区域唯一ID
]]
pos,
areaid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:getAreaPlayers( -- 获取区域中的所有玩家
--[[
areaid:number:区域唯一ID
]]
areaid
)
return code, playerlist
--[[
code:number:成功(ErrorCode.OK),playerlist:table:玩家objid组
]]
end
function Area:getAreaCreatures( -- 获取区域中的所有生物
--[[
areaid:number:区域唯一ID
]]
areaid
)
return code, playerlist
--[[
code:number:成功(ErrorCode.OK),playerlist:table:生物objid组
]]
end
function Area:fillBlock( -- 用方块填充区域
--[[
areaid:number:区域唯一ID,blockid:number:方块类型ID,face:number:方块朝向
]]
areaid,
blockid,
face
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:clearAllBlock( -- 清空区域内全部方块
--[[
areaid:number:区域唯一ID,blockid:number:方块类型ID
]]
areaid,
blockid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:cloneArea( -- 复制区域内方块到另一个区域
--[[
areaid:number:区域唯一ID,deststartpos:table:目标起始位置
]]
areaid,
deststartpos
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:getPosOffset( -- 获取位置的偏移距离
--[[
srcpos:table:方块坐标位置,dim:table:xyz方向上的偏移量
]]
srcpos,
dim
)
return code, pos
--[[
code:number:成功(ErrorCode.OK),pos:table:方块坐标位置
]]
end
function Area:replaceAreaBlock( -- 替换方块类型为新的方块类型
--[[
areaid:number:区域唯一ID,srcblockid:number:区域内的方块类型,destblockid:number:替换的方块类型,face:number:方块朝向
]]
areaid,
srcblockid,
destblockid,
face
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:blockInAreaRange( -- 检测两个位置范围内有方块
--[[
blockid:number:方块类型ID,posbeg:table:起始位置,posend:table:末点位置
]]
blockid,
posbeg,
posend
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:getAllObjsInAreaRange( -- 获取区域范围内全部对象
--[[
posbeg:table:起始位置,posend:table:末点位置,objtype:number:对象类型(OBJ_TYPE)
]]
posbeg,
posend,
OBJ_TYPE
)
return code, objs
--[[
code:number:成功(ErrorCode.OK),objs:table:对象objid组
]]
end
function Area:getAllObjsInAreaRangeByObjTypes( -- 获取区域范围内全部对象
--[[
posbeg:table:起始位置,posend:table:末点位置,objtypes:table:多个对象类型(OBJ_TYPE)
]]
posbeg,
posend,
OBJ_TYPE
)
return code, objs
--[[
code:number:成功(ErrorCode.OK),objs:table:对象objid组
]]
end
function Area:getAllPlayersInAreaRange( -- 获取区域范围内全部玩家
--[[
posbeg:table:起始位置,posend:table:末点位置
]]
posbeg,
posend
)
return code, objs
--[[
code:number:成功(ErrorCode.OK),objs:table:对象objid组
]]
end
function Area:getAllCreaturesInAreaRange( -- 获取区域范围内全部生物
--[[
posbeg:table:起始位置,posend:table:末点位置
]]
posbeg,
posend
)
return code, objs
--[[
code:number:成功(ErrorCode.OK),objs:table:对象objid组
]]
end
function Area:fillBlockAreaRange( -- 用方块填充区域范围
--[[
posbeg:table:起始位置,posend:table:末点位置,blockid:number:方块类型,face:number:朝向
]]
posbeg,
posend,
blockid,
face
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:clearAllBlockAreaRange( -- 清空区域范围内方块
--[[
posbeg:table:起始位置,posend:table:末点位置,blockid:number:方块类型
]]
posbeg,
posend,
blockid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:DestroyBlockAreaRange( -- 删除区域范围内方块
--[[
posbeg:table:起始位置,posend:table:末点位置,blockid:number:方块类型
]]
posbeg,
posend,
blockid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:cloneAreaRange( -- 复制区域范围内方块到另一个区域
--[[
posbeg:table:起始位置,posend:table:末点位置,deststartpos:table:目标起始位置
]]
posbeg,
posend,
deststartpos
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Area:replaceAreaRangeBlock( -- 替换区域范围方块
--[[
posbeg:table:起始位置,posend:table:末点位置,srcblockid:number:方块类型,destblockid:number:目标方块类型,face:number:朝向,inair:number:是否包括空气方块
]]
posbeg,
posend,
srcblockid,
destblockid,
face,
inair
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
Backpack = {}
function Backpack:getBackpackBarIDRange( -- 获取道具背包栏ID范围(起始ID~结束ID)
--[[
bartype:number:快捷栏枚举(BACKPACK_TYPE)
]]
BACKPACK_TYPE
)
return code, istar, iend
--[[
code:number:成功(ErrorCode.OK),istar:number:起始ID,iend:number:结束ID
]]
end
function Backpack:getBackpackBarSize( -- 获取道具背包栏大小
--[[
bartype:number:快捷栏枚举(BACKPACK_TYPE)
]]
BACKPACK_TYPE
)
return code, icount
--[[
code:number:成功(ErrorCode.OK),icount:number:背包栏大小
]]
end
function Backpack:setGridItem( -- 设置背包格道具
--[[
playerid:number:玩家ID,gridid:number:格子ID,itemid:number:道具类型,num:number:道具数量(默认1),durability:number:耐久值(默认1)
]]
playerid,
gridid,
itemid,
num,
durability
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:removeGridItem( -- 移除背包格内一定数量道具
--[[
playerid:number:玩家ID,gridid:number:格子ID,num:number:道具数量(默认全部移除)
]]
playerid,
gridid,
num
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:removeGridItemByItemID( -- 移除背包内一定数量道具,通过道具ID移除,默认全部移除
--[[
playerid:number:玩家ID,itemid:number:道具类型,num:number:道具数量(默认1)
]]
playerid,
itemid,
num
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:clearPack( -- 清空指定背包栏
--[[
playerid:number:玩家ID,bartype:number:快捷栏枚举(BACKPACK_TYPE)
]]
playerid,
BACKPACK_TYPE
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:clearAllPack( -- 清空全部背包(包含背包栏、快捷栏、装备栏)
--[[
playerid:number:玩家ID
]]
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:moveGridItem( -- 移动背包道具,默认全部转移
--[[
playerid:number:玩家ID,gridsrc:number:移动格子ID,griddst:number:移动至的目标格子ID,num:number:道具数量(默认全部)
]]
playerid,
gridsrc,
griddst,
num
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:swapGridItem( -- 交换背包道具
--[[
playerid:number:玩家ID,gridsrc:number:交换格子ID1,griddst:number:交换格子ID2
]]
playerid,
gridsrc,
griddst
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:enoughSpaceForItem( -- 背包(包含背包栏、快捷栏)是否有足够的空间存放一定数量的道具
--[[
playerid:number:玩家ID,itemid:number:道具类型,num:number:道具数量(默认1)
]]
playerid,
itemid,
num
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:calcSpaceNumForItem( -- 计算背包(包含背包栏、快捷栏)能存放的道具剩余总数量
--[[
playerid:number:玩家ID,itemid:number:道具类型
]]
playerid,
itemid
)
return code, num
--[[
code:number:成功(ErrorCode.OK),num:number:可以存放的数量
]]
end
function Backpack:getBackpackBarValidList( -- 获取道具背包栏有效格ID列表(道具已存在),背包格ID数组
--[[
playerid:number:玩家ID,bartype:number:快捷栏枚举(BACKPACK_TYPE)
]]
playerid,
BACKPACK_TYPE
)
return code, num, arr
--[[
code:number:成功(ErrorCode.OK),num:number:存放道具的格子数量,arr:table:格子ID数组
]]
end
function Backpack:getBackpackBarItemList( -- 获取道具背包栏已拥有道具,道具ID数组
--[[
playerid:number:玩家ID,bartype:number:快捷栏枚举(BACKPACK_TYPE)
]]
playerid,
BACKPACK_TYPE
)
return code, num, arr
--[[
code:number:成功(ErrorCode.OK),num:number:存放道具的格子数量,arr:table:道具ID数组
]]
end
function Backpack:hasItemByBackpackBar( -- 检测背包是否持有某个道具
--[[
playerid:number:玩家ID,bartype:number:快捷栏枚举(BACKPACK_TYPE),itemid:number:道具类型
]]
playerid,
BACKPACK_TYPE,
itemid
)
return code, gridid
--[[
code:number:成功(ErrorCode.OK),gridid:number:拥有此道具的格子ID
]]
end
function Backpack:getItemNumByBackpackBar( -- 获取背包持有某个道具总数量,同时返回装有道具的背包格数组
--[[
playerid:number:玩家ID,bartype:number:快捷栏枚举(BACKPACK_TYPE),itemid:number:道具类型
]]
playerid,
BACKPACK_TYPE,
itemid
)
return code, num, arr
--[[
code:number:成功(ErrorCode.OK),num:number:道具数量,arr:table:格子ID数组
]]
end
function Backpack:getGridItemID( -- 获取背包格道具ID(返回itemid, num)
--[[
playerid:number:玩家ID,gridid:number:格子ID
]]
playerid,
gridid
)
return code, itemid, num
--[[
code:number:成功(ErrorCode.OK),itemid:number:道具类型,num:number:道具数量
]]
end
function Backpack:getGridItemName( -- 获取背包格道具名称
--[[
playerid:number:玩家ID,gridid:number:格子ID
]]
playerid,
gridid
)
return code, name
--[[
code:number:成功(ErrorCode.OK),name:string:道具名称
]]
end
function Backpack:getGridStack( -- 获取背包格道具堆叠数(返回curstack, maxstack)
--[[
playerid:number:玩家ID,gridid:number:格子ID
]]
playerid,
gridid
)
return code, curstack, maxstack
--[[
code:number:成功(ErrorCode.OK),curstack:number:当前数量,maxstack:number:最大数量
]]
end
function Backpack:getGridDurability( -- 获取背包格道具耐久度(返回durcur, durmax)
--[[
playerid:number:玩家ID,gridid:number:格子ID
]]
playerid,
gridid
)
return code, durcur, durmax
--[[
code:number:成功(ErrorCode.OK),durcur:number:当前耐久度,durmax:number:最大耐久度
]]
end
function Backpack:getGridEnchantList( -- 获取背包格道具附魔,返回附魔id数组
--[[
playerid:number:玩家ID,gridid:number:格子ID
]]
playerid,
gridid
)
return code, num, arr
--[[
code:number:成功(ErrorCode.OK),num:number:附魔数量,arr:table:附魔的ID组
]]
end
function Backpack:getGridToolType( -- 获取背包道具工具类型(
--[[
playerid:number:玩家ID,gridid:number:格子ID
]]
playerid,
gridid
)
return code, type
--[[
code:number:成功(ErrorCode.OK),type:number:工具类型
]]
end
function Backpack:addItem( -- 添加道具到背包
--[[
playerid:number:玩家ID,itemid:number:道具类型,num:number:道具数量
]]
playerid,
itemid,
num
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:discardItem( -- 丢弃背包某个格子里的道具
--[[
playerid:number:玩家ID,gridid:number:格子ID,num:number:道具数量
]]
playerid,
gridid,
num
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:getGridNum( -- 获取背包某个格子的道具数量
--[[
playerid:number:玩家ID,gridid:number:格子ID
]]
playerid,
gridid
)
return code, num
--[[
code:number:成功(ErrorCode.OK),num:number:道具数量
]]
end
function Backpack:actEquipUpByResID( -- 玩家穿上装备
--[[
playerid:number:玩家ID,itemid:number:道具类型
]]
playerid,
itemid
)
return code, equipid
--[[
code:number:成功(ErrorCode.OK),equipid:number:装备栏ID
]]
end
function Backpack:actEquipOffByEquipID( -- 玩家脱下装备栏装备
--[[
playerid:number:玩家ID,equipid:number:装备栏ID
]]
playerid,
equipid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:actCreateEquip( -- 创建装备
--[[
playerid:number:玩家ID,itemid:number:装备道具类型
]]
playerid,
itemid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:actDestructEquip( -- 销毁装备
--[[
playerid:number:玩家ID,equipid:number:装备栏ID
]]
playerid,
equipid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:PlayShortCutIxEffect( -- 设置当前手持道具上播放粒子特效
--[[
playerid:number:玩家ID,effectid:number:特效ID,scale:number:特效缩放
]]
playerid,
effectid,
scale
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:StopShortCutIxEffect( -- 停止手持道具上播放特效
--[[
playerid:number:玩家ID,effectid:number:特效ID
]]
playerid,
effectid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:PlayShortCutItemEffect( -- 设置快捷栏道具的粒子特效
--[[
playerid:number:玩家ID,itemid:number:道具类型,effectid:number:特效ID,scale:number:特效缩放
]]
playerid,
itemid,
effectid,
scale
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Backpack:StopShortCutItemEffect( -- 移除快捷栏道具的粒子特效
--[[
playerid:number:玩家ID,itemid:number:道具类型,effectid:number:特效ID
]]
playerid,
itemid,
effectid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
Block = {}
function Block:isSolidBlock( -- 是否是固体方块
--[[
x|y|z:number:位置坐标
]]
x,
y,
z
)
return ret
--[[
ret:boolean:true/false
]]
end
function Block:isLiquidBlock( -- 是否是液体方块
--[[
x|y|z:number:位置坐标
]]
x,
y,
z
)
return ret
--[[
ret:boolean:true/false
]]
end
function Block:isAirBlock( -- 是否是气体方块
--[[
x|y|z:number:位置坐标
]]
x,
y,
z
)
return ret
--[[
ret::boolean:true/false
]]
end
function Block:getBlockID( -- 获取指定位置的方块类型
--[[
x|y|z:number:位置坐标
]]
x,
y,
z
)
return ret, blockid
--[[
ret:number:成功(ErrorCode.OK),blockid:number:方块类型ID
]]
end
function Block:setBlockAll( -- 设置位置方块数据
--[[
x|y|z:number:位置坐标,blockid:number:方块类型ID,data:number:方块朝向等数据
]]
x,
y,
z,
blockid,
data
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Block:getBlockData( -- 获取方块数据
--[[
x|y|z:number:位置坐标
]]
x,
y,
z
)
return code, data
--[[
code:number:成功(ErrorCode.OK),data:number:具体的值
]]
end
function Block:destroyBlock( -- 摧毁方块
--[[
x|y|z:number:位置坐标,dropitem:boolean:是否掉落
]]
x,
y,
z,
dropitem
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Block:placeBlock( -- 放置方块
--[[
blockid:number:方块类型ID,x|y|z:number:位置坐标,face:number:朝向,color:number:十六进制颜色值(0XFFFFFF 颜色方块类型才生效)
]]
blockid,
x,
y,
z,
face,
color
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Block:replaceBlock( -- 替换方块
--[[
blockid:number:方块类型ID,x|y|z:number:位置坐标,face:number:朝向,color:number:十六进制颜色值(0XFFFFFF 颜色方块类型才生效)
]]
blockid,
x,
y,
z,
face,
color
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Block:setBlockAllForUpdate( -- 设置blockalldata 更新当前位置方块
--[[
x|y|z:number:位置坐标,blockid:number:方块类型ID
]]
x,
y,
z,
blockid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Block:setBlockAllForNotify( -- 设置blockalldata 通知周围方块
--[[
x|y|z:number:位置坐标,blockid:number:方块类型ID
]]
x,
y,
z,
blockid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Block:setBlockSettingAttState( -- 设置方块设置属性状态
--[[
blockid:number:方块类型ID,attrtype:number:属性枚举,switch:boolean:是否开关
]]
blockid,
attrtype,
switch
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Block:getBlockSettingAttState( -- 获取方块设置属性状态
--[[
blockid:number:方块类型ID,attrtype:number:属性枚举
]]
blockid,
attrtype
)
return code, ret
--[[
code:number:成功(ErrorCode.OK) ,ret:boolean:是否开启
]]
end
function Block:getBlockSwitchStatus( -- 获取功能方块的开关状态
--[[
pos:table:位置值
]]
pos
)
return code, ret
--[[
code:number:成功(ErrorCode.OK) ,ret:boolean:是否开启
]]
end
function Block:setBlockSwitchStatus( -- 设置功能方块的开关状态
--[[
pos:table:位置值,isactive:boolean:是否开启
]]
pos,
isactive
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Block:getBlockDataByDir( -- 通过方向获取方块data值
--[[
blockid:number:方块类型ID, dir:number:方块朝向等数据
]]
blockid,
dir
)
return code, ret
--[[
code:number:成功(ErrorCode.OK) ,ret:boolean:是否开启
]]
end
function Block:getBlockPowerStatus( -- 获取方块的通电状态
--[[
pos:table:位置值
]]
pos
)
return code, ret
--[[
code:number:成功(ErrorCode.OK) ,ret:boolean:是否开启
]]
end
function Block:randomBlockID( -- 在资源库里随机创建一个方块
--[[
无
]]
)
return code, ret
--[[
code:number:成功(ErrorCode.OK),ret:number:随机的方块类型
]]
end
function Block:GetBlockDefName( -- 获取方块名称
--[[
blockid:number:方块类型ID
]]
blockid
)
return code, ret
--[[
code:number:成功(ErrorCode.OK),ret:string:方块名称
]]
end
function Block:GetBlockDefDesc( -- 获取方块描述
--[[
blockid:number:方块类型ID
]]
blockid
)
return code, ret
--[[
code:number:成功(ErrorCode.OK) ,ret:string:方块描述
]]
end
function Block:GetBlockFacade( -- 获取方块外观
--[[
blockid:number:方块类型ID
]]
blockid
)
return code, ret
--[[
code:number:成功(ErrorCode.OK) ,ret:string:随机的外观
]]
end
function Block:PlayAct( -- 位置方块播放动画
--[[
x|y|z:number:位置坐标,animid number:动画ID,playmode number:ANIMMODE枚举值
]]
x,
y,
z,
animid,
playmode
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Block:ReplaceBluePrint( -- 放置蓝图
--[[
x|y|z:number:位置坐标,blueprint:string:蓝图资源ID,angle:number:旋转角度,mirror:boolean:是否镜像,placeMode:boolean:是否放置
]]
x,
y,
z,
blueprint,
angle,
mirror,
placeMode
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
Buff = {}
function Buff:addBuff( -- 给对象附加效果
--[[
objid:number:对象ID,buffid:number:效果ID,bufflv:number:效果等级,customticks:number:效果持续时间(-1表示默认配置,0表示无限)
]]
objid,
buffid,
bufflv,
customticks
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Buff:removeBuff( -- 给对象移除指定效果
--[[
objid:number:对象ID,buffid:number:效果ID
]]
objid,
buffid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Buff:clearAllBuff( -- 给对象清除所有效果
--[[
objid:number:对象ID
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Buff:clearAllBadBuff( -- 为对象清除所有负面效果
--[[
objid:number:对象ID
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Buff:hasBuff( -- 判断对象身上是否有指定效果
--[[
objid:number:对象ID,buffid:number:效果ID,bufflv:number:效果等级
]]
objid,
buffid,
bufflv
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Buff:getBuffList( -- 获取对象身上效果列表
--[[
objid:number:对象ID
]]
objid
)
return code, num, arr
--[[
code:number:成功(ErrorCode.OK),num:number:效果数量,arr:number:效果ID数组
]]
end
function Buff:getBuffNumByBuffid( -- 获取对象身上指定效果数量
--[[
objid:number:对象ID,buffid:number:效果ID
]]
objid,
buffid
)
return code, num
--[[
code:number:成功(ErrorCode.OK),num:number:数量
]]
end
function Buff:getBuffIndex( -- 获取对象身上指定效果的索引位置(索引从1开始)
--[[
objid:number:对象ID,buffid:number:效果ID
]]
objid,
buffid
)
return code, ix
--[[
code:number:成功(ErrorCode.OK),ix:number:效果索引 从1开始
]]
end
function Buff:getBuffLeftTime( -- 获取对象身上指定效果剩余时间
--[[
objid:number:对象ID,buffid:number:效果ID
]]
objid,
buffid
)
return code, num
--[[
code:number:成功(ErrorCode.OK),num:number:剩余时间(秒),0表示永久
]]
end
function Buff:getBuffName( -- 获取对象身上状态效果名称
--[[
objid:number:对象ID,buffid:number:效果ID
]]
objid,
buffid
)
return code, name
--[[
code:number:成功(ErrorCode.OK),name:string:效果名称
]]
end
function Buff:GetBuffDefName( -- 获取状态效果名称
--[[
buffid:number:效果ID
]]
buffid
)
return code, name
--[[
code:number:成功(ErrorCode.OK),name:string:效果名称
]]
end
function Buff:GetBuffDefDesc( -- 获取状态效果描述
--[[
buffid:number:效果ID
]]
buffid
)
return code, desc
--[[
code:number:成功(ErrorCode.OK),desc:string:效果名称
]]
end
Chat = {}
function Chat:sendChat( -- 发送聊天消息(默认全部玩家)
--[[
content:string:发送的文本,targetuin:number:目标玩家玩家(0为所有玩家)
]]
content,
targetuin
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function Chat:sendSystemMsg( -- 发送系统消息(默认全部玩家)
--[[
content:string:发送的文本,targetuin:number:目标玩家玩家(0为所有玩家)
]]
content,
targetuin
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
CloudSever = {}
function CloudSever:setOrderDataBykey( -- 设置排行榜中指定键的数值
--[[
libvarname:string:排行榜变量设计名,key:string:获取的键值,value:number:设置的数值
]]
libvarname,
Key,
value
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:removeOrderDataByKey( -- 删除排行榜中指定键的数值
--[[
libvarname:string:排行榜变量设计名,key:string:获取的键值
]]
libvarname,
key
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:getOrderDataByKeyEx( -- 获取排行榜中指定键的数值
--[[
libvarname:string:排行榜变量设计名,key:string:获取的键值,callback:function:更新回调(function(code/错误码 ...)0成功1失败2数据不存在)
]]
libvarname,
key,
callback
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:getOrderDataIndexValueEx( -- 获取排行榜中指定排名的数值
--[[
libvarname:string:排行榜变量设计名,index:number:获取数据的名次,callback:function:更新回调(function(code/错误码 ...)0成功1失败2数据不存在)
]]
libvarname,
index,
callback
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:ClearOrderData( -- 清理排行榜
--[[
libvarname:string:排行榜变量设计名
]]
libvarname
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:automaticByKey( -- 变量自运算
--[[
libvarname:string:排行榜变量设计名,key:string:获取的键值,value:number:每次加的值
]]
libvarname,
key,
value
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:getOrderDataIndexAreaEx( -- 获取排行榜中多条数据
--[[
libvarname:string:排行榜变量设计名,icount:number:获取数据的条数,callback:function:更新回调(function(code/错误码 ...)0成功1失败2数据不存在)
]]
libvarname,
icount,
callback
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:getOrderDataValueAreaEx( -- 获取排行榜中指定值区域的前多少名数据
--[[
libvarname:string:排行榜变量设计名,icount:number:获取数据的条数,minvalue:number:最小值,maxvalue:number:最大值,callback:function:更新回调(function(code/错误码...)0成功1失败)
]]
libvarname,
icount,
minvalue,
maxvalue,
callback
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:setDataListBykey( -- 设置表中指定键的值
--[[
libvarname:string:表变量设计名,key:string:获取的键值,value:Any:任意值(number,string,table)
]]
libvarname,
Key,
value
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:removeDataListByKey( -- 删除表中指定键的值
--[[
libvarname:string:表变量设计名,key:string:获取的键值
]]
libvarname,
key
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:getDataListByKeyEx( -- 获取表中指定键的值
--[[
libvarname:string:表变量设计名,key:string:获取的键值,callback:function:更新回调(function(code/错误码...)0成功1失败2数据不存在)
]]
libvarname,
key,
callback
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:ClearDataList( -- 清空表数据
--[[
libvarname:string:表变量设计名
]]
libvarname
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:getlistCache( -- 获取表或排行榜当前缓存数据
--[[
libvarname:string:表变量设计名
]]
libvarname
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
function CloudSever:UpdateDataListByKey( -- 安全更新数据
--[[
libvarname:string:表变量设计名,key:string:更新的键值,callback:function:更新回调(function(code/错误码...))
]]
libvarname,
key,
callback
)
return ret
--[[
ret:number:成功(ErrorCode.OK)
]]
end
Creature = {}
function Creature:getAttr( -- 获取生物属性
--[[
objid:number:生物对象ID,attrtype:number:属性枚举值(CREATUREATTR)
]]
objid,
CREATUREATTR
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:属性值
]]
end
function Creature:setAttr( -- 设置生物属性
--[[
objid:number:生物对象ID,attrtype:number:属性枚举值(CREATUREATTR),val:number:属性值
]]
objid,
CREATUREATTR,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:isAdult( -- 判断该生物是否成年
--[[
objid:number:生物对象ID
]]
objid
)
return code
--[[
code:number:是成年(ErrorCode.OK)
]]
end
function Creature:setOxygenNeed( -- 设置是否依赖氧气
--[[
objid:number:生物对象ID,v:boolean:是否开启氧气值
]]
objid,
v
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:getTamedOwnerID( -- 获取驯养主ID
--[[
objid:number:生物对象ID
]]
objid
)
return code, objid2
--[[
code:number:成功(ErrorCode.OK),objid2:number:驯养主ID
]]
end
function Creature:setPanic( -- 设置是否正在惊慌
--[[
objid:number:生物对象ID,v:boolean:是否惊慌
]]
objid,
v
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:setAIActive( -- 设置AI是否生效
--[[
objid:number:生物对象ID,v:boolean:是否生效
]]
objid,
v
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:getActorID( -- 获取生物actorID
--[[
objid:number:生物对象ID
]]
objid
)
return code, actorid
--[[
code:number:成功(ErrorCode.OK),actorid:number:生物类型ID
]]
end
function Creature:getActorName( -- 获取生物名称
--[[
objid:number:生物对象ID
]]
objid
)
return code, name
--[[
code:number:成功(ErrorCode.OK),name:string:生物类型名
]]
end
function Creature:addModAttrib( -- 增加模组属性
--[[
objid:number:生物对象ID,attrtype:number:属性枚举(MODATTRIB_TYPE),value:number:属性值
]]
objid,
MODATTRIB_TYPE,
value
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:getModAttrib( -- 获取模组属性
--[[
objid:number:生物对象ID,attrtype:number:属性枚举(MODATTRIB_TYPE)
]]
objid,
MODATTRIB_TYPE
)
return code, value
--[[
code:number:成功(ErrorCode.OK),value:number:属性值
]]
end
function Creature:setTeam( -- 设置生物队伍
--[[
objid:number:生物对象ID,teamid:number:队伍ID(0无队伍,1-6队伍值)
]]
objids,
teamid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:getTeam( -- 获取生物队伍
--[[
objid:number:生物对象ID
]]
objid
)
return code, teamid
--[[
code:number:成功(ErrorCode.OK),teamid:number:队伍ID(0无队伍,1-6队伍值)
]]
end
function Creature:getMaxFood( -- 获取最大饥饿度
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:最大饥饿度
]]
end
function Creature:getFood( -- 获取饥饿度
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:饥饿度
]]
end
function Creature:setFood( -- 设置饥饿度
--[[
objid:number:生物对象ID,val:number:饥饿度
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:getHpRecover( -- 获取血量恢复率
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:血量恢复率
]]
end
function Creature:getMaxOxygen( -- 获取最大氧气值
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:最大氧气值
]]
end
function Creature:getWalkSpeed( -- 获取行走速度
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:行走速度
]]
end
function Creature:getSwimSpeed( -- 获取游泳速度(水中速度)
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:游泳速度
]]
end
function Creature:getJumpPower( -- 获取跳跃力
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:跳跃力
]]
end
function Creature:getMass( -- 获取重量
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:重量
]]
end
function Creature:getDodge( -- 获取闪避率
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:闪避率
]]
end
function Creature:getPunchAttack( -- 获取近程攻击
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:近程攻击力
]]
end
function Creature:getRangeAttack( -- 获取远程攻击
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:远程攻击
]]
end
function Creature:getPunchDefense( -- 近程防御
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:近程防御
]]
end
function Creature:getRangeDefense( -- 远程防御
--[[
objid:number:生物对象ID
]]
objid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:远程防御
]]
end
function Creature:setMaxHp( -- 设置最大血量
--[[
objid:number:生物对象ID,val:number:最大血量
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:setHP( -- 设置当前血量
--[[
objid:number:生物对象ID,val:number:当前血量
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:setHpRecover( -- 设置每秒血量恢复值
--[[
objid:number:生物对象ID,val:number:血量恢复值
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:setOxygen( -- 设置氧气值
--[[
objid:number:生物对象ID,val:number:氧气值
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:setWalkSpeed( -- 设置行走速度
--[[
objid:number:生物对象ID,val:number:行走速度
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:setSwimSpeed( -- 设置游泳速度(水中速度)
--[[
objid:number:生物对象ID,val:number:游泳速度
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:setJumpPower( -- 设置跳跃力
--[[
objid:number:生物对象ID,val:number:跳跃力
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:setDodge( -- 设置闪避率
--[[
objid:number:生物对象ID,val:number:闪避率
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:setPunchAttack( -- 设置近程攻击
--[[
objid:number:生物对象ID,val:number:近程攻击
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:setRangeAttack( -- 设置远程攻击
--[[
objid:number:生物对象ID,val:number:远程攻击
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:setPunchDefense( -- 设置近程防御
--[[
objid:number:生物对象ID,val:number:近程防御
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:setRangeDefense( -- 设置远程防御
--[[
objid:number:生物对象ID,val:number:远程防御
]]
objid,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:replaceActor( -- 替换生物
--[[
objid:number:生物对象ID,actorid:number:生物类型,replacehp:boolean:血量值替换
]]
objidSrc,
actorid,
replacehp
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Creature:GetMonsterDefName( -- 获取生物名称
--[[
actorid:number:生物类型
]]
actorid
)
return code, name
--[[
code:number:成功(ErrorCode.OK),name:string:生物类型名称
]]
end
function Creature:GetMonsterDefDesc( -- 获取生物描述
--[[
actorid:number:生物类型
]]
actorid
)
return code, desc
--[[
code:number:成功(ErrorCode.OK),desc:string:生物描述
]]
end
Customui = {}
function Customui:setText( -- 设置文本元件内容
--[[
playerid:number:玩家ID,uiid:string:界面ID,elementid:string:元件ID,text:string:文本内容
]]
playerid,
uiid,
elementid,
text
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Customui:setTexture( -- 设置文本元件图案纹理
--[[
playerid:number:玩家ID,uiid:string:界面ID,elementid:string:元件ID,url:string:图案纹理ID
]]
playerid,
uiid,
elementid,
url
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Customui:setSize( -- 设置元件大小
--[[
playerid:number:玩家ID,uiid:string:界面ID,elementid:string:元件ID,width:number:元件宽度,height:number:元件高度
]]
playerid,
uiid,
elementid,
width,
height
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Customui:setFontSize( -- 设置文本元件字体大小
--[[
playerid:number:玩家ID,uiid:string:界面ID,elementid:string:元件ID,size:number:字体大小
]]
playerid,
uiid,
elementid,
size
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Customui:setColor( -- 设置文本元件颜色
--[[
playerid:number:玩家ID,uiid:string:界面ID,elementid:string:元件ID,color:number:颜色值(0xFFFFFF)
]]
playerid,
uiid,
elementid,
color
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Customui:showElement( -- 显示元件
--[[
playerid:number:玩家ID,uiid:string:界面ID,elementid:string:元件ID
]]
playerid,
uiid,
elementid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Customui:hideElement( -- 隐藏元件
--[[
playerid:number:玩家ID,uiid:string:界面ID,elementid:string:元件ID
]]
playerid,
uiid,
elementid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Customui:rotateElement( -- 旋转元件
--[[
playerid:number:玩家ID,uiid:string:界面ID,elementid:string:元件ID,rotate:number:旋转角度
]]
playerid,
uiid,
elementid,
rotate
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Customui:setAlpha( -- 设置透明度
--[[
playerid:number:玩家ID,uiid:string:界面ID,elementid:string:元件ID,alpha:number:透明度
]]
playerid,
uiid,
elementid,
alpha
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Customui:setState( -- 设置状态
--[[
playerid:number:玩家ID,uiid:string:界面ID,elementid:string:元件ID,pageIndex:string:状态值
]]
playerid,
uiid,
pageIndex
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Customui:setPosition( -- 设置位置
--[[
playerid:number:玩家ID,uiid:string:界面ID,elementid:string:元件ID,x:number:X坐标值,y:number:Y坐标值
]]
playerid,
uiid,
elementid,
x,
y
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Customui:getItemIcon( -- 获取道具类型图标
--[[
itemid:number:道具类型ID
]]
itemid
)
return code, icon
--[[
code:number:成功(ErrorCode.OK),icon:string:道具图标
]]
end
function Customui:getMonsterObjIcon( -- 获取生物图标
--[[
objid:number:对象ID
]]
objid
)
return code, icon
--[[
code:number:成功(ErrorCode.OK),icon:string:生物图标
]]
end
function Customui:getMonsterIcon( -- 获取生物类型图标
--[[
itemid:number:道具类型ID
]]
actorid
)
return code, icon
--[[
code:number:成功(ErrorCode.OK),icon:string:道具图标
]]
end
function Customui:getStatusIcon( -- 获取状态图标
--[[
buffid:number:状态类型ID
]]
buffid
)
return code, icon
--[[
code:number:成功(ErrorCode.OK),icon:string:状态图标
]]
end
function Customui:getBlockIcon( -- 获取方块类型图标
--[[
blockid:number:方块类型ID
]]
blockid
)
return code, icon
--[[
code:number:成功(ErrorCode.OK),icon:string:方块图标
]]
end
function Customui:getRoleIcon( -- 获取玩家当前角色图标
--[[
playerid:number:玩家ID
]]
playerid
)
return code, icon
--[[
code:number:成功(ErrorCode.OK),icon:string:角色图标
]]
end
function Customui:getShuctIcon( -- 获取玩家快捷栏图标
--[[
playerid:number:玩家ID,ix:number:快捷栏索引
]]
playerid,
ix
)
return code, icon
--[[
code:number:成功(ErrorCode.OK),icon:string:道具图标
]]
end
DisplayBoard = {}
function DisplayBoard:showBoard( -- 打开一个显示板
--[[
playerid:number:玩家ID,boardid:number:显示板ID
]]
playerid,
boardid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function DisplayBoard:hideBoard( -- 隐藏一个显示板
--[[
playerid:number:玩家ID,boardid:number:显示板ID
]]
playerid,
boardid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function DisplayBoard:setBoardPicture( -- 设置显示板图片
--[[
playerid:number:玩家ID,boardid:number:显示板ID,pictureid:string:图片ID
]]
playerid,
boardid,
pictureid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function DisplayBoard:setBoardVideoUrl( -- 设置显示板视频链接
--[[
playerid:number:玩家ID,boardid:number:显示板ID,url:string:链接地址(内部白名单控制)
]]
playerid,
boardid,
url
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function DisplayBoard:setViedoPlayMode( -- 显示板播放模式
--[[
playerid:number:玩家ID,boardid:number:显示板ID,playmode:number:播放模式(VIEDOPLAYMODE)
]]
playerid,
boardid,
VIEDOPLAYMODE
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function DisplayBoard:setNetViedo( -- 设置显示板网络视频链接
--[[
playerid:number:玩家ID,boardid:number:显示板ID,url:string:链接地址(内部白名单控制)
]]
playerid,
boardid,
url
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
Game = {}
function Game:doGameEnd( -- 游戏结束
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Game:getDefString( -- 获取默认字符串
--[[
id:string:字符串ID
]]
id,
...
)
return code, str
--[[
code:number:成功(ErrorCode.OK),str:string:获取到的字符串
]]
end
function Game:setScriptVar( -- 设置脚本参数,供自定义使用
--[[
index:number:序列索引(0~100),val:number:索引对应的值
]]
index,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Game:getScriptVar( -- 获取脚本参数,自定义使用
--[[
index:number:序列索引(0~100)
]]
index
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:索引对应的值
]]
end
function Game:sendScriptVars2Client( -- 上传设置好的脚本参数
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Game:addRenderGlobalEffect( -- 新增全局效果
--[[
path:string:效果名称
]]
path
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Game:removeRenderGlobalEffect( -- 移除全局效果
--[[
path:string:效果ID
]]
effectid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Game:setRenderGlobalEffectPos( -- 设置全局效果位置
--[[
effectid:string:效果ID,x|y|z:number:方块坐标
]]
effectid,
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Game:setRenderGlobalEffectScale( -- 设置全局效果缩放
--[[
effectid:string:效果ID,scalex:number:x缩放值,scaley:number:y缩放值,scalez:number:z缩放值
]]
effectid,
scalex,
scaley,
scalez
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Game:msgBox( -- 消息弹框
--[[
msg:string:设置的消息
]]
msg
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Game:splitStr( -- 分割字符串
--[[
str:string:分割的字符串,mark:'string':分割符号
]]
str,
mark
)
return code, strs
--[[
code:number:成功(ErrorCode.OK),strs:table:字符串组
]]
end
Graphics = {}
function Graphics:makeGraphicsText( -- 创建文字板信息
--[[
title:string:文本内容,font:number:字体大小,apha:number:不透明度,itype:number:文字板ID
]]
title,
font,
apha,
itype
)
return info
--[[
info:table:文本信息内容
]]
end
function Graphics:makeflotageText( -- 创建漂浮文字信息
--[[
title:string:文本信息,font:number:字体大小,apha:number:不透明度,itype:number:漂浮文字ID
]]
title,
font,
itype
)
return info
--[[
info:table:漂浮文字信息内容
]]
end
function Graphics:makeGraphicsProgress( -- 创建进度条信息
--[[
v1:number:当前值,v2:number:最大值,color:number:颜色值(0xFFFFFF),itype:number:进度条ID
]]
v1,
v2,
color,
itype
)
return info
--[[
info:table:进度条信息内容
]]
end
function Graphics:makeGraphicsArrowToPos( -- 生成指向位置的箭头数据
--[[
x|y|z:number:方块坐标,size:number:缩放值,color:number:颜色值(0xFFFFFF),itype:number:箭头ID
]]
x,
y,
z,
size,
color,
itype
)
return info
--[[
info:table:箭头信息内容
]]
end
function Graphics:makeGraphicsLineToPos( -- 生成指向位置的线数据
--[[
x|y|z:number:方块坐标,size:number:缩放值,color:number:颜色值(0xFFFFFF),itype:number:线ID
]]
x,
y,
z,
size,
color,
itype
)
return info
--[[
info:table:线信息内容
]]
end
function Graphics:makeGraphicsSurfaceToPos( -- 生成指向位置的面数据
--[[
x|y|z:number:方块坐标,size:number:缩放值,color:number:颜色值(0xFFFFFF),itype:number:面ID
]]
x,
y,
z,
size,
color,
itype
)
return info
--[[
info:table:面信息内容
]]
end
function Graphics:makeGraphicsArrowToActor( -- 生成指向对象的箭头数据
--[[
objid:number:对象数据,size:number:缩放值,color:number:颜色值(0xFFFFFF),itype:number:箭头ID
]]
objid,
size,
color,
itype
)
return info
--[[
info:table:箭头信息内容
]]
end
function Graphics:makeGraphicsLineToActor( -- 生成指向对象的线数据
--[[
objid:number:对象数据,size:number:缩放值,color:number:颜色值(0xFFFFFF),itype:number:线ID
]]
objid,
size,
color,
itype
)
return info
--[[
info:table:线信息内容
]]
end
function Graphics:makeGraphicsSurfaceToActor( -- 生成指向对象的面数据
--[[
objid:number:对象数据,size:number:缩放值,color:number:颜色值(0xFFFFFF),itype:number:面ID
]]
objid,
size,
color,
itype
)
return info
--[[
info:table:面信息内容
]]
end
function Graphics:makeGraphicsImage( -- 生成图片信息
--[[
imgid:string:对象数据,scale:number:缩放值,apha:number:不透明度,itype:number:图片ID
]]
imgid,
scale,
apha,
itype
)
return info
--[[
info:table:图片信息内容
]]
end
function Graphics:createGraphicsTxtByPos( -- 在位置上创建文字板
--[[
x|y|z:number:方块坐标,graphicInfo:table:图文信息,x2:number:X坐标偏移(缺省参数),y2:number:Y坐标偏移(缺省参数)
]]
x,
y,
z,
graphicInfo,
x2,
y2
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsTxtByActor( -- 在生物身上创建文字板
--[[
objid:number:对象objid,graphicInfo:table:图文信息,dir:table:方向值(x|y|z),offest:number:方向偏移距离,x2:number:X坐标偏移(缺省参数),y2:number:Y坐标偏移(缺省参数)
]]
objid,
graphicInfo,
dir,
offest,
x2,
y2
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createflotageTextByPos( -- 在位置上创建漂浮文字
--[[
x|y|z:number:方块坐标,graphicInfo:table:图文信息,x2:number:X坐标偏移(缺省参数),y2:number:Y坐标偏移(缺省参数)
]]
x,
y,
z,
graphicInfo,
x2,
y2
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createflotageTextByActor( -- 在生物身上创建漂浮文字
--[[
objid:number:对象objid,graphicInfo:table:图文信息,dir:table:方向值(x|y|z),offest:number:方向偏移距离,x2:number:X坐标偏移(缺省参数),y2:number:Y坐标偏移(缺省参数)
]]
objid,
graphicInfo,
dir,
offest,
x2,
y2
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsProgressByPos( -- 在位置上创建进度条
--[[
x|y|z:number:方块坐标,graphicInfo:table:图文信息,x2:number:X坐标偏移(缺省参数),y2:number:Y坐标偏移(缺省参数)
]]
x,
y,
z,
graphicInfo,
x2,
y2
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsProgressByActor( -- 在生物身上创建进度条
--[[
objid:number:方块坐标,graphicInfo:table:图文信息,dir:table:方向值(x|y|z),offest:number:方向偏移距离,x2:number:X坐标偏移(缺省参数),y2:number:Y坐标偏移(缺省参数)
]]
objid,
graphicInfo,
dir,
offest,
x2,
y2
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:removeGraphicsByPos( -- 删除位置上的图文信息
--[[
x|y|z:number:方块坐标,itype:number:图文信息ID,graphType:number:图文类型枚举值(GRAPHICS)
]]
x,
y,
GRAPHICS,
itype,
graphType
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Graphics:removeGraphicsByObjID( -- 删除生物的图文信息
--[[
objid:number:对象objid,itype:number:图文信息ID,graphType:number:图文类型枚举值(GRAPHICS)
]]
objid,
itype,
GRAPHICS
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Graphics:updateGraphicsTextById( -- 更新图文信息的文字内容
--[[
graphid:number:文字板实例ID,title:number:文本内容,fontsize:number:字体大小,apha:number:不透明度
]]
graphid,
title,
fontsize,
apha
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Graphics:updateGraphicsProgressById( -- 更新进度条的进度
--[[
graphid:number:文字板实例ID,val1:number:当前值,val2:number:最大值
]]
graphid,
val1,
val2
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Graphics:createGraphicsArrowByActorToPos( -- 创建生物指向位置的箭头
--[[
objid:number:对象objid,info:table:图文信息,dir:table:方向值(x|y|z),offest:number:方向偏移距离
]]
objid,
info,
dir,
offset
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsArrowByActorToActor( -- 创建生物指向生物的箭头
--[[
objid:number:对象objid,info:table:图文信息,dir:table:方向值(x|y|z),offest:number:方向偏移距离
]]
objid,
info,
dir,
offset
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsArrowByPosToPos( -- 创建位置指向位置的箭头
--[[
x|y|z:number:位置坐标,info:table:图文信息
]]
x,
y,
z,
info
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsArrowByPosToActor( -- 创建位置指向生物的箭头
--[[
x|y|z:number:位置坐标,info:table:图文信息
]]
x,
y,
z,
info
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsLineByActorToPos( -- 创建生物与位置的线
--[[
objid:number:对象objid,info:table:图文信息,dir:table:方向值(x|y|z),offest:number:方向偏移距离
]]
objid,
info,
dir,
offset
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsLineByActorToActor( -- 创建指向生物的线
--[[
objid:number:对象objid,info:table:图文信息,dir:table:方向值(x|y|z),offest:number:方向偏移距离
]]
objid,
info,
dir,
offset
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsLineByPosToPos( -- 创建位置指向位置的线
--[[
x|y|z:number:位置坐标,info:table:图文信息
]]
x,
y,
z,
info
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsLineByPosToActor( -- 创建位置指向生物的线
--[[
x|y|z:number:位置坐标,info:table:图文信息
]]
x,
y,
z,
info
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsSurfaceByActorToPos( -- 创建指向位置的面
--[[
objid:number:对象objid,info:table:图文信息,dir:table:方向值(x|y|z),offest:number:方向偏移距离
]]
objid,
info,
dir,
offset
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsSurfaceByActorToActor( -- 创建指向生物的面
--[[
objid:number:对象objid,info:table:图文信息,dir:table:方向值(x|y|z),offest:number:方向偏移距离
]]
objid,
info,
dir,
offset
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsSurfaceByPosToPos( -- 创建位置指向位置的面
--[[
x|y|z:number:位置坐标,info:table:图文信息
]]
x,
y,
z,
info
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsSurfaceByPosToActor( -- 创建位置指向生物的面
--[[
x|y|z:number:位置坐标,info:table:图文信息
]]
x,
y,
z,
info
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:snycGraphicsInfo2Client( -- 刷新信息至客机,在更新图文信息接口之后调用
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Graphics:createGraphicsImageByPos( -- 创建位置指向生物的面
--[[
x|y|z:number:方块坐标,info:table:图文信息,x2:number:X坐标偏移(缺省参数),y2:number:Y坐标偏移(缺省参数)
]]
x,
y,
z,
info,
x2,
y2
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
function Graphics:createGraphicsImageByActor( -- 创建位置指向生物的面
--[[
objid:number:方块坐标,info:table:图文信息,dir:table:方向值(x|y|z),offest:number:方向偏移距离,x2:number:X坐标偏移(缺省参数),y2:number:Y坐标偏移(缺省参数)
]]
objid,
info,
dir,
offest,
x2,
y2
)
return code, graphid
--[[
code:number:成功(ErrorCode.OK),graphid:number:图文实例ID
]]
end
Item = {}
function Item:getItemName( -- 获取道具名称
--[[
itemid:number:道具类型ID
]]
itemid
)
return code, name
--[[
code:number:成功(ErrorCode.OK),name:string:道具名称
]]
end
function Item:getItemId( -- 获取掉落物的类型ID
--[[
objid:number:掉落物objid
]]
objid
)
return code, itemid
--[[
code:number:成功(ErrorCode.OK),itemid:number:道具类型ID
]]
end
function Item:getDropItemNum( -- 获取掉落物数量
--[[
objid:number:掉落物objid
]]
objid
)
return code, itemid
--[[
code:number:成功(ErrorCode.OK),itemid:number:掉落物数量
]]
end
function Item:randomItemID( -- 在资源库里随机创建一个道具
--[[
无
]]
)
return code, itemid
--[[
code:number:成功(ErrorCode.OK),itemid:number:道具类型ID
]]
end
function Item:randomProjectileID( -- 在资源库里随机创建一个投掷物
--[[
无
]]
)
return code, itemid
--[[
code:number:成功(ErrorCode.OK),itemid:number:投掷物类型ID
]]
end
function Item:getItemDesc( -- 获取道具类型描述
--[[
itemid:number:道具类型ID
]]
itemid
)
return code, desc
--[[
code:number:成功(ErrorCode.OK),desc:string:描述内容
]]
end
function Item:GetAttr( -- 获取道具属性值
--[[
itemid:number:道具类型ID,attr:number:枚举值(ITEMATTR)
]]
itemid,
ITEMATTR
)
return code, value
--[[
code:number:成功(ErrorCode.OK),value:number:获取的值
]]
end
function Item:playAct( -- 微缩掉落落物或投掷物播放动作
--[[
objid:number:对象ID,animid:number:动作ID,playmode:number:播放模式(ANIMMODE)
]]
objid,
animid,
ANIMMODE
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
MapMark = {}
function MapMark:newShape( -- 新增一个形状(线,矩形,圆形)
--[[
type:number:类型标记,isshow:boolean:是否显示,r|g|b:number:颜色值
]]
type,
isshow,
r,
g,
b
)
return code, shapeid
--[[
code:number:成功(ErrorCode.OK),shapeid:number:形状ID
]]
end
function MapMark:deleteShape( -- 删除一个形状
--[[
shapeid:number:形状ID
]]
shapeid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MapMark:setShapeColor( -- 设置形状颜色
--[[
shapeid:number:形状ID,r|g|b:number:颜色值
]]
shapeid,
r,
g,
b
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MapMark:showShape( -- 设置形状显示/隐藏
--[[
shapeid:number:形状ID,showflag:boolean:是否显示
]]
shapeid,
showflag
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MapMark:updateLine( -- 更新形状(线形),传入起始坐标和末尾坐标
--[[
shapeid:number:形状ID,sx:number:x坐标值, sz:number:z坐标值, ex:number:x坐标值, ez:number:z坐标值
]]
shapeid,
sx,
sz,
ex,
ez
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MapMark:updateRectangle( -- 更新形状(矩形),传入起始坐标和尺寸
--[[
shapeid:number:形状ID,sx:number:x坐标值, sz:number:z坐标值, w:number:宽度, h:number:高度
]]
shapeid,
sx,
sz,
w,
h
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MapMark:updateCircle( -- 更新形状(圆形),传入圆心坐标和半径
--[[
shapeid:number:形状ID,cx:number:x坐标值, cz:number:z坐标值, r:number:半径
]]
shapeid,
cx,
cz,
r
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
MiniTimer = {}
function MiniTimer:isExist( -- 判断计时器是否存在
--[[
id:number:计时器ID
]]
id
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MiniTimer:createTimer( -- 添加计时器
--[[
name:string:计时器名称
]]
name
)
return code, timerid
--[[
code:number:成功(ErrorCode.OK),timerid:number:计时器ID
]]
end
function MiniTimer:deleteTimer( -- 删除计时器
--[[
name:string:计时器名称,timerid:number:计时器ID
]]
id
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MiniTimer:startBackwardTimer( -- 启动倒计时
--[[
id:number:计时器ID,interval:number:开始倒计时事件,repeated:boolean:是否重复
]]
id,
interval,
repeated
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MiniTimer:startForwardTimer( -- 启动正向计时
--[[
id:number:计时器ID
]]
id
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MiniTimer:pauseTimer( -- 暂停计时器
--[[
id:number:计时器ID
]]
id
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MiniTimer:resumeTimer( -- 恢复计时器
--[[
id:number:计时器ID
]]
id
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MiniTimer:stopTimer( -- 停止计时器
--[[
id:number:计时器ID
]]
id
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MiniTimer:changeTimerTime( -- 改变计时器计时
--[[
id:number:计时器ID,curtime:number:计时器当前时刻
]]
id,
curtime
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MiniTimer:getTimerTime( -- 获取计时器时间
--[[
id:number:计时器ID
]]
id
)
return code, runtime
--[[
code:number:成功(ErrorCode.OK),runtime:number:当前倒计时时间
]]
end
function MiniTimer:showTimerWnd( -- 显示计时器窗口(若其他计时器已经显示,则替换显示)
--[[
playerids:table:玩家ID数组(nil表示全部玩家),timerid:number:计时器ID,title:string:计时器窗口显示的标题
]]
playerids,
timerid,
title
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function MiniTimer:hideTimerWnd( -- 隐藏计时器窗口
--[[
playerids:table:玩家ID数组(nil表示全部玩家),timerid:number:计时器ID,title:string:计时器窗口显示的标题
]]
playerids,
timerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
ObjectLib = {}
function ObjectLib:getAreaData( -- 获取区域数据
--[[
uuid:number:区域ID
]]
uuid
)
return code, id
--[[
code:number:成功(ErrorCode.OK),id:number:区域运行ID
]]
end
function ObjectLib:getPositionData( -- 获取位置数据
--[[
uuid:number:位置ID
]]
uuid
)
return code, id
--[[
code:number:成功(ErrorCode.OK),id:number:位置运行ID
]]
end
function ObjectLib:getLivingData( -- 获取生物数据
--[[
uuid:number:生物ID
]]
uuid
)
return code, id
--[[
code:number:成功(ErrorCode.OK),id:number:生物运行ID
]]
end
function ObjectLib:getItemData( -- 获取道具点数据
--[[
uuid:number:道具ID
]]
uuid
)
return code, id
--[[
code:number:成功(ErrorCode.OK),id:number:道具运行ID
]]
end
Player = {}
function Player:getAttr( -- 玩家属性获取
--[[
objid:number:生物对象ID,attrtype:number:属性枚举值(PLAYERATTR)
]]
objid,
PLAYERATTR
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:number:属性值
]]
end
function Player:setAttr( -- 玩家属性设置
--[[
objid:number:生物对象ID,attrtype:number:属性枚举值(PLAYERATTR),val:number:属性值
]]
objid,
PLAYERATTR,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:getHostUin( -- 获取房主uin
--[[
无
]]
)
return code, uin
--[[
code:number:成功(ErrorCode.OK),uin:number:玩家Uin
]]
end
function Player:isMainPlayer( -- 是否是本地玩家
--[[
objid:number:玩家Uin
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:getMainPlayerUin( -- 获取本地玩家的uin
--[[
无
]]
)
return code, uin
--[[
code:number:成功(ErrorCode.OK),uin:number:玩家Uin
]]
end
function Player:getGameResults( -- 获取玩家是否胜利
--[[
objid:number:玩家Uin
]]
objid
)
return code, result
--[[
code:number:成功(ErrorCode.OK),result:number:游戏结果
]]
end
function Player:setGameResults( -- 设置玩家是否胜利
--[[
objid:number:玩家Uin,result:number:游戏结果
]]
objid,
result
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:getGameScore( -- 获取玩家分数
--[[
objid:number:玩家Uin
]]
objid
)
return code, score
--[[
code:number:成功(ErrorCode.OK),score:number:玩家分数
]]
end
function Player:setGameScore( -- 设置玩家分数
--[[
objid:number:玩家Uin,score:number:玩家分数
]]
objid,
score
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:getGameRanking( -- 获取玩家排名
--[[
objid:number:玩家Uin
]]
objid
)
return code, rank
--[[
code:number:成功(ErrorCode.OK),rank:number:玩家排名
]]
end
function Player:setGameRanking( -- 设置玩家分数
--[[
objid:number:玩家Uin,rank:number:玩家排名
]]
objid,
rank
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:gainItems( -- 添加道具至玩家背包
--[[
objid:number:玩家Uin,itemid:number:道具类型,num:number:道具数量,prioritytype:number:道具耐久
]]
objid,
itemid,
num,
prioritytype
)
return code, addnum
--[[
code:number:成功(ErrorCode.OK),addnum:number:道具数量
]]
end
function Player:teleportHome( -- 传送到出生点
--[[
objid:number:玩家Uin
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:getCurToolID( -- 获取玩家手持道具
--[[
objid:number:玩家Uin
]]
objid
)
return code, itemid
--[[
code:number:成功(ErrorCode.OK),itemid:number:道具类型
]]
end
function Player:getNickname( -- 获取玩家手昵称
--[[
objid:number:玩家Uin
]]
objid
)
return code, name
--[[
code:number:成功(ErrorCode.OK),name:string:玩家昵称
]]
end
function Player:removeBackpackItem( -- 移除玩家背包道具
--[[
objid:number:玩家Uin,itemid:number:道具类型,num:number:道具数量
]]
objid,
itemid,
num
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:getDieTimes( -- 获取玩家死亡次数
--[[
objid:number:玩家Uin
]]
objid
)
return code, num
--[[
code:number:成功(ErrorCode.OK),num:number:死亡次数
]]
end
function Player:getLeftLifeNum( -- 获取玩家生命数量
--[[
objid:number:玩家Uin
]]
objid
)
return code, num
--[[
code:number:成功(ErrorCode.OK),num:number:生命数量
]]
end
function Player:setTeam( -- 设置玩家队伍
--[[
objid:number:玩家Uin,teamid:number:队伍ID(0无队伍,1-6队伍值)
]]
objid,
teamid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:getTeam( -- 获取玩家队伍
--[[
objid:number:玩家Uin
]]
objid
)
return code, teamid
--[[
code:number:成功(ErrorCode.OK),teamid:number:队伍ID(0无队伍,1-6队伍值)
]]
end
function Player:getFoodLevel( -- 获取玩家饱食度(体力值)
--[[
objid:number:玩家Uin
]]
objid
)
return code, foodLevel
--[[
code:number:成功(ErrorCode.OK),foodLevel:number:饱食度(体力值)
]]
end
function Player:setFoodLevel( -- 设置玩家饱食度
--[[
objid:number:玩家Uin,foodLevel:number:饱食度(体力值)
]]
objid,
foodLevel
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:getCurShotcut( -- 获取玩家快捷栏索引
--[[
objid:number:玩家Uin
]]
objid
)
return code, value
--[[
code:number:成功(ErrorCode.OK),value:number:索引值
]]
end
function Player:onCurToolUsed( -- 玩家使用手持道具
--[[
objid:number:玩家Uin,num:number:道具数量
]]
objid,
num
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:setSkillCD( -- 设置道具技能时间
--[[
objid:number:玩家Uin,itemid:number:道具类型,cd:number:冷却时间
]]
objid,
itemid,
cd
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:reviveToPos( -- 玩家在指定位置复活
--[[
objid:number:玩家Uin,x|y|z:number:方块坐标
]]
objid,
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:setRevivePoint( -- 设置玩家复活点
--[[
objid:number:玩家Uin,x|y|z:number:方块坐标
]]
objid,
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:mountActor( -- 使玩家骑上坐骑
--[[
objid:number:玩家Uin,objid:number:坐骑ID(传入0,登下坐骑)
]]
playerid,
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:playAct( -- 使玩家播放表情
--[[
objid:number:玩家Uin,actid:number:动作ID
]]
objid,
actid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:notifyGameInfo2Self( -- 使玩家显示飘窗文字
--[[
objid:number:玩家Uin,info:string:文本内容
]]
objid,
info
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:useItem( -- 玩家使用道具
--[[
objid:number:玩家Uin,itemid:number:道具类型,status:number:使用状态(0开始,1结束,2取消),onshift:boolean:是否使用shift键
]]
objid,
itemid,
status,
onshift
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:rotateCamera( -- 玩家旋转摄像机角度
--[[
objid:number:玩家Uin,yaw:number:旋转角度,pitch:number:旋转角度
]]
objid,
yaw,
pitch
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:changeViewMode( -- 玩家改变视角
--[[
objid:number:玩家Uin,viewmode:number:视角枚举(VIEWPORTTYPE),islock:boolean:是否锁定
]]
objid,
VIEWPORTTYPE,
islock
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:setActionAttrState( -- 设置玩家行为属性状态
--[[
objid:number:玩家Uin,actionattr:number:行为枚举(PLAYERATTR_ENABLE),switch:boolean:是否开启
]]
objid,
actionattr,
switch
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:checkActionAttrState( -- 设置玩家行为属性状态
--[[
objid:number:玩家Uin,actionattr:number:视角枚举(PLAYERATTR_ENABLE)
]]
objid,
actionattr
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:isEquipByResID( -- 设置玩家是否装备了某件装备
--[[
objid:number:玩家Uin,itemid:number:道具类型
]]
objid,
itemid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:setPosition( -- 设置玩家位置
--[[
objid:number:玩家Uin,x|y|z:number:方块坐标
]]
objid,
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:getAimPos( -- 获取玩家准心位置
--[[
objid:number:玩家Uin
]]
objid
)
return code, x, y, z
--[[
code:number:成功(ErrorCode.OK),x|y|z:number:方块坐标
]]
end
function Player:setItemAttAction( -- 设置玩家道具设置属性
--[[
objid:number:玩家Uin,itemid:number:道具类型,attrtype:number:行为枚举(PLAYERATTR_ENABLE),switch:boolean:是否开启
]]
objid,
itemid,
attrtype,
switch
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:playMusic( -- 对玩家播放背景音乐
--[[
objid:number:玩家Uin, musicId:string:声音ID,volume:number:声音大小,pitch:number::声音音调,isLoop:是否循环
]]
objid,
musicId,
volume,
pitch,
isLoop
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:stopMusic( -- 玩家停止播放背景音乐
--[[
objid:number:玩家Uin,musicId:string:声音ID
]]
objid,
musicId
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:setGameWin( -- 使玩家胜利
--[[
objid:number:玩家Uin
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:openDevStore( -- 玩家打开开发者商店(仅开发者可用)
--[[
objid:number:玩家Uin
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:openDevStoreNew( -- 玩家打开开发者商店(仅开发者可用)
--[[
objid:number:玩家Uin
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:openDevStoreTab( -- 玩家打开开发者商店并指定页签(仅开发者可用)
--[[
objid:number:玩家Uin,page:string:页签名,name:string:商店描述
]]
objid,
page,
name
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:getPropsType( -- 玩家手持道具的类型
--[[
objid:number:玩家Uin
]]
playerid
)
return code, itemid
--[[
code:number:成功(ErrorCode.OK),itemid:number:道具类型
]]
end
function Player:playAdvertisingCallback( -- 玩家播放开发者广告(仅开发者可用)
--[[
objid:number:玩家ID,adname:string:广告名称,callback:function:更新回调(function(code/错误码,adname/广告名))
]]
objid,
adname,
callback
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:setCheckBoxScale( -- 设置检测掉落物半径
--[[
objid:number:玩家Uin,range:number:半径扩大缩放
]]
objid,
range
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:openBoxByPos( -- 打开可以操作的箱子
--[[
objid:number:玩家Uin,x|y|z:number:方块坐标
]]
objid,
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:forceOpenBoxUI( -- 玩家强制打开UI界面
--[[
objid:number:玩家Uin,itemid:number:方块类型(工匠台)
]]
objid,
itemid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:openDevGoodsBuyDialog( -- 打开开发者商店商品购买弹框
--[[
objid:number:玩家Uin,devGoodsId:number:商品ID,customDesc:string:自定义商品描述
]]
objid,
devGoodsId,
customDesc
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:openUIView( -- 打开一个UI界面
--[[
objid:number:玩家Uin,uiname:number:自定义UIID
]]
objid,
uiname,
param
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:hideUIView( -- 隐藏一个UI界面
--[[
objid:number:玩家Uin,uiname:number:自定义UIID
]]
objid,
uiname
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:changPlayerMoveType( -- 改变玩家移动方式
--[[
objid:number:玩家Uin,moveType:number:飞行枚举(MOVETYPE)
]]
objid,
MOVETYPE
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:shakeCamera( -- 抖动玩家镜头
--[[
objid:number:玩家Uin,duration:number:持续时间,power:number:抖动强度(1~1000)
]]
objid,
duration,
power
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:stopShakeCamera( -- 停止抖动玩家镜头
--[[
objid:number:玩家Uin
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:playQQMusic( -- 玩家播放qq音乐
--[[
playerid:number:玩家Uin,musicId:string:音乐ID,volume:number:声音大小,isLoop:number:是否循环
]]
playerid,
musicId,
volume,
isLoop
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:operateQQMusic( -- 暂停/恢复/停止玩家的QQ音乐
--[[
operate:number:音乐操作枚举(QQMUSICOP),playerid:number:玩家Uin
]]
QQMUSICOP,
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:OpenAppraiseView( -- 打开评价界面
--[[
playerid:number:玩家Uin
]]
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:OpenCollectionView( -- 打开收藏界面
--[[
playerid:number:玩家Uin
]]
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:IsMiniVip( -- 判断玩家是否是迷你会员(阻塞接口)
--[[
playerid:number:玩家Uin
]]
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:SendFriendApply( -- 发送好友申请(相同玩家请求间隔必须大于10s)
--[[
playerid:number:玩家Uin,playerid2:number:玩家Uin2
]]
playerid,
playerid2
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:HasFriend( -- 判断两个玩家是否是迷你会员(阻塞接口)
--[[
playerid:number:玩家Uin,playerid2:number:玩家Uin2
]]
playerid,
playerid2
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:PlayActInHand( -- 玩家手持微缩模型道具播放动作
--[[
objid:number:对象ID,animid:number:动作ID,playmode:number:播放模式(ANIMMODE)
]]
playerid,
animid,
ANIMMODE
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:OpenBuiltinRank( -- 打开内置排行榜
--[[
objid:number:对象ID,id:number:排行榜ID(也可填索引)
]]
playerid,
id
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Player:HideBuiltinRank( -- 隐藏内置排行榜
--[[
objid:number:对象ID
]]
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
Team = {}
function Team:getNumTeam( -- 当前队伍数量
--[[
无
]]
)
return code, num
--[[
code:number:成功(ErrorCode.OK),num:number:队伍数量
]]
end
function Team:getTeamPlayerNum( -- 获取指定队伍玩家数量
--[[
teamid:number:队伍ID(0无队伍,1-6队伍值),alive:number:生存状态
]]
teamid,
alive
)
return code, num
--[[
code:number:成功(ErrorCode.OK),num:number:人数数量
]]
end
function Team:getTeamPlayers( -- 获取指定队伍玩家
--[[
teamid:number:队伍ID(0无队伍,1-6队伍值),alive:number:生存状态
]]
teamid,
alive
)
return code, num, arr
--[[
code:number:成功(ErrorCode.OK),num:number:人数数量,arr:table:玩家ID数组
]]
end
function Team:randomTeamPlayer( -- 队伍中随机一名玩家
--[[
teamid:number:队伍ID(0无队伍,1-6队伍值),alive:number:生存状态
]]
teamid,
alive
)
return code, uin
--[[
code:number:成功(ErrorCode.OK),uin:number:玩家ID
]]
end
function Team:getTeamCreatures( -- 获取指定队伍生物
--[[
teamid:number:队伍ID(0无队伍,1-6队伍值)
]]
teamid
)
return code, arr
--[[
code:number:成功(ErrorCode.OK),arr:table:生物ID数组
]]
end
function Team:setTeamScore( -- 设置队伍分数
--[[
teamid:number:队伍ID(0无队伍,1-6队伍值),score:number:分数值
]]
teamid,
score
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Team:getTeamScore( -- 获取队伍分数
--[[
teamid:number:队伍ID(0无队伍,1-6队伍值)
]]
teamid
)
return code, score
--[[
code:number:成功(ErrorCode.OK),score:number:分数值
]]
end
function Team:addTeamScore( -- 增加队伍分数
--[[
teamid:number:队伍ID(0无队伍,1-6队伍值),score:number:分数值
]]
teamid,
score
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Team:setTeamResults( -- 设置队伍结果
--[[
teamid:number:队伍ID(0无队伍,1-6队伍值),result:number:队伍结果值
]]
teamid,
result
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Team:getTeamResults( -- 获取队伍结果
--[[
teamid:number:队伍ID(0无队伍,1-6队伍值)
]]
teamid
)
return code, result
--[[
code:number:成功(ErrorCode.OK),result:number:队伍结果值
]]
end
function Team:setTeamDieTimes( -- 设置队伍阵亡次数
--[[
teamid:number:队伍ID(0无队伍,1-6队伍值),times:number:阵亡次数
]]
teamid,
times
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Team:getTeamDieTimes( -- 获取队伍阵亡次数
--[[
teamid:number:队伍ID(0无队伍,1-6队伍值)
]]
teamid
)
return code, times
--[[
code:number:成功(ErrorCode.OK),times:number:阵亡次数
]]
end
function Team:addTeamDieTimes( -- 增加队伍阵亡次数
--[[
teamid:number:队伍ID(0无队伍,1-6队伍值),times:number:阵亡次数
]]
teamid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Team:changePlayerTeam( -- 改变玩家队伍
--[[
playerid:number:玩家ID,teamid:number:队伍ID(0无队伍,1-6队伍值,999观战(观战状态只能一个玩家))
]]
playerid,
teamid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
UI = {}
function UI:setGBattleUI( -- 设置战斗总结UI
--[[
name:string:设定名,value:string/boolean:设定值
]]
name,
value
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function UI:world2RadarPos( -- 世界坐标转换到小地图
--[[
x:number:X坐标,y:number:Y坐标
]]
x,
y
)
return code, x, y
--[[
code:number:成功(ErrorCode.OK),x:number:X坐标,y:number:Y坐标
]]
end
function UI:world2RadarDist( -- 世界长度转换到小地图
--[[
length:number:长度
]]
length
)
return code, length
--[[
code:number:成功(ErrorCode.OK),length:number:长度
]]
end
function UI:setMinimapRenderMode( -- 设置小地图模式。
--[[
mode:number:模式(1:45度旋转视角;2:全图俯视角)
]]
mode
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function UI:setShapeLine( -- 地图标记形状设置,设置成线条(LineShape)
--[[
uiname:string:形状名,p1x:number:X坐标,p1y:number:Y坐标,p2x:number:X坐标,p2y:number:Y坐标
]]
uiname,
p1x,
p1y,
p2x,
p2y
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function UI:setShapeCircle( -- 地图标记形状设置,设置成圆(CircleShape)
--[[
uiname:number:形状名,ix:number:X坐标,y:number:Y坐标,radius:number:半径
]]
uiname,
x,
y,
radius
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function UI:ShowScreenEffect( -- 显示屏幕特效
--[[
type:number:效果类型,isloop:boolean:是否循环,incspeed:number:增速
]]
type,
isloop,
incspeed
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
Valuegroup = {}
function Valuegroup:getAllGroupItem( -- 获取组中所有值
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,playerid:number:玩家ID
]]
VARTYPE,
libname,
playerid
)
return code, datas
--[[
code:number:成功(ErrorCode.OK),datas:table:获得的数据值
]]
end
function Valuegroup:insertInGroupByName( -- 添加任意值到任意组
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,value:any:插入的数据,playerid:number:玩家ID
]]
VARTYPE,
libname,
value,
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:removeValueIndexByName( -- 从任意组移除指定编号的值
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,value:any:插入的数据,playerid:number:玩家ID
]]
VARTYPE,
libname,
indx,
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:removeValueByName( -- 从任意组移除任意值
--[[
vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称,playerid:number:玩家ID
]]
VARTYPE,
libname,
value,
playerid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:any:获取到的值
]]
end
function Valuegroup:clearGroupByName( -- 清空任意组
--[[
vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称,playerid:number:玩家ID
]]
VARTYPE,
libname,
playerid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:any:获取到的值
]]
end
function Valuegroup:getGrouplengthByName( -- 获取数组长度
--[[
vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称,playerid:number:玩家ID
]]
VARTYPE,
libname,
playerid
)
return code, len
--[[
code:number:成功(ErrorCode.OK),len:number:获取到的值
]]
end
function Valuegroup:getValueNoByName( -- 获取组中索引的值
--[[
vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称,index:number:索引值,playerid:number:玩家ID
]]
VARTYPE,
libname,
index,
playerid
)
return code, value
--[[
code:number:成功(ErrorCode.OK),value:any:获取到的值
]]
end
function Valuegroup:setValueNoByName( -- 设置组中索引值
--[[
vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称,index:number:索引值,value:any:获取到的值,playerid:number:玩家ID
]]
VARTYPE,
libname,
index,
value,
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:getRandomValueByName( -- 获得数组里面的随机值
--[[
vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称,playerid:number:玩家ID
]]
VARTYPE,
libname,
playerid
)
return code, val
--[[
code:number:成功(ErrorCode.OK),val:any:获取到的值
]]
end
function Valuegroup:insertValueByName( -- 在任意组插入任意值
--[[
vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称,no:number:数值组索引,val:any:设置的值,playerid:number:玩家ID
]]
VARTYPE,
libname,
no,
val,
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:deleteNoByName( -- 从任意组删除指定编号的值
--[[
vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称,no:number:数值组索引,playerid:number:玩家ID
]]
VARTYPE,
libname,
no,
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:deleteValueByName( -- 删除组中指定值的值
--[[
vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称,val:any:删除的值,playerid:number:玩家ID
]]
VARTYPE,
libname,
val,
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:clearNoValueByName( -- 清空组中的空值
--[[
vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称,playerid:number:玩家ID
]]
VARTYPE,
libname,
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:addGroupByName( -- 在任意组中添加一组值
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,libname2:string:变量库名称,playerid:number:玩家ID,playerid2:number:玩家ID
]]
VARTYPE,
libname,
libname2,
playerid,
playerid2
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:removeGroupByName( -- 在任意组中将一组值设为空值
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,libname2:string:变量库名称,playerid:number:玩家ID,playerid2:number:玩家ID
]]
VARTYPE,
libname,
libname2,
playerid,
playerid2
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:deleteGroupByName( -- 在任意组中删除一组值
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,libname2:string:变量库名称,playerid:number:玩家ID,playerid2:number:玩家ID
]]
VARTYPE,
libname,
libname2,
playerid,
playerid2
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:insertGroupByName( -- 在任意组插入一组值
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,no:number:插入的数值,libname2:string:变量库名称,playerid:number:玩家ID,playerid2:number:玩家ID
]]
VARTYPE,
libname,
no,
libname2,
playerid,
playerid2
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:replaceValueByName( -- 替换任意组中的任意值
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,oldval:any:组中的值,newval:any:组中的新值,playerid:number:玩家ID
]]
VARTYPE,
libname,
oldval,
newval,
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:sortGroupByName( -- 对任意组的值排序
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,sortType:number:排序方式(SORT),playerid:number:玩家ID
]]
VARTYPE,
libname,
SORT,
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:hasValueByName( -- 任意组是否有任意值
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,val:any:查询的值,playerid:number:玩家ID
]]
VARTYPE,
libname,
val,
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:hasNoByName( -- 任意组位置上是否有值
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,no:number:查询的索引,playerid:number:玩家ID
]]
VARTYPE,
libname,
no,
playerid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function Valuegroup:getValueCountByName( -- 获取任意组种任意值的数量
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,val:any:查询的值,playerid:number:玩家ID
]]
VARTYPE,
libname,
val,
playerid
)
return code, num
--[[
code:number:成功(ErrorCode.OK,num:number:统计到的数量
]]
end
function Valuegroup:getGroupNoByValue( -- 获取���意组种任意值的编号
--[[
vartype:number:变量类型枚举(VARTYPE),libname:string:变量库名称,val:any:查询的值,playerid:number:玩家ID
]]
VARTYPE,
libname,
val,
playerid
)
return code, no
--[[
code:number:成功(ErrorCode.OK,no:number:索引值
]]
end
function Valuegroup:getSpcialValueByName( -- 获取数值组最大最小值
--[[
libname:string:变量库名称,val:number:(1获取最大值,非1获取最小值),playerid:number:玩家ID
]]
libname,
type,
playerid
)
return code, no
--[[
code:number:成功(ErrorCode.OK,no:number:索引值
]]
end
VarLib2 = {}
function VarLib2:getGlobalVarByName( -- 获取全局变量(通过名称)
--[[
vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称
]]
VARTYPE,
libvarname
)
return code, value
--[[
code:number:成功(ErrorCode.OK),value:any:变量值
]]
end
function VarLib2:setGlobalVarByName( -- 设置全局变量(通过名称)
--[[
vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称,val:any:需设置的值
]]
VARTYPE,
libvarname,
val
)
return code, value
--[[
code:number:成功(ErrorCode.OK),value:any:变量值
]]
end
function VarLib2:getPlayerVarByName( -- 获取玩家私有变量(通过名称)
--[[
playerid:number:玩家ID,vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称
]]
playerid,
VARTYPE,
libvarname
)
return code, value
--[[
code:number:成功(ErrorCode.OK),value:any:变量值
]]
end
function VarLib2:setPlayerVarByName( -- 设置玩家私有变量(通过名称)
--[[
playerid:number:玩家ID,vartype:number:变量类型枚举(VARTYPE),libvarname:string:变量库名称,value:any:变量值
]]
playerid,
VARTYPE,
libvarname,
val
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
World = {}
function World:isDaytime( -- 是否是白天
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:isCustomGame( -- 是否是自定义游戏
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:isCreativeMode( -- 是否是创造模式
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:isGodMode( -- 多人创造模式 或者 自制玩法的编辑模式
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:isExtremityMode( -- 极限模式
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:isFreeMode( -- 冒险模式之自由模式
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:isSurviveMode( -- 单人模式 或者 冒险模式之自由模式
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:isCreateRunMode( -- 由创造模式转的生存
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:isGameMakerMode( -- 自制玩法的编辑模式
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:isGameMakerRunMode( -- 自制玩法的运行模式
--[[
无
]]
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:getHours( -- 获取游戏当前时间(h)
--[[
无
]]
)
return code, hour
--[[
code:number:成功(ErrorCode.OK),hour:number:当前小时时间
]]
end
function World:setHours( -- 设置游戏当前时间
--[[
hour:number:当前小时时间
]]
hour
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:getCameraEditState( -- 获取视角编辑状态
--[[
无
]]
)
return code, state
--[[
code:number:成功(ErrorCode.OK),state:number:状态值(CameraEditState)
]]
end
function World:setCameraEditState( -- 设置视角编辑状态
--[[
state:number:状态值(CameraEditState)
]]
CameraEditState
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:getCustomCameraConfig( -- 获取自定义相机配置
--[[
无
]]
)
return code, config
--[[
code:number:成功(ErrorCode.OK),config:table:相机配置
]]
end
function World:getRangeXZ( -- 获取区块(chunk)范围,返回区块始末位置
--[[
无
]]
)
return code, startX, startZ, endX, endZ
--[[
code:number:成功(ErrorCode.OK),startX:number:起始X坐标,startZ:number:起始Z坐标,endX:number:结束X坐标,endZ:number:结束Z坐标
]]
end
function World:getRayLength( -- 计算指定方向射线长度(遇到方块结束)
--[[
srcx|srcy|srcz:number:起始点,dstx|dsty|dstz:number:目标点,确定方向,distance:number:最长检测距离
]]
srcx,
srcy,
srcz,
dstx,
dsty,
dstz,
distance
)
return code, length
--[[
code:number:成功(ErrorCode.OK),length:number:两点间的长度
]]
end
function World:getRayBlock( -- 射线打到的方块类型(遇到方块结束)
--[[
srcx|srcy|srcz:number:起始点,face:number:方向枚举(FACE_DIRECTION),distance:number:最长检测距离
]]
srcx,
srcy,
srcz,
face,
distance
)
return code, blockid
--[[
code:number:成功(ErrorCode.OK),blockid:number:方块类型ID
]]
end
function World:getActorsByBox( -- 获取范围内Actor对象
--[[
objtype:number:生物类型(OBJ_TYPE,0表示所有对象),x1|y1|z1:number:起始坐标,x2|y2|z2:number:结束坐标
]]
objtype,
x1,
y1,
z1,
x2,
y2,
z2
)
return code, total, allarr
--[[
code:number:成功(ErrorCode.OK),total:number:获取数量,allarr:table:对象objid组
]]
end
function World:getPlayerTotal( -- 获取全部玩家数量
--[[
alive:number:玩家状态(0表示阵亡,1表示存活,默认-1表示全体玩家)
]]
alive
)
return code, num
--[[
code:number:成功(ErrorCode.OK),num:number:获取数量
]]
end
function World:getAllPlayers( -- 获取全部玩家
--[[
alive:number:玩家状态(0表示阵亡,1表示存活,默认-1表示全体玩家)
]]
alive
)
return code, num, list
--[[
code:number:成功(ErrorCode.OK),num:number:获取数量,list:table:对象objid组
]]
end
function World:randomOnePlayer( -- 随机获取一名玩家
--[[
alive:number:玩家状态(0表示阵亡,1表示存活,默认-1表示全体玩家)
]]
alive
)
return code, playerid
--[[
code:number:成功(ErrorCode.OK),playerid:number:玩家Uin
]]
end
function World:despawnActor( -- 移除actor
--[[
objid:number:对象objID
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:spawnCreature( -- 生成生物(包括怪物、NPC、动物等)
--[[
x|y|z:number:方块坐标,actorid:number:生物类型,num:number:生成数量,trigger:boolean:是否触发事件
]]
x,
y,
z,
actorid,
num,
trigger
)
return code, objs
--[[
code:number:成功(ErrorCode.OK),objs:table:生物ID组
]]
end
function World:despawnCreature( -- 移除生物
--[[
objid:number:对象objID
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:spawnItem( -- 在指定位置生成道具
--[[
x|y|z:number:方块坐标,actorid:number:生物类型,num:number:生成数量
]]
x,
y,
z,
itemid,
num
)
return code, obj
--[[
code:number:成功(ErrorCode.OK),obj:number:掉落物ObjID
]]
end
function World:despawnItemByBox( -- 移除区域内的所有道具
--[[
x1|y1|z1:number:起始坐标,x2|y2|z2:number:结束坐标
]]
x1,
y1,
z1,
x2,
y2,
z2
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:despawnItemByObjid( -- 移除道具(通过ID)
--[[
objid:number:对象objID
]]
objid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:spawnProjectile( -- 生成投掷物
--[[
shooter:number:设置投掷物归属的objid,itemid:number:投掷物id,x|y|z:number:投掷物起点,dstx|dsty|dstz:number:投掷物终点,speed:number:投掷物速度
]]
shooter,
itemid,
x,
y,
z,
dstx,
dsty,
dstz,
speed
)
return code, objid
--[[
code:number:成功(ErrorCode.OK),objid:number:投掷物的实例ID
]]
end
function World:spawnProjectileByDir( -- 生成投掷物(通过方向)
--[[
shooter:number:设置投掷物归属的objid,itemid:number:投掷物id,x|y|z:number:投掷物起点,dstx|dsty|dstz:number:投掷方向,speed:number:投掷物速度
]]
shooter,
itemid,
x,
y,
z,
dirx,
diry,
dirz,
speed
)
return code, objid
--[[
code:number:成功(ErrorCode.OK),objid:number:投掷物的实例ID
]]
end
function World:calcDistance( -- 计算位置之间的距离
--[[
pos1:table:起始坐标,pos2:table:结束坐标
]]
pos1,
pos2
)
return code, len
--[[
code:number:成功(ErrorCode.OK),len:number:距离值
]]
end
function World:playParticalEffect( -- 在指定位置播放特效
--[[
x|y|z:number:位置,particleId:number:特效id,scale:number:特效大小
]]
x,
y,
z,
particleId,
scale
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:stopEffectOnPosition( -- 停止指定位置的特效
--[[
x|y|z:number:位置,particleId:number:特效id
]]
x,
y,
z,
particleId
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:setEffectScaleOnPosition( -- 设置指定位置的特效大小
--[[
x|y|z:number:位置,particleId:number:特效id,scale:number:特效大小
]]
x,
y,
z,
particleId,
scale
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:randomParticleEffectID( -- 随机特效类型,随机返回一种特效ID
--[[
无
]]
)
return code, particleId
--[[
code:number:成功(ErrorCode.OK),particleId:number:特效id
]]
end
function World:playSoundEffectOnPos( -- 在指定位置上播放指定音效
--[[
pos:table:位置,soundId:number:音效ID,volume:number:音量调节,pitch:number:音调调节,isLoop:bool:是否循环播放
]]
pos,
soundId,
volume,
pitch,
isLoop
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:stopSoundEffectOnPos( -- 停止指定位置上的指定音效
--[[
pos:table:位置,soundId:number:音效ID
]]
pos,
soundId
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:getLightByPos( -- 获取光照强度
--[[
x|y|z:number:位置
]]
x,
y,
z
)
return code, lv
--[[
code:number:成功(ErrorCode.OK),lv:number:光照强度(0~16)
]]
end
function World:setBlockLightEx( -- 设置光照强度
--[[
x|y|z:number:位置,lv:number:光照强度(0~16)
]]
x,
y,
z,
lv
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function World:randomSoundID( -- 随机一个音效ID
--[[
无
]]
)
return code, soundid
--[[
code:number:成功(ErrorCode.OK),soundid:number:声音ID
]]
end
function World:randomWeatherID( -- 随机一个天气ID
--[[
无
]]
)
return code, wtype
--[[
code:number:成功(ErrorCode.OK),wtype:number:天气值(WEATHERSTATUS)
]]
end
function World:getLocalDate( -- 获取主机时间
--[[
enum:number:枚举值(EVENTDATE)
]]
enum
)
return code, time
--[[
code:number:成功(ErrorCode.OK),time:number:获取到的值
]]
end
function World:getLocalDateString( -- 获取完整设备时间
--[[
无
]]
)
return code, timestr
--[[
code:number:成功(ErrorCode.OK),timestr:string:时间描述
]]
end
function World:getServerDate( -- 获取服务器时间
--[[
enum:number:枚举值(EVENTDATE)
]]
enum
)
return code, time
--[[
code:number:成功(ErrorCode.OK),time:number:获取到的值
]]
end
function World:getServerDateString( -- 获取完整服务器时间
--[[
无
]]
)
return code, timestr
--[[
code:number:成功(ErrorCode.OK),timestr:string:时间描述
]]
end
function World:getDateFromTime( -- 转换时间戳为时间单位
--[[
time:number:时间戳,enum:number:枚举值(EVENTDATE)
]]
time,
enum
)
return code, ret
--[[
code:number:成功(ErrorCode.OK),ret:number:时间值
]]
end
function World:getDateStringFromTime( -- 转换时间戳为完整时间
--[[
time:number:时间戳
]]
time
)
return code, timestr
--[[
code:number:成功(ErrorCode.OK),timestr:string:时间描述
]]
end
WorldContainer = {}
function WorldContainer:addFurnace( -- 新增熔炉
--[[
x|y|z:number:位置,blockid:number:方块类型ID
]]
x,
y,
z,
blockid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:removeFurnace( -- 移除熔炉
--[[
x|y|z:number:位置
]]
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:checkFurnace( -- 检测是否是熔炉
--[[
x|y|z:number:位置
]]
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:getFurnaceHeatPercent( -- 获取熔炉热度百分比
--[[
x|y|z:number:位置,lev:number:熔炼热度
]]
x,
y,
z,
lev
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:getFurnaceMeltPercent( -- 获取熔炉融化百分比
--[[
x|y|z:number:位置
]]
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:addStorageBox( -- 新增储物箱
--[[
x|y|z:number:位置,blockid:number:方块类型ID
]]
x,
y,
z,
blockid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:removeStorageBox( -- 移除储物箱
--[[
x|y|z:number:位置
]]
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:checkStorage( -- 检测是否是储物箱
--[[
x|y|z:number:位置
]]
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:clearStorageBox( -- 清空储物箱
--[[
x|y|z:number:位置
]]
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:checkStorageEmptyGrid( -- 检测储物箱空余格子,传入道具ID则同时检测已存该道具的格子
--[[
x|y|z:number:位置,itemid:number:道具类型ID
]]
x,
y,
z,
itemid
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:setStorageItem( -- 设置储物箱道具
--[[
x|y|z:number:位置,offset:number:仓库格子索引,itemid:number:道具类型ID,num:number:道具数量
]]
x,
y,
z,
offset,
itemid,
num
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:getStorageItem( -- 获取储物箱道具ID
--[[
x|y|z:number:位置,offset:number:仓库格子索引
]]
x,
y,
z,
offset
)
return code, itemid, num
--[[
code:number:成功(ErrorCode.OK),itemid:number:道具类型ID,num:number:道具数量
]]
end
function WorldContainer:addStorageItem( -- 给储物箱添加道具
--[[
x|y|z:number:位置,itemid:number:道具类型ID,num:number:道具数量
]]
x,
y,
z,
itemid,
num
)
return code, relNum
--[[
code:number:成功(ErrorCode.OK),relNum:number:成功添加数量
]]
end
function WorldContainer:removeStorageItemByID( -- 移除储物箱内指定类型的道具
--[[
x|y|z:number:位置,itemid:number:道具类型ID,num:number:道具数量
]]
x,
y,
z,
itemid,
num
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:removeStorageItemByIndex( -- 移除储物箱内指定格子的道具
--[[
x|y|z:number:位置,offset:number:储物箱格子索引(从0开始),num:number:道具数量
]]
x,
y,
z,
offset,
num
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:addItemToContainer( -- 将一定数量道具添加到储物箱中
--[[
x|y|z:number:位置,itemid:number:道具类型ID,num:number:道具数量
]]
x,
y,
z,
itemid,
num
)
return code, relNum
--[[
code:number:成功(ErrorCode.OK),relNum:number:成功添加数量
]]
end
function WorldContainer:removeContainerItemByID( -- 移除储物箱内一定数量道具
--[[
x|y|z:number:位置,itemid:number:道具类型ID,num:number:道具数量
]]
x,
y,
z,
itemid,
num
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
function WorldContainer:clearContainer( -- 清空指定位置的储物箱
--[[
x|y|z:number:位置
]]
x,
y,
z
)
return code
--[[
code:number:成功(ErrorCode.OK)
]]
end
ScriptSupportEvent = {}
function ScriptSupportEvent:registerEvent(eventname,callback) end--给事件绑定响应函数
function copy_table(tab) return tab end --深拷贝
function string.split(substr) return {"",""} end --切割字符串
JSON = {
encode = function(self, tab)
return ""
end,
decode = function(self, str)
return {}
end
}
--最后一次保存时间是2025年2月7日 09:19:45