From 41f4ff8f0a49cb830db7b6ec660d9d5419fe3737 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ana=C3=AFs=20Saraiva?= <53227802+Kisakay@users.noreply.github.com> Date: Mon, 19 Oct 2026 03:14:31 +0200 Subject: [PATCH] pala M-grinder-2: detecteur multibloc 3x3x3 + diagnostic clic droit --- PALAMOD_CDC.md | 4 + .../pala/events/PalaItemUseEvents.java | 11 ++ .../surviepote/pala/machine/PalaGrinder.java | 96 ++++++++++++++++++ server/mods/pala-0.2.1.jar | Bin 398186 -> 400533 bytes 4 files changed, 111 insertions(+) create mode 100644 mods/pala/src/main/java/fr/surviepote/pala/machine/PalaGrinder.java diff --git a/PALAMOD_CDC.md b/PALAMOD_CDC.md index 0829a4c..9d45c0b 100644 --- a/PALAMOD_CDC.md +++ b/PALAMOD_CDC.md @@ -553,6 +553,10 @@ avant M4 (TODO:crafts-machines). (pattern frame UNVERIFIED : positions titane non visibles wiki). GUI + multibloc + tetes + modifieurs : M-grinder-2/3. VERIFIE : build SUCCESSFUL, boot Done, 0 erreur. UNVERIFIED visuel (session client M-grinder-2). +- M-grinder-2 LIVRE 2026-10-19 ~03:15 : detecteur multibloc PalaGrinder (3x3x3, totaux wiki + 20F/5C/1B/1L recalcules, 4 rotations, lave source exigee) + diagnostic clic droit sur le + coeur. GUI + tetes + modifieurs : M-grinder-3. VERIFIE : build SUCCESSFUL, boot Done, + 0 erreur. UNVERIFIED : orientation exacte du B (tableau wiki ambigu). - 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/events/PalaItemUseEvents.java b/mods/pala/src/main/java/fr/surviepote/pala/events/PalaItemUseEvents.java index 03de1be..80c4b4e 100644 --- a/mods/pala/src/main/java/fr/surviepote/pala/events/PalaItemUseEvents.java +++ b/mods/pala/src/main/java/fr/surviepote/pala/events/PalaItemUseEvents.java @@ -26,6 +26,7 @@ import net.fabricmc.fabric.api.event.player.UseItemCallback; import fr.surviepote.pala.PalaBlocks; import fr.surviepote.pala.PalaItems; +import fr.surviepote.pala.machine.PalaGrinder; // Portage des procedures "clic droit" MCreator : // - batons : ProcedureHealStick/ HyperJumpStick/ SpeedStick/ StickOfGod/ StrenghStickRightClickedInAir @@ -137,6 +138,16 @@ public final class PalaItemUseEvents { ItemStack stack = player.getItemInHand(hand); Item item = stack.isEmpty() ? null : stack.getItem(); + // --- Grinder : clic droit sur le coeur -> etat du multibloc (M-grinder-2). + // GUI + crafts en M-grinder-3 ; ici diagnostic seul (ne casse rien). + if (target.getBlock() == PalaBlocks.GRINDER_BLOCK) { + boolean formed = PalaGrinder.isFormed(sl, pos); + sp.sendSystemMessage(net.minecraft.network.chat.Component.literal(formed + ? "§6[Grinder] §aStructure complete (20 frames, 5 casings, lave)." + : "§6[Grinder] §cStructure incomplete (attendu : 3x3x3, voir wiki).")); + return InteractionResult.SUCCESS; + } + // --- Semis sur farmland (graine en main, dessus libre) --- if (target.getBlock() == Blocks.FARMLAND && item != null) { Block crop = null; diff --git a/mods/pala/src/main/java/fr/surviepote/pala/machine/PalaGrinder.java b/mods/pala/src/main/java/fr/surviepote/pala/machine/PalaGrinder.java new file mode 100644 index 0000000..de84365 --- /dev/null +++ b/mods/pala/src/main/java/fr/surviepote/pala/machine/PalaGrinder.java @@ -0,0 +1,96 @@ +package fr.surviepote.pala.machine; + +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.tags.FluidTags; +import net.minecraft.world.level.block.Block; + +import fr.surviepote.pala.PalaBlocks; + +// M-grinder-2 (wiki grinder §2) : detection du multibloc 3x3x3 (20 frame + 5 casing + +// 1 block + 1 lave = 26 blocs + lave). +// +// Structure (totaux wiki VERIFIES par comptage : 8F+1C par couche haute/basse, 4F+3C+1B+1L +// au milieu) : +// couche -1 et +1 : F F F / F C F / F F F +// couche 0 : F C F / C L C / F B F (B = face sud en rotation 0) +// Le B peut etre sur n'importe quelle face horizontale : 4 rotations testees. +// UNVERIFIED : orientation exacte du B et ordre des couches (tableau wiki ambigu) — +// a confirmer en jeu (M-grinder-3). La detection ne casse rien si KO (message seulement). +public final class PalaGrinder { + + private PalaGrinder() { + } + + // (dx, dy, dz, attendu) en rotation 0. Attendu : 'F' frame, 'C' casing, 'B' block, 'L' lave. + private static final Object[][] CELLS = cells(); + + private static Object[][] cells() { + java.util.List list = new java.util.ArrayList<>(); + // Couches -1 et +1 : frame partout sauf casing au centre. + for (int dy : new int[]{-1, 1}) { + for (int dx = -1; dx <= 1; dx++) { + for (int dz = -1; dz <= 1; dz++) { + char expect = (dx == 0 && dz == 0) ? 'C' : 'F'; + list.add(new Object[]{dx, dy, dz, expect}); + } + } + } + // Couche 0 : coins F, aretes N/S/E = C, arete sud = B, centre = L. + list.add(new Object[]{-1, 0, -1, 'F'}); + list.add(new Object[]{0, 0, -1, 'C'}); + list.add(new Object[]{1, 0, -1, 'F'}); + list.add(new Object[]{-1, 0, 0, 'C'}); + list.add(new Object[]{0, 0, 0, 'L'}); + list.add(new Object[]{1, 0, 0, 'C'}); + list.add(new Object[]{-1, 0, 1, 'F'}); + list.add(new Object[]{0, 0, 1, 'B'}); + list.add(new Object[]{1, 0, 1, 'F'}); + return list.toArray(new Object[0][]); + } + + // Rotation 0-3 autour de Y : (x, z) -> (z, -x) applique r fois. + private static int[] rot(int x, int z, int r) { + for (int i = 0; i < r; i++) { + int nx = z; + int nz = -x; + x = nx; + z = nz; + } + return new int[]{x, z}; + } + + private static boolean match(ServerLevel level, BlockPos origin, int r) { + for (Object[] cell : CELLS) { + int[] xz = rot((int) cell[0], (int) cell[2], r); + BlockPos pos = origin.offset(xz[0], (int) cell[1], xz[1]); + char expect = (char) cell[3]; + if (expect == 'L') { + if (!(level.getFluidState(pos).is(FluidTags.LAVA) + && level.getFluidState(pos).isSource())) { + return false; + } + continue; + } + Block want = expect == 'F' ? PalaBlocks.GRINDER_FRAME + : expect == 'C' ? PalaBlocks.GRINDER_CASING : PalaBlocks.GRINDER_BLOCK; + if (level.getBlockState(pos).getBlock() != want) { + return false; + } + } + return true; + } + + /** Vrai si le GRINDER_BLOCK en origin est le coeur d'un multibloc forme (4 rotations). */ + public static boolean isFormed(ServerLevel level, BlockPos origin) { + if (level.getBlockState(origin).getBlock() != PalaBlocks.GRINDER_BLOCK) { + return false; + } + for (int r = 0; r < 4; r++) { + if (match(level, origin, r)) { + return true; + } + } + return false; + } +} diff --git a/server/mods/pala-0.2.1.jar b/server/mods/pala-0.2.1.jar index ceef422d72a0cc8c1d47d94387839e43b90fded3..9f83e4603bea056bb3e0cf19886cab878ea8c36c 100644 GIT binary patch delta 22463 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 delta 21432 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 Oj*JY4F0wE%FaQ8%1(4$a