diff --git a/PALAMOD_CDC.md b/PALAMOD_CDC.md index e0fb806..6c341b9 100644 --- a/PALAMOD_CDC.md +++ b/PALAMOD_CDC.md @@ -659,6 +659,9 @@ avant M4 (TODO:crafts-machines). getServer() n'existe plus en 26.3 -> sl.getServer() ; CHICKEN_AMBIENT remplace par variants -> CHICKEN_EGG. VERIFIE : build SUCCESSFUL, boot Done, 0 erreur. UNVERIFIED en jeu. +- M-gadget-6 LIVRE 2026-10-19 ~05:50 : sac de couchage (ID 5024, bloc + loot self + + clic droit = RespawnConfig via RespawnData.of, texture legacy). Sans craft ECART. + VERIFIE : build SUCCESSFUL, boot Done, 0 erreur. UNVERIFIED en jeu. - M-palaforge LIVRE 2026-10-19 ~03:55 : bloc + BE partagee (3e mode) + gate mineur 14 + table fonte wiki §3.2 (31 items, ratio floor usure) + fuels bois (+buche/planches/baton, lave exclue : seau non rendu) + craft (1 findium + 4 furnaces + 4 briques, positions diff --git a/mods/pala/src/main/java/fr/surviepote/pala/PalaBlocks.java b/mods/pala/src/main/java/fr/surviepote/pala/PalaBlocks.java index a91893e..1e0c5ab 100644 --- a/mods/pala/src/main/java/fr/surviepote/pala/PalaBlocks.java +++ b/mods/pala/src/main/java/fr/surviepote/pala/PalaBlocks.java @@ -40,6 +40,9 @@ public final class PalaBlocks { public static final Block GRINDER_CASING = register("grinder_casing", new Block(BlockBehaviour.Properties.of().setId(blockId("grinder_casing")).strength(5.0F, 10.0F).sound(SoundType.METAL).requiresCorrectToolForDrops())); public static final Block GRINDER_FRAME = register("grinder_frame", new Block(BlockBehaviour.Properties.of().setId(blockId("grinder_frame")).strength(5.0F, 10.0F).sound(SoundType.METAL).requiresCorrectToolForDrops())); public static final Block AMETHYST_SPIKE = register("amethyst_spike", new Block(BlockBehaviour.Properties.of().setId(blockId("amethyst_spike")).strength(1.0F, 10.0F).sound(SoundType.GRAVEL))); + // M-gadget-6 (wiki items lucky ID 5024 VERIFIE) : sac de couchage — pose au sol, + // clic droit = point de reapparition. Sans craft (ECART lucky). + public static final Block SLEEPING_BAG = register("sleeping_bag", new Block(BlockBehaviour.Properties.of().setId(blockId("sleeping_bag")).strength(1.0F, 2.0F).sound(SoundType.WOOL))); public static final Block CAVE_BLOCK = register("cave_block", new Block(BlockBehaviour.Properties.of().setId(blockId("cave_block")).strength(1.0F, 10.0F).sound(SoundType.METAL))); public static final Block FIKUTSI_STAGE0 = register("fikutsi_stage0", new Block(BlockBehaviour.Properties.of().setId(blockId("fikutsi_stage0")).strength(0.0F, 0.0F).sound(SoundType.CROP).noCollision().instabreak())); public static final Block FIKUTSI_STAGE1 = register("fikutsi_stage1", new Block(BlockBehaviour.Properties.of().setId(blockId("fikutsi_stage1")).strength(0.0F, 0.0F).sound(SoundType.CROP).noCollision().instabreak())); diff --git a/mods/pala/src/main/java/fr/surviepote/pala/PalaTabs.java b/mods/pala/src/main/java/fr/surviepote/pala/PalaTabs.java index 1368eb7..2d6b6f2 100644 --- a/mods/pala/src/main/java/fr/surviepote/pala/PalaTabs.java +++ b/mods/pala/src/main/java/fr/surviepote/pala/PalaTabs.java @@ -179,6 +179,7 @@ public final class PalaTabs { output.accept(PalaBlocks.AMETHYST_ORE_BLOCK); output.accept(PalaBlocks.AMETHYST_SPIKE); output.accept(PalaBlocks.CAVE_BLOCK); + output.accept(PalaBlocks.SLEEPING_BAG); output.accept(PalaBlocks.FIKUTSI_STAGE0); output.accept(PalaBlocks.FIKUTSI_STAGE1); output.accept(PalaBlocks.FIKUTSI_STAGE2); 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 836542f..efea90c 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 @@ -283,6 +283,18 @@ public final class PalaItemUseEvents { return InteractionResult.SUCCESS; } + // --- Sac de couchage (M-gadget-6, wiki ID 5024) : clic droit = spawn. + if (matured == PalaBlocks.SLEEPING_BAG) { + net.minecraft.world.level.storage.LevelData.RespawnData data = + net.minecraft.world.level.storage.LevelData.RespawnData.of( + sl.dimension(), pos.above(), sp.getYRot(), 0.0F); + sp.setRespawnPosition( + new net.minecraft.server.level.ServerPlayer.RespawnConfig(data, false), false); + sp.sendSystemMessage(net.minecraft.network.chat.Component.literal( + "§6[Sac] §7Point de reapparition defini.")); + return InteractionResult.SUCCESS; + } + return InteractionResult.PASS; } diff --git a/mods/pala/src/main/resources/assets/pala/blockstates/sleeping_bag.json b/mods/pala/src/main/resources/assets/pala/blockstates/sleeping_bag.json new file mode 100644 index 0000000..adfb802 --- /dev/null +++ b/mods/pala/src/main/resources/assets/pala/blockstates/sleeping_bag.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "pala:block/sleeping_bag" + } + } +} \ No newline at end of file diff --git a/mods/pala/src/main/resources/assets/pala/items/sleeping_bag.json b/mods/pala/src/main/resources/assets/pala/items/sleeping_bag.json new file mode 100644 index 0000000..bd023c4 --- /dev/null +++ b/mods/pala/src/main/resources/assets/pala/items/sleeping_bag.json @@ -0,0 +1,6 @@ +{ + "model": { + "type": "minecraft:model", + "model": "pala:block/sleeping_bag" + } +} \ No newline at end of file diff --git a/mods/pala/src/main/resources/assets/pala/lang/en_us.json b/mods/pala/src/main/resources/assets/pala/lang/en_us.json index 2a8f95d..71740b0 100644 --- a/mods/pala/src/main/resources/assets/pala/lang/en_us.json +++ b/mods/pala/src/main/resources/assets/pala/lang/en_us.json @@ -4,6 +4,7 @@ "item.pala.amethyst_mixed_coal": "Amethyst Mixed Coal", "item.pala.amethyst_stick": "Amethyst Stick", "item.pala.compressed_amethyst": "Compressed Amethyst", + "block.pala.sleeping_bag": "Sac de couchage", "item.pala.stats_stone": "Pierre de statistiques", "item.pala.couac_sword": "Epee couac", "item.pala.weighted_boots": "Boom Boots", diff --git a/mods/pala/src/main/resources/assets/pala/models/block/sleeping_bag.json b/mods/pala/src/main/resources/assets/pala/models/block/sleeping_bag.json new file mode 100644 index 0000000..f514886 --- /dev/null +++ b/mods/pala/src/main/resources/assets/pala/models/block/sleeping_bag.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "pala:block/sleeping_bag" + } +} \ No newline at end of file diff --git a/mods/pala/src/main/resources/assets/pala/textures/block/sleeping_bag.png b/mods/pala/src/main/resources/assets/pala/textures/block/sleeping_bag.png new file mode 100644 index 0000000..9b81244 Binary files /dev/null and b/mods/pala/src/main/resources/assets/pala/textures/block/sleeping_bag.png differ diff --git a/mods/pala/src/main/resources/data/pala/loot_table/blocks/sleeping_bag.json b/mods/pala/src/main/resources/data/pala/loot_table/blocks/sleeping_bag.json new file mode 100644 index 0000000..a6f91f4 --- /dev/null +++ b/mods/pala/src/main/resources/data/pala/loot_table/blocks/sleeping_bag.json @@ -0,0 +1,18 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "condition": { + "type": "minecraft:survives_explosion" + }, + "entries": [ + { + "type": "minecraft:item", + "name": "pala:sleeping_bag" + } + ], + "rolls": 1 + } + ], + "random_sequence": "pala:blocks/sleeping_bag" +} \ No newline at end of file diff --git a/server/mods/pala-0.2.1.jar b/server/mods/pala-0.2.1.jar index 9b0d985..4f48618 100644 Binary files a/server/mods/pala-0.2.1.jar and b/server/mods/pala-0.2.1.jar differ