猫史档案馆


[干货]如何像空岛生存一样可以放置/拆除/更换方块材质

用户:datacatdatacat查看:33 回复:19 评论:33 创建时间:2021-01-31T21:07:44


注:教程灵感来源:潜力新作空岛生存

水教程,大佬勿进

emotion_dogeemotion_喵喵

首先第一步

设置玩家初始方块id

world.onPlayerJoin(({ entity }) => {//当玩家进入游戏
    entity.vi = 'stone';//初始化方块id为stone
})

放置销毁方块代码

world.onPress(({ entity, voxel, button, raycast: { voxelIndex, normal } }) => {//监听事件,当鼠标被点击
    if (button === 'action0') {//如果是右键
        voxels.setVoxel(voxelIndex.x, voxelIndex.y, voxelIndex.z, 0)//销毁该方块

    } else if (button === 'action1') {//如果是左键
        let v = voxelIndex.add(normal);//找到临近方块
        voxels.setVoxel(v.x, v.y, v.z, entity.vi)//放置玩家手里的方块
    }
})

如何在游戏中切换方块呢?

world.onChat(({ message, entity }) => {
    if (message[0] === '切' && message[1] === '换' && message[2] === '方') {
        var message_01 = message;
        message_01 = message_01.replace("切换方块 ", "");
        entity.vi = message_01;
        entity.player.directMessage('方块已切换为' + message_01)
    }
})

使用方法:

在聊天输入:切换方块 方块id

ex.

切换方块 white

emotion_dogeemotion_喵喵

center_image

 

 

版权声明:

功能来源于空岛生存

代码来源于datacat

 


回复

上一页1 页 / 共 1下一页
datacatdatacat

emotion_编程猫_加油

点赞0


评论


yuansyuans

帮我整一下

点赞0


评论


yuansyuans

https://box3.cod喵/e/ee63807cb79c149042d5

点赞0


评论


datacatdatacat

dd

点赞0


评论


TLOCKTLOCK

嘻嘻嘻

点赞0


评论


datacatdatacat

dd

点赞0


评论


凌_墨水凌_墨水

好久以前也有人给我这个代码,而且定义变量名也是v,这是……?

点赞0


评论


帅气的剑杰帅气的剑杰

这是。。。emotion_编程猫_加油emotion_编程猫_加油

点赞0


评论


该账号已被封禁该账号已被封禁

这不是某个叫shyfcka的代码么……

变量名也是v(voxels方块)……

注释都一样

你这明摆着抄袭啊()

点赞0


评论


该账号已被封禁该账号已被封禁

world.onChat(({ message:m, entity:e }) => {
    vox = m.split(' ')//将消息分割 例:切换方块 白色
    if (vox[0] === '切换方块') {
        var mes = m;
        mes = mes.replace("切换方块 ", "");
        e.player.vi = mes;//这个地方应该改为e.player.vi因为是玩家的方块设定,否则会报错
        e.player.directMessage('方块已切换为' + message_01)
    }
}

点赞0


评论


SKQASKQA

空岛第二个作者也来了(滑稽)

这。。。。。

点赞1


评论


SKQASKQA

检测消息是否要切换方块的可以用startsWith方便一点

if(m.startsWith('切换方块')){}

检测按键的……科普一下我都是用岛三button的类型的,帖子写的那样也行

点赞0


评论


lon江航lon江航

emotion_编程猫_点赞

点赞0


评论


Architect_皮卡awaArchitect_皮卡awa

emotion_doge

点赞0


评论


Architect_皮卡awaArchitect_皮卡awa

emotion_编程猫_厉害了emotion_doge

点赞0


评论


化石茄子的铁镐化石茄子的铁镐

挖坟

点赞0


评论


化石茄子的铁镐化石茄子的铁镐

切换方块不至于那么麻烦吧

点赞0


评论


化石茄子的铁镐化石茄子的铁镐

world.onChat(({ message, entity }) => {
    if (message[0] == '切' && message[1] == '换')
    {
            entity.vi = message.slice(2);
            entity.player.directMessage('你切换了' + message.slice(2))
    }
})

点赞0


评论


聋猪up聋猪up

水'真'复制高手

点赞0


评论