I found this swear script thats better then mine so I was wondering if it can be use for private swear spam instead of channel swear spam?
Can we just change:
on @!*:TEXT:*:#: {
to
on @!*:OPEN:?:*: {

Code:
alias swear { dialog -dmr sweard sweard }

dialog sweard {
  title " Swear"
  size -1 -1 342 330
  button "&Close",1, 205 305 60 20, cancel,flat
  list 2, 15 20 140 110, sort size  
  box "Swear Words",3, 5 5 160 153
  button "Add",4,  15 133 60 21,flat
  button "Remove",5, 80 133 74 20, autohs,flat
  box "Exempt Channels:",6, 170 5 161 153
  list 7, 180 20 140 110, sort size  
  button "Add",8, 180 133 60 21,flat
  button "Remove",9, 246 133 73 20, autohs,flat
  check "Kick Message:",10, 13 179 84 20
  box "Other Options",11, 5 156 326 142
  edit "",12, 99 179 225 20, autohs
  button "Ok",13, 270 305 60 20, ok,flat
  check "Exempt The Ops in the Channel", 14, 13 205 175 10 
  check "Exempt The Voices in the Channel", 15, 13 224 185 10
  edit "", 16, 112 238 50 20, autohs
  check "Set Ban Length:", 17, 13 240 99 20
  text "Seconds", 18, 165 240 50 20
  combo 19, 112 265 151 89, edit drop autohs 
  text "Select Ban Time", 21, 13 268 99 30  
}

on *:dialog:sweard:*:*:{
  if ($devent == init) {
    if ($readini($keke,options,ban)) { did -c $dname 17 }    
    if ($readini($keke,options,message)) { did -c $dname 10 }  
    if ($readini($keke,options,ops)) { did -c $dname 14 }
    if ($readini($keke,options,vops)) { did -c $dname 15 }
    did -a $dname 12 $readini($keke,options,message)    
    if ($readini($keke,options,secs)) { did -c $dname 17 }
    did -a $dname 16 $readini($keke,options,secs)
    did -i $dname 19 0 $readini($keke,options,punish)    
    .dlist 2 swear words 
    .dlist 7 exempt chan 
    did -f $dname 13
    did -a sweard 19 Kick
    did -a sweard 19 Kick and Ban 
    did -a sweard 19 None

  }    
  if ($devent == sclick) {
    if ($did(14).state == 1) { op_c }
    if ($did(15).state == 1) { vo_c }
    if ($did == 4) {
      var %t = $$?="Enter swear word $crlf $+ Separate multiple entries with a comma:"
      if ($numtok(%t,32) > 1) { %t = $replace(%t,$chr(32),$chr(160)) }
      .writeini $keke swear words $iif($readini($keke,swear,words),$+($ifmatch,$chr(44),%t),%t)
      dlist 2 swear words    
    }
    if ($did == 5) {
      var %tmp = $did(2).seltext
      if (%tmp) {
        if ($remtok($readini($keke,swear,words),%tmp,44)) { 
          .writeini $keke swear words $ifmatch 
        }
        else .remini $keke swear words
        .dlist 2 swear words      
      }
    }
    if ($did == 8) {
      var %t = $$?="Enter Channel Name $crlf $+ Separate multiple entries with a comma:"
      if ($chr(32) !isin %t) {
        .writeini $keke exempt chan $iif($readini($keke,exempt,chan),$+($ifmatch,$chr(44),%t),%t)
        dlist 7 exempt chan      
      }
    }
    if ($did == 9) {
      var %tmp = $did(7).seltext
      if (%tmp) {
        if ($remtok($readini($keke,exempt,chan),%tmp,44)) { 
          .writeini $keke exempt chan $ifmatch 
        }
        else .remini $keke exempt chan
        .dlist 7 exempt chan      
      }
    }


    if ($did == 13) {
      ; OK button,flat

      .writeini $keke options kick $iif($did(10).state == 1,$true,$false)
      .writeini $keke options message $iif($did(12),$ifmatch,$readini($keke,options,message))
      .writeini $keke options secs $iif($did(16) isnum 1-,$ifmatch,$readini($keke,options,secs))
      .writeini $keke options ops $iif($did(14).state == 1,$true,$false)
      .writeini $keke options vops $iif($did(15).state == 1,$true,$false)
      .writeini $keke options ban $iif($did(17).state == 1,$true,$false)
      .writeini $keke options punish $iif($did(19),$ifmatch,$readini($keke,options,punish))
    }
  }
}

on @!*:TEXT:*:#: {
  %swear.punish = $readini($keke,options,punish))
  if ($ischan) { return }  
  if ($readini($keke,options,ops)) { op_c }
  if ($readini($keke,options,vops)) { vo_c }
  if ($readini($keke,swear,words)) && ($match_text($1-)) {
    if (None isin %swear.punish) { return }    
    if (kick isin %swear.punish) {
      if (ban isin %swear.punish) {
        .raw kick $chan $nick $+(:,$readini($keke,options,message)) $+ $cr $+ mode $chan +b $mask($fulladdress,2)
        .timerswearunban 1 $readini($keke,options,secs) mode $chan -b $mask($fulladdress,2)
      }
      else { .raw kick $chan $nick $+(:,$readini($keke,options,message)) }
    }
  }
}

alias -l keke return $+(",$scriptdirswear.ini,")

alias -l ischan {
  var %i = $numtok($readini($keke,exempt,chan),44),%j
  while (%i > 0) {
    %j = $gettok($readini($keke,exempt,chan),%i,44)
    if (%j isin $chan) || ($2 == %j) { return $true }
    dec %i
  }
  return $false
}

alias -l match_text {
  var %i = $numtok($readini($keke,swear,words),44),%swear
  while (%i > 0) {
    %swear = $+(*,$replace($gettok($readini($keke,swear,words),%i,44),$chr(160),$chr(32)),*) 
    if ($wildtok($1-,%swear,1,44)) {
      return $true
    }
    dec %i
  }
}

alias op_c {
  if ($nick isop $chan) { halt }
}

alias vo_c {
  if ($nick isvo $chan) { halt }
}
alias -l dlist {
  var %a = 1
  did -r $dname $1
  while ($gettok($readini($keke,$2,$3),%a,44)) {
    did -az $dname $1 $ifmatch
    inc %a
  }
}