用户:
凌_墨水查看:9 回复:6 评论:9 创建时间:2021-06-30T10:39:57
——————————————————————————————————————————————————————————————
如果有什么脑洞大开的奇妙想法
欢迎告诉墨水
墨水会尽全力用代码做出来的

(实在不会那也没办法啊)

如你所见
一刀冲击波正在快速飞出
这里用到了装备模型的知识
其实是比较简单的
/*
1.找出模型,调至适合角度
2.用代码将模型装备初始位置
3.用循环变量加大模型装备的z坐标的offest
4.完成模型飞出效果
*/
不要问我为什么不直接用模型 问了就是懒得调方向
……
……
……
……
……
……
……
……
……
理解好了吗
上代码
world.onPlayerJoin(({ entity }) => {
entity.player.onPress(async ({ entity, button }) => {
if (button === 'action0') {//左键触发
for (let i = 0; i < 40; i++) {//循环40次(或者是39次?)
const allWearables = entity.player.wearables();//这段是抄API的,大意是消除所有装备,所以此处有待改进,只消除冲击波
allWearables.forEach((item) => {//消除装备
item.remove();//消除装备
});//消除装备
entity.player.addWearable({//装备冲击波,模型名称叫“冲击波_1”
bodyPart: Box3BodyPart.TORSO,
mesh: 'mesh/冲击波_1.vb',
orientation: new Box3Quaternion(0, 1, 0, 0).rotateZ(Math.PI / 1),
scale: new Box3Vector3(2, 1, 2),
offset: new Box3Vector3(0, 0.5, i),//此处的i是上面的循环变量,控制offest的z坐标值,从而实现一点点飞出的效果
});
await sleep(50)//等待50毫秒再次执行
}
const allWearables = entity.player.wearables();//最后再次消除装备
allWearables.forEach((item) => {
item.remove();
});
}
})
})
//其实把消除装备的代码删掉也挺好玩的
学会了吗
各位可以在评论区展示成果
如果有什么好的想法请告诉墨水