IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası
  odeaweb

>
+
Etiketlenen Kullanıcılar

15Beğeni(ler)
  • 7 Post By No_FeaR
  • 1 Post By idyllic
  • 1 Post By Entrance
  • 1 Post By No_FeaR
  • 1 Post By SNOOPY
  • 1 Post By Dedecan61
  • 1 Post By NeverLove
  • 1 Post By MoHaC
  • 1 Post By Che

 
 
LinkBack Seçenekler Stil
Prev önceki Mesaj   sonraki Mesaj Next
Alt 20 Kasım 2025, 22:21   #1
Çevrimdışı
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Plaka Tahmin Oyun TCL




Telegram için, yapmış olduğum botu, TCL çevirip buraya da vermek istedim..
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.

Umarım kullanan olur. Türkçe karakter sorunu mIRC üzerinde yok.
Ancak sunucum olmadığı için, mIRC üzerinden denedim. mIRC üzerinde bir sorun yok..
Web'i dediğim gibi deneyemedim..
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Umarım beğenirsiniz..
Uzun aradan sonra bir TCL tasarladım umarım beğenirsiniz..
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.



Kod:   Kodu kopyalamak için üzerine çift tıklayın!
namespace eval PlakaOyun { variable kanal "#Plaka" variable puan_degeri 10 variable bekleme_suresi 5 variable zaman_asimi 30 variable admin_nick "No_FeaR" variable puan_dosyasi "scripts/plaka.puan" variable oyun_durumu 0 variable aktif_plaka "" variable aktif_sehir "" variable timer_id "" variable cevap_bekleniyor 0 # TEKRARSIZ SORU ICIN DEGISKENLER variable son_sorulanlar {} variable hatirlama_limiti 10 # ŞEHİR LİSTESİ variable sehirler { "01" "Adana" "02" "Adıyaman" "03" "Afyon" "04" "Ağrı" "05" "Amasya" "06" "Ankara" "07" "Antalya" "08" "Artvin" "09" "Aydın" "10" "Balıkesir" "11" "Bilecik" "12" "Bingöl" "13" "Bitlis" "14" "Bolu" "15" "Burdur" "16" "Bursa" "17" "Çanakkale" "18" "Çankırı" "19" "Çorum" "20" "Denizli" "21" "Diyarbakır" "22" "Edirne" "23" "Elazığ" "24" "Erzincan" "25" "Erzurum" "26" "Eskişehir" "27" "Gaziantep" "28" "Giresun" "29" "Gümüşhane" "30" "Hakkari" "31" "Hatay" "32" "Isparta" "33" "Mersin" "34" "İstanbul" "35" "İzmir" "36" "Kars" "37" "Kastamonu" "38" "Kayseri" "39" "Kırklareli" "40" "Kırşehir" "41" "Kocaeli" "42" "Konya" "43" "Kütahya" "44" "Malatya" "45" "Manisa" "46" "Maraş" "47" "Mardin" "48" "Muğla" "49" "Muş" "50" "Nevşehir" "51" "Niğde" "52" "Ordu" "53" "Rize" "54" "Sakarya" "55" "Samsun" "56" "Siirt" "57" "Sinop" "58" "Sivas" "59" "Tekirdağ" "60" "Tokat" "61" "Trabzon" "62" "Tunceli" "63" "Şanlıurfa" "64" "Uşak" "65" "Van" "66" "Yozgat" "67" "Zonguldak" "68" "Aksaray" "69" "Bayburt" "70" "Karaman" "71" "Kırıkkale" "72" "Batman" "73" "Şırnak" "74" "Bartın" "75" "Ardahan" "76" "Iğdır" "77" "Yalova" "78" "Karabük" "79" "Kilis" "80" "Osmaniye" "81" "Düzce" } # KOMUTLAR bind pub - !basla PlakaOyun::baslat bind pub - !dur PlakaOyun::durdur bind pub - !puan PlakaOyun::puan_goster bind pub - !top10 PlakaOyun::top10_goster bind pubm - * PlakaOyun::cevap_kontrol # GIRIS UYARISI bind join - * PlakaOyun::karsilama # HEX KODLU GARANTI TEMIZLEME # Bu fonksiyon dosya formatindan ve kullanici encodinginden bagimsiz calisir. proc temizle {text} { # 1. Adim: Once renk kodlarini ve kalin yazilari temizle (Ctrl+K vb.) regsub -all {\003[0-9]{0,2}(,[0-9]{0,2})?|\017|\037|\002|\026|\003} $text "" text # 2. Adim: UTF-8 Karakterleri Byte Kodlariyla Yakala ve ASCII yap # (Kullanici sunucuya UTF-8 gonderiyorsa burasi yakalar) set utf8_map[list \ \xc4\xb1 i \ \xc4\xb0 i \ \xc3\xbc u \ \xc3\x9c u \ \xc5\x9f s \ \xc5\x9e s \ \xc3\xb6 o \ \xc3\x96 o \ \xc3\xa7 c \ \xc3\x87 c \ \xc4\x9f g \ \xc4\x9e g \ ] set text [string map $utf8_map $text] # 3. Adim: ANSI (ISO-8859-9) Karakterleri Byte Kodlariyla Yakala ve ASCII yap # (Script ANSI kayitliysa veya kullanici ANSI ise burasi yakalar) set ansi_map[list \ \xfd i \ \xdd i \ \xfc u \ \xdc u \ \xfe s \ \xde s \ \xf6 o \ \xd6 o \ \xe7 c \ \xc7 c \ \xf0 g \ \xd0 g \ ] set text [string map $ansi_map $text] # 4. Adim: Standart harfleri kucult ve kalanlari temizle set text [string tolower $text] # Ekstra guvenlik icin I ve i donusumu set text [string map { "ı" "i" "İ" "i" } $text] return [string trim $text] } proc karsilama {nick host hand chan} { variable kanal variable admin_nick if {$chan != $kanal} { return } if {$nick == $::botnick} { return } puthelp "NOTICE $nick :Bu Bot ve TCL No_FeaR Tarafından tasarlanmıştır." } proc baslat {nick host hand chan arg} { variable oyun_durumu variable kanal variable admin_nick variable son_sorulanlar if {$chan != $kanal} { return } if {$nick != $admin_nick && ![isop $nick $chan]} { return } if {$oyun_durumu == 1} { putserv "PRIVMSG $chan :Oyun zaten aktif."; return } set oyun_durumu 1 set son_sorulanlar {} putserv "PRIVMSG $chan :\002PLAKA OYUNU BASLADI!\002 (Cevaplarda Turkce karakter kullanabilirsiniz.)" soru_sor } proc durdur {nick host hand chan arg} { variable oyun_durumu variable kanal variable admin_nick if {$chan != $kanal} { return } if {$nick != $admin_nick && ![isop $nick $chan]} { return } set oyun_durumu 0 foreach t [utimers] { if {[string match "*PlakaOyun::*" [lindex $t 1]]} { killutimer [lindex $t 2] } } putserv "PRIVMSG $chan :\002Oyun bitti.\002" } proc soru_sor {} { variable sehirler variable aktif_plaka variable aktif_sehir variable kanal variable cevap_bekleniyor variable zaman_asimi variable timer_id variable oyun_durumu variable son_sorulanlar variable hatirlama_limiti if {$oyun_durumu == 0} { return } set toplam [llength $sehirler] while {1} { set rand_index [expr {int(rand() * ($toplam / 2)) * 2}] set secilen_plaka [lindex $sehirler $rand_index] if {[lsearch -exact $son_sorulanlar $secilen_plaka] == -1} { set aktif_plaka $secilen_plaka set aktif_sehir [lindex $sehirler [expr $rand_index + 1]] lappend son_sorulanlar $aktif_plaka if {[llength $son_sorulanlar] > $hatirlama_limiti} { set son_sorulanlar [lreplace $son_sorulanlar 0 0] } break } } set cevap_bekleniyor 1 putserv "PRIVMSG $kanal :\002SORU:\002 \00312$aktif_plaka\003 plakasi hangi ilimize aittir?" set timer_id [utimer $zaman_asimi PlakaOyun::zaman_doldu] } proc cevap_kontrol {nick host hand chan text} { variable kanal variable aktif_sehir variable cevap_bekleniyor variable timer_id variable bekleme_suresi variable puan_degeri if {$chan != $kanal || $cevap_bekleniyor == 0} { return } # Gelen cevabi ve dogru cevabi HEX filtresinden gecirip esitle set temiz_cevap [temizle $text] set temiz_hedef [temizle $aktif_sehir] # DEBUG (Sorun olursa bu satirin basindaki # isaretini kaldirip .log dosyasina bakabilirsin) # putlog "DEBUG: Gelen($temiz_cevap) == Hedef($temiz_hedef)" if {[string match *$temiz_hedef* $temiz_cevap] && [string length $temiz_hedef] == [string length $temiz_cevap]} { set cevap_bekleniyor 0 foreach t [utimers] { if {[string match "*PlakaOyun::*" [lindex $t 1]]} { killutimer [lindex $t 2] } } puan_ekle $nick $puan_degeri putserv "PRIVMSG $kanal :\00303TEBRIKLER $nick!\003 Dogru cevap: \002$aktif_sehir\002 ($puan_degeri Puan)" utimer $bekleme_suresi PlakaOyun::soru_sor } } proc zaman_doldu {} { variable kanal variable aktif_sehir variable cevap_bekleniyor variable bekleme_suresi set cevap_bekleniyor 0 putserv "PRIVMSG $kanal :\002SURE DOLDU!\002 Cevap: \004$aktif_sehir\004 idi." utimer $bekleme_suresi PlakaOyun::soru_sor } proc puan_ekle {nick puan} { variable puan_dosyasi array set skorlar {} if {[file exists $puan_dosyasi]} { set f [open $puan_dosyasi r] array set skorlar [read $f] close $f } if {[info exists skorlar($nick)]} { incr skorlar($nick) $puan } else { set skorlar($nick) $puan } set f [open $puan_dosyasi w] puts $f [array get skorlar] close $f } proc puan_goster {nick host hand chan arg} { variable puan_dosyasi array set skorlar {} if {[file exists $puan_dosyasi]} { set f [open $puan_dosyasi r] array set skorlar [read $f] close $f } if {[info exists skorlar($nick)]} { putserv "PRIVMSG $chan :$nick, puanin: \002$skorlar($nick)\002" } else { putserv "PRIVMSG $chan :$nick, puanin yok." } } proc top10_goster {nick host hand chan arg} { variable puan_dosyasi if {![file exists $puan_dosyasi]} { putserv "PRIVMSG $chan :Liste bos." return } set f [open $puan_dosyasi r] array set skorlar [read $f] close $f set liste {} foreach {oyuncu p} [array get skorlar] { lappend liste[list $oyuncu $p] } set sirali [lsort -integer -decreasing -index 1 $liste] putserv "PRIVMSG $chan :\002--- TOP 10 ---\002" set sayac 1 foreach item $sirali { if {$sayac > 10} break putserv "PRIVMSG $chan :$sayac. [lindex $item 0] - [lindex $item 1]" incr sayac } } } putlog "Plaka Tahmin Oyun Bot TCL No_FeaR Yüklendi.."

Eggdrop1.6.18 sürümü içindir..
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Ekran Görüntüsü ;



Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Konu SNOOPY tarafından (21 Kasım 2025 Saat 09:54 ) değiştirilmiştir. Sebep: Resim düzeltildi
 
Alıntı ile Cevapla

 

Etiketler
bot, eggdrop, mirci, oyunbotu, plaka, plakatahmin, plakatahminoyunbot, tcl


Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir)
 

Yetkileriniz
Konu Acma Yetkiniz Yok
Cevap Yazma Yetkiniz Yok
Eklenti Yükleme Yetkiniz Yok
Mesajınızı Değiştirme Yetkiniz Yok

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodu Kapalı
Trackbacks are Kapalı
Pingbacks are Açık
Refbacks are Açık


Benzer Konular
Konu Konuyu Başlatan Forum Cevaplar Son Mesaj
APP Plaka Ve Sahte Plaka Kullananlar Yandı! Winston Otomobil Haberleri 5 23 Ocak 2024 09:05
İl Trafik Kodları, İl İl Trafik Kodu, Plaka Numaraları, İl Plaka Kodları Numaraları PauL Otomobil Haberleri 0 26 Kasım 2011 09:56
tahmin.tcl yeni oyun botu uMut TCL Scriptler 15 10 Mayıs 2009 19:43
C# Sayı tahmin oyun programı Cheki C# 0 04 Temmuz 2006 10:19

×