[SK] Süreli VIP! - v1.1fix2 - Yeni sistemlerin temeli atıldı,sorunlar düzeltildi! - Betadan çıktı!

xEndlessV2

Elmas Madencisi
En iyi cevaplar
0

Merhaba dostlar!
@Yiğit_bee adlı arkadaşın isteği üzerine tasarladığım bu skript,VipZero gibi pluginlerin yerini tutuyor.
Ancak diğer skriptlerdeki gibi sadece oyunda olan oyuncuların süresinden silmiyor,her dakika listedeki oyuncunun süre değerinden 1 adet azaltıyor.
Geliştirme aşamasından çıktı,bilinen tüm buglar düzeltildi.VipZero'nun yerini tutar mı bilmiyorum ancak şuanda süre ile vip verme işini görüyor.
Unutmayın ki bilmediğim buglar,test etmediğim şeyler var.Siz bildirdikçe ben geliştirmeye devam edicem.

Bir oyuncuya süreli vip vermek için: /vipsistemi <vipadı> <oyuncuadı> <süre>
Vip verilmiş oyuncunun süresini sıfırlamak ve vipini almak için: /vipsistemi sil <isim>
Vip verilmiş oyuncunun süresini yeniden ayarlamak için: /süreayarla <oyuncuadı> <süre>
Vip verilmiş oyuncunun süresini sınırsız yapmak için: /süreayarla <oyuncuadı> sınırsız
Tüm vip verilmiş oyuncuları silmek için: /vipsistemi tümünüsil
Tüm vip verilmiş oyuncuları görmek için: /vipsistemi liste
Oyuncunun vip süresi bittiğinde döneceği grubu belirlemek için: /oyuncugrubu <grupadı>

Unutmayın ki every 1 minutes: eventi skriptin ilk loadından sonra her 1 dakikada kontrol etmesini sağlar.
Yani oyuncu vipi aldıktan 1 dakika sonra vip süresini azaltmaz,üstte anlattığım mantıkta azaltır.
Henüz yeni bir tasarım olduğu için bugları olabilir.
Hastebin:
Linki görebilmek için üye olmanız gerekiyor. Giriş yap veya üye ol.
Kod:
options:
    p: &a&lVIPTIMER
command /vipsistemi [<text>] [<text>] [<integer>]:
    permission: vip.admin
    trigger:
        if arg-1 isn't set:
            send "&c&m------------- &r {@p} &c&m-------------"
            send "{@p} &c> &bBir oyuncuya süreli vip vermek için&8;%nl%&e/vipsistemi &b<grupadı> <oyuncu> <süre>"
            send "{@p} &c> &bVip verilmiş oyuncuyu listeden silmek ve vipini almak için&8;%nl%&e/vipsistemi &b<sil> <oyuncu>"
            send "{@p} &c> &bOyuncunun vipi alındığında döneceği grubu belirlemek için&8;%nl%&e/oyuncugrubu &b<grupadı>"
            send "{@p} &c> &bTüm vip verilmiş oyuncuları görmek için&8;%nl%&e/vipsistemi liste"
            send "{@p} &c> &bOyuncunun vip süresini düzenlemek için&8;%nl%&e/süreayarla &b<oyuncu> <süre>"
            send "{@p} &c> &bOyuncunun vip süresini sınırsız yapmak için&8;%nl%&e/süreayarla &b<oyuncu> &esınırsız"
            send "&c&m------------- &r {@p} &c&m-------------"
        if arg-1 is set:
            if arg-1 is "sil":
                if arg-2 is set:
                    if {vips::%arg-2%} is set:
                        remove arg-2 from {vips::*}
                        send "{@p} &c> &e%arg-2% &badlı oyuncunun vipi &e%{vip.süre.%arg-2%}% &bdakika süresi kalmışken elinden alındı."
                        delete {vips::%arg-2%}
                        delete {vip.süre.%arg-2%}
                    else:
                        send "{@p} &c> &bBu oyuncuya vip verilmemiş!"
                else:
                    send "{@p} &c> &bBir oyuncu ismi girmelisin."
            else if arg-2 is set:
                if arg-3 is set:
                    if {vips::%arg-2%} isn't set:
                        set {vips::%arg-2%} to arg-2
                        set {vip.süre.%arg-2%} to arg-3
                        send "{@p} &c> &e%arg-2% &badlı oyuncu &e%arg-3% &bdakika boyunca &e%arg-1% &bvipine sahip olucak."
                        execute player command "/manuadd %arg-2% %arg-1%"
                    else:
                        send "{@p} &c> &bBu oyuncu zaten bir vipe sahip."
                else:
                    send "{@p} &c> &bBir süre girmelisin."
            if arg-1 is "liste":
                if {vips::*} is set:
                    send "{@p} &c> &bVIP Listesi&8;"
                    loop {vips::*}:
                        send "{@p} &c> &e%loop-value%'nin kalan süresi: &a%{vip.süre.%loop-value%}%"
                else:
                    send "{@p} &c> &bHiçbir oyuncu vip almamış!"
            if arg-1 is "tümünüsil":
                delete {vips::*}
                send "{@p} &c> &bTüm vip kayıtları silindi!"
            if arg-1 is "süreayar":
                if {süre.ayar} isn't set:
                    set {süre.ayar} to true
                    send "{@p} &c> &bArtık oyuncu aktif değilken vip süresi gitmeyecek."
                else if {süre.ayar} is true:
                    set {süre.ayar} to false
                    send "{@p} &c> &bArtık oyuncu aktif değilken vip süresi gidecek."
                else if {süre.ayar} is false:
                    set {süre.ayar} to true
                    send "{@p} &c> &bArtık oyuncu aktif değilken vip süresi gitmeyecek."
command /süreayarla [<player>] [<text>]:
    permission: vip.admin
    trigger:
        if arg-1 is set:
            if {vips::%arg-1%} is set:
                if arg-2 is set:
                    if arg-2 parsed as integer is integer:
                        set {vip.süre.%arg-1%} to arg-2
                        send "{@p} &c> &e%arg-1% &badlı oyuncunun vip süresi &e%arg-2% &bdakika olarak ayarlandı."
                    else if arg-2 is "sınırsız":
                        delete {vip.süre.%arg-1%}
                        send "{@p} &c> &e%arg-1% &badlı oyuncunun vip süresi &esınırsız &byapıldı."
                    else:
                        send "{@p} &c> &bBir süre girmelisin."
                else:
                    send "{@p} &c> &bBir süre girmelisin."
            else:
                send "{@p} &c> &bBu oyuncu bir vip satın almamış!"
        else:
            send "{@p} &c> &bBir oyuncu ismi girmelisin."
command /oyuncugrubu [<text>]:
    permission: vip.admin
    trigger:
        if arg-1 is set:
            set {normal.grup} to arg-1
            send "{@p} &c> &bNormal grup &e%arg-1% &bolarak ayarlandı."
        else:
            send "{@p} &c> &bBir grup ismi girmelisin."
command /vipsürem:
    trigger:
        if {vips::%player%} is set:
            send "{@p} &c> &bSatın aldığın vipin süresinin dolmasına &e%{vip.süre.%player%}% &bdakika var."
        else:
            send "{@p} &c> &bBir vip satın almamışsın!"
every 1 minutes:
    if {vips::*} is set:
        loop {vips::*}:
            set {vip.süre.%loop-value%} to "%{vip.süre.%loop-value%}-1%"
            if {vip.süre.%loop-value%} is 0 or 1 or -1 or -2:
                delete {vip.süre.%loop-value%}
                remove loop-value from {vips::*}
                send "{@p} &c> &e%loop-value% &bisimli oyuncunun vipinin süresi dolduğu için yeniden &e%{normal.grup}% &bgrubuna döndü." to players
                execute console command "manuadd %loop-value% %{normal.grup}%"

 
Son düzenleme:

Yiğit_bee

Zombi Katili
En iyi cevaplar
0
Baya güzel olmuş teşekkürler hakketten işime yarıyacak.
Ayrıca:
Kod:
send "{@p} &c> &bMaalesef vipinin süresi doldu,bu yüzden yeniden &e%{normal.grup}% &bgrubuna döndün." to {_oyuncu}
Kısmında duyuru yapmak için:
Kod:
send "{@p} &c> &e%{_oyuncu}% &badli oyuncunun VIP'i bitti!" to players
Bu şekilde ekleyebiliriz heralde
 
Son düzenleme:

xEndlessV2

Elmas Madencisi
En iyi cevaplar
0
Baya güzel olmuş teşekkürler hakketten işime yarıyacak.
Ayrıca:
Kod:
send "{@p} &c> &bMaalesef vipinin süresi doldu,bu yüzden yeniden &e%{normal.grup}% &bgrubuna döndün." to {_oyuncu}
Kısmında duyuru yapmak için:
Kod:
send "{@p} &c> &e%{_oyuncu}% &badli oyuncunun VIP'i bitti!" to players
Bu şekilde ekleyebiliriz heralde
Aynen,o şekilde değiştirebilirsin.

Skript güncellendi!
Süre konusunda bir sorun yaşanmıyor artık.
upload_2017-2-24_7-29-43.png

Beyaz kısımlar tarihi gösteriyor.
Eğer eklememi istediğiniz bir şey olursa söyleyiniz.

Ufak tefek yazım hataları çözüldü.
Şuanda süre ile alakalı hiçbir sorun yok.

Bu akşam ekleyeceğim sistemde oyuncu aktif değilken vip süresinin gidip gitmemesi ayarlanabilecek.
 

Umut Savas

Ne demek yanlış? Ben mi?
En iyi cevaplar
0
every 1 minutes olması çok saçma bir şey ben vipimin ne zaman gidiceğini saniye farkıyla öğrenmek isterim

birde takıldığım bir şey var
/vipsistemi türkçe iken
/setdefaultgrup bu niye ingilizce
 

xEndlessV2

Elmas Madencisi
En iyi cevaplar
0
every 1 minutes olması çok saçma bir şey ben vipimin ne zaman gidiceğini saniye farkıyla öğrenmek isterim

birde takıldığım bir şey var
/vipsistemi türkçe iken
/setdefaultgrup bu niye ingilizce
Komutları şimdilik kafama göre yazdım,bu akşam hepsini tek komutta topluycam.
Dakika,saniye,salise,gün,ay,yıl hiç farketmez ancak yakında zamanı dahada geliştiririm.

Sizler yüzünden sınırsız vip alamıyoruz !1
Doğukan dostum iyi akıl ettin bunu,sınırsızıda yaparım :D.

Çok anlamsız,saçma bir hata var şuanda.
Sabah kullandığım set {vip.süre.%loop-value%} to {vip.süre.%loop-value%}-1 şu anda çalışmıyor,loop-value'nin süresini direk olarak -1 yapıyor.
Biraz zorlayacak sorunsuz yapmak.
 

LifeMCServer

Nether Yerlisi
En iyi cevaplar
98
Güzel olmuş. Vip listesini en uzun vip süresi olan'dan en az olana doğru sıralasa (ya da tam tersi) daha iyil olabilir.
 

xEndlessV2

Elmas Madencisi
En iyi cevaplar
0
Güzel olmuş. Vip listesini en uzun vip süresi olan'dan en az olana doğru sıralasa (ya da tam tersi) daha iyi olabilir.
RandomSK gibisinden bi addon gerekir onun için,ama denerim.
Teşekkürler.
Skripti konudaki halinden sonra geliştirmiştim fakat süre bugu olduğu için konudaki halinden devam edicem,güncelleme gecikecek.

Ufak düzeltmeler yapıldı.
Aktif değilken süre gidip gitmemesinin temelleri atıldı.
Şuanda hiçbir sorun bulunmamaktadır.
/vipsistemi komutunda argumentlerden dolayı hatalı mesaj atabiliyor,büyük bir sorun değil.
Yakında onuda düzeltirim.

Süreyi yeniden ayarlamada bulunan yazım yanlışı düzeltildi.

Kodda yeniden süre sorunu oluşmuş,daha yeni düzeltmiştim.
Anlayamıyorum bunu,süre silme mantığı aynı,niye böyle yapıyor olabilir ki?

Sorun düzeltildi.
 

Yiğit_bee

Zombi Katili
En iyi cevaplar
0
Skript çok güzel sınırsız vermeyide ekle bi kenara ayrıca dakika en uygun zaman birimi başarılar.
 

xEndlessV2

Elmas Madencisi
En iyi cevaplar
0

Yiğit_bee

Zombi Katili
En iyi cevaplar
0
Bir sonraki güncellemede sadece oplar bunu uygulayabilsin güvenlik için ayrıca help bölümü chestte yani gui miydi hatırlamıyorum öyle yaparsan şık gözükür. Tekrardan çok yararlı bir skript olmuş sağol.

Ayrıca;
/süreayarla <oyuncu> <süre> kısmında artık oyuncunun yeni süresini oluyor değilmi arttırılabilir ve azaltılabilir?

- 1 Aylık vermek isteyenler için dakika -
( 43200 )
 
Son düzenleme:
Üst