HookSpaceSkyblock.java 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package xyz.spaceio.hooks;
  2. import java.util.Optional;
  3. import java.util.UUID;
  4. import org.bukkit.Bukkit;
  5. import org.bukkit.Location;
  6. import xyz.spaceio.skyblock.SpaceSkyblock;
  7. import xyz.spaceio.skyblock.islands.Island;
  8. public class HookSpaceSkyblock implements SkyblockAPIHook{
  9. private SpaceSkyblock api;
  10. public HookSpaceSkyblock() {
  11. api = (SpaceSkyblock) Bukkit.getPluginManager().getPlugin("SpaceSkyblock");
  12. }
  13. @Override
  14. public int getIslandLevel(UUID uuid, String onWorld) {
  15. Optional<Island> island = api.getIslandManager().getIslandOf(uuid, onWorld);
  16. if(island.isPresent()) {
  17. return island.get().getLevel();
  18. }
  19. return 0;
  20. }
  21. @Override
  22. public Optional<UUID> getIslandOwner(Location loc) {
  23. Optional<Island> optIsland = api.getIslandManager().getIslandByLocation(loc);
  24. Optional<UUID> optional = Optional.empty();
  25. if(optIsland.isPresent() && optIsland.get().getOwner() != null) {
  26. optional = Optional.of(optIsland.get().getOwner());
  27. }
  28. return optional;
  29. }
  30. @Override
  31. public String[] getSkyBlockWorldNames() {
  32. return api.getIslandManager().getSkyWorlds().stream().toArray(String[]::new);
  33. }
  34. }