猫史档案馆


PRO数据库

用户:七叶寂照秘密主promax七叶寂照秘密主promax查看:1 回复:3 评论:1 创建时间:2024-01-29T21:57:01


const VER = '0.0'
//-------------------SQL-----------------------------------//
const sql = storage.getDataStorage('users_v0_0')

async function getdata(entity){
    var id = entity.player.userId
    while(1){
        try{
            let data = await sql.get(id)
            if(!(data && data.value)){
                console.log('正在创建数据')
                await sql.set(id,{'coin':entity.coin,'exp':entity.exp,'ver':VER,'item':entity.item,'other':entity.other})
                console.log('创建成功:'+JSON.stringify(data.value))
                return data.value
            }
            var v = data.value
            if (v.ver == VER){
                console.log('数据读取成功'+JSON.stringify(data.value))
                console.log(v.ver+VER)
                return data.value
            }else{
                console.log('数据版本过期')
                let olddata = await sql.get(id)
                let old = olddata.value
                oldcoin = old.coin
                oldexp = old.exp
                olditem = old.item
                oldother = old.other
                await sql.update(id,(preData) => { return {'coin':old.coin,'exp':old.exp,'ver':VER,'item':old.item,'other':old.other} })
                let newdata = await sql.get(id)
                var n = newdata.value
                console.log('更新成功:'+JSON.stringify(newdata.value))
                console.log(n.ver+VER)
                return newdata.value
            }
        }
        catch(e){
            console.log(e)
        }
    }
}



async function setdata(entity){
    var id = entity.player.userId
    while(1){
        try{
            let data = await sql.get(id)
            if(!(data && data.value)){
                console.log('没有创建数据')
                await sql.set(id,{'coin':entity.coin,'exp':entity.exp,'ver':VER,'item':entity.item,'other':entity.other})
                console.log('创建成功:'+JSON.stringify(data.value))
                return
            }else{
                await sql.update(id,(preData) => { return {'coin':entity.coin,'exp':entity.exp,'ver':VER,'item':entity.item,'other':entity.other} })
                let newdata = await sql.get(id)
                var n = newdata.value
                console.log('更新成功:'+JSON.stringify(newdata.value))
                console.log(n.ver+VER)
                return
            }
            
        }
        catch(e){
            console.log(e)
        }
    }
}

async function deldata(entity){//重要的事情说三遍:自己不要作喵!自己不要作喵!自己不要作喵!
    var id = entity.player.userId
    while(1){
        try{
            let data = await sql.get(id)
            if(!(data && data.value)){
                console.log('没有创建数据')
                entity.player.kick()
                return
            }else{
                await sql.remove(id)
                entity.player.kick()
                return
            }
            
        }
        catch(e){
            console.log(e)
        }
    }
}

getdata(entity):获取数据

setdata(entity):保存数据

deldata(entity):删除数据并将该玩家kick出

常量VER是地图版本(可以检查更新,更改other列表数据),other可以存放·其他数据


回复

上一页1 页 / 共 1下一页
USS繁星USS繁星

center_image

点赞0


评论


飞熊jsrt飞熊jsrt

嗨嗨嗨,板凳

点赞0


评论


飞熊jsrt飞熊jsrt

还是我,天花板

点赞0


评论