1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
alias seenwrite {
;name |*| act |*| NetWork |*| extra
var %logged = $iif($read(seen.txt,wn,$+($1,;*)),Y,N), %logline = $readn, %name = $1, %act = $2, %ctime = $ctime, %extra = $4-, %network = $3
if %logged = N { write seen.txt $+(%name,;,%ctime,;,%act,;,%network,;,%extra) }
else { write $+(-l,%logline) seen.txt $+(%name,;,%ctime,;,%act,;,%network,;,%extra) }
}
on *:RAWMODE:#:seenwrite $nick SetMode $network # $1-
on *:QUIT:seenwrite $nick Quit $network $1-
on *:join:#:seenwrite $nick Join $network #
on *:part:#:seenwrite $nick Part $network # $1-
on *:action:*:#:seenwrite $nick Act $network # $1-
on *:kick:#: {
seenwrite $nick Kick $network # $knick $1-
seenwrite $knick Kicked $network # $nick $1-
}
on *:text:*:#: {
seenwrite $nick Text $network # $1-
if ($1 == §seen) {
filter -ffc seen.txt seen.temporary.txt $+($2,;*)
var %matches = $lines(seen.temporary.txt)
if !$2 { notice $nick vitun vatipää! se on §seen <nimi> }
if ($2 == $me) { notice $nick Olen tässä =) }
elseif !$read(seen.txt,wn,$+($2,;*)) { notice $nick Error: Nimeä $+(",$2,") ei löytynyt. }
elseif $gettok($read(seen.txt,wn,$+($2,;*)),1,59) != $2 {
if %matches < 2 { notice $nick Error: Nimeä $+(",$2,") ei löytynyt. }
else {
var %numresult = 1
while $read(seen.txt,wn,$+($2,;*),%numresult) {
if $gettok($read(seen.txt,n,%numresult),1,59) == $2 { var %found = Y | break }
else { inc %a }
}
if %found = Y { var %resultline = $readn }
else { notice $nick Error: Nimeä $+(",$2,") ei löytynyt. | return }
}
}
elseif %resultline || %matches == 1 {
tokenize 59 $iif(%resultline,$read(seen.txt,n,%resultline),$read(seen.txt,wn,$+($2,;*)))
; name ctime act network extra
if $3 == text { var %etc = puhuvan kanavalla $gettok($5-,1,32) seuraavasti: $gettok($5-,2-,32) }
elseif $3 == join { var %etc = joinaavan $5 }
elseif $3 == part { var %etc = parttaavan kanavan $gettok($5,1,32) $iif($gettok($5-,2-,32) syyllä: $gettok($5-,2-,32)) }
elseif $3 == quit { var %etc = quittivan seuraavalla syyllä: $5- }
elseif $3 == act { var %etc = tehden seuraavaa kanavalla $gettok($5,1,32) $+ : $+(*,$1) $gettok($5-,2-,32) }
elseif $3 == kick { var %etc = kickkaavan $gettok($5,2,32) kanavalta $gettok($5,1,32) syyllä: $gettok($5,3-,32) }
elseif $3 == kicked { var %etc = kickattiin kanavalta m $gettok($5,1,32) by $gettok($5,2,32) for: $gettok($5,3-,32) }
elseif $3 == setmode { var %etc = laittavan nämä modet kanavalla $gettok($5,1,32) $+ : $gettok($5,2-,32) }
notice $nick $1 nähtiin $duration($calc($ctime - $2)) sitten @ $4 %etc
}
}
}
if $exists(seen.temporary.txt) { .remove seen.temporary.txt }
|