Witam! Na prośbę niektórych czytelników mojego poradnika postanowiłem napisać artykuł dotyczący tworzenia roślin o wysokości dwóch bloków. Nie jest to wcale skomplikowane. Wykorzystałem do tego grafikę bloku trzciny cukrowej (przerobiłem ją troszkę w programie graficznym) i zrobiłem z niego „kwiecistą trzcinę. Nasza trzcina będzie miała wysokość dwóch bloków. Będzie się składać z dwóch różnych tekstur. Zaczynamy!
Cały nasz efekt będzie prezentował się tak:
1. Główny plik naszej modyfikacji
Nie muszę chyba tłumaczyć, że zaczynamy od podstawowego naszego projektu, w którym do dyspozycji mamy tylko plik „Tutorial.java„. Otwieramy go i zadeklarujemy dwie zmienne. Do jednej przypiszemy nasz blok trzciny, a do drugiej item naszej trzciny. Za pomocą naszego item’u będziemy mogli postawić nasz blok w dowolnym miejscu oraz wypadnie on z naszego bloku po uprzednim zniszczeniu trzciny. Następnie zarejestrujemy nasz blok i dodamy zmienne językowe. Całość pliku powinna wyglądać tak:
Tutorial.java
Zauważyliście dziwne nazwy plików class do których się odwołujemy (czyli „TutorialKwitnacaTrzcina” oraz „TutorialItemKwTrzcina”). To są nazwy wymyślone tylko i wyłącznie przeze mnie. Zaraz wszystko wytłumaczę.
2. Tworzenie naszego Item’u
Item ten, jak już wspomniałem, będzie widoczną dla nas i jedyną możliwą do zdobycia częścią naszej kwiecistej trzciny. Tworzymy nowy plik class w naszej paczce i nazywamy go: „TutorialItemKwTrzcina„. Wiem, wiem – dziwaczna nazwa. Możecie oczywiście nazwać ten plik jak tylko chcecie. Edytujemy go, aby wyglądał tak:
TutorialItemKwTrzcina.java
W procedurze onItemUse , która wywoływana jest po użyciu naszego item’u, stworzyliśmy funkcję która sprawdza czy w tym miejscu można postawić nasz blok (czy nic tam nie ma). Jeśli tak tworzymy dwa bloki. Jeden o wartości meta 0, a drygi 1. Dlaczego tak? Pamiętacie część poradnika, w której tworzyliśmy kwiaty? Tak samo jak poprzednio do poszczególnych wartości meta przypisujemy poszczególne grafiki. Meta = 0 – czyli dół kwiatka. Meta = 1 – czyli góra kwiatka.
3. Tworzenie głównego pliku naszego bloku
Tworzymy nowy plik class i nazywamy go „TutorialKwitnacaTrzcina„, oraz edytujemy do takiej postaci:
TutorialKwitnacaTrzcina.java
W komentarzach opisałem tylko te nowe i ważne procedury. Pozostałe powinniście już znać z pozostałym części poradnika. Procedura onNeighborBlockChange wywoływana jest tylko wtedy gdy w pobliżu postawimy lub zniszczymy jakiś blok. Możemy dzięki temu wykorzystać ją do niszczenia naszego kwiatka. W związku z tym, że nasz kwiatek składa się z dwóch bloków, gdy jeden zniszczymy drugi też ulegnie zniszczeniu.
Całość tego pliku class nie powinna sprawić Wam problemu. Kod jest dość krótki i czytelny.
4. Kod źródłowy + grafika
Całość kodu możecie pobrać tutaj: >> Pobierz <<
Na koniec miał bym małą podpowiedź. Tym którym podobają się kwiatki z wersji 1.7.4, mogą z powodzeniem przenieść je na 1.6.4 podmieniając jedynie grafikę. Moją grafikę stworzyłem na poczet tego poradnika, więc nie jest ona ani zbyt ładna, ani idealna.
Przypomnę też, że możecie zadawać mi pytania (dotyczące poradnika) w komentarzach oraz na forum. Postaram się wszystkim odpowiedzieć.