I'm trying to summon a wither skeleton on top of an arrow by the time it lands in the ground. It can be summoned in-flight or upon arrival, I don't really care. Every method I've tried so far involves assigning the arrow an objective, but it has not taken any of the objectives, so the skeleton cannot be summoned.
Shadow_Mage
is the team of the player shooting the arrow
Sarrow
is the objective I'm trying to assign; it's typedummy
Running in an always-active unconditional repeating block:
execute @a[team=Shadow_mage] ~ ~ ~ scoreboard players set @e[type=Arrow,r=3] Sarrow 1 {inGround:1b}
Running in an another always-active unconditional repeating block:
execute @e[type=Arrow,score_Sarrow_min=1,score_Sarrow=1] ~ ~ ~ (valid summon command here)
After that I'm going to execute
@
the skeleton tokill
the nearestarrow
.
When I run testfor @e[r=5,type=Arrow,score_Sarrow_min=1]
I get no responses – even though I am of the team Shadow_mage
and the arrow is within 5
meters.
Is my command setup wrong, so the arrow isn't being assigned the objective?
Is the objective being set, but I'm interacting with it wrong?
Is there a better way to reach the right end result?
Best Answer
What you need to do is have an extra scoreboard command (Warrow) and then go from there.
Put the command
execute @a[team=Shadow_mage] ~ ~ ~ scoreboard players set @e[type=Arrow,r=2] Sarrow 1
into a repeating command block with the following commands in order into 3 chain command blocks after it:/scoreboard players set @e[type=Arrow,score_Sarrow_min=1,score_Sarrow=1] Warrow 1 {inGround:1b}
execute @e[type=Arrow,score_Warrow_min=1,score_Warrow=1] ~ ~ ~ summon Wither ~ ~ ~
kill @e[type=Arrow,score_Warrow_min=1,score_Warrow=1]
The first command finds out which arrows are shot by team Shadow_mage (or near them, unfortunately), and sets their score of Sarrow to 1, then the second command gives those arrows a score of 1 in Warrow when they hit the ground, the third command summons the Wither, and the last command kills the arrow to stop it from constantly summoning Withers