Advertisement
Wikked

A.I.

Nov 4th, 2015
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
mIRC 3.16 KB | None | 0 0
  1. on *:text:*:#:{
  2.   ;and
  3.   if ($findtok($strip($1-),and,1,32)) {
  4.     define-and $v1 $strip($1-)
  5.   }
  6.   ;is are
  7.   if ($findtok($strip($1-),were,1,32)) || ($findtok($strip($1-),was,1,32)) || ($findtok($strip($1-),is,1,32)) || ($findtok($strip($1-),are,1,32)) {
  8.     define-is-are $v1 $strip($1-)
  9.   }
  10.   ;question
  11.   if ($right($strip($1-),1) == $chr(63)) {
  12.     var %message $remove($strip($1-),$chr(63))
  13.     if ($findtok(%message,what,1,32)) || ($findtok(%message,who,1,32)) || ($findtok(%message,how,1,32)) || ($findtok(%message,where,1,32)) || ($findtok(%message,why,1,32)) || ($findtok(%message,when,1,32)) {
  14.       find-define $v1 $chan $nick $strip($1-)
  15.     }
  16.   }
  17.   ;forget
  18.   if ($findtok($strip($1-),forget,1,32)) {
  19.     forget-define $v1 $chan $nick $strip($1-)
  20.   }
  21.  
  22. }
  23.  
  24. alias define-and {
  25.   var %token $1
  26.   var %message $2-
  27.   var %re /\b $+ $me $+ \b/i
  28.   if ($gettok(%message,$calc(%token - 1),32) !isnum) { store.d $gettok(%message,$calc(%token - 1),32) $regsubex($gettok(%message,$calc(%token + 2) $+ -,32),%re,) }
  29.   if ($gettok(%message,$calc(%token + 1),32) !isnum) { store.d $gettok(%message,$calc(%token + 1),32) $regsubex($gettok(%message,$calc(%token + 2) $+ -,32),%re,) }
  30. }
  31.  
  32. alias define-is-are {
  33.   ;was were is are
  34.   var %token $1
  35.   var %message $2-
  36.   var %re /\b $+ $me $+ \b/i
  37.   var %token $calc(%token - 1)
  38.   if !%token { var %token $calc(%token + 1) }
  39.   if ($gettok(%message,%token,32) !isnum) { store.d $gettok(%message,%token,32) $regsubex($gettok(%message,$calc(%token + 1) $+ -,32),%re,) }
  40. }
  41.  
  42. alias find-define {
  43.   var %token $1
  44.   var %chan $2
  45.   var %nick $3
  46.   var %message $4-
  47.   var %tt $calc(%token + 2)
  48.   if $gettok(%message,%tt,32) { var %word = $remove($gettok(%message,%tt,32),$chr(63)) }
  49.   if !%word { var %word = $remove($gettok(%message,$calc(%token + 1),32),$chr(63)) }
  50.   if !%word { var %word = $remove($gettok(%message,$calc(%token - 1),32),$chr(63)) }
  51.   if $istok(a the,%word,32) {
  52.     var %a = %word | var %ttt $calc(%token + 3)
  53.     var %word = $remove($gettok(%message,%ttt,32),$chr(63))
  54.   }
  55.   if $hget(definitions,%word) { .msg %chan %nick $+ , $iif(%a,%a) %word $hget(definitions,%word) }
  56.   else { .msg %chan I do not know %nick $+ . }
  57. }
  58.  
  59. alias forget-define {
  60.   var %token $1
  61.   var %chan $2
  62.   var %nick $3
  63.   var %message $4-
  64.   if $hget(definitions,$gettok(%message,$calc(%token + 1),32)) {
  65.     remove.d $gettok(%message,$calc(%token + 1),32)
  66.         .msg %chan I have forgotten $gettok(%message,$calc(%token + 1),32) %nick $+ .
  67.   }
  68.   elseif $hget(definitions,$gettok(%message,$calc(%token + 2),32)) {
  69.     remove.d $gettok(%message,$calc(%token + 2),32)
  70.         .msg %chan I have forgotten $gettok(%message,$calc(%token + 2),32) %nick $+ .
  71.   }
  72. }
  73.  
  74.  
  75. on *:start:{ hashdscript }
  76.  
  77. alias ddat return $+(",$scriptdirCorebot_def.dat,")
  78.  
  79. alias -l store.d {
  80.   if (!$2) { return }
  81.   hadd -ms definitions $1 $2-
  82.   hsave -i definitions $ddat definitions
  83. }
  84.  
  85. alias -l remove.d {
  86.   ; item
  87.   hdel -s definitions $1
  88.   if $hget($1,0).item { hsave -i definitions $ddat definitions }
  89.  
  90. }
  91.  
  92. alias hashdscript {
  93.   filter -k $ddat hashdefs *
  94. }
  95.  
  96. Alias -l hashdefs { hadd -m definitions $gettok($1-,1,61) $gettok($1-,2-,61) }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement