All pastes #1913715 Raw Edit

Someone

public text v1 · immutable
#1913715 ·published 2010-08-09 07:47 UTC
rendered paste body
alias kb5 {
  ban -u300 $chan $$1 2
  k $$1 $2- $+ $chr(32) $+ (5 min. ban)
}

alias nopunct {
  var %input = $1-
  var %final
  var %position = 1
  var %flag = off
  while (%position <= $len(%input)) {
    if (($asc($mid(%input,%position,1)) >= 65) && ($asc($mid(%input,%position,1)) <= 90)) || (($asc($mid(%input,%position,1)) >= 97) && ($asc($mid(%input,%position,1)) <= 122)) || (($asc($mid(%input,%position,1)) >= 48) && ($asc($mid(%input,%position,1)) <= 57)) { 
      if (%flag == on) {
        %final = %final $+ $chr(32) $+ $mid(%input,%position,1))
        %flag = off
      }
      else {
        %final = %final $+ $mid(%input,%position,1))
      }
    }
    else if ($asc($mid(%input,%position,1)) == 32) {
      %flag = on
    }
    inc %position
  }
  return %final
}

alias latinize {
  var %output
  var %position = 1
  while (%position <= $len($1-)) {
    var %asc = $asc($mid($1-,%position,1))
    if (%asc == 32) {
      %flag = on
    }
    else {
      unset %flag
    }
    if (%flag == on) {
      if (%asc == 170) || (%asc >= 224 && %asc <= 229) {
        %output = %output $+ $chr(32) $+ a
      }
      elseif (%asc >= 192 && %asc <= 197) {
        %output = %output $+ $chr(32) $+ A
      }
      elseif (%asc == 230) {
        %output = %output $+ $chr(32) $+ ae
      }
      elseif (%asc == 198) {
        %output = %output $+ $chr(32) $+ AE
      }
      elseif (%asc == 223) {
        %output = %output $+ $chr(32) $+ B
      }
      elseif (%asc == 162) || (%asc == 169) || (%asc == 231) {
        %output = %output $+ $chr(32) $+ c
      }
      elseif (%asc == 199) {
        %output = %output $+ $chr(32) $+ C
      }
      elseif (%asc == 240) {
        %output = %output $+ $chr(32) $+ d
      }
      elseif (%asc == 208) {
        %output = %output $+ $chr(32) $+ D
      }
      elseif (%asc >= 232) && (%asc <= 235) {
        %output = %output $+ $chr(32) $+ e
      }
      elseif (%asc >= 200) && (%asc <= 203) {
        %output = %output $+ $chr(32) $+ E
      }
      elseif (%asc >= 236) && (%asc <= 239) {
        %output = %output $+ $chr(32) $+ i
      }
      elseif (%asc >= 204) && (%asc <= 207) {
        %output = %output $+ $chr(32) $+ I
      }
      elseif (%asc == 163) {
        %output = %output $+ $chr(32) $+ L
      }
      elseif (%asc == 241) {
        %output = %output $+ $chr(32) $+ n
      }
      elseif (%asc == 209) {
        %output = %output $+ $chr(32) $+ N
      }
      elseif (%asc == 176) || (%asc == 186) || (%asc = 248) || ((%asc >= 242) && (%asc <= 246)) {
        %output = %output $+ $chr(32) $+ o
      }
      elseif (%asc == 216) || ((%asc >= 210) && (%asc <= 214)) {
        %output = %output $+ $chr(32) $+ O
      }
      elseif (%asc == 222) || (%asc == 254) {
        %output = %output $+ $chr(32) $+ p
      }
      elseif (%asc == 182) {
        %output = %output $+ $chr(32) $+ P
      }
      elseif (%asc == 174) {
        %output = %output $+ $chr(32) $+ R
      }
      elseif (%asc == 167) || (%asc == 36) {
        %output = %output $+ $chr(32) $+ S
      }
      elseif (%asc == 181) || ((%asc >= 249) && (%asc <= 252)) {
        %output = %output $+ $chr(32) $+ u
      }
      elseif ((%asc >= 217) && (%asc <= 220)) {
        %output = %output $+ $chr(32) $+ U
      }
      elseif (%asc == 164) || (%asc == 215) {
        %output = %output $+ $chr(32) $+ x
      }
      elseif (%asc == 253) || (%asc == 255) {
        %output = %output $+ $chr(32) $+ y
      }
      elseif (%asc == 165) || (%asc == 221) {
        %output = %output $+ $chr(32) $+ Y
      }
      else {
        %output = %output $+ $chr(32) $+ $chr(%asc)
      }

    }
    else {
      if (%asc == 170) || (%asc >= 224 && %asc <= 229) {
        %output = %output $+ a
      }
      elseif (%asc >= 192 && %asc <= 197) {
        %output = %output $+ A
      }
      elseif (%asc == 230) {
        %output = %output $+ ae
      }
      elseif (%asc == 198) {
        %output = %output $+ AE
      }
      elseif (%asc == 223) {
        %output = %output $+ B
      }
      elseif (%asc == 162) || (%asc == 169) || (%asc == 231) {
        %output = %output $+ c
      }
      elseif (%asc == 199) {
        %output = %output $+ C
      }
      elseif (%asc == 240) {
        %output = %output $+ d
      }
      elseif (%asc == 208) {
        %output = %output $+ D
      }
      elseif (%asc >= 232) && (%asc <= 235) {
        %output = %output $+ e
      }
      elseif (%asc >= 200) && (%asc <= 203) {
        %output = %output $+ E
      }
      elseif (%asc >= 236) && (%asc <= 239) {
        %output = %output $+ i
      }
      elseif (%asc >= 204) && (%asc <= 207) {
        %output = %output $+ I
      }
      elseif (%asc == 163) {
        %output = %output $+ L
      }
      elseif (%asc == 241) {
        %output = %output $+ n
      }
      elseif (%asc == 209) {
        %output = %output $+ N
      }
      elseif (%asc == 176) || (%asc == 186) || (%asc = 248) || ((%asc >= 242) && (%asc <= 246)) {
        %output = %output $+ o
      }
      elseif (%asc == 216) || ((%asc >= 210) && (%asc <= 214)) {
        %output = %output $+ O
      }
      elseif (%asc == 222) || (%asc == 254) {
        %output = %output $+ p
      }
      elseif (%asc == 182) {
        %output = %output $+ P
      }
      elseif (%asc == 174) {
        %output = %output $+ R
      }
      elseif (%asc == 167) || (%asc == 36) {
        %output = %output $+ S
      }
      elseif (%asc == 181) || ((%asc >= 249) && (%asc <= 252)) {
        %output = %output $+ u
      }
      elseif ((%asc >= 217) && (%asc <= 220)) {
        %output = %output $+ U
      }
      elseif (%asc == 164) || (%asc == 215) {
        %output = %output $+ x
      }
      elseif (%asc == 253) || (%asc == 255) {
        %output = %output $+ y
      }
      elseif (%asc == 165) || (%asc == 221) {
        %output = %output $+ Y
      }
      else {
        %output = %output $+ $chr(%asc)
      }
    }
    if ($asc == 32) {
      %flag = on
    }
    else {
      unset %flag
    }
    inc %position
  }
  return %output
}

alias archeck {
  var %text = $strip($latinize($1-))
  var %textb = $nopunct($1-)
  var %numtok = 1
  var %isar = $false
  while (%numtok <= $numtok(%text,32)) {
    if (%numtok == $numtok(%text,32)) {
      if ($gettok(%text,%numtok,32) == ar) || ($gettok(%text,%numtok,32) == ar?) {
        %isar = $true
      }
    }
    else {
      if ($gettok(%text,%numtok,32) == ar) && ($mid($gettok(%text,$calc(%numtok + 1),32),1,1) != e) {
        %isar = $true
      }
      if ($gettok(%text,%numtok,32) == a) && ($gettok(%text,$calc(%numtok + 1),32) == r) {
        %isar = $true
      }
    }
    inc %numtok
  }
  set %numtok 1
  while (%numtok <= $numtok(%textb,32)) {
    if (%numtok == $numtok(%textb,32)) {
      if ($gettok(%textb,%numtok,32) == ar) {
        %isar = $true
      }
    }
    else {
      if ($gettok(%textb,%numtok,32) == ar) && ($mid($gettok(%textb,$calc(%numtok + 1),32),1,1) != e) {
        %isar = $true
      }
      if ($gettok(%textb,%numtok,32) == a) && ($gettok(%textb,$calc(%numtok + 1),32) == r) {
        %isar = $true
      }
    }
    inc %numtok
  }
  return %isar
}

on *:text:*:#spp,#spp-wifi: {
  if ( $nick !ishop # ) && ( $nick !isop # ) {
    var %leet = $replace($latinize($nopunct($1-)),3,e,4,a,5,s,0,o)
    if ($archeck($1-) == $true) {
      kb5 $nick No AR discussion
    }
    if  ( (action isin %leet) || (actoin isin %leet) || (actino isin %leet) || (atcion isin %leet) ) && ( (reaply isin %leet) || (replay isin %leet) || (reply isin %leet) )  {
      kb5 $nick No Action Replay Discussion
    }
    if ($istok($1-,r4,32) == $true) {
      kb5 $nick No R4 discussion
    }
    if (pokesav isin %leet) || (poeksav isin %leet) || (poek sav isin %leet) || (poke sav isin %leet) || (poksav isin %leet) {
      kb5 $nick No Pokésav Discussion
    } 
  }
}