Advertisement
Guest User

Chooser.class

a guest
Jan 5th, 2018
115
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.63 KB | None | 0 0
  1. /*
  2. * To change this license header, choose License Headers in Project Properties.
  3. * To change this template file, choose Tools | Templates
  4. * and open the template in the editor.
  5. */
  6. package cramer.jason;
  7. import org.bukkit.Bukkit;
  8. import org.bukkit.plugin.java.JavaPlugin;
  9. import org.bukkit.entity.Player;
  10. import java.util.ArrayList;
  11. import java.util.Random;
  12. import org.bukkit.ChatColor;
  13. import org.bukkit.command.Command;
  14. import org.bukkit.command.CommandSender;
  15. import org.bukkit.event.EventHandler;
  16. import org.bukkit.event.Listener;
  17. import org.bukkit.event.entity.PlayerDeathEvent;
  18. import org.bukkit.event.player.PlayerQuitEvent;
  19.  
  20. /**
  21. *
  22. * @author Jason
  23. * Description:
  24. * Type command to get name added to volunteer list. when there are 3 players in it, it will run a method that picks a
  25. * random name from he volunteer list and adds it to the chosen list. When a chosen dies, it will pick another random
  26. * player if there are 3 players at least. Object of game is to kill the chosen player, it's like a manhunt. I realize
  27. * this is pretty simple stuff but I literally just made it today and I'm planning on adding a method that gives a reward
  28. * to whoever kills the chosen one (if applicable), also a second command that tells you who the chosen one is.
  29. */
  30. public class BlankPlugin extends JavaPlugin implements Listener {
  31. @Override
  32. public void onEnable() {
  33. Bukkit.getServer().getPluginManager().registerEvents(this, this);
  34. }
  35.  
  36. @Override
  37. public void onDisable() {
  38. }
  39.  
  40. ArrayList<String> chosen = new ArrayList<String>();
  41. ArrayList<String> volunteer = new ArrayList<String>();
  42.  
  43. public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
  44. if (cmd.getName().equalsIgnoreCase("volunteer")) {
  45. if (!(sender instanceof Player)) {
  46. sender.sendMessage(ChatColor.RED + "The console cannot be chosen!");
  47. return true;
  48. }
  49.  
  50. Player player = (Player) sender;
  51.  
  52. if (volunteer.contains(player.getName())) {
  53. volunteer.remove(player.getName());
  54. sender.sendMessage(ChatColor.GREEN + "Player " + player.getName() + " has been removed from the volunteer list.");
  55. return true;
  56. } else {
  57. volunteer.add(player.getName());
  58. if (volunteer.size() == 3) {
  59. choosePlayer();
  60. }
  61. sender.sendMessage(ChatColor.GREEN + "Player " + player.getName() + " has been added to the volunteer list.");
  62. }
  63. }
  64. return true;
  65. }
  66.  
  67. public void choosePlayer() {
  68. Random r = new Random();
  69. String s = volunteer.get(r.nextInt(volunteer.size()));
  70. chosen.add(s);
  71. Bukkit.broadcastMessage(ChatColor.GREEN + "Player " + s + " has been chosen!");
  72. }
  73.  
  74. @EventHandler
  75. public void onPlayerDeath(PlayerDeathEvent e) {
  76. Player p = e.getEntity().getPlayer();
  77. if (chosen.contains(p.getName())) {
  78. Bukkit.broadcastMessage(ChatColor.RED + "The Chosen player " + p.getName() + " has died!");
  79. chosen.remove(p.getName());
  80. if (volunteer.size() >= 3) {
  81. choosePlayer();
  82. }
  83. }
  84. }
  85.  
  86. @EventHandler
  87. public void onPlayerQuit(PlayerQuitEvent e) {
  88. Player p = e.getPlayer();
  89. if (chosen.contains(p.getName())) {
  90. Bukkit.broadcastMessage(ChatColor.RED + "The Chosen player " + p.getName() + " has quit!");
  91. chosen.remove(p.getName());
  92. if (volunteer.size() >= 3) {
  93. choosePlayer();
  94. }
  95. }
  96. if (volunteer.contains(p.getName())) {
  97. volunteer.remove(p.getName());
  98. }
  99. }
  100.  
  101. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement