maybe i have found a bug with $ifmatch beacause i have a
if (%a) .notice $nick $iif(%b,2,3) bla $ifmatch
and $ifmatch doesn't return %a or %b, he return nothings!
because %b = $null I guess :P
It's working fine here. Are you sure that they're both have non-false values and %b doesn't contain only spaces?
When you say it doesn't return anything what do you mean? Remember you're using the . prefix there so you won't see the notice being sent.
Works fine here:
//var %a = A, %b = B | if (%a) echo -a $iif(%b,2,3) bla $ifmatch
echoes "2 bla B", which is correct: $ifmatch is filled by the first part of the condition in $iif(), which is %b.
If %b is $null, 0 or $false, $ifmatch is correctly set to $null, since the last condition was FALSE:
//var %a = A, %b = 0 | if (%a) echo -a $iif(%b,2,3) bla $ifmatch