Sustur Skript | Essentials Gerektirmez | Addon Gerektirmez

Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

YEmreK

Odunlara Vur Vur Vur!
Katılım
11 Nisan 2018
Mesajlar
42
Elmaslar
2
Puan
0
Yaş
31
Minecraft
YEmreK

Discord:

YEmreK#8104

Merhabalar. Bugün sizlerle biraz uğraş ile kısa sürede yaptığım sustur skriptini paylaşacağım. Bunun gibi birçok skript var ama çoğu essentials gerektiriyor. Tabi aynı bunun gibi gerektirmeyenler de var. Ama tahminime göre sunucu performansını diğerlerinden daha az etkileyecek bir skript bu. Ve hiçbir skript addonu da gerektirmiyor. Öncelikle kodu vereyim sonra da birkaç özelliğini anlatayım.
Kod:
#Sustur Skript by YEmreK
#Essentials gerektirmez
#Addon gerektirmez
#permission: skript.sustur
#permission: skript.susturiptal

on first join:
    set {sustur.%player%} to false

command /sustur <player> [<int>] [<text>]:
    usage: &6/sustur <oyuncu> <süre> <sebep>
    permission: skript.sustur
    permission message: &4Bunu kullanmak için gerekli yetkiye sahip değilsin!
    trigger:
        if arg 1 is set:
            if arg 1 is executor:
                send "&cKendini susturamazsın!" to player
                stop
            if arg 1 is not op:
                if arg 2 is set:
                    if arg 3 is set:
                        if {sustur.%arg 1%} is true:
                            send "&aBu oyuncunun zaten bir susturulma cezası var!" to executor
                            stop
                        else:
                            set {sustur.%arg 1%} to true
                            broadcast "&7&l-----------------------------"
                            broadcast "&8&l » &aSusturulan: &e%arg 1%"
                            broadcast "&8&l » &aSusturan: &e%player%"
                            broadcast "&8&l » &aSüre:  &e%arg 2% Dakika"
                            broadcast "&8&l » &aSebep: &e%arg 3%"
                            broadcast "&7&l-----------------------------"
                            loop arg 2 times:
                                wait 1 minute
                            set {sustur.%arg 1%} to false
                            send "&e&lSusturulma süreniz bitmiştir!" to arg 1
                            stop
                    if arg 3 is not set:
                        if {sustur.%arg 1%} is true:
                            send "&aBu oyuncunun zaten bir susturulma cezası var!" to executor
                            stop
                        else:
                            set {sustur.%arg 1%} to true
                            broadcast "&7&l-----------------------------"
                            broadcast "&8&l » &aSusturulan: &e%arg 1%"
                            broadcast "&8&l » &aSusturan: &e%player%"
                            broadcast "&8&l » &aSüre:  &e%arg 2% Dakika"
                            broadcast "&8&l » &aSebep: &eYok"
                            broadcast "&7&l-----------------------------"
                            loop arg 2 times:
                                wait 1 minute
                            set {sustur.%arg 1%} to false
                            send "&e&lSusturulma süreniz bitmiştir!" to arg 1
                            stop
                    else:
                        send "&6Doğru kullanımı: /sustur <oyuncu> <süre> <sebep>" to executor
                        stop
                else:
                    send "&6Doğru kullanımı: /sustur <oyuncu> <süre> <sebep>" to executor
                    stop
            else if executor is console:
                if arg 2 is set:
                    if arg 3 is set:
                        if {sustur.%arg 1%} is true:
                            send "&aBu oyuncunun zaten bir susturulma cezası var!" to executor
                            stop
                        else:
                            set {sustur.%arg 1%} to true
                            broadcast "&7&l-----------------------------"
                            broadcast "&8&l » &aSusturulan: &e%arg 1%"
                            broadcast "&8&l » &aSusturan: &eKonsol"
                            broadcast "&8&l » &aSüre:  &e%arg 2% Dakika"
                            broadcast "&8&l » &aSebep: &e%arg 3%"
                            broadcast "&7&l-----------------------------"
                            loop arg 2 times:
                                wait 1 minute
                            set {sustur.%arg 1%} to false
                            send "&e&lSusturulma süreniz bitmiştir!" to arg 1
                            stop
                    if arg 3 is not set:
                        if {sustur.%arg 1%} is true:
                            send "&aBu oyuncunun zaten bir susturulma cezası var!" to executor
                            stop
                        else:
                            set {sustur.%arg 1%} to true
                            broadcast "&7&l-----------------------------"
                            broadcast "&8&l » &aSusturulan: &e%arg 1%"
                            broadcast "&8&l » &aSusturan: &eKonsol"
                            broadcast "&8&l » &aSüre:  &e%arg 2% Dakika"
                            broadcast "&8&l » &aSebep: &eYok"
                            broadcast "&7&l-----------------------------"
                            loop arg 2 times:
                                wait 1 minute
                            set {sustur.%arg 1%} to false
                            send "&e&lSusturulma süreniz bitmiştir!" to arg 1
                            stop
                    else:
                        send "&6Doğru kullanımı: /sustur <oyuncu> <süre> <sebep>" to executor
                        stop
                else:
                    send "&6Doğru kullanımı: /sustur <oyuncu> <süre> <sebep>" to executor
                    stop
            else:
                send "&c&lBir yetkiliyi susturamazsın!" to player
                send "&e%player% &aisimli oyuncu &c%arg 1% &aisimli yetkiliyi susturmaya çalıştı." to player
                send "&aSüre: &e%arg 2% Dakika" to player
                send "&aSebep: &e%arg 3%" to player
                send "&e%player% &aisimli oyuncu &c%arg 1% &aisimli yetkiliyi susturmaya çalıştı." to ops
                send "&aSüre: &e%arg 2% Dakika" to ops
                send "&aSebep: &e%arg 3%" to ops
                stop
        else:
            send "&6Doğru kullanımı: /sustur <oyuncu> <süre> <sebep>" to executor
            stop
                
on chat:
    if {sustur.%player%} is true:
        cancel event
        send "&aSusturulduğun için konuşamazsın!" to player
        stop
        
command /susturiptal <player>:
    usage: &6/susturiptal <oyuncu>
    permission: skript.susturiptal
    permission message: &4Bunu kullanmak için gerekli yetkiye sahip değilsin!
    trigger:
        if arg 1 is executor:
            send "&cKendi susturulma cezanı kaldıramazsın!" to player
            stop
        if arg 1 is not executor:
            if {sustur.%arg 1%} is true:
                set {sustur.%arg 1%} to false
                send "&e&lSusturulma süreniz bitmiştir!" to arg 1
                send "&e%arg 1% &aisimli oyuncunun susturulması kaldırıldı." to player
                stop
            else:
                send "&aBu oyuncunun zaten susturulma cezası yok!" to player
                stop
        else if executor is console:
            if {sustur.%arg 1%} is true:
                set {sustur.%arg 1%} to false
                send "&e&lSusturulma süreniz bitmiştir!" to arg 1
                send "&e%arg 1% &aisimli oyuncunun susturulması kaldırıldı." to console
                stop
            else:
                send "&aBu oyuncunun zaten susturulma cezası yok!" to console
                stop
Özelliklerine geçelim.
- İki komut mevcut:
/sustur <oyuncu> <süre> <sebep> (Süre dakika olarak yazılmalı)
permission: skript.sustur
/susturiptal <oyuncu>
permission: skript.susturiptal

-Susturma cezası OPlara verilemiyor. Verilmeye çalışıldığında OPlara ve gönderen oyuncuya mesaj geliyor. Bunu sadece konsoldan gerçekleştirebiliyorsunuz.
-Ayrıca sebep yazmayınca çıkan <none> bugunu gidermek için ayrı olarak sebep yazılmadığında oraya Yok yazılmasını ekledim.
-Susturulma cezası olan bir oyuncuya ek bir susturma veremiyorsunuz. Bunu spamları önlemek için ekledim.
-OP da olsanız kendi susturulma cezanızı kaldıramıyorsunuz. Bu da yine sadece konsoldan gerçekleştirilebiliyor.
-Kendinizi susturamıyorsunuz.

Hatalar bulursanız bildirmeyi unutmayın.

Umarım birilerinin işine yarar. İyi forumlar!
 
Emeğinize sağlık ancak Eğer loop devam ederken sunucu çökerse oyuncu sonsuza kadar susturulmuş olacaktır
 
Merhabalar. Bugün sizlerle biraz uğraş ile kısa sürede yaptığım sustur skriptini paylaşacağım. Bunun gibi birçok skript var ama çoğu essentials gerektiriyor. Tabi aynı bunun gibi gerektirmeyenler de var. Ama tahminime göre sunucu performansını diğerlerinden daha az etkileyecek bir skript bu. Ve hiçbir skript addonu da gerektirmiyor. Öncelikle kodu vereyim sonra da birkaç özelliğini anlatayım.
Kod:
#Sustur Skript by YEmreK
#Essentials gerektirmez
#Addon gerektirmez
#permission: skript.sustur
#permission: skript.susturiptal

on first join:
set {sustur.%player%} to false

command /sustur  [] []:
usage: &6/sustur   
permission: skript.sustur
permission message: &4Bunu kullanmak için gerekli yetkiye sahip değilsin!
trigger:
if arg 1 is set:
if arg 1 is executor:
send "&cKendini susturamazsın!" to player
stop
if arg 1 is not op:
if arg 2 is set:
if arg 3 is set:
if {sustur.%arg 1%} is true:
send "&aBu oyuncunun zaten bir susturulma cezası var!" to executor
stop
else:
set {sustur.%arg 1%} to true
broadcast "&7&l-----------------------------"
broadcast "&8&l » &aSusturulan: &e%arg 1%"
broadcast "&8&l » &aSusturan: &e%player%"
broadcast "&8&l » &aSüre: &e%arg 2% Dakika"
broadcast "&8&l » &aSebep: &e%arg 3%"
broadcast "&7&l-----------------------------"
loop arg 2 times:
wait 1 minute
set {sustur.%arg 1%} to false
send "&e&lSusturulma süreniz bitmiştir!" to arg 1
stop
if arg 3 is not set:
if {sustur.%arg 1%} is true:
send "&aBu oyuncunun zaten bir susturulma cezası var!" to executor
stop
else:
set {sustur.%arg 1%} to true
broadcast "&7&l-----------------------------"
broadcast "&8&l » &aSusturulan: &e%arg 1%"
broadcast "&8&l » &aSusturan: &e%player%"
broadcast "&8&l » &aSüre: &e%arg 2% Dakika"
broadcast "&8&l » &aSebep: &eYok"
broadcast "&7&l-----------------------------"
loop arg 2 times:
wait 1 minute
set {sustur.%arg 1%} to false
send "&e&lSusturulma süreniz bitmiştir!" to arg 1
stop
else:
send "&6Doğru kullanımı: /sustur   " to executor
stop
else:
send "&6Doğru kullanımı: /sustur   " to executor
stop
else if executor is console:
if arg 2 is set:
if arg 3 is set:
if {sustur.%arg 1%} is true:
send "&aBu oyuncunun zaten bir susturulma cezası var!" to executor
stop
else:
set {sustur.%arg 1%} to true
broadcast "&7&l-----------------------------"
broadcast "&8&l » &aSusturulan: &e%arg 1%"
broadcast "&8&l » &aSusturan: &eKonsol"
broadcast "&8&l » &aSüre: &e%arg 2% Dakika"
broadcast "&8&l » &aSebep: &e%arg 3%"
broadcast "&7&l-----------------------------"
loop arg 2 times:
wait 1 minute
set {sustur.%arg 1%} to false
send "&e&lSusturulma süreniz bitmiştir!" to arg 1
stop
if arg 3 is not set:
if {sustur.%arg 1%} is true:
send "&aBu oyuncunun zaten bir susturulma cezası var!" to executor
stop
else:
set {sustur.%arg 1%} to true
broadcast "&7&l-----------------------------"
broadcast "&8&l » &aSusturulan: &e%arg 1%"
broadcast "&8&l » &aSusturan: &eKonsol"
broadcast "&8&l » &aSüre: &e%arg 2% Dakika"
broadcast "&8&l » &aSebep: &eYok"
broadcast "&7&l-----------------------------"
loop arg 2 times:
wait 1 minute
set {sustur.%arg 1%} to false
send "&e&lSusturulma süreniz bitmiştir!" to arg 1
stop
else:
send "&6Doğru kullanımı: /sustur   " to executor
stop
else:
send "&6Doğru kullanımı: /sustur   " to executor
stop
else:
send "&c&lBir yetkiliyi susturamazsın!" to player
send "&e%player% &aisimli oyuncu &c%arg 1% &aisimli yetkiliyi susturmaya çalıştı." to player
send "&aSüre: &e%arg 2% Dakika" to player
send "&aSebep: &e%arg 3%" to player
send "&e%player% &aisimli oyuncu &c%arg 1% &aisimli yetkiliyi susturmaya çalıştı." to ops
send "&aSüre: &e%arg 2% Dakika" to ops
send "&aSebep: &e%arg 3%" to ops
stop
else:
send "&6Doğru kullanımı: /sustur   " to executor
stop

on chat:
if {sustur.%player%} is true:
cancel event
send "&aSusturulduğun için konuşamazsın!" to player
stop

command /susturiptal :
usage: &6/susturiptal 
permission: skript.susturiptal
permission message: &4Bunu kullanmak için gerekli yetkiye sahip değilsin!
trigger:
if arg 1 is executor:
send "&cKendi susturulma cezanı kaldıramazsın!" to player
stop
if arg 1 is not executor:
if {sustur.%arg 1%} is true:
set {sustur.%arg 1%} to false
send "&e&lSusturulma süreniz bitmiştir!" to arg 1
send "&e%arg 1% &aisimli oyuncunun susturulması kaldırıldı." to player
stop
else:
send "&aBu oyuncunun zaten susturulma cezası yok!" to player
stop
else if executor is console:
if {sustur.%arg 1%} is true:
set {sustur.%arg 1%} to false
send "&e&lSusturulma süreniz bitmiştir!" to arg 1
send "&e%arg 1% &aisimli oyuncunun susturulması kaldırıldı." to console
stop
else:
send "&aBu oyuncunun zaten susturulma cezası yok!" to console
stop
Özelliklerine geçelim.
- İki komut mevcut:
/sustur (Süre dakika olarak yazılmalı)
permission: skript.sustur
/susturiptal
permission: skript.susturiptal

-Susturma cezası OPlara verilemiyor. Verilmeye çalışıldığında OPlara ve gönderen oyuncuya mesaj geliyor. Bunu sadece konsoldan gerçekleştirebiliyorsunuz.
-Ayrıca sebep yazmayınca çıkan bugunu gidermek için ayrı olarak sebep yazılmadığında oraya Yok yazılmasını ekledim.
-Susturulma cezası olan bir oyuncuya ek bir susturma veremiyorsunuz. Bunu spamları önlemek için ekledim.
-OP da olsanız kendi susturulma cezanızı kaldıramıyorsunuz. Bu da yine sadece konsoldan gerçekleştirilebiliyor.
-Kendinizi susturamıyorsunuz.

Hatalar bulursanız bildirmeyi unutmayın.

Umarım birilerinin işine yarar. İyi forumlar!

Dostum, bence böyle yapma. {mutesure::%player%} diye bi variable oluştur. Sonra her dakika butun oyunculari loopla ve mute suresinden bir düş

every 1 minute:
loop all players:
if {sustur::%loop-value%} is true
remove 1 from {mutesure::%loop-value%}
if {mutesure::%loop-value%} is 0:
set {sustur::%loop-value%} to false
send "Cezan bitti artik konuşabilirsin." to loop-value


Gibisinden

Sent from my SM-G920F using Tapatalk
 
tarih kullanırsan sunucu kapansa bile mute süresi devam eder.
 
Biraz görsel eklemeniz gerekiyor.
 
Güzel skript. Başarılar...
 
Bu tür skriptlerden artık gına geldi. Birde essentials gerektirmez yazmışsınız ancak keşke essentials gerektirseydi. Şu anki haliyle sunucu kapanıp açıldığından tüm susturmalar kalkar. Buda büyük bir bug. Maalesef skriptinizi bölüm kurallarına uymadığı için arşive taşıyorum. İyi forumlar. Umarım bir dahakine bölüm kurallarını okuyup konu paylaşırsınız.
 
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