You've got extra brackets in your if statements.

Code:

...elseif ($read(C...>)) {
      if ($readini(topicsettings.ini,topic,$chan) == 0) {
        /msg # ...
      }
      elseif ($readini(topicsettings.ini,topic,$chan) == 1) {
        /topic # $1-
      }
      elseif ($readini(topicsettings.ini,topic,$chan) == 2) {
        /msg # ...
      }
    }...