Partage
  • Partager sur Facebook
  • Partager sur Twitter

[BUKKIT Minecraft] Coondition and List

    20 avril 2021 à 10:27:46

    • Hi ! I have a probleme with my code... The line  68 of my PPlayListeners Don't work ! But I don't have any error messages,this is juste as the condition don't work, and I don't know Why, and how resolve it .. someone can help me ?

     This is My Main

    package fr.kyoo.pluginbase;
    
    import java.util.ArrayList;
    import java.util.List;
    
    import org.bukkit.Bukkit;
    import org.bukkit.Difficulty;
    import org.bukkit.entity.Player;
    import org.bukkit.plugin.PluginManager;
    import org.bukkit.plugin.java.JavaPlugin;
    
    import fr.kyoo.pluginbase.commands.CommandP;
    import fr.kyoo.pluginbase.commands.PState;
    import fr.kyoo.pluginbase.listeners.PPlayerListeners;
    
    
    public class Main extends JavaPlugin {									//control shit o tout importer  
    	
    	private List<Player> players = new ArrayList<>();
    	private List<Player> playerig = new ArrayList<>();
    	
    	
    
    
    	private PState state;
    	@SuppressWarnings("deprecation")
    	@Override
    	public void onEnable() {
    								System.out.println("Le plugin vient de s'ouvrir");
    		super.onEnable();
    		
    		getCommand("test").setExecutor(new CommandP(this));
    		getCommand("alert").setExecutor(new CommandP(this));
    		getCommand("p").setExecutor(new CommandP(this));
    		setState(PState.WAITING);
    		PluginManager pm = getServer().getPluginManager();
    		pm.registerEvents(new PPlayerListeners(this), this);
    		
    		if (isState(PState.WAITING)) {
    			
    			Bukkit.getWorld("world").setPVP(false);
    			Bukkit.getWorld("world").setDifficulty(Difficulty.HARD);
    			Bukkit.getWorld("world").setStorm(false);
    			Bukkit.getWorld("world").setThundering(false);
    			Bukkit.getWorld("world").setFullTime(1000);
    		}
    		
    	}
    	public void setState(PState state) {
    		
    		this.state = state;
    		
    	}
    	
    	public boolean isState(PState state) {
    		
    		return this.state == state;
    	}
    
    	
    	
    	public List<Player> getPlayers() {
    		
    		return players;
    	}
    	
    	public List<Player> getPlayersig() {
    		
    		return playerig;
    	}
    
    	
    	
    	
    	
    	@Override
    	public void onDisable() {
    								System.out.println("Le plugin vient de se fermer");
    		super.onDisable();
    	}
    
    }

    My "CommandP " 

    package fr.kyoo.pluginbase.commands;
    
    import java.util.Arrays;
    import java.util.HashMap;
    import java.util.Map;
    import java.util.Random;
    
    import org.bukkit.Bukkit;
    import org.bukkit.Difficulty;
    import org.bukkit.GameMode;
    import org.bukkit.Location;
    import org.bukkit.Material;
    import org.bukkit.Sound;
    import org.bukkit.command.Command;
    import org.bukkit.command.CommandExecutor;
    import org.bukkit.command.CommandSender;
    import org.bukkit.enchantments.Enchantment;
    import org.bukkit.entity.Player;
    import org.bukkit.inventory.ItemFlag;
    import org.bukkit.inventory.ItemStack;
    import org.bukkit.inventory.meta.ItemMeta;
    import org.bukkit.potion.PotionEffect;
    import org.bukkit.potion.PotionEffectType;
    
    import fr.kyoo.pluginbase.Main;
    import fr.kyoo.pluginbase.listeners.PPlayerListeners;
    import fr.kyoo.pluginbase.tasks.PGameuf;
    
    public class CommandP implements CommandExecutor {
    	
    	private final Main main;
    	 
    	  public CommandP(Main main) {
    	     this.main = main;
    	  }
    	  
    	 
    Map<String,Long> cooldown = new HashMap<String, Long>();
    
    
    	@SuppressWarnings("deprecation")
    	@Override
    	public boolean onCommand(CommandSender sender, Command cmd, String msg, String[] args) {
    		
    		if(sender instanceof Player) {
    			
    			Player player = (Player)sender;				
    				if(cmd.getName().equalsIgnoreCase("p")) {
    				if(args.length == 0) {
    					player.sendMessage("§CINVALID SYNTAX --> §d/p aide");
    						return true;
    }
    
    
    
    else if (main.isState(PState.WAITING) && args[0].equalsIgnoreCase("start")) {
    					if(player.hasPermission("start.use") ) {
    						
    						main.setState(PState.GAME);
    						for ( Player evone : Bukkit.getOnlinePlayers()) {
    
    
    							//tp  dist max - min + randomtp
    							int max = 2500;
    							int min = 1750;
    
    							int x = new Random().nextInt(max - min) + min ;
    							int z = new Random().nextInt(max - min) + min ;
    
    							Location loc = new Location(player.getWorld(), x, 0, z);
    							int y = loc.getWorld().getHighestBlockYAt(loc) + 10;
    							loc.getChunk().load();
    
    							//le set final
    							loc.setY(y);
    							
    							for(int i = 0; i < Bukkit.getOnlinePlayers().size(); i++) {
    								
    								
    								
    							}
    							
    							//la tp
    							
    							
    							evone.teleport(loc);
    							
    							//l'effet
    							evone.removePotionEffect(PotionEffectType.DAMAGE_RESISTANCE);
    							evone.addPotionEffect(new PotionEffect (PotionEffectType.DAMAGE_RESISTANCE, 600, 1000, false, false));
    							evone.addPotionEffect(new PotionEffect (PotionEffectType.BLINDNESS, 150, 1000, false, false));
    							evone.setGameMode(GameMode.SURVIVAL);
    							
    							
    							
    							//Le message de tp + des effets
    							evone.sendMessage("§f---------§8§lPARADIS§f--------");
    							evone.sendMessage("§fTu as bien été §d§lTéléporté");
    							evone.sendMessage("§fTu es §d§lInvincible §fpendant §d§l30secondes");
    							evone.sendMessage("§f---------§8§lPARADIS§f--------");
    							
    							Bukkit.getScheduler().runTaskLater(main, new Runnable() {
    								
    								@Override
    								public void run() {
    									//BROADCAST DE START
    									
    									evone.sendMessage("");
    									evone.sendMessage("§f-------------------------------------");
    									evone.sendMessage("           §8§lBienvenue sur §d§l[PARADIS] §8§l!");
    									evone.sendMessage("§f-------------------------------------");
    									evone.sendMessage("");
    									evone.playSound(evone.getLocation(), Sound.LEVEL_UP, 1f, 1f );
    								}
    							}, 20 * 7);
    
    							
    						}
    						main.getPlayersig().add(player);
    						System.out.println(main.getPlayersig().size());
    						
    						PGameuf uf = new PGameuf(main);
    						uf.runTaskTimer(main, 0, 20);
    						Bukkit.getWorld("world").setPVP(false);
    						Bukkit.getWorld("world").setDifficulty(Difficulty.HARD);
    						Bukkit.getWorld("world").setStorm(false);
    						Bukkit.getWorld("world").setThundering(false);
    			
    
    					}
    					
    				
    					else {
    						
    						player.sendMessage("§cVous §c§ln'avez §c§lpas la §c§lpermission");
    					}
    				
    
    					
    				}
    
    				
     
    				
    				else {
    					
    					player.sendMessage("§CINVALID SYNTAX --> /p §daide");
    					return true;
    
    				}
    					
    						
    					
    
    
    					
    				}		
    					return true;
    			}
    	
    				
    				
    			
    			
    
    		
    		
    		
    		
    		
    		return false;
    	}
    
    
    	}

    This is my PPlayerListeners

    package fr.kyoo.pluginbase.listeners;
    
    import java.util.ArrayList;
    import java.util.List;
    
    import org.bukkit.Bukkit;
    import org.bukkit.GameMode;
    import org.bukkit.Location;
    import org.bukkit.Material;
    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.PlayerJoinEvent;
    import org.bukkit.event.player.PlayerQuitEvent;
    import org.bukkit.event.player.PlayerTeleportEvent;
    import org.bukkit.inventory.ItemStack;
    import org.bukkit.potion.PotionEffect;
    import org.bukkit.potion.PotionEffectType;
    
    import fr.kyoo.pluginbase.Main;
    import fr.kyoo.pluginbase.commands.PState;
    import fr.kyoo.pluginbase.commands.CommandP;
    
    public class PPlayerListeners implements Listener{
    
    	private Main main;
    	
    	public PPlayerListeners(Main main) {
    		this.main = main;
    
    	}
    
    	
    	 
    	
    	@EventHandler
    	public void onJoin(PlayerJoinEvent event) {
    		
    		
    		System.out.println(main.getPlayersig().size());
    		System.out.println(main.getPlayersig().toString());
    		
    		Player player = event.getPlayer();
    		Location spawn = new Location(Bukkit.getWorld("world"), 10, 202, -11, 1f, 1f);
    		//Player evone = (Player) Bukkit.getOnlinePlayers();
    		
    		
    
    		
    		if(main.isState(PState.WAITING)) {
    			
    			event.setJoinMessage(null);
    			player.teleport(spawn);
    			player.getInventory().clear();
    			player.setFoodLevel(20);
    			player.setHealth(20);
    			player.getInventory().addItem( new ItemStack(Material.GOLDEN_CARROT, 64));
    			player.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 99999, 100000000, false, false ));
    			player.setGameMode(GameMode.ADVENTURE);
    
    			Bukkit.broadcastMessage("§5" + player.getName() + " §8[§2+1 §8: §0" + Bukkit.getOnlinePlayers().size() + "/24§8]");
    
    		}
    		
    
    		if(!main.isState(PState.WAITING) && !main.getPlayersig().contains(player)) {
    			
    
    			player.setGameMode(GameMode.SPECTATOR);
    			player.sendMessage("§d[PARADIS] §chas been started");
    			event.setJoinMessage(null);
    			Bukkit.broadcastMessage("§7§o" + player.getName() + " est spectateur.");
    			return;
    		}
    		if(!main.getPlayers().contains(player) ) System.out.println(main.getPlayers().toString());
    
    
    		
    		if(!main.getPlayers().contains(player)) ; main.getPlayers().add(player); 
    		
    		if(!main.isState(PState.WAITING)) {
    			
    			player.setGameMode(GameMode.SURVIVAL);
    			event.setJoinMessage(null);
    			
    			Bukkit.broadcastMessage("§a+ §2" + player.getName() + " §8[§0" + Bukkit.getOnlinePlayers().size() + "/24§8]");
    		}
    
    		
    		
    		
    	}
    
    		
    	
    	@EventHandler
    	public void onQuit(PlayerQuitEvent event) {
    		Player player = event.getPlayer();
    
    		if(main.isState(PState.WAITING)){
    				
    				event.setQuitMessage(null);
    				Bukkit.broadcastMessage("§5" + player.getName() + " §8[§4-1 §8: §0" + (Bukkit.getOnlinePlayers().size() - 1) + "/24§8]");
    
    		}
    		 
    
    		if(!main.isState(PState.WAITING)&& player.getGameMode() == GameMode.SURVIVAL){
    			Bukkit.broadcastMessage("§4- §c" + player.getName() + " §8[§0" + (Bukkit.getOnlinePlayers().size() - 1) + "/24§8]");
    
    			event.setQuitMessage(null);
    
    			
    		}
    		
    
    		
    		if(!main.isState(PState.WAITING) && player.getGameMode() != GameMode.SURVIVAL) {
    
    			Bukkit.broadcastMessage("§7§o" + player.getName() + " n'est plus spectateur.");
    			event.setQuitMessage(null);
    
    		}
    		System.out.println(main.getPlayersig().size());
    		System.out.println(main.getPlayersig().toString());
    
    		
    	}
    
    
    }
    

    If you have time of course ! 


    • Partager sur Facebook
    • Partager sur Twitter

    [BUKKIT Minecraft] Coondition and List

    × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
    × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
    • Editeur
    • Markdown