hmm i think i can help... theres no function ( that i know of ) that cheaks if your walking on water.... but heres a way to do it...
Use the same terrain for water and nothing else... e.g if you want to place shallow water make sure you place it on the terrain that your using... then use the condition boolean terrain comparison... e.g Event - Every 1 second (editable) Condition - Boolean terrin at point position of (Vampire) Action- Damage unit Vampire
Then for day detection add these conditions And... Real(interger) time of day > 6 Real(interger) time of day < end of day ( i think 18:00)