Skripti kısaltıp daha verimli bir şekle sokamadım. Tek bir kod üzerinden 5 basamak yönetmek ?

ZsCraft

Kızıltaş Madencisi
En iyi cevaplar
0
Skript şu şekilde;

Kod:
Options:
    AteşTopuSüre-1: 10 seconds
    AteşTopuGSüre-1: 2 second
    AteşTopuHız-1: 0.5

    AteşTopuSüre-2: 5 seconds
    AteşTopuGSüre-2: 1 seconds
    AteşTopuHız-2: 2


on rightclick with paper:
    player is holding paper of unbreaking 1 named "&aAteş Topu" with lore "Yanan bir top fırlatırsınız." and "&cBekleme Süresi: {@AteşTopuSüre-1}, {@AteşTopuSüre-2}" and "&cGerçekleştirme Süresi: {@AteşTopuGSüre-1}, {@AteşTopuGSüre-2}" and "&cHız: {@AteşTopuHız-1}, {@AteşTopuHız-2}" and " " and "&8&oBir zamanların göz alıcı büyüsü...":
        if {basit.dil.%player%} is set:

            if {basit.dil.seviye.%player%} is 1:

                if {büyü.gerçekleştirilmiyorsa.%player%} is not set:
                    set {_bekle.ateştopu.%player%} to difference between {cd.ateştopu.%player%} and now
                    if {_bekle.ateştopu.%player%} is less than {@AteşTopuSüre-1}:
                        message "&c- Büyü %difference between {@AteşTopuSüre-1} and {_bekle.ateştopu.%player%}% sonra aktif olacak!"
                        stop
                    set {cd.ateştopu.%player%} to now
                    set {büyü.gerçekleştirilmiyorsa.%player%} to 1
                    send "bilmem ne efektleri" to player
                    wait {@AteşTopuGSüre-1}
                    delete {büyü.gerçekleştirilmiyorsa.%player%}
                    shoot a fireball from the player at speed {@AteşTopuHız-1}
                else:
                    send "&cBir büyü gerçekleştirirken başka bir büyü yapamazsın!" to player
                    stop

            if {basit.dil.seviye.%player%} is 2:

                if {büyü.gerçekleştirilmiyorsa.%player%} is not set:
                    set {_bekle.ateştopu.%player%} to difference between {cd.ateştopu.%player%} and now
                    if {_bekle.ateştopu.%player%} is less than {@AteşTopuSüre-2}:
                        message "&c- Büyü %difference between {@AteşTopuSüre-2} and {_bekle.ateştopu.%player%}% sonra aktif olacak!"
                        stop
                    set {cd.ateştopu.%player%} to now
                    set {büyü.gerçekleştirilmiyorsa.%player%} to 1
                    send "bilmem ne efektleri" to player
                    wait {@AteşTopuGSüre-2}
                    delete {büyü.gerçekleştirilmiyorsa.%player%}
                    shoot a fireball from the player at speed {@AteşTopuHız-2}
                else:
                    send "&cBir büyü gerçekleştirirken başka bir büyü yapamazsın!" to player
                    stop
        else:
            send "&cBasit dili bilmiyorsun !" to player

Bu skripti tek bir yerden yönetmek istedim, fonksiyonlar kullanarak. Maalesef başaramadım. Tek bir satırdan bir büyünün basamaklarını kontrol edebilsem çok güzel olurdu. Çünkü zor dilde 5 basamak olacak ve bir büyünün 5 basamağını böyle satır satır tekrar yazarsam sunucu kafayı yer. Ki zor dilde haliyle farklı büyüler olacağından uzun satırlar olacak. Zaten her basamak için değiştireceğim bir kaç değer ve efekt renkleri olacak. Yardımınız için şimdiden teşekkürlerimi sunuyorum.
 

ZsCraft

Kızıltaş Madencisi
En iyi cevaplar
0
(basit. dil. seviye) is 1 ve is 2 kısımları var ya, onları böyle alt alta yazıp skripiti uzatmak istemiyorum. Bir yerde ateş fırlatma kodu yazmalı ve benim tek yapmam gereken değerleri değiştirmek olmalı, fonksiyonlarda bu özellik vardı aslında, uzun bir kodu farklı yerlerde farklı değerlerde kullanmak istiyorsak fonksiyonları kullanıyorduk. ama bu kodu fonksiyona işleyemedim. bu konuda yardım lazım
 

Axel102

Hayalet Avcısı
En iyi cevaplar
6
(basit. dil. seviye) is 1 ve is 2 kısımları var ya, onları böyle alt alta yazıp skripiti uzatmak istemiyorum. Bir yerde ateş fırlatma kodu yazmalı ve benim tek yapmam gereken değerleri değiştirmek olmalı, fonksiyonlarda bu özellik vardı aslında, uzun bir kodu farklı yerlerde farklı değerlerde kullanmak istiyorsak fonksiyonları kullanıyorduk. ama bu kodu fonksiyona işleyemedim. bu konuda yardım lazım
Kod:
#Function
function fire(p: player, seviye: integer, hiz: integer):
 shoot fireball from {_p} at speed {_hiz}
 message "&6%{_seviye}% seviye " to {_p}
 

ZsCraft

Kızıltaş Madencisi
En iyi cevaplar
0
bekleme sürelerini ayarlayabileceğim şekilde nasıl halledebilirim? 2.seviyede daha düşük bir bekleme süresine sahip olmalı, bu kısımda takılıyorum hep
 

blueybighat

Marangoz
En iyi cevaplar
3
function fire(p: player, seviye: integer, hiz: integer , s: timespan):
sonra {_s} i kullanabilirsin
 
Üst