Skip to content
Snippets Groups Projects

Feature/23 regler wild

Merged Sofiane Lasri requested to merge feature/23_regler_wild into main
1 file
+ 5
61
Compare changes
  • Side-by-side
  • Inline
@@ -77,67 +77,6 @@ public class wildCommand implements CommandExecutor {
@@ -77,67 +77,6 @@ public class wildCommand implements CommandExecutor {
wildUsersStartLocation.add(player.getLocation());
wildUsersStartLocation.add(player.getLocation());
askForTeleport(player);
askForTeleport(player);
}
}
/*// On vérifie qu'il n'a pas déjà lancé la commande wild dans les n dernières secondes
if(!plugin.checkActiveUserForWildCommand(player.getUniqueId())){
plugin.getServer().getConsoleSender().sendMessage("Le joueur "+ChatColor.GOLD+player.getName()+ChatColor.RESET+" a exécuté la commande "+ChatColor.GOLD+"/wild"+ChatColor.RESET+" : "+ChatColor.RED+"refusé");
player.sendMessage("§cVous devez attendre 5s avant de relancer la commande.");
return true;
}
plugin.getServer().getConsoleSender().sendMessage("Le joueur "+ChatColor.GOLD+player.getName()+ChatColor.RESET+" a exécuté la commande "+ChatColor.GOLD+"/wild"+ChatColor.RESET+" : "+ChatColor.GREEN+"accepté");
// on récupère la liste des biomes exclus
List<String> excludedBiomes;
excludedBiomes = (List<String>) plugin.getConfig().getList("wild.excluded-biomes");
player.sendMessage("§6Téléportation vers une coordonnée aléatoire.");
// On défini le radius de téléportation
Random r = new Random();
int low = plugin.getConfig().getInt("wild.max-range")*(-1);
int high = plugin.getConfig().getInt("wild.max-range");
// Tant qu'on a un biome non souhaite, on va regérer les coordonnées
boolean flag=true;
int x=0, z=0, y=0;
while(flag){
flag=false;
x = r.nextInt(high-low) + low;
z = r.nextInt(high-low) + low;
y = Objects.requireNonNull(Bukkit.getWorld(Objects.requireNonNull(plugin.getConfig().getString("wild.world")))).getHighestBlockYAt(x, z);
y++; // On incrémente la pos Y pour éviter que le joueur se retrouve dans le sol
for (String excludedBiome : Objects.requireNonNull(excludedBiomes)) {
try{
Biome.valueOf(excludedBiome.toUpperCase());
if (Objects.requireNonNull(Bukkit.getWorld(Objects.requireNonNull(plugin.getConfig().getString("wild.world")))).getBiome(x, y, z).equals(Biome.valueOf(excludedBiome.toUpperCase()))) {
flag = true;
}
}catch(Exception ignored){}
}
}
// On téléporte le joueur
Location loc = new Location(Bukkit.getWorld(Objects.requireNonNull(plugin.getConfig().getString("wild.world"))), x, y, z, 0, 0);
player.teleport(loc);
int maxVal = Math.max(abs(x), abs(z));
if(maxVal <= 10000){
player.sendMessage("§7§oVous êtes sur un biome généré en 1.16");
}else if(maxVal <= 14500){
player.sendMessage("§7§oVous êtes sur un biome généré en 1.17");
}else{
player.sendMessage("§7§oVous êtes sur un biome généré en 1.18");
}
// Vu qu'il y a un sleep et que ça bloque le thread, on va exécuter la fonction dans un thread
Runnable runnableRemoveActiveUser = () -> {
// On retire le joueur de la liste des utilisateurs en attente
plugin.removeActiveUserForWildCommand(player.getUniqueId());
};
new Thread(runnableRemoveActiveUser).start();*/
}
}
return true;
return true;
}
}
@@ -213,5 +152,10 @@ public class wildCommand implements CommandExecutor {
@@ -213,5 +152,10 @@ public class wildCommand implements CommandExecutor {
}else{
}else{
player.sendMessage("§7§oVous êtes sur un biome généré en 1.18");
player.sendMessage("§7§oVous êtes sur un biome généré en 1.18");
}
}
 
if((usagePerDay - wildUsersAskNum.get(playerIndex)) > 0){
 
player.sendMessage("§7§oIl vous reste " + (usagePerDay - wildUsersAskNum.get(playerIndex)) + " téléportations pour aujourd'hui.");
 
}else{
 
player.sendMessage("§7§oVous avez épuisé toutes vos téléportations du jour.");
 
}
}
}
}
}
Loading