Jump to content
×
×
  • Create New...

Créer son premier plugins bukkit #7


Recommended Posts

  • Bot

Bonjour,

 

Aujourd'hui, j'vais vous apprendre un petit truc :

 

Vérifier si la personne est op.

 

 

On commence donc, vous avez eclispe, vous créer votre projet et blablablabla...

 

 

Pour ma part, ça donne ça :

122541Capture.PNG

Mon plugin est assez avancé... Mais bref.

 

je vais donc créer une Class dans mon : com.FC.fr.cmd

On va créer par exemple la commande :

FE

et on va pas afficher le même message selon si le joueur est OP où non :

 

Une fois créer, on obtient ça :

package com.FC.fr.cmd;

public class FE {

}

On va donc le désigner comme un exécuteur de commande :

package com.FC.fr.cmd;

public class FE implements  CommandExecutor {

}

Vous pouvez remarquer que le texte est maintenant souligné de rouge. Vous n'avez cas garder la souris dessus et créer une nouvelle méthode et vous aurez de base :

public class FE implements  CommandExecutor {

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

}

Vous pouvez donc supprimer l'inutile remplacer les args comme vous le voulez, pour ma part, ça donne ça :

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


	return false;
}

}

Une fois fais, nous allons donc vérifier si celui qui utilise la commande, donc le CommandSender est op, donc :

"Si p est op alors :"

Mais avant nous devons désigner les personnes op par ops et après vérifier si elles sont OP (Oui c'est bizarre, mais c'est comme ça...)

ça donne :

public class FE implements  CommandExecutor {

@Override
public boolean onCommand(CommandSender p, Command command, String label, String[] args) {
	for(Player ops : Bukkit.getOnlinePlayers())
	{
	if(ops.isOp())
	{

	return false;
        }
}
	return false;
}
}

Une fois fais, on va par exemple lui envoyé un message :

	public boolean onCommand(CommandSender p, Command command, String label, String[] args) {
	for(Player ops : Bukkit.getOnlinePlayers())
	{
	if(ops.isOp())
	{
	ops.sendMessage("Whaa t'es op la channncceee");
	return false;
}
	}
	return false;
}

Maintenant, on va voir, ce qu'il se passe si il est pas op, donc on mets un else, car soit il est op soit non, pas besoin de refaire un if.

Le tout donne :

	public boolean onCommand(CommandSender p, Command command, String label, String[] args) {
	for(Player ops : Bukkit.getOnlinePlayers())
	{
	if(ops.isOp())
	{
	ops.sendMessage("Whaa t'es op la channncceee");
	return false;
}else{
	p.sendMessage("Toi t'es pas OPPPPPPPP BOOUUHHHH");
}
	}
	return false;
}

Une fois fais, vous allez donc ajouter la commande dans le plugin.yml ça, vous savez faire, mais rendez vous dans votre main :

Faites un :

getCommand("command").setExecutor(new command());

Ce qui donne pour nous :

getCommand("FE").setExecutor(new FE());

En pensant à import "FE"

Vous le mettez bien au démarrage du plugins, ce qui donne :

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

}

Une fois fais, mettez le en .jar et le tours est joué ! :)

Vous pouvez constatez le résultat IG.

Bon développement ::)

Cordialement.

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

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.