用户:
哦里咯啦咯啦查看:410 回复:10 评论:8 创建时间:2022-07-20T13:53:52
大家好,我是哦里咯啦咯啦,B站名一只漫游喵,这次我们要学习的内容是:
爆头检测!!
大家应该都会喵战的代码:击杀、伤害、通报等等
不过你们会检测被点击的玩家被击杀时
是不是被点击头部爆头而喵的呢?
废话不多说,直接上代码
B站教程链接会发在评论区哦
world.onPlayerJoin(async({entity}) => {
entity.enableDamage = true;
entity.player.onPress(({button, raycast:{ hitEntity, hitPosition} }) => {
if (button !== Box3ButtonType.ACTION0 || !hitEntity) {
return;
}
world.say(hitPosition.y - hitEntity.position.y)
if(!hitEntity.isPlayer){return}
hitEntity.hurt(10, {
attacker: entity,
damageType:hitPosition.y - hitEntity.position.y > 0.05? '爆头击杀':'击杀'
});
});
});
world.onDie(async({entity,attacker,damageType}) => {
if (attacker) {
world.say(attacker.player.name + damageType + '了' + entity.player.name)
}
for(let i=5;i>0;i--){
entity.player.directMessage('还剩' + i + '秒复活')
}
entity.player.directMessage('你已复活')
entity.player.forceRespawn();
});
很实用哦
喵战地图可以做的与众不同啦
99.99%准确
你学废了吗?
哦里咯啦咯啦B站教程来啦,网址:https://www.bilibili.com/video/BV1M94y1X7Md?vd_source=ad315be86d4eb36f95984a7d76180590,留得三连在,不怕没柴烧imgsrc="https://static.codemao.cn/emoji/codemao/%E7%BC%96%E7%A8%8B%E7%8C%AB_%E8%B0%A2%E8%B0%A2%E8%80%81%E6%9D%BF.gif"alt="emotion_编程猫_谢谢老板"
点赞0
评论
没咋看懂那个hitPosition()()能详细讲解一下吗awa
点赞0
评论
鼠标准心的位置就是hitPosition,而且是你实际点到的位置不是点到的实体/方块的位置 大致原理就是当你点到的位置是对方的中心位置的上面一段距离,那就是在对方躯干的上面一点,就可以判定爆头
hitPosition就是你点击玩家身上的位置坐标,这里仅仅选取y值,我们把脖子的位置当做‘玩家中心点坐标y值+0.05’,所以只要hitPosition.y的值大于玩家位置+0.05,也就是hitPosition.y-hitEntity.position.y>0.05就说明玩家点击位置在脖子之上,就说明点击的是头部,就是判定爆头