猫史档案馆


[box3][求助]如何在范围内击飞玩家并扣血?(类似TNT)

用户:电电小玩电电小玩查看:4 回复:3 评论:4 创建时间:2022-07-28T15:37:03


如题,有大佬告诉我嘛?


回复

上一页1 页 / 共 1下一页
_function__function_

吉吉之前有发过教程

球状AOE就是范围伤害

点赞0


评论


中國萬歲_青铁迷中國萬歲_青铁迷

黑,快来见图

点赞0


评论


蓝矮爱乐蓝矮爱乐

首先,遍历全图玩家

如果玩家离你这个范围攻击的距离小于一个数的时候

那么受伤

击飞的时候,计算出这个范围攻击的中心和这个玩家的方向

计算完后将计算出来的结果的xyz都÷范围攻击中心和这个玩家的距离

然后将计算出的结果xyz都乘上你要击飞的力度并用变量“speed”表示

最后将玩家的velocity.copy(speed)就可以弄出范围攻击击飞了

 

遍历全图玩家就是

world.querySelectorAll('player').forEach(o=>{
    //执行code
})

受伤就是

o.hurt(/*这里填写你要受伤的值*/)

计算方向就是

范围攻击的中心.sub(o.position)

÷距离就是

范围攻击的中心.sub(o.position).scale(1/范围攻击的中心.distance(o.position))

击飞力度

var speed = 范围攻击的中心.sub(o.position).scale(1/范围攻击的中心.distance(o.position))*击飞力度

最后copy了

o.velocity.copy(speed)

点赞1


评论