Witam! W ostatniej części stworzyliśmy nową rudę. Nie może ona pozostać niewykorzystana. Dlatego wytworzymy dzisiaj nowe narzędzie, jakim jest różdżka. Do jej craftingu wykorzystamy naszą rudę. Co będzie robić nasza różdżka? Spowodujemy, że zamieni ona blok dirta na diamentowy blok. Zaczynamy!
1. Podstawowy plik różdżki.

Zaczynamy od stworzenia nowego pliku class. W tym celu (przypomnę dla zapominalskich) klikamy prawym przyciskiem myszy na naszą paczkę „tutorial„, wybieramy New –> Class. Nasz plik nazywamy „TutorialWand„. Całość pliku modyfikujemy tak:

TutorialWand.java

Widzimy rozszerzenie naszej klasy: Item. Każdy przedmiot w grze (kilof, łopata, jajko) ma rozszerzenie Item. Następnie w kreatorze naszej klasy widzimy wpis „*this.setMaxDamage(39);”. *Oznacza on, że nasza różdżka może być użyta jedynie 40 razy (od 0 do 39 = 40). Wartość tą oczywiście możecie zmienić. Dalej w kodzie przypisujemy nasz Item do zakładki „Narzędzia”.

Procedura „onItemUse” odpowiada oczywiście za to, co stanie się po kliknięciu prawym przyciskiem myszy. W skrócie: za użycie przedmiotu. W „środku” tej procedury macie cały kod odpowiedzialny za podmienienie bloku. Każdą ważną linijkę kodu macie opisaną w kodzie źródłowym. Cały plik jest bardzo krótki i nie powinien nikomu sprawić żadnych trudności.

2. Główny plik, czyli małe przeróbki.

Otwieramy teraz główny plik naszej modyfikacji, czyli „Tutorial.java„. Musimy stworzyć nową zmienną, do której przypiszemy nasz item. Stworzymy również dodatkowy przedmiot, jakim będzie magiczna sztabka. Powstanie ona po przetopieniu w piecyku naszej rudy. Zaraz pod miejscem, w którym przypisywaliśmy do zmiennej naszą rudę, piszemy:

W ten sposób stworzyliśmy różdżkę i magiczną sztabkę. Sztabkę, jak widzicie, przypisaliśmy do zakładki „Materiały„. W odróżnieniu od bloków, itemów nie trzeba rejestrować. Jedyna czynność, jaką wykonujemy, to przypisanie itemu do zmiennej, tak, jak zrobiliśmy to przed chwilą.

Oczywiście nie muszę chyba przypominać o dodaniu zmiennych językowych, czyli o nadaniu nazw naszym przedmiotom. Przypomnę tylko, że robimy to w procedurze ładującej naszego moda.

Pozostało nam tylko dodanie receptury przepalania i craftingu. Receptury również piszemy w procedurze ładującej naszego moda. Zaczniemy od procedury przepalania. Jest ona bardzo prosta. Wpisujemy: „GameRegistry.addSmelting(OreTutorial.blockID, new ItemStack(MagicIngot, 1), 0.0F);„. Całą procedurę możemy wytłumaczyć tak:

Jeśli chodzi o crafting, to całość może być dla niektórych lekko niezrozumiała – ale spokojnie. To tak naprawdę nic trudnego. Tworzymy recepturę, wpisując taki kod: „**

GameRegistry.addRecipe(new ItemStack(TutWand, 1),  new Object[]{„A”, „B”, „B”, Character.valueOf(‚A’),  new ItemStack(MagicIngot, 1),  Character.valueOf(‚B’),  new ItemStack(Item.stick, 1),});„. Całość tłumaczę na rysunku poniżej:

Wszystko gotowe! Możecie teraz uruchomić nasz kod. I jak efekt? Mi się podoba… ;)

3. Kod źródłowy + grafika

Do pobrania stąd: >>Pobierz<<