Problème de codage

Siroumm

Bucheron
20 Juin 2014
8
1
14
24
Salut, je code actuellement un plugin d'arène pvp, et j'ai un petit problème !
Mon plugin, comme vu, quand je tape la commande "gbw", sa me téléporte pas !
(j'ai fait un systéme d'aléatoires),

mais quand je tape /leave, ça me téléporte dans le monde "World" alors qu'il est sensé me téléporter dans le monde "gbw".

Merci d'avance si vous résolvez mon problème :

Code:
package fr.xpatrice.goldenbattleweapon;


import java.util.HashMap;
import java.util.Random;

import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.event.player.PlayerRespawnEvent;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.scheduler.BukkitRunnable;

public class Main extends JavaPlugin implements Listener{
   
    public void onEnable(){
        System.out.println("Le plugin est bien démarée !");
        PluginManager pm = getServer().getPluginManager();
       
        pm.registerEvents(new Armes (this), this);
        pm.registerEvents(new Commands (this), this);
        pm.registerEvents(new Events (this), this);
    }
   
    public void onDisable(){   
        System.out.println("Le plugin est bien arrêté !");
    }
   
    public final HashMap<String, Player> Joueurs_arene = new HashMap<String, Player>();
   

    public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args){
       
      if (cmd.getName().equalsIgnoreCase("gbw"))
      {
         
          if(sender instanceof Player)
          {
          if (!Joueurs_arene.containsKey(sender.getName()))
          {
            sender.sendMessage(ChatColor.GRAY + "Vous avez rejoint l'arêne !");
            Joueurs_arene.put(sender.getName(), null);

            Random ran = new Random();
            int tparene = ran.nextInt(5);

            if(tparene == 0){
                World gbw = Bukkit.getWorld("gbw");
            Location location = new Location(gbw, -3649, 5, -289);
            ((Player) sender).teleport(location);
           
          if(tparene == 1){
              gbw= Bukkit.getWorld("gbw");
          Location location2 = new Location(gbw, -3649, 10, -289);
          ((Player) sender).teleport(location2);
         
          if(tparene  == 2){
               gbw = Bukkit.getWorld("gbw");
          Location location3 = new Location(gbw, -3695, 5, -246);
          ((Player) sender).teleport(location3);
         
          if(tparene == 3){
               gbw = Bukkit.getWorld("gbw");
          Location location4 = new Location(gbw, -3672, 9, -280);
          ((Player) sender).teleport(location4);
         
          if(tparene == 4){
              gbw = Bukkit.getWorld("gbw");
          Location location5 = new Location(gbw, -3692, 43, -268);
          ((Player) sender).teleport(location5);
         
          if(tparene == 5){
              gbw = Bukkit.getWorld("gbw");
          Location location6 = new Location(gbw, -3718, 5, -289);
          ((Player) sender).teleport(location6);
        }
        }
        }
        }
        }
        }
        }
        }
          else{
           sender.sendMessage(ChatColor.GRAY + "Vous êtes déja dans l'arêne !");
          }
          return true;
      }
     
      else if (cmd.getName().equalsIgnoreCase("leave"))
             {
          if(sender instanceof Player)
          {
          if (Joueurs_arene.containsKey(sender.getName()))
          {
             Joueurs_arene.remove(sender.getName());
             World gbw = Bukkit.getWorld("gbw");
             Location location = new Location(gbw, -393, 5, -612);
             ((Player) sender).teleport(location);
             sender.sendMessage(ChatColor.GRAY + "Vous avez quitté l'arêne !");
         
          }else{
         
           sender.sendMessage(ChatColor.GRAY + "Vous n'êtes pas dans l'arêne !");
          }
          }
          return true;
         }
     
      return false;
    }
   
   
   
   
    @EventHandler
    public void onPlayerQuit(PlayerQuitEvent e)
    {
        if (Joueurs_arene.containsKey(e.getPlayer().getName()))
        {
         Joueurs_arene.remove(e.getPlayer().getName());
         World gbw = Bukkit.getWorld("gbw");
         Location location = new Location(gbw, -393, 5, -612);
         ((Player) e.getPlayer()).teleport(location);
        }
       
    }

    @EventHandler
    public void onPlayerRespawn(final PlayerRespawnEvent e)
    {
        if (Joueurs_arene.containsKey(e.getPlayer().getName()))
        {
        new BukkitRunnable()
        {
            @Override
            public void run()
            {
                           
                Random ran = new Random();
                int tparene = ran.nextInt(5);
            if(tparene == 0){
                World gbw = Bukkit.getWorld("gbw");
            Location location = new Location(gbw, -3649, 5, -289);
            ((Player) e.getPlayer()).teleport(location);
           
          if(tparene == 1){
              gbw = Bukkit.getWorld("gbw");
          Location location2 = new Location(gbw, -3649, 10, -289);
                 ((Player) e.getPlayer()).teleport(location2);
          if(tparene  == 2){
              gbw = Bukkit.getWorld("gbw");
          Location location3 = new Location(gbw, -3695, 5, -246);
                 ((Player) e.getPlayer()).teleport(location3);
          if(tparene == 3){
              gbw = Bukkit.getWorld("gbw");
          Location location4 = new Location(gbw, -3672, 9, -280);
                ((Player) e.getPlayer()).teleport(location4);
         
          if(tparene == 4){
              gbw = Bukkit.getWorld("gbw");
          Location location5 = new Location(gbw, -3692, 43, -268);
                ((Player) e.getPlayer()).teleport(location5);
         
          if(tparene == 5){
              gbw = Bukkit.getWorld("gbw");
          Location location6 = new Location(gbw, -3718, 5, -289);
                          ((Player) e.getPlayer()).teleport(location6);
        }
        }
        }
        }
        }
        }
            }
          
         }.runTaskLater(this, 1);
        }
     }

}
 
Tu as peut etre oublier d'enregistrer ta commande dans ton onEnable ?
Sinon vu que ici ce doit etre ta class principale essaie plutot ca ! Avec le "@Override" !
Code:
public class ExempleCommandExecutor implements CommandExecutor {
    @Override
    public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
    //On fait quelque chose
    return true;
   }
}