Gelişmiş Report Skripti tamamen ücretsiz!

OldKiller

Kızıltaş madencisi
Katılım
17 May 2020
Mesajlar
57
Beğeni
13
Puanları
150
RAPORLAMA SİSTEMİ
Merhaba, uzun zaman önce yapmış olduğum Report skriptimi sizinle paylaşmak istedim. Skript, disk tasarruflu
olarak kodlanmıştır. Herhangi bir şekilde sunucuyu zorlamaz. Gönül rahatlığıyla kullanabilirsiniz. İhtiyacı olanlar
olabilir diye düşündüm. Yorum yapmayı unutmayın.
1584998573593.png

Kolay ve İnteraktif yazılarıyla şık tasarımlar sunar.
1584998590337.png


1584998680010.png


Sebep bölümüne yazı girmek yerine belirlenmiş sebepleri girerek raporların okunurken anlaşılmasını hızlandırır. Ayrıca
sebepler belirtilirken bazı ufak yazım hataları olursa sistem bunları anlayabiliyor.

1584998700171.png



Raporların listesini sunarken raporlanan kişinin kaç farklı kişi tarafından raporlandığı yazıyor. Bu sayede kritik raporlar
gözünüzden kaçmıyor. Bu arada kırmızı çarpı işaretine basarak raporu kısayoldan silebilirsiniz.

1584999363220.png


Bir raporu detaylı şekilde açtığınızda raporlandığı andaki ping, dünya, zaman ve en son mesajları gösteriyor.

Komutlar

/report <oyuncu> <sebep>
/reports list
/reports <id>

Not: Skript, Her gece 00.00'da Mesaj kayıtlarını silerek aşırı depolamayı önler.
Not: Kod Skript'in dev36 ve dev37c sürümlerinde test edilmiştir. Bu sürümler 1.8 için en stabil sürümlerdir.


Umarım işinize yarar. İlgilendiğiniz için teşekkürler.

Kod:

Kod:
command /report [<player>] [<text>]:
    aliases: rapor
    trigger:
        arg 1 is set:
            {Report::reports::%arg 1%::%player%} is not set:
                arg 1 is not player:
                    arg 2 is set:
                        arg 2 is "yardım" or "help":
                            send ""
                            send "&fÖrnek rapor sebepleri:"
                            send "&7 - &aKill Aura"
                            send "&7 - &aAnti-knockback"
                            send "&7 - &aReach"
                            send "&7 - &aSpeed"
                            send "&7 - &aFlight"
                            send "&7 - &aNoSwing"
                            send "&7 - &aFast Place"
                            send "&7 - &aSafe Walk"
                            send "&7 - &aSpam"
                            send "&7 - &aKüfür"
                            send "&7 - &aIzinsiz reklam"
                            send "&7 - &aHakaret"
                            send ""
                            send "&3Not &8» &eTek seferde birden fazla sebep belirtebilirsiniz ayrıca sebepleri tam olarak aynı yazmanıza gerek yok."
                        else:
                            {ReportSystem::reportstate::%arg 1%::%player%} is not set:
                            arg 2 contains "aura","clicker","auto" or "kill":
                                add "Kill Aura" to {_reasonList::*}
                            arg 2 contains "knock","back" or "noVelocity":
                                add "Anti-Knockback" to {_reasonList::*}
                            arg 2 contains "Reach" or "each":
                                add "Reach" to {_reasonList::*}
                            arg 2 contains "Speed" or "fast":
                                add "Speed" to {_reasonList::*}
                            arg 2 contains "Flight" or "Fly":
                                add "Flight" to {_reasonList::*}
                            arg 2 contains "Swing":
                                add "No Swing" to {_reasonList::*}
                            arg 2 contains "FastP":
                                add "Fast Place" to {_reasonList::*}
                            arg 2 contains "Safe","sfe" or "Walk":
                                add "Safe Walk" to {_reasonList::*}
                            arg 2 contains "Spam":
                                add "Spam" to {_reasonList::*}
                            arg 2 contains "Küfür" or "küfr":
                                add "Küfür" to {_reasonList::*}
                            arg 2 contains "Reklam":
                                add "Izinsiz reklam" to {_reasonList::*}
                            arg 2 contains "Hakaret" or "kışkırtma":
                                add "Hakaret" to {_reasonList::*}
                            size of {_reasonList::*} is 0:
                                send "&3Report &8» &cGeçersiz bir rapor sebebi belirttiniz. <command:/report %arg 1% yardım>&c&nBana tıkla&c ve örnek sebepleri gör."
                                stop
                            set {_reasons} to "%{_reasonList::*}%"
                            replace all ", " with "&7, &a" in {_reasons}
                            replace all " and " with "&7 ve &a" in {_reasons}
                            add 1 to {id}
                            set {Report::reports::%arg 1%::%player%} to {id}
                            add {id} to {Report::reportsList::*}
                            set {Report::reportsData::%{id}%::reason} to "&a%{_reasons}%"
                            set {Report::reportsData::%{id}%::reported} to arg 1
                            set {Report::reportsData::%{id}%::reporter} to player
                            set {Report::reportsData::%{id}%::date} to now
                            set {Report::reportsData::%{id}%::ping} to arg 1's ping
                            set {Report::reportsData::%{id}%::world} to arg 1's world
                            set {_n} to 1
                            loop {updatedMessages::%arg 1%::*}:
                                add loop-value to {Report::reportsData::%{id}%::lastMessages::*}
                                {_n} is 5:
                                    stop loop
                                add 1 to {_n}
                            send "&3Report &8» &e%arg 1% adlı oyuncuyu raporladığın için teşekkürler.%nl%&fIşte belirttiğin rapor sebepleri:&a %{_reasons}%"
                            send "&3Report &8» &f%player%&e adlı oyuncu&f %arg 1%&e adlı oyuncuyu rapor etti. &a##%{id}%"
                    else:
                        send "&3Report &8» &cLütfen tüm argümanları belirtin: &7/rapor <oyuncu> <sebep>%nl%<command:/report %arg 1% yardım>&c&nBana tıkla&c ve örnek sebepleri gör."
                else:
                    send "&3Report &8» &cKendini rapor edemezsin."
                        
            else:
                send "&3Report &8» &cBu oyuncuyu zaten rapor etmişsin."

        else:
            send "&3Report &8» &cLütfen tüm argümanları belirtin: &7/rapor <oyuncu> <sebep>"

command /updatedMessages <offline player> <int=1>:
    trigger:
        size of {updatedMessages::%arg 1%::*} is not 0:
            set {_n} to 1
            loop {updatedMessages::%arg 1%::*}:
                {_send} is true:
                    send "&f%arg 1%&7: %loop-value%"
                    add 1 to {_nu}
                {_nu} is 30:
                    stop loop
                {_n} is arg 2:
                    set {_send} to true
                add 1 to {_n}
            send "<command:/updatedMessages %arg 1% %arg 2+30%>&a&nTıkla ve daha fazla göster &7(+%arg 2+30% mesaj)"
        else:
            send "&3Report &8» &cSonuç bulunamadı."
on chat:
    add message to {lastMessages::%player%::*}
    delete {lastMessages::%player%::6}
    add message to {updatedMessages::%player%::*}
every real minute:
    if now formatted with "HH:mm" is "00:00":
        delete {updatedMessages::*}
        send "&e[REPORTS LOG] Tüm kayıtlı mesajlar silindi." to console
command /reports [<text>] [<text>]:
    permission: op
    trigger:
        arg 1 is set:
            arg 1 is "delete":
                arg 2 is set:
                    {Report::reportsData::%arg 2%::reported} is set:
                        send ""
                        remove arg 2 parsed as integer from {Report::reportsList::*}
                        delete {Report::reports::%{Report::reportsData::%arg 2%::reported}%::%{Report::reportsData::%arg 2%::reporter}%}
                        delete {Report::reportsData::%arg 2%::reason}
                        delete {Report::reportsData::%arg 2%::reported}
                        delete {Report::reportsData::%arg 2%::reporter}
                        delete {Report::reportsData::%arg 2%::date}
                        delete {Report::reportsData::%arg 2%::ping}
                        delete {Report::reportsData::%arg 2%::world}
                        send "&3Report &8» &a##%arg 2% &eID'li rapor başarıyla silindi."
                    else:
                        send "&3Report &8» &cGeçersiz bir ID belirtiniz."
                else:
                    send "&3Report &8» &cLütfen bir ID belirtin."
            else if arg 1 is "list":
                arg 2 is not set:
                    send "&f&lTüm raporlar:"
                    loop {Report::reportsList::*}:
                        send "&f%loop-index%.&e [%{Report::reportsData::%loop-value%::date}%]&c %{Report::reportsData::%loop-value%::reported}%&7 %size of {Report::reports::%{Report::reportsData::%loop-value%::reported}%::*}% rapor&a ##%loop-value%  <command:/reports delete %loop-value%>&c[X]"
                else:
                    set {_n} to 1
                    send "&f&l%arg 2% hakkındaki raporlar:"
                    loop {Report::reports::%arg 2%::*}:
                        send "&f%{_n}%.&e [%{Report::reportsData::%loop-value%::date}%]&6 %{Report::reportsData::%{id}%::reporter}%&a ##%loop-value%"
                        add 1 to {_n}
            else:
                {Report::reportsData::%arg 1%::reported} is set:
                    send "&6&lRapor sonuçları:"
                    send "&eRaporlayan: &7%{Report::reportsData::%arg 1%::reporter}%        <command:/reports delete %arg 1%>&c[X]"
                    send "&eRaporlanan: &c%{Report::reportsData::%arg 1%::reported}%"
                    send ""
                    send "&e%{Report::reportsData::%arg 1%::reported}% hakkında: &8(Rapor tarihindeki)"
                    send "&e Dünya: &7%{Report::reportsData::%arg 1%::world}%"
                    send "&e Gecikme: &7%{Report::reportsData::%arg 1%::ping}%"
                    send ""
                    send "&eTarih: &7%{Report::reportsData::%arg 1%::date}%"
                    send "&eSebep: &7%{Report::reportsData::%arg 1%::reason}%"
                    send ""
                    send "&fRaporlandığı andaki son 5 mesajı:"
                    loop {Report::reportsData::%arg 1%::lastMessages::*}:
                        send " &7%{Report::reportsData::%arg 1%::reported}%:&f %loop-value%"
                    send ""
                    send "<command:/updatedMessages %{Report::reportsData::%arg 1%::reported}%>&a&nTıkla ve son mesajlarını gör&7 (+30)"
                    send ""
                else:
                    send "&3Report &8» &cGeçersiz ID belirtiniz."
        else:
            send "&3Report &8» &cLütfen bir ID belirtin veya /reports list komutunu kullanın."


 

selambn

Oduncu
Katılım
23 Eyl 2020
Mesajlar
1
Beğeni
0
Puanları
10
Merhabalar acaba 1.15.2 sürümünde çalışırmı skriptiniz çok güzel.
 
Üst