bSK | Arkadaşlık Sistemi - Skript Beta Sürümünden Çıktı! - v1.2.1 - +2K Görüntülenme!

MrBat01

Altın madencisi
Katılım
30 May 2019
Mesajlar
139
Beğeni
15
Puanları
280
Merhaba minecraft-turkiye.com sakinleri!
Uzun zaman sonra yaptığım ufak ve basit arkadaşlık sistemi ile karşınızdayım.
1.2.1 sürümünün bilinen bir sorunu olmamakla beraber denenmiştir ve hataya rastlanmamıştır.
Skript bir güncelleme düzenine sahip değildir. Ne zaman sıkılırsam o zaman bir şeyler yazıyorum.

Skript 0.1 sürümünden bu yana çok daha iyi bir hal almıştır. Türkiye üzerinde yapılan muadilleri arasında en iyisi kendisidir belki :).
Skript sürümünüz 2.2dev29 ve üstünden biri olmalı sistemi tam anlamıyla kullanabilmek için.
GUI'ler için TuSKe gereklidir.
Diğer bilinen addonlarında yüklü olmasını tavsiye ederim, hangi addonun hangi işe yaradığı konusunda pek bilgili değilim.

Spigot

Komutlar:
/ark ekle <oyuncu> | Bir oyuncuya arkadaşlık isteği göndermeyi sağlar.
/ark kabul-et <oyuncu> | Bir oyuncudan gelen arkadaşlık isteğini kabul etmeye yarar. Bir oyuncu, bir seferde birden fazla istek alabilir. Bunları ayrı ayrı kabul edebilir.
/ark reddet <oyuncu> | Gelen arkadaşlık isteğini reddetmeye yarar.
/ark sil <oyuncu> | Bir oyuncu arkadaş listenizden çıkarmaya yarar.
/ark liste | Tüm arkadaşlarınızı ve arkadaşlık isteklerinizi bir GUI üzerinde gösterir. GUI üzerinde arkadaşlık isteğini red veya kabul edebilirsiniz. Arkadaşlık listesinin limiti 54'dür, sayfalama sistemi yapabilirsem bu limit artacaktır veyahut sonsuz olacaktır.
/ark msg <oyuncu> [<mesaj>] | Bir arkadaşınıza mesaj göndermeye yarar. Sadece arkadaşlarınıza mesaj atabilirsiniz.
/ark duyuru <mesaj> | Açık olan tüm arkadaşlarınıza aynı anda mesaj göndermeye yarar.
/ark bul <oyuncu> | Çevrimiçi olan bir arkadaşınıza TPA isteği atmak ve lokasyonunu görmek için kullanılır.
/ark ayarlar | Belirli kişisel sistem özelliklerini kapatıp açmak için kullanılır.

Bu sistem Skript 2.2dev32veya 2.2dev29'ya kadar olan alt sürümlerden biri ve TuSKe 1.8.2 gerektiren bir sistemdir.
Diğer klasik, her sunucunun kullandığı addonlarında yüklü olmasında fayda var. Yukarıda belirttiğim gibi tüm addonları %100 ezbere bilmiyorum.
Sitem üzerinde açarsanız tablar ile beraber alabilirsiniz, link:
Tıkla.

Kod:
Kod:
#Ayarlar

options:

    p: &2> &3Arkadaşlık Sistemi #1. prefix. Mesajların üstünde gözükür, /ark komutu örnektir.

    p2: &3Arkadaşlık Sistemi &2> #2. prefix. Mesajların başında gözükür.

    mp: &3Mesaj &2> #/ark msg komutunda gözüken prefix.

    bp: &3Bildirim &2> #Duyuru, giriş mesajı vb. yerlerde gözüken prefix.

#Komutlar

command /^jl:

    trigger:

        listAc(player, 2)

command /arkadaş [<text>] [<offlineplayer>] [<text>]:

    aliases: /ark, /fr, /friend, /dost

    trigger:

        arg-1 isn't set:

            send "{@p}"

            send "    &eYazıların üstüne tıklayarak komutun kullanımı görebilirsiniz."

            send "     <suggest command:/ark ekle>&f/ark ekle <oyuncu> &6/\ &eArkadaş eklemek için kullanılır."

            send "     <suggest command:/ark sil>&f/ark sil <oyuncu> &6/\ &eArkadaş silmek için kullanılır."

            send "     <suggest command:/ark kabul-et>&f/ark kabul-et <oyuncu> &6/\ &eArkadaşlık isteğini kabul etmek için kullanılır."

            send "     <suggest command:/ark reddet>&f/ark reddet &6/\ &eArkadaşlık isteğini reddetmek için kullanılır."

            send "     <suggest command:/ark liste>&f/ark liste &6/\ &eArkadaşlık isteklerini veya arkadaşlarınızı görmek için kullanılır."

            send "     <suggest command:/ark msj>&f/ark msj <oyuncu> [<mesaj>] &6/\ &eArkadaşlarınıza mesaj atmak için kullanılır. Bir mesaj girmezseniz sürekli o oyuncuyla sohbet edersiniz."

            send "     <suggest command:/ark duyuru>&f/ark duyuru &6/\ &eÇevrimiçi olan tüm arkadaşlarınıza gidecek bir duyuru yapmak için kullanılır."

            send "     <suggest command:/ark bul>&f/ark bul <oyuncu> &6/\ &eÇevrimiçi olan bir arkadaşınıza TPA isteği atmak ve lokasyonunu görmek için kullanılır."

            send "     <suggest command:/ark ayarlar>&f/ark ayarlar &6/\ &eBelirli kişisel sistem özelliklerini kapatıp açmayı sağlar &8(&6Mesaj alma vb.&8)&6."

            send "{@p}"

        else:

            arg-1 is "ekle":

                arg-2 is set:

                    arg-2 isn't "%player%":

                        size of {arkadaşlar.%arg-2%::*} isn't greater than 53:

                            size of {arkadaşlar.%player%::*} isn't greater than 53:

                                {arkadaşlar.%player%::%arg-2%} isn't set:

                                    set {ark.istek.%player%} to arg-2

                                    set {ark.ist.%arg-2%::%player%} to player

                                    send "{@p2} &f%arg-2% &6adlı oyuncuya arkadaşlık isteği gönderdin."

                                    send "{@p2} &f%player% &6adlı oyuncu sana arkadaşlık isteği gönderdi!" to arg-2

                                    send "{@p2} &6Kabul etmek için <cmd:/ark kabul-et %player%>&l&ntıkla!&r%nl%{@p2} &6Reddetmek için &l&n<cmd:/ark reddet %player%>tıkla!" to arg-2

                                else:

                                    send "{@p2} &cBu oyuncu zaten senin arkadaşın."

                            else:

                                send "{@p2} &cArkadaş listen dolu."

                        else:

                            send "{@p2} &f%arg-2% &cadlı oyuncunun arkadaş listesi dolu."

                    else:

                        send "{@p2} &cKendine arkadaşlık isteği gönderemezsin."

                else:

                    listAc(player, 3)

            arg-1 is "kabul-et":

                arg-2 is set:

                    {ark.ist.%player%::%arg-2%} is set:

                        delete {ark.istek.%arg-2%}

                        delete {ark.ist.%player%::%arg-2%}

                        set {arkadaşlar.%player%::%arg-2%} to arg-2

                        set {arkadaşlar.%arg-2%::%player%} to player

                        send "{@p2} &f%arg-2% &6adlı oyuncunun arkadaşlık isteğini kabul ettin!"

                        send "{@p2} &f%player% &6adlı oyuncu senin arkadaşlık isteğini kabul etti." to arg-2

                    else:

                        send "{@p2} &f%arg-2% &cadlı oyuncu sana arkadaşlık isteği göndermemiş."

                else:

                    send "{@p2} &cBir oyuncu ismi girmelisin."

            arg-1 is "reddet":

                arg-2 is set:

                    {ark.ist.%player%::%arg-2%} is set:

                        delete {ark.ist.%player%::%arg-2%}

                        delete {ark.istek.%arg-2%}

                        send "{@p2} &f%arg-2% &6adlı oyuncunun arkadaşlık isteğini reddettin!"

                        send "{@p2} &f%player% &6adlı oyuncu senin arkadaşlık isteğini reddetti." to arg-2

                    else:

                        send "{@p2} &f%arg-2% &cadlı oyuncu sana arkadaşlık isteği göndermemiş."

                else:

                    send "{@p2} &cBir oyuncu ismi girmelisin."

            arg-1 is "sil":

                arg-2 is set:

                    {arkadaşlar.%player%::%arg-2%} is set:

                        delete {arkadaşlar.%player%::%arg-2%}

                        delete {arkadaşlar.%arg-2%::%player%}

                        send "{@p2} &f%player% &6adlı oyuncu seni arkadaşları arasından çıkardı." to arg-2

                        send "{@p2} &f%arg-2% &6adlı oyuncuyu arkadaşların arasından çıkardın."

                    else:

                        send "{@p2} &cBu kişi senin arkadaşın değil."

                else:

                    send "{@p2} &cBöyle bir oyuncu yok."

            arg-1 is "liste":

                open virtual chest inventory with 1 rows named "&eArkadaşların" to player

                make gui slot 3 of player with mob head item named "&6Arkadaşların" with lore "&3Toplam &f%size of {arkadaşlar.%player%::*}% &3arkadaşın var." to close then run function listAc(player, 1)

                make gui slot 5     of player with zombie head named "&6İsteklerin" with lore "&3Toplam &f%size of {ark.ist.%player%::*}% &3arkadaşlık isteğin var." to close then run function listAc(player, 2)

                make gui slot 8 of player with 76 named "&cAyarlar" to close then run function listAc(player, 4)

            arg-1 is "msg" or "msj" or "mesaj":

                arg-2 is set:

                    {arkadaşlar.%player%::%arg-2%} is set:

                        arg-2 is online:

                            {arkayar.%arg-2%::msg} isn't set:

                                arg-3 is set:

                                    send "{@mp} <suggest command:/ark msg %player%>&f&n%player%&r &6-> &fSen: &b%uncolored arg-3%" to arg-2

                                    send "{@mp} &fSen &6-> <suggest command:/ark msg %arg-2%>&f&n%arg-2%&r: &b%uncolored arg-3%"

                                else:

                                    #send "{@p2} &cBir mesaj gir."

                                    set {süreklimesaj.%player%} to arg-2

                                    send "{@p2} &6Artık &f%arg-2% &6adlı oyuncuyla sohbet ediyorsun.%nl%{@p2} &6Komut kullanmadan sohbete yazarsan yazdığın mesaj ona gidicek.%Nl%{@p2} <cmd:/ark sohbet>&f&n/ark sohbet&r &6yazarak sohbetten çıkabilirsin."

                            else:

                                send "{@p2} &cBu arkadaşın mesaj alma özelliğini kapatmış."

                        else:

                            send "{@p2} &cBu oyuncu çevrimiçi değil."

                    else:

                        send "{@p2} &cBu oyuncu arkadaşların arasında değil.%nl%{@p2} &cArkadaşlarını öğrenmek için &f/arkadaş liste"

                else:

                    send "{@p2} &cBir oyuncu ismi girmelisin."

            arg-1 is "duyuru":

                arg-2 is set:

                    arg-3 is set:

                        {arkadaşlar.%player%::*} is set:

                            send "{@bp} <suggest command:/ark msg %player%>&f%player%&r'in &6duyurusu:%nl%{@bp} &b%arg-2% %arg-3%" to player and {arkadaşlar.%player%::*}

                        else:

                            send "{@p2} &cHiç arkadaşın yok."

                    else:

                        {arkadaşlar.%player%::*} is set:

                            send "{@bp} <suggest command:/ark msg %player%>&f%player%&r'in &6duyurusu:%nl%{@bp} &b%arg-2%" to player and {arkadaşlar.%player%::*}

                        else:

                            send "{@p2} &cHiç arkadaşın yok."

                else:

                    send "{@p2} &cBir duyuru mesajı girmelisin."

            arg-1 is "bul":

                arg-2 is set:

                    {arkadaşlar.%player%::%arg-2%} is set:

                        arg-2 is online:

                            send "{@p}%nl%     &f<suggest command:/tpa %arg-2%>&n%arg-2%&r &eadlı oyuncunun lokasyonu:%nl% %nl%      &bX: &f%x coords of arg-2% %nl%      &bY: &f%y coords of arg-2% %nl%      &bY: &f%z coords of arg-2% %nl%      &bBulunduğu dünya: &f%world of arg-2% %nl% %nl%{@p}"

                        else:

                            send "{@p2} &cBu oyuncu çevrimiçi değil."

                    else:

                        send "{@p2} &cBu oyuncu arkadaşların arasında değil.%nl%{@p2} &cArkadaşlarını öğrenmek için &f/arkadaş liste"

                else:

                    send "{@p2} &cBir oyuncu ismi girmelisin." 

            arg-1 is "ayarlar":

                listAc(player, 4)

            arg-1 is "sohbet":

                {süreklimesaj.%player%} is set:

                    delete {süreklimesaj.%player%}

                    send "{@p2} &6Özel sohbetten çıktın."

                else:

                    send "{@p2} &cZaten özel sohbette değilsin."

            arg-1 isn't "ekle" or "duyuru" or "msg" or "liste" or "reddet" or "kabul-et" or "sil" or "bul" or "ayarlar" or "msj" or "sohbet":

                send "{@p2} &cHatalı komut kullandınız, komut listesi için &f/ark &ckomutunu kullanın."

#Eventler

chat:

    {süreklimesaj.%player%} is set:

        {süreklimesaj.%player%} is online:

            cancel event

            send "{@mp} <suggest command:/ark msg %player%>&f&n%player%&r &6-> &fSen: &b%uncolored message%" to {süreklimesaj.%player%}

            send "{@mp} &fSen &6-> <suggest command:/ark msg %{süreklimesaj.%player%}%>&f&n%{süreklimesaj.%player%}%&r: &b%uncolored message%"

        else:

            send "{@p2} &f%{süreklimesaj.%player%}% &caktif değil.%nl%{@p2} &cÖzel sohbetten çıkılıyor."

            execute player command "ark sohbet"

drop:

    {hediyeatıyo.%player%} is set:

        cancel event

        give event-item to {hediyeatıyo.%player%}

        msgAt(player, "{@bp} &f%{hediyeatıyo.%player%}% &6adlı oyuncuya bir hediye verdin.")

        msgAt({hediyeatıyo.%player%}, "{@bp} &f%player% &6adlı oyuncu sana bir hediye gönderdi.")

        delete {hediyeatıyo.%player%}

        wait 0.1 second

        remove event-item from player

join:

    {arkayar.%player%::girişuyarı} isn't set:

        {ark.ist.%player%::*} is set:

            send "{@p}%nl%   &f%size of {ark.ist.%player%::*}% &6adet arkadaşlık isteğin var!%nl%   &6Görmek için <cmd:/^jl>&l&nburaya tıkla!&r%nl%{@p}"

        else:

            send "{@p2} &cSen çevrimdışı iken hiç arkadaşlık isteği gelmemiş :/."

        {arkadaşlar.%player%::*} is set:

            send "{@bp} &f%player% &6adlı arkadaşın çevrimiçi oldu!%nl%{@bp} &6Ona mesaj atmak için <suggest command:/ark msg %player% Hoş geldin!>&l&nburaya tıkla!" to {arkadaşlar.%player%::*}

        else:

            send "{@p2} &cHiç arkadaşın yok, biraz sosyalleşmelisin :/."

rightclick on entity:

    {arkadaşlar.%player%::%clicked entity%} is set:

        arkclickgUI(player, clicked entity)

    {ark.ist.%player%::%clicked entity%} is set:

        istGUI(player, clicked entity)

#Fonksiyonlar - Sistemin bel kemikleri.

function listAc(p: player, t: integer):

    {_p} is set:

        {_t} is 1:

            {arkadaşlar.%{_p}%::*} is set:

                open virtual chest inventory with 6 rows named "&eArkadaşların" to {_p}

                set {_n} to 0

                loop {arkadaşlar.%{_p}%::*}:

                    loop-value is online:

                        set {_l} to loop-value

                        make gui slot {_n} of {_p} with skull of loop-value named "&e%loop-value%" with lore "&aDurum: &f&lÇevrimiçi||&6Arkadaşların arasından silmek için||&6Sağ tıkla." to run using right:

                            close player's inventory

                            execute {_p} command "ark sil %{_l}%"

                        add 1 to {_n}

                    else:

                        set {_l} to loop-value

                        make gui slot {_n} of {_p} with skull of loop-value named "&c%loop-value%" with lore "&aDurum: &f&lÇevrimdışı||&6Arkadaşların arasından silmek için||&6Sol tıkla." to run using right:

                            close {_p}'s inventory

                            execute {_p} command "ark sil %{_l}%"

                        add 1 to {_    n}

            else:

                send "{@p2} &cHiç arkadaşın yok :/.%nl%{@p2} &cBiraz sosyalleşmelisin." to {_p}

    {_t} is 2:

        {ark.ist.%{_p}%::*} is set:

            open virtual chest inventory with 6 rows named "&eİsteklerin" to {_p}

            set {_n} to 0

            loop {ark.ist.%{_p}%::*}:

                loop-value is online:

                    set {_l} to loop-value

                    make gui slot {_n} of {_p} with skull of loop-value named "&e%loop-value%" with lore "&aDurum: &f&lÇevrimiçi||&6Tıklayarak kabul veya reddet." to run:

                        close {_p}'s inventory 

                        istGUI({_p}, {_l})

                    add 1 to {_n}

                else:

                    set {_l} to loop-value

                    make gui slot {_n} of {_p} with skull of loop-value named "&c%loop-value%" with lore "&aDurum: &f&lÇevrimdışı||&6Tıklayarak kabul veya reddet." to run:

                        close {_p}'s inventory

                        istGUI({_p}, {_l})

                    add 1 to {_n}

        else:

            send "{@p2} &cHiç arkadaşlık isteğin yok :/.%nl%{@p2} &cBiraz sosyalleşmelisin." to {_p}

    {_t} is 3:

        open virtual chest inventory with 6 rows named "&6Aktif Oyuncular" to {_p}

        set {_ps} to 0

        set {_sa} to size of all players

        {_sa} > 1:

            loop all players:

                loop-player isn't {_p}:

                    set {_p2} to loop-player

                    make gui slot {_ps} of {_p} with skull of {_p2} named "&e%loop-player%" with lore "&6Arkadaşlık isteği atmak için tıkla!" to run:

                        close {_p}'s inventory

                        execute {_p} command "ark ekle %{_p2}%"

                    add 1 to {_ps}

                    {_ps} is 54 or size of all players:

                        stop

        else:

            close {_p}'s inventory

            send "{@p2} &cSunucuda çok az kişi var.%nl%{@p2} &cDaha fazla kişi olduğunda GUI üzerinden arkadaş ekleyebilirsin." to {_p}

    {_t} is 4:

        open chest with 1 rows named "&3Arkadaşlık Sistemi &6- &3Ayarlar" to {_p}

        {arkayar.%{_p}%::msg} isn't set:

            make gui slot 0 of {_p} with emerald block named "&6Arkadaşlardan gelen mesaj" with lore "&3Durum: &fAlıyorsun" to close then run function arkAyar({_p}, 1, "alma")

        else:

            make gui slot 0 of {_p} with redstone block named "&6Arkadaşlardan gelen mesaj" with lore "&3Durum: &fAlmıyorsun" to close then run function arkAyar({_p}, 1, "delete")

        {arkayar.%{_p}%::girişuyarı} isn't set:

            make gui slot 1 of {_p} with emerald block named "&6Giriş uyarı mesajları" with lore "&3Durum: &fAlıyorsun" to close then run function arkAyar({_p}, 2, "delete")

        else:

            make gui slot 1 of {_p} with redstone block named "&6Giriş uyarı mesajları" with lore "&3Durum: &fAlmıyorsun" to close then run function arkAyar({_p}, 2, "alma")

        make gui slot 8 of {_p} with barrier named "&cGeri dön" to close then run {_p} command "ark liste"

function arkAyar(p: player, s: integer, t: text):

    {_s} is 1:

        {_t} isn't "delete":

            set {arkayar.%{_p}%::msg} to {_t}

            msgAt({_p}, "{@bp} &6Artık arkadaşlarından mesaj almayacaksın.")

        else:

            delete {arkayar.%{_p}%::msg}

            msgAt({_p}, "{@bp} &6Artık arkadaşlarından mesaj alacaksın.")

    {_s} is 2:

        {_t} is "alma":

            delete {arkayar.%{_p}%::girişuyarı}

            msgAt({_p}, "{@bp} &6Artık giriş yaptığında uyarı mesajları alacaksın.")

        else:

            set {arkayar.%{_p}%::girişuyarı} to {_t}

            msgAt({_p}, "{@bp} &6Artık giriş yaptığında uyarı mesajları almayacaksın.")

    execute {_p} command "ark ayarlar"

function arkclickgUI(p: player, p2: player):

    open chest with 1 rows named "&9%{_p2}% &3- &9Arkadaşlık Menüsü" to {_p}

    make gui slot 0 of {_p} with skull of {_p2} named "&9%{_p2}%" to close then run function msgAt({_p}, "&6Arkadaşınla iyi geçin, arkadaşlar değerlidir.")

    make gui slot 1 of {_p} with diamond named "&eYanına davet et &6- &f%{_p2}%" to close then run function msgAt({_p2}, "{@bp} &f%{_p}% &6adlı arkadaşın seni yanına davet ediyor.%nl%{@bp} &6Lokasyonu: &f%location of {_p}% %nl%{@bp} &6Dünyası: &f%world of {_p}%")

    make gui slot 2 of {_p} with emerald named "&eHediye ver &6- &f%{_p2}%" to close then run function hediyeS({_p}, {_p2})

    make gui slot 8 of {_p} with barrier named "&cArkadaşlıktan Çıkar &6- &c%{_p2}%" to close then run {_p} command "ark sil %{_p2}%"

function istGUI(p: player, a: player):

    open virtual chest inventory with 1 rows named "&6Arkadaşlık İsteği" to {_p}

    make gui slot 3 of {_p} with emerald block named "&a&lKabul et" to close then run {_p} command "ark kabul-et %{_a}%"

    make gui slot 4 of {_p} with skull of {_a} named "&6%{_a}%"

    make gui slot 5 of {_p} with redstone block named "&c&lReddet" to close then run {_p} command "ark reddet %{_a}%"

function msgAt(p: player, t: text):

    send colored {_t} to {_p}

function hediyeS(p: player, p2: player):

    set {hediyeatıyo.%{_p}%} to {_p2}

    send "{@bp} &f%{_p2}% &6adlı oyuncuya vermek istediğin hediyeyi &f10 &6saniye içinde yere at." to {_p}

    wait 10 second

    delete {hediyeatıyo.%{_p}%}
 

calmahayvan

Oduncu
Katılım
15 Eyl 2020
Mesajlar
2
Beğeni
0
Puanları
10
ya birde yüzsüz gibi emek verdim diyorsun ? skript sana ait değil başkasına ait gelip burda paylaşıyorsun
insanların hakkını çalmakla birşeyler yapamazsın
yazık kafama diyip ayrılıyorum
 
Üst