Lv.1
在 【岛3老活新整创作节】官方地图《赤碧城》限时送,报名时间已截止! 中回复
我要报名参赛,地图编辑地址是: https://box3.codemao.cn/e/d223ab830喵57c5738be
2021-04-23T19:10:55 点赞:0
在 【岛3老活新整创作节】官方地图《赤碧城》限时送,报名时间已截止! 中回复
我要报名参赛,地图编辑地址是https://box3.codemao.cn/e/0983e31f9a3a4cd53e59
2021-04-23T20:58:55 点赞:0
在 【岛3老活新整创作节】官方地图《赤碧城》限时送,报名时间已截止! 中回复
我要报名参赛,地图编辑地址是https://box3.codemao.cn/e/0983e31f9a3a4cd53e59
2021-04-24T07:29:03 点赞:0
在 【岛3老活新整创作节】官方地图《赤碧城》限时送,报名时间已截止! 中回复
我要报名参赛,我的地图编辑地址是:box3.codemao.cn/e/0983e31f9a3a4cd53e59
2021-04-27T12:21:18 点赞:0
在 【岛3老活新整创作节】官方地图《赤碧城》限时送,报名时间已截止! 中回复
我要报名参赛,我的地图编辑地址是:box3.codemao.cn/e/0983e31f9a3a4cd53e59
2021-04-29T21:44:24 点赞:0
在 【岛3老活新整创作节】官方地图《赤碧城》限时送,报名时间已截止! 中回复
我要报名参赛,我的地图编辑地址是:box3.codemao.cn/e/0983e31f9a3a4cd53e59
2021-04-30T07:16:24 点赞:0
在 【岛3老活新整创作节】赤碧决战 中回复
团队更新:
指令者:全部
box3.codemao.cn/u/MPOzpk
没名某人
box3.codemao.cn/u/meimingmouren2021-05-02T18:52:27 点赞:1
在 岛3·乱码·水~ 中回复
大佬,帮我看看这个代码哪里出错了https://box3.codemao.cn/e/0983e31f9a3a4cd53e59
2021-05-03T14:03:28 点赞:0
在 sql教程 中回复
这个什么问题
//存档
world.onPlayerJoin(({ entity }) => {//每次玩家进入游戏都会运行
entity.kd1 = 0
loadPlayer(entity)
})
entity.player.onPress(async ({ button }) => { //每当有按钮被按下
if (button == Box3ButtonType.ACTION1) { //如果按钮是右键
c喵t selection = await entity.player.dialog({
type: Box3DialogType.SELECT, //对话框类型为选择框
content: `你的累计KD为:\n\n${entity.kd1}`,
opti喵: ['保存'],
})
if (selection) { //确保对话框不是点击x关闭
if (selection.value === '保存') { //被点击的是保存按钮
await savePlayer(entity) //等待写入结束才运行下一行
textDialog(entity, '保存完毕')
}
}
}
})
async function savePlayer(entity) {//定义保存玩家状态的函数
if (entity.player.userKey) {//拥有userKey的玩家, 则玩家不是游客, 可以保存
await db.sql`
--尝试向player表插入一条记录, 向各个字段写入玩家身上对应的属性值
INSERT INTO player (
userName,
kd1
userKey
)
VALUES(
${entity.player.name},
${entity.kd1},
${entity.player.userKey}
)
ON CONFLICT(userKey)--如果玩家记录已经存在, 则不需要插入, 而是更新各个字段的值
DO UPDATE SET
userName=excluded.userName,
money=excluded.money,
junk=excluded.junk,
itemList=excluded.itemList
`
}
}
async function showPlayers() {
c喵ole.clear() // 清空控制台
c喵t playerList = await db.sql`SELECT * FROM player`
for (c喵t p of playerList) {
c喵ole.log(JSON.stringify(p))
}
}
async function createTable() {
await db.sql`
CREATE TABLE IF NOT EXISTS player (
kd1 INTEGER DEFAULT 0,--金钱, INTEGER类型用于存储整数
userKey TEXT PRIMARY KEY UNIQUE DEFAULT ''--玩家的唯一识别码, TEXT类型用于存储字符串
)
`
showPlayers() //每次运行代码都能查看数据库里所有记录
}
async function loadPlayer(entity) {
c喵t data = (await (db.sql`SELECT * FROM player WHERE userKey=${entity.player.userKey} limit 1`))[0]
if (data) { //如果存在这个玩家的存档
entity.kd1 = data.kd1 //恢复金钱
}
}
async function showPlayers() {
c喵ole.clear() // 清空控制台
c喵t playerList = await db.sql`SELECT * FROM player`
for (c喵t p of playerList) {
c喵ole.log(JSON.stringify(p))
}
}
async function createTable() {
await db.sql`CREATE TABLE IF NOT EXISTS player (
userName TEXT DEFAULT '',--玩家名字
kd1 INTEGER DEFAULT 0,--金钱
userKey TEXT PRIMARY KEY UNIQUE DEFAULT ''--玩家的识别码
)`
showPlayers()
}
createTable()2021-05-03T15:48:35 点赞:0