版本:1.12.2或1.14.4
如题
在玩家处生成火焰弹(fireball),并沿着玩家朝向的方向直线飞行
碰到实体或者方块爆炸
如题
在玩家处生成火焰弹(fireball),并沿着玩家朝向的方向直线飞行
碰到实体或者方块爆炸
可以用雪球吗?
1.12.2execute @e[type=snowball] ~ ~ ~ summon fireball ~ ~ ~ {direction:[0.0,0.0,0.0]}朝雪球方向生成火球
1.12.2execute @e[type=snowball] ~ ~ ~ summon fireball ~ ~ ~ {direction:[0.0,0.0,0.0]}朝雪球方向生成火球
本帖最后由 Chelove_C60 于 2020-1-9 16:57 编辑
你是说火焰弹(small_fireball)还是说恶魂火球(fireball)
1.12需要穷举,或者如果是火球的话,可以像楼上那样用雪球
1.14有两种方法,一种是计分板配合marker计算direction和power的值,然后配合execute store保存;另一种方案是借助0,0,0点利用局部坐标做替换(偷懒做法)
这里我就偷个懒吧,因为要复习,时间不多
首先给需要发射火球(或火焰弹)的玩家加标签(此处假设标签为fireball),然后循环
execute as @a[tag=fireball] at @s run function fun
fun.mcfunction
复制代码
如果要求是火焰弹(small_fireball)的话,还需要一个marker时刻跟着火焰弹,然后检测到火焰弹消失后,生成一个瞬间爆炸的苦力怕或tnt即可
补充:如果要用这种方法,记得把0,0点附近的4个区块设为强制加载区块
你是说火焰弹(small_fireball)还是说恶魂火球(fireball)
1.12需要穷举,或者如果是火球的话,可以像楼上那样用雪球
1.14有两种方法,一种是计分板配合marker计算direction和power的值,然后配合execute store保存;另一种方案是借助0,0,0点利用局部坐标做替换(偷懒做法)
首先给需要发射火球(或火焰弹)的玩家加标签(此处假设标签为fireball),然后循环
execute as @a[tag=fireball] at @s run function fun
fun.mcfunction
- tag @s add summoning
- execute anchored eyes run summon fireball ^ ^ ^ {direction:[0d,0d,0d],Tags:["mark"]}
- summon armor_stand ~ ~ ~ {Tags:["mark"]}
- execute as @e[type=armor_stand,tag=mark] rotated as @a[tag=summoning] run tp 0.0 0.0 0.0
- execute as @e[type=armor_stand,tag=mark] at @s run tp ^ ^ ^0.1
- data modify entity @e[type=fireball,tag=mark,limit=1] power set from entity @e[type=armor_stand,limit=1,tag=mark] Pos
- execute as @e[type=armor_stand,tag=mark] at @s run tp ^ ^ ^1.5
- data modify entity @e[type=fireball,tag=mark,limit=1] direction set from entity @e[type=armor_stand,limit=1,tag=mark] Pos
- kill @e[type=armor_stand,tag=mark]
- tag @e[type=fireball,tag=mark] remove mark
- tag @s remove summoning
如果要求是火焰弹(small_fireball)的话,还需要一个marker时刻跟着火焰弹,然后检测到火焰弹消失后,生成一个瞬间爆炸的苦力怕或tnt即可
补充:如果要用这种方法,记得把0,0点附近的4个区块设为强制加载区块