Advertisement
Guest User

Untitled

a guest
Jul 23rd, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.24 KB | None | 0 0
  1. package com.tgd.titanmc.quests;
  2.  
  3. import java.io.IOException;
  4. import java.util.ArrayList;
  5. import java.util.HashMap;
  6. import java.util.Map;
  7. import java.util.UUID;
  8. import java.util.concurrent.TimeUnit;
  9.  
  10. import org.bukkit.Bukkit;
  11. import org.bukkit.ChatColor;
  12. import org.bukkit.Material;
  13. import org.bukkit.command.Command;
  14. import org.bukkit.command.CommandExecutor;
  15. import org.bukkit.command.CommandSender;
  16. import org.bukkit.entity.Player;
  17. import org.bukkit.event.EventHandler;
  18. import org.bukkit.event.Listener;
  19. import org.bukkit.event.inventory.InventoryClickEvent;
  20. import org.bukkit.inventory.Inventory;
  21. import org.bukkit.inventory.ItemStack;
  22. import org.bukkit.inventory.meta.ItemMeta;
  23. import com.tgd.titanmc.Main;
  24.  
  25. public class TimBerLand implements CommandExecutor, Listener {
  26. Main main;
  27.  
  28. public TimBerLand(Main main) {
  29. this.main = main;
  30. }
  31.  
  32. public void timBerLandGUI(Player player) {
  33. Inventory tlGUI = Bukkit.createInventory(null, 9, "Tim Ber Land's Quest");
  34.  
  35. ItemStack tlPaper = new ItemStack(Material.PAPER);
  36. ItemMeta tlPaperMeta = tlPaper.getItemMeta();
  37. tlPaperMeta.setDisplayName(ChatColor.DARK_PURPLE + "Task");
  38. ArrayList<String> tlLore = new ArrayList<String>();
  39. tlLore.add(ChatColor.GOLD + "Reward: 1000");
  40. tlLore.add(ChatColor.DARK_AQUA + "Stage 1");
  41. tlLore.add(ChatColor.DARK_GREEN + "Bring me 1 iron axe");
  42. tlLore.add("Let me axe you a question.");
  43. tlLore.add("Can you get me an axe?");
  44. tlPaperMeta.setLore(tlLore);
  45. tlPaper.setItemMeta(tlPaperMeta);
  46.  
  47. ItemStack tlConfirm = new ItemStack(Material.WOOL, 1, (short) 5);
  48. ItemMeta tlConfirmMeta = tlConfirm.getItemMeta();
  49. tlConfirmMeta.setDisplayName(ChatColor.GREEN + "Confirm");
  50. tlConfirm.setItemMeta(tlConfirmMeta);
  51.  
  52. ItemStack tblCancel = new ItemStack(Material.WOOL, 1, (short) 14);
  53. ItemMeta tblCancelMeta = tblCancel.getItemMeta();
  54. tblCancelMeta.setDisplayName(ChatColor.RED + "Cancel");
  55. tblCancel.setItemMeta(tblCancelMeta);
  56.  
  57. tlGUI.setItem(0, tlConfirm);
  58. tlGUI.setItem(4, tlPaper);
  59. tlGUI.setItem(8, tblCancel);
  60.  
  61. player.openInventory(tlGUI);
  62. }
  63.  
  64. public void timBerLandGUIDelay(Player player) {
  65. Inventory tlGUIDelay = Bukkit.createInventory(null, 9, "Tim Ber Land's Quest");
  66.  
  67. ItemStack tlPaper = new ItemStack(Material.PAPER);
  68. ItemMeta tlPaperMeta = tlPaper.getItemMeta();
  69. tlPaperMeta.setDisplayName(ChatColor.DARK_PURPLE + "Task");
  70. ArrayList<String> tlLore = new ArrayList<String>();
  71. tlLore.add(ChatColor.GOLD + "Reward: 1000");
  72. tlLore.add(ChatColor.DARK_AQUA + "Stage 1");
  73. tlLore.add(ChatColor.DARK_GREEN + "Bring me 1 iron axe.");
  74. tlLore.add("Let me axe you a question.");
  75. tlLore.add("Can you get me an axe?");
  76. tlPaperMeta.setLore(tlLore);
  77. tlPaper.setItemMeta(tlPaperMeta);
  78.  
  79. ItemStack tlConfirm = new ItemStack(Material.WOOL, 1, (short) 5);
  80. ItemMeta tlConfirmMeta = tlConfirm.getItemMeta();
  81. tlConfirmMeta.setDisplayName(ChatColor.GREEN + "Confirm");
  82. ArrayList<String> tlConfirmLore = new ArrayList<String>();
  83. tlConfirmLore.add(ChatColor.RED + "Doing this quest again will cost: 10 tickets.");
  84. tlConfirmMeta.setLore(tlConfirmLore);
  85. tlConfirm.setItemMeta(tlConfirmMeta);
  86.  
  87. ItemStack tlCancel = new ItemStack(Material.WOOL, 1, (short) 14);
  88. ItemMeta tlCancelMeta = tlCancel.getItemMeta();
  89. tlCancelMeta.setDisplayName(ChatColor.RED + "Cancel");
  90. tlCancel.setItemMeta(tlCancelMeta);
  91.  
  92. tlGUIDelay.setItem(0, tlConfirm);
  93. tlGUIDelay.setItem(4, tlPaper);
  94. tlGUIDelay.setItem(8, tlCancel);
  95.  
  96. player.openInventory(tlGUIDelay);
  97. }
  98.  
  99. @EventHandler
  100. public void onTBLClick(InventoryClickEvent event) {
  101. Player player = (Player) event.getWhoClicked();
  102. if (event.getInventory().getName() == "Tim Ber Land's Quest") {
  103. event.setCancelled(true);
  104. if (event.getCurrentItem().hasItemMeta()) {
  105. if (event.getCurrentItem().getItemMeta().getDisplayName().equals(ChatColor.RED + "Cancel")) {
  106. player.closeInventory();
  107. } else if (event.getCurrentItem().getItemMeta().getDisplayName().equals(ChatColor.GREEN + "Confirm")) {
  108. if (event.getCurrentItem().getItemMeta().hasLore()) {
  109. if (Main.players.getInt(player.getUniqueId() + ".tickets") >= 10) {
  110. player.sendMessage(ChatColor.GREEN + "[Tickets] You have " + ChatColor.RED + "lost "
  111. + ChatColor.GOLD + "10 " + ChatColor.GREEN + "tickets!");
  112. player.sendMessage(ChatColor.DARK_GREEN + "Bring me 1 iron axe.");
  113. main.getQuestsFile().set(player.getUniqueId() + ".timberland", true);
  114. try {
  115. main.getQuestsFile().save(main.getQuests());
  116. } catch (IOException e) {
  117. // TODO Auto-generated catch block
  118. e.printStackTrace();
  119. }
  120. player.closeInventory();
  121. Main.players.set(player.getUniqueId() + ".tickets",
  122. Integer.valueOf(Main.players.getInt(player.getUniqueId() + ".tickets") - 10));
  123.  
  124. } else {
  125. player.sendMessage(ChatColor.RED + "You do not have enough tickets!");
  126. player.closeInventory();
  127. }
  128.  
  129. } else {
  130. player.sendMessage(ChatColor.DARK_GREEN + "Bring me 1 iron axe.");
  131. main.getQuestsFile().set(player.getUniqueId().toString() + "timberland", true);
  132. player.closeInventory();
  133. try {
  134. main.getQuestsFile().save(main.getQuests());
  135. } catch (IOException e) {
  136. // TODO Auto-generated catch block
  137. e.printStackTrace();
  138. }
  139. }
  140. }
  141. }
  142. }
  143. }
  144.  
  145. private Map<UUID, Long> tblCOOLDOWN = new HashMap<>();
  146.  
  147. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
  148. if ((sender instanceof Player)) {
  149. Player player = (Player) sender;
  150. if (main.getQuestsFile().getBoolean(player.getUniqueId().toString() + ".timberland") == true) {
  151. if ((player.getInventory().contains(Material.IRON_AXE))) {
  152. player.getInventory().remove(new ItemStack(Material.IRON_AXE, 1));
  153. player.sendMessage(ChatColor.GREEN + "You have finished your quest!");
  154. player.sendMessage(ChatColor.GREEN + "$1000 has been added to your account.");
  155. main.getQuestsFile().set(player.getUniqueId().toString() + ".timberland", false);
  156. long now = System.currentTimeMillis();
  157. tblCOOLDOWN.put(player.getUniqueId(), now + TimeUnit.DAYS.toMillis(1));
  158. Long tblCooldown = tblCOOLDOWN.get(player.getUniqueId());
  159. Main.economy.depositPlayer(player, 1000.0D);
  160. main.getQuestsFile().set(player.getUniqueId().toString() + ".timberlandcooldown", tblCooldown);
  161. try {
  162. main.getQuestsFile().save(main.getQuests());
  163. } catch (IOException e) {
  164. // TODO Auto-generated catch block
  165. e.printStackTrace();
  166. }
  167.  
  168. return true;
  169. }
  170. player.sendMessage(ChatColor.DARK_GREEN + "Bring me 1 iron axe.");
  171.  
  172. return true;
  173. } else {
  174. main.getQuestsFile().set(player.getUniqueId().toString() + ".timberlandtime",
  175. System.currentTimeMillis());
  176. try {
  177. main.getQuestsFile().save(main.getQuests());
  178. } catch (IOException e) {
  179. e.printStackTrace();
  180. }
  181. if (main.getQuestsFile().getLong(player.getUniqueId().toString() + ".timberlandcooldown") > main
  182. .getQuestsFile().getLong(player.getUniqueId().toString() + ".timberlandtime")) {
  183. timBerLandGUIDelay(player);
  184. return true;
  185. }
  186.  
  187. timBerLandGUI(player);
  188. }
  189.  
  190. timBerLandGUI(player);
  191. }
  192. return true;
  193. }
  194. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement