tag @p[distance=0..1.8,tag=!spectating] add using_smoke

particle minecraft:campfire_signal_smoke ~ ~1 ~ 0.5 0.75 0.5 0.1 200 force

playsound minecraft:entity.breeze.idle_ground master @a ~ ~ ~ 1 1.2
playsound minecraft:block.fire.extinguish master @a ~ ~ ~ 0.8 1.75

effect give @p[tag=using_smoke] invisibility 10 0 true

#Head
summon item ~ ~ ~ {PickupDelay:1,Invulnerable:1b,Tags:["ninja_smoke.armor_item"],Item:{id:"minecraft:stone",count:1}}
item replace entity @n[type=item,tag=ninja_smoke.armor_item] container.0 from entity @p[tag=using_smoke] armor.head
execute unless items entity @p[tag=using_smoke] armor.head * run kill @e[tag=ninja_smoke.armor_item,type=item]
item replace entity @p[tag=using_smoke] armor.head with air
data modify entity @n[type=item,tag=ninja_smoke.armor_item] Owner set from entity @p[tag=using_smoke] UUID
tag @n[type=item,tag=ninja_smoke.armor_item] remove ninja_smoke.armor_item

#Chest
summon item ~ ~ ~ {PickupDelay:1,Invulnerable:1b,Tags:["ninja_smoke.armor_item"],Item:{id:"minecraft:stone",count:1}}
item replace entity @n[type=item,tag=ninja_smoke.armor_item] container.0 from entity @p[tag=using_smoke] armor.chest
execute unless items entity @p[tag=using_smoke] armor.chest * run kill @e[tag=ninja_smoke.armor_item,type=item]
item replace entity @p[tag=using_smoke] armor.chest with air
data modify entity @n[type=item,tag=ninja_smoke.armor_item] Owner set from entity @p[tag=using_smoke] UUID
tag @n[type=item,tag=ninja_smoke.armor_item] remove ninja_smoke.armor_item

#Legs
summon item ~ ~ ~ {PickupDelay:1,Invulnerable:1b,Tags:["ninja_smoke.armor_item"],Item:{id:"minecraft:stone",count:1}}
item replace entity @n[type=item,tag=ninja_smoke.armor_item] container.0 from entity @p[tag=using_smoke] armor.legs
execute unless items entity @p[tag=using_smoke] armor.legs * run kill @e[tag=ninja_smoke.armor_item,type=item]
item replace entity @p[tag=using_smoke] armor.legs with air
data modify entity @n[type=item,tag=ninja_smoke.armor_item] Owner set from entity @p[tag=using_smoke] UUID
tag @n[type=item,tag=ninja_smoke.armor_item] remove ninja_smoke.armor_item

#Boot
summon item ~ ~ ~ {PickupDelay:1,Invulnerable:1b,Tags:["ninja_smoke.armor_item"],Item:{id:"minecraft:stone",count:1}}
item replace entity @n[type=item,tag=ninja_smoke.armor_item] container.0 from entity @p[tag=using_smoke] armor.feet
execute unless items entity @p[tag=using_smoke] armor.feet * run kill @e[tag=ninja_smoke.armor_item,type=item]
item replace entity @p[tag=using_smoke] armor.feet with air
data modify entity @n[type=item,tag=ninja_smoke.armor_item] Owner set from entity @p[tag=using_smoke] UUID
tag @n[type=item,tag=ninja_smoke.armor_item] remove ninja_smoke.armor_item

kill @s
tag @a remove using_smoke