Skocz do zawartości
  • 0

Nie dzialajcy skrypt. Potrzebna analiza


Pytanie

7 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

Ale co dokładnie Ci nie działa?

Jedyne co zauważyłem, to w nazwie przy edycji nazwy zwierzaka to ustawia zmienną stałą na false a wyświetla nazwę wpisaną tylko na czacie: 

on chat:
    if {petname::%player%} is true:
        cancel event
        set {_name} to message
        set {petname::%player%} to false
        send "&7Imię twojego zwierzaka to &a%{_name}%"

 

powinno być 

set {petname::%player%} to {_name}

ale o co chodzi dokładnie co nie działa to ciężko coś znaleźć. Naprowadź nas :D 

Odnośnik do komentarza
https://skript.pl/temat/56185-nie-dzialajcy-skrypt-potrzebna-analiza/#findComment-337302
Udostępnij na innych stronach

  • 0
5 minut temu, knugi napisał:

Ale co dokładnie Ci nie działa?

Jedyne co zauważyłem, to w nazwie przy edycji nazwy zwierzaka to ustawia zmienną stałą na false a wyświetla nazwę wpisaną tylko na czacie: 

on chat:
    if {petname::%player%} is true:
        cancel event
        set {_name} to message
        set {petname::%player%} to false
        send "&7Imię twojego zwierzaka to &a%{_name}%"

 

powinno być 

set {petname::%player%} to {_name}

ale o co chodzi dokładnie co nie działa to ciężko coś znaleźć. Naprowadź nas :D 

Wybacz. Jak pisalem post mialem wszystko opisane, ale przy publikacji sie nie dodalo, a zwrocilem uwage na to dopiero teraz.
Pierwszym problemem jest to, ze zwierze w ogole sie nie respi, czyli w funkcji {_animal} nie dziala. Druga sprawa jest to co napisales. Imie zwierzaka sie nie zmienialo i dziekuje za naprowadzenie. Trzecim problemem jest to, ze w funkcji oswajanie zwierzaka nie dziala i wyrzuca blad. Mam na mysli ta linijke: tame {_pet} to the {_p}

EDIT:
W edycji nazwy zwierzaka uzylem zimennej stalej, bo jesli wybierze sie opcje z gui zmiany zwierzaka to kolejna wiadomosc na czacie przypisuje sie to imienia dla zwierzaka. Natomiast kolejna wiadomosc na chacie moze byc juz "normalna", czyli jakos musze to zdeklarowac, ze jesli wybierze sie opcje zmiany imienia w gui to wlacza sie "tryb", czyli ta zmienna stala i kolejna wiadomosc zostanie przypisana do {_name}, a pozniej musze ten "tryb" wylaczyc dlatego jest na false. Jest jakies inne tego rozwiazanie? To co ty napisales nie bedzie przeciez dzialac (set {petname::%player%} to {_name}), bo to zmienna na wylaczenie lub wlaczenie trybu.
 

Edytowane przez EdeQ
Odnośnik do komentarza
https://skript.pl/temat/56185-nie-dzialajcy-skrypt-potrzebna-analiza/#findComment-337303
Udostępnij na innych stronach

  • 0

Okej, rozumiem.

Pierwsza sprawa to taka, że nie można zespawnować tekstu w skripcie.

Korzystając z effectu spawn, masz jasno w dokumentacji napisano spawn <entity types> https://docs.skriptlang.org/effects.html?search=#EffSecSpawn

a tekst nie jest entity, bo w funkcji napisałeś: animal: text

 

Druga sprawa to wyjaśniona że imie sie nie zmieniało, a trzeci błąd to zajrzyjmy do dokumentacji:

https://docs.skunity.com/syntax/search/id:1327

tame {_entity} to {_p} jest z dodatku SKQuerry, posiadasz go na swoim serwerze?    /// Ewentualnie trzeba usunąć the z skryptu, gdyż jak widzę w dokumentacji "the" nie występuje

Edytowane przez knugi
Odnośnik do komentarza
https://skript.pl/temat/56185-nie-dzialajcy-skrypt-potrzebna-analiza/#findComment-337304
Udostępnij na innych stronach

  • 0
4 minuty temu, knugi napisał:

Okej, rozumiem.

Pierwsza sprawa to taka, że nie można zespawnować tekstu w skripcie.

Korzystając z effectu spawn, masz jasno w dokumentacji napisano spawn <entity types> https://docs.skriptlang.org/effects.html?search=#EffSecSpawn

a tekst nie jest entity, bo w funkcji napisałeś: animal: text

 

Druga sprawa to wyjaśniona że imie sie nie zmieniało, a trzeci błąd to zajrzyjmy do dokumentacji:

https://docs.skunity.com/syntax/search/id:1327

tame {_entity} to {_p} jest z dodatku SKQuerry, posiadasz go na swoim serwerze?

Nie posiadam SkQuerry tylko SkBee, normalnie tame nie uzyte w funkcji dzialalo, ale w funkcji juz nie. Pobiore rozszerzenie i dam znac czy faktycznie wtedy to zadziala. A co do respienia zwierzaka to jak mam to rozwiazac?

EDIT:

Jednak mam SkQuery, moj blad sorry

Edytowane przez EdeQ
Odnośnik do komentarza
https://skript.pl/temat/56185-nie-dzialajcy-skrypt-potrzebna-analiza/#findComment-337305
Udostępnij na innych stronach

  • 0
14 godzin temu, EdeQ napisał:

Nie posiadam SkQuerry tylko SkBee, normalnie tame nie uzyte w funkcji dzialalo, ale w funkcji juz nie. Pobiore rozszerzenie i dam znac czy faktycznie wtedy to zadziala. A co do respienia zwierzaka to jak mam to rozwiazac?

Tak jak napisał, typ zmiennej się nie zgadza.

Musisz w funkcji zmienić albo jej interpretację z animal: text na animal: entity type

lub w funkcji użyć parseda z textu na entity type, lecz to jest bardziej kłopotliwe.

I znalazłem jeszcze jeden błąd, gdyż w evencie inventory click masz:

on inventory click:
    name of event-inventory is "Zwierzęta"
    cancel event
    event-inventory is not player's inventory
    if clicked slot is 3:
        if {petactive::%player%} is false:
            spawnPet(player, "cat", "%{_name}%")

Ale wcześniej nie ustawiasz zmiennej {_name}. i za każdym razem będzie <none>

Przeczytaj poradnik co to są zmienne. (Tak w skrócie, jeżeli na początku masz {_ to jest zmienna tymczasowa która jest tworzona tylko w danej sekcji i nie jest nigdzie zapisywana tylko w ramie do szybkiego zapisu odczytu i od razu się usuwa. Dlatego też nie ustawia Ci nazwy peta.

Jest tu dużo błędów logicznych, i żeby to poprawić trzeba trochę posiedzieć. Mi się nie chce, jedynie daję Ci wskazówki a dojść do tego będziesz musiał sam, jeżeli chcesz się czegoś nauczyć.

14 godzin temu, EdeQ napisał:

W edycji nazwy zwierzaka uzylem zimennej stalej, bo jesli wybierze sie opcje z gui zmiany zwierzaka to kolejna wiadomosc na czacie przypisuje sie to imienia dla zwierzaka. Natomiast kolejna wiadomosc na chacie moze byc juz "normalna", czyli jakos musze to zdeklarowac, ze jesli wybierze sie opcje zmiany imienia w gui to wlacza sie "tryb", czyli ta zmienna stala i kolejna wiadomosc zostanie przypisana do {_name}, a pozniej musze ten "tryb" wylaczyc dlatego jest na false. Jest jakies inne tego rozwiazanie? To co ty napisales nie bedzie przeciez dzialac (set {petname::%player%} to {_name}), bo to zmienna na wylaczenie lub wlaczenie trybu

To źle rozumiesz zmienne. Można ustawić zmienną na ustawienie nazwy zwierzaka oraz na sprawdzanie czy dany zwierzak ma swoją nazwę.

Można użyć:

if {petname::%player%} is not set: #(czyli nie jest ustawione)

I na samej górze skryptu usuwasz 

{petname::%player%} = false

Ale po przeróbne na is not set polecałbym wyczyścić variables.csv gdyż już bedzie ustawiona na false (a to jednak coś innego niż null)

Aby zrozumieć zmienne z podłogą _ spróbuj ten skrypt:

command /a:
	trigger:
		set {_a} to "Tekst"
command /b:
	trigger:
		send "%{_a}%"

Użyj najpierw komendy /a później /b.

Zobaczysz, że wyświetli Ci się <none>. Tak samo jak to robi w Twoim skrypcie.

Nieaktywny

Łączę posty opublikowane po sobie na prośbę ich autora

Odnośnik do komentarza
https://skript.pl/temat/56185-nie-dzialajcy-skrypt-potrzebna-analiza/#findComment-337306
Udostępnij na innych stronach

  • 0
3 minuty temu, knugi napisał:

To źle rozumiesz zmienne. Można ustawić zmienną na ustawienie nazwy zwierzaka oraz na sprawdzanie czy dany zwierzak ma swoją nazwę.

Można użyć:

if {petname::%player%} is not set: #(czyli nie jest ustawione)

I na samej górze skryptu usuwasz 

{petname::%player%} = false

Ale po przeróbne na is not set polecałbym wyczyścić variables.csv gdyż już bedzie ustawiona na false (a to jednak coś innego niż null)

Ok dziekuje za pomoc. Posiedze nad tym i sprobuje to poprawic.

Odnośnik do komentarza
https://skript.pl/temat/56185-nie-dzialajcy-skrypt-potrzebna-analiza/#findComment-337309
Udostępnij na innych stronach

  • 0
48 minut temu, knugi napisał:

Aby zrozumieć zmienne z podłogą _ spróbuj ten skrypt:

command /a:
	trigger:
		set {_a} to "Tekst"
command /b:
	trigger:
		send "%{_a}%"

Użyj najpierw komendy /a później /b.

Zobaczysz, że wyświetli Ci się <none>. Tak samo jak to robi w Twoim skrypcie.

Dobra napisalem i poprawilem troche kod. Teraz imie zmienia sie i dodalem tez usuwanie zwierzaka ze znika i ze po zmianie imienia automatycznie zwierzak sie respi na nowo z nowym imieniem, ale mam nowy problem, bo kod w funckji respienia peta, czyli 

while {petactive::%{_player}%} is true:
		make {_pet} pathfind towards {_p}
		wait 2 ticks

nie dziala. Pies nie podaza na wlascicielem. Wiecie jak to naprawic?
I pojawia sie tu tez moje pytanie. Co zrobic zeby zwierzak byl niesmiertelny? Jakeigo rozszerzenia uzyc? Patrzylem po dokumentacjach i nie moglem znalezc nic, ale bardzo mozliwe ze zle szukam dlatego potrzebuje pomocy. No i oswajanie w funkcji tak samo nie dziala pomimo tego, ze mam SkQuery.

To moj aktualny kod:


EDIT:

Dobra znalazlem blad i juz zwierzak podaza za wlascicielem :D

Edytowane przez EdeQ
Odnośnik do komentarza
https://skript.pl/temat/56185-nie-dzialajcy-skrypt-potrzebna-analiza/#findComment-337310
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.

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

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