Merhaba Sayın Forumdaşlar,Sunucularınızda kullanabileceğiniz güzel bir çekiliş skripti de ben bırakmak istiyorum. Herhangi ekstra bir eklenti kurmanıza gerek yok. Skript eklentisi yeterli olacaktır. options: cekilis-prefix: &8[&dÇEKİLİŞ&8]&r # ========================== # ÇEKİLİŞ SİSTEMİ V2 # ========================== command /cekilis <text> <number> <text>: permission: cekilis.kur permission message: &cBu komutu kullanma iznin yok! usage: &cKullanım: &e/cekilis <kelime> <süre(saniye)> <item / command_...> trigger: if {cekilis.running} is true: send "{@cekilis-prefix} &cZaten aktif bir çekiliş var!" to sender stop # Argümanları değişkenlere al set {cekilis.kelime} to argument 1 set {cekilis.sure} to argument 2 set {_reward} to argument 3 delete {cekilis.oyuncular::*} set {cekilis.running} to true set {cekilis.kalan} to {cekilis.sure} set {cekilis.host} to name of sender # Ödül verilerini sıfırla delete {cekilis.odul.tur} delete {cekilis.odul} delete {cekilis.odul.komut} # --- ÖDÜL TÜRÜ: item / command_... --- if {_reward} is "item": set {cekilis.odul.tur} to "item" if sender is a player: set {_item} to player's tool if {_item} is not air: set {cekilis.odul} to {_item} else: send "{@cekilis-prefix} &cElinde item yok, ödül atanamadı!" to sender set {cekilis.running} to false stop else: send "{@cekilis-prefix} &cKonsoldan 'item' ödülü kullanılamaz!" to sender set {cekilis.running} to false stop else if {_reward} starts with "command_": set {cekilis.odul.tur} to "command" set {_cmd} to {_reward} # baştaki 'command_' kısmını sil replace all "command_" with "" in {_cmd} # alt tireleri boşluğa çevir replace all "_" with " " in {_cmd} set {cekilis.odul.komut} to {_cmd} else: if {_reward} is "command": send "{@cekilis-prefix} &cKomutu da yazman gerekiyor! Örnek:" send "&e/cekilis katil 60 command_eco_give_%%player%%_1000" else: send "{@cekilis-prefix} &cGeçersiz ödül tipi! 'item' veya 'command_komut' kullan." set {cekilis.running} to false stop # --- Bilgi mesajları --- broadcast "&8&m------------------------------" broadcast "{@cekilis-prefix} &aYeni bir çekiliş başladı!" broadcast "{@cekilis-prefix} &7Başlatan: &f%{cekilis.host}%" broadcast "{@cekilis-prefix} &7Katılmak için &d%{cekilis.kelime}% &7yaz!" broadcast "{@cekilis-prefix} &7Süre: &b%{cekilis.sure}% &7saniye." if {cekilis.odul.tur} is "item": if {cekilis.odul} is set: broadcast "{@cekilis-prefix} &7Ödül: &a(Çekilişi başlatanın elindeki eşya)" if {cekilis.odul.tur} is "command": if {cekilis.odul.komut} is set: broadcast "{@cekilis-prefix} &7Ödül tipi: &aKomut &7(otomatik çalışacak)" broadcast "{@cekilis-prefix} &7Komut: &f%{cekilis.odul.komut}%" broadcast "{@cekilis-prefix} &8(Not: &7%%player%% &8→ kazanan oyuncu&7)" broadcast "&8&m------------------------------" send title "&d&lÇEKİLİŞ BAŞLADI" with subtitle "&fKatılmak için &d%{cekilis.kelime}% &f yaz!" to all players # --- Geri sayım --- while {cekilis.kalan} > 0: # Çekiliş iptal edildiyse döngüden çık if {cekilis.running} is not true: stop wait 1 second remove 1 from {cekilis.kalan} if {cekilis.kalan} is 30 or 20 or 10 or 5 or 3 or 2 or 1: broadcast "{@cekilis-prefix} &7Kalan süre: &b%{cekilis.kalan}% &7saniye..." # --- Süre bitti --- if {cekilis.running} is true: set {cekilis.running} to false if size of {cekilis.oyuncular::*} > 0: set {_kazanan} to random element of {cekilis.oyuncular::*} # Son çekiliş verilerini kaydet set {cekilis.son.kazanan} to {_kazanan} set {cekilis.son.kelime} to {cekilis.kelime} set {cekilis.son.katilimci} to size of {cekilis.oyuncular::*} set {cekilis.son.host} to {cekilis.host} broadcast "&8&m------------------------------" broadcast "{@cekilis-prefix} &aSüre doldu!" broadcast "{@cekilis-prefix} &7Katılımcı sayısı: &b%size of {cekilis.oyuncular::*}%" broadcast "{@cekilis-prefix} &7Kazanan: &a%{_kazanan}%" # ÖDÜLÜ VER if {cekilis.odul.tur} is "item": if {cekilis.odul} is set: broadcast "{@cekilis-prefix} &7Ödül &a%{_kazanan}% &7isimli oyuncuya verildi! (&aElindeki item&7)" give {cekilis.odul} to {_kazanan} if {cekilis.odul.tur} is "command": if {cekilis.odul.komut} is set: set {_cmd2} to {cekilis.odul.komut} set {_pname} to name of {_kazanan} # BURADA %% KULLANIYORUZ → gerçek stringte %player% arar replace all "%%player%%" with "%{_pname}%" in {_cmd2} execute console command "%{_cmd2}%" broadcast "{@cekilis-prefix} &7Komut ödülü kazanana uygulandı!" broadcast "&8&m------------------------------" send title "&d&lÇEKİLİŞ BİTTİ" with subtitle "&fKazanan: &a%{_kazanan}%" to all players else: broadcast "&8&m------------------------------" broadcast "{@cekilis-prefix} &cSüre doldu ama kimse katılmadı." broadcast "&8&m------------------------------" send title "&c&lÇEKİLİŞ BİTTİ" with subtitle "&7Katılan olmadı." to all players # Oyuncuların kelime yazarak çekilişe katılması on chat: if {cekilis.running} is true: if message is {cekilis.kelime}: cancel event # istersen kaldır, yazdıkları chat'te gözüksün if player is in {cekilis.oyuncular::*}: send "{@cekilis-prefix} &eZaten çekilişe katıldın!" to player stop add player to {cekilis.oyuncular::*} send "{@cekilis-prefix} &aBaşarıyla çekilişe katıldın!" to player # Oyuncu oyundan çıkarsa çekilişten çıkar on quit: if {cekilis.running} is true: if player is in {cekilis.oyuncular::*}: remove player from {cekilis.oyuncular::*} broadcast "{@cekilis-prefix} &e%player% &7çekilişten ayrıldı (çıkış yaptı)." # ========================== # EK KOMUTLAR # ========================== # Aktif çekilişi iptal et command /cekilisiptal: permission: cekilis.kur permission message: &cBu komutu kullanma iznin yok! trigger: if {cekilis.running} is not true: send "{@cekilis-prefix} &cAktif bir çekiliş yok." to sender stop set {cekilis.running} to false delete {cekilis.oyuncular::*} broadcast "&8&m------------------------------" broadcast "{@cekilis-prefix} &cÇekiliş iptal edildi!" broadcast "{@cekilis-prefix} &7Başlatan: &f%{cekilis.host}%" broadcast "&8&m------------------------------" send title "&c&lÇEKİLİŞ İPTAL" with subtitle "&7Çekiliş sonlandırıldı." to all players # Aktif çekilişteki katılımcıları listele command /cekilisliste: permission: cekilis.kur permission message: &cBu komutu kullanma iznin yok! trigger: if {cekilis.running} is not true: send "{@cekilis-prefix} &cAktif bir çekiliş yok." to sender stop if size of {cekilis.oyuncular::*} is 0: send "{@cekilis-prefix} &eHenüz hiç katılımcı yok." to sender stop set {_mesaj} to "" loop {cekilis.oyuncular::*}: if {_mesaj} is "": set {_mesaj} to "%loop-value%" else: set {_mesaj} to "%{_mesaj}%, %loop-value%" send "&8&m------------------------------" to sender send "{@cekilis-prefix} &aKatılımcılar (&f%size of {cekilis.oyuncular::*}%&a)&7:" to sender send "&f%{_mesaj}%" to sender send "&8&m------------------------------" to sender # Son çekilişin özetini göster command /cekilissonuc: permission: cekilis.kur permission message: &cBu komutu kullanma iznin yok! trigger: if {cekilis.son.kazanan} is not set: send "{@cekilis-prefix} &cHenüz kaydedilmiş bir çekiliş sonucu yok." to sender stop send "&8&m------------------------------" to sender send "{@cekilis-prefix} &aSon çekiliş özeti:" to sender send "&7Başlatan: &f%{cekilis.son.host}%" to sender send "&7Kelime: &d%{cekilis.son.kelime}%" to sender send "&7Katılımcı: &b%{cekilis.son.katilimci}%" to sender send "&7Kazanan: &a%{cekilis.son.kazanan}%" to sender send "&8&m------------------------------" to sender