【1.19+】实现以绿宝石充当存点,金锄传送的功能
尘末者ChenMom
发布于 2023-06-13 09:51
【实现功能】:
玩家走过绿宝石块后会保存当前位置(绿宝石位置)并以actionbar的形式显示玩家存点位置
玩家手持金锄右键时就会传送到最近一次踩的绿宝石位置
【代码实现部分】
(sever_scripts)
//绿宝石存档点
var playerlist = {}
PlayerEvents.tick(event => {
const { player, sever } = event
let pos = player.block.offset(0, -1, 0)
if (pos.id == 'minecraft:emerald_block') {
playerlist[player.name] = [Math.floor(Number(player.x)), Math.floor(Number(player.y)), Math.floor(Number(player.z))];//获取玩家坐标使用Math.floor()舍去小数部分
player.runCommandSilent(`title @a actionbar "\u00A74记录点已设定至${playerlist[player.name][0]},${playerlist[player.name][1]},${playerlist[player.name][2]}"`);
}
})
ItemEvents.rightClicked(event => {
let player = event.player
//判断是否手持金锄右键(右键耕地不触发)
if (player.getHeldItem(event.hand) == Item.of('minecraft:golden_hoe')) {
if (player.name in playerlist) {
player.setPosition(playerlist[player.name][0] + 0.5, playerlist[player.name][1], playerlist[player.name][2] + 0.5)//传送时将玩家传送至方块中心,所以x、z值+0.5
}
}
})
【标签】:存档、存点、传送、actionbar
全部评论(0)