Skocz do zawartości
  • 0

Własne bloki


xMuffionex

Pytanie

Cześć, moje pytanie brzmi czy istnieje tak jak w standardowych pluginach, pisanych w javie, dodanie wlasnego bloku z wlasnym craftingiem itp. Jeżeli by sie dało to fajnie by było gdyby też mogły mieć własną teksturę, oraz abym mógł dodawać customowe dropy z nim (jezeli sie go zniszczy wypada inny customowy item). Prosiłbym o jakiś przykład albo o podlinkowanie tutoriala

Odnośnik do komentarza
https://skript.pl/temat/52705-w%C5%82asne-bloki/
Udostępnij na innych stronach

7 odpowiedzi na to pytanie

Rekomendowane odpowiedzi

  • 0

https://skripthub.net/tutorials/47

^Tutaj masz tworzenie receptur do craftowania. Własną teksturę też powinno móc się zrobić, tylko trzeba się bawić bodajże z NBT tagami/datapackami. A jak chcesz zrobić custom drop to masz tutaj przykład:

on place of coal ore:
	if name of player's tool is "&7Nowy blok":
		set {miejsce.%location of event-block%} to "nowy blok"

on break of coal ore:
	if {miejsce.%location of event-block%} is "nowy blok":
		drop 5 coal named "&7Kozacki węgielek"

Wygląd przedmiotów również zmieniasz przez nbt tagi/datapacki

Odnośnik do komentarza
https://skript.pl/temat/52705-w%C5%82asne-bloki/#findComment-321935
Udostępnij na innych stronach

  • 0
Godzinę temu, xMuffionex napisał:

Cześć, moje pytanie brzmi czy istnieje tak jak w standardowych pluginach, pisanych w javie, dodanie wlasnego bloku z wlasnym craftingiem itp. Jeżeli by sie dało to fajnie by było gdyby też mogły mieć własną teksturę, oraz abym mógł dodawać customowe dropy z nim (jezeli sie go zniszczy wypada inny customowy item). Prosiłbym o jakiś przykład albo o podlinkowanie tutoriala

Tak, ale tworzenie customowych bloków nie jest takie proste. Jeżeli chcesz w pełni imitujące nowe bloki potrzebujesz do tego resourcepacka i umiejętność robienia takowego. Przykładowym pluginem jest Oraxen, który wykorzystuje to, że noteblocki mają tonę typów ze względu na dźwięk. Problemem tego jest to, że należy zablokować używanie noteblocków w celu grania na nich. Jeżeli ogarniasz jave, możesz zajrzeć do kodu oraxena,  powinno ci to ułatwić robienie customowych bloków w skrypcie.

Natomiast jeżeli customowa tekstura nie jest ci tak bardzo potrzebna, to możesz zapisywać lokalizacje postawionego bloku jeżeli spełnia wymagania customowego i podmieniać drop podczas niszczenia (pamiętaj o usuwaniu zapisanej lokalizacji). Jeżeli chcesz to bardziej rozbudować to oprócz lokalizacji możesz zapisywać również twój customowy typ bloku, aby ułatwić szukanie dropu odpowiedniego dla twojego customowego bloku.
Przykładowo:

function findDrop(type: text) :: itemstack:
	if {_type} = "ruby_ore":
		return red dye named "Ruby"
	return {_none}

on place of redstone ore:
	if name of player's tool = "Ruby Ore":
		set {customOre::%location of event-block%} to true
		set {customOre::%location of event-block%::type} to "ruby_ore"

on mine of redstone ore:
	if {customOre::%location of event-block%} is set:
		clear drops
		clear {customOre::%location of event-block%}
		clear {customOre::%location of event-block%::type}
		drop findDrop({customOre::%location of event-block%::type})

Dawno skryptów nie pisałem, więc nie wiem czy zadziała, ale powinno

Edytowane przez Glicz
Odnośnik do komentarza
https://skript.pl/temat/52705-w%C5%82asne-bloki/#findComment-321941
Udostępnij na innych stronach

  • 0
10 minut temu, xMuffionex napisał:

A jak sie serwer zrestartuje to te zmienne nadal będą zapisane tak jakby?

Tak, zwykłe zmienne są zapisywane w pliku, ale zmienne tymczasowe już nie

Odnośnik do komentarza
https://skript.pl/temat/52705-w%C5%82asne-bloki/#findComment-321943
Udostępnij na innych stronach

  • 0
W dniu 22.05.2022 o 22:29, xMuffionex napisał:

Zmienne tymczasowe to np {_cos::%player%}?

To są zmienne typu lista, a takie są zapisywane w pamięci serwera o ile nie mają "podłogi" na początku. // poprawione, przepraszam za błąd
wiem, data - ale lepiej późno niż wcale

Edytowane przez SlaVistaPL_
Odnośnik do komentarza
https://skript.pl/temat/52705-w%C5%82asne-bloki/#findComment-322107
Udostępnij na innych stronach

  • 0
3 minuty temu, SlaVistaPL_ napisał:

Nie. To są zmienne typu lista, a takie są zapisywane w pamięci serwera. Zmienne tymczasowe to np. "{mojazmienna}".

Nie i nie wprowadzaj w błąd. Zmienne tymczasowe zaczynają się od '_' niezależnie od tego czy to lista czy zwykła zmienna

Odnośnik do komentarza
https://skript.pl/temat/52705-w%C5%82asne-bloki/#findComment-322108
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ę...