Arrow Particles
In this tutorial, I will be making arrow's have trails and arrows to disappear once they hit the ground. If you are here for the commands rather than learning they are all at the bottom of the page.
The commands I will be using to achieve this are:
• Particle
• Tag
• Execute
• Kill
• Playsound
Method / Explanation:
Firstly, We need to create particle trail to follow the arrow, for this we will use /particle. If you don't know how to use this command just click on it above. To choose your particle from the complete list click here. Or just use Tab Completion on it.
Example - /execute at @e[type=arrow] run particle smoke ~ ~ ~ 0.1 0.1 0.1 0.01 5 force
Then we want a system to detect when an arrow has hit the ground, the easiest way to do this is using the inGround data tag. This tag is unique to Arrows as other mobs use a tag called onGround instead however they have the same purpose.
/tag @e[type=arrow,nbt={inGround:1b}] add ArrowInGround
If you would like to learn more about Data Tags and how to use them the tutorial can be found here. This is checking if an arrow is in the ground and if it is, giving them a tag.
Then all our next commands will be executing from the tag. In these command blocks we can add what we want but we need to make sure they execute at the arrow not the command block so we use
/execute at @e[tag=ArrowInGround] run COMMAND
One of these should be a arrow killing command to stop it from always looping the commands as your 'inGround' statement will always be true.
Below I have all the commands from this tutorial and I hope you learned something! ~ Blue
The commands I will be using to achieve this are:
• Particle
• Tag
• Execute
• Kill
• Playsound
Method / Explanation:
Firstly, We need to create particle trail to follow the arrow, for this we will use /particle. If you don't know how to use this command just click on it above. To choose your particle from the complete list click here. Or just use Tab Completion on it.
Example - /execute at @e[type=arrow] run particle smoke ~ ~ ~ 0.1 0.1 0.1 0.01 5 force
Then we want a system to detect when an arrow has hit the ground, the easiest way to do this is using the inGround data tag. This tag is unique to Arrows as other mobs use a tag called onGround instead however they have the same purpose.
/tag @e[type=arrow,nbt={inGround:1b}] add ArrowInGround
If you would like to learn more about Data Tags and how to use them the tutorial can be found here. This is checking if an arrow is in the ground and if it is, giving them a tag.
Then all our next commands will be executing from the tag. In these command blocks we can add what we want but we need to make sure they execute at the arrow not the command block so we use
/execute at @e[tag=ArrowInGround] run COMMAND
One of these should be a arrow killing command to stop it from always looping the commands as your 'inGround' statement will always be true.
Below I have all the commands from this tutorial and I hope you learned something! ~ Blue
Your commands should look like this: