Tekil Mesaj gösterimi
Alt 21 Haziran 2014, 11:13   #8
Çevrimdışı
MyKraL
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Cevap: Eggdrop botunuz saatli bombaya dönüşsün..




CLubber Nickli Üyeden Alıntı
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
PHP Kod:   Kodu kopyalamak için üzerine çift tıklayın!
#
# Kullanılabilecek komutlar: !bomba nick - !kes renk
# Belirttiğiniz kanalda istediğiniz bir kullanıcının eline bombayı verebilirsiniz.
#

bind  pub   -   !bomba  doTimebomb
bind  pub   
-   !kes   doCutWire

#
# Bombayı kesme süresi saniye cinsinden
# Maksimum 60 sn - Minimum 20 sn içerisinde kesmelidir.
#
set gTimebombMinimumDuration 20
set gTimebombMaximumDuration 60

#
# Kablo renkleri ve maksimum kablo sayısı
# Ekleme yapmak isterseniz lütfen boşluk bırakınız.
#
set gWireChoices "Kırmızı Turuncu Sarı Yeşil Mavi Siyah Beyaz Gri Kahverengi Pembe Bej Fuşya Krem Lila Bordo Lacivert Gümüş Turkuaz"
set gMaxWireCount 3

#
# Botun bomba özelliğinin aktif olması opsiyonu
# Bu bölümü değiştirmeyiniz.
#
set gTimebombActive 0
set gTimerId 0
set gTimebombTarget 
""

#
# Botun çalışacağı kanalı belirtiyoruz.
# Eggdrop botunuzun yalnızca bir kanalda bomba özelliğini kullanabilirsiniz.
#
set gTimebombChannel "#Sohbet"
set gCorrectWire ""
set gNumberNames "sıfır bir iki üç dört beş altı yedi sekiz dokuz on onbir oniki"

#
# Buradan sonrasında dikkatli olmanız gerekli kick sebeplerini değiştirebilirsiniz.
# Kaydırma yaptığınızda botunuz düzgün çalışmayacaktır.
#

proc note {msg} {
  
putlog "% $msg"
}

proc IRCKick {theNick theChannel theReason} {
  
note "Kicking $theNick in $theChannel (Reason: $theReason)"
  
putserv "KICK $theChannel $theNick :$theReason"
}

proc IRCPrivMSG {theTarget messageString} {
  
putserv "PRIVMSG $theTarget :$messageString"
}

proc IRCAction {theTarget messageString} {
  
putserv "PRIVMSG $theTarget :\001ACTION $messageString\001"
}

proc MakeEnglishList {theList} {
  
set theListLength [llength $theList]
  
set returnString [lindex $theList 0]
  for {
set x 1} {$x $theListLength} {incr x} {
    if { 
$x == [expr $theListLength 1] } {
      
set returnString "$returnString ve [lindex $theList $x]"
      
} else {
      
set returnString "$returnString, [lindex $theList $x]"
    
}
  }
  return 
$returnString
}

proc SelectWires {wireCount} {
  global 
gWireChoices
  set totalWireCount 
[llength $gWireChoices]
  
set selectedWires ""
  
for {set x 0} {$x $wireCount} {incr x} {
    
set currentWire [lindex $gWireChoices [expr intrand() * $totalWireCount )]]
    if { [
lsearch $selectedWires $currentWire] == -} {
      
lappend selectedWires $currentWire
      
} else {
      
set x [expr $x 1]
    }
  }
  return 
$selectedWires
}

proc DetonateTimebomb {destroyTimer kickMessage} {
  global 
gTimebombTarget gTimerId gTimebombChannel gTimebombActive
  
if { $destroyTimer } {
    
killutimer $gTimerId
  
}
  
set gTimerId 0
  set gTimebombActive 0
  IRCKick $gTimebombTarget $gTimebombChannel $kickMessage
}

proc DiffuseTimebomb {wireCut} {
  global 
gTimerId gTimebombActive gTimebombTarget gTimebombChannel
  killutimer $gTimerId
  set gTimerId 0
  set gTimebombActive 0
  IRCPrivMSG $gTimebombChannel 
"$gTimebombTarget $wireCut kabloyu kesti, bomba etkisiz hale getirildi."
}

proc StartTimeBomb {theStarter theNick theChannel} {
  global 
gTimebombActive gTimebombTarget gTimerId gTimebombChannel gNumberNames gCorrectWire
  
global gMaxWireCount gTimebombMinimumDuration gTimebombMaximumDuration
  
if { $gTimebombActive == } {
    
note "Bomba aktif olduğu için, yeni bir bomba kurulamadı!"
    
if { $theChannel != $gTimebombChannel } {
      
IRCPrivMSG $theChannel "Bomba özelliğini bir kanalda kullanabilirsiniz."
      
} else {
    }
    } else {
    
set timerDuration [expr $gTimebombMinimumDuration + [expr int(rand() * ($gTimebombMaximumDuration $gTimebombMinimumDuration))]]
    
set gTimebombTarget $theNick
    set gTimebombChannel $theChannel
    set numberOfWires 
[expr 1 int(rand() * ( $gMaxWireCount ))]
    
set listOfWires [SelectWires $numberOfWires]
    
set gCorrectWire [lindex $listOfWires [expr intrand() * $numberOfWires )]]
    
set wireListAsEnglish [MakeEnglishList $listOfWires]
    
set wireCountAsEnglish [lindex $gNumberNames $numberOfWires]
    
IRCAction $theChannel "Bomba $gTimebombTarget nickinin elinde. $gTimebombTarget nickinin bombayı etkisiz hale getirebilmek için $timerDuration saniyesi var."
    
if { $numberOfWires == } {
      
IRCPrivMSG $theChannel "Doğru kabloyu keserek, bombayı etkisiz hale getirin! Sadece $wireCountAsEnglish tane kablonuz var. Kesebileceğiniz kablo renkleri: $wireListAsEnglish."
      
} else {
      
IRCPrivMSG $theChannel "Doğru kabloyu keserek, bombayı etkisiz hale getirin! Sadece $wireCountAsEnglish tane kablonuz var. Kesebileceğiniz kablo renkleri: $wireListAsEnglish."
    
}
    
note "Saatli bomba $theStarter tarafından başlatıldı! $theNick nickinin bombayı $timerDuration saniyede etkisiz hale getirmesi gerekiyor."
    
set gTimebombActive 1
    set gTimerId 
[utimer $timerDuration "DetonateTimebomb 0 {Süre bitti malesef bomba elinizde patladı. BOOOM!}"]
  }
}

proc doCutWire {nick uhost hand chan arg} {
  global 
gTimebombActive gCorrectWire gTimebombTarget
  
if { $gTimebombActive == } {
    if { [
string tolower $nick] == [string tolower $gTimebombTarget] } {
      if { [
llength $arg] == } {
        if { [
string tolower $arg] == [string tolower $gCorrectWire] } {
          
DiffuseTimebomb $gCorrectWire
          
} else {
          
DetonateTimebomb 1 "Malesef yanlış kabloyu kestiniz. BOOOOM!"
        
}
      }
    }
  }
}

proc doTimebomb {nick uhost hand chan arg} {
  global 
botnick
  set theNick $nick
  
if { [llength $arg] == } {
    
set theNick [lindex [split $arg0]
  }
  if { [
string tolower $theNick] == [string tolower $botnick] } {
    
set theNick $nick
    IRCKick $theNick $chan 
"Beni bombalayamazsınız!"
    
return
  }
  if { [
validuser $theNick] == } {
    if { [
matchattr $theNick "+b"] == } {
      
set theNick $nick
      IRCKick $theNick $chan 
"Beni banlayamazsınız!"
      
return
    }
  }
  
StartTimeBomb $nick $theNick $chan


Belirlediğiniz kanal genelinde !bomba nick ve !kes renk komutlarını kullanarak oynayabileceğiniz güzel bir oyun.

Birçok kişinin bu botu aradığını fark ettim, sizler için türkçe'ye çevirdim.

TCL Çevirisi: [Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

emeğine saglık . !bomba nick komutunu sadece adminler kullansa yada belirledigimiz nickler nasıl olur . her usere kullanıma acık olmasın mesela
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet sohbet