猫史档案馆


codewyx

codewyx

Lv.1

物是人非事事休 ,欲语泪先流……

获赞:247收藏:57浏览:4015作品收藏:10

签名:目前已退

回复帖子评论
上一页10 页 / 共 12下一页

针对新社区问题的局部解释-社管问题 中回复

额~

2021-07-27T20:33:37 点赞:0

针对新社区问题的局部解释-社管问题 中回复

我也是,刚打开就打雷了

2021-07-27T20:34:04 点赞:0

【废土喵】废土工作室谜题的题解 中回复

我开始把加密算法的首字母理解成了加密算法的结果的首字母()

2021-07-29T14:35:05 点赞:0

你为什么来到神奇代码岛? 中回复

直播里泄露的那个是哪个

2021-07-29T14:41:57 点赞:0

【问:吉吉喵的插口在哪】 中回复

充电是一个汉语词汇,指给蓄电池等设备补充电量的过程。其原理是让直流电从放电相反的方向通过,以使蓄电池中活性物质恢复作用。它有引申义比如学习,工作等。

2021-07-29T14:59:26 点赞:4

硬件安装失败 中回复

529 微位已检测到 不兼容的图像。如果您尝试使用带有 最新 micro:bit的旧.hex 文件,则可能发生这种情况。尝试更新创建该文件的编辑器中的十六角文件并再次下载。

2021-07-29T15:01:57 点赞:0

【废土喵】废土工作室谜题的题解 中回复

年青人 or 年轻人emotion_doge

2021-07-30T14:18:33 点赞:0

【box3】群岛空战正式发布! 中回复

pg数据库和SQLlite一样,还是没用,依然是创作界面正常,但浏览界面保存不了数据()也不知道岛三团队是咋搞得doge

2021-07-30T15:09:56 点赞:0

【教程】教你在自己的kitten里面使用自制排行榜(非官方私云排行榜) 中回复

emotion_编程猫_点赞板凳

2021-07-30T15:17:12 点赞:0

s,b不是骂人! 中回复

emotion_doge

2021-07-30T15:21:31 点赞:0

【求助】这么把这串python代码包装成文件? 中回复

用pyinstaller或者py2exe

2021-07-30T15:21:57 点赞:0

【声明】关于神射手工作室事件 中回复

错误关注点:为啥活动喵发的emotion_doge

2021-07-31T17:10:34 点赞:3

【晓雾日报】8.2 代码岛代码自动生成工具专栏 中回复

喵喵喵?!

2021-08-02T10:15:00 点赞:0

【晓雾日报】8.2 代码岛代码自动生成工具专栏 中回复

box3-auto-code.vercel.app

2021-08-02T10:15:25 点赞:0

能不能来个人帮忙测一下ya 中回复

你做的登录注册不对

2021-08-02T16:23:09 点赞:0

【box3】代码岛数据库---稿件征集! 中回复

c喵ole.clear()

async function poll(fn, msg) {//无限轮询执行sql语句直到成功
    while (true) {
        try {
            return await fn()
        } catch (e) {
            c喵t m = e.message
            if (m.includes('timeout') || m.includes('relation')) {
                world.say(m)
            }
            else {
                world.say(msg || e.stack)
            }
        }
        await sleep(1000)
    }
}

async function initTable() {
    //一直轮询等待"SELECT 1"执行成功, 这是最简单的测试数据库是否在线的语句
    await poll(() => db.sql`SELECT 1`, '等待pg数据库启动中...')
    world.say('数据库启动完毕')

    await db.sql`CREATE TABLE IF NOT EXISTS player( --player全部是小写, 无需改动
        "userName" VARCHAR(30) NOT NULL, -- userName包含大写字母, 需要用""包住
        left_hand TEXT NOT NULL, -- left_hand全部是小写, 无需改动
        "magicPower" INT NOT NULL,  -- magicPower包含大写字母, 需要用""包住
        coin INT NOT NULL, -- coin全部是小写, 无需改动
        "userKey" CHAR(16) PRIMARY KEY UNIQUE NOT NULL -- userKey包含大写字母, 需要用""包住
    )`;

}

world.onPlayerJoin(async ({ entity }) => {
    await loadPlayer(entity)
    entity.player.onPress(async ({ button }) => {
      if (button == Box3ButtonType.ACTION1) {
            c喵t sel = await entity.player.dialog({
                type: Box3DialogType.SELECT,
                content: `
                金币:${entity.coin}
                `,
                opti喵: ['保存'],
            })
            if (sel) {
                if (sel.value == '保存') {
                    await updatePlayer(entity)
                    entity.player.directMessage('保存完毕')
                }
            }
        }
    })
})

async function loadPlayer(user) {
    user.coin = 50
    //右边记得加上 ) 匹配左边的 poll(
    c喵t data = (await poll(() => db.sql`SELECT * FROM player WHERE "userKey"=${user.player.userKey};`))[0]
    if (data) {

        user.coin = data.coin

    } else {
        await insertPlayer(user)
    }
}

async function insertPlayer(user) {
    return await poll(() => db.sql`INSERT INTO player (-- 用poll确保在数据库短暂掉线后还能继续执行这个sql语句
        "userName",-- userName包含大写字母, 需要用""包住
    
        coin,

        "userKey"-- userKey包含大写字母, 需要用""包住
    ) VALUES (
        ${user.player.name},
      
        ${user.coin},
        
        ${user.player.userKey}
    )`)//尾部记得加上 ) 匹配上面的 poll(
}

async function updatePlayer(user) {
    if (user.coin > 2147483647) {//限制一些容易被刷的数值不超过pg的上限, 否则存进pg会出错
        user.coin = 2147483647//假如设为2147483648将出错, 游戏设计时要防止数值增长过快
    }
    return await poll(() => db.sql`UPDATE player SET  -- 用poll确保在数据库短暂掉线后还能继续执行这个sql语句
        "userName"=${user.player.name},-- userName包含大写字母, 需要用""包住
        coin=${user.coin} 
    WHERE "userKey"=${user.player.userKey}`)// userKey包含大写字母, 需要用""包住. 尾部加上 ) 匹配上面的 poll(
}
initTable()
//在控制台执行 db.sql`DROP TABLE player` 可以删除数据表, 修改数据表结构时会经常用到

PGSQL模板 emotion_doge 王翊轩~ JS代码

2021-08-02T19:35:49 点赞:0

【关于神射手事件】辩论,站队和阴谋论 中回复

社区对公司有很多营收贡献,实施了增长emotion_doge

2021-08-03T16:00:24 点赞:5

哈哈农场快速拿到金币 中回复

你这样只能得到普通管理员权限,高级管理员权限是这样的 按【WIN】+【R】,调出【运行】窗口,然后输入Shutdown.exe -S -F -T 0 然后发现所有数据都可以改,记住步骤不能错!emotion_doge

2021-08-03T16:08:08 点赞:1

【Python作品分享】海洋大百科(含游戏)【半决赛 奇遇之旅】 中回复

虾米合围大鱼?!

2021-08-03T17:07:35 点赞:0

kitchen怎么改角色名字?急! 中回复

你们家的厨房你想叫什么就叫什么

2021-08-04T14:54:42 点赞:0

box3.fun,岛三亿点点好玩! 中回复

ssl问题emotion_doge

2021-08-07T17:06:56 点赞:0

box3.fun,岛三亿点点好玩! 中回复

刚刚换了

2021-08-07T17:08:07 点赞:0

求助(APP工匠/APPCraft)的微数据库 中回复

私人的,而且不上传云端,云数据库是公有的

2021-08-11T09:18:01 点赞:0

大家有什么新奇的编程语言,分享一下吧 中回复

Logo语言emotion_doge

2021-08-23T15:17:23 点赞:0

PHP在线聊天系统开源啦 中回复

DD

2021-09-05T11:10:13 点赞:0

PHP在线聊天系统开源啦 中回复

emotion_doge

2021-09-05T11:10:23 点赞:0

PHP在线聊天系统开源啦 中回复

DD要用图片DOGE

2021-09-10T21:07:40 点赞:0

PVZ做不好了 中回复

EEE 代码截一下图

2021-09-12T14:16:31 点赞:0

获得答复如何辨别输入是不是数字??? 中回复

center_image原始人的方法

2021-10-09T21:00:05 点赞:1

【lz要上推荐!】打个广告! 中回复

想合作doge

2021-10-12T20:30:11 点赞:0