amitay12123

Untitled

May 31st, 2019
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.76 KB | None | 0 0
  1. package me.amitay.realwarp;
  2.  
  3. import java.util.ArrayList;
  4. import java.util.List;
  5.  
  6. import org.bukkit.Bukkit;
  7. import org.bukkit.Location;
  8. import org.bukkit.Material;
  9. import org.bukkit.World;
  10. import org.bukkit.block.Sign;
  11. import org.bukkit.command.Command;
  12. import org.bukkit.command.CommandSender;
  13. import org.bukkit.entity.Player;
  14. import org.bukkit.event.EventHandler;
  15. import org.bukkit.event.block.Action;
  16. import org.bukkit.event.block.SignChangeEvent;
  17. import org.bukkit.event.player.PlayerInteractEvent;
  18. import org.bukkit.inventory.Inventory;
  19. import org.bukkit.inventory.ItemStack;
  20. import org.bukkit.inventory.meta.ItemMeta;
  21. import org.bukkit.plugin.PluginManager;
  22. import org.bukkit.plugin.java.JavaPlugin;
  23.  
  24. import net.md_5.bungee.api.ChatColor;
  25.  
  26. public class Main extends JavaPlugin{
  27.  
  28. @Override
  29.  
  30. public void onEnable() {
  31. getConfig().options().copyDefaults(true);
  32. saveConfig();
  33.  
  34. }
  35.  
  36.  
  37.  
  38. @Override
  39. public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
  40.  
  41.  
  42. if (!(sender instanceof Player)) {
  43. sender.sendMessage(ChatColor.DARK_RED + "Error");
  44. return true;
  45. }
  46.  
  47. Player p = (Player) sender;
  48.  
  49. if (args.length == 0) {
  50. p.sendMessage(ChatColor.RED + "please write a name of a warp");
  51. return true;
  52.  
  53. } else if (args.length == 1){
  54. String arg = args[0].toLowerCase();
  55.  
  56. if(label.equalsIgnoreCase("setwarp")) {
  57.  
  58. List<String> list = getConfig().getStringList("warpnames");
  59. if (list != null) {
  60. list = new ArrayList<>();
  61. }
  62. if (!list.contains(args[0])) {
  63. list.add(args[0]);
  64. getConfig().set("warpnames", list);
  65. saveConfig();
  66.  
  67. }
  68.  
  69. getConfig().set("warps." + arg + ".world", p.getWorld().getName());
  70. getConfig().set("warps." + arg + ".x", p.getLocation().getX());
  71. getConfig().set("warps." + arg + ".y", p.getLocation().getY());
  72. getConfig().set("warps." + arg + ".z", p.getLocation().getZ());
  73. getConfig().set("warps." + arg + ".yaw", p.getLocation().getYaw());
  74. getConfig().set("warps." + arg + ".pitch", p.getLocation().getPitch());
  75.  
  76.  
  77.  
  78. saveConfig();
  79. p.sendMessage(ChatColor.GREEN + "Successfuly aded a new warp: " + ChatColor.DARK_GREEN + arg + "!");
  80.  
  81. return true;
  82.  
  83. }
  84.  
  85. if(label.equalsIgnoreCase("delwarp")) {
  86. if (getConfig().getConfigurationSection("warps") == null) {
  87. p.sendMessage(ChatColor.RED + "Error, this warp does not exist");
  88. return true;
  89.  
  90. }
  91.  
  92. List<String> list = getConfig().getStringList("warpnames");
  93. if (list != null) {
  94. list = new ArrayList<>();
  95. }
  96. if (list.contains(args[0])) {
  97. list.remove(args[0]);
  98. getConfig().set("warpnames", list);
  99. saveConfig();
  100. }
  101.  
  102.  
  103. getConfig().set("warps", null);
  104. saveConfig();
  105. p.sendMessage(ChatColor.GREEN + "Successfuly deleted warp: " + ChatColor.DARK_GREEN + arg + "!");
  106.  
  107.  
  108.  
  109. } else if (label.equalsIgnoreCase("warp")) {
  110.  
  111. if (getConfig().getConfigurationSection("warps." + arg) == null) {
  112. p.sendMessage(ChatColor.RED + "Error, this warp does not exist");
  113. return true;
  114. }
  115.  
  116.  
  117.  
  118.  
  119. World world = Bukkit.getWorld(getConfig().getString("warps." + arg + ".world"));
  120.  
  121. double x =getConfig().getDouble("warps." + arg + ".x");
  122. double y =getConfig().getDouble("warps." + arg + ".y");
  123. double z =getConfig().getDouble("warps." + arg + ".z");
  124. float yaw = (float) getConfig().getDouble("warps." + arg + ".yaw");
  125. float pitch = (float) getConfig().getDouble("warps." + arg + ".pitch");
  126.  
  127. p.teleport(new Location(world, x, y, z, yaw, pitch));
  128.  
  129. p.sendMessage(ChatColor.GREEN + "You successfully teleported to the warp: " + ChatColor.DARK_GREEN + arg + ChatColor.GREEN + "!");
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138. }
  139.  
  140.  
  141. if(label.equalsIgnoreCase("warps")) {
  142.  
  143. List<String> list = getConfig().getStringList("warpnames");
  144. if (list != null) {
  145. int size = 9 + list.size() - (list.size()%9);
  146. Inventory inventory = Bukkit.createInventory(null, size, "warps");
  147. int slot = 0;
  148.  
  149. for(String warp:list) {
  150. ItemStack stack = new ItemStack(Material.STONE);
  151. ItemMeta meta = stack.getItemMeta();
  152. meta.setDisplayName(warp);
  153. stack.setItemMeta(meta);
  154. inventory.setItem(slot, stack);
  155. slot++;
  156.  
  157.  
  158. }
  159. p.openInventory(inventory);
  160.  
  161.  
  162.  
  163. }
  164.  
  165. }
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173. }
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189. return false;
  190.  
  191.  
  192.  
  193.  
  194. }
  195. }
Advertisement
Add Comment
Please, Sign In to add comment