It is a kind of bug in that mIRC recognizes the /else as a command but not as a statement. Also there's a bug in the script editor - it incorrectly indents the lines if you use a multi-line else, but indents correctly with a single-line else.
eg.
on *:HOTLINK:*:*:{
if (*a* iswm $1) {
echo a is in it
} else { [color:orange]<- Still indented[/color]
echo a is not in it
}
}
on *:HOTLINK:*:*:{
if (*a* iswm $1) {
echo a is in it
} else echo a is not in it [color:orange]<- Correctly indented[/color]
}