Afficher le ping d’un joueur avec l’API Sponge sur Minecraft
Petit tuto pour créer une commande qui va afficher votre Ping. Avoir un bon Ping surtout sur des jeux de combat peut être vital!!! Dans ce bref article on va voir comment afficher le ping du joueur qui tape la commande. Ce qui va donner:
Voici le code:
@Override public CommandResult execute(CommandSource commandSource, CommandContext commandContext) throws CommandException { if(commandSource instanceof Player) { Player player = (Player) commandSource; int ping = player.getConnection().getPing(); player.sendMessage( Texts.builder("Hello ").color(TextColors.YELLOW) .append( Texts.builder( player.getName() + " ").color(TextColors.RED).build() ) .append( Texts.builder( "ton ping est: " ).build() ) .append( Texts.builder( "" + ping ).color(TextColors.AQUA).build() ) .build() ); } else if(commandSource instanceof ConsoleSource) { commandSource.sendMessage(Texts.of("La commande doit être taper par un joueur.")); } else if(commandSource instanceof CommandBlockSource) { commandSource.sendMessage(Texts.of("La commande doit être taper par un joueur.")); } return CommandResult.success(); }
Dans ce code très simple, on regarde si la personne qui à tapé la commande est un joueur et si c’est OK on lui donne le ping sinon on affiche un message d’erreur
Ensuite on à juste à déclarer notre commande /ping comme vu précédemment:
CommandSpec ping = CommandSpec.builder() .permission("test.ping") .description(Texts.of("Affiche ton Ping")) .executor(new Ping()) .build(); e.getGame().getCommandDispatcher().register(this, ping, "ping");
Si vous n’y arrivez pas, je vous invite à relire mon premier tuto sur Sponge: Mon premier plugin Minecraft avec Sponge
Tous les codes sont testés et sont fonctionnels, si il arrive qu'un de ces codes ne fonctionne pas chez vous, merci de me le signaler.