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

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   mIRC Scripting Hazır Kodlar (https://www.ircforumlari.net/mirc-scripting-hazir-kodlar/)
-   -   Bul karayı al parayı oyunu (https://www.ircforumlari.net/mirc-scripting-hazir-kodlar/1063344-bul-karayi-al-parayi-oyunu.html)

Bozkurt- 21 Haziran 2025 23:08

Bul karayı al parayı oyunu
 
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]
Kod:

on *:TEXT:!basla:#: {
  if (%oyun.aktif) {
    msg $chan 0,4Zaten aktif bir oyun var! !sec rakam yaparak seçim yapın.!
    halt
  }
  set %oyun.aktif 1
  set %dogru.kart $rand(1,3)
  msg $chan 0,4 ?? Bul Karayı Al Parayı başladı! Korkuyorsan !dur komutunu uygulayabilirsin.
  msg $chan 8,1 [?] [?] [?] - 3 karttan birini seç! Maça Ası (?A) hangisinde?
  msg $chan 8,1 Seçmek için: !sec 1 / !sec 2 / !sec 3
}
on *:TEXT:!sec *:#: {
  if (!%oyun.aktif) {
    msg $chan 0,4Şu anda aktif bir oyun yok. !basla komutu ile başlatabilirsiniz.
    halt
  }

  var %secim = $2
  if (!$istok(1 2 3,%secim,32)) {
    msg $chan 0,4 $nick , Lütfen sadece 1, 2 veya 3 girin! (örnek: !sec 2)
    halt
  }
  var %kullanici = $nick
  var %dogru = %dogru.kart
  var %puan = $readini(puanlar.ini, Puanlar, %kullanici)
  if (%puan == $null) { set %puan 0 }

  if (%secim == %dogru) {
    var %yeni = $calc(%puan + 1)
    writeini -n puanlar.ini Puanlar %kullanici %yeni
    var %rozet = $rozet(%yeni)
    msg $chan 0,3?? Tebrikler %kullanici ! Doğru kart: Maça Ası (?A)! (+1 puan) 6 [ %rozet ]
  }
  else {
    var %yeni = $calc(%puan - 1)
    writeini -n puanlar.ini Puanlar %kullanici %yeni
    msg $chan 0,4? Üzgünüm %kullanici , yanlış kart. Maça Ası kart $+ %dogru $+ 'daydı. (-1 puan)
  }

  var %goster, %i = 1
  while (%i <= 3) {
    if (%i == %dogru) { %goster = %goster [?A] }
    else { %goster = %goster [??] }
    inc %i
  }
  msg $chan 0,6Kartlar: %goster
  msg $chan 0,6 %kullanici , Güncel Puanın: %yeni

  unset %oyun.aktif
  unset %dogru.kart
}
on *:TEXT:!dur:#: {
  if (%oyun.aktif) {
    msg $chan 4,1Oyun iptal edildi. Maça Ası kart $+ %dogru.kart $+ 'daydı.
    unset %oyun.aktif
    unset %dogru.kart
  }
  else {
    msg $chan 0,4Aktif bir oyun yok!
  }
}
on *:TEXT:!puan:#: {
  var %p = $readini(puanlar.ini, Puanlar, $nick)
  if (%p == $null) { set %p 0 }
  var %rozet = $rozet(%p)
  msg $chan 8,1 $nick ? Puan: %p
}
on *:TEXT:!puanlar:#: {
  msg $chan 8,1?? Puan Tablosu:
  var %i = 1
  while ($ini(puanlar.ini, Puanlar, %i) != $null) {
    var %kullanici = $v1
    var %puan = $readini(puanlar.ini, Puanlar, %kullanici)
    var %rozet = $rozet(%puan)
    msg $chan 8,1 ? %kullanici : %puan puan
    inc %i
  }
}
alias rozet {
  if ($1 >= 10) return ??*** Usta Kartçı
  elseif ($1 >= 5) return ??** Deneyimli
  else return ??* Yeni Oyuncu
}

Bul karayı al parayı oyununun mirce uyarlanmış hali.
!basla Oyunu başlatır
!dur oyunu durdurur
!sec rakam (1-2-3) kartlar arasında seçim yapmanızı sağlar.
!puan kullanıcının puanı
!puanlar tüm kullanıcıların puanlarını gösterir.

idyllic 21 Haziran 2025 23:52

Cevap: Bul karayı al parayı oyunu
 
emeğinize sağlık, değişik olmus

Bozkurt- 22 Haziran 2025 12:32

Cevap: Bul karayı al parayı oyunu
 
Kod:

on *:TEXT:*:#: {
  if ($regex($1, /^[!.]ba(s|ş)(I|l)a$/i)) {
    if (%oyun.aktif) {
      msg $chan 0,4Zaten aktif bir oyun var! !sec rakam yaparak seçim yapın.!
      halt
    }
    set %oyun.aktif 1
    set %dogru.kart $rand(1,3)
    msg $chan 0,4 ?? Bul Karayı Al Parayı başladı! Korkuyorsan !dur komutunu uygulayabilirsin.
    msg $chan 8,1 [?] [?] [?] - 3 karttan birini seç! Maça Ası (?A) hangisinde?
    msg $chan 8,1 Seçmek için: !sec 1 / !sec 2 / !sec 3
  }

  elseif ($regex($1, /^[!.]se(c|ç)$/i)) {
    if (!%oyun.aktif) {
      msg $chan 0,4Şu anda aktif bir oyun yok. !basla komutu ile başlatabilirsiniz.
      halt
    }

    var %secim = $2
    if (!$istok(1 2 3,%secim,32)) {
      msg $chan 0,4 $nick , Lütfen sadece 1, 2 veya 3 girin! (örnek: !sec 2)
      halt
    }

    var %kullanici = $nick
    var %dogru = %dogru.kart
    var %puan = $readini(puanlar.ini, Puanlar, %kullanici)
    if (%puan == $null) { set %puan 0 }

    if (%secim == %dogru) {
      var %yeni = $calc(%puan + 1)
      writeini -n puanlar.ini Puanlar %kullanici %yeni
      var %rozet = $rozet(%yeni)
      msg $chan 0,3?? Tebrikler %kullanici ! Doğru kart: Maça Ası (?A)! (+1 puan) 6 [ %rozet ]
    }
    else {
      var %yeni = $calc(%puan - 1)
      writeini -n puanlar.ini Puanlar %kullanici %yeni
      msg $chan 0,4? Üzgünüm %kullanici , yanlış kart. Maça Ası kart $+ %dogru $+ 'daydı. (-1 puan)
    }

    var %goster, %i = 1
    while (%i <= 3) {
      if (%i == %dogru) { %goster = %goster [?A] }
      else { %goster = %goster [??] }
      inc %i
    }
    msg $chan 0,6Kartlar: %goster
    msg $chan 0,6 %kullanici , Güncel Puanın: %yeni

    unset %oyun.aktif
    unset %dogru.kart
  }

  elseif ($regex($1, /^[!.]dur$/i)) {
    if (%oyun.aktif) {
      msg $chan 4,1Oyun iptal edildi. Maça Ası kart $+ %dogru.kart $+ 'daydı.
      unset %oyun.aktif
      unset %dogru.kart
    }
    else {
      msg $chan 0,4Aktif bir oyun yok! $nick Yeni oyun başlatmak için !başla ya da !düello nick komutu kullanabilirsin.
    }
  }

  elseif ($regex($1, /^[!.]puan$/i)) {
    var %p = $readini(puanlar.ini, Puanlar, $nick)
    if (%p == $null) { set %p 0 }
    var %rozet = $rozet(%p)
    msg $chan 8,1 $nick ? Puan: %p
  }

  elseif ($regex($1, /^[!.]puanlar$/i)) {
    msg $chan 8,1?? Puan Tablosu:
    var %i = 1
    while ($ini(puanlar.ini, Puanlar, %i) != $null) {
      var %kullanici = $v1
      var %puan = $readini(puanlar.ini, Puanlar, %kullanici)
      var %rozet = $rozet(%puan)
      msg $chan 8,1 ? %kullanici : %puan puan
      inc %i
    }
  }

  elseif ($regex($1, /^[!.]bonus$/i)) {
    var %son = $readini(puanlar.ini, BonusZaman, $nick)
    if ($calc($ctime - %son) < 86400) {
      msg $chan 4 $nick , zaten bugün bonus aldın. Yarın tekrar dene!
    }
    else {
      var %puan = $readini(puanlar.ini, Puanlar, $nick)
      if (%puan == $null) { set %puan 0 }
      var %yeni = $calc(%puan + 2)
      writeini -n puanlar.ini Puanlar $nick %yeni
      writeini -n puanlar.ini BonusZaman $nick $ctime
      msg $chan 9 $nick , günlük bonusun geldi! (+2 puan)
    }
  }

  elseif ($regex($1, /^[!.]d(ü|u)ello$/i)) {
    var %rakip = $2
    if (%rakip == $null || %rakip == $nick) {
      msg $chan 4Geçerli bir rakip belirt! (örn: !duello nick)
      halt
    }
    if (!$nick($chan, %rakip)) {
      msg $chan 4 $nick  %rakip kanalda yok. Başka bir nick seçmelisin.
      halt
    }
    var %kazanan = $iif($rand(1,2) == 1, $nick, %rakip)
    var %kaybeden = $iif(%kazanan == $nick, %rakip, $nick)

    var %p.kaz = $readini(puanlar.ini, Puanlar, %kazanan)
    var %p.kay = $readini(puanlar.ini, Puanlar, %kaybeden)
    if (%p.kaz == $null) { set %p.kaz 0 }
    if (%p.kay == $null) { set %p.kay 0 }

    if (%p.kay > 0) {
      writeini -n puanlar.ini Puanlar %kazanan $calc(%p.kaz + 1)
      writeini -n puanlar.ini Puanlar %kaybeden $calc(%p.kay - 1)
      msg $chan ?? Düello Sonucu: %kazanan kazandı! (+1 puan) / %kaybeden kaybetti (-1 puan)
    }
    else {
      msg $chan 8,1 %kaybeden 'in puanı zaten 0, puan alınamadı. Berabere sayıldı.
    }
  }
}

alias rozet {
  if ($1 >= 50) return ***** Efsane
  elseif ($1 >= 30) return **** Usta
  elseif ($1 >= 15) return *** Profesyonel
  elseif ($1 >= 5) return ** Deneyimli
  else return * Yeni Oyuncu
}

Oyunun güncel ve regexle düzenlenmiş halinde bir kaç değişiklik daha eklendi. Oyuna !düello ve !bonus komutları eklendi. Rozet sisteminde değişiklik yapıldı.
Tekrar toparlamak gerekirse.
!başla Oyunu başlatır
!dur oyunu durdurur
!seç rakam (1-2-3) istediğiniz kart numarasını seçmenizi sağlar.
!puan kullanıcı puanını gösterir.
!puanlar tüm kullanıcıların puanlarını gösterir
!bonus bir kullanıcının bonus puan almasını sağlar
!düello puanı olan bir oyuncuyla oynanmasını sağlar. Kazanan puanları alır.

Mylife 22 Haziran 2025 13:16

Cevap: Bul karayı al parayı oyunu
 
Güzel düşünülmüş, eline sağlık.

Pentagram 22 Haziran 2025 15:51

Cevap: Bul karayı al parayı oyunu
 
Eline sağlık güzel olmuş

BuseNaz 22 Haziran 2025 16:05

Cevap: Bul karayı al parayı oyunu
 
Emeğine sağlık..

Coderlab 12 Temmuz 2025 00:35

Cevap: Bul karayı al parayı oyunu
 
Öncelikle emeginize saglik. Ek bi öneri. ?? ?? ?? 3 karti hepsini arka fontlari farkli renk yaparsaniz görsel olarak daha guzel olur gibi.


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 02:38.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk