If the conditions aren't right to call lightning, but you try to cast it at a target anyways, they attack you. I'd be all right with that if there was some other way to tell whether the weather is right.
Currently, c 'call lightning' no matter what the weather will ask you for a direction. Could it be programmed to say "ready to call", "need more wind," "need more rain", and "need more rain/wind"? Either that or adjust the weather command so it can tell you exactly when you can call?
Code:
>weather
It's raining very hard, mild, and windy.
The wind blows from the southeast at 22 knots.
It feels like lightning could strike at any moment. <-new line
Code:
>weather
It's raining very hard, mild, and calm.
The wind blows from the southeast at 4 knots.
It feels too calm to call lightning. <-new line
Something like that?
edit: you might want to make the message shaman only so as to not tip anybody off, but that sort of sucks for people with scrolls/wands.