• Merhaba Ziyaretçi, Tanışma & Tartışma & Muhabbet kategorisindeki tüm forumlar için (alt forumlar vs.) 90 gün geçtikten sonraki konulara mesaj yazmayı yasaklayan ölü konuları canlandırma kuralı kaldırılmıştır. Bu bölümdeki yazdığınız mesajlar, asla ama asla ölü konuları canlandırma sebebiyle silinmeyecek ve uyarı almayacaksınız. Ayrıca bu forumlardaki çoğu konunun kilidi kaldırılmıştır. Hoşunuza giden konulara artık yorum yazabilirsiniz. :))
Minecraft Türkiye Minecraft Türkiye
Minecraft Türkiye Minecraft Türkiye

Skript Paylaşımı Oylama Skripti v2 | Gui Destekli! |



xDespee

~ Gelişmiş Skripter ~
10 Ağustos 2017
215
142
640
xDespee
despee
#1

Merhaba Minecraft Türkiye Ailesi!

Bugün sizlere bir arkadaşımızın yaptığı skripti ilk önce eski halini gösterip ondan sonra geliştirdiğim halini paylaşacağım. Bunu neden mi yapıyorum? Kimse alıntı demesin diye yapıyorum. Zaten arkadaşımız geliştirilebilir yazmış. Ben de böyle bir skript görmedim. İlk olacağını zannediyorum. Sadece fark olarak gui şeklinde yapıldı.

~ ~ ~

Arkadaşımızın yaptığı skript:

C#:
options:
    P: &2[&aOylama&2]


command /oyla <integer> <text>:
    permission: skript.op
    usage: &b/oyla &3<&bSure&3> <&bKonu&3>
    trigger:
        set {yes} to 0
        set {no} to 0
        loop all players:
            set {oyla.%loop-player%} to false
        broadcast "{@P} &c%player% &8adli oyuncu oylama baslatti"
        broadcast "&6[&eSoru&6]: &6%arg-2%"
        broadcast "{@P} &7Kabul etmek icin,&a/evet&7,reddetmek icin &c/hayır &7yazınız."
        broadcast "&3[&bZaman&3] &7Oylamanin bitmesine kalan sure &2%arg-1%&7 saniye"
        set {OylamaBitis} to true
        loop arg-1 times:
            wait 1 second
        broadcast "{@P} &6Oylama tamamlandi"
        broadcast "{@P} &aEvet&7 sayısı &6%{yes}%"
        broadcast "{@P} &cHayır&7 sayısı &6%{no}%"
        set {OylamaBitis} to false



command /evet:
    trigger:
        if {OylamaBitis} is true:
            if {oyla.%player%} is false:
                add 1 to {yes}
                message "{@P} &3Oyunuzu basariyla kullandiniz"
                set {oyla.%player%} to true
            else:
                message "{@P} &cZaten oyunuzu kullanmissiniz."
        else:
            message "{@P} &cSuanda yururlukte olan bir oylama yok"


command /hayır:
    trigger:
        if {OylamaBitis} is true:
            if {oyla.%player%} is false:
                add 1 to {no}
                message "{@P} &3Oyunuzu basariyla kullandiniz"
                set {oyla.%player%} to true
            else:
                message "{@P} &cZaten oyunuzu kullanmissiniz."
        else:
            message "{@P} &cSuanda yururlukte olan bir oylama yok"




Evet arkadaşımızın skripti bu şekilde. Gelelim benim geliştirdiğim skriptin görüntülerine.

~ ~ ~

unknown (1).png


Skripti başlattığımızda sohbette böyle yazıyor. Title olarak ise;

unknown (2).png


Oylama sona erdiğinde ise;

unknown (9).png


Bu katıl olayı nedir? Neyin nesidir? Diyorsanız hemen açıklayayım. Oylama başlatıldığında oyucular /evet veya /hayır komutlarını kullanmıyor. /katıl yazınca bir menü açılıyor.

unknown (3).png


Menümüz ise bu şekilde. Peki bu seçeneklerde neler yazıyor?

unknown (4).png

unknown (5).png


Eğer aktifte bir oylama yok ise bu /katıl komudunun menüsü açılmıyor. Hata mesajı ise böyle:

unknown (6).png


Eğer saniye girmezseniz;

unknown.png


Eğer konu girmezseniz;

unknown (8).png


Oyun içi görsellerimiz bu kadardı. Gelelim skriptimizin komutlarına oradan da yavaş yavaş skripti verelim.

~ ~ ~

- Komutlar -

» /katıl - Oy verilecek menüyü açar.
» /adminoylama <Oylama Süresi(saniye)> - <Oylama Konusu> - Oylamayı Başlatır.
» /durdur - Eğer yürürlükte bir oylama varsa durdurur.


- Komutlar -

~ ~ ~

- Skriptimiz -
C#:
options:
    p: &8[ &eOYLAMA &8]

command /katıl:
    trigger:
        if {oylama.başlamış} is true:
            open chest with 3 rows named "&0Oylama Menüsü" to player
            wait 1 ticks
            format slot 10 of player with diamond named "&aEvet, bu oylamayı kabul ediyorum!" with lore "&8&m-----------------|||| &eBu seçeneği seçerseniz oyunuz &9evet &eolarak kabul edilecektir. ||||&8&m-----------------" to close then run [make player execute command "evetever"]
            format slot 0 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 1 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 2 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 3 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 4 of player with red stained glass named "&aOylama menüsü" to close       
            format slot 5 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 6 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 7 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 8 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 9 of player with blue stained glass named "&aOylama menüsü" to close
            format slot 11 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 12 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 13 of player with red stained glass named "&aOylama menüsü" to close       
            format slot 14 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 15 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 16 of player with redstone named "&cHayır, bu oylamayı kabul etmiyorum!" with lore "&8&m-----------------|||| &eBu seçeneği seçerseniz oyunuz &9hayır &eolarak kabul edilecektir. ||||&8&m-----------------" to close then run [make player execute command "hayıraver"]       
            format slot 17 of player with blue stained glass named "&aOylama menüsü" to close
            format slot 18 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 19 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 20 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 21 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 22 of player with red stained glass named "&aOylama menüsü" to close       
            format slot 23 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 24 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 25 of player with black stained glass named "&aOylama menüsü" to close       
            format slot 26 of player with black stained glass named "&aOylama menüsü" to close       
        else:
            send player title "{@p}" with subtitle "&cAktif oylama olmadığından işlem geçersiz." for 4 seconds
        
command /adminoylama [<int>] [<text>]:
    permission: oylama.admin
    permission message: &8» &cBu komudu kullanabilmeniz için &ayetkili &colmalısınız.
    trigger:
        if arg-1 is set:
            if arg-2 is set:
                set {evet::oyu} to 0
                set {hayır::oyu} to 0
                set {toplam::oy} to 0
                loop all players:
                    set {oyveren::%loop-player%} to false
                send players title "{@p}" with subtitle "&7Yetkilimiz bir oylama başlattı!" for 3 seconds
                broadcast " "
                broadcast " "
                broadcast "{@p} &aOylama konusu: &6%arg-2%"
                broadcast "{@p} &aOylama süresi: &6%arg-1%"
                broadcast "{@p} &aOylamayı başlatan yetkili: &6%player%"
                broadcast " "
                broadcast "{@p} &9Oylamaya katılmak için &f/katıl &9yazmalısınız."
                broadcast " "
                broadcast " "
                set {oylama.başlamış} to true
                loop arg-1 times:
                    wait 1 seconds
                send players title "{@p}" with subtitle "&cOylama tamamlandı!" for 3 seconds
                broadcast "{@p} &9Oylama süresi sona erdi! Sonuçlar &abaşarıyla &9hesaplandı."
                broadcast " "
                broadcast "{@p} &aEvet oy sayısı: %{evet::oyu}%"
                broadcast "{@p} &aHayır oy sayısı: %{hayır::oyu}%"
                broadcast " "
                broadcast "{@p} &aToplam oy sayısı: %{toplam::oy}%"
                broadcast " "
                set {oylama.başlamış} to false
            else:
                send player title "{@p}" with subtitle "&7Lütfen bir konu giriniz." for 3 seconds
        else:
            send player title "{@p}" with subtitle "&7Lütfen oylama süresini belirleyin." for 3 seconds
        
command /durdur:
    permission: oylama.admin
    permission message: &8» &cBu komudu kullanabilmeniz için &ayetkili &colmalısınız.
    trigger:
        if {oylama.başlamış} is true:
            send player title "{@p}" with subtitle "&cOylama başarıyla durduruldu!" for 3 seconds
            set {oylama.başlamış} to false
            send players title "{@p}" with subtitle "&cOylama durduruldu!" for 3 seconds
        else:
            send player title "{@p}" with subtitle "&cAktif bir oylama bulunamadı." for 4 seconds
        
        
command /evetever:
    trigger:
        if {oylama.başlamış} is true:
            if {oyveren::%player%} is false:
                add 1 to {evet::oyu}
                add 1 to {toplam::oy}
                send player title "{@p}" with subtitle "&aOyunuzu başarıyla kullandınız." for 4 seconds
                set {oyveren::%player%} to true
            else:
                send player title "{@p}" with subtitle "&cOyunuzu zaten kullanmışsınız." for 4 seconds
        else:
            send player title "{@p}" with subtitle "&cAktif bir oylama bulunamadı." for 4 seconds
        
command /hayıraver:
    trigger:
        if {oylama.başlamış} is true:
            if {oyveren::%player%} is false:
                add 1 to {hayır::oyu}
                add 1 to {toplam::oy}
                send player title "{@p}" with subtitle "&aOyunuzu başarıyla kullandınız." for 4 seconds
                set {oyveren::%player%} to true
            else:
                send player title "{@p}" with subtitle "&cOyunuzu zaten kullanmışsınız." for 4 seconds
        else:
            send player title "{@p}" with subtitle "&cAktif bir oylama bulunamadı." for 4 seconds

- Skriptimiz -

~ ~ ~

Herkese iyi kullanmalar, iyi forumlar. Umarım beğenirsiniz.

Gereken addonlar:

- SkQuery
- SkRayFall
 

Ekler

Son düzenleme:

xDespee

~ Gelişmiş Skripter ~
10 Ağustos 2017
215
142
640
xDespee
despee
#3

Bayağı başarılı bir çalışma olmuş. Eline emeğine sağlık <3
Yorumun için teşekkürler şad :D
 
Elmaslar: shad

MoreReal

Koydum Çalışma Masasını
19 Haziran 2018
57
24
140
#4

{evet::oyu} yerine {oylama::evet::oyu} yap ve tek değişken kullan. güzel olmuş.
 
Elmaslar: xDespee

xDespee

~ Gelişmiş Skripter ~
10 Ağustos 2017
215
142
640
xDespee
despee
#5

{evet::oyu} yerine {oylama::evet::oyu} yap ve tek değişken kullan. güzel olmuş.
Önerini diğer skriptlerimde göz önünde bulundaracağım teşekkür ederim.
 

ForestEdge

Tek iyilik bilgi, tek kötülük cehalettir.
Onaylı Satıcı
21
#6

Gerçekten güzel bir skript olmuş. Başarılar dilerim ortak.
 
Son düzenleme:
Elmaslar: xDespee

xDespee

~ Gelişmiş Skripter ~
10 Ağustos 2017
215
142
640
xDespee
despee
#9

Güzel skript olmuş, bir fotoğraf hatalı olmuş düzeltmenizi öneririm
Eğer saniye girmezseniz bölümü.
Düzelttim sağol Ziya.
 
Elmaslar: HypeL

xDespee

~ Gelişmiş Skripter ~
10 Ağustos 2017
215
142
640
xDespee
despee
#12