Advertisement
Guest User

Untitled

a guest
Apr 23rd, 2014
41
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.88 KB | None | 0 0
  1. package me.Girardcome.HG.Listeners;
  2.  
  3. import java.util.HashMap;
  4.  
  5. import me.Girardcome.HG.Main.Main;
  6. import me.Girardcome.HG.Managers.FeastManager;
  7. import me.Girardcome.HG.Misc.Kit;
  8. import me.Girardcome.HG.Misc.KitManager;
  9.  
  10. import org.bukkit.Bukkit;
  11. import org.bukkit.ChatColor;
  12. import org.bukkit.GameMode;
  13. import org.bukkit.entity.Entity;
  14. import org.bukkit.entity.Player;
  15. import org.bukkit.event.EventHandler;
  16. import org.bukkit.event.Listener;
  17. import org.bukkit.event.entity.EntityDamageEvent;
  18. import org.bukkit.event.entity.PlayerDeathEvent;
  19. import org.bukkit.event.player.PlayerQuitEvent;
  20.  
  21. public class Game implements Listener {
  22.  
  23. public Main plugin;
  24.  
  25. public Game(Main plugin) {
  26. this.plugin = plugin;
  27. }
  28. @EventHandler
  29. public void onQuit(PlayerQuitEvent e) {
  30. if(plugin.isGameStarted == true) {
  31. e.setQuitMessage(null);
  32. }
  33. }
  34. @EventHandler
  35. public void onDeath(PlayerDeathEvent event) {
  36. final Player killed = event.getEntity().getPlayer();
  37.  
  38. Entity killere = event.getEntity().getKiller();
  39. final String killedname = killed.getName();
  40. if (killed.getGameMode() == GameMode.CREATIVE) {
  41. return;
  42. }
  43. HashMap<String, Kit> kits = KitManager.getKitHashmap();
  44. String kit = kits.get(killed.getName()).name();
  45. if (!kits.containsKey(killed.getName())) {
  46. kit = "None";
  47. }
  48. if (kit == null) {
  49. kit = "None";
  50. }
  51.  
  52. if (killed.getLastDamageCause().getCause() == EntityDamageEvent.DamageCause.LAVA) {
  53. event.setDeathMessage(ChatColor.AQUA + killedname + "(" + kit + ")"
  54. + " a joué(e) trop près de la piscine de lave !");
  55. }
  56.  
  57. int random = (int) FeastManager.randomInt(1, 2);
  58. if (killed.getLastDamageCause() == null
  59. || killed.getLastDamageCause().getCause() == null)
  60. return;
  61. if (killed.getLastDamageCause().getCause() == EntityDamageEvent.DamageCause.FALL) {
  62. if (random == 1)
  63. event.setDeathMessage(ChatColor.AQUA + killedname + "(" + kit
  64. + ")" + " est mort(e) d'une chute !");
  65. else
  66. event.setDeathMessage(ChatColor.AQUA + killedname + "(" + kit
  67. + ")"
  68. + " a apparemment jamais entendu parler d'escaliers !");
  69. } else if (killed.getLastDamageCause().getCause() == EntityDamageEvent.DamageCause.CONTACT)
  70. event.setDeathMessage(ChatColor.AQUA + killedname + "(" + kit + ")"
  71. + " est mort piqué(e) !");
  72. else if (killed.getLastDamageCause().getCause() == EntityDamageEvent.DamageCause.STARVATION)
  73. event.setDeathMessage(ChatColor.AQUA + killedname + "(" + kit + ")"
  74. + " est mort(e) de faim !");
  75. else if (killed.getLastDamageCause().getCause() == EntityDamageEvent.DamageCause.LAVA) {
  76. if (random == 1)
  77. event.setDeathMessage(ChatColor.AQUA + killedname + "(" + kit
  78. + ")" + " a joué(e) trop près de la piscine de lave !");
  79. else
  80. event.setDeathMessage(ChatColor.AQUA + killedname + "(" + kit
  81. + ")" + " a tenter de nager dans la lave !");
  82. } else if (killed.getLastDamageCause().getCause() == EntityDamageEvent.DamageCause.FIRE)
  83. event.setDeathMessage(ChatColor.AQUA + killedname + "(" + kit + ")"
  84. + " est mort(e) brulé(e) vif !");
  85. else if (killed.getLastDamageCause().getCause() == EntityDamageEvent.DamageCause.SUICIDE)
  86. event.setDeathMessage(ChatColor.AQUA + killedname + "(" + kit + ")"
  87. + " suicided.");
  88. else if (event.getDeathMessage().contains("Ghast"))
  89. event.setDeathMessage(ChatColor.AQUA + killedname + "(" + kit + ")"
  90. + " a couru(e) dans le §6Forcefield §2!");
  91. else {
  92. event.setDeathMessage(ChatColor.AQUA + event.getDeathMessage()
  93. + ".");
  94. }
  95. if ((killere instanceof Player)) {
  96. Player killer = event.getEntity().getKiller();
  97. String killername = killer.getName();
  98. event.setDeathMessage(ChatColor.AQUA + killedname + "("
  99. + getPlayerKit(killed) + ")" + " a été tué par "
  100. + killername + "(" + getPlayerKit(killer) + ")");
  101. }
  102. if (killed.isOp() || killed.hasPermission("unyhg.mod")) {
  103. killed.setGameMode(GameMode.CREATIVE);
  104. for (Player pl : Bukkit.getOnlinePlayers()) {
  105. if (!pl.getGameMode().equals(GameMode.CREATIVE)) {
  106. pl.hidePlayer(killed);
  107. }
  108. }
  109. killed.sendMessage("§5Vous êtes maintenant invisible pour les MOD+ et autres");
  110. killed.sendMessage("§cVous êtes en mode créatif et en invisible car vous êtes mort.");
  111. } else {
  112. killed.kickPlayer("Vous avez perdu(e) ! " + ChatColor.AQUA
  113. + event.getDeathMessage());
  114. }
  115. plugin.Check();
  116. Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() {
  117. @Override
  118. public void run() {
  119. Bukkit.broadcastMessage("§e" + killed.getName() + " left the game");
  120. }
  121.  
  122. }, 10L);
  123. }
  124.  
  125. private String getPlayerKit(Player killed) {
  126. HashMap<String, Kit> kits = KitManager.getKitHashmap();
  127. String kit = kits.get(killed.getName()).name();
  128. if (!kits.containsKey(killed.getName())) {
  129. kit = "None";
  130. }
  131. if (kit == null) {
  132. kit = "None";
  133. }
  134. return kit;
  135. }
  136.  
  137.  
  138. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement