• rabisu

    Reklam

Bedava 1v1ArenaSkript V2.3.0 - Artık 1v1 arenaları açmak çok kolay!

ToprakM

LifeMC
K. Moderatörü
Kabiliyet
Mesajlar
292
Beğeniler
364
Puanları
1,595
Ruh Hali
#1
Selam! Bu skript sayesinde standart arenalar yerine 1v1 yani 2 kişilik arena açabileceksiniz!
Kurulumu biraz karışık olabilir, bu yüzden aşağıda kurulumunu açıklayan bir spoiler var. Ona basabilirsiniz.
Çok uzatmadan koda geçiyorum;
JavaScript:
#
#
# Yapımcı / Producer by
# @ToprakM
#
#
# Herhangi bir yerde izinsiz paylaşılması kesinlikle yasaktır / Unauthorized sharing in any place is strictly prohibited
# Tüm hakları saklıdır © / All rights reserved ©
#
#
#1v1ArenaSkript V2.3.0
#

options:
    serveradi: ToprakM Server    #Serverinizin adı
    spawnkonum: 4 69 -480        #Arenadan çıkınca oyuncuların ışınlanmasını istediğiniz konum. Uyarı! Seçtiğiniz konum arenayla aynı haritada olmalıdır. Örnek: -688 15 -1785
    arenaickonum: 10 69 -480     #Arenanın içine ışınlanıldığında kullanılacak konum. Arena ve tabela aynı haritada olmalı. Örnek: -600 15 -1750

on rightclick on sign:
    if line 1 of the clicked block is "&41v1 Arena":
        set {1v1tabelakonum} to location of target block
        if {1v1kapali} is true:
            send "&4Hata! &cSistem bir yetkili tarafından geçici olarak kapatılmıştır! Lütfen daha sonra tekrar deneyiniz."
            if player has the permission "op":
                send "&2OP olduğunuz için gönderilmiştir: &aSistemi açmak için /1v1 Aç"
            stop
        if {1v1girdi::%player%} is not set:
            if {1v1bekleniyor} is not set:
                if {1v1bugfixstarted} is not set:
                    if {1v1girenkisi} > 2:
                        send "&4Hata! &cArenada zaten 2 kişi var ve arena 2 kişilik." to player
                        stop
                    else if {1v1girenkisi} is 2:
                        send "&4Hata! &cArenada zaten 2 kişi var ve arena 2 kişilik." to player
                        stop
                    else:
                        delete {1v1pvpkapali}
                        log "%player%: 1v1 Arenasına Girdi." to "1v1"
                        execute console command "tp %player% {@arenaickonum}"
                        send "&9&m-----&r &4&l1V1 Arena&r &9&m-----&r"
                        send "&1&l[&1Dikkat!&l] &c1v1 Arenaya Girdin" to player
                        send "&1&l[&1Dikkat!&l] &cÇıkmak için gerekenler:" to player
                        send "&1&l[&1Dikkat!&l] &cRakibini öldürmen &7veya" to player
                        send "&1&l[&1Dikkat!&l] &cRakibinin seni öldürmesi &7veya" to player
                        send "&1&l[&1Dikkat!&l] &c/1v1 Çık komutunu kullanmak &7veya" to player
                        send "&1&l[&1Dikkat!&l] &c/1v1 Pes komutu kullanmak ve rakibinle beraber pes etmek!" to player
                        send "&9&m-----&r &4&l1V1 Arena&r &9&m-----&r"
                        if {1v1giren1} is not set:
                            set {1v1giren1} to player
                        else if {1v1giren2} is not set:
                            set {1v1giren2} to player
                        else:
                            send "&cHata! &41V1sk.03 &cLütfen bu kodu kurucuya bildir."
                        set {1v1girdi::%player%} to true
                        add 1 to {1v1girenkisi}
                        wait 1 tick
                        delete {1v1pvpkapali}
                        set line 2 to "&1%{1v1girenkisi}%&a/&12"
                        if {1v1girenkisi} > 1:
                            set line 4 to "&4Arena Dolu"
                        else:
                            set line 4 to "&fBoş"
                else:
                    send "&4Hata! &c1v1 BugFix işlemi başlatıldı! Lütfen daha sonra tekrar dene!"
            else:
                send "&cHata! &d30 Saniye sonra tekrar dene!"
        else:
            send "&Hata 1V1sk.01! &cSaçma bir şeyler oldu! Garip... Eğer hata devam ederse yetkiliye ulaşmayı deneyebilirsin." to player
        
on command:
    if {1v1girdi::%player%} is true:
        if command is "feed" or "1v1":
            uncancel event
        else:
            send "&4Hata! &cBurada /Feed ve /1v1 haricinde hiçbir komut kullanamazsın!" to player
            cancel event
        
on death:
    if {1v1girdi::%victim%} is true:
        delete {1v1girdi::%victim%}
        send "&c{@serveradi}&8» &4&l1V1'i kaybettin!" to victim
        send "&c{@serveradi}&8» &f%victim% adlı oyuncu %attacker% ile girdiği 1v1'i kaybetti" to all players
        add 1 to {1v1zafer::%attacker%}
        add 1 to {1v1bozgun::%victim%}
    if {1v1girdi::%attacker%} is true:
        set {1v1bekleniyor} to true
        delete {1v1girdi::%attacker%}
        send "&c{@serveradi}&8» &4&l1V1'i kazandın!" to attacker
        send "&c{@serveradi}&8» &d&lIşınlanıyorsun, lütfen 30 saniye kadar burada bekle, &nsen çıkmadan kimse giremez merak etme." to {1v1giren1}
        send "&c{@serveradi}&8» &d&lIşınlanıyorsun, lütfen 30 saniye kadar burada bekle, &nsen çıkmadan kimse giremez merak etme." to {1v1giren2}
        set {1v1girenkisi} to 0
        set line 2 of block at {1v1tabelakonum} to "&1%{1v1girenkisi}%&a/&12"
        set line 4 of block at {1v1tabelakonum} to "&dBekleniyor"
        wait 30 second
        execute console command "tp %attacker% {@spawnkonum}"
        execute console command "tp %victim% {@spawnkonum}"
        send "&6&l1V1 arenasından çıkarılıyorsunuz..." to attacker
        delete {1v1giren1}
        delete {1v1giren2}
        delete {1v1kisi1pes}
        delete {1v1kisi2pes}
        wait 1 tick
        if {1v1girenkisi} > 1:
            set line 4 of block at {1v1tabelakonum} to "&4Arena Dolu"
        else:
            set line 4 of block at {1v1tabelakonum} to "&fBoş"
        delete {1v1bekleniyor}
        log "%attacker%: %victim% adlı oyuncuyu yendi ve 1v1'i kazandı." to "1v1"

on quit:
    if {1v1girdi::%player%} is true:
        set {1v1bekleniyor} to true
        delete {1v1girdi::%player%}
        remove 1 from {1v1girenkisi}
        set line 2 of block at {1v1tabelakonum} to "&1%{1v1girenkisi}%&a/&12"
        set line 4 of block at {1v1tabelakonum} to "&dBekleniyor"
        set {1v1cikti::%player%} to true
        send "&c{@serveradi}&8» &d&lIşınlanıyorsun, lütfen 30 saniye kadar burada bekle, &nsen çıkmadan kimse giremez merak etme." to {1v1giren2}
        send "&c{@serveradi}&8» &d&lIşınlanıyorsun, lütfen 30 saniye kadar burada bekle, &nsen çıkmadan kimse giremez merak etme." to {1v1giren1}
        wait 30 seconds
        loop {1v1girdi::*}:
            execute console command "tp %loop-index% {@spawnkonum}"
            delete {1v1girdi::%loop-index%}
        send "&6&l1V1 arenasından çıkarılıyorsunuz..." to {1v1giren2}
        send "&6&l1V1 arenasından çıkarılıyorsunuz..." to {1v1giren1}
        set {1v1girenkisi} to 0
        delete {1v1giren1}
        delete {1v1giren2}
        delete {1v1bekleniyor}
        delete {1v1kisi1pes}
        delete {1v1kisi2pes}
        set line 2 of block at {1v1tabelakonum} to "&1%{1v1girenkisi}%&a/&12"
        if {1v1girenkisi} > 1:
            set line 4 of block at {1v1tabelakonum} to "&4Arena Dolu"
        else:
            set line 4 of block at {1v1tabelakonum} to "&fBoş"
        log "%player%: 1v1 arenasındayken oyundan çıktı." to "1v1"
    
on connect:
    if {1v1cikti::%player%} is true:
        wait 1 tick
        execute console command "tp %player% {@spawnkonum}"
        send "&d1v1'deyken çıktın!" to player
        delete {1v1cikti::%player%}
    
on leftclick on sign:
    if line 1 of the clicked block is "&41v1 Arena":
        cancel event
        send "&4Hata! &cBunu kıramazsın!"

every second:
    if {1v1kisi2pes} is true:
        if {1v1kisi1pes} is true:
            if {1v1bekleniyor} is true:
                stop
            send "&d&lBaşarıyla 2 tarafta pes etti ve pvp bitti. Alanda pvp kapatıldı, 30 saniye sonra 2 tarafta ışınlanacak lütfen bekleyiniz." to {1v1giren2}
            send "&d&lBaşarıyla 2 tarafta pes etti ve pvp bitti. Alanda pvp kapatıldı, 30 saniye sonra 2 tarafta ışınlanacak lütfen bekleyiniz." to {1v1giren1}
            set {1v1pvpkapali} to true
            set {1v1bekleniyor} to true
            send "&c{@serveradi}&8» &d&lIşınlanıyorsun, lütfen 30 saniye kadar burada bekle, &nsen çıkmadan kimse giremez merak etme." to {1v1giren1}
            send "&c{@serveradi}&8» &d&lIşınlanıyorsun, lütfen 30 saniye kadar burada bekle, &nsen çıkmadan kimse giremez merak etme." to {1v1giren2}
            set {1v1girenkisi} to 0
            set line 2 of block at {1v1tabelakonum} to "&1%{1v1girenkisi}%&a/&12"
            set line 4 of block at {1v1tabelakonum} to "&dBekleniyor"
            wait 30 seconds
            loop {1v1girdi::*}:
                execute console command "tp %loop-index% {@spawnkonum}"
                send "&6&l1V1 arenasından çıkarılıyorsunuz..." to {1v1giren1}
                send "&6&l1V1 arenasından çıkarılıyorsunuz..." to {1v1giren2}
            log "%{1v1giren1}%: 1v1 arenasındayken rakibiyle ortaklaşa pes etti ve çıktı." to "1v1"
            log "%{1v1giren2}%: 1v1 arenasındayken rakibiyle ortaklaşa pes etti ve çıktı." to "1v1"
            delete {1v1giren1}
            delete {1v1giren2}
            delete {1v1kisi1pes}
            delete {1v1kisi2pes}
            loop {1v1girdi::*}:
                delete {1v1girdi::%loop-index%}
            wait 1 tick
            if {1v1girenkisi} > 1:
                set line 4 of block at {1v1tabelakonum} to "&4Arena Dolu"
            else:
                set line 4 of block at {1v1tabelakonum} to "&fBoş"
            delete {1v1pvpkapali}
            delete {1v1bekleniyor}
    
every second:
    if {1v1bugfixstarted} is not set:
        if {1v1girenkisi} < 0:
            invoke "1v1bugfix"
            log "BugFix: 1v1 arenasındaki oyuncu sayısı %{1v1girenkisi}%/2 olduğu için otomatik olarak bugfix başlatıldı." to "1v1-bugfix"
        if {1v1girenkisi} > 2:
            invoke "1v1bugfix"
            log "BugFix: 1v1 arenasındaki oyuncu sayısı %{1v1girenkisi}%/2 olduğu için otomatik olarak bugfix başlatıldı." to "1v1-bugfix"
        
sub "1v1bugfix":
    set {1v1bugfixstarted} to true
    set line 4 of block at {1v1tabelakonum} to "&4&lBugFix"
    set line 2 of block at {1v1tabelakonum} to "&1%{1v1girenkisi}%&a/&12"
    set {1v1girenkisi} to 0
    set {1v1pvpkapali} to true
    send "&b&l1V1 System - &cOlağanüstü bir durum yüzünden 1v1 sisteminde &lBugFix&r&c işlemi başlatıldı, alanda pvp kapatıldı. 30 saniye sonra spawna aktarılacaksınız. Lütfen bekleyiniz." to {1v1giren2}
    send "&b&l1V1 System - &cOlağanüstü bir durum yüzünden 1v1 sisteminde &lBugFix&r&c işlemi başlatıldı, alanda pvp kapatıldı. 30 saniye sonra spawna aktarılacaksınız. Lütfen bekleyiniz." to {1v1giren1}
    delete {1v1kisi1pes}
    delete {1v1kisi2pes}
    wait 30 seconds
    loop {1v1girdi::*}:
        execute console command "tp %loop-index% {@spawnkonum}"
        delete {1v1girdi::%loop-index%}
    send "&4&lBugFix &6&l1V1 arenasından çıkarılıyorsunuz..." to {1v1giren2}
    send "&4&lBugFix &6&l1V1 arenasından çıkarılıyorsunuz..." to {1v1giren1}
    delete {1v1giren1}
    delete {1v1giren2}
    set line 2 of block at {1v1tabelakonum} to "&1%{1v1girenkisi}%&a/&12"
    if {1v1girenkisi} > 1:
        set line 4 of block at {1v1tabelakonum} to "&4Arena Dolu"
    else:
        set line 4 of block at {1v1tabelakonum} to "&fBoş"
    delete {1v1pvpkapali}
    set line 1 of block at {1v1tabelakonum} to "&41v1 Arena"
    if {1v1kapali} is true:
        set line 4 of block at {1v1tabelakonum} to "&4&lKapalı"
    wait 1 second
    delete {1v1bugfixstarted}

command /1v1 [<text>]:
    trigger:
        if arg-1 is set:
            if arg-1 is "bugfix":
                if player has permission "1v1.yonet":
                    if {1v1bugfixstarted} is not set:
                        invoke "1v1bugfix"
                        send "&41v1 BugFix işlemi başlatıldı!"
                        log "BugFix: %player% adlı oyuncu manuel olarak BugFix işlemi başlattı." to "1v1-bugfix"
                    else:
                        send "&4Hata! &cİşlem zaten başlatılmış!"
                else:
                    send "&4Hata! &cYetkin yok."
            else if arg-1 is "on" or "aç" or "ac":
                if player has permission "1v1.yonet":
                    if {1v1kapali} is true:
                        if {1v1bugfixstarted} is not set:
                            delete {1v1kapali}
                            send "&2&l1v1 arenası başarıyla açıldı!" to player
                            invoke "1v1bugfix"
                            wait 5 ticks
                            set line 4 of block at {1v1tabelakonum} to "&4&lAçılıyor"
                            set line 2 of block at {1v1tabelakonum} to "&c▇▇▇▇▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇&c▇▇▇▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇&c▇▇▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇&c▇▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇&c▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇&c▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇▇&c▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇▇▇&c▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇▇▇▇&c▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇▇▇▇▇&c▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&1%{1v1girenkisi}%&a/&12"
                            log "%player%: Yetkili 1v1 Arenasını Açtı." to "1v1"
                        else:
                            send "&4Hata! &cŞuan bir BugFix işlemi devam ediyor, lütfen birazdan tekrar deneyiniz."
                    else:
                        send "&4Hata1 &c1v1 Zaten açık!"
                else:
                    send "&4Hata! &cYetkin yok."
            else if arg-1 is "off" or "kapa" or "kapat":
                if player has permission "1v1.yonet":
                    if {1v1kapali} is not set:
                        set {1v1kapali} to true
                        send "&2&l1v1 arenası başarıyla kapatıldı!" to player
                        log "%player%: Yetkili 1v1 Arenasını Kapattı." to "1v1"
                        invoke "1v1bugfix"
                    else:
                        send "&4Hata1 &c1v1 Zaten kapalı!"
                else:
                    send "&4Hata! &cYetkin yok."
            else if arg-1 is "bilgi":
                send "&m---------------------&r<&4&l1v1 Bilgi&f>&m---------------------&r" to player
                send "&b1v1 tabelasına basarak içeri girebilirsin. İçeride gönül rahatlığıyla 1v1 atabilirsin, 3. kişi istese de &nasla&r&b giremez. Çıkmak için 4 yol vardır, bunlardan biri içeride bir tek sen varsan /1v1 çık yazmandır. Eğer içeride sadece sen yoksan, 2. bir kişi (yani rakibin) de arenadaysa o zaman işler değişir. Çıkmak için 2 yöntem vardır. Bunlardan 1.'si ya senin ya da onun ölmesidir. Diğer bir yöntem ise /1v1 pes yazarak çıkmak için rakinden onay istemektir, eğer onay verirse 2 kişide biri ölmeden çıkabilir. Arenada sadece /1v1 ve /Feed komtuları kullanılabilir." to player
                send "&m---------------------&r<&4&l1v1 Bilgi&f>&m---------------------&r" to player
            else if arg-1 is "pes":
                if {1v1girdi::%player%} is true:
                    if {1v1girenkisi} is 2:
                        if {1v1giren1} is player:
                            if {1v1kisi1pes} is not set:
                                send "&d&l%{1v1giren1}% &d&o(Rakibin) &d&lPes etmek ve onu öldürmemeni istiyor, onaylıyorsan sen de /1v1 pes yazabilirsin, onaylamıyosan savaşa devam edebilirsin!" to {1v1giren2}
                                send "&dBaşarıyla pes etme isteği yolladın." to {1v1giren1}
                                set {1v1kisi1pes} to true
                            else:
                                send "&4Hata! Sen zaten pes etme isteği göndermişsin! Rakibinin cevabını beklemelisin!" to player
                        else if {1v1giren2} is player:
                            if {1v1kisi2pes} is not set:
                                send "&d&l%{1v1giren2}% &d&o(Rakibin) &d&lPes etmek ve onu öldürmemeni istiyor, onaylıyorsan sen de /1v1 pes yazabilirsin, onaylamıyosan savaşa devam edebilirsin!" to {1v1giren1}
                                send "&dBaşarıyla pes etme isteği yolladın." to {1v1giren2}
                                set {1v1kisi2pes} to true
                            else:
                                send "&4Hata! Sen zaten pes etme isteği göndermişsin! Rakibinin cevabını beklemelisin!" to player
                    else:
                        send "&4Hata! &cArenada tek başınayken çıkmak istiyorsan /1v1 Çık komutunu kullanmalısın!" to player
                else:
                    send "&4Hata! &cBu komut için 1V1 arenasında olmalısın!"
            else if arg-1 is "çık" or "cik":
                if {1v1girdi::%player%} is true:
                    if {1v1girenkisi} is not 2:
                        delete {1v1girdi::%player%}
                        remove 1 from {1v1girenkisi}
                        if {1v1giren1} is set:
                            delete {1v1giren1}
                        else if {1v1giren1} is set:
                            delete {1v1giren2}
                        execute console command "tp %player% {@spawnkonum}"
                        send "&41v1'den çıktın!"
                        delete {1v1kisi1pes}
                        delete {1v1kisi2pes}
                        set line 2 of block at {1v1tabelakonum} to "&1%{1v1girenkisi}%&a/&12"
                        log "%player%: 1v1 arenasından /1v1 Çık komutuyla çıktı." to "1v1"
                        if {1v1girenkisi} > 1:
                            set line 4 of block at {1v1tabelakonum} to "&4Arena Dolu"
                        else:
                            set line 4 of block at {1v1tabelakonum} to "&fBoş"
                    else:
                        send "&4Hata! &cArenada 2 kişi varken çıkamazsın." to player
                        send "&cÇıkmak için ikinizden birinin ölmesi gerek!" to player
                else:
                    send "&4Hata! &cBu komutu sadece 1v1 arenasının içinde, tek başınayken kullanabilirsin." to player
            else if arg-1 is "istatistik":
                if {1v1zafer::%player%} is not set:
                    set {_istzafer} to 0
                else:
                    set {_istzafer} to {1v1zafer::%player%}
                if {1v1bozgun::%player%} is not set:
                    set {_istbozgun} to 0
                else:
                    set {_istbozgun} to {1v1bozgun::%player%}
                set {_kazankaybet} to {_istzafer} / {_istbozgun}
                send "&m-----------------&4&l1v1 İstatistiklerin&f&m-----------------&r"
                send "&dKazanma: %{_istzafer}%"
                send "&dKaybetme: %{_istbozgun}%"
                send "&dKazanma/Kaybetme: %{_kazankaybet}%"
                send "&m-----------------&4&l1v1 İstatistiklerin&f&m-----------------&r"
            else:
                if player has permission "1v1.yonet":
                    send "&4Hata! &cKullanımı;"
                    send "&cAdmin komutları: &d/1v1 [Aç-Kapat-BugFix]"
                    send "&cOyuncu komutları: &d/1v1 [Bilgi-Pes-Çık-Istatistik]"
                else:
                    send "&4Hata! &cKullanım: /1v1 [Bilgi-Pes-Çık-İstatistik]"
        else:
            if player has permission "1v1.yonet":
                send "&4Hata! &cKullanımı;"
                send "&cAdmin komutları: &d/1v1 [Aç-Kapat-BugFix]"
                send "&cOyuncu komutları: &d/1v1 [Bilgi-Pes-Çık-Istatistik]"
            else:
                send "&4Hata! &cKullanım: /1v1 [Bilgi-Pes-Çık-İstatistik]"

on damage:
    if {1v1pvpkapali} is true:
        if {1v1girdi::%victim%} is true:
            cancel event
            send "&4Hata! &cŞuan 1v1'de PVP Kapalı!" to attacker

command /1v1ver:
    trigger:
        send "&d1v1ArenaSkript V2.3.0"
OK: Oyuncu komutu, AK: Admin komutu
  • /1v1 Çık - OK - 1v1 arenasında sadece 1 kişi varsa o kişi /1v1çık komutuyla çıkabilir. - Perm yok
  • /1v1 İstatistik - OK - 1v1 istatistiklerini gösterir. Kazanma, kaybetme vs. - Perm yok
  • /1v1 Pes - OK - Eğer 1v1 arenasında 2 kişi varsa ve 2'si de pes ederse 2 kişi de bu komutla arenadan çıkabilir. - Perm yok
  • /1v1 Bilgi - OK - Oyun içinden hızlı bilgi alma komutu. - Perm yok
  • /1v1 Aç/Kapat - AK - 1v1 arenasını açıp kapatmayı sağlayan komut. - 1v1.yonet yetkisi gerekir
  • /1v1 BugFix - AK - 1v1 arenası düşük bir ihtimal olsa da bozulabilir, bu komutla arenayı reloadlayabilirsiniz. 1v1.yonet yetkisi gerekir
  • Skript
  • WildSkript (Yüklemeniz önerilir)
  • Vault
  • skRayFall (Yüklemeniz önerilir)
  • SkQuery (Yüklemeniz önerilir)


Eğer içerisi boş ise veya 1 kişi varsa içeri girilebilir ve tabelada "Boş" yazar.




Eğer 1v1 arenası bir admin tarafından kapatıldıysa /1v1 komutuyla geri açılana dek kullanılamaz.


Arena açılırken yükleme ekranı gibi gözükür.



Arena doluysa "Arena dolu" yazar ve kimse içeri giremez.



/1v1 bilgi komutu
(Bu yazıdaki komutar V2.3.0 ile değiştirilmiştir. Oyunda farklılıklar olabilir.)




İçeride 3 oyuncunun gözükmesi gibi olmaması gereken anormal durumlarda sistem otomatik olarak kendini düzeltmeye ayarlanmıştır.



Arenaya girince çıkan bilgilendirme mesajı.
(Bu yazıdaki komutar V2.3.0 ile değiştirilmiştir. Oyunda farklılıklar olabilir.)



1v1 arenasında kullanılabilen komutlar sınırlıdır.
(Bu yazıdaki komutar V2.3.0 ile değiştirilmiştir. Oyunda farklılıklar olabilir.)


1549038752173.png

/1v1 istatistik komutu
  1. WorldGuardian gerekli pluginlerden kaldırıldı. Ek bir güvenlik sistemi olarak eklenmişti lakin gereksiz olduğu için silindi.
  1. Komutlar /1v1çık, /1v1pes, /1v1 aç gibi karışık kümeler halindeydi. Tek komuta ingirdendi. Artık bütün işlemleri /1v1 komutuyla yapabileceksiniz.
  2. /1v1 istatistik komutu eklendi.
  3. Komut değişikliklerinden dolayı bazı mesajlar düzenlendi.
Arena inşa etmek aslında çok kolaydır. Sadece birkaç yapılması gereken püf nokta vardır.
  1. Kimse tabela dışında içeri girip çıkamamalı. Yani etrafı kapalı olmalı ve içine ışınlanma engellenmeli.
  2. İstenirse izlemek için arenanın dışına bariyer, cam vs. konulup izletilebilir.
Kodda tam 4 adet ayar var.
  1. ayar serverin adını temsil ediyor oraya serverin adınız yazmalısınız.
  2. ayara 1v1 tabelasının bulunduğu yerin (warpın vs.) koordinatını giriyoruz. Oyuncu savaştan sonra bu koordinata gönderilecek. Not: Arena ve warpın haritası aynı olmalı.
  3. ayara 1v1 arenasının içinin koordinatını giriyoruz. Oyuncular 1v1 arenasına girmeye çalışınca buraya gönderilecek. Not: Arena ve warpın haritası aynı olmalı.
1v1 arenasına girmek için kullanılan tabelayı koymak ve kırmak. Not: Sadece 1 tabela koyulabilir. Koyulan son tabela güncellenecektir diğerleri normal tabela statüsüne geçecektir.
  1. Tabelayı arenanın bulunduğu haritada herhangi bir yere koyabilirsiniz.
  2. En üst satıra "&41v1 Arena" yazın.
  3. Tabelaya sağ tıkayın ve /1v1 çık komutunu kullanın.
İşte bu kadar! Kurulum bitti. İyi oyunlar.
Aralarında aslında keskin bir fark var. /1v1 çık arenada sadece siz varsanız otomatik olarak çıkmanızı sağlar. Lakin /1v1 pes arenada 2 kişi varsa çalışır ve pes etme işleminin gerçekleşmesi için diğer tarafın da komutu yazması gerekir yoksa savaş devam eder.
Şimdilik sadece 1 tane arena açabilirsiniz. Arttırılması ve sınırsız yapılması konusunda çalışmalar mevcuttur.

Eğer bir sorunla, hatayla karşılaşırsanız benimle iletişim kurabilirsiniz!
All other rights reserved.
 
Son düzenleme:

UgurS

Taş Madencisi
G. Moderatör
Mesajlar
65
Beğeniler
81
Puanları
470
Ruh Hali
#2
Gerçekten güzel gözüküyor. Benim bir sorum olacak. Sadece 1 arena mı oluşturulabiliyor?
 

ToprakM

LifeMC
K. Moderatörü
Kabiliyet
Mesajlar
292
Beğeniler
364
Puanları
1,595
Ruh Hali
#4
Güncellendi

WorldGuardian gerekli pluginlerden kaldırıldı. Ek bir güvenlik sistemi olarak eklenmişti lakin gereksiz olduğu için silindi.
 

ToprakM

LifeMC
K. Moderatörü
Kabiliyet
Mesajlar
292
Beğeniler
364
Puanları
1,595
Ruh Hali
#5
Güncellendi!
Komutlar /1v1çık, /1v1pes, /1v1 aç gibi karışık kümeler halindeydi. Tek komuta ingirdendi. Artık bütün işlemleri /1v1 komutuyla yapabileceksiniz.
/1v1 istatistik komutu eklendi.
Komut değişikliklerinden dolayı bazı mesajlar düzenlendi.
 

Thraenkost

Lapis Toplayıcısı
Mesajlar
937
Beğeniler
387
Puanları
1,630
Ruh Hali
#6
Güzel görünüyor. Yalnız tabela kurulurken biraz fazla beklemiyor muyuz ? :)
 

Thraenkost

Lapis Toplayıcısı
Mesajlar
937
Beğeniler
387
Puanları
1,630
Ruh Hali
#8
Kod:
set line 4 of block at {1v1tabelakonum} to "&4&lAçılıyor"
                            set line 2 of block at {1v1tabelakonum} to "&c▇▇▇▇▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇&c▇▇▇▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇&c▇▇▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇&c▇▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇&c▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇&c▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇▇&c▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇▇▇&c▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇▇▇▇&c▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇▇▇▇▇&c▇"
                            wait 3 seconds
Şu kısımdan bahsediyorum.
 

ToprakM

LifeMC
K. Moderatörü
Kabiliyet
Mesajlar
292
Beğeniler
364
Puanları
1,595
Ruh Hali
#9
Kod:
set line 4 of block at {1v1tabelakonum} to "&4&lAçılıyor"
                            set line 2 of block at {1v1tabelakonum} to "&c▇▇▇▇▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇&c▇▇▇▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇&c▇▇▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇&c▇▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇&c▇▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇&c▇▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇▇&c▇▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇▇▇&c▇▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇▇▇▇&c▇▇"
                            wait 3 seconds
                            set line 2 of block at {1v1tabelakonum} to "&a▇▇▇▇▇▇▇▇▇&c▇"
                            wait 3 seconds
Şu kısımdan bahsediyorum.
Pvp yaparken ışınlanmayı engelleyen eklentiler var. Çoğu sunucu bunlar kullanıyor. Bu eklentiler yüzünden arenadan oyuncuları çıkarmak için eklentinin süresi neyse o kadar beklemek gerekiyor. (Yaklaşık 15 20 saniye lakin ben n'olur n'olmaz diye 30 saniye yaptım.) Arena açılırken hata oluşmaması için BugFix adlı işlemi yürüttüğü için arena açılırken beklemek gerekiyor. Çoğu sunucuya uyumlu olması için böyle yaptım. Aslında bu kısım sadece tabelayı güncelliyor. Arkada yürütülen BugFix işlemi de var demin dediğim gibi.