用户:
卑微OIer查看:1 回复:2 评论:1 创建时间:2022-03-07T10:08:37
console.clear()
function sliceItem(item) {
let names = "", number = 0, iter = 0;
while (item[iter] != "*") names += item[iter], iter += 1;
for (its = iter + 1; its < item.length; its++)
number = number * 10 + (item[its] - '0');
return [names, number];
}
world.onPlayerJoin(async ({ entity }) => {
entity.bag = [], entity.capacity = 15;
Object.assign(entity, {
append(things) {
for (let i = 0; i < this.bag.length; i++) {
let op = sliceItem(this.bag[i]);
if (op[0] == things) {
this.bag[i] = op[0] + '*' + String(op[1] + 1);
return true;
}
}
this.bag.push(things + '*1');
},
remove(things) {
for (let i = 0; i < this.bag.length; i++) {
let op = sliceItem(this.bag[i]);
if (op[0] == things) {
if (op[1] > 1) this.bag[i] = op[0] + '*' + String(op[1] - 1);
else this.bag.splice(i, 1);
return true;
}
}
return false;
},
async openBag(){
while(1){
var rslt = await this.player.dialog({
type:Box3DialogType.SELECT,
title: `背包`,
options:[this.bag],
})
if(!rslt)return ;
}
},
async host() {
while (1) {
var result = await this.player.dialog({
type: Box3DialogType.SELECT,
title: `${this.player.name}的状态`,
content: `
血量:[${this.hp}/${this.maxHp}]
容量:[${this.bag.length}/${this.capacity}]`,
options: ['背包'],
})
if (!result) return;
if(result.index==0){
this.openBag();
}
}
}
})
})
world.onPress(async ({ button, entity }) => {
if (button === 'action1') {
entity.host();
}
})