Skocz do zawartości
  • 0

wait nie działa


MineRP

Pytanie

on any movement:
    event-entity is player:
        if event-entity is sprinting:
            add 1 to {stamina.%player%}
            wait 2 seconds

Dlaczego wait 2 seconds wywala błąd? Wg. skripta rozchodzi się o to, że zamiast 3 tabulatorów powinno być 12 spacji, ale to sprawdziłem i z 12 spacjami też nie działa. Co prawda się odpala, ale nie czeka tych 2 sekund.       

Odnośnik do komentarza
Udostępnij na innych stronach

16 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
Teraz, MineRP napisał:

Dlaczego wait 2 seconds wywala błąd? Wg. skripta rozchodzi się o to, że zamiast 3 tabulatorów powinno być 12 spacji, ale to sprawdziłem i z 12 spacjami też nie działa. Co prawda się odpala, ale nie czeka tych 2 sekund.

1. Nie powinieneś używać delayów w evencie tak często aktywującym się jak 'on any move'. Przez to każdy gracz tworzy kilkaset (jak nie kilka tysięcy) delayów na sekundę. Serwer z pewnością czegoś takiego nie polubi.

2. Używaj jedynie tabulacji w swoim skrypcie, dzięki temu nie będziesz musiał się martwić o takie błahostki.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
1 minutę temu, Kormic napisał:

1. Nie powinieneś używać delayów w evencie tak często aktywującym się jak 'on any move'. Przez to każdy gracz tworzy kilkaset (jak nie kilka tysięcy) delayów na sekundę. Serwer z pewnością czegoś takiego nie polubi.

2. Używaj jedynie tabulacji w swoim skrypcie, dzięki temu nie będziesz musiał się martwić o takie błahostki.

A to jak mogę inaczej zrobić, żeby co 2 sekundy sprintowania zwiększała się zmienna o 1?

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
32 minuty temu, Helios1993 napisał:

on sprint toggle:
	while player is sprinting:
		wait 2 second
		add 1 to {stamina::%player%}

Wydajniejsza wersja.

A jest coś pokroju on walk toggle? Nie mogę znaleźć w internecie, a teraz bym chciał zrobić, że jak gracz nie sprintuje to czeka 2 sekundy i odejmuje 1 od stamina.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Teraz, MineRP napisał:

A jest coś pokroju on walk toggle? Nie mogę znaleźć w internecie, a teraz bym chciał zrobić, że jak gracz nie sprintuje to czeka 2 sekundy i odejmuje 1 od stamina.

Najlepiej zrobić to za pomocą wcześniej wspomnianego periodicala.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Teraz, Kormic napisał:

Najlepiej zrobić to za pomocą wcześniej wspomnianego periodicala.

every 2 seconds in "world":
    loop all players:
        if loop-player is sprinting:
            add 1 to {stamina.%loop-player%}
            if {stamina.%loop-player%} is equal to {kondycja.%loop-player%}:
                apply slowness 1 to loop-player for 10 seconds
        if loop-player is walking:
            remove 1 from {stamina.%loop-player%}

Mam coś takiego, a wywala mi "theres no loop that matches 'loop-player is walking itd', wiesz czemu?

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Teraz, MineRP napisał:

Mam coś takiego, a wywala mi "theres no loop that matches 'loop-player is walking itd', wiesz czemu?

Problem w tym, że nie ma nawet takiego warunku jak 'is walking'. Po prostu utwórz do powyższego warunku blok 'else'.

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
6 minut temu, Kormic napisał:

Problem w tym, że nie ma nawet takiego warunku jak 'is walking'. Po prostu utwórz do powyższego warunku blok 'else'.

 A da się zrobić zmienną, która będzie mogła mieć minimalną wartość 0 i maksymalną 100? Tzn. na pewno się da, ale jak?

Odnośnik do komentarza
Udostępnij na innych stronach

  • 0
Teraz, MineRP napisał:

 A da się zrobić zmienną, która będzie mogła mieć minimalną wartość 0 i maksymalną 100? Tzn. na pewno się da, ale jak?

Po prostu musisz przy zmianie jej wartości sprawdzać czy po zmianie będzie poza danym zakresem.

Zrobisz to poprzez dwa, góra trzy warunki.

Edytowane przez Kormic
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.

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

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