Ethernet Shield using Alarms for Garduino

If you know what time it is, you don't need the Alarm class. You can call Water() from loop() at the appropriate time.

If you want to call Water() from Night(), you can do that, too. Just be sure to call Night() often enough from loop().

The alarm function for some reason does not trigger the function

Does not trigger what function? How do you know it doesn't?