Online Süre Skripti

blueybighat

Marangoz
Mesajlar
41
En iyi cevaplar
3
Beğeniler
10
Puanları
330
Merhaba değerli forum üyeleri , bugün /süre top ve /süre özelliği bulunan güzel kolay ve türevlerine benzemeyen bir skript paylaşıcam öncelikle 1 - 2 bilgi veriyim , skriptin çalışması için skript-mirror ve TuSKe adlı add-on gereklidir indirmek için
tıklayın skript-mirror. tıklayın TuSKe
Eğer sunucu sürümünüz 1.8 gibi alt sürümler ise timestatistic: kısmını ellemeyin eğer 1.14.4 gibi sürümler ise PLAY_ONE_MINUTE olarak ayarlamanız gerekiyor
skript her saniye tüm oyuncuları kaydetmek yerine istatistikten verileri çekiyor bu sayede lag yapmıyor. neyse fazla uzatmadan kodu bırakıyım. iyi kullanımlar.

Java:
options:
    topx: 9
    timestatistic: PLAY_ONE_TICK
import:
    org.bukkit.Statistic
players property total time:
    return type: number
    get:
        return round(expression-1.getStatistic(Statistic.{@timestatistic})/20)
on skript load:
    set {timelist::*} to sırala({time::*}, {@topx})
on skript unload:
    set {timelist::*} to sırala({time::*}, {@topx})
every 30 minutes:
    set {timelist::*} to sırala({time::*}, {@topx})

function formattedTime(süre: number) :: String:
    return "&e%floor({_süre}/86400)% &7gün, &e%floor(mod({_süre},86400)/3600)% &7saat, &e%floor(mod({_süre},3600)/60)% &7dakika, &e%floor(mod({_süre},60))% &7saniye"

function sırala(x: objects, n: number) :: Objects:
    loop {_n} times:
        set {_maxValuetime} to -1
        loop {_x::*}:
            set {_time::*} to loop-value-2 split at "\\"
            set {_time::2} to {_time::2} parsed as number
            if {_time::2} > {_maxValuetime}:
                set {_maxValuetime} to {_time::2}
                set {_maxValues} to loop-value-2
        add {_maxValues} to {_return::*}
        remove {_maxValues} from {_x::*}
        delete {_maxValues}
        delete {_maxValuetime}
    return {_return::*}

command /süre [<text>]:
    trigger:
        if arg 1 is not set:
            set {_time} to total time of player
            open virtual chest inventory with size 1 named "&cSüre Top" to player
            make gui slot 0,1,2,3,5,6,7 and 8 of player with shiny lime stained glass pane named " " to nothing
            make gui slot 4 of player with ("%player%" parsed as offline player)'s skull named "&6Oyunda kalma süreniz" with lore "","&7Oyunda toplamda",formattedTime({_time}) and "&7süre boyunca kalmışsınız." to nothing
            set {time::%player%} to "%player%\\%{_time}%"
        else if arg 1 is "top" or "sıralama" or "sırala":
            open virtual chest inventory with size ceil({@topx}/9) named "&cSüre Top" to player
            loop {timelist::*}:
                set {_sıralama::*} to loop-value-1 split at "\\"
                make gui slot {_n} otherwise 0 of player with ("%{_sıralama::1}%" parsed as offline player)'s skull named "&c%{_n}+1%. Kişi" with lore "", "&9%{_sıralama::1}% &7adlı oyuncu", "&6%formattedTime({_sıralama::2} parsed as number)%" and "&7kadar oyunda kalarak &3%{_n}+1%. &7sıraya çıkmıştır." to nothing
                add 1 to {_n}
        else if arg 1 is "yenile":
            if player is op:
                set {timelist::*} to sırala({time::*}, {@topx})
                send "&aSistem yenilendi."
            else:
                send "&cYetkin yok."

137441
137442
137443
 


Son düzenleme:

Melihoper

mc.TurkLion.net
Mesajlar
395
En iyi cevaplar
4
Beğeniler
191
Puanları
490
Ruh hali
Başarılı bir skript olmuş tebrik ederim.
 

ErayAlkan

Taş Madencisi
Mesajlar
79
En iyi cevaplar
0
Beğeniler
25
Puanları
170
Ruh hali
Merhaba değerli forum üyeleri , bugün /süre top ve /süre özelliği bulunan güzel kolay ve türevlerine benzemeyen bir skript paylaşıcam öncelikle 1 - 2 bilgi veriyim , skriptin çalışması için skript-mirror adlı add-on gereklidir indirmek için tıklayın.
Eğer sunucu sürümünüz 1.8 gibi alt sürümler ise timestatistic: kısmını ellemeyin eğer 1.14.4 gibi sürümler ise PLAY_ONE_MINUTE olarak ayarlamanız gerekiyor
skript her saniye tüm oyuncuları kaydetmek yerine istatistikten verileri çekiyor bu sayede lag yapmıyor. neyse fazla uzatmadan kodu bırakıyım. iyi kullanımlar.

time.zip dosyasını indir - download

Virüs total

VirusTotal
Ekli dosyayı görüntüle 137441Ekli dosyayı görüntüle 137442Ekli dosyayı görüntüle 137443
menülü bir şekilde yapsan veya boardda gözükecek bir şekilde bir şeyler eklesen iyi olabilirdi en azından yenilik açısından (bende bu şekilde kullanıyorum)
 

blueybighat

Marangoz
Mesajlar
41
En iyi cevaplar
3
Beğeniler
10
Puanları
330
Haklısınız güzel olurdu ama pek zamanım yok sadece mantığını insanlara vererek geliştirmeye sundum, Statistic olayı güzel bir fikir sonuçta.Belki sonraki sürümde eklerim menü
 

blueybighat

Marangoz
Mesajlar
41
En iyi cevaplar
3
Beğeniler
10
Puanları
330

DerpBoy

Kömür Madencisi
Mesajlar
130
En iyi cevaplar
0
Beğeniler
34
Puanları
215
Ruh hali
bu ne berbat bir script hani nerde loop all players olmadan süre scripti mi olur (!)
 

They001

Zombi Katili
Mesajlar
167
En iyi cevaplar
2
Beğeniler
147
Puanları
340
Ruh hali
kolay ve türevlerine benzemeyen
Skript diye girdim konuya fonksiyon yazmışsın hep. Fonksiyon görmek istesem matematik karıştırırdım ne bu böyle. Açıklamada da türev var zaten.... Sen git en iyisi A'dan B'ye bir fonksiyon tanımla içine de kendini koy.
Not: Başarılı, tebrik ederim.
 

blueybighat

Marangoz
Mesajlar
41
En iyi cevaplar
3
Beğeniler
10
Puanları
330
Skript diye girdim konuya fonksiyon yazmışsın hep. Fonksiyon görmek istesem matematik karıştırırdım ne bu böyle. Açıklamada da türev var zaten.... Sen git en iyisi A'dan B'ye bir fonksiyon tanımla içine de kendini koy.
Not: Başarılı, tebrik ederim.
Teşekkür ederim
 

Üst