Personal Captcha | ElitProtection | V2 | Yaml Base | Difference by Joka

  • Konuyu Başlatan Konuyu Başlatan Joka
  • Başlangıç tarihi Başlangıç tarihi
  • Görüntüleme 2.378
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Joka

numb.
Katılım
31 Ocak 2017
Mesajlar
944
Elmaslar
599
Puan
15.445
Minecraft
smojka

Discord:

smojka

Lb4YNG.png

Merhaba arkadaşlar, ben Joka. Bugünki konum fırından taze çıkmış skript. Bu skripti daha önceden yazmıştım. Bugün sıkıntıdan skript yazmak istedim ama yazacak birşey bulamadım. O sırada aklıma bu skriptim geldi ve bugları + eksikleri olduğunu hatırladım. Bu skriptimde yaml base (Veri tabanı(YAML)) kullandım. Yani siz variables.csv adlı dosyayı silsenizde yinede oyuncuların bilgileri kayıtlı oluyor. Bu skriptteki yenilikler:
+ Yaml Base (Database)
+ Engellenen eylemler
+ Mesajlar
+ Onaylama yapınca mesaj gelmemesi
+ Kapatılan açıklar
+ Değişen kodlar
+ Operatörlere ayrı, oyunculara ayrı kodlar
+ Eklenen reload komutu
+ Oyun açıkken base silinirse yeniden oluşturulur
Yeniliklerden bahsettik. Peki bu base nasıl kayıt ediyor. Buyrun resmi;

9m5R1Q.png


W7ZVaQ.png


Oyuncu komutları:
- /captcha onayla
- /captcha oluştur
- /captcha ayarla
Yetkili komutları ve yetkiler:
- /captcha yenile -]> captcha.*
- /captcha değiştir -]> captcha.*
Kullanım:
Oyuna girin ve /captcha oluştur <kod> <kod> komutunu girin ve bir captcha oluşturun. Bu kadar basit. Oyuna girip giriş yaptıktan sonra doğrulama aktif olur.
Tek yapmanız gereken ise /captcha onayla <kod> <kod> komutunu girmektir.

PlopWQ.png


giphy.gif



6Jkl3E.png

Gerekenler:
Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.

Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.

Değerli ziyaretçimiz, içeriği görebilmek için şimdi giriş yapın veya kayıt olun.


Kod:
On load:
    if file "plugins/ElitProtection/data.yml" doesn't exists:
        create file "plugins/ElitProtection/data.yml"

On First Join:
    wait 5 ticks
    send "&aElit&fProtection &l» &aSelam, sunucumuza hoşgeldin. /captcha yazarak kendine giriş yaptıktan sonra hesabını güvenceye almak için özel bir güvenlik kodu yapabilirsin."
sub "Reload":
    if file "plugins/ElitProtection/data.yml" doesn't exists:
        delete {captcha::*}
        create file "plugins/ElitProtection/data.yml"
    else:
        set {captcha::players::%parameter-1%} to single value "%parameter-1%" get of "./plugins/ElitProtection/data.yml"
command /captcha [<text>] [<text>] [<text>]:
    trigger:
        if arg-1 is "onayla":
            if {captcha::players::%player%} is set:
                if {captcha::captcha::%player%} is true:
                    if arg-2 is set:
                        if arg-3 is set:
                            if arg-2 is "%{captcha::players::%player%}%":
                                if arg-3 is "%arg 2%":
                                    delete {captcha::captcha::%player%}
                                    delete {captcha::cancelmove::%player%}
                                    send "&aElit&fProtection &l» &aCaptcha başarı ile doğrulandı!"
                                else:
                                    send "&aElit&fProtection &l» &aİlk girdiğiniz kod ikinci girdiğiniz kod ile uyuşmuyor!"
                            else:
                                send "&aElit&fProtection &l» &aCaptcha doğrulanamadı! Lütfen doğru bir kod girin!"
                        else:
                            send "&aElit&fProtection &l» &aLütfen captcha'nızı doğrulama amaçlı şöyle girin: &f/captcha <kodunu> <tekrar-kodunuz>"
                    else:
                        send "&aElit&fProtection &l» &aLütfen komutu şöyle kullanın: &f/captcha <kodunuz> <tekrar-kodunuz>"
                else:
                    send "&aElit&fProtection &l» &aCaptcha'nızı zaten onaylamışsınız!"
            else:
                send "&aElit&fProtection &l» &aSizin bir captcha'nız yok!"
        else if arg-1 is "yenile":
            if player is op:
                send "&aElit&fProtection &l» &a Data.yml başarı ile yenilendi!"
                loop all players:
                    invoke "Reload" from loop-player
            else:
                send "&aElit&fProtection &l» &aBöyle bir argüman bulunamadı!"
        else if arg-1 is "ayarla":
            if {captcha::players::%player%} is set:
                if arg-2 is "%{captcha::players::%player%}%":
                    if arg-3 is set:
                        set yaml value "%player%" from file "../../ElitProtection/data.yml" to "%arg 3%"
                        invoke "Reload" from player
                        send "&aElit&fProtection &l» &aSize özel captcha'nız artık: &f%{captcha::players::%player%}%"
                    else:
                        send "&aElit&fProtection &l» &aLütfen yani captcha'nızı girin!"
                else:
                    send "&aElit&fProtection &l» &aLütfen doğru captcha'nızı girin!"
            else:
                send "&aElit&fProtection &l» &aSizin bir captcha'nız yok!"
        else if arg-1 is "oluştur":
            if {captcha::players::%player%} isn't set:
                if arg-2 is set:
                    if arg-3 is set:
                        if arg-2 is "%arg 3%":
                            set yaml value "%player%" from file "../../ElitProtection/data.yml" to "%arg 3%"
                            invoke "Reload" from player
                            send "&aElit&fProtection &l» &aBaşarı ile yeni bir captcha oluşturdunuz: &f%{captcha::players::%player%}%"
                        else:
                            send "&aElit&fProtection &l» &aİlk girdiğiniz kod ile ikinci girdiğiniz kod uyuşmuyor!"
                    else:
                        send "&aElit&fProtection &l» &aLütfen doğrulama amaçlı olarak komutu verilen şekildeki gibi girin: &f/captcha %arg 2% %arg 2%"
                else:
                    send "&aElit&fProtection &l» &aCaptcha oluşturmak için lütfen komutu şöyle kullanın: &f/captcha <kodunuz> <tekrar-kodunuz>"
            else:
                send "&aElit&fProtection &l» &aSizin zaten bir captcha'nız var!"
        else if arg-1 is "değiştir":
            if player is op:
                if arg-2 is set:
                    if arg-3 is set:
                        loop all players:
                            if arg-2 is loop-player:
                                if arg-3 is "sil":
                                    delete yaml value "%player%" from file "../../ElitProtection/data.yml"
                                    delete {captcha::players::%arg 2%}
                                    invoke "Reload"
                                    send "&aElit&fProtection &l» &b%arg 2% &aadlı kişinin captcha'sı artık &fsilindi."
                                else:
                                    if {captcha::captcha::%arg 2%} is set:
                                        set yaml value "%player%" from file "../../ElitProtection/data.yml" to "%arg 3%"
                                        set {captcha::players::%arg 2%} to arg-3
                                        send "&aElit&fProtection &l» &b%arg 2% &aadlı kişinin captcha'sı artık: &f%arg 3%"
                                    else:
                                        send "&aElit&fProtection &l» &aBöyle bir captcha yok!"
                            else:
                                send "&aElit&fProtection &l» &aBöyle bir oyuncu yok!"
                    else:
                        send "&aElit&fProtection &l» &aLütfen bir captcha gir!"
                else:
                    send "&aElit&fProtection &l» &aLütfen bir oyuncu gir!"
            else:
                send "&aElit&fProtection &l» &aBöyle bir argüman bulunamadı!"
        else:
            if arg-1 is set:
                send "&aElit&fProtection &l» &aBöyle bir argüman bulunamadı!"
            else if arg-1 is not set:
                if player is op:
                    send "&8&m--------------------[ &aElit&fProtection &8&m]--------------------"
                    send "&a/captcha &fdeğiştir &b<oyuncu> <yeni-captcha>/<sil>"
                    send "&a/captcha &fonayla &b<captcha> <tekrar-captcha>"
                    send "&a/captcha &foluştur &b<captcha> <tekrar-captcha>"
                    send "&a/captcha &fyenile"
                else:
                    send "&8&m--------------------[ &aElit&fProtection &8&m]--------------------"
                    send "&a/captcha &fonayla &b<captcha> <tekrar-captcha>"
                    send "&a/captcha &foluştur &b<captcha> <tekrar-captcha>"
On Authme Login:
    invoke "Reload" from player
    if {captcha::players::%player%} is set:
        set {captcha::cancelmove::%player%} to event-location
        set {captcha::captcha::%player%} to true
        send "&aElit&fProtection &l» &aCaptcha artık aktif! /captcha onayla <güvenlik-kodu>!"
On Any Movement:
    if {captcha::captcha::%player%} is true:
        teleport player to {captcha::cancelmove::%player%}
        send "&aElit&fProtection &l» &aCaptcha'nızı onaylamazsanız herhangi bir eylem yapamazsınız! &f/captcha onayla <güvenlik-kodu> <tekrar-güvenlik-kodu>"
On Command:
    if {captcha::captcha::%player%} is true:
        if "%full command%" isn't "captcha onayla %{captcha::players::%player%}% %{captcha::players::%player%}%":
            if command isn't "captcha onayla":
                send "&aElit&fProtection &l» &aCaptcha'nızı onaylamazsanız herhangi bir eylem yapamazsınız! &f/captcha onayla <güvenlik-kodu> <tekrar-güvenlik-kodu>"
                cancel event
On Break:
    if {captcha::captcha::%player%} is true:
        cancel event
        send "&aElit&fProtection &l» &aCaptcha'nızı onaylamazsanız herhangi bir eylem yapamazsınız! &f/captcha onayla <güvenlik-kodu> <tekrar-güvenlik-kodu>"
     
On Place:
    if {captcha::captcha::%player%} is true:
        give 1 of event-block to player
        set event-block to air
        send "&aElit&fProtection &l» &aCaptcha'nızı onaylamazsanız herhangi bir eylem yapamazsınız! &f/captcha onayla <güvenlik-kodu> <tekrar-güvenlik-kodu>"
     
On Chat:
    if {captcha::captcha::%player%} is true:
        send "&aElit&fProtection &l» &aCaptcha'nızı onaylamazsanız herhangi bir eylem yapamazsınız! &f/captcha onayla <güvenlik-kodu> <tekrar-güvenlik-kodu>"
        cancel event
On Quit:
    if {captcha::captcha::%player%} is true:
        delete {captcha::captcha::%player%}
        delete {captcha::cancelmove::%player%}
On Eat:
    if {captcha::captcha::%player%} is true:
        cancel event
        send "&aElit&fProtection &l» &aCaptcha'nızı onaylamazsanız herhangi bir eylem yapamazsınız! &f/captcha onayla <güvenlik-kodu> <tekrar-güvenlik-kodu>"
On Drink:
    if {captcha::captcha::%player%} is true:
        cancel event
        send "&aElit&fProtection &l» &aCaptcha'nızı onaylamazsanız herhangi bir eylem yapamazsınız! &f/captcha onayla <güvenlik-kodu> <tekrar-güvenlik-kodu>"
On Click:
    if {captcha::captcha::%player%} is true:
        cancel event
        send "&aElit&fProtection &l» &aCaptcha'nızı onaylamazsanız herhangi bir eylem yapamazsınız! &f/captcha onayla <güvenlik-kodu> <tekrar-güvenlik-kodu>"
On Damage:
    if victim is player:
        if {captcha::captcha::%victim%} is true:
            cancel event
    if attacker is player:
        if {captcha::captcha::%attacker%} is true:
            cancel event
            send "&aElit&fProtection &l» &aCaptcha'nızı onaylamazsanız herhangi bir eylem yapamazsınız! &f/captcha onayla <güvenlik-kodu> <tekrar-güvenlik-kodu>"
Lb4YNG.png
 
Son düzenleme:
AuthMe ile aynı mantık neden AuthMe ile birlikte kullanılıyor?
 
AuthMe ile aynı mantık neden AuthMe ile birlikte kullanılıyor?
Oyuncu eğer isterse kullanıyor isterse kullanmıyor. Burası aynı mantık değil. Bir diğeri ise 2 aşamalı güvenlik oluyor. Bir şifreyi tutturan diğerini tutturmakta zorlanıyor. Ayrıca Force Login yapılma olanağı çok düşük. Ayrıca bu sadece bir denemeydi. Gelecekte daha iyi planlarım var.
 
Oyuncu eğer isterse kullanıyor isterse kullanmıyor. Burası aynı mantık değil. Bir diğeri ise 2 aşamalı güvenlik oluyor. Bir şifreyi tutturan diğerini tutturmakta zorlanıyor. Ayrıca Force Login yapılma olanağı çok düşük.
Bana saçma geldi AuthMe nin koruması bence yetiyor. Yine de paylaşım için teşekkürler.
 
Kırıcı olmayan eleştirin için teşekkürler.
 
Güzel yapmışın la :'D
 
Eline sağlık hoş.
 
Tab Bozuk Olabilir ama bunuda eklemeni öneririm :D
Kod:
On Bed:
    if {captcha::captcha::%player%} is true:
        cancel event
        send "&aElit&fProtection &l» &aCaptcha'nızı onaylamazsanız herhangi bir eylem yapamazsınız! &f/captcha onayla <güvenlik-kodu> <tekrar-güvenlik-kodu>"
 
On click boşunamı var :D
 
Güzel skript.
 
Hi bro, nice skript :D
 
Kullanacağım kesinlikle <3
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

Hala Discord sunucumuza katılmadın mı?

Büyük bir topluluğun parçası ol, etkinliklere katıl ve özel hediyeler kazanma şansı yakala!

Şimdi Katıl
Üst