Sitafe

Untitled

Sep 26th, 2020
136
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.17 KB | None | 0 0
  1. package ru.sitafe.home;
  2.  
  3. import org.bukkit.Bukkit;
  4. import org.bukkit.ChatColor;
  5. import org.bukkit.Location;
  6. import org.bukkit.command.Command;
  7. import org.bukkit.command.CommandSender;
  8. import org.bukkit.configuration.file.FileConfiguration;
  9. import org.bukkit.entity.Player;
  10. import org.bukkit.event.Listener;
  11. import org.bukkit.plugin.java.JavaPlugin;
  12.  
  13. public class main extends JavaPlugin implements Listener {
  14.  
  15.     FileConfiguration config = getConfig();
  16.     private main instance;
  17.  
  18.     @Override
  19.     public void onEnable() {
  20.         getServer().getPluginManager().registerEvents(this, this);
  21.     }
  22.  
  23.     @Override
  24.     public void onDisable() {
  25.     }
  26.  
  27.     public boolean checkSender (CommandSender sender) {
  28.         if (sender instanceof Player) {
  29.             return false;
  30.         }
  31.         return true;
  32.     }
  33.  
  34.     public boolean onCommand (CommandSender sender, Command cmd, String label, String[] args) {
  35.         if (cmd.getName().equalsIgnoreCase("sethome")) {
  36.             if (checkSender(sender)) {
  37.                 sender.sendMessage(ChatColor.RED + "Использовать эту команду может только игрок.");
  38.                 return false;
  39.             }
  40.             Player p = (Player) sender;
  41.             LocToConfig(p.getName(), p.getLocation());
  42.             p.sendMessage(ChatColor.GREEN + "Дом установлен.");
  43.             return true;
  44.             }
  45.         if (cmd.getName().equalsIgnoreCase("home")) {
  46.             if (checkSender(sender)) {
  47.                 sender.sendMessage(ChatColor.RED + "Использовать эту команду может только игрок.");
  48.                 return false;
  49.             }
  50.  
  51.             /* if () {
  52.                 p.sendMessage("Вы ещё не установили точку дома. Используйте: /sethome.");
  53.                 return false;
  54.             }*/
  55.  
  56.             Player p = (Player) sender;
  57.             Location home = configToLoc(p.getName());
  58.             p.teleport(home);
  59.             p.sendMessage(ChatColor.GREEN + "Телепортация домой прошла успешно!");
  60.             return true;
  61.         }
  62.         return false;
  63.     }
  64.  
  65.     public void LocToConfig (String name, Location loc) {
  66.         config.set("locations." + name + ".world", loc.getWorld().getName());
  67.         config.set("locations." + name + ".x", loc.getX());
  68.         config.set("locations." + name + ".y", loc.getY());
  69.         config.set("locations." + name + ".z", loc.getZ());
  70.         config.set("locations." + name + ".yaw", loc.getYaw());
  71.         config.set("locations." + name + ".pitch", loc.getPitch());
  72.         saveConfig();
  73.     }
  74.  
  75.     public Location configToLoc (String name) {
  76.         Location loc;
  77.         loc = new Location(Bukkit.getServer().getWorld(config.getString("locations." + name + ".world")),
  78.                 config.getDouble("locations." + name + ".x"),
  79.                 config.getDouble("locations." + name + ".y"),
  80.                 config.getDouble("locations." + name + ".z"),
  81.                 config.getLong("locations." + name + ".yaw"),
  82.                 config.getLong("locations." + name + ".pitch"));
  83.         return loc;
  84.     }
  85. }
Advertisement
Add Comment
Please, Sign In to add comment