Stap 7: Codering: opdracht
Nu we de basis twee methoden klaar, en maken onze klas de officiële Hoofdklasse, kunnen we de functie command.
Voor onze opdracht willen we worden georganiseerd, zodat wij deze in een afzonderlijke klasse van onze hoofdagenda. Ga naar uw links en maak een nieuwe klasse. Ik zal mijn "CommandClass" noemen. Wij willen deze nieuwe klasse uit te voeren CommandExecutor. Als u de methoden implementeert, krijgt u zoiets als dit:
public boolean onCommand(CommandSender commandSender, Command command, String s, String[] strings) { return false; }
We hebben nu een methode die wordt uitgevoerd wanneer u in een opdracht typt. We willen luisteren voor een bepaalde opdracht, dus we zoiets zullen voordat onze methode false retourneert:
if (command.getLabel().equalsIgnoreCase("instructables"))
Dit krijgt wat u hebt getypt in, command.getLabel en controles als het gelijk aan "instructables is". zoals u weet wellicht, controleert equalsIgnoreCase als onze opdracht gelijk is aan wat we getypt geen kwestie als sommige tekens geconverteerd naar hoofdletters of niet zijn.
Toevoegen sommige accolades na dat als verklaring, en voeg dit toe:
commandSender.sendMessage(ChatColor.GOLD + "Put whatever you want here!");
Wat dit doet, is het wordt de variabele commandSender die is degene die de opdracht (of console) verzonden en wij een boodschap aan hen met de functie sendMessage die accosts van een tekenreeks. Een ding dat anders dan een tekenreeks schijnen kan is dit ChatColor.GOLD. Dit maakt wat is na het het goud van kleur. De kleuren die u kunt doen staan mooi recht hier. De technische namen gebruiken bij de samenstelling van het na ChatColor..
Vervolgens direct na dat, nog steeds in de accolades, hebben de functie retourneert de waarde true:
return true;
Dit is omdat wij de server vertellen dat de opdracht is voltooid/erkend.
In de voltooide vorm is de onCommand -functie moet als volgt uitzien:
openbare Booleaanse onCommand (CommandSender commandSender, opdracht Command, String s, tekenreeksen met String []) {} public boolean onCommand(CommandSender commandSender, Command command, String s, String[] strings) { if (command.getLabel().equalsIgnoreCase("instructables")) { commandSender.sendMessage(ChatColor.GOLD + "Put whatever you want here!"); return true; } return false; } { commands: instructables: description: Activated our Instructables command! usage: /instructables