All pastes #415464 Raw Edit

Something

public text v1 · immutable
#415464 ·published 2007-03-29 17:29 UTC
rendered paste body
alias UBW_DEFAULT  return I am the bone of my ¤n1¤.\¤n2¤ is my body, and ¤n3¤ is my blood.\I have ¤v4¤ over a thousand ¤n5¤.\Unknown to ¤n6¤.\Nor known to ¤n7¤.\Have withstood pain to ¤v8¤ many ¤n9¤.\Yet, those ¤n10¤ will never ¤v11¤ anything.\So as I pray, "Unlimited ¤n12¤ Works."
alias UBW_TOKENS   return n n n v n n n v n n v n
alias UBW_CHANS    return #machogang
alias UBW_DELAY    return 300
alias UBW_ENABLED  return 1

on *:text:!ubw*:$($UBW_CHANS): {
  if ($UBW_ENABLED == 1) {
    if (%ubw_next <= $ctime || %ubw_next == $null) {
      set %ubw_next $calc($ctime + $UBW_DELAY)
      var %i = 1
      while (%i <= 12) {
        if ($eval($+($,$calc(%i + 1)),2) == $null) {
          set $+(%,word,%i) $null
        }
        else {
          set $+(%,word,%i) $eval($+($,$calc(%i + 1)),2)
        }
        inc %i
      }

      var %text = $ubw_translate( %word1 , %word2 , %word3 , %word4 , %word5 , %word6 , %word7 , %word8 , %word9 , %word10 , %word11 , %word12 )

      %i = 1
      while (%i <= $gettok(%text,0,92)) {
        msg $chan $gettok(%text,%i,92)
        inc %i
      }

      ubw_unset
    }
  }
}

alias ubw_translate {
  var %i = 1, %word, %text = $UBW_DEFAULT

  while (%i <= 12) {
    %word = $null

    if ($eval($+($,%i),2) == $null) {
      %word = $read(ubw\ $+ $+($iif($gettok($UBW_TOKENS,%i,32) == n, nouns, verbs),.txt))
    }
    else {
      %word = $eval($+($,%i),2)
    }

    %text = $replace(%text,$+(¤,$gettok($UBW_TOKENS,%i,32),%i,¤),%word)
    inc %i
  }

  return %text
}

alias ubw_echo {
  var %i = 1
  while (%i <= 12) {
    if ($eval($+($,%i),2) == $null) {
      set $+(%,word,%i) $null
    }
    else {
      set $+(%,word,%i) $eval($+($,%i),2)
    }
    inc %i
  }

  var %text = $ubw_translate( %word1 , %word2 , %word3 , %word4 , %word5 , %word6 , %word7 , %word8 , %word9 , %word10 , %word11 , %word12 )

  %i = 1
  while (%i <= $gettok(%text,0,92)) {
    echo -a $gettok(%text,%i,92)
    inc %i
  }

  ubw_unset
}

alias ubw_unset {
  unset %word1 %word2 %word3 %word4 %word5 %word6 %word7 %word8 %word9 %word10 %word11 %word12
}