although i personaly recomend codeig a custom user level system. mIRC does have a built in user level system

users can be added with the /auser or /guser commands,

on LEVEL:EVENT:ARGS: { code }


on *:EVENT:ARGS: { if ($level($fulladdress) == LEVEL) { code } }

the first example shows you the LEVEL can be placed as a prefix to the event, usualyusers use a '1' or a '*' here, which would alow you to have the same event work for multipal levels useing the 2nd example which alows you to define condiitonals for each one to do what u want.

for example:
on 20:TEXT:*:#: {
  if ($me isop $chan) {
    if ($1 == !op) { mode $chan +o $nick }
    if ($1 == !kick) { kick $chan $$2 $3- }
  if ($1 == !part) { part $chan $2- }

obviously there are hundereds of different ways this could be coded .. but htis is a very simplistic example of how you might do somethign along these lines, the above example will alow a nick of level 20 or higher to issue the !commands contained inside the conditionals.

hope this helped, if it just confused ya more ask and ill try beter to explain hehe.