Skocz do zawartości
  • 0

Skrypt na misje.


dragon5585

Pytanie

Witam napisze mi ktoś skrypt na Stajennego? Chodzi o to że po zdobyciu 30 poziomu i kliknieciu w Stajennego PPM pojawia się komunikat "ZAIJ 100 Golemow z nazwa "GOLEMIX"
i koszt tej misji byłby 5000$. Mielibyśmy na ukończenie misji 30minut ale jak byśmy jej nie zdążyli ukończyć to możemy zrobić ją od nowa. A po ukończeniu misji jak by nam się udało ją zrobić otrzymywali byśmy np 1 diax'a. I tą misje można byłoby zrobić tylko raz.

Bym zapomniał...

Jakby dało jeszcze dodać do tego komende /misje i tam by pisało np "Stajenny >> Zabiłeś 0/100 GOLEMIXÓW."

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

9 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
13 minut temu, Pablososek napisał:

Nie sprawdzałem, czy działa. Dodatkowo skrypt może mieć błędy, bo dawno ich nie pisałem

Owszem, skrypt posiada wiele błędów.

1. W nazwie zmiennej w 'variables' jest literówka, mianowicie "stajennt".

2. Powinno być 'on rightclick on entity', nie 'on rightclick of entity'.

3. To nie jest twoja wina, a zleceniodawcy (gdyż nie podał dokładnej informacji), ale zakładam, że Stajenny jest NPC, a więc w warunku w linijce nr 5 należy użyć wyrażenia 'display name'. Dodatkowo w tej linijce należy zamienić "'s" na " is".

4. Nie ma takiego warunku jak 'if player has level 30'. Tutaj należy użyć warunku 'if player's level >= 30'.

5. Jest błąd w linijce 12. Jeżeli chcesz użyć cudzysłowu w tekście, należy go podwoić, gdyż w innym wypadku skrypt rzuci błędem.

6. Chryste Panie...

set {misja::stajenny::%player%} to true
wait 30 minutes
clear {misja::stajenny::%player%}

Jest duża szansa na to, że serwer zatrzyma się w ciągu tych 30 minut. Wiesz co wtedy się stanie? Delay się zatrzyma, przez co zmienna się nie wyczyści, a to poskutkuje tym, że gracz będzie miał nieskończoną ilość czasu na wykonanie misji.

7. W linijce nr 25 jest kolejny błąd, mianowicie wyrażenie 'name of killed entity'. Zacznę od tego, że w event'cie on death nie ma czegoś takiego jak 'killed entity'. Ofiarę zawsze reprezentuje 'victim' (ewentualnie typ entity, którego używasz w tym event'cie, w tym przypadku jest to zombie).

8. W linijce 39. użyłeś zmiennej %attacker% w definiowaniu komendy, co równiez jest błędem.

9. Linijka 41., ten sam błąd co w punkcie 5.

10. W linijce nr 42 nie użyłeś nie dałeś zmiennej w tekście w procenty, przez co na czacie wyświetli się nie wartość zmiennej, a jej nazwa.

Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • 0
48 minut temu, Kormic napisał:

Owszem, skrypt posiada wiele błędów.

1. W nazwie zmiennej w 'variables' jest literówka, mianowicie "stajennt".

2. Powinno być 'on rightclick on entity', nie 'on rightclick of entity'.

3. To nie jest twoja wina, a zleceniodawcy (gdyż nie podał dokładnej informacji), ale zakładam, że Stajenny jest NPC, a więc w warunku w linijce nr 5 należy użyć wyrażenia 'display name'. Dodatkowo w tej linijce należy zamienić "'s" na " is".

4. Nie ma takiego warunku jak 'if player has level 30'. Tutaj należy użyć warunku 'if player's level >= 30'.

5. Jest błąd w linijce 12. Jeżeli chcesz użyć cudzysłowu w tekście, należy go podwoić, gdyż w innym wypadku skrypt rzuci błędem.

6. Chryste Panie...

set {misja::stajenny::%player%} to true
wait 30 minutes
clear {misja::stajenny::%player%}

Jest duża szansa na to, że serwer zatrzyma się w ciągu tych 30 minut. Wiesz co wtedy się stanie? Delay się zatrzyma, przez co zmienna się nie wyczyści, a to poskutkuje tym, że gracz będzie miał nieskończoną ilość czasu na wykonanie misji.

7. W linijce nr 25 jest kolejny błąd, mianowicie wyrażenie 'name of killed entity'. Zacznę od tego, że w event'cie on death nie ma czegoś takiego jak 'killed entity'. Ofiarę zawsze reprezentuje 'victim' (ewentualnie typ entity, którego używasz w tym event'cie, w tym przypadku jest to zombie).

8. W linijce 39. użyłeś zmiennej %attacker% w definiowaniu komendy, co równiez jest błędem.

9. Linijka 41., ten sam błąd co w punkcie 5.

10. W linijce nr 42 nie użyłeś nie dałeś zmiennej w tekście w procenty, przez co na czacie wyświetli się nie wartość zmiennej, a jej nazwa.

To się rozpisałeś, :D ale dzięki za to w przyszłości takich błędów raczej nie będę robił.

Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • 0

Takie WARNY pokazuje w konsoli

[WARN]: If you meant to make the variable {misja:stajenny:zrobione::%player%} a list, its name should contain '::'. Having a single ':' does nothing! (KON.sk, line 6: if {misja:stajenny:zrobione::%player%} is set:')
[WARN]: If you meant to make the variable {misja:stajenny:zrobione::%attacker%} a list, its name should contain '::'. Having a single ':' does nothing! (KON.sk, line 31: set {misja:stajenny:zrobione::%attacker%} to true')
[WARN]: If you meant to make the variable {misja:stajenny:zrobione::%player%} a list, its name should contain '::'. Having a single ':' does nothing! (KON.sk, line 39: if {misja:stajenny:zrobione::%player%} isn't set:')

Po dodaniu :: błędy zniknęły ale NPC wgle nie raguje klikam w niego ppm i nic się nie pokazuje to samo jak mam 30poziom.

Edytowane przez dragon5585
Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • 0
42 minuty temu, dragon5585 napisał:

Takie WARNY pokazuje w konsoli

[WARN]: If you meant to make the variable {misja:stajenny:zrobione::%player%} a list, its name should contain '::'. Having a single ':' does nothing! (KON.sk, line 6: if {misja:stajenny:zrobione::%player%} is set:')
[WARN]: If you meant to make the variable {misja:stajenny:zrobione::%attacker%} a list, its name should contain '::'. Having a single ':' does nothing! (KON.sk, line 31: set {misja:stajenny:zrobione::%attacker%} to true')
[WARN]: If you meant to make the variable {misja:stajenny:zrobione::%player%} a list, its name should contain '::'. Having a single ':' does nothing! (KON.sk, line 39: if {misja:stajenny:zrobione::%player%} isn't set:')

Po dodaniu :: błędy zniknęły ale NPC wgle nie raguje klikam w niego ppm i nic się nie pokazuje to samo jak mam 30poziom.

spróbuj teraz.

Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • 0
1 minutę temu, dragon5585 napisał:

Nie pokazuje żadnych błędów i gdy klikam na npc PPM to nie reaguje 

Jesteś pewien, że NPC Stajenny nie zawiera żadnych kolorów w nazwie?

Nie zapomnij o wyczyszczeniu zmiennych.

Edytowane przez Kormic
Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • 0
W dniu 29.10.2020 o 13:35, Kormic napisał:

Jesteś pewien, że NPC Stajenny nie zawiera żadnych kolorów w nazwie?

Nie zapomnij o wyczyszczeniu zmiennych.

Tak jestem pewien nawet dodałem w skrypcie w nazwie Stajenny &2 i zrobiłem takiego samego NPC na serwerze i tez to nic nie dało.

 

W dniu 29.10.2020 o 13:35, Kormic napisał:

Jesteś pewien, że NPC Stajenny nie zawiera żadnych kolorów w nazwie?

Nie zapomnij o wyczyszczeniu zmiennych.

PS: A jak zrobiłem taki prosty skrypt żeby sprawdzić czy działa to po kliknięciu w NPC o nazwie &6Stajenny normalnie działa.

 

 

Zauważyłem że jak wkleję tą linijkę to skrypt przestaje działać.
 

 

CountingDogs

Łączę posty.

Notatka dodana przez CountingDogs

Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • 0
19 minut temu, dragon5585 napisał:

Zauważyłem że jak wkleję tą linijkę to skrypt przestaje działać.

Przecież od tej linijki w kodzie jest 'else' z sendem, czyli w przypadku gdy jednak ta zmienna jest ustawiona (innymi słowy jeżeli gracz ukończył misję), to wysyła wiadomość na czacie, że dany gracz już ukończył tę misję. Czy w twoim przypadku tak nie jest? Jeżeli jest, wyczyść tę zmienną i spróbuj jeszcze raz. 

Odnośnik do odpowiedzi
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ę...