From 23f46a3cf65e64114b38fa14abe1677bf8cec543 Mon Sep 17 00:00:00 2001 From: Rigner Date: Sat, 21 Mar 2020 03:02:37 +0100 Subject: [PATCH] Fixed exception in /lg end (#4) * Fixed exception in /lg end * Add other checks and error messages Co-authored-by: leomelki --- .../java/fr/leomelki/loupgarou/MainLg.java | 24 ++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/src/main/java/fr/leomelki/loupgarou/MainLg.java b/src/main/java/fr/leomelki/loupgarou/MainLg.java index 0e3863d..8a9b156 100644 --- a/src/main/java/fr/leomelki/loupgarou/MainLg.java +++ b/src/main/java/fr/leomelki/loupgarou/MainLg.java @@ -225,9 +225,23 @@ public class MainLg extends JavaPlugin{ sender.sendMessage(prefix+"§aLa position a bien été ajoutée !"); return true; }else if(args[0].equalsIgnoreCase("end")) { - LGPlayer.thePlayer(Bukkit.getPlayer(args[1])).getGame().cancelWait(); - LGPlayer.thePlayer(Bukkit.getPlayer(args[1])).getGame().endGame(LGWinType.EQUAL); - LGPlayer.thePlayer(Bukkit.getPlayer(args[1])).getGame().broadcastMessage("§cLa partie a été arrêtée de force !"); + if(args.length != 2) { + sender.sendMessage("§4Utilisation : §c/lg end "); + return true; + } + Player selected = Bukkit.getPlayer(args[1]); + if(selected == null) { + sender.sendMessage("§4Erreur : §cLe joueur §4"+args[1]+"§c n'est pas connecté."); + return true; + } + LGGame game = LGPlayer.thePlayer(selected).getGame(); + if(game == null) { + sender.sendMessage("§4Erreur : §cLe joueur §4"+selected.getName()+"§c n'est pas dans une partie."); + return true; + } + game.cancelWait(); + game.endGame(LGWinType.EQUAL); + game.broadcastMessage("§cLa partie a été arrêtée de force !"); return true; }else if(args[0].equalsIgnoreCase("start")) { if(args.length < 2) { @@ -240,6 +254,10 @@ public class MainLg extends JavaPlugin{ return true; } LGPlayer lgp = LGPlayer.thePlayer(player); + if(lgp.getGame() == null) { + sender.sendMessage("§4Erreur : §cLe joueur §4"+lgp.getName()+"§c n'est pas dans une partie."); + return true; + } if(MainLg.getInstance().getConfig().getList("spawns").size() < lgp.getGame().getMaxPlayers()) { sender.sendMessage("§4Erreur : §cIl n'y a pas assez de points de spawn !"); sender.sendMessage("§8§oPour les définir, merci de faire §7/lg addSpawn");