Your control flow just doesn't make sense. And since I don't know when or where this is being called (combined with your mixing $nick and %nick), it's not easy to guess the best way to fix it or exactly how you want it to behave.
If you're calling this from a
join event, I don't know why you're checking if they're on the channel - unless you're delaying the message with a timer.
It would be best to know the context you're using this in, but I believe the following may be what you want:
if (%nick ison #channelname) {
if (%nick !isnotify) {
notice %nick ...
}
else {
echo This toon has already recieved this message.
}
}