用户:
睿策升华查看:9 回复:11 评论:9 创建时间:2022-12-22T19:05:49
这回我整的这些代码是我浏览了论坛一圈都没人发的,即使发了也是错误的所以大家不要再说我这是抄的,这些代码是我从我的地图里抠出来的。
1.跑酷系列。
(1)碰到某个方块回到存档点。
world.onVoxelContact(({entity,voxel}) => {
if(voxel==voxels.id('grass')){
entity.player.forceRespawn()
entity.player.directMessage("喵地不可以触碰!")
}})
(2)碰到指定方块碎裂后等待几秒再次填补。
world.onVoxelContact(async ({ x, y, z, voxel }) => {
const voxelName = voxels.name(voxel); // 将方块id转换名称
if (voxelName === 'stone') { // 如果方块名称是冰块 voxels.setVoxel(x, y, z, 0); // 将方块变成空气
await sleep(10000)
voxels.setVoxel(x, y, z, 'stone');
} })
//来自我的跑酷地图《睿策之跑》,以及我萌新时做的《夜间跑酷》。作者目前已经有什么新品,名称为《令人疯狂的虚空跑酷》至今没人没能过去,大家也可以去玩。作者目前也在做一个跑酷。名字叫《新春跑酷》链接为https://box3.codemao.cn/e/30bea0c753f657f838a0可以和作者一起来做地图哦。
好了,今天的代码教程就到这里。咱们下期见。
睿策升华大家看一下哈,第2段代码排版错误。有一个代码没起到作用。会出错,请大家看这里。
world.onVoxelContact(async ({ x, y, z, voxel }) => {
const voxelName = voxels.name(voxel); // 将方块id转换名称
if (voxelName === 'stone') { // 如果方块名称是冰块
voxels.setVoxel(x, y, z, 0); // 将方块变成空气
await sleep(10000)
voxels.setVoxel(x, y, z, 'stone');
} }) 点赞0
评论
睿策升华我再说一遍。评论区不要再说我是抄的,我就是从我自己的地图里抠来的。而且我发这条帖子前已经浏览了,整个论坛广场没有发这种代码的人,即使有也是发了的错误的。请大家不要再说我是抄的,API我也没动过。
点赞0
评论
捉虫az,
1.不是你抄的??那就是你合作者抄的
world.onVoxelContact(async ({ x, y, z, voxel }) => {
const voxelName = voxels.name(voxel); // 将方块id转换名称
if (voxelName === 'stone') { // 如果方块名称是冰块
voxels.setVoxel(x, y, z, 0); // 将方块变成空气
await sleep(10000)
voxels.setVoxel(x, y, z, 'stone');
} })
为什么你把stone翻译成“如果方块是冰块”??
API里扣得
2.
world.onVoxelContact(({entity,voxel}) => {
if(voxel==voxels.id('grass')){
entity.player.forceRespawn()
entity.player.directMessage("草地不可以触碰!")
}})
最好是y+=5
点赞1
评论
这样更好
world.onVoxelContact(({entity,voxel}) => {
if(voxel==voxels.id('grass')){
entity.player.forceRespawn()
entity.player.directMessage("喵地不可以触碰!")
}})点赞0
评论
// 定义常量
const STONE_VOXEL_NAME = 'stone';
const WAIT_TIME = 10000;
// 封装设置方块的函数
async function setVoxelAndWait(x, y, z, voxel, waitTime) {
try {
voxels.setVoxel(x, y, z, voxel);
await sleep(waitTime);
} catch (error) {
console.error('设置方块时出现错误:', error);
}
}
world.onVoxelContact(async ({ x, y, z, voxel }) => {
const voxelName = voxels.name(voxel); // 将方块id转换名称
if (voxelName === STONE_VOXEL_NAME) { // 如果方块名称是石头
await setVoxelAndWait(x, y, z, 0, 0); // 将方块变成空气
await setVoxelAndWait(x, y, z, STONE_VOXEL_NAME, WAIT_TIME);
}
});
function sleep(ms) {
return new Promise(resolve => setTimeout(resolve, ms));
}
点赞0
评论