Skocz do zawartości

Ulepszony skrypt na dragi na serwery RolePlay!


POCYBUSEK
 Udostępnij

Rekomendowane odpowiedzi

- Zmiennych nie powinno się robić z . tylko z ::
- Format slot jest zbugowany i lepiej użyć formatowania które jest w samym skripcie

- Jeżeli nie będzie ustawiona pokaże <none>, zamień je miejscami lub daj %{money.%player%} ? 0%

        format slot 13 of player with sugar named "&e&lStan konta:" with lore "&2&lPorftel: %{money.%player%}%$" to close
        if {money.%player%} is less than 0:
            set {money.%player%} to 0

- wait 1 tick po komendzie nie jest w ogóle potrzebny, jedyne zaśmieca kod

Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dobrze poprawie kod 

Pytania:

1. Dlaczego :: a nie . kropką

2. Format slot jest zbugowany i lepiej użyć formatowania które jest w samym skripcie - jak to zrobić?

3. o co chodzi z tym? Jeżeli nie będzie ustawiona pokaże <none>, zamień je miejscami lub daj %{money.%player%} ? 0%

Edytowane przez xAxee
xAxee

Poprawiam formatowanie

Notatka dodana przez xAxee

Odnośnik do odpowiedzi
Udostępnij na innych stronach

6 minut temu, POCYBUSEK napisał:

Dlaczego :: a nie . kropką

łatwiej takimi zmiennymi potem się zarządza, możesz od razu wszystkie wyczyścić jednym poleceniem, co w przypadku zmiennych z . jest powiedzmy niemożliwe

6 minut temu, POCYBUSEK napisał:

jak to zrobić

set slot - poradnik:

 

Nie wiem też w jakim celu korzystasz ze zmiennej z pieniędzmi, nie lepiej korzystać z tego, co Skript nam daje, czyli:

remove 10 from player's balance
add 10 to player's balance

itp.

Edytowane przez CoFFeIN04
Odnośnik do odpowiedzi
Udostępnij na innych stronach

3 minuty temu, CoFFeIN04 napisał:

łatwiej takimi zmiennymi potem się zarządza, możesz od razu wszystkie wyczyścić jednym poleceniem, co w przypadku zmiennych z . jest powiedzmy niemożliwe

set slot - poradnik:

 

czyli jak zrobie zmienna np. z kasą to tez dawac :: bo nie rozumiem zabardzo

Odnośnik do odpowiedzi
Udostępnij na innych stronach

8 minut temu, xAxee napisał:

Zmiennych nie powinno się robić z . tylko z ::

Tutaj warto wyjaśnić w tym miejscu dlaczego jest to lepsze rozwiązanie.

# Przykłady zmiennych będących elementami list:
{lista::1}
{jakas::tam::lista}

# Listę zmiennych możesz w prosty sposób wyczyścić (gwiazdka w nazwie zmiennej oznacza dowolny element):
clear {lista::*} 

# Listę zmiennych możesz zapętlić i wykonać na niej przeróżne operacje:
loop {lista::*}:
	# Dalszy kod
	
loop {jakas::tam::*}:
	# Dalszy kod
    
# Możesz sprawdzić jej rozmiar:
size of {lista::*}

Wszystko to, co opisałem wyżej, jest niemożliwe do zrobienia ze zwykłymi zmiennymi.

8 minut temu, xAxee napisał:

Format slot jest zbugowany i lepiej użyć formatowania które jest w samym skripcie

Tutaj również warto dopowiedzieć parę słów na ten temat.

Zbugowany jest dlatego, gdyż można w łatwy sposób kopiować w nim przedmioty (na YouTubie jest kilkanaście przykładów, że ludzie tak robili na serwerach EasyHC korzystających z SkQuery i jego formatowania GUI.

Warto dodać, że oprócz tego jest jeszcze ograniczony i nie posiada zbyt wiele możliwości. Jedyne co możesz wykorzystywać to lambdy w przypadku tego formatowania, nie wstawisz tutaj żadnych warunków.

Oczywiście, możesz sobie specjalnie do tego tworzyć komendy, ale sam przyznasz, że to jest ohydne rozwiązanie.

8 minut temu, POCYBUSEK napisał:

Format slot jest zbugowany i lepiej użyć formatowania które jest w samym skripcie - jak to zrobić?

Helios ostatnio zrobił na ten temat poradnik.

 

9 minut temu, POCYBUSEK napisał:

3. o co chodzi z tym? Jeżeli nie będzie ustawiona pokaże <none>, zamień je miejscami lub daj %{money.%player%} ? 0%

Chodzi o to, że przy ustawianiu slotu z kasą gracza w lore tego przedmiotu nie sprawdzasz czy zmienna gracza jest w ogóle ustawiona. Jeżeli nie będzie ustawiona, zamiast ilości kasy wyświetli się "<none>".

Przed ustawianiem slotu powinieneś sprawdzać czy zmienna gracza nie jest ustawiona. Jeżeli rzeczywiście nie jest, ustawiamy ją na 0.

if {kasa::%player%} is not set:
	set {kasa::%player%} to 0
# Ustawianie slotu

 

Odnośnik do odpowiedzi
Udostępnij na innych stronach

W zmiennych gdzie masz np. gracza {money.%player%} po prostu w niej zamień . na ::

 

Zobacz końcówkę:

5 minut temu, CoFFeIN04 napisał:

Nie wiem też w jakim celu korzystasz ze zmiennej z pieniędzmi, nie lepiej korzystać z tego, co Skript nam daje, czyli:

remove 10 from player's balance
add 10 to player's balance

 

Odnośnik do odpowiedzi
Udostępnij na innych stronach

12 minut temu, POCYBUSEK napisał:

3. o co chodzi z tym? Jeżeli nie będzie ustawiona pokaże <none>, zamień je miejscami lub daj %{money.%player%} ? 0%

Jeżeli zmienna nie jest ustawiona, zwróci 0. Czyli zamiast <none> będziesz miał 0 nawet jak zmienna jest pusta.

2 minuty temu, POCYBUSEK napisał:

czyli jak zrobie zmienna np. z kasą to tez dawac :: bo nie rozumiem zabardzo

Tak, najlepiej zawsze dawaj :: zapomnij kompletnie o kropkach.

6 minut temu, CoFFeIN04 napisał:

Nie wiem też w jakim celu korzystasz ze zmiennej z pieniędzmi, nie lepiej korzystać z tego, co Skript nam daje, czyli:


remove 10 from player's balance
add 10 to player's balance
data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

itp.

Edytowane przez

Bez jakiegoś pluginu z ekonomią player's balance nie działa

Odnośnik do odpowiedzi
Udostępnij na innych stronach

Teraz, CoFFeIN04 napisał:

Nie wiem też w jakim celu korzystasz ze zmiennej z pieniędzmi, nie lepiej korzystać z tego, co Skript nam daje, czyli:

remove 10 from player's balance
add 10 to player's balance

To nie Skript nam daje, a Vault i provider w postaci chociażby Essentials.

Nie kwestionuj w skrypcie rzeczy, które nie mają najmniejszego znaczenia. Skup się na tym co najważniejsze.

Odnośnik do odpowiedzi
Udostępnij na innych stronach

1 minutę temu, Kormic napisał:

To nie Skript nam daje, a Vault i provider w postaci chociażby Essentials.

Nie kwestionuj w skrypcie rzeczy, które nie mają najmniejszego znaczenia. Skup się na tym co najważniejsze.

Dobrze to zaczne udoskonalac ten skrypt żeby był coraz lepszy. Pozdrawiam

Odnośnik do odpowiedzi
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...