Furthermore, why does this work with all if's and not with elseifs?

Code:
on mpot:text:!aop:#:{
  if ($2 == $null) { msg $chan Specify a nickname. }
  elseif ($2 != $null && $3 == $null) { msg $chan Specify information parameter. }
  elseif ($$2 !ison $chan) { msg $chan $$2 is not on $chan $+ ! }
  elseif (syscon isin $level($address($$2,2))) { msg $chan $address($$2,2) is already at access level syscon! }
  else { /guser syscon $$2 2 $$3 | msg $chan Addedd  $+ $nick $+  to access list at level syscon at address $+ $address($$2,2) $+  with notes  $+ $$3 $+  }
}