diff --git a/build.gradle b/build.gradle index 488181b..601fd35 100644 --- a/build.gradle +++ b/build.gradle @@ -42,6 +42,8 @@ dependencies { implementation("io.github.revxrsal:lamp.brigadier:${revxrsal_lamp_version}") implementation("io.github.revxrsal:lamp.bukkit:${revxrsal_lamp_version}") + implementation("org.bstats:bstats-bukkit:${bstats_version}") + implementation("com.j256.ormlite:ormlite-jdbc:${ormlite_version}") implementation("org.xerial:sqlite-jdbc:${sqlite_jdbc_version}") implementation("com.mysql:mysql-connector-j:${mysql_connector_version}") @@ -103,6 +105,10 @@ processResources { } } +shadowJar { + relocate("org.bstats", "${project.group}.lib.bstats") +} + modrinth { token = System.getenv("MODRINTH_TOKEN") projectId = "hommr" diff --git a/gradle.properties b/gradle.properties index 0682288..a172cab 100644 --- a/gradle.properties +++ b/gradle.properties @@ -5,6 +5,10 @@ lombok_version=1.18.38 revxrsal_lamp_version=4.0.0-rc.14 revxrsal_paper_version=4.0.0-beta.19 +menulib_version=1.3.6 + +bstats_version=3.1.0 + ormlite_version=6.1 sqlite_jdbc_version=3.51.1.0 mysql_connector_version=9.6.0 diff --git a/src/main/java/me/axeno/hommr/Hommr.java b/src/main/java/me/axeno/hommr/Hommr.java index 18b6345..94527c4 100644 --- a/src/main/java/me/axeno/hommr/Hommr.java +++ b/src/main/java/me/axeno/hommr/Hommr.java @@ -5,6 +5,9 @@ import me.axeno.hommr.api.impl.HommrApiImpl; import me.axeno.hommr.commands.HomeCommands; import me.axeno.hommr.managers.HomeManager; +import me.axeno.hommr.models.PlayerHomes; +import org.bstats.bukkit.Metrics; +import org.bstats.charts.SingleLineChart; import org.bukkit.Bukkit; import org.bukkit.plugin.ServicePriority; import org.bukkit.plugin.java.JavaPlugin; @@ -37,6 +40,15 @@ public void onEnable() { HomeManager.init(); + int pluginId = 29415; + Metrics metrics = new Metrics(this, pluginId); + + metrics.addCustomChart(new SingleLineChart("total_homes", () -> { + return HomeManager.getPlayerHomesCache().values().stream() + .mapToInt(PlayerHomes::getHomeCount) + .sum(); + })); + this.api = new HommrApiImpl(); Bukkit.getServicesManager().register(HommrApi.class, api, this, ServicePriority.Normal);