Garnek2 1 Opublikowano 22 stycznia 2021 Udostępnij Opublikowano 22 stycznia 2021 Cześć, przychodzę z pytaniem - jak sprawdzić czy w promieniu np. 20 bloków od gracza znajduje się dowolny region z WorldGuarda? Serwer na wersji 1.16.5 Wersja Skripta: 2.5.3 Wersja skUtilities: 0.9.2 Wersja SkQuery: 4.1.4 Chciałbym uniknąć instalowania innych dodatków jeśli to możliwe. Będę wdzięczny za każda odpowiedź. Pozdrawiam. Odnośnik do komentarza https://skript.pl/temat/44827-sprawdzane-czy-gracz-jest-w-pobli%C5%BCu-regionu/ Udostępnij na innych stronach Więcej opcji udostępniania...
1 Kormic 1951 Opublikowano 22 stycznia 2021 Udostępnij Opublikowano 22 stycznia 2021 Teraz, Garnek2 napisał: Cześć, przychodzę z pytaniem - jak sprawdzić czy w promieniu np. 20 bloków od gracza znajduje się dowolny region z WorldGuarda? Jest kilka sposobów, podam przykładowe trzy. 1. Jakiś dodatek do Skripta wprowadzający taki warunek (lub wyrażenie) 2. Zapętlenie bloków w promieniu 20 metrów od gracza i sprawdzenie czy w ich miejscu znajduje się jakikolwiek region (niezalecane, tps'y polecą na łeb na szyję). 3. Pozyskanie z pliku regions.yml (w folderze WorldGuard) minimalnych i maksymalnych koordynatów wszystkich regionów (tutaj wymagany będzie dodatek pozwalający na korzystanie z YAMLa w Skript (skript-yaml, SkQuery, SkUtilities, itp.)). Następnie trzeba by je zapisać do jakiejś listy, którą należałoby zapętlić. Wtedy sprawdzasz czy dystans między graczem, a loop-value jest mniejszy, bądź równy 20. Jeżeli tak, zatrzymujesz pętlę i ustawiasz wartość dowolnej zmiennej lokalnej jako nazwę tego regionu. Już poza tą pętlą sprawdzasz czy ta zmienna jest ustawiona: jeżeli tak - wysyłasz tę zmienną zawierającą nazwę regionu jeżeli nie - znaczy to, że w promieniu 20 metrów od gracza nie ma ani jednego regionu Możesz oczywiście jeszcze samemu poszukać rozwiązań w internecie, na pewno coś się znajdzie. Odnośnik do komentarza https://skript.pl/temat/44827-sprawdzane-czy-gracz-jest-w-pobli%C5%BCu-regionu/#findComment-281573 Udostępnij na innych stronach Więcej opcji udostępniania...
0 Garnek2 1 Opublikowano 22 stycznia 2021 Autor Udostępnij Opublikowano 22 stycznia 2021 7 minut temu, Kormic napisał: 3. Pozyskanie z pliku regions.yml (w folderze WorldGuard) minimalnych i maksymalnych koordynatów wszystkich regionów (tutaj wymagany będzie dodatek pozwalający na korzystanie z YAMLa w Skript (skript-yaml, SkQuery, SkUtilities, itp.)). Następnie trzeba by je zapisać do jakiejś listy, którą należałoby zapętlić. Wtedy sprawdzasz czy dystans między graczem, a loop-value jest mniejszy, bądź równy 20. Jeżeli tak, zatrzymujesz pętlę i ustawiasz wartość dowolnej zmiennej lokalnej jako nazwę tego regionu.. Dobry pomysł. Spróbuje zrobić to w ten sposób. Dzięki! Odnośnik do komentarza https://skript.pl/temat/44827-sprawdzane-czy-gracz-jest-w-pobli%C5%BCu-regionu/#findComment-281581 Udostępnij na innych stronach Więcej opcji udostępniania...
Pytanie
Garnek2 1
Cześć, przychodzę z pytaniem - jak sprawdzić czy w promieniu np. 20 bloków od gracza znajduje się dowolny region z WorldGuarda?
Serwer na wersji 1.16.5
Wersja Skripta: 2.5.3
Wersja skUtilities: 0.9.2
Wersja SkQuery: 4.1.4
Chciałbym uniknąć instalowania innych dodatków jeśli to możliwe.
Będę wdzięczny za każda odpowiedź. Pozdrawiam.
Odnośnik do komentarza
https://skript.pl/temat/44827-sprawdzane-czy-gracz-jest-w-pobli%C5%BCu-regionu/Udostępnij na innych stronach
2 odpowiedzi na to pytanie
Rekomendowane odpowiedzi