Skocz do zawartości
  • 0

Dodanie customowego itemu z pluginu do custom dropu moba


Pytanie

Witam, mam skrypt dodający customowy drop z withera.

on death of wither:
	if victim's name is "&c&lULTRA BOSS ZABIJAKA":
		loop all blocks in radius {@odleglosc} around block above victim:
			if loop-block is air:
				add location of loop-block to {_L::*}
		chance of 100%:
			set {_l} to random element out of {_L::*}
			drop 5 diamond at location at {_l}
		chance of 100%:
			set {_l} to random element out of {_L::*}
			drop 64 golden apple at {_l}

Z tym, że chciałbym do dropu dodać klucze do skrzynek z pluginu ExcellentCrates. Wiem, że da się jakoś do itemów dodawać tagi nbt, i pewnie w tym będzie leżała cała kwestia, tyle że kompletnie nie wiem jak się do tego zabrać. Jakby mógł ktoś chociaż jakoś nakierować jak to zrobić, będę mega wdzięczny za pomoc. Z góry dziękuję :D 

Odnośnik do komentarza
https://skript.pl/temat/57645-dodanie-customowego-itemu-z-pluginu-do-custom-dropu-moba/
Udostępnij na innych stronach

5 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

Hm, możesz spróbować ustawić klucz do zmiennej, możesz to zrobić w taki sposób:

command /ustawklucz:
    trigger:
        set {ZMIENNA} to player's tool

Komenda ustawi przedmiot który gracz trzyma w dłoni do zmiennej.

 

Natomiast ty w swoim kodzie możesz wykorzystać to w taki sposób:

drop {ZMIENNA} at {_l}

Powinno zadziałać.

Odnośnik do komentarza
https://skript.pl/temat/57645-dodanie-customowego-itemu-z-pluginu-do-custom-dropu-moba/#findComment-342956
Udostępnij na innych stronach

  • 0
2 godziny temu, AllowH4ck napisał:

Hm, możesz spróbować ustawić klucz do zmiennej

Oczywiście można powyższy problem rozwiązać w ten sposób, jednak długoterminowo takie podejście nie jest wskazane. Proszę sobie wyobrazić sytuację, w której na serwerze jest dodane kilkanaście (jeśli nie kilkadziesiąt) kluczy. Z pewnością będzie to niewygodne.

11 godzin temu, nnisu napisał:

Wiem, że da się jakoś do itemów dodawać tagi nbt, i pewnie w tym będzie leżała cała kwestia

Również można rozwiązać to w ten sposób, ale autor pluginu ExcellentCrates udostępnił pewne narzędzia do obsługi (ściślej mówiąc, API) pluginu.
Ręczna obsługa NBT jest jeszcze gorsza, proszę tak nie robić. W porównaniu do tego zapisywanie kluczy w zmiennych jest już zdecydowanie lepsze.

Poniżej prezentuję przykładowe rozwiązanie Pana problemu. Do działania poniższego fragmentu kodu wymagany jest dodatek skript-reflect, który swoją drogą jest w mojej ocenie najbardziej uniwersalnym dodatkiem, gdyż otwiera przed twórcami możliwości bezpośredniej pracy z pluginami i bibliotekami Javy.

# Import klasy CratesAPI udostępniającej najważniejsze metody do obsługi graczy, skrzynek, kluczy (najlepiej umieścić na samej górze skryptu)
import:
	su.nightexpress.excellentcrates.CratesAPI
	
# Poniższy kod wstawić w odpowiednie miejsce w skrypcie i skonfigurować wedle potrzeb
set {_keyManager} to CratesAPI.getKeyManager()
set {_yourKey} to {_keyManager}.getKeyById("ID klucza")

Kod napisany na podstawie plików:

Jeśli Pan potrzebuje, dokumentację pluginu skript-reflect znajdzie Pan tutaj.

Zmienna {_yourKey} od tego miejsca zawiera klucz o danym identyfikatorze. Myślę, że Pan będzie już wiedział jak dalej postępować. W razie pytań służę pomocą.

Pozdrawiam.

Edytowane przez Kormic
Odnośnik do komentarza
https://skript.pl/temat/57645-dodanie-customowego-itemu-z-pluginu-do-custom-dropu-moba/#findComment-342961
Udostępnij na innych stronach

  • 0

Dziękuję bardzo za pomoc :D Zdecydowanie wydaje się to lepszą opcją, także spróbuję w wolnej chwili to tak rozwiązać. Bardzo dziękuję za pomoc i za bardzo profesjonalne podejście do tematu :D Również pozdrawiam

Odnośnik do komentarza
https://skript.pl/temat/57645-dodanie-customowego-itemu-z-pluginu-do-custom-dropu-moba/#findComment-342968
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ę...