Advertisement
Guest User

Untitled

a guest
Jul 17th, 2016
135
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 6.33 KB | None | 0 0
  1. package net.voxelmc.donorvote;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.Arrays;
  5. import java.util.List;
  6. import java.util.Random;
  7. import java.util.Timer;
  8. import java.util.TimerTask;
  9.  
  10. import org.bukkit.Bukkit;
  11. import org.bukkit.World;
  12. import org.bukkit.command.Command;
  13. import org.bukkit.command.CommandSender;
  14. import org.bukkit.entity.Player;
  15. import org.bukkit.plugin.java.JavaPlugin;
  16.  
  17. public class DonorVote extends JavaPlugin {
  18.  
  19. public void onEnable() {
  20. loadConfiguration();
  21. }
  22. public boolean onCommand(CommandSender sender, Command cmd,
  23. String label, String[] args) {
  24. if (cmd.getLabel().equalsIgnoreCase("startvote")) {
  25. if (sender.hasPermission("donorvote.startvote")) {
  26. String type = "type";
  27. if (args[0].equals("weather")) {
  28. this.getConfig().addDefault(type, "weather");
  29. this.getConfig().addDefault("sun", 0);
  30. this.getConfig().addDefault("rain", 0);
  31. String[] players = { };
  32. this.getConfig().addDefault("players", Arrays.asList(players));
  33. sender.sendMessage("§3Vote started for weather.");
  34. Bukkit.broadcast("§5There is now a vote for weather. Use the /donorvote command and then sun or rain to vote.", "donorvote.vote");
  35. this.getConfig().options().copyDefaults(true);
  36. this.saveConfig();
  37. Timer timer = new Timer();
  38. timer.schedule(new TimerTask() {
  39. public void run() {
  40. stop("weather", sender);
  41. }
  42. }, 60,000);
  43. return true;
  44. } else if (args[0].equals("time")) {
  45. this.getConfig().addDefault(type, args[0]);
  46. this.getConfig().addDefault("day", 0);
  47. this.getConfig().addDefault("night", 0);
  48. String[] players = { };
  49. this.getConfig().addDefault("players", Arrays.asList(players));
  50. sender.sendMessage("§3Vote started for time.");
  51. Bukkit.broadcast("§5There is now a vote for time. Use the /donorvote command, and then day or night to vote.", "donorvote.vote");
  52. this.getConfig().options().copyDefaults(true);
  53. this.saveConfig();
  54. Timer timer = new Timer();
  55. timer.schedule(new TimerTask() {
  56. public void run() {
  57. stop("time", sender);
  58. }
  59. }, 60000);
  60. return true;
  61. } else {
  62. sender.sendMessage("§4Please enter a valid vote type.");
  63. return false;
  64. }
  65. } else {
  66. sender.sendMessage("§4Sorry, you do not have permission to run this command.");
  67. return false;
  68. }
  69. } else if (cmd.getLabel().equalsIgnoreCase("donorvote")) {
  70. if (sender.hasPermission("donorvote.vote")) {
  71. if (sender instanceof Player) {
  72. String strSender = sender.getName();
  73. List playersList = this.getConfig().getStringList("players");
  74. String[] playerArray = new String[playersList.size()];
  75. playersList.toArray(playerArray);
  76. String userName = "";
  77. int i = 0;
  78. while (userName != null) {
  79. userName = playerArray[i];
  80. if (userName.equals(sender.getName())) {
  81. sender.sendMessage("§4Sorry, you already voted for this.");
  82. return false;
  83. }
  84. i = i + 1;
  85. }
  86. String type = this.getConfig().getString("type");
  87. if (type.equals("weather")) {
  88. if (args[0].equals("sun")) {
  89. int pastSun = this.getConfig().getInt("sun");
  90. int nowSun = pastSun + 1;
  91. this.getConfig().set("sun", nowSun);
  92. String name = sender.getName();
  93. List playerList = this.getConfig().getStringList("players");
  94. playerList.add(name);
  95. this.getConfig().set("players", playerList);
  96. sender.sendMessage("§2Your vote has been casted!");
  97. return true;
  98. } else if (args[0].equals("rain")) {
  99. int pastRain = this.getConfig().getInt("rain");
  100. int nowRain = pastRain + 1;
  101. this.getConfig().set("rain", nowRain);
  102. String name = sender.getName();
  103. List playerList = this.getConfig().getStringList("players");
  104. playerList.add(name);
  105. this.getConfig().set("players", playerList);
  106. sender.sendMessage("§2Your vote has been casted!");
  107. return true;
  108. } else {
  109. sender.sendMessage("§4" + args[0] + " is not a valid vote.");
  110. return false;
  111. }
  112. } else {
  113. if (args[0].equals("day")) {
  114. int pastDay = this.getConfig().getInt("day");
  115. int nowDay = pastDay + 1;
  116. this.getConfig().set("day", nowDay);
  117. String name = sender.getName();
  118. List playerList = this.getConfig().getStringList("players");
  119. playerList.add(name);
  120. this.getConfig().set("players", playerList);
  121. sender.sendMessage("§2Your vote has been casted!");
  122. return true;
  123. } else if (args[0].equals("night")) {
  124. int pastNight = this.getConfig().getInt("night");
  125. int nowNight = pastNight + 1;
  126. this.getConfig().set("night", nowNight);
  127. String name = sender.getName();
  128. List playerList = this.getConfig().getStringList("players");
  129. playerList.add(name);
  130. this.getConfig().set("players", playerList);
  131. sender.sendMessage("§2Your vote has been casted!");
  132. return true;
  133. } else {
  134. sender.sendMessage("§4" + args[0] + " is not a valid argument.");
  135. return false;
  136. }
  137. }
  138. } else {
  139. return false;
  140. }
  141. } else {
  142. sender.sendMessage("§4Sorry, you do not have permission to use this command.");
  143. return false;
  144. }
  145. } else {
  146. return false;
  147. }
  148. }
  149. public void loadConfiguration() {
  150. this.getConfig().options().copyDefaults(true);
  151. this.saveConfig();
  152. }
  153. public void stop(String condition, CommandSender sender) {
  154. if (condition.equals("weather")) {
  155. Bukkit.broadcast("§5The vote for weather has now stopped.", "donorvote.vote");
  156. int sun = this.getConfig().getInt("sun");
  157. int rain = this.getConfig().getInt("rain");
  158. if (sun > rain) {
  159. World w = ((Player) sender).getWorld();
  160. w.setThundering(false);
  161. w.setStorm(false);
  162. Random rand = new Random();
  163. w.setWeatherDuration(rand.nextInt(100000));
  164. } else {
  165. World w = ((Player) sender).getWorld();
  166. w.setThundering(true);
  167. w.setStorm(true);
  168. }
  169. } else {
  170. Bukkit.broadcast("§5The vote for time has now stopped.", "donorvote.vote");
  171. int day = this.getConfig().getInt("day");
  172. int night = this.getConfig().getInt("night");
  173. World w = ((Player) sender).getWorld();
  174. if (day > night) {
  175. w.setTime(1000);
  176. } else {
  177. w.setTime(12000);
  178. }
  179. }
  180. }
  181. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement