Skocz do zawartości
  • 0

Blad ze skryptem


BakuQ
 Udostępnij

Pytanie

6 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
W dniu 9.11.2020 o 12:00, BakuQ napisał:

Ktoś wie czmu to niedziala? 

 

ZDJECIE BLEDU:

[usuwam link ze względu na wizerunek osoby trzeciej]

Jak tam na lekcji, dobrze? :kappapeek:

1. Szanuj nauczyciela i lekcję.

2. Pokaż kod.

Edytowane przez CountingDogs
CountingDogs

Usuwam link ze względu na wizerunek osoby trzeciej.

Notatka dodana przez CountingDogs

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
16 minut temu, BakuQ napisał:

Lekcje dobrze a kod masz przeciez

Nie wyświetliła mi się edycja twojego postu, dlatego też zapytałem.

Pierwsze wrażenie? Kod wygląda co najmniej źle.

1. Przy każdym dołączeniu gracza ustawiasz ciągle tę samą zmienną. Zainteresuj się sekcją 'options', a będzie to wyglądało znacznie lepiej.

2. W linijce 24 zamiast sprawdzać narzędzie gracza jako tekst o wiele lepiej wykorzystać warunek:

if player's tool's type is arrow:

3. Do każdego dawania graczowi itemu używasz komend przez konsolę. Użyj składni ze Skripta, a dokładniej efektu 'give' lub 'add'.

4. Wszystkie 'stop' w kodzie są zbędne, gdyż są na końcu triggerów.

5. Dla każdej akcji w GUI definiujesz odrębną komendę, co jest złym zabiegiem. Wszystkie akcje powinieneś wstawić do eventu 'on inventory click'.

6. W 'on inventory click' sprawdzasz wszystkie scenariusze dla niemalże tej samej akcji.

# Zamiast robić taki syf:

if clicked slot is 0:
	set {limit::%player%} to 0
	send "%{prefix}% &aUstawiono limit na %{limit::%player%}%!" to player
if clicked slot is 1:
	set {limit::%player%} to 1
	send "%{prefix}% &aUstawiono limit na %{limit::%player%}%!" to player
if clicked slot is 2:
	set {limit::%player%} to 2
	send "%{prefix}% &aUstawiono limit na %{limit::%player%}%!" to player
	# I tak dalej...

# Lepiej zrobić to tak:

on inventory click:
	set {limit::%player%} to index of clicked slot
	send "%{prefix}% &aUstawiono limit na %{limit::%player%}%!" to player

Jeżeli masz jakiś odrębny slot, wtedy sprawdzasz po prostu czy kliknięty slot jest między liczbą "x" a "y", i czy nie jest równy przykładowo liczbie z.

Co do samego błędu, zapewne posiadasz zbyt starą wersję Skripta.

Edytowane przez Kormic
Odnośnik do komentarza
Udostępnij na innych stronach

  • 0

ale ,że to jest mój kod? ;)

 

 

jak coś to skript działa na wersję 1.12+ (z dodatkami międzyinnymi : skunity, skUtilities.v0.9.2,skRayFall+v1.9.23  ,Skellett 1.9.11 )
 

a on się pyta jak naprawić skript z wersją 1.8.8

 

20 minut temu, Kormic napisał:

Nie wyświetliła mi się edycja twojego postu, dlatego też zapytałem.

Pierwsze wrażenie? Kod wygląda co najmniej źle.

1. Przy każdym dołączeniu gracza ustawiasz ciągle tę samą zmienną. Zainteresuj się sekcją 'options', a będzie to wyglądało znacznie lepiej.

2. W linijce 24 zamiast sprawdzać narzędzie gracza jako tekst o wiele lepiej wykorzystać warunek:



if player's tool's type is arrow:

3. Do każdego dawania graczowi itemu używasz komend przez konsolę. Użyj składni ze Skripta, a dokładniej efektu 'give' lub 'add'.

4. Wszystkie 'stop' w kodzie są zbędne, gdyż są na końcu triggerów.

5. Dla każdej akcji w GUI definiujesz odrębną komendę, co jest złym zabiegiem. Wszystkie akcje powinieneś wstawić do eventu 'on inventory click'.

6. W 'on inventory click' sprawdzasz wszystkie scenariusze dla niemalże tej samej akcji.



# Zamiast robić taki syf:

if clicked slot is 0:
	set {limit::%player%} to 0
	send "%{prefix}% &aUstawiono limit na %{limit::%player%}%!" to player
if clicked slot is 1:
	set {limit::%player%} to 1
	send "%{prefix}% &aUstawiono limit na %{limit::%player%}%!" to player
if clicked slot is 2:
	set {limit::%player%} to 2
	send "%{prefix}% &aUstawiono limit na %{limit::%player%}%!" to player
	# I tak dalej...

# Lepiej zrobić to tak:

on inventory click:
	set {limit::%player%} to index of clicked slot
	send "%{prefix}% &aUstawiono limit na %{limit::%player%}%!" to player

Jeżeli masz jakiś odrębny slot, wtedy sprawdzasz po prostu czy kliknięty slot jest między liczbą "x" a "y", i czy nie jest równy przykładowo liczbie z.

Co do samego błędu, zapewne posiadasz zbyt starą wersję Skripta.

dało by się zrobić ten skript lepiej ale jak na moje umiejętności i to ,że skript działa (1.12+) to jest Spoko

CountingDogs

Łączę posty.

Notatka dodana przez CountingDogs

Odnośnik do komentarza
Udostępnij na innych stronach

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ą.

Nieaktywny
Odpowiedz na pytanie...

×   Wklejono zawartość z formatowaniem.   Usuń formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

 Udostępnij

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

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