diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml new file mode 100644 index 0000000..cd02b5e --- /dev/null +++ b/.gitea/workflows/build.yml @@ -0,0 +1,30 @@ +name: Build CitizensCMD plugin +run-name: Build CitizensCMD plugin +on: [push] +jobs: + Build-latest-jar: + runs-on: ubuntu-latest + steps: + - name: Build | Prepare packages + run: | + apt update; apt-get install software-properties-common -y + wget -O- https://apt.corretto.aws/corretto.key | apt-key add - + add-apt-repository 'deb https://apt.corretto.aws stable main' + apt-get update; apt-get install -y maven java-21-amazon-corretto-jdk + - name: Setup git + run: | + git config --global user.name "Radim LipovĨan" + git config --global user.email "radim@lipovcan.cz" + - name: Check out repository code + uses: actions/checkout@v4 + - name: Build | Maven clean build + run: | + mvn clean install && ls -lah && ls */ -lah && ls */* -lah&& ls */*/* -lah + - name: Push | Create release + uses: https://git.lipovcan.cz/Upstream/gitea-release-action.git@v1 + with: + files: |- + target/CitizensCMD-2.7.2.jar + - name: Push | Old FTP way to gitea.lipovcan.cz:8081 + run: | + curl --insecure --user username:mypass -T ./target/CitizensCMD-2.7.2.jar ftp://192.168.10.133:/ \ No newline at end of file diff --git a/CitizensCMD.iml b/CitizensCMD.iml new file mode 100644 index 0000000..ad42100 --- /dev/null +++ b/CitizensCMD.iml @@ -0,0 +1,14 @@ + + + + + + + SPIGOT + ADVENTURE + + 1 + + + + \ No newline at end of file diff --git a/src/main/java/me/mattstudios/citizenscmd/CitizensCMD.java b/src/main/java/me/mattstudios/citizenscmd/CitizensCMD.java index a6ba56f..e4529c8 100644 --- a/src/main/java/me/mattstudios/citizenscmd/CitizensCMD.java +++ b/src/main/java/me/mattstudios/citizenscmd/CitizensCMD.java @@ -104,6 +104,8 @@ public final class CitizensCMD extends JavaPlugin { audiences = BukkitAudiences.create(this); final Audience console = audiences.console(); + this.getServer().getMessenger().registerOutgoingPluginChannel(this, "my:psb"); + // Enabling lets go! console.sendMessage(TAG.append(LEGACY.deserialize("&3Citizens&cCMD &8&o" + getDescription().getVersion()))); console.sendMessage(TAG.append(LEGACY.deserialize("&8by &3Mateus Moreira &c@LichtHund &8& Maintained by &3HexedHero"))); @@ -206,7 +208,7 @@ public final class CitizensCMD extends JavaPlugin { * Registers all the commands to be used */ private void registerCommands() { - commandManager.registerSuggestion(SuggestionKey.of("permissions"), (sender, context) -> Arrays.asList("console", "player", "permission", "server", "message", "sound")); + commandManager.registerSuggestion(SuggestionKey.of("permissions"), (sender, context) -> Arrays.asList("console", "player", "permission", "server", "message", "sound", "bungee")); commandManager.registerSuggestion(SuggestionKey.of("type"), (sender, context) -> Arrays.asList("cmd", "perm")); commandManager.registerSuggestion(SuggestionKey.of("click"), (sender, context) -> Arrays.asList("left", "right")); commandManager.registerSuggestion(SuggestionKey.of("set"), (sender, context) -> Arrays.asList("set", "remove")); diff --git a/src/main/java/me/mattstudios/citizenscmd/listeners/NPCClickListener.java b/src/main/java/me/mattstudios/citizenscmd/listeners/NPCClickListener.java index b9cfbf9..baafb42 100644 --- a/src/main/java/me/mattstudios/citizenscmd/listeners/NPCClickListener.java +++ b/src/main/java/me/mattstudios/citizenscmd/listeners/NPCClickListener.java @@ -30,7 +30,10 @@ import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; +import com.google.common.io.ByteArrayDataOutput; +import com.google.common.io.ByteStreams; import org.bukkit.Bukkit; +import org.bukkit.ChatColor; import org.bukkit.OfflinePlayer; import org.bukkit.Sound; import org.bukkit.entity.Player; @@ -287,6 +290,18 @@ public class NPCClickListener implements Listener { getScheduler().runTaskLater(plugin, () -> Util.changeServer(plugin, player, commands.get(finalI)), (int) delay * 20L); break; + case "bungee": + ByteArrayDataOutput out = ByteStreams.newDataOutput(); + try { + out.writeUTF(player.getName()); + out.writeUTF(commands.get(finalI)); + } catch(Exception ex) { + player.sendMessage(ChatColor.translateAlternateColorCodes('&', "&cSomething wrong happened...")); + } + player.sendPluginMessage(plugin, "my:psb", out.toByteArray()); + //getScheduler().runTaskLater(plugin, () -> Util.changeServer(plugin, player, commands.get(finalI)), (int) delay * 20L); + break; + case "message": getScheduler().runTaskLater(plugin, () -> { final String finalMessage = commands.get(finalI)