When you obtain a water bottle in survival mode by ocean water only, it has no tag.
When you obtain a water bottle by cauldron, it has 1 tag.
When you take a water bottle in creative inventory, it has 1 tag =>
{Potion:"minecraft:water"}
If you try to detect if a player has in his inventory a water bottle, and only this potion, you must use =>
/scoreboard players set @a WaterBottle 1 {Inventory:[{id:"minecraft:potion",Damage:0s,Count:1b,tag:{Potion:"minecraft:water"}}]}
The problem is that when a player obtain a water bottle in survival mode by ocean water, his water bottle has no tag, so this command don't work.
If you decide to use this command =>
/scoreboard players set @a WaterBottle 1 {Inventory:[{id:"minecraft:potion",Damage:0s,Count:1b}]}
you will detect players who have one of all potion and not only a water bottle.
So, actually, it's impossible to detect if a player has only a water bottle (obtain in survival mode by ocean water) in his inventory 😞
A water bottle obtain by cauldron has 1 tag so it work here.
Thanks.
Related to MC-98260