Kontynuuję serię, jednak po długim czasie bo cięzko jest wszystko objaśnić w temacie, zawsze mogę czegoś zapomnieć i źle zrozumiecie, oraz kosztuje to dużo czasu (z ssami) mam nadzieję że robię to dla kogoś a nie tylko dla siebie, chodź na pewno dużo osób się znajdzie.
Ostatni poradnik: (#1 Klik)
W tym poradniku zajmiemy się pierwszą komendą będzie to prawdopodobnie "/czesc" bez Polskich znaków, która będzie odsyłac nam Cześć + nasz nick.
Przechodzimy do projektu, i po extends JavaPlugin
dodajemy implements CommandExecutor
ma to wyglądać tak
public class Main extends JavaPlugin implements CommandExecutor {
Main to oczywiście nasza główna klasa w której aktualnie pracujemy.
Prawdopodobnie znów masz błąd na CommandExecutor jeśli pamiętasz z ostatniego poradnika wystarczy na niego najechać i kliknąc pierwszy import :) lub standardowo CTRL + SHIFT + O
Następnie musimy dodać w onEnable(){
getCommand("czesc").setExecutor(this);
to pokaże gdzie pluginowi że w tej klasie znajduje się ta komenda.
oraz w plugin.yml commands: [enter] [dwie spacje] czesc:
Kolejnym krokiem będzie dodanie metody onCommand
@Override
public boolean onCommand(CommandSender sender, Command cmd, String arg, String[] args){
return false;
}
CommandSender to jest ten co wysyła wiadomość a sender to po prostu skrócona nazwa której będziemy używać aby dotrzeć do metod z jego klasy np. sender.getName(); możesz to zamienić na np. gracz - gracz.getName(); Command cmd oznacza tą komendę którą możemy potem używać do porównywania rzeczy itd. args[] to są argumenty o których więcej w następnym poradniku np. /czesc to ja
To jest metoda dzięki której będziemy mogli kontrolować co się stanie po wpisaniu danej komendy, aby dodać komende "czesc" dodajemy if(cmd.getName().equalsIgnoreCase("czesc")){
aby odesłać wiadomość do gracza wpisujemy sender.sendMessage("Czesc" + sender.getName());
możemy też z kolorkiem amatorskim sposobem ale szybkim jest użycie znaku "§" zamiast "&" lub też ChatColor
Wiadomość na zielono będzie wyglądać w ten sposób sender.sendMessage(ChatColor.GREEN + "Czesc" + sender.getName());
Całość wygląda w ten sposób:
Oby się nie okazało że zapomniałem o czymś 😄 szczególnie w onCommand bo z pamięci 😛