您的位置:首页 > 娱乐 > 明星 > 上海品牌策划设计_微商城怎么开通视频_青岛网站快速排名优化_seo培训网的优点是

上海品牌策划设计_微商城怎么开通视频_青岛网站快速排名优化_seo培训网的优点是

2025/3/7 0:17:14 来源:https://blog.csdn.net/qq_15117535/article/details/145963863  浏览:    关键词:上海品牌策划设计_微商城怎么开通视频_青岛网站快速排名优化_seo培训网的优点是
上海品牌策划设计_微商城怎么开通视频_青岛网站快速排名优化_seo培训网的优点是

云服数据存储接口:CloudSever
 迷你世界
更新时间: 2024-04-28 19:09:10
具体函数名及描述如下:

序号     函数名     函数描述
1    setOrderDataBykey(...)    设置排行榜中指定键的数值
2    removeOrderDataByKey(...)    删除排行榜中指定键的数值
3    getOrderDataByKeyEx(...)    获取排行榜中指定键的数值
4    getOrderDataIndexValueEx(...)    获取排行榜中指定排名的数值
5    ClearOrderData(...)    清理排行榜
6    automaticByKey(...)    变量自运算
7    getOrderDataIndexAreaEx(...)    
获取排行榜中多条数据

(一次最多100条数据)

8    getOrderDataValueAreaEx(...)    
获取排行榜中指定值区域的前多少名数据

(一次最多100条数据)

9    setDataListBykey(...)    设置表中指定键的值
10    removeDataListByKey(...)    删除表中指定键的值
11    getDataListByKeyEx(...)    获取表中指定键的值
12    ClearDataList(...)    清空表数据
13    getlistCache(...)    获取表或排行榜当前缓存数据
14    UpdateDataListByKey(...)
安全更新数据
15    SendSeverMsg(...)
发送服务通知消息
16    TransmitToMap(...)
传送玩家到指定地图
17    TransmitToRoom(...)
传送玩家到指定房间
18    TransmitOtherRoom(...)
传送玩家其他房间
19    GetRoomID(...)
获取当前云服房间ID
20    TransmitToCategoryRoom(...)
传送玩家到指定分类房间
21    SetForbidJoin(...)
当前房间停止进入玩家(仅云服生效)
22    CloseCurRoom(...)
关闭当前房间(仅云服生效)
23    GetRoomCategory(...)    获取当前房间的分类信息(仅云服生效)
 

setOrderDataBykey

参数及类型:
libvarname:string排行榜变量设计名
key:string获取的键值
value:number设置的数值
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 设置排行榜中指定键的数值
具体使用案例如下:
local libvarname = 'rank_1'
local ret = CloudSever:setOrderDataBykey(libvarname,"key1",1)
if ret == ErrorCode.OK then
    print('设置排行榜值成功 k = key1 ,v = 1')
else
    print('设置排行榜值失败')
end
Lua
 

removeOrderDataByKey

参数及类型:
libvarname:string排行榜变量设计名
key:string获取的键值
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 删除排行榜中指定键的数值
具体使用案例如下:
local libvarname = 'rank_1'
local ret = CloudSever:removeOrderDataByKey(libvarname,"key1")
if ret == ErrorCode.OK then
    print('删除排行榜数据成功')
else
    print("删除排行榜数据失败")
end
Lua
 

getOrderDataByKeyEx

参数及类型:
libvarname:string排行榜变量设计名
key:string获取的键值
callback:function更新回调(function(code/错误码 ...)0成功1失败2数据不存在)
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 获取排行榜中指定键的数值
具体使用案例如下:
local callback = function (ret,k,v,ix) -- 返回结果不一定有排名
    if ret == ErrorCode.OK then
        if ix then
            print('返回数据成功 键= '..k..' 值='..v..' 排名='..ix )
        else
            print('返回数据成功 键= '..k..' 值='..v)
        end
    else
        if ret == 2 then --=不存在数据
            print('数据不存在')
        else
            print('获取失败')
        end
    end
end
local libvarname = 'rank_1'
local ret = CloudSever:getOrderDataByKeyEx(libvarname,"key1",callback)
if ret == ErrorCode.OK then
    print('请求排行榜数据成功')
else
    print("请求排行榜数据失败")
end
Lua
 

getOrderDataIndexValueEx

参数及类型:
libvarname:string排行榜变量设计名
index:number获取数据的名次
callback:function更新回调(function(code/错误码 ...)0成功1失败2数据不存在)
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 获取排行榜中指定排名的数值
具体使用案例如下:
local callback = function (ret,k,v,ix)
    if ret == ErrorCode.OK then
        print('返回数据成功 键= '..k..' 值='..v..' 排名='..ix )
    else
        if ret == 2 then --=不存在数据
            print('数据不存在')
        else
            print('获取失败')
        end
    end
end
local libvarname = 'rank_1'---4
local ret = CloudSever:getOrderDataIndexValueEx(libvarname,1,callback) -- 请求第1名的数据
if ret == ErrorCode.OK then
    print('请求排行榜数据成功')
else
    print("请求排行榜数据失败")
end
Lua
 

ClearOrderData

参数及类型:
libvarname:string排行榜变量设计名
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 清理排行榜
具体使用案例如下:
local libvarname = 'rank_1'
local ret = CloudSever:ClearOrderData(libvarname) -- 清空排行榜
if ret == ErrorCode.OK then
    print('清空排行榜值成功')
else
    print('清空排行榜值失败')
end
Lua
 

automaticByKey

参数及类型:
libvarname:string排行榜变量设计名
key:string获取的键值
value:number每次加的值
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 变量自运算
具体使用案例如下:
local libvarname = 'rank_1'
local value = 10
local ret = CloudSever:automaticByKey(libvarname,"key1",value) -- 设置自运算值加10
if ret == ErrorCode.OK then
    print('设置排行榜值成功 k = key1 ,v = 1')
else
    print('设置排行榜值失败')
end
Lua
 

getOrderDataIndexAreaEx

参数及类型:
libvarname:string排行榜变量设计名
icount:number获取数据的条数
callback:function更新回调(function(code/错误码 ...)0成功1失败2数据不存在)
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
callback返回数据格式示例:
本地:
{
    {
        -- 玩家1迷你号,string类型
        k = [[1000]],
        -- 玩家1排行榜数值,number类型
        v = 1
    },
    {
        -- 玩家2迷你号,string类型
        k = [[1001]],
        -- 玩家2排行榜数值,number类型
        v = 3
    }
    -- 更多玩家数据依次类推
}
-- 本地返回的数据格式示例
Lua
云服:
{
    {
        -- 玩家1迷你号,string类型
        k = [[1000]],
        -- 玩家1排行榜数值,number类型
        v = 1,
        -- 玩家1昵称,string类型
        nick = [[迷你队长]]
    },
    {
        -- 玩家2迷你号,string类型
        k = [[1001]],
        -- 玩家2排行榜数值,数值类型
        v = 3,
        -- 玩家2昵称,string类型
        nick = [[迷你策划 Max]]
    }
    -- 更多玩家数据依次类推
}
-- 云服返回的数据格式示例
Lua
该方法的主要作用: 获取排行榜中多条数据(一次最多100条数据)
具体使用案例如下:
--百人排行榜展示例子
local libvarname = 'rank_1'--排行榜名称
local reqcount = 100 --榜单上线
local refreshdt = 10 --首次请求间隔
local updatetime = 0 --当前更新时间
local RankInfos = {}
local function func_runtime(param)
    local curtime = os.time()
    if curtime - updatetime > refreshdt then
        updatetime = curtime
        local tmfos = {}
        local callback = function (ret,value) -- 返回结果不一定有排名
            if ret == ErrorCode.OK and value then
                refreshdt = 1200 --刷新时间修改
                for ix,  v in pairs(value) do
                    table.insert(tmfos,v)
                end
                if #tmfos == reqcount or #tmfos > #RankInfos then
                    RankInfos = tmfos
                end
            end
        end
        local ret = CloudSever:getOrderDataIndexAreaEx(libvarname,reqcount,callback)
        if ret == ErrorCode.OK then
            print('请求排行榜数据成功')
        else
            print("请求排行榜数据失败")
        end
    end
end
ScriptSupportEvent:registerEvent('Game.RunTime', func_runtime)
local RankUI  = "7275576434651487802" -- 填入UIID
local RefishTxt =
{
    -- {"名次",'昵称','分数'}的元件ID,
    {"7275576434651487802_1",'7275576434651487802_2','7275576434651487802_3'},
}
local PageItemCount = #RefishTxt
local AllUserinfo = {}
local function RankRefish(uin)
    if not AllUserinfo[uin] then AllUserinfo[uin] = 0 end
    print(AllUserinfo[uin])
    local istr = AllUserinfo[uin]*PageItemCount + 1
    if istr > #RankInfos  then return end
    for i = 1, PageItemCount, 1 do
        if RefishTxt[i] then
            if istr <= #RankInfos  then
                Customui:setText(uin,RankUI,RefishTxt[i][1],tostring(istr))
                Customui:setText(uin,RankUI,RefishTxt[i][2],tostring(RankInfos[istr].nick or RankInfos[istr].k))
                Customui:setText(uin,RankUI,RefishTxt[i][3],tostring(RankInfos[istr].v))
                istr = istr + 1
            else
                Customui:setText(uin,RankUI,RefishTxt[i][1],"")
                Customui:setText(uin,RankUI,RefishTxt[i][2],"")
                Customui:setText(uin,RankUI,RefishTxt[i][3],"")
            end
        end
    end
end
local function func_openui(e)
    if #RankInfos > 0 and e.CustomUI == RankUI then
        local uin = e.eventobjid
        AllUserinfo[uin] = 0
        RankRefish(uin)
    end
end
ScriptSupportEvent:registerEvent('UI.Show', func_openui)
--[[
--翻页功能
local pageupele = "7275576434651487802_7" -- 填入向上翻页按钮节点
local pagedownele = "7275576434651487802_8"-- 填入向下翻页按钮节点
local function func_page(e)
    local uin = e.eventobjid
    if  uin and  e.btnelenemt then
        if e.btnelenemt ==  pageupele then
            if not AllUserinfo[uin] then AllUserinfo[uin] = 0 end
            AllUserinfo[uin] =  AllUserinfo[uin] + 1
            if AllUserinfo[uin] > math.ceil(#RankInfos / PageItemCount )  then AllUserinfo[uin] = math.ceil(#RankInfos / PageItemCount) return end
            RankRefish(uin)
        elseif e.btnelenemt ==  pagedownele then
            if not AllUserinfo[uin] then AllUserinfo[uin] = 0 end
            AllUserinfo[uin] =  AllUserinfo[uin] -  1
            if AllUserinfo[uin] < 0  then AllUserinfo[uin] = 0 return end
            RankRefish(uin)
        end
    end
end
ScriptSupportEvent:registerEvent('UI.Button.Click', func_page)
]]--
Lua
 

getOrderDataValueAreaEx

参数及类型:
libvarname:string排行榜变量设计名
icount:number获取数据的条数
minvalue:number最小值
maxvalue:number最大值
callback:function更新回调(function(code/错误码...)0成功1失败)
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 获取排行榜中指定值区域的前多少名数据(一次最多100条数据)
具体使用案例如下:
local callback = function (ret,value)
    if ret == ErrorCode.OK and value then
        for ix,  v in pairs(value) do
            local txt = '第'.. ix..'名'..'键 = ' ..v.k..'值 = '..v.v
            print(txt)
        end
    end
end
local libvarname = 'rank_1'
local ret  = CloudSever:getOrderDataValueAreaEx(libvarname,-2,50,200,callback) -- 请求值是50 - 200的从大到小排序的前2名的数据
if ret == ErrorCode.OK then
    print('请求排行榜数据成功')
else
    print("请求排行榜数据失败")
end
Lua
 

setDataListBykey

参数及类型:
libvarname:string表变量设计名
key:string获取的键值
value:Any任意值(number,string,table)
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 设置表中指定键的值
具体使用案例如下:
local libvarname = 'list_1'
local ret = CloudSever:setDataListBykey(libvarname,"key1.score",1)
if ret == ErrorCode.OK then
    print('设置排行榜值成功 k = key1 ,v = 1')
else
    print('设置排行榜值失败')
end
Lua
 

removeDataListByKey

参数及类型:
libvarname:string表变量设计名
key:string获取的键值
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 删除表中指定键的值
具体使用案例如下:
local libvarname = 'list_1'
local ret = CloudSever:removeDataListByKey(libvarname,"key1.score") --获取key1的分数
if ret == ErrorCode.OK then
    print('请求删除排行榜数据成功')
else
    print("请求删除排行榜数据失败")
end
Lua
 

getDataListByKeyEx

参数及类型:
libvarname:string表变量设计名
key:string获取的键值
callback:function更新回调(function(code/错误码...)0成功1失败2数据不存在)
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 获取表中指定键的值
具体使用案例如下:
local callback = function (ret,k,v)
    if ret == ErrorCode.OK then
        print('获取数据成功 键= '..k..' 值='..v)
    else
        if ret == 2 then --=不存在数据
            print('数据不存在')
        else
            print('获取失败')
        end
    end
end
local libvarname = 'list_1'
local ret = CloudSever:getDataListByKeyEx(libvarname,"key1.score",callback) --获取key1的分数
if ret == ErrorCode.OK then
    print('请求排行榜数据成功')
else
    print("请求排行榜数据失败")
end
Lua
 

ClearDataList

参数及类型:
libvarname:string表变量设计名
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 清空表数据
具体使用案例如下:
local libvarname = 'list_1'
local ret = CloudSever:ClearDataList(libvarname)
if ret == ErrorCode.OK then
    print('清空表成功')
else
    print('清空表失败')
end
Lua
 

getlistCache

参数及类型:
libvarname:string表变量设计名
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 获取表或排行榜当前缓存数据
具体使用案例如下:
local libvarname = 'list_1'
local ret,values = CloudSever:getlistCache(libvarname)
if ret == ErrorCode.OK then
    print('获取数据成功')
else
    print('获取数据失败')
end
Lua
 

UpdateDataListByKey

参数及类型:
libvarname:string表变量设计名
key:string更新的键值
callback:function更新回调(function(code/错误码...))
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 安全更新数据
具体使用案例如下:
local callback = function (ret,key,value)
    -- ret 0 很遗憾,数据冲突了,
    -- 需要根据带回来的最新value进行逻辑处理后返回给底层重试
    if ret == 0 then
        print("有冲突,这是数据库里最新的值" , value)
        --逻辑处理
        value = value + 1
        --返回给底层重试
        return value
    -- ret 2 修改成功啦
    elseif ret == 2 then
        print("成功,更新后的值 " , value)
    end
  end
  local ret = CloudSever:UpdateDataListByKey('list','score',callback)
  if ret == ErrorCode.OK then
  end
Lua
 

SendSeverMsg

参数及类型:
msg:string消息名称
customdata:any消息附带参数
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 发送服务通知消息
具体使用案例如下:
--派发自定义事件
local function func_event(param)
    local data = {id = 123,ops = "aaa"} --自定义事件带入的参数
    local ok, json = pcall(JSON.encode, JSON, data) --转换成json格式
    CloudSever:SendSeverMsg("customevent",{customdata = json}) -- 发送云服消息广播
end
ScriptSupportEvent:registerEvent('Player.PlayAction', func_event)
--云服消息广播监听
local function func_event(param)
    print(param) --打印自定义事件参数
end
ScriptSupportEvent:registerEvent('customevent', func_event)
Lua
 

TransmitToMap

参数及类型:
playerid:uin玩家UIN或玩家uin的数组
mapid:number地图ID
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 传送玩家到指定地图
具体使用案例如下:
local ret  = CloudSever:TransmitToMap(playerid, mapid)
if ret == ErrorCode.OK then
    print('执行成功'  )
else
    print('执行失败')
end
Lua
 

TransmitToRoom

参数及类型:
playerid:uin玩家UIN或玩家uin的数组
roomid:string房间ID
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 传送玩家到指定房间
具体使用案例如下:
local ret  = CloudSever:TransmitToRoom(playerid, roomid)
if ret == ErrorCode.OK then
    print('执行成功'  )
else
    print('执行失败')
end
Lua
 

TransmitOtherRoom

参数及类型:
playerid:玩家UIN或玩家uin的数组
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 传送玩家到其他房间
具体使用案例如下:
local ret  = CloudSever:TransmitOtherRoom(playerid)
if ret == ErrorCode.OK then
    print('执行成功'  )
else
    print('执行失败')
end
Lua
 

GetRoomID

参数及类型: 无
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
roomid:string房间ID
该方法的主要作用: 获取当前云服房间ID
具体使用案例如下:
local ret ,roomid = CloudSever:GetRoomID()
if ret == ErrorCode.OK then
    print('执行成功' ,roomid )
else
    print('执行失败')
end
Lua
 

TransmitToCategoryRoom

参数及类型:
playerid:uin玩家UIN或玩家uin的数组
roomtype:string分类ID(数值和字符串组合)
mapid:string地图ID
返回值及类型:
ret:number成功(ErrorCode.OK)ErrorCode
该方法的主要作用: 传送玩家到指定分类房间
具体使用案例如下:
local ret  = CloudSever:TransmitToCategoryRoom(playerid, roomtype, mapid)
if ret == ErrorCode.OK then
    print('执行成功'  )
else
    print('执行失败')
end
Lua
 

SetForbidJoin

参数及类型:
seconds:number倒计时事件(小于等于零立即生效,默认0)
返回值及类型:
code:number成功(ErrorCode.OKErrorCode
该方法的主要作用: 当前房间停止进入玩家(仅云服生效)
具体使用案例如下:
local code  = CloudSever:SetForbidJoin(seconds)
if code == ErrorCode.OK then
    print('执行成功'  )
else
    print('执行失败')
end
Lua
 

CloseCurRoom

参数及类型:
countdown:number倒计时事件(小于等于零立即生效,默认0)
msg:string提示语
返回值及类型:
code:number成功(ErrorCode.OKErrorCode
该方法的主要作用: 关闭当前房间(仅云服生效)
具体使用案例如下:
local code  = CloudSever:CloseCurRoom(countdown, msg)
if code == ErrorCode.OK then
    print('执行成功'  )
else
    print('执行失败')
end
Lua
 

GetRoomCategory

参数及类型:无
返回值及类型:
code:number成功(ErrorCode.OK)ErrorCode
msg:string分类信息
该方法的主要作用: 获取当前房间的分类信息(仅云服生效,和传送到指定分类房间接口配合使用)
具体使用案例如下:
local code ,msg = CloudSever:GetRoomCategory()
if code == ErrorCode.OK then
    print('执行成功' ,msg )
else
    print('执行失败')
end

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com