No siemanko! Witajcie w oficjalnie pierwszym poradniku pisania pluginów.
SPIS PORADNIKÓW:
#0 - https://craftportal....dstawa-pluginu/
Dziś napiszemy prostą komendę wysyłającą "Hello World" do gracza.
Z POWODU, IŻ NAPISAŁEM PORADNIK ŹLE POSTANOWIŁEM GO NAPISAĆ JESZCZE RAZ.
POPRZEDNIA WERSJA STRACONA.
==================================================================
Zaczynajmy!
Pierwszą rzeczą będzie w onCommand(...) sprawdzenie, czy została wprowadzona nasza komenda.
Czyli:
if(cmd.equalsIgnoreCase("hello") { }
Tutaj będziemy wpisywać, co będzie się działo w komendzie.
Nasza komenda zapomniałem powiedzieć będzie TYLKO dla gracza.
Dlatego w naszym sprawdzeniu dopisujemy
if(sender instanceof Player) { } else { }
Else oznacza komendy, które się wykonają, gdy warunek nie zostanie spełniony.
A w If(sender...)
stwórzmy zmienną typu Player o wartości (Player) sender;
Czyli:
Player p = (Player) sender;
Taki kod jest poprawny, sam z niego korzystam.
Teraz możemy wpisać metodę która będzie wysyłała do gracza "Hello World"
Metoda wygląda tak:
p.sendMessage("Hello World!");
Dobrze gotowe.
Następnie w else piszemy:
Bukkit.getServer().getConsoleSender().sendMessage("Musisz być graczem!");
Czyli tak będzie wyglądał gotowy kod:
if(cmd.equalsIgnoreCase("hello") { if(sender instanceof Player) { Player p = (Player) sender; p.sendMessage("Hello World!"); } else { Bukkit.getServer().getConsoleSender().sendMessage("Musisz być graczem!"); } }
Oczywiście możemy zrobić, by tekst był na kolorowo!
Więc zmieńmy p.sendMessage(...) na:
p.sendMessage(ChatColor.GREEN + "Hello World");
To wyśle również do gracza wiadomość, ALE o kolorze zielonym.
Pisząc ChatColor. możemy zobaczyć wszystkie możliwe kolory, również format.
Dobrze. Komenda gotowa. Teraz musimy ją zarejestrować w plugin.yml.
Dlatego w plugin.yml piszemy:
commands: hello: description: Wpisz, by dostac wiadomosc!
Dobra.
(Ja mam zainstalowany inny styl Eclipse)
Na "prośbę" innych pokażę jak eksportować plugin:
Krok 1:
Otwórz menu "File".
Użytkownik CPlay edytował ten post 07 July 2014 - 12:31