Chciałbym zrobić skrypt, który ulepsza przedmioty za pomocą zmiennej, żeby nie wklejać tego samego tysiące razy, jednak występuje podany w tytule błąd.
# Komenda odpowiadająca za tryb ulepszeń #
command /upgrade-mode [<player>] [<text>] [<number>] [<number>] [<text>]:
executable by: console
trigger:
set {upgrading.%arg 1%} to true
set {item.%arg 1%} to arg 2
set {enchlvl.%arg 1%} to arg 3
set {percent.%arg 1%} to arg 4*100
set {enchantment.%arg 1%} to arg 5
send {@upgrading}, {@prompt} and {@what2do} to arg 1
# Komenda odpowiadająca za system ulepszeń #
command /upgrade-item [<player>] [<boolean>]:
executable by: console
trigger:
if arg 2 is true:
set {_enchant-lvl.%arg 1%} to "%{enchantment.%arg 1%}% %level of %{enchantment.%arg 1%}% of arg 1's tool + %{enchlvl.%arg 1%}% %" parsed as enchantment type
enchant arg 1's tool with {_enchant-lvl.%arg 1%}
send {@success} to arg 1
stop
else:
set {_enchant-lvl.%arg 1%} to "%{enchantment.%arg 1%}% %level of %{enchantment.%arg 1%}% of arg 1's tool - %{enchlvl.%arg 1%}% %" parsed as enchantment type
enchant arg 1's tool with {_enchant-lvl.%arg 1%}
send {@fail} to arg 1
stop
Gdzie popełniłem błąd? Nie jest to cały kod, ponieważ chcę go użyć na swoim serwerze (obecnie w trakcie prac), ale nie chcę też, żeby 100 innych serwerów używało mojego skryptu.
Pierwsza komenda "włącza" tryb ulepszeń, który przy kliknięciu ulepszanego przedmiotu wywołuje komendę /upgrade-item. W zależności od tego, czy liczba (procent ustalany przy kliknięciu przedmiotu, który włącza tryb ulepszeń) jest pomiędzy 1 a {percent.%player%}, ulepszenie jest wywoływane (np. /upgrade-item VaporeonPL true). Błąd występował również, gdy wkleiłem to "siłą" w event odpowiadający za kliknięcie ulepszanego przedmiotu, więc to wykluczyłem. Podejrzewam, że jest to błąd ze zmiennymi, ale jeśli ma to wyglądać tak:
if level of protection of player's tool is 1:
enchant player's tool with protection 2
if level of protection of player's tool is 2:
enchant player's tool with protection 3
if level of protection of player's tool is 3:
enchant player's tool with protection 4
if level of protection of player's tool is 4:
enchant player's tool with protection 5
i tak dalej
to lepiej niech wyskakuje błąd, który (miejmy nadzieję) jest naprawialny.
Gdyby potrzebna była reszta kodu, zapraszam na PW, tam go podeślę.
Pytanie
VaporeonPL 30
Chciałbym zrobić skrypt, który ulepsza przedmioty za pomocą zmiennej, żeby nie wklejać tego samego tysiące razy, jednak występuje podany w tytule błąd.
Gdzie popełniłem błąd? Nie jest to cały kod, ponieważ chcę go użyć na swoim serwerze (obecnie w trakcie prac), ale nie chcę też, żeby 100 innych serwerów używało mojego skryptu.
Pierwsza komenda "włącza" tryb ulepszeń, który przy kliknięciu ulepszanego przedmiotu wywołuje komendę /upgrade-item. W zależności od tego, czy liczba (procent ustalany przy kliknięciu przedmiotu, który włącza tryb ulepszeń) jest pomiędzy 1 a {percent.%player%}, ulepszenie jest wywoływane (np. /upgrade-item VaporeonPL true). Błąd występował również, gdy wkleiłem to "siłą" w event odpowiadający za kliknięcie ulepszanego przedmiotu, więc to wykluczyłem. Podejrzewam, że jest to błąd ze zmiennymi, ale jeśli ma to wyglądać tak:
if level of protection of player's tool is 1: enchant player's tool with protection 2 if level of protection of player's tool is 2: enchant player's tool with protection 3 if level of protection of player's tool is 3: enchant player's tool with protection 4 if level of protection of player's tool is 4: enchant player's tool with protection 5 i tak dalej
to lepiej niech wyskakuje błąd, który (miejmy nadzieję) jest naprawialny.
Gdyby potrzebna była reszta kodu, zapraszam na PW, tam go podeślę.
Odnośnik do komentarza
Udostępnij na innych stronach
0 odpowiedzi na to pytanie
Rekomendowane odpowiedzi
Dołącz do dyskusji
Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.