diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..747f3c6 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,21 @@ +name: CI + +on: [push] + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + - name: Set up JDK 1.8 + uses: actions/setup-java@v1 + with: + java-version: 1.8 + - name: Build with Maven + run: mvn package --file pom.xml + - name: Upload Artifact + uses: actions/upload-artifact@v2-preview + with: + name: Harbor + path: target/Harbor-*.jar \ No newline at end of file diff --git a/pom.xml b/pom.xml index f17675c..90c204d 100644 --- a/pom.xml +++ b/pom.xml @@ -26,7 +26,7 @@ org.spigotmc - spigot + spigot-api 1.14.4-R0.1-SNAPSHOT provided diff --git a/src/main/java/xyz/nkomarn/harbor/util/PlayerManager.java b/src/main/java/xyz/nkomarn/harbor/util/PlayerManager.java index 0ef275a..99aa76e 100644 --- a/src/main/java/xyz/nkomarn/harbor/util/PlayerManager.java +++ b/src/main/java/xyz/nkomarn/harbor/util/PlayerManager.java @@ -2,8 +2,6 @@ package xyz.nkomarn.harbor.util; import com.earth2me.essentials.Essentials; import com.earth2me.essentials.User; -import org.bukkit.craftbukkit.libs.it.unimi.dsi.fastutil.objects.Object2LongMap; -import org.bukkit.craftbukkit.libs.it.unimi.dsi.fastutil.objects.Object2LongOpenHashMap; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; import org.bukkit.event.Listener; @@ -15,6 +13,8 @@ import org.bukkit.event.player.PlayerQuitEvent; import org.jetbrains.annotations.NotNull; import xyz.nkomarn.harbor.Harbor; +import java.util.HashMap; +import java.util.Map; import java.util.Optional; import java.util.UUID; import java.util.concurrent.TimeUnit; @@ -22,13 +22,13 @@ import java.util.concurrent.TimeUnit; public class PlayerManager implements Listener { private final Harbor harbor; - private final Object2LongMap cooldowns; - private final Object2LongMap playerActivity; + private final Map cooldowns; + private final Map playerActivity; public PlayerManager(@NotNull Harbor harbor) { this.harbor = harbor; - this.cooldowns = new Object2LongOpenHashMap<>(); - this.playerActivity = new Object2LongOpenHashMap<>(); + this.cooldowns = new HashMap<>(); + this.playerActivity = new HashMap<>(); } /** @@ -38,7 +38,7 @@ public class PlayerManager implements Listener { * @return The player's last cooldown time. */ public long getCooldown(@NotNull Player player) { - return cooldowns.getOrDefault(player.getUniqueId(), 0); + return cooldowns.getOrDefault(player.getUniqueId(), 0L); } /** @@ -82,7 +82,7 @@ public class PlayerManager implements Listener { return false; } - long minutes = TimeUnit.MILLISECONDS.toMinutes(System.currentTimeMillis() - playerActivity.getLong(player.getUniqueId())); + long minutes = TimeUnit.MILLISECONDS.toMinutes(System.currentTimeMillis() - playerActivity.get(player.getUniqueId())); return minutes >= harbor.getConfiguration().getInteger("afk-detection.timeout"); } @@ -105,8 +105,8 @@ public class PlayerManager implements Listener { @EventHandler public void onQuit(PlayerQuitEvent event) { UUID uuid = event.getPlayer().getUniqueId(); - cooldowns.removeLong(uuid); - playerActivity.removeLong(uuid); + cooldowns.remove(uuid); + playerActivity.remove(uuid); } private final class AfkListeners implements Listener {