So when the NPC reaches the location (water) it doesn't stop and continues to walk?
There is probably something wrong with your code, it's hard to tell without seeing it.
Maybe you are interfering with the sequence of pathfinding events somehow, for example calling "find path" repeatedly while NPC is still moving or something like that.
For priority you can add some kind of ImportanceFactor. Say, for thirst set it to 1, for food 0.8, for tv 0.3
Then to determine which action NPC should take, divide each instance variable by ImportanceFactor, for example:
hunger=3 / 0.8 = 3.75
thirst=3 / 1 = 3
tv=2 / 0.3 = 6.66
So the NPC should go drink first.