Skocz do zawartości
  • 0

Pytanie.


SuperOski

Pytanie

5 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0
5 minut temu, SuperOski napisał:

Tak, wbudowane teamy w mc.

W takim wypadku możesz to rozwiązać na trzy sposoby.

1. Przypisujesz metadatę lub scoreboard tag temu ghastowi przy respieniu go, której wartością będzie jego team (wystarczy "green"). Przy śmierci odczytujesz wartość i sprawdzasz czy posiada metadatę "team", której wartością przykładowo jest "green" (lub czy posiada scoreboard tag "green"). Jest to możliwe do zrobienia w czystym Skript'cie.

2. Przy pomocy skript-reflect możesz przechwycić główny scoreboard serwera i następnie ustawiasz zawartość teamu do listy i sprawdzasz czy dany team zawiera tego ghasta.

# Przechwytujemy wszystkie teamy do listy
set {_teams::*} to Bukkit.getServer().getScoreboardManager().getMainScoreboard().getTeams()

# Zapętlamy listę
loop {_teams::*}:

	# Sprawdzamy czy nazwa zapętlanego teamu to "Green"
	loop-value.getName() is "Green"
	
	# Sprawdzamy czy ten team zawiera nazwę naszego ghasta (która jest zawsze widoczna nad głową) (każda musi być INNA dla każdego ghasta, gdyż Set w Javie (jeden z wielu typów list) nie może posiadać duplikatów)
	loop-value.hasEntry("%display name of victim%")
	
	# Po tym warunku możemy wyjść z pętli...
	exit loop
	
	# ... i dalej już wiemy, że ten ghast należał do tego teamu.

Oczywiście drugi sposób wymaga jeszcze dorobienia sobie kilku rzeczy w kodzie i zaimportowania odpowiednich klas. Chciałem jedynie pokazać jak to można zrobić.

3. Używamy w tym celu dodatku Skellett.

Przechwytywanie teamów: https://skripthub.net/docs/?id=513

Przechwytywanie teamu od tekstu (np. może to być nazwa ghasta): https://skripthub.net/docs/?id=507

To by było właściwie na tyle, możesz jeszcze rzecz jasna poszukać samemu w dokumentacji (np. SkUnity, Skripthub), coś się na pewno znajdzie.

Odnośnik do komentarza
https://skript.pl/temat/44172-pytanie/#findComment-276994
Udostępnij na innych stronach

Nieaktywny
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

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