sunucu script botun varsa şöyle bir önerim olabilir sana ben böyle yazarak çözmüştüm dediğini..
Kod: Kodu kopyalamak için üzerine çift tıklayın!
on *:start: {
hmake ops 1000
hload ops ops.hash
set %channel #opers
}
on *:text:*:#:{
if # == #opers {
if ($nick ison #opers) && ($1 == .opsekle) {
if ($nick == Ebmarteu) {
if (!$2) { .msg #opers Nick Belirtmediniz. | return } }
else { .msg #opers Yetkili Degilsiniz. | return } }
if ($nick ison #opers) && ($1 == .opsekle) && ($2) && ($2 ison #opers) { .msg #opers $2 Nicki Oper/Admin Oldugu icin islem yapilamaz ! | return }
if ($nick ison #opers) && ($1 == .opsekle) && ($2) {
var $2 $nick
if $2 == $hmatch(ops,$2) { .msg #opers (*ALREADY*) 12 $2 Nicki Zaten Ekli durumda | return } }
if ($nick ison #opers) && ($1 == .opsekle) && ($2) {
var $2
if !$2 == $hmatch(ops,$2) {
hadd -sm ops $2
hsave ops ops.hash
.cs access #ops add $2 50
.msg #opers (DONE) 4 $2 Nicki Ops Listesine Eklendi.
.msg $2 Global Operator Olarak Eklendiniz.
.msg $2 Nick Sifrenizi Tekrar "/identify NickSifreniz" Olarak Girin
return } }
if ($nick ison #opers) && ($1 == .opssil) {
if ($nick == Ebmarteu) {
if (!$2) { .msg #opers Nick Belirtmediniz. | return } }
else { .msg #opers Yetkili Degilsiniz. | return }
if ($nick ison #opers) && ($1 == .opssil) && ($2) && ($2 ison #opers) { .msg #opers $2 Nicki Oper/Admin Oldugu icin islem yapilamaz ! | return }
if ($nick ison #opers) && ($1 == .opssil) && ($2) && ($2 !ison #opers) {
var $2
if $2 == $hmatch(ops,$2) {
hdel -sm ops $2
hsave ops ops.hash
.cs access #ops del $2
.msg #opers (DONE) 4 $2 Nicki Ops Listesinden Silindi.
.kill $2 Global Operator Re-Start
return }
}
}
if ($nick ison #opers) && ($1 == .opssil) && ($2) {
var $2 $nick
if !$2 == $hmatch(ops,$2) { .msg #opers (*NONE*) 12 $2 Nicki Ops Listesinde Degil | return } }
}
if ($1 == .opsliste) {
var %i 1
while %i <= $hget(ops,0).item {
msg #opers $hget(ops,%i).item
inc %i
}
}
if ($chan == #logs) {
if (*nicki*sunucuya*login*oldu.* iswm $1-) && ($nick == nickserv) {
var %nick $$1
if %nick == $hmatch(ops,%nick) {
.sajoin $$1 #ops
.os raw :chanserv chghost $$1 Operator.XX.com
.os raw :chanserv chgname $$1 Global Operator
.os raw :chanserv chgident $$1 Global
.os raw svsmode $$1 +qvW
.timerj7, $+ $2 1 3 .os raw svsjoin $$1 #Sohbet,#radyo,#dj,#istek
.timerj1, $+ $2 1 5 .os raw :chanserv mode #sohbet +o $$1
.timerj2, $+ $2 1 5 .os raw :chanserv mode #radyo +o $$1
.timerj4, $+ $2 1 5 .os raw :chanserv mode #dj +o $$1
.timerj3, $+ $2 1 5 .os raw :chanserv mode #istek +o $$1
}
}
}
}
Bunu tam olarak botuna ekledikten sonra çalışmasını istiyorsan sunucunda nicki identify edenin logunu Logs odasına yansıtman gerek ;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
<NickServ> Mechulqenc nicki sunucuya login oldu. ip adresi: 78.182.222.94
bu eklenti için ise telnet ana dizindeyken;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
pico irc*-*/mod*/ni*/mai*c
ile nickserv main.c dosyasına giriş yapın.
Kod: Kodu kopyalamak için üzerine çift tıklayın!
notice_lang(s_NickServ, u, NICK_IDENTIFY_SUCCEEDED);
bu satırı bulup hemen altına;
Kod: Kodu kopyalamak için üzerine çift tıklayın!
send_cmd(s_NickServ, "PRIVMSG #logs %s nicki sunucuya login oldu. ip adresi: \2%s\2", u->nick, u->host);
make & make install ve os restart ;
Son Olarak Bu kodları eklediğin Botunu sunucundaki #Logs odasında tutman gerekiyor
Mantık şu
Botun sunucuya login Olanın satırını görecek ve Kendi hash tablosuna bakarak tabloda nick var ise odalara raw ile joinleyip opa çıkarak peşinden hostunu verecek.
Saygılarımla..