HookVanilla.java 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package xyz.spaceio.hooks;
  2. import java.util.Arrays;
  3. import java.util.Comparator;
  4. import java.util.List;
  5. import java.util.Optional;
  6. import java.util.UUID;
  7. import java.util.stream.Collectors;
  8. import org.bukkit.Bukkit;
  9. import org.bukkit.Location;
  10. import org.bukkit.entity.Entity;
  11. import org.bukkit.entity.Player;
  12. public class HookVanilla implements SkyblockAPIHook{
  13. public HookVanilla() {
  14. }
  15. @Override
  16. public int getIslandLevel(UUID uuid, String world) {
  17. return 0;
  18. }
  19. @Override
  20. public Optional<UUID> getIslandOwner(Location loc) {
  21. Optional<UUID> optional = Optional.empty();
  22. List<Entity> list = loc.getWorld().getNearbyEntities(loc, 5, 5, 5).stream()
  23. .filter(e -> e instanceof Player)
  24. .sorted(Comparator.comparingDouble(e -> e.getLocation().distance(loc)))
  25. .collect(Collectors.toList());
  26. if(list.size() > 0) {
  27. optional = Optional.of(((Player) list.get(0)).getUniqueId());
  28. }
  29. return optional;
  30. }
  31. @Override
  32. public String[] getSkyBlockWorldNames() {
  33. return Bukkit.getWorlds().stream().map(w -> w.getName()).toArray(String[]::new);
  34. }
  35. }