Summen the villager like that (He will be in "god mode" and will not move)
/summon Villager ~ ~1 ~ {CustomName:"Eliza",CustomNameVisible:1,Profession:0,Invulnerable:1,NoAI:1}
To teleport the villager to the Player put this cmd into an repeating cmd block
/tp @e[name=Eliza,type=Villager] @p
The problem is, that the villeger is exactly in the player. To soolve this, we'll add a kind of delay.
Create a scoreboard:
/scoreboard objectives add lifeTime dummy
Then a repeating cmd block chain:
/summon ArmorStand ~-2 ~ ~ {CustomName:"Follower",Marker:1b,Invisible:1,Invulnerable:1,NoGravity:1}
/scoreboard players add @e[type=ArmorStand,name=Follower] lifeTime 1
/tp @e[score_lifeTime=1,type=ArmorStand,name=Follower] @p
/execute @p ~ ~ ~ tp @e[name=Eliza,type=Villager] @e[score_lifeTime_min=20,type=ArmorStand,name=Follower,rm=2]
/kill @e[score_lifeTime_min=20,type=ArmorStand]
The player will then follow the player but will not go nearby the player (2 blocks radius)
Generator for summon commands: https://mcstacker.bimbimma.com/
Command selectors: http://minecraft.gamepedia.com/Commands#Target_selectors
Plugin for visible Commands: CommandDescriptor by SimonMeusel: https://www.spigotmc.org/resources/commanddesciptor.23870/
What you have to do is put a tag on the arrow when the player is shooting it. If you have any special requirements and tags for the player, put it in the []. If there aren't any tags, get rid of the [].
/execute @a[] ~ ~ ~ scoreboard players tag @e[type=Arrow,r=2] add c4
If you put this on a repeating command block, all arrows shot from the player will have the c4 tag.
Then, create a scoreboard called "click".
/scoreboard objectives add click stat.useItem.minecraft.carrot_on_a_stick
Just for working with it, set it to the sidebar.
/scoreboard objectives setdisplay sidebar click
Now whenever you right click with a carrot on a stick, you will add 1 to your click score.
Make a chain coming from that first repeating command block with the following commands in this order.
/execute @a[score_click_min=1,*other selectors here*] ~ ~ ~ execute @e[type=Arrow,tag=c4] ~ ~ ~ summon *whatever you need* *wherever* *NBT tags*
/execute @a[score_click_min=1,*other selectors here*] ~ ~ ~ kill @e[type=Arrow,tag=c4]
/scoreboard players set @a[] click 0
If you want to add more effects to the arrows before they are killed, use
/execute @a[score_click_min=1,*other selectors here*] ~ ~ ~ execute @e[type=Arrow,tag=c4] ~ ~ ~ *command*
and add it after the first command block. I hope this helped!
Best Answer
Minecraft 1.13 uses tags to identify characteristics of different blocks and entities. Amongst those are fluid tags for lava and water. If you reset the fluid tag for water in your datapack, then the game will treat water like air and you will be unable to swim.
Note that boats are no longer able to float and particles will disappear if you do this. Items also won't float and sponges are unable to remove water.
After that, it's just a matter of giving players who are inside a water block a jumpboost effect.