Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package fr.jonhshepard.ender;
- import java.util.ArrayList;
- import java.util.logging.Logger;
- import org.bukkit.Bukkit;
- import org.bukkit.ChatColor;
- import org.bukkit.Difficulty;
- import org.bukkit.GameMode;
- import org.bukkit.Location;
- import org.bukkit.Material;
- import org.bukkit.Sound;
- import org.bukkit.WorldCreator;
- import org.bukkit.enchantments.Enchantment;
- import org.bukkit.entity.Player;
- import org.bukkit.event.Listener;
- import org.bukkit.inventory.Inventory;
- import org.bukkit.inventory.ItemStack;
- import org.bukkit.inventory.meta.ItemMeta;
- import org.bukkit.plugin.java.JavaPlugin;
- import org.bukkit.potion.PotionEffect;
- import org.bukkit.potion.PotionEffectType;
- import org.bukkit.scoreboard.DisplaySlot;
- import org.bukkit.scoreboard.Objective;
- import org.bukkit.scoreboard.Score;
- import org.bukkit.scoreboard.Scoreboard;
- import org.bukkit.scoreboard.ScoreboardManager;
- public class Main extends JavaPlugin implements Listener {
- public Logger log=Logger.getLogger("EnderWar"); //Log EnderWar
- public ArrayList<Player> nokit = new ArrayList<Player>(); //Liste des joueurs n'ayants pas dee kit
- public ArrayList<Player> axe = new ArrayList<Player>(); //Liste des joueurs avec la hache de base
- public ArrayList<Player> sword = new ArrayList<Player>(); //Liste des joueurs avec l'épée vip
- public ArrayList<Player> axe1 = new ArrayList<Player>();//Liste des joueurs avec la hache de membre
- public ArrayList<Player> life3 = new ArrayList<Player>(); //Liste des joueurs ayants 3 vies
- public ArrayList<Player> life2 = new ArrayList<Player>(); //Liste des joueurs ayants 2 vies
- public ArrayList<Player> life1 = new ArrayList<Player>(); //Liste des joueurs ayants 1 vies
- public ArrayList<Player> deads = new ArrayList<Player>(); //Liste des joueurs morts
- public ArrayList<Player> used = new ArrayList<Player>(); //Liste des joueurs morts
- public ArrayList<Player> players = new ArrayList<Player>();
- public ArrayList<Player> alreadyvote = new ArrayList<Player>();
- public ArrayList<Player> alreadymap = new ArrayList<Player>();
- public ArrayList<Player> noTp = new ArrayList<Player>();
- public ArrayList<Integer> map = new ArrayList<Integer>();
- int reservedslots;
- int votecount;
- boolean endpartie = false;
- boolean partie = false; //Si la partie est commencée
- boolean start = false;
- Location spawnloc; //Location de spawn et respawn
- Location lobbyloc;
- Objective obj;
- Scoreboard sbBoard;
- @SuppressWarnings({ "deprecation" })
- public void onEnable() {
- saveDefaultConfig();
- String presentationIG =
- "Je joue à Minecraft depuis plus d'un an et demi et code en java (principalement des APIs liées au jeu) depuis environ 9 mois, je joue sous le pseudo de jonhshepard5 mais l'on me voit le plus souvent sous le nom JonhSHEPARD.";
- if(!getConfig().contains("map1.blockname")) {
- getConfig().set("map1.blockname", "stone");
- getConfig().set("map1.name", "&bnull");
- }
- if(!getConfig().contains("map2.blockname")) {
- getConfig().set("map2.blockname", "stone");
- getConfig().set("map2.name", "&bnull");
- }
- if(!getConfig().contains("map3.blockname")) {
- getConfig().set("map3.blockname", "stone");
- getConfig().set("map3.name", "&bnull");
- }
- getServer().createWorld(new WorldCreator("map1"));
- getServer().createWorld(new WorldCreator("map2"));
- getServer().createWorld(new WorldCreator("map3"));
- reloadWhitelist();
- for(Player p : Bukkit.getOnlinePlayers()) {
- p.kickPlayer("Reload");
- }
- getServer().getPluginManager().registerEvents(this, this);
- getServer().getPluginManager().registerEvents(new Events(this), this);
- getServer().getPluginManager().registerEvents(new Map(this), this);
- saveDefaultConfig();
- lobbyloc = new Location(Bukkit.getWorld(getConfig().getString("lobby.world")), getConfig().getInt("lobby.x"),getConfig().getInt("lobby.y"), getConfig().getInt("lobby.z"));
- spawnloc = new Location(Bukkit.getWorld(getConfig().getString("spawn.world")), getConfig().getInt("spawn.x"),getConfig().getInt("spawn.y"), getConfig().getInt("spawn.z")); //Récupération dans la config de spawnloc
- log.info("[EnderWar] Plugin correctement demarre"); //Message de confirmation sur la console
- try {
- Material map1 = Material.getMaterial(getConfig().getString("map1.blockname"));
- Material map2 = Material.getMaterial(getConfig().getString("map2.blockname"));
- Material map3 = Material.getMaterial(getConfig().getString("map3.blockname"));
- if(map1 == null) {
- log.severe("Impossible de charger le block correspondant a la map 1, verifiez la config");
- getServer().getPluginManager().disablePlugin(this);
- }
- if(map2 == null) {
- log.severe("Impossible de charger le block correspondant a la map 2, verifiez la config");
- getServer().getPluginManager().disablePlugin(this);
- }
- if(map3 == null) {
- log.severe("Impossible de charger le block correspondant a la map 3, verifiez la config");
- getServer().getPluginManager().disablePlugin(this);
- }
- } catch (Exception e) {
- e.printStackTrace();
- }
- this.getCommand("kit").setExecutor(new Kit(this)); //Redirige la commande /kit sur la classe Kit
- this.getCommand("setspawn").setExecutor(new SetSpawn(this));
- this.getCommand("setlobby").setExecutor(new SetLobby(this));
- this.getCommand("start").setExecutor(new StartCmd(this));
- this.getCommand("whiteadd").setExecutor(new Whitelist(this));
- this.getCommand("whiteremove").setExecutor(new Whitelist(this));
- this.getCommand("listwhite").setExecutor(new Whitelist(this));
- this.getCommand("vote").setExecutor(new Vote(this));
- this.getCommand("map").setExecutor(new Map(this));
- Bukkit.getWorld("world").setGameRuleValue("keepInventory", "true");
- Bukkit.getWorld("world").setGameRuleValue("doFireTick", "false");
- Bukkit.getWorld("world").setPVP(false);
- Bukkit.getWorld("world").setTime(0);
- Bukkit.getWorld("world").setSpawnLocation(spawnloc.getBlockX(), spawnloc.getBlockY(), spawnloc.getBlockZ());
- ScoreboardManager sbManager = Bukkit.getScoreboardManager();
- sbBoard = sbManager.getNewScoreboard();
- obj = sbBoard.registerNewObjective("vies", "dummy");
- obj.setDisplaySlot(DisplaySlot.SIDEBAR);
- obj.setDisplayName("§cVies");
- }
- public void reloadWhitelist() {
- getServer().setWhitelist(false);
- }
- public void onDisable() {
- saveConfig(); //Enregistre la config
- log.info("[EnderWar] Plugin correctement eteint"); //Message de confirmation sur la console
- }
- public void kickPlayer(final Player player, final String message) {
- getServer().getScheduler().runTaskLater(this, new Runnable() {
- public void run() {
- player.kickPlayer(message);
- }
- }, 2L);
- }
- public void noAT(final Player player) {
- getServer().getScheduler().runTaskLater(this, new Runnable() {
- public void run() {
- noTp.remove(player);
- }
- }, 40L);
- }
- public double countdown = 31; //Set le temps du countdown
- public void startpartie() {
- start = true;
- getServer().getScheduler().cancelAllTasks(); //Annule tous les comptes a rebours
- getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable() { //Crée un compte a rebours
- @SuppressWarnings("deprecation")
- public void run() { //Run du compte a rebours
- if(start == true) {
- if(!(countdown == 0)) { //Si le countdown n'est pas égal à 0
- countdown = countdown - 1; //Enlève 1 au countdown
- if(countdown == 30) { //Si le countdown est égal à 30
- for(Player p : Bukkit.getOnlinePlayers()) { //Pour tous les joueurs connectés
- p.playSound(p.getLocation(), Sound.NOTE_PLING, 100, 1); //Son d'information
- }
- Bukkit.broadcastMessage("§5[EnderWar] §2Démarrage dans 30 secondes"); //Message d'information
- }
- if(countdown == 15) { //Si le countdown est égal à 15
- for(Player p : Bukkit.getOnlinePlayers()) { //Pour tous les joueurs connectés
- p.playSound(p.getLocation(), Sound.NOTE_PLING, 100, 1); //Son d'information
- }
- Bukkit.broadcastMessage("§5[EnderWar] §2Démarrage dans 15 secondes"); //Message d'information
- }
- if(countdown == 10) { //Si le countdown est égal à 10
- for(Player p : Bukkit.getOnlinePlayers()) { //Pour tous les joueurs connectés
- p.playSound(p.getLocation(), Sound.NOTE_PLING, 100, 1); //Son d'information
- }
- Bukkit.broadcastMessage("§5[EnderWar] §eDémarrage dans 10 secondes"); //Message d'information
- }
- if(countdown == 5) { //Si le countdown est égal à 5
- for(Player p : Bukkit.getOnlinePlayers()) { //Pour tous les joueurs connectés
- p.playSound(p.getLocation(), Sound.NOTE_PLING, 100, 1); //Son d'information
- }
- Bukkit.broadcastMessage("§5[EnderWar] §6Démarrage dans 5 secondes"); //Message d'information
- }
- if(countdown == 3) { //Si le countdown est égal à 3
- for(Player p : Bukkit.getOnlinePlayers()) { //Pour tous les joueurs connectés
- p.playSound(p.getLocation(), Sound.NOTE_PLING, 100, 1); //Son d'information
- }
- Bukkit.broadcastMessage("§5[EnderWar] §6Démarrage dans 3 secondes"); //Message d'information
- }
- if(countdown == 2) { //Si le countdown est égal à 2
- for(Player p : Bukkit.getOnlinePlayers()) { //Pour tous les joueurs connectés
- p.playSound(p.getLocation(), Sound.NOTE_PLING, 100, 1); //Son d'information
- }
- Bukkit.broadcastMessage("§5[EnderWar] §cDémarrage dans 2 secondes"); //Message d'information
- }
- if(countdown == 1) { //Si le countdown est égal à 1
- for(Player p : Bukkit.getOnlinePlayers()) { //Pour tous les joueurs connectés
- p.playSound(p.getLocation(), Sound.NOTE_PLING, 100, 1); //Son d'information
- }
- Bukkit.broadcastMessage("§5[EnderWar] §cDémarrage dans 1 secondes"); //Message d'information
- }
- for(Player p : Bukkit.getOnlinePlayers()) { //Pour tous les joueurs connectés
- p.setExp(0); //Set l'xp à 0
- p.setLevel((int) countdown); //Set l'xp = countdown
- }
- } else { //Si le countdown est à 0
- selectMap();
- spawnloc.getWorld().setGameRuleValue("keepInventory", "true");
- spawnloc.getWorld().setGameRuleValue("doFireTick", "false");
- spawnloc.getWorld().setDifficulty(Difficulty.PEACEFUL);
- spawnloc.getWorld().setPVP(false);
- getServer().getScheduler().cancelAllTasks(); //Fin du compte à rebours
- Bukkit.broadcastMessage("§5[EnderWar] §4Go !!!"); //Message d'information
- Bukkit.broadcastMessage("§5[EnderWar] §4Pvp actif dans 10 secondes");
- for(Player p : Bukkit.getOnlinePlayers()) { //Pour tous les joueurs
- p.teleport(spawnloc);
- p.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 300, 3)); //Donne de la vitesse au joueur pendant 15 sec
- p.setScoreboard(sbBoard);
- Score score = obj.getScore(p);
- score.setScore(3);
- p.playSound(p.getLocation(), Sound.NOTE_PLING, 100, 2); //Son d'information
- ItemStack livre = new ItemStack(Material.WRITTEN_BOOK);
- p.getInventory().remove(livre);
- if(nokit.contains(p)) { //Pour les joueurs n'ayants pas de kit
- axe.add(p); //ajoute le joueur dans le kit hache de base
- nokit.remove(p); //supprime le joueur des sans kit
- setBasicInv(p);
- setRespawnInv(p);
- }
- }
- starting(); //Lance le void starting
- pvp();
- }
- } else {
- getServer().getScheduler().cancelAllTasks();
- }
- }
- }, 0L, 20L); //Répète toutes les 1 secondes
- }
- public void pvp() {
- this.getServer().getScheduler().runTaskLater(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- spawnloc.getWorld().setPVP(true);
- partie = true; //Lance la partie
- Bukkit.broadcastMessage("§cPvp actif");
- }
- }, 200L);
- }
- public void selectMap() {
- int map1 = 0;
- int map2 = 0;
- int map3 = 0;
- for(int i : map) {
- if(i == 1) {
- map1 ++;
- } else if(i == 2) {
- map2++;
- } else if(i == 3) {
- map3++;
- }
- }
- if(map1 == 0 && map2 == 0 && map3 == 0) {
- spawnloc.setWorld(getServer().getWorld("map1"));
- } else {
- if( (map1 > map2) && (map1 > map3) ) {
- spawnloc.setWorld(getServer().getWorld("map1"));
- } else if( (map2 > map1) && (map2 > map3) ) {
- spawnloc.setWorld(getServer().getWorld("map2"));
- } else {
- spawnloc.setWorld(getServer().getWorld("map3"));
- }
- }
- }
- public void set10(final Player player) {
- this.getServer().getScheduler().runTaskLater(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- used.add(player);
- ItemStack item = new ItemStack(Material.ANVIL);
- ItemMeta itemMeta = item.getItemMeta();
- itemMeta.setDisplayName("§7Countdown for special");
- item.setItemMeta(itemMeta);
- item.setAmount(10);
- player.getInventory().setItem(8, item);
- set9(player);
- }
- }, 20L);
- }
- public void set9(final Player player) {
- this.getServer().getScheduler().runTaskLater(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- ItemStack item = new ItemStack(Material.ANVIL);
- ItemMeta itemMeta = item.getItemMeta();
- itemMeta.setDisplayName("§7Countdown for special");
- item.setItemMeta(itemMeta);
- item.setAmount(9);
- player.getInventory().setItem(8, item);
- set8(player);
- }
- }, 20L);
- }
- public void set8(final Player player) {
- this.getServer().getScheduler().runTaskLater(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- ItemStack item = new ItemStack(Material.ANVIL);
- ItemMeta itemMeta = item.getItemMeta();
- itemMeta.setDisplayName("§7Countdown for special");
- item.setItemMeta(itemMeta);
- item.setAmount(8);
- player.getInventory().setItem(8, item);
- set7(player);
- }
- }, 20L);
- }
- public void set7(final Player player) {
- this.getServer().getScheduler().runTaskLater(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- ItemStack item = new ItemStack(Material.ANVIL);
- ItemMeta itemMeta = item.getItemMeta();
- itemMeta.setDisplayName("§7Countdown for special");
- item.setItemMeta(itemMeta);
- item.setAmount(7);
- player.getInventory().setItem(8, item);
- set6(player);
- }
- }, 20L);
- }
- public void set6(final Player player) {
- this.getServer().getScheduler().runTaskLater(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- ItemStack item = new ItemStack(Material.ANVIL);
- ItemMeta itemMeta = item.getItemMeta();
- itemMeta.setDisplayName("§7Countdown for special");
- item.setItemMeta(itemMeta);
- item.setAmount(6);
- player.getInventory().setItem(8, item);
- set5(player);
- }
- }, 20L);
- }
- public void set5(final Player player) {
- this.getServer().getScheduler().runTaskLater(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- ItemStack item = new ItemStack(Material.ANVIL);
- ItemMeta itemMeta = item.getItemMeta();
- itemMeta.setDisplayName("§7Countdown for special");
- item.setItemMeta(itemMeta);
- item.setAmount(5);
- player.getInventory().setItem(8, item);
- set4(player);
- }
- }, 20L);
- }
- public void set4(final Player player) {
- this.getServer().getScheduler().runTaskLater(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- ItemStack item = new ItemStack(Material.ANVIL);
- ItemMeta itemMeta = item.getItemMeta();
- itemMeta.setDisplayName("§7Countdown for special");
- item.setItemMeta(itemMeta);
- item.setAmount(4);
- player.getInventory().setItem(8, item);
- set3(player);
- }
- }, 20L);
- }
- public void set3(final Player player) {
- this.getServer().getScheduler().runTaskLater(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- ItemStack item = new ItemStack(Material.ANVIL);
- ItemMeta itemMeta = item.getItemMeta();
- itemMeta.setDisplayName("§7Countdown for special");
- item.setItemMeta(itemMeta);
- item.setAmount(3);
- player.getInventory().setItem(8, item);
- set2(player);
- }
- }, 20L);
- }
- public void set2(final Player player) {
- this.getServer().getScheduler().runTaskLater(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- ItemStack item = new ItemStack(Material.ANVIL);
- ItemMeta itemMeta = item.getItemMeta();
- itemMeta.setDisplayName("§7Countdown for special");
- item.setItemMeta(itemMeta);
- item.setAmount(2);
- player.getInventory().setItem(8, item);
- set1(player);
- }
- }, 20L);
- }
- public void set1(final Player player) {
- this.getServer().getScheduler().runTaskLater(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- ItemStack item = new ItemStack(Material.ANVIL);
- ItemMeta itemMeta = item.getItemMeta();
- itemMeta.setDisplayName("§7Countdown for special");
- item.setItemMeta(itemMeta);
- item.setAmount(1);
- player.getInventory().setItem(8, item);
- set0(player);
- }
- }, 20L);
- }
- public void set0(final Player player) {
- this.getServer().getScheduler().runTaskLater(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- used.remove(player);
- player.getInventory().remove(Material.ANVIL);
- }
- }, 1L);
- }
- @SuppressWarnings("deprecation")
- public void starting() {
- getServer().setWhitelist(true);
- partie = true; //Lance la partie
- for(Player player : Bukkit.getOnlinePlayers()) { //Pour tous les joueurs
- getServer().dispatchCommand(getServer().getConsoleSender(), "spawnpoint " + player.getName() + " " + spawnloc.getBlockX() + " " + spawnloc.getBlockY() + " " + spawnloc.getBlockZ());
- int msg = 10;
- do {
- msg --;
- player.sendMessage(" ");
- }while(msg == 0);
- this.life3.add(player);
- player.sendMessage("§4Tu as désormais 3 vies");
- setRespawnInv(player);
- player.setLevel(0); //Set l'xp à 0
- player.setExp(0); //Set l'xp à 0
- ItemStack arrow = new ItemStack(Material.ARROW); //Crée un item flèche
- arrow.setAmount(64); //Set le total à 1 stack
- player.getInventory().setItem(11, arrow); //Place 1 stack de flèche dans le slot 11
- player.getInventory().setItem(12, arrow); //Place 1 stack de flèche dans le slot 12
- player.getInventory().setItem(13, arrow); //Place 1 stack de flèche dans le slot 13
- player.getInventory().setItem(14, arrow); //Place 1 stack de flèche dans le slot 14
- player.getInventory().setItem(15, arrow); //Place 1 stack de flèche dans le slot 15
- player.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 200, 4)); //Donne de la résistance au joueur pendant 8 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, 200, 4)); //Donne de la régénération au joueur pendant 9 sec
- }
- }
- @SuppressWarnings("deprecation")
- public void setRespawnInv(Player player) {
- if(life3.contains(player)) { //si le joueur à 3 vies
- Score score = obj.getScore(player);
- score.setScore(3);
- player.getInventory().clear(); //Clear l'inv à un joueur
- ItemStack apple = new ItemStack(Material.APPLE); //Crée un item pomme
- ItemMeta appleMeta = apple.getItemMeta(); ////get ItemMeta pour la pomme
- appleMeta.setDisplayName("§43 Vies"); //Donne le nom affiché pour la Pomme
- apple.setItemMeta(appleMeta); //Set ItemMeta
- apple.setAmount(3);
- player.getInventory().setItem(0, apple); //give la hache au joueur dans le slot 4
- player.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 260, 4)); //Donne de la résistance au joueur pendant 8 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, 260, 4)); //Donne de la régénération au joueur pendant 9 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 300, 3)); //Donne de la vitesse au joueur pendant 15 sec
- } else if(life2.contains(player)) { //si le joueur à 2 vies
- for(Player p : Bukkit.getOnlinePlayers()) {
- Score score = obj.getScore(player);
- score.setScore(2);
- p.setScoreboard(sbBoard);
- }
- player.getInventory().clear(); //Clear l'inv à un joueur
- ItemStack apple = new ItemStack(Material.APPLE); //Crée un item pomme
- ItemMeta appleMeta = apple.getItemMeta(); ////get ItemMeta pour la pomme
- appleMeta.setDisplayName("§c2 Vies"); //Donne le nom affiché pour la Pomme
- apple.setItemMeta(appleMeta); //Set ItemMeta
- apple.setAmount(2);
- player.getInventory().setItem(0, apple); //give la hache au joueur dans le slot 4
- player.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 260, 4)); //Donne de la résistance au joueur pendant 8 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, 260, 4)); //Donne de la régénération au joueur pendant 9 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 300, 3)); //Donne de la vitesse au joueur pendant 15 sec
- } else if(life1.contains(player)) { //si le joueur à 1 vie
- Score score = obj.getScore(player);
- score.setScore(1);
- player.getInventory().clear(); //Clear l'inv à un joueur
- ItemStack apple = new ItemStack(Material.APPLE); //Crée un item pomme
- ItemMeta appleMeta = apple.getItemMeta(); ////get ItemMeta pour la pomme
- appleMeta.setDisplayName("§61 Vie"); //Donne le nom affiché pour la Pomme
- apple.setItemMeta(appleMeta); //Set ItemMeta
- apple.setAmount(1);
- player.getInventory().setItem(0, apple); //give la hache au joueur dans le slot 4
- player.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 260, 4)); //Donne de la résistance au joueur pendant 8 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, 260, 4)); //Donne de la régénération au joueur pendant 9 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 300, 3)); //Donne de la vitesse au joueur pendant 15 sec
- }
- if(axe1.contains(player)) { //si le joueur à le kit membre
- setBasicInv(player); //Met l'inventaire de base à un joueur
- ItemStack axe1 = new ItemStack(Material.DIAMOND_AXE); //Crée un item hache en diamants
- ItemMeta axe1Meta = axe1.getItemMeta(); ////get ItemMeta pour la hache
- axe1Meta.setDisplayName("§bLe Swag"); //Donne le nom affiché pour la hache en diamant
- axe1.setItemMeta(axe1Meta); //Set ItemMeta
- axe1.addUnsafeEnchantment(Enchantment.FIRE_ASPECT, 1); //Ajoute l'enchantement sharpness 1
- player.getInventory().setItem(4, axe1); //give la hache au joueur dans le slot 4
- player.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 260, 4)); //Donne de la résistance au joueur pendant 8 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, 260, 4)); //Donne de la régénération au joueur pendant 9 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 300, 3)); //Donne de la vitesse au joueur pendant 15 sec
- } else if(sword.contains(player)) { //si le joueur à le kit de vip
- setBasicInv(player); //Met l'inventaire de base à un joueur
- ItemStack sword = new ItemStack(Material.IRON_SWORD); //Crée un item épée en fer
- ItemMeta swordMeta = sword.getItemMeta(); //get ItemMeta pour l'épée
- swordMeta.setDisplayName("§bI'm a kicker");
- sword.setItemMeta(swordMeta);
- sword.addEnchantment(Enchantment.KNOCKBACK, 2);
- player.getInventory().setItem(4, sword); //give l'épée au joueur dans le slot 4
- player.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 260, 4)); //Donne de la résistance au joueur pendant 8 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, 260, 4)); //Donne de la régénération au joueur pendant 9 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 300, 3)); //Donne de la vitesse au joueur pendant 15 sec
- } else if(axe.contains(player)) { //si le joueur à le kit de base
- setBasicInv(player); //Met l'inventaire de base à un joueur
- ItemStack axe = new ItemStack(Material.IRON_AXE); //Crée un item Hache en fer
- ItemMeta axeMeta = axe.getItemMeta(); //get ItemMeta pour la hache en fer
- axeMeta.setDisplayName("§2The Axe"); //Donne le nom affiché de la hache en fer
- axe.setItemMeta(axeMeta); //set ItemMeta
- axe.addEnchantment(Enchantment.DAMAGE_ALL, 2); //Ajoute enchantement sharpness 2
- player.getInventory().setItem(4, axe); //give la Hache au joueurs dans le slot 4
- player.addPotionEffect(new PotionEffect(PotionEffectType.DAMAGE_RESISTANCE, 260, 4)); //Donne de la résistance au joueur pendant 8 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.REGENERATION, 260, 4)); //Donne de la régénération au joueur pendant 9 sec
- player.addPotionEffect(new PotionEffect(PotionEffectType.SPEED, 300, 3)); //Donne de la vitesse au joueur pendant 15 sec
- }
- }
- public void setBasicInv(Player player) {
- Inventory inv = player.getInventory();
- ItemStack bowtp = new ItemStack(Material.BOW);
- ItemMeta bowtpMeta = bowtp.getItemMeta();
- bowtpMeta.setDisplayName("§5Ender Bow");
- bowtp.setItemMeta(bowtpMeta);
- ItemStack bow = new ItemStack(Material.BOW);
- ItemMeta bowMeta = bow.getItemMeta();
- bowMeta.setDisplayName("§cKill Bow");
- bow.setItemMeta(bowMeta);
- bow.addEnchantment(Enchantment.ARROW_DAMAGE, 5);
- ItemStack boots = new ItemStack(Material.LEATHER_BOOTS);
- ItemMeta bootsMeta = boots.getItemMeta();
- boots.setItemMeta(bootsMeta);
- boots.addEnchantment(Enchantment.PROTECTION_PROJECTILE, 3);
- boots.addEnchantment(Enchantment.PROTECTION_FALL, 4);
- ItemStack chest = new ItemStack(Material.LEATHER_CHESTPLATE);
- ItemMeta chestMeta = chest.getItemMeta();
- chest.setItemMeta(chestMeta);
- chest.addEnchantment(Enchantment.PROTECTION_PROJECTILE, 3);
- ItemStack helmet = new ItemStack(Material.LEATHER_HELMET);
- ItemMeta helmetMeta = helmet.getItemMeta();
- helmet.setItemMeta(helmetMeta);
- helmet.addEnchantment(Enchantment.PROTECTION_PROJECTILE, 3);
- ItemStack leggins = new ItemStack(Material.LEATHER_LEGGINGS);
- ItemMeta legginsMeta = leggins.getItemMeta();
- leggins.setItemMeta(legginsMeta);
- leggins.addEnchantment(Enchantment.PROTECTION_PROJECTILE, 3);
- player.getInventory().setBoots(boots);
- player.getInventory().setChestplate(chest);
- player.getInventory().setHelmet(helmet);
- player.getInventory().setLeggings(leggins);
- inv.setItem(3, bowtp);
- inv.setItem(5, bow);
- }
- @SuppressWarnings("deprecation")
- public void death(Player player) {
- player.getInventory().clear();
- if(!(player.getGameMode() == GameMode.CREATIVE)) {
- player.sendMessage("§6Vous avez perdu");
- player.playSound(player.getLocation(), Sound.CREEPER_DEATH, 75, 75);
- player.setGameMode(GameMode.CREATIVE);
- }
- player.getScoreboard().resetScores(player);
- player.setFlying(true);
- player.setLevel(0);
- player.getInventory().clear();
- if(players.contains(player)) {
- players.remove(player);
- }
- for(Player p : Bukkit.getOnlinePlayers()) {
- if(!p.isOp()) {
- p.hidePlayer(player);
- }
- }
- player.setPlayerListName(ChatColor.GRAY + player.getName());
- player.getInventory().setHelmet(new ItemStack(Material.DIAMOND_HELMET));
- player.getInventory().setBoots(null);
- player.getInventory().setChestplate(null);
- player.getInventory().setLeggings(null);
- for(Player p : deads) {
- p.showPlayer(player);
- player.showPlayer(p);
- }
- if(players.size() == 1) {
- theend(players.get(0));
- deads.add(players.get(0));
- } else if(players.size() == 0) {
- theendnot();
- }
- }
- public int end = 15; //Set le temps du countdown
- @SuppressWarnings("deprecation")
- public void theend(Player player) {
- Bukkit.broadcastMessage("§4" + player.getName() + "§6 à gagné l'§5EnderWar");
- for(Player p : Bukkit.getOnlinePlayers()) {
- if(!(p == player)) {
- int i = getConfig().getInt(player.getName() + ".gamesp");
- getConfig().set(player.getName() + ".gamesp", i + 1);
- }
- }
- Bukkit.broadcastMessage("§4Reload du serveur dans 10 secondes");
- partie = false;
- endpartie = true;
- this.getServer().getScheduler().cancelAllTasks(); //Annule tous les comptes a rebours
- this.getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable() { //Crée un compte a rebours
- public void run() { //Run du compte a rebours
- if(!(end == 0)) { //Si le countdown n'est pas égal à 0
- end = end - 1;
- } else { //Si le countdown est à 0
- getServer().getScheduler().cancelAllTasks(); //Fin du compte à rebours
- getServer().setWhitelist(false);
- for(Player p : Bukkit.getOnlinePlayers()) {
- p.kickPlayer("");
- }
- getServer().dispatchCommand(getServer().getConsoleSender(), "reload");
- }
- }
- }, 0L, 20L); //Répète toutes les 1 secondes
- }
- public int not = 3; //Set le temps du countdown
- public void theendnot() {
- Bukkit.broadcastMessage("§4Plus de joueur dans la partie");
- Bukkit.broadcastMessage("§4Reload du serveur dans quelques secondes");
- if(partie == true && endpartie == false) {
- this.getServer().getScheduler().cancelAllTasks(); //Annule tous les comptes a rebours
- this.getServer().getScheduler().scheduleSyncRepeatingTask(this, new Runnable() { //Crée un compte a rebours
- @SuppressWarnings("deprecation")
- public void run() { //Run du compte a rebours
- if(!(not == 0)) { //Si le countdown n'est pas égal à 0
- not --;
- } else { //Si le countdown est à 0
- getServer().getScheduler().cancelAllTasks(); //Fin du compte à rebours
- getServer().setWhitelist(false);
- for(Player p : Bukkit.getOnlinePlayers()) {
- p.kickPlayer("");
- }
- getServer().dispatchCommand(getServer().getConsoleSender(), "reload");
- }
- }
- }, 0L, 20L); //Répète toutes les 1 secondes
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement