Tekil Mesaj gösterimi
Alt 16 Şubat 2024, 19:04   #7
Daemon
Daemon - ait Kullanıcı Resmi (Avatar)

Standart

Bu da gelismis hali
Alıntı:
; Oyun ayarları
var %minSayi = 1
var %maxSayi = 100
var %maxHaklar = 5
var %puanSistemi = $iif($prop == $null, 1, 0) ; 1: Etkin, 0: Devre dışı
var %oyunSuresi = $iif($prop == $null, 0, 60) ; Saniye cinsinden, 0: Devre dışı

; Yeni oyun başlatma komutu
on *:TEXT:!sayitahmin:#: {
if (%oyunDurumu == 1) {
msg $chan Bir oyun zaten devam ediyor. Lütfen önceki oyunu bitirin.
return
}
var %kanal = $chan
set %hedefSayi $rand(%minSayi,%maxSayi)
set %kalanHaklar %maxHaklar
set %tahminler
set %oyunDurumu 1
set %oyunBaslamaZamani $ctime
msg %kanal Yeni bir sayı seçildi, 1 ile 100 arasında bir sayı tahmin et! (%maxHaklar hakkınız var.) Oyunu bitirmek için !bitir komutunu kullanabilirsiniz.
if (%oyunSuresi > 0) { timerOyunSuresi %oyunSuresi 1 }
}

; Tahmin işlemi komutu
on *:TEXT:#: {
if (%oyunDurumu == 1 && $chan == %kanal) {
if ($($1) isnum) {
var %tahmin = $1
if (%tahmin >= %minSayi && %tahmin <= %maxSayi) {
dec %kalanHaklar

if (%tahmin == %hedefSayi) {
var %sure = $calc($ctime - %oyunBaslamaZamani)
var %puan = $iif(%puanSistemi == 1, $calc(100 - (%sure / 10)), 0)
msg %kanal Tebrikler $nick! Doğru tahmin ettiniz. Sayı: %hedefSayi. (%maxHaklar - %kalanHaklar). Tahminler: %tahminler. Puanınız: %puan
unset %hedefSayi
unset %kalanHaklar
unset %tahminler
unset %oyunDurumu
unset %kanal
unset %oyunBaslamaZamani
if (%oyunSuresi > 0) { timerOyunSuresi off }
return
}
elseif (%tahmin > %hedefSayi) {
msg %kanal Daha küçük bir sayı söyle. Kalan tahmin hakkı: %kalanHaklar.
}
else {
msg %kanal Daha büyük bir sayı söyle. Kalan tahmin hakkı: %kalanHaklar.
}

; Tahminleri listeleme
if (%kalanHaklar > 0) {
set %tahminler $addtok(%tahminler,%tahmin,32)
}

; Tahmin hakkı kalmadığında oyunu sonlandır
if (%kalanHaklar == 0) {
msg %kanal Üzgünüz, tahmin hakkınız bitti. Doğru sayı: %hedefSayi. Tahminler: %tahminler
unset %hedefSayi
unset %kalanHaklar
unset %tahminler
unset %oyunDurumu
unset %kanal
unset %oyunBaslamaZamani
if (%oyunSuresi > 0) { timerOyunSuresi off }
}
}
else {
msg %kanal Lütfen 1 ile 100 arasında geçerli bir sayı giriniz.
}
}
else {
msg %kanal Geçerli bir sayı giriniz.
}
}
}

; Oyun süresi kontrolü
alias -l timerOyunSuresi {
if ($timer($+(timerOyunSuresi,$2))) { timer $+(timerOyunSuresi,$2) off }
if (%oyunDurumu == 1 && $timer($+(timerOyunSuresi,$2)) == $null) { msg %kanal Oyun süresi doldu. Doğru sayı: %hedefSayi. Tahminler: %tahminler | unset %hedefSayi %kalanHaklar %tahminler %oyunDurumu %kanal %oyunBaslamaZamani }
}

________________

Hersey icin fazla sanalsiniz.