Jump to content
×
×
  • Create New...

[TUTORIEL] Créer son premier plugins bukkit #5


Recommended Posts

  • Bot

Bonjour,

 

aujourd'hui dans ce tutoriel on va parler des commandes...

 

Mais on va parler de comment ranger ses commandes.

 

Imaginons que vous vouliez faire un plugins avec des centaines de commandes, par question de tous les laisser dans le fichier Main comme je vous l'ai appris pour l'instant !

 

 

 

Le but vas donc etre de créer un class par commande !

 

Comment faire ? c'est simple !

En gros, ça va donner ça :  (plugin à moi que j'ai commencé à dev.)

080842Capture.PNG

 

Vous allez avoir comme les autres épisode besoin de éclipse et d'un serveur pour tester le tout :33

 

 

 

 

Tout d'abord, je vais dans dans mon java project créer un nouveau package, on s'y retrouvera mieux.

Je vais le nommer "com.FE.fr.cmd (FE = nom de mon plugin, cmd = command, le reste c'est une habitude)

080923Capture.PNG

Dans ce même package, je vais créer une class que je vais appeler... "help" !

080955Capture.PNG

 

Dans ce help, je vais donc avoir ça :

 

 

package com.FE.fr.cmd;

public class help {

}
 

 

 

 

On va maintenant lui "dire" que c'est un fichier de commands, on va l’implémenter CommandExecutor !

 

 

package com.FE.fr.cmd;

public class help implements  CommandExecutor {

}
 

 

 

 

maintenant vous voyez des erreurs, corrigé les avec la première solution à chaque fois et vous obtiendrez :

 

package com.FE.fr.cmd;

import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;

public class help implements CommandExecutor {

   @Override
   public boolean onCommand(CommandSender arg0, Command arg1, String arg2, String[] arg3) {
       // TODO Auto-generated method stub
       return false;
   }
   
}
 

 

 

 

On va maintenant supprimer les valeurs inutiles :

 

package com.FE.fr.cmd;

import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;

public class help implements CommandExecutor {
   @Override
   public boolean onCommand(CommandSender arg0, Command arg1, String arg2, String[] arg3) {


       return false;
   }
   
}
 

 

 

 

 

Ceci fait, on va maintenant utilisé les termes dont je vous ai habitué pour le OnCommand (à une exception près pour vous..., vous comprendrez)

 

On va donc changer le CommandSender par p, la Command par command, le string par label et l'autre string par l'args. ça donne donc :

 

package com.FE.fr.cmd;

import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;

public class help implements CommandExecutor {
   @Override
   public boolean onCommand(CommandSender p, Command command, String label, String[] args) {


       return false;
   }
   
}


 

Voilà, une fois ceci fait, on va par exemple dans cette commande (help) sera utilisé envoyer un message.

p

ackage com.FE.fr.cmd;

import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;

public class help implements CommandExecutor {
   @Override
   public boolean onCommand(CommandSender p, Command command, String label, String[] args) {
       p.sendMessage("Non tu vas sur FE dans le séction A/D/S si tu as besoin d'aide ! ");

       return false;
   }
   
}
 

 

 

En gros, on récupère le "p" soit le CommandSender et on lui envoie un message. Oubliez pas le point virgule, je vous vois venir !

 

Maintenant, on va sauvegarder cette classe.

 

 

 

Allez ensuite dans votre Main !

 

Une fois dans celle si, on va importer la commande quand le plugin se lance donc :

   

public void onEnable() {

}

 

 

 

 

vous allez écrire :

 

 

 

public void onEnable() {
       getCommand("help").setExecutor(new help());
}
 

 

N'oubliez pas d'importer le help. le premier "help" est la commande qui doit être tapé pour que soit exécutée la class de la commande que vous venez de faire.

 

N'oubliez pas maintenant de faire votre plugin.yml en mettant bien commands: à la ligne 4 espaces et mettre la commande mise entre les guillement à l'instant comme si c'était une commande faite dans le Main.

 

 

 

J'espere que ce tutoriel pourra vous aidez.

 

 

Bon Brownies !

 

 

Cordialement.

Edited by FBot

090100logo.png 090149logo-4-bis.png

Link to comment
  • Replies 0
  • Created
  • Last Reply

Top Posters In This Topic

Popular Days

Top Posters In This Topic

Popular Days

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


Important Information

Terms of Use / Privacy Policy / Guidelines / We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.