diff --git a/PALAMOD_CDC.md b/PALAMOD_CDC.md index 32eb5d3..a16a382 100644 --- a/PALAMOD_CDC.md +++ b/PALAMOD_CDC.md @@ -541,6 +541,9 @@ avant M4 (TODO:crafts-machines). - M-msg LIVRE 2026-10-19 ~02:55 : /msg + /r (wiki commandes, suivi dernier expediteur par destinataire, double sens). VERIFIE : build SUCCESSFUL, boot Done, 0 erreur. UNVERIFIED en jeu (2 joueurs requis). +- M-infos LIVRE 2026-10-19 ~03:00 : /serv /wiki /discord /boutique /couleurs (wiki commandes, + liens en config : serverName/wikiUrl/discordUrl/shopUrl). VERIFIE : build SUCCESSFUL, boot + Done, 0 erreur, 17 cles config persistees (auto-complete +4). UNVERIFIED en jeu. - Client/mod : boucle visuelle OPERATIONNELLE 2026-10-19 (Xvfb :99 + runClient SDL x11 + captures Java Robot + pilotage xdotool + vision_analyze) : menu, Select World, monde New World (creatif, cheats), /give, pose de bloc, inventaire, F3+T. Screens : scratch vis*.png. diff --git a/mods/pala/src/main/java/fr/surviepote/pala/PalaCommands.java b/mods/pala/src/main/java/fr/surviepote/pala/PalaCommands.java index 8894b42..e09f456 100644 --- a/mods/pala/src/main/java/fr/surviepote/pala/PalaCommands.java +++ b/mods/pala/src/main/java/fr/surviepote/pala/PalaCommands.java @@ -113,6 +113,21 @@ public final class PalaCommands { .executes(command -> reply(command.getSource(), com.mojang.brigadier.arguments.StringArgumentType .getString(command, "texte"))))); + dispatcher.register(Commands.literal("serv") + .executes(command -> infoText(command.getSource(), + "§6[Pala] §7Serveur : §e" + PalaConfig.get().serverName))); + dispatcher.register(Commands.literal("wiki") + .executes(command -> infoText(command.getSource(), + "§6[Pala] §7Wiki : §e" + PalaConfig.get().wikiUrl))); + dispatcher.register(Commands.literal("discord") + .executes(command -> infoText(command.getSource(), + "§6[Pala] §7Discord : §e" + PalaConfig.get().discordUrl))); + dispatcher.register(Commands.literal("boutique") + .executes(command -> infoText(command.getSource(), + "§6[Pala] §7Boutique : §e" + PalaConfig.get().shopUrl))); + dispatcher.register(Commands.literal("couleurs") + .executes(command -> infoText(command.getSource(), + "§6[Pala] §7Couleurs : §00 §11 §22 §33 §44 §55 §66 §77 §88 §99 §aa §bb §cc §dd §ee §ff"))); net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents.END_SERVER_TICK .register(PalaCommands::tickSpawnQueue); net.fabricmc.fabric.api.event.lifecycle.v1.ServerTickEvents.END_SERVER_TICK @@ -142,6 +157,11 @@ public final class PalaCommands { return Command.SINGLE_SUCCESS; } + private static int infoText(CommandSourceStack source, String texte) { + source.sendSuccess(() -> Component.literal(texte), false); + return Command.SINGLE_SUCCESS; + } + // M1 : prospecte les minerais pala dans un cube de rayon N autour du joueur. // Affiche comptes par minerai + histogramme Y (8 bandes de 16) pour amethyste/titane. // Test distribution worldgen (couches 6-10 + deep ocean). Rayon capé à 32 (65^3 lectures). diff --git a/mods/pala/src/main/java/fr/surviepote/pala/core/PalaConfig.java b/mods/pala/src/main/java/fr/surviepote/pala/core/PalaConfig.java index f710158..bd45e95 100644 --- a/mods/pala/src/main/java/fr/surviepote/pala/core/PalaConfig.java +++ b/mods/pala/src/main/java/fr/surviepote/pala/core/PalaConfig.java @@ -50,6 +50,12 @@ public final class PalaConfig { // Niveau mineur requis pour /nether (wiki recompenses mineur niv.3, VERIFIE). public int netherMinerLevel = 3; + // M-infos (wiki commandes) : liens affiches par /serv /wiki /discord /boutique. + public String serverName = "SurviePote"; + public String wikiUrl = "https://wiki.paladium-pvp.fr/fr/"; + public String discordUrl = "https://discord.gg/paladium"; + public String shopUrl = "https://boutique.paladium-pvp.fr/"; + // Cooldowns sticks PvP en secondes. UNVERIFIED (durees balance staff, M5). public Map stickCooldowns = new HashMap<>(Map.of( "heal_stick", 60, "speed_stick", 30, "hyper_jump_stick", 30, @@ -174,7 +180,8 @@ public final class PalaConfig { java.util.Set expected = java.util.Set.of("minerXp", "xpBase", "xpExponent", "netherMinerLevel", "stickCooldowns", "rankNodes", "hunterKills", "farmerHarvest", "crusherResults", "crusherFuels", - "crusherInfiniteFuels", "furnaceSmelts", "furnaceFuels"); + "crusherInfiniteFuels", "furnaceSmelts", "furnaceFuels", + "serverName", "wikiUrl", "discordUrl", "shopUrl"); boolean complete = true; try (Reader keysReader = Files.newBufferedReader(path)) { com.google.gson.JsonObject obj = diff --git a/server/mods/pala-0.2.1.jar b/server/mods/pala-0.2.1.jar index 8e1521d..b46eb21 100644 Binary files a/server/mods/pala-0.2.1.jar and b/server/mods/pala-0.2.1.jar differ