Selamun aleyküm, IRCForumlari.net kullanicilari..
XcLusive(HaLiL)'in yazdigi Kaos mIRC versionu kendimce editlemeye calistim. Takildigim 1-2 bölüm var, bunlari cözebilirmiyiz?
Soruyu bilemediginiz. Cevap: QscaR. sanirim acik bir sekilde anlattim.
Ve birde kacinci soru oldugunu ayarlasak >> 343.Soru gibi.
PHP Kod: Kodu kopyalamak için üzerine çift tıklayın!
Coded by XcLusive(HaLiL)
;###### deðiþtirilecek bölümler ######
alias -l botnick return islamisoru
alias -l kanal return %Oyunkanali
;#### deðiþtirilecek bölüm sonu #####
alias mdir return $remove($mircexe,$nopath($mircexe))
alias -l puan return 20
alias -l sorular { return $shortfn($mdir $+ sorular.txt) }
alias -l sorusira { set %sorusira $rand(1,$lines($sorular)) }
alias -l soru { return $gettok($read($sorular,%sorusira),1,42) }
alias -l cevaplar { set %cevaplar $gettok($read($sorular,%sorusira),2-,42) }
alias -l toplucevap { return $regsubex(%cevaplar,/(\*)/g,$+($chr(32),$chr(124),$chr(32))) }
alias -l 10 { msg $kanal 4Ýpucu: 08,02Cevaplanan: $calc($numtok($gettok($read($sorular,%sorusira),2-,42),42) - $numtok(%cevaplar,42)) Toplam : $numtok($gettok($read($sorular,%sorusira),2-,42),42) 12 20 1Saniye kaldý! }
alias -l 20 { msg $kanal 4Ýpucu: ******3 10 6Puan 14-3 10 6Sn.1 kaldý! }
alias -l sor {
sorusira
cevaplar
msg $kanal 0,4Soru:9,1 $soru $+ ?
msg $kanal 4Doðru Cevapa: 3 20 6Puan
.timer15 1 10 10
.timer30 1 20 20
.timer45 1 30 sorukapat
}
alias -l sorukapat {
msg $kanal 6Sorunun Cevabý: 14«1 $toplucevap 14»
.timerssoru 1 5 msg $kanal 3Hazýrlanýn sýradaki soru geliyor...
.timersor 1 8 sor
}
alias -l sorupuanlarý {
if (!$hget(toplist)) { hmake toplist }
unset %sorupuanlar
var %i = $hget(puanlar,0).data,%x
while (%i) {
%x = 0,10 $hget(puanlar,%i).item 0,6 $hget(puanlar,%i).data
var %nick = $hget(puanlar,%i).item,%puan = $hget(puanlar,%i).data
set %sorupuanlar $addtok(%sorupuanlar,%x,32)
if ($hget(toplist,%nick)) { hadd toplist %nick $calc($hget(toplist,%nick) + %puan) }
else { hadd toplist %nick %puan }
dec %i
}
.hfree -sw puanlar | hsave -a toplist $qt($+($mdir,toplist.data))
return 0,6Puanlar: $+ $iif(%sorupuanlar == $null,0 $+ $chr(44) $+ 6Yok,%sorupuanlar)
}
on *:start:{
hmake toplist
if $isfile($+($mdir,toplist.data)) { hload toplist $qt($+($mdir,toplist.data)) }
else { hsave -a toplist $qt($+($mdir,toplist.data)) }
server $sunucu
}
on *:text:*:#:{
if $chan != $kanal halt
if $1 == !tekrar msg $kanal 0,4Soru tekrarý:9,1 $soru $+ ?
if $1 == !top10 { msg $kanal $toplist }
if $1 == !puan {
if ($2) { msg $kanal 6 $+ $nick $+ 1 $qt($2) $+ 1Nickli kiþinin puaný:6 $iif($hget(toplist,$2),$hget(toplist,$2),Yok) }
else { msg $kanal 6 $+ $nick $+ 1 Sizin puanýnýz:6 $iif($hget(toplist,$nick),$hget(toplist,$nick),Yok) }
}
if $1 == !basla && $nick ison $chan && %bot != on { msg $kanal 6«1 Ýslami SoruBot, 6 $+ $qt($nick) $+ 1 tarafýndan baþlatýldý. Hazýrlanýn.. 6» | .timerbot 1 5 sor | set %bot on | halt }
elseif $1 == !gec && %bot != off { msg $kanal 6!gec1 Komutu ile bir sonraki soruya gecildi. 3Sorunun cavabi : 14«6 $toplucevap 14» | .set %bot on | .timerbot 1 2 sor | halt }
elseif $1 == !dur && %bot != off { msg $kanal 6«1 Ýslami SoruBot, 6 $+ $qt($nick) $+ 1 tarafýndan durduruldu!6 » | set %bot off | .timers off | hsave -a toplist $qt($+($mdir,toplist.data)) | halt }
if %bot == on && $findtok(%cevaplar,$1-,0,42) {
set %cevaplar $remtok(%cevaplar,$1-,$v1,42)
msg # 4Tebrikler1 $nick $+ 3 $puan 6Puan kazandýnýz!4 Dogru cevap: 3 $+ $qt($1-)
if !$hget(puanlar) { hmake puanlar }
if $hget(puanlar,$nick) { hadd puanlar $nick $calc($hget(puanlar,$nick) + $puan) }
else { hadd puanlar $nick $puan }
if !$numtok(%cevaplar,42) {
msg $kanal $sorupuanlarý
.timer15 off | .timer30 off | .timer45 off | .timerssoru off | .timersor off
.timer 1 5 msg $kanal 3Bir sonraki soru için hazýrlanýn...
.timer 1 8 sor
}
}
}
on *:exit:hsave -a toplist $qt($+($mdir,toplist.data))
on *:disconnect:set %bot off | hsave -a toplist $qt($+($mdir,toplist.data))
alias -l toplist {
hsave -a toplist $qt($+($mdir,toplist.data))
.hfree -sw toplist | hmake toplist | hload toplist $qt($+($mdir,toplist.data))
if (!$hget(top10puan)) { hmake top10puan }
var %xc = $hget(toplist,0).data
while %xc {
set %top10puan $addtok(%top10puan,$hget(toplist,%xc).data,46)
dec %xc
}
var %sira = $sorttok(%top10puan,46,nr)
var %1 = 1,%2 = 1,%3 = 1,%4 = 1,%5 = 1,%6 = 1,%7 = 1,%8 = 1,%9 = 1,%10 = 1
%1 = 0,10 $+ $fazlaise($gettok(%sira,1,46)) 0,6 $gettok(%sira,1,46)
%2 = 0,10 $+ $fazlaise($gettok(%sira,2,46)) 0,6 $gettok(%sira,2,46)
%3 = 0,10 $+ $fazlaise($gettok(%sira,3,46)) 0,6 $gettok(%sira,3,46)
%4 = 0,10 $+ $fazlaise($gettok(%sira,4,46)) 0,6 $gettok(%sira,4,46)
%5 = 0,10 $+ $fazlaise($gettok(%sira,5,46)) 0,6 $gettok(%sira,5,46)
%6 = 0,10 $+ $fazlaise($gettok(%sira,6,46)) 0,6 $gettok(%sira,6,46)
%7 = 0,10 $+ $fazlaise($gettok(%sira,7,46)) 0,6 $gettok(%sira,7,46)
%8 = 0,10 $+ $fazlaise($gettok(%sira,8,46)) 0,6 $gettok(%sira,8,46)
%9 = 0,10 $+ $fazlaise($gettok(%sira,9,46)) 0,6 $gettok(%sira,9,46)
%10 = 0,10 $+ $fazlaise($gettok(%sira,10,46)) 0,6 $gettok(%sira,10,46)
return 0,6Top10 Puan Listesi $+(0,$chr(44),4,#10,$chr(44),10,$chr(32),%1) $+(0,$chr(44),4,#20,$chr(44),10,$chr(32),%2) $+(0,$chr(44),4,#30,$chr(44),10,$chr(32),%3) $+(0,$chr(44),4,#40,$chr(44),10,$chr(32),%4) $+(0,$chr(44),4,#50,$chr(44),10,$chr(32),%5) $+(0,$chr(44),4,#60,$chr(44),10,$chr(32),%6) $+(0,$chr(44),4,#70,$chr(44),10,$chr(32),%7) $+(0,$chr(44),4,#80,$chr(44),10,$chr(32),%8) $+(0,$chr(44),4,#90,$chr(44),10,$chr(32),%9) $+(0,$chr(44),4,#100,$chr(44),10,$chr(32),%10)
}
alias -l fazlaise {
unset %y | unset %w
var %i = $hfind(toplist,$1,0,w).data
while (%i) {
%y = $hfind(toplist,$1,%i,w).data
%w = %y %w
dec %i
}
return $replace($sorttok(%w,32,a),$chr(32),$chr(44))
}
Yukarda belirttigim gibi, kendimce editlemeye calistim. Bilgisi olmadan editledim, umarim yanlis birsey yapmamisimdir. Zaten kimin yazdiginida belirttim. Yardimlarinizi bekliyorum..
.