SHARE
TWEET

Untitled

a guest Aug 23rd, 2019 83 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. package net.bywox.uhcrun.events;
  2.  
  3. import net.bywox.uhcrun.Main;
  4. import net.bywox.uhcrun.game.UHCGame;
  5. import net.bywox.uhcrun.game.UHCState;
  6. import org.bukkit.Bukkit;
  7. import org.bukkit.GameMode;
  8. import org.bukkit.entity.Player;
  9. import org.bukkit.event.EventHandler;
  10. import org.bukkit.event.Listener;
  11. import org.bukkit.event.player.PlayerJoinEvent;
  12. import org.bukkit.event.player.PlayerQuitEvent;
  13.  
  14. import java.util.UUID;
  15.  
  16. public class UHCJoin implements Listener {
  17.  
  18.     static int task;
  19.     static int timer = 30;
  20.  
  21.     @EventHandler
  22.     public void join(PlayerJoinEvent e){
  23.         //LORSQUE UN JOUEUR REJOIN LA GAME
  24.         Player p = e.getPlayer();
  25.  
  26.         //SI LE JEU EST EN MODE ATTENTE
  27.         if(UHCState.isState(UHCState.WAIT)){
  28.             //ON RECUPERE LE JOUEUR QUI SOUHAITE REJOINDRE LE JEU
  29.  
  30.             //ON VERIFIE QUE LE JOUEUR N'EST PAS DANS LA LISTE
  31.             if(Main.getInstance().playerInGame.contains(p.getUniqueId())){
  32.  
  33.                 //SI IL N'EST PAS DANS LA LISTE, ON VA L'AJOUTER
  34.                 Main.getInstance().playerInGame.add(p.getUniqueId());
  35.  
  36.                 //ON VA CHECK SI LE NOMBRE DE JOUEUR EST EGAL A 1
  37.                 if(Main.getInstance().playerInGame.size() == 1){
  38.                     //ON START LE CHRONOMETRE
  39.  
  40.                     task = Bukkit.getScheduler().scheduleSyncRepeatingTask(Main.getInstance(), new Runnable(){
  41.  
  42.                         @Override
  43.                         public void run() {
  44.  
  45.                             //ON ENLEVE 1 A CHAQUE SECONDE POUR QUE LE CHRONO PUISSENT BAISSER
  46.                             timer--;
  47.                             setLevel(timer);
  48.  
  49.                             if(timer == 15){
  50.                                 //LE JEU COMMENCE DANS 15 SEC
  51.  
  52.                                 for(UUID uuid : Main.getInstance().playerInGame){
  53.                                     Player pl = Bukkit.getPlayer(uuid);
  54.                                     pl.sendMessage("§e[§6UHCRun§e] §bLe jeu commence dans §a15 §bsecondes !");
  55.                                 }
  56.  
  57.                             }
  58.  
  59.                             if(timer == 0){
  60.                                 //ON ARRETE LE CHRONO
  61.                                 Bukkit.getScheduler().cancelTask(task);
  62.                                 //ON LANCE LA GAME
  63.                                 UHCGame.start();
  64.                             }
  65.  
  66.                         }
  67.  
  68.  
  69.                     },20,20);
  70.  
  71.                 }
  72.  
  73.             }
  74.         }else{
  75.             p.setGameMode(GameMode.SPECTATOR);
  76.             p.sendMessage("§e[§6UHCRun§e] §bLe jeu a commencé, vous êtes désormais un spectateur");
  77.         }
  78.  
  79.     }
  80.  
  81.     //ON VA METTRE DES NIVEAUX DANS LA BARRE D'XP DES JOUEURS DE LA GAME EN FONCTION DU TIMER
  82.     public void setLevel(int timer){
  83.         //ON RECUP L'UUID DES JOUEURS DE LA GAME
  84.         for(UUID uuid : Main.getInstance().playerInGame){
  85.             Player pl = Bukkit.getPlayer(uuid);
  86.             pl.setLevel(timer);
  87.         }
  88.     }
  89.  
  90.  
  91.     @EventHandler
  92.     public void quit(PlayerQuitEvent e){
  93.  
  94.         //ON RECUP LE JOUEUR QUI S'EST DECO
  95.         Player p = e.getPlayer();
  96.  
  97.         Main.getInstance().playerInGame.remove(p.getUniqueId());
  98.     }
  99.  
  100. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top