diff --git a/HEADER.txt b/HEADER.txt
new file mode 100644
index 0000000..b4f61ab
--- /dev/null
+++ b/HEADER.txt
@@ -0,0 +1,18 @@
+/*
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
+ *
+ * Copyright (C) 2024 Xpdustry
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see .
+ */
\ No newline at end of file
diff --git a/LICENSE_HEADER.md b/LICENSE_HEADER.md
deleted file mode 100644
index 3f2125a..0000000
--- a/LICENSE_HEADER.md
+++ /dev/null
@@ -1,16 +0,0 @@
-$NAME, $DESCRIPTION
-
-Copyright (C) $YEAR $AUTHOR
-
-This program is free software: you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation, either version 3 of the License, or
-(at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program. If not, see .
\ No newline at end of file
diff --git a/build.gradle.kts b/build.gradle.kts
index a8d74f0..52b807c 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -1,81 +1,63 @@
-import fr.xpdustry.toxopid.dsl.mindustryDependencies
-import fr.xpdustry.toxopid.spec.ModMetadata
-import fr.xpdustry.toxopid.spec.ModPlatform
-import fr.xpdustry.toxopid.task.GithubArtifactDownload
+import com.xpdustry.toxopid.extension.anukeXpdustry
+import com.xpdustry.toxopid.spec.ModMetadata
+import com.xpdustry.toxopid.spec.ModPlatform
+import com.xpdustry.toxopid.task.GithubAssetDownload
import net.ltgt.gradle.errorprone.CheckSeverity
import net.ltgt.gradle.errorprone.errorprone
plugins {
- id("com.diffplug.spotless") version "6.23.3"
- id("net.kyori.indra") version "3.1.3"
- id("net.kyori.indra.publishing") version "3.1.3"
- id("net.kyori.indra.git") version "3.1.3"
- id("net.kyori.indra.licenser.spotless") version "3.1.3"
- id("net.ltgt.errorprone") version "3.1.0"
- id("com.github.johnrengelman.shadow") version "8.1.1"
- id("fr.xpdustry.toxopid") version "3.2.0"
- id("com.github.ben-manes.versions") version "0.50.0"
-}
-
-val metadata = ModMetadata.fromJson(file("plugin.json"))
-
-// Remove the following line if you don't want snapshot versions
-if (indraGit.headTag() == null) {
- metadata.version += "-SNAPSHOT"
+ alias(libs.plugins.spotless)
+ alias(libs.plugins.indra.common)
+ alias(libs.plugins.indra.git)
+ alias(libs.plugins.indra.publishing)
+ alias(libs.plugins.shadow)
+ alias(libs.plugins.toxopid)
+ alias(libs.plugins.errorprone.gradle)
}
+val metadata = ModMetadata.fromJson(rootProject.file("plugin.json"))
+if (indraGit.headTag() == null) metadata.version += "-SNAPSHOT"
group = "com.xpdustry"
-val rootPackage = "com.xpdustry.template"
version = metadata.version
description = metadata.description
toxopid {
- compileVersion.set("v${metadata.minGameVersion}")
- platforms.set(setOf(ModPlatform.HEADLESS))
+ compileVersion = "v${metadata.minGameVersion}"
+ platforms = setOf(ModPlatform.SERVER)
}
repositories {
mavenCentral()
- // This repository provides mindustry artifacts built by xpdustry
- maven("https://maven.xpdustry.com/mindustry")
- // This repository provides xpdustry libraries, such as the distributor-api
- maven("https://maven.xpdustry.com/releases")
+ anukeXpdustry()
+ maven("https://maven.xpdustry.com/releases") {
+ name = "xpdustry-releases"
+ mavenContent { releasesOnly() }
+ }
}
dependencies {
- mindustryDependencies()
- compileOnly("fr.xpdustry:distributor-api:3.3.0")
-
- val junit = "5.10.1"
- testImplementation("org.junit.jupiter:junit-jupiter-params:$junit")
- testImplementation("org.junit.jupiter:junit-jupiter-api:$junit")
- testRuntimeOnly("org.junit.jupiter:junit-jupiter-engine:$junit")
-
- val checker = "3.41.0"
- compileOnly("org.checkerframework:checker-qual:$checker")
- testImplementation("org.checkerframework:checker-qual:$checker")
-
- // Static analysis
- annotationProcessor("com.uber.nullaway:nullaway:0.10.18")
- errorprone("com.google.errorprone:error_prone_core:2.23.0")
+ implementation(libs.distributor.cloud)
+ implementation(libs.cloud.core)
+ implementation(libs.cloud.annotations)
+ compileOnly(libs.distributor.api)
+ compileOnly(libs.checker.qual)
+ annotationProcessor(libs.nullaway)
+ errorprone(libs.errorprone.core)
}
indra {
javaVersions {
- target(17)
- minimumToolchain(17)
+ target(libs.versions.java.get().toInt())
+ minimumToolchain(libs.versions.java.get().toInt())
}
publishSnapshotsTo("xpdustry", "https://maven.xpdustry.com/snapshots")
publishReleasesTo("xpdustry", "https://maven.xpdustry.com/releases")
- // The license of your project, kyori has already functions for the most common licenses
- // such as gpl3OnlyLicense() for GPLv3, apache2License() for Apache 2.0, etc.
- // You can still specify your own license using the license { } builder function.
- mitLicense()
+ gpl3OnlyLicense()
- if (metadata.repo.isNotBlank()) {
- val repo = metadata.repo.split("/")
+ if (metadata.repository.isNotBlank()) {
+ val repo = metadata.repository.split("/")
github(repo[0], repo[1]) {
ci(true)
issues(true)
@@ -101,20 +83,11 @@ signing {
spotless {
java {
- // Palantir is an excellent java linter, balanced between google codestyle and regular java codestyle
palantirJavaFormat()
formatAnnotations()
- // Makes sure static imports are after normal imports
- importOrderFile(rootProject.file(".spotless/project.importorder"))
- // Makes sure there is no wildcard imports.
- // If you want to allow them,
- // remove the following line and the bumpThisNumberIfACustomStepChanges(1)
- custom("noWildcardImports") {
- if (it.contains("*;\n")) {
- throw Error("No wildcard imports allowed")
- }
- it
- }
+ importOrder("", "\\#")
+ custom("no-wildcard-imports") { it.apply { if (contains("*;\n")) error("No wildcard imports allowed") } }
+ licenseHeaderFile(rootProject.file("HEADER.txt"))
bumpThisNumberIfACustomStepChanges(1)
}
kotlinGradle {
@@ -122,62 +95,21 @@ spotless {
}
}
-indraSpotlessLicenser {
- licenseHeaderFile(rootProject.file("LICENSE_HEADER.md"))
- // Some properties to make updating the licence header easier
- property("NAME", metadata.displayName)
- property("DESCRIPTION", metadata.description)
- property("AUTHOR", metadata.author)
- property("YEAR", "2023")
-}
-
-tasks.withType {
- options.errorprone {
- disableWarningsInGeneratedCode.set(true)
- disable("MissingSummary", "InlineMeSuggester", "FutureReturnValueIgnored")
- if (!name.contains("test", ignoreCase = true)) {
- check("NullAway", CheckSeverity.ERROR)
- option("NullAway:AnnotatedPackages", rootPackage)
- option("NullAway:TreatGeneratedAsUnannotated", true)
- }
+val generateMetadataFile by tasks.registering {
+ inputs.property("metadata", metadata)
+ val output = temporaryDir.resolve("plugin.json")
+ outputs.file(output)
+ doLast {
+ output.writeText(ModMetadata.toJson(metadata))
}
}
-// Required for the GitHub actions
-tasks.register("getArtifactPath") {
- doLast { println(tasks.shadowJar.get().archiveFile.get().toString()) }
-}
-
tasks.shadowJar {
- // Makes sure the name of the final jar is (plugin-name).jar
- archiveFileName.set("${metadata.name}.jar")
- // Set the classifier to plugin for publication on a maven repository
- archiveClassifier.set("plugin")
- // Configure the dependencies shading.
- // WARNING: SQL drivers do not play well with shading,
- // the best solution would be to load them in an isolated classloader.
- // If it's too difficult, you can disable relocation but be aware this can conflict with other plugins.
- isEnableRelocation = true
- relocationPrefix = "$rootPackage.shadow"
- // Reduce shadow jar size by removing unused classes.
- // Warning, if one of your dependencies use service loaders or reflection, add to the exclude list
- // such as "minimize { exclude(dependency("some.group:some-dependency:.*")) }"
+ archiveFileName = "${metadata.name}.jar"
+ archiveClassifier = "plugin"
+ from(generateMetadataFile)
+ from(rootProject.file("LICENSE.md")) { into("META-INF") }
minimize()
- // Include the plugin.json file with the modified version
- doFirst {
- val temp = temporaryDir.resolve("plugin.json")
- temp.writeText(metadata.toJson(true))
- from(temp)
- }
- // Include the license of your project
- from(rootProject.file("LICENSE.md")) {
- into("META-INF")
- }
-}
-
-tasks.build {
- // Make sure the shadow jar is built during the build task
- dependsOn(tasks.shadowJar)
}
tasks.register("release") {
@@ -186,14 +118,32 @@ tasks.register("release") {
destinationDir = temporaryDir
}
-val downloadDistributorCore =
- tasks.register("downloadDistributorCore") {
- user.set("xpdustry")
- repo.set("distributor")
- version.set("v3.3.0")
- name.set("distributor-core.jar")
+tasks.withType {
+ options.errorprone {
+ disableWarningsInGeneratedCode = true
+ disable("MissingSummary", "InlineMeSuggester")
+ if (!name.contains("test", ignoreCase = true)) {
+ check("NullAway", CheckSeverity.ERROR)
+ option("NullAway:AnnotatedPackages", "com.xpdustry.hexed")
+ option("NullAway:TreatGeneratedAsUnannotated", true)
+ }
}
+}
+
+val downloadSlf4md by tasks.registering(GithubAssetDownload::class) {
+ owner = "xpdustry"
+ repo = "slf4md"
+ asset = "slf4md-simple.jar"
+ version = "v${libs.versions.slf4md.get()}"
+}
+
+val downloadDistributorCommon by tasks.registering(GithubAssetDownload::class) {
+ owner = "xpdustry"
+ repo = "distributor"
+ asset = "distributor-common.jar"
+ version = "v${libs.versions.distributor.get()}"
+}
tasks.runMindustryServer {
- mods.setFrom(tasks.shadowJar, downloadDistributorCore)
+ mods.from(downloadSlf4md, downloadDistributorCommon)
}
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
new file mode 100644
index 0000000..9413890
--- /dev/null
+++ b/gradle/libs.versions.toml
@@ -0,0 +1,50 @@
+[versions]
+
+# platforms
+java = "17"
+
+# utilities
+distributor = "4.0.0-rc.3"
+cloud = "2.0.0"
+slf4md = "1.0.1"
+
+# static analysis
+errorprone-gradle = "4.1.0"
+errorprone-core = "2.36.0"
+nullaway = "0.12.1"
+checker-qual = "3.48.2"
+
+# gradle
+toxopid = "4.1.1"
+indra = "3.1.3"
+spotless = "6.25.0"
+shadow = "8.3.5"
+
+[libraries]
+
+# utilities
+distributor-api = { module = "com.xpdustry:distributor-common-api", version.ref = "distributor" }
+distributor-cloud = { module = "com.xpdustry:distributor-command-cloud", version.ref = "distributor" }
+cloud-core = { module = "org.incendo:cloud-core", version.ref = "cloud" }
+cloud-annotations = { module = "org.incendo:cloud-annotations", version.ref = "cloud" }
+
+# static analysis
+errorprone-core = { module = "com.google.errorprone:error_prone_core", version.ref = "errorprone-core" }
+nullaway = { module = "com.uber.nullaway:nullaway", version.ref = "nullaway" }
+checker-qual = { module = "org.checkerframework:checker-qual", version.ref = "checker-qual" }
+
+# gradle
+toxopid = { module = "com.xpdustry:toxopid", version.ref = "toxopid" }
+indra-common = { module = "net.kyori:indra-common", version.ref = "indra" }
+indra-licenser-spotless = { module = "net.kyori:indra-licenser-spotless", version.ref = "indra" }
+spotless = { module = "com.diffplug.spotless:spotless-plugin-gradle", version.ref = "spotless" }
+shadow = { module = "com.gradleup.shadow:shadow-gradle-plugin", version.ref = "shadow" }
+
+[plugins]
+indra-common = { id = "net.kyori.indra", version.ref = "indra" }
+shadow = { id = "com.gradleup.shadow", version.ref = "shadow" }
+indra-publishing = { id = "net.kyori.indra.publishing", version.ref = "indra" }
+indra-git = { id = "net.kyori.indra.git", version.ref = "indra" }
+toxopid = { id = "com.xpdustry.toxopid", version.ref = "toxopid" }
+spotless = { id = "com.diffplug.spotless", version.ref = "spotless" }
+errorprone-gradle = { id = "net.ltgt.errorprone", version.ref = "errorprone-gradle" }
\ No newline at end of file
diff --git a/plugin.json b/plugin.json
index 0e4f4fe..84d53a6 100644
--- a/plugin.json
+++ b/plugin.json
@@ -1,15 +1,13 @@
{
"name": "hexed-reloaded",
"author": "Xpdustry",
- "displayName": "HexedPluginReloaded",
- "description": "A reimplementation of the hexed gamemode, with more features and better performances.",
+ "displayName": "HexedReloaded",
+ "description": "A reimplementation of the hexed gamemode from Anuke, with more features and better performances.",
"repo": "xpdustry/hexed-reloaded",
"version": "1.0.0",
"java": true,
"hidden": true,
"main": "com.xpdustry.hexed.HexedPluginReloaded",
"minGameVersion": "146",
- "dependencies": [
- "distributor-core"
- ]
+ "dependencies": [ "distributor-common" ]
}
\ No newline at end of file
diff --git a/src/main/java/com/xpdustry/hexed/HexedCommands.java b/src/main/java/com/xpdustry/hexed/HexedCommands.java
index 3847c7c..df2e8f9 100644
--- a/src/main/java/com/xpdustry/hexed/HexedCommands.java
+++ b/src/main/java/com/xpdustry/hexed/HexedCommands.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -19,90 +19,90 @@
package com.xpdustry.hexed;
import arc.util.CommandHandler;
-import cloud.commandframework.annotations.Argument;
-import cloud.commandframework.annotations.CommandDescription;
-import cloud.commandframework.annotations.CommandMethod;
-import cloud.commandframework.annotations.CommandPermission;
-import cloud.commandframework.annotations.ProxiedBy;
+import com.xpdustry.distributor.api.DistributorProvider;
+import com.xpdustry.distributor.api.command.CommandSender;
+import com.xpdustry.distributor.api.command.cloud.MindustryCommandManager;
+import com.xpdustry.distributor.api.plugin.PluginListener;
import com.xpdustry.hexed.api.HexedAPIProvider;
import com.xpdustry.hexed.api.event.HexPlayerJoinEvent;
import com.xpdustry.hexed.api.event.HexPlayerQuitEvent;
import com.xpdustry.hexed.api.generation.HexedMapContext;
import com.xpdustry.hexed.api.generation.MapGenerator;
-import fr.xpdustry.distributor.api.DistributorProvider;
-import fr.xpdustry.distributor.api.command.ArcCommandManager;
-import fr.xpdustry.distributor.api.command.sender.CommandSender;
-import fr.xpdustry.distributor.api.plugin.PluginListener;
import java.time.Duration;
import java.util.stream.Collectors;
import mindustry.Vars;
import mindustry.game.Team;
import mindustry.gen.Player;
import org.checkerframework.checker.nullness.qual.Nullable;
+import org.incendo.cloud.SenderMapper;
+import org.incendo.cloud.annotations.AnnotationParser;
+import org.incendo.cloud.annotations.Argument;
+import org.incendo.cloud.annotations.Command;
+import org.incendo.cloud.annotations.CommandDescription;
+import org.incendo.cloud.annotations.Default;
+import org.incendo.cloud.annotations.Permission;
+import org.incendo.cloud.annotations.ProxiedBy;
+import org.incendo.cloud.execution.ExecutionCoordinator;
final class HexedCommands implements PluginListener {
private final HexedPluginReloaded hexed;
- private final ArcCommandManager clientCommandManager;
- private final ArcCommandManager serverCommandManager;
public HexedCommands(final HexedPluginReloaded hexed) {
this.hexed = hexed;
- this.clientCommandManager = ArcCommandManager.standard(hexed);
- this.serverCommandManager = ArcCommandManager.standard(hexed);
}
- @CommandMethod("hexed start [generator]")
+ @Command("hexed start [generator]")
@CommandDescription("Begin hosting with the Hexed game mode.")
- @CommandPermission("com.xpdustry.hexed.start")
+ @Permission("com.xpdustry.hexed.start")
public void onHexedStartCommand(
- final CommandSender sender, final @Argument(value = "generator", defaultValue = "anuke") String name) {
+ final CommandSender sender, final @Argument(value = "generator") @Default("anuke") String name) {
if (Vars.state.isGame()) {
- sender.sendWarning("Stop the server first.");
+ sender.error("Stop the server first.");
return;
}
final MapGenerator generator =
HexedAPIProvider.get().getGenerators().get(name);
if (generator == null) {
- sender.sendWarning("Generator named " + name + " not found.");
+ sender.error("Generator named " + name + " not found.");
return;
}
if (HexedAPIProvider.get().start(generator)) {
- sender.sendMessage("Hexed game started.");
+ sender.reply("Hexed game started.");
} else {
- sender.sendWarning("An error occurred while starting the hexed game.");
+ sender.error("An error occurred while starting the hexed game.");
}
}
- @CommandMethod("leaderboard")
+ @Command("leaderboard")
@CommandDescription("Display the leaderboard.")
public void onLeaderboardCommand(final CommandSender sender) {
- sender.sendMessage(HexedUtils.createLeaderboard(this.hexed.getHexedState()));
+ sender.reply(HexedUtils.createLeaderboard(this.hexed.getHexedState()));
}
- @CommandMethod("hexed list [player]")
+ @Command("hexed list [player]")
@ProxiedBy("hexes")
@CommandDescription("Display the captured hexes of a player.")
public void onHexesCommand(final CommandSender sender, @Argument("player") @Nullable Player player) {
if (player == null) {
- if (sender.isConsole()) {
- sender.sendWarning("You need to specify the player.");
+ if (sender.isServer()) {
+ sender.error("You need to specify the player.");
return;
}
player = sender.getPlayer();
}
if (player.team() == Team.derelict) {
- sender.sendWarning(player.coloredName() + " [white]is not in a team!");
+ sender.error(player.coloredName() + " [white]is not in a team!");
return;
}
final var hexes = this.hexed.getHexedState().getControlled(player.team());
if (hexes.isEmpty()) {
- sender.sendWarning(player.coloredName() + "has not captured any hexes yet!");
+ sender.error(player.coloredName() + "has not captured any hexes yet!");
return;
}
- sender.sendMessage(player.coloredName() + " [accent]have captured [white]"
+ sender.reply(player.coloredName() + " [accent]have captured [white]"
+ hexes.size()
+ "[accent] hexes at [white]"
+ hexes.stream()
@@ -110,11 +110,11 @@ public void onHexesCommand(final CommandSender sender, @Argument("player") @Null
.collect(Collectors.joining(", ", "[", "]")));
}
- @CommandMethod("hexed spectate")
+ @Command("hexed spectate")
@CommandDescription("Spectate the game.")
public void onSpectateCommand(final CommandSender sender) {
- if (sender.isConsole()) {
- sender.sendWarning("You can't do that.");
+ if (sender.isServer()) {
+ sender.error("You can't do that.");
return;
}
if (sender.getPlayer().team() != Team.derelict) {
@@ -123,40 +123,45 @@ public void onSpectateCommand(final CommandSender sender) {
.post(new HexPlayerQuitEvent(
sender.getPlayer(), sender.getPlayer().team(), false));
} else {
- sender.sendWarning("You are already spectating.");
+ sender.error("You are already spectating.");
}
}
- @CommandMethod("hexed join")
+ @Command("hexed join")
@CommandDescription("Join the game.")
public void onJoinCommand(final CommandSender sender) {
- if (sender.isConsole()) {
- sender.sendWarning("You can't do that.");
+ if (sender.isServer()) {
+ sender.error("You can't do that.");
return;
}
if (sender.getPlayer().team() == Team.derelict) {
DistributorProvider.get().getEventBus().post(new HexPlayerJoinEvent(sender.getPlayer(), false));
} else {
- sender.sendWarning("You are already in the game.");
+ sender.error("You are already in the game.");
}
}
- @CommandMethod("hexed set-time ")
+ @Command("hexed set-time ")
@CommandDescription("Set the time counter.")
- @CommandPermission("com.xpdustry.hexed.set-time")
+ @Permission("com.xpdustry.hexed.set-time")
public void onSetTimeCommand(final CommandSender sender, final @Argument("minutes") int minutes) {
HexedAPIProvider.get().getHexedState().setCounter(Duration.ofMinutes(minutes));
}
@Override
public void onPluginServerCommandsRegistration(final CommandHandler handler) {
- this.serverCommandManager.initialize(handler);
- this.serverCommandManager.createAnnotationParser(CommandSender.class).parse(this);
+ this.onPluginSharedCommandsRegistration(handler);
}
@Override
public void onPluginClientCommandsRegistration(final CommandHandler handler) {
- this.clientCommandManager.initialize(handler);
- this.clientCommandManager.createAnnotationParser(CommandSender.class).parse(this);
+ this.onPluginSharedCommandsRegistration(handler);
+ }
+
+ private void onPluginSharedCommandsRegistration(final CommandHandler handler) {
+ final var manager = new MindustryCommandManager<>(
+ this.hexed, handler, ExecutionCoordinator.simpleCoordinator(), SenderMapper.identity());
+ final var annotations = new AnnotationParser<>(manager, CommandSender.class);
+ annotations.parse(this);
}
}
diff --git a/src/main/java/com/xpdustry/hexed/HexedLogic.java b/src/main/java/com/xpdustry/hexed/HexedLogic.java
index 3274cd1..0303d58 100644
--- a/src/main/java/com/xpdustry/hexed/HexedLogic.java
+++ b/src/main/java/com/xpdustry/hexed/HexedLogic.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -21,16 +21,16 @@
import arc.math.Mathf;
import arc.util.Interval;
import arc.util.Time;
+import com.xpdustry.distributor.api.DistributorProvider;
+import com.xpdustry.distributor.api.annotation.EventHandler;
+import com.xpdustry.distributor.api.annotation.TaskHandler;
+import com.xpdustry.distributor.api.collection.MindustryCollections;
+import com.xpdustry.distributor.api.plugin.PluginListener;
+import com.xpdustry.distributor.api.scheduler.MindustryTimeUnit;
import com.xpdustry.hexed.api.event.HexCaptureEvent;
import com.xpdustry.hexed.api.event.HexLostEvent;
import com.xpdustry.hexed.api.event.HexPlayerJoinEvent;
import com.xpdustry.hexed.api.event.HexPlayerQuitEvent;
-import fr.xpdustry.distributor.api.DistributorProvider;
-import fr.xpdustry.distributor.api.event.EventHandler;
-import fr.xpdustry.distributor.api.plugin.PluginListener;
-import fr.xpdustry.distributor.api.scheduler.MindustryTimeUnit;
-import fr.xpdustry.distributor.api.scheduler.TaskHandler;
-import fr.xpdustry.distributor.api.util.ArcCollections;
import java.time.Duration;
import java.util.ArrayList;
import java.util.Comparator;
@@ -193,7 +193,7 @@ private void killTeam(final Team team) {
team.data().destroyToDerelict();
DistributorProvider.get()
.getPluginScheduler()
- .scheduleAsync(this.hexed)
+ .schedule(this.hexed)
.delay(8, MindustryTimeUnit.SECONDS)
.execute(() -> this.hexed.getHexedState0().setDying(team, false));
}
@@ -202,7 +202,7 @@ private void endGame() {
if (!this.hexed.isEnabled() || Vars.state.gameOver) {
return;
}
- final var winners = ArcCollections.immutableList(Vars.state.teams.getActive()).stream()
+ final var winners = MindustryCollections.immutableList(Vars.state.teams.getActive()).stream()
.map(data -> data.team)
.filter(team -> team != Team.derelict)
.collect(maxList(Comparator.comparingInt(
diff --git a/src/main/java/com/xpdustry/hexed/HexedPluginReloaded.java b/src/main/java/com/xpdustry/hexed/HexedPluginReloaded.java
index 59422b9..cbd14af 100644
--- a/src/main/java/com/xpdustry/hexed/HexedPluginReloaded.java
+++ b/src/main/java/com/xpdustry/hexed/HexedPluginReloaded.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -18,6 +18,7 @@
*/
package com.xpdustry.hexed;
+import com.xpdustry.distributor.api.plugin.AbstractMindustryPlugin;
import com.xpdustry.hexed.api.HexedAPI;
import com.xpdustry.hexed.api.HexedAPIProvider;
import com.xpdustry.hexed.api.HexedState;
@@ -27,7 +28,6 @@
import com.xpdustry.hexed.api.generation.MapGenerator;
import com.xpdustry.hexed.api.generation.MapLoader;
import com.xpdustry.hexed.api.generation.SimpleHexedMapContext;
-import fr.xpdustry.distributor.api.plugin.AbstractMindustryPlugin;
import java.io.IOException;
import java.time.Duration;
import java.util.Collections;
diff --git a/src/main/java/com/xpdustry/hexed/HexedRenderer.java b/src/main/java/com/xpdustry/hexed/HexedRenderer.java
index 7985efd..d27d5f1 100644
--- a/src/main/java/com/xpdustry/hexed/HexedRenderer.java
+++ b/src/main/java/com/xpdustry/hexed/HexedRenderer.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -23,12 +23,12 @@
import arc.util.Interval;
import arc.util.Strings;
import arc.util.Time;
+import com.xpdustry.distributor.api.annotation.EventHandler;
+import com.xpdustry.distributor.api.plugin.PluginListener;
import com.xpdustry.hexed.api.event.HexCaptureEvent;
import com.xpdustry.hexed.api.event.HexLostEvent;
import com.xpdustry.hexed.api.event.HexPlayerQuitEvent;
import com.xpdustry.hexed.api.model.Hex;
-import fr.xpdustry.distributor.api.event.EventHandler;
-import fr.xpdustry.distributor.api.plugin.PluginListener;
import java.util.ArrayList;
import java.util.List;
import mindustry.Vars;
diff --git a/src/main/java/com/xpdustry/hexed/HexedTeamAssigner.java b/src/main/java/com/xpdustry/hexed/HexedTeamAssigner.java
index f43191a..a2c19c8 100644
--- a/src/main/java/com/xpdustry/hexed/HexedTeamAssigner.java
+++ b/src/main/java/com/xpdustry/hexed/HexedTeamAssigner.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/HexedUtils.java b/src/main/java/com/xpdustry/hexed/HexedUtils.java
index 67f9d8e..16c51a3 100644
--- a/src/main/java/com/xpdustry/hexed/HexedUtils.java
+++ b/src/main/java/com/xpdustry/hexed/HexedUtils.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/SimpleHexedState.java b/src/main/java/com/xpdustry/hexed/SimpleHexedState.java
index 165cb75..7ab0d49 100644
--- a/src/main/java/com/xpdustry/hexed/SimpleHexedState.java
+++ b/src/main/java/com/xpdustry/hexed/SimpleHexedState.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/HexedAPI.java b/src/main/java/com/xpdustry/hexed/api/HexedAPI.java
index cc06b67..60b731c 100644
--- a/src/main/java/com/xpdustry/hexed/api/HexedAPI.java
+++ b/src/main/java/com/xpdustry/hexed/api/HexedAPI.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/HexedAPIProvider.java b/src/main/java/com/xpdustry/hexed/api/HexedAPIProvider.java
index 7a1f5fe..fbc87ca 100644
--- a/src/main/java/com/xpdustry/hexed/api/HexedAPIProvider.java
+++ b/src/main/java/com/xpdustry/hexed/api/HexedAPIProvider.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/HexedState.java b/src/main/java/com/xpdustry/hexed/api/HexedState.java
index b208072..6b20aa6 100644
--- a/src/main/java/com/xpdustry/hexed/api/HexedState.java
+++ b/src/main/java/com/xpdustry/hexed/api/HexedState.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/event/HexCaptureEvent.java b/src/main/java/com/xpdustry/hexed/api/event/HexCaptureEvent.java
index 27e6a2b..f0e46ff 100644
--- a/src/main/java/com/xpdustry/hexed/api/event/HexCaptureEvent.java
+++ b/src/main/java/com/xpdustry/hexed/api/event/HexCaptureEvent.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/event/HexLostEvent.java b/src/main/java/com/xpdustry/hexed/api/event/HexLostEvent.java
index 73f0b28..5ee4e99 100644
--- a/src/main/java/com/xpdustry/hexed/api/event/HexLostEvent.java
+++ b/src/main/java/com/xpdustry/hexed/api/event/HexLostEvent.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/event/HexPlayerJoinEvent.java b/src/main/java/com/xpdustry/hexed/api/event/HexPlayerJoinEvent.java
index 8525108..75f4904 100644
--- a/src/main/java/com/xpdustry/hexed/api/event/HexPlayerJoinEvent.java
+++ b/src/main/java/com/xpdustry/hexed/api/event/HexPlayerJoinEvent.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/event/HexPlayerQuitEvent.java b/src/main/java/com/xpdustry/hexed/api/event/HexPlayerQuitEvent.java
index 44113af..7cf9738 100644
--- a/src/main/java/com/xpdustry/hexed/api/event/HexPlayerQuitEvent.java
+++ b/src/main/java/com/xpdustry/hexed/api/event/HexPlayerQuitEvent.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/AnukeHexedGenerator.java b/src/main/java/com/xpdustry/hexed/api/generation/AnukeHexedGenerator.java
index bcbd5d2..2d0e105 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/AnukeHexedGenerator.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/AnukeHexedGenerator.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/GeneratorFunction.java b/src/main/java/com/xpdustry/hexed/api/generation/GeneratorFunction.java
index 00d64b5..fa1cb82 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/GeneratorFunction.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/GeneratorFunction.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/HexedMapContext.java b/src/main/java/com/xpdustry/hexed/api/generation/HexedMapContext.java
index 91a9533..c0e9ed7 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/HexedMapContext.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/HexedMapContext.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/ImmutableSchematic.java b/src/main/java/com/xpdustry/hexed/api/generation/ImmutableSchematic.java
index 82c1f3d..6e3e84a 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/ImmutableSchematic.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/ImmutableSchematic.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -18,7 +18,7 @@
*/
package com.xpdustry.hexed.api.generation;
-import fr.xpdustry.distributor.api.util.ArcCollections;
+import com.xpdustry.distributor.api.collection.MindustryCollections;
import java.util.Collections;
import java.util.List;
import java.util.Map;
@@ -37,14 +37,15 @@ public final class ImmutableSchematic {
private final Map tags;
public ImmutableSchematic(final Schematic schematic) {
- this.tiles = ArcCollections.immutableList(schematic.tiles).stream()
+ this.tiles = MindustryCollections.immutableList(schematic.tiles).stream()
.map(stile -> new ImmutableSchematic.Tile(
stile.x, stile.y, stile.block, stile.config, Tile.Rotation.from(stile.rotation)))
.toList();
this.width = schematic.width;
this.height = schematic.height;
- this.labels = Collections.unmodifiableSortedSet(new TreeSet<>(ArcCollections.immutableList(schematic.labels)));
- this.tags = Map.copyOf(ArcCollections.immutableMap(schematic.tags));
+ this.labels =
+ Collections.unmodifiableSortedSet(new TreeSet<>(MindustryCollections.immutableList(schematic.labels)));
+ this.tags = Map.copyOf(MindustryCollections.immutableMap(schematic.tags));
}
public ImmutableSchematic(
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/MapContext.java b/src/main/java/com/xpdustry/hexed/api/generation/MapContext.java
index d888698..db78cf7 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/MapContext.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/MapContext.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/MapGenerator.java b/src/main/java/com/xpdustry/hexed/api/generation/MapGenerator.java
index 55f9b34..6a226d5 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/MapGenerator.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/MapGenerator.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/MapLoader.java b/src/main/java/com/xpdustry/hexed/api/generation/MapLoader.java
index d545751..9fe025f 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/MapLoader.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/MapLoader.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/MapTile.java b/src/main/java/com/xpdustry/hexed/api/generation/MapTile.java
index 34109fc..b017953 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/MapTile.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/MapTile.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/OreGeneratorFunction.java b/src/main/java/com/xpdustry/hexed/api/generation/OreGeneratorFunction.java
index fe485d9..f216430 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/OreGeneratorFunction.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/OreGeneratorFunction.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/RiverNoiseFunction.java b/src/main/java/com/xpdustry/hexed/api/generation/RiverNoiseFunction.java
index 5dc66f1..7b1680f 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/RiverNoiseFunction.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/RiverNoiseFunction.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/SimpleHexedMapContext.java b/src/main/java/com/xpdustry/hexed/api/generation/SimpleHexedMapContext.java
index b523575..f7938c7 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/SimpleHexedMapContext.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/SimpleHexedMapContext.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/SimpleMapContext.java b/src/main/java/com/xpdustry/hexed/api/generation/SimpleMapContext.java
index ff5c37a..36f51c1 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/SimpleMapContext.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/SimpleMapContext.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/generation/TileConsumer.java b/src/main/java/com/xpdustry/hexed/api/generation/TileConsumer.java
index 123e5c1..6b4570d 100644
--- a/src/main/java/com/xpdustry/hexed/api/generation/TileConsumer.java
+++ b/src/main/java/com/xpdustry/hexed/api/generation/TileConsumer.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/model/Hex.java b/src/main/java/com/xpdustry/hexed/api/model/Hex.java
index 53922c5..d82a624 100644
--- a/src/main/java/com/xpdustry/hexed/api/model/Hex.java
+++ b/src/main/java/com/xpdustry/hexed/api/model/Hex.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/model/SimpleHex.java b/src/main/java/com/xpdustry/hexed/api/model/SimpleHex.java
index 923feb0..99b5a15 100644
--- a/src/main/java/com/xpdustry/hexed/api/model/SimpleHex.java
+++ b/src/main/java/com/xpdustry/hexed/api/model/SimpleHex.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
diff --git a/src/main/java/com/xpdustry/hexed/api/model/Square.java b/src/main/java/com/xpdustry/hexed/api/model/Square.java
index 24b38c1..c75c200 100644
--- a/src/main/java/com/xpdustry/hexed/api/model/Square.java
+++ b/src/main/java/com/xpdustry/hexed/api/model/Square.java
@@ -1,7 +1,7 @@
/*
- * HexedPluginReloaded, A reimplementation of the hexed gamemode, with more features and better performances.
+ * HexedReloaded, A reimplementation of the hexed gamemode from Anuke, with more features and better performances.
*
- * Copyright (C) 2023 Xpdustry
+ * Copyright (C) 2024 Xpdustry
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by