Skip to content

Commit be4a559

Browse files
committed
Merge branch '1.21.0' of D:\Repos\Minecraft\SFM\repos\SuperFactoryManager 1.21.0 into 1.21.1
# Conflicts: # src/generated/resources/.cache/1ebf6baef22de7ee4a2d47a696e71032207e75e9
2 parents c20260a + 54f9e13 commit be4a559

8 files changed

Lines changed: 101 additions & 11 deletions

File tree

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
// 1.21.1 2025-08-28T22:04:18.7747662 Languages: en_us for mod: sfm
2-
158c3c30b38967cb060f7ee380dd231f3a0f74b9 assets/sfm/lang/en_us.json
1+
// 1.21.1 2025-09-01T18:50:07.2864006 Languages: en_us for mod: sfm
2+
6b4515c4c39b5149d7fdcc019e465e18a265cafd assets/sfm/lang/en_us.json

src/generated/resources/assets/sfm/lang/en_us.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -134,8 +134,8 @@
134134
"item.sfm.disk.tooltip.label_section.header": "Labels",
135135
"item.sfm.form": "Printing Form",
136136
"item.sfm.labelgun": "Label Gun",
137-
"item.sfm.labelgun.chat.pulled": "Pulled labels from the manager. Stop sneaking to push instead.",
138-
"item.sfm.labelgun.chat.pushed": "Pushed labels to the manager. Sneak to pull instead.",
137+
"item.sfm.labelgun.chat.pulled": "Pulled labels from the manager. Release the label gun pull modifier key (%s) to push instead.",
138+
"item.sfm.labelgun.chat.pushed": "Pushed labels to the manager. Hold the label gun pull modifier key (%s) to pull instead.",
139139
"item.sfm.labelgun.chat.skipped_blocks": "Skipped %d blocks not touching cables",
140140
"item.sfm.labelgun.tooltip.clear_reminder": "%s + %s a block to remove labels from it.",
141141
"item.sfm.labelgun.tooltip.contiguous_reminder": "Hold %s to perform changes against contiguous blocks touching cables.",
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
package ca.teamdman.sfm.client;
2+
3+
import ca.teamdman.sfm.client.registry.SFMKeyMappings;
4+
import ca.teamdman.sfm.common.localization.LocalizationKeys;
5+
import ca.teamdman.sfm.common.net.ClientboundLabelGunUseResponsePacket;
6+
import ca.teamdman.sfm.common.net.SFMPacketHandlingContext;
7+
import net.minecraft.client.Minecraft;
8+
import net.minecraft.client.player.LocalPlayer;
9+
10+
public class ClientLabelGunResponseChatHelper {
11+
public static void handle(
12+
ClientboundLabelGunUseResponsePacket msg,
13+
SFMPacketHandlingContext context
14+
) {
15+
LocalPlayer player = Minecraft.getInstance().player;
16+
assert player != null;
17+
switch (msg.behaviour()) {
18+
case Pushed -> {
19+
player.sendSystemMessage(LocalizationKeys.LABEL_GUN_CHAT_PUSHED.getComponent(
20+
SFMKeyMappings.getKeyDisplay(SFMKeyMappings.LABEL_GUN_PULL_MODIFIER_KEY)
21+
));
22+
}
23+
case Pulled -> {
24+
player.sendSystemMessage(LocalizationKeys.LABEL_GUN_CHAT_PULLED.getComponent(
25+
SFMKeyMappings.getKeyDisplay(SFMKeyMappings.LABEL_GUN_PULL_MODIFIER_KEY)
26+
));
27+
}
28+
}
29+
}
30+
}

src/main/java/ca/teamdman/sfm/common/label/LabelGunManagerPushOrPullAction.java

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package ca.teamdman.sfm.common.label;
22

33
import ca.teamdman.sfm.common.blockentity.ManagerBlockEntity;
4-
import ca.teamdman.sfm.common.localization.LocalizationKeys;
4+
import ca.teamdman.sfm.common.net.ClientboundLabelGunUseResponsePacket;
55
import ca.teamdman.sfm.common.net.ServerboundLabelGunUsePacket;
66
import net.minecraft.world.entity.player.Player;
77
import net.minecraft.world.item.ItemStack;
@@ -29,7 +29,8 @@ public void run() {
2929
// save to gun
3030
newLabels.save(gunStack);
3131
// give feedback to player
32-
player.sendSystemMessage(LocalizationKeys.LABEL_GUN_CHAT_PULLED.getComponent());
32+
new ClientboundLabelGunUseResponsePacket(ClientboundLabelGunUseResponsePacket.Behaviour.Pulled)
33+
.sendToPlayer(player);
3334
} else {
3435
// save gun labels to disk
3536
gunLabels.save(disk);
@@ -38,7 +39,8 @@ public void run() {
3839
// mark manager dirty
3940
manager.setChanged();
4041
// give feedback to player
41-
player.sendSystemMessage(LocalizationKeys.LABEL_GUN_CHAT_PUSHED.getComponent());
42+
new ClientboundLabelGunUseResponsePacket(ClientboundLabelGunUseResponsePacket.Behaviour.Pushed)
43+
.sendToPlayer(player);
4244
}
4345
}
4446
}

src/main/java/ca/teamdman/sfm/common/localization/LocalizationKeys.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -235,11 +235,11 @@ public final class LocalizationKeys {
235235
);
236236
public static final LocalizationEntry LABEL_GUN_CHAT_PULLED = new LocalizationEntry(
237237
() -> SFMItems.LABEL_GUN_ITEM.get().getDescriptionId() + ".chat.pulled",
238-
() -> "Pulled labels from the manager. Stop sneaking to push instead."
238+
() -> "Pulled labels from the manager. Release the label gun pull modifier key (%s) to push instead."
239239
);
240240
public static final LocalizationEntry LABEL_GUN_CHAT_PUSHED = new LocalizationEntry(
241241
() -> SFMItems.LABEL_GUN_ITEM.get().getDescriptionId() + ".chat.pushed",
242-
() -> "Pushed labels to the manager. Sneak to pull instead."
242+
() -> "Pushed labels to the manager. Hold the label gun pull modifier key (%s) to pull instead."
243243
);
244244
public static final LocalizationEntry LABEL_GUN_CHAT_SKIPPED_BLOCKS = new LocalizationEntry(
245245
() -> SFMItems.LABEL_GUN_ITEM.get().getDescriptionId() + ".chat.skipped_blocks",
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
package ca.teamdman.sfm.common.net;
2+
3+
import ca.teamdman.sfm.client.ClientLabelGunResponseChatHelper;
4+
import ca.teamdman.sfm.common.registry.SFMPackets;
5+
import net.minecraft.network.RegistryFriendlyByteBuf;
6+
import net.minecraft.server.level.ServerPlayer;
7+
import net.minecraft.world.entity.player.Player;
8+
9+
public record ClientboundLabelGunUseResponsePacket(
10+
Behaviour behaviour
11+
) implements SFMPacket {
12+
public enum Behaviour {
13+
Pushed,
14+
Pulled
15+
}
16+
17+
public void sendToPlayer(Player player) {
18+
if (player instanceof ServerPlayer serverPlayer) {
19+
SFMPackets.sendToPlayer(serverPlayer, this);
20+
}
21+
}
22+
public static class Daddy implements SFMPacketDaddy<ClientboundLabelGunUseResponsePacket> {
23+
24+
@Override
25+
public PacketDirection getPacketDirection() {
26+
return PacketDirection.CLIENTBOUND;
27+
}
28+
29+
@Override
30+
public Class<ClientboundLabelGunUseResponsePacket> getPacketClass() {
31+
return ClientboundLabelGunUseResponsePacket.class;
32+
}
33+
34+
@Override
35+
public void encode(
36+
ClientboundLabelGunUseResponsePacket msg,
37+
RegistryFriendlyByteBuf friendlyByteBuf
38+
) {
39+
friendlyByteBuf.writeEnum(msg.behaviour());
40+
}
41+
42+
@Override
43+
public ClientboundLabelGunUseResponsePacket decode(RegistryFriendlyByteBuf friendlyByteBuf) {
44+
return new ClientboundLabelGunUseResponsePacket(friendlyByteBuf.readEnum(Behaviour.class));
45+
46+
}
47+
48+
@Override
49+
public void handle(
50+
ClientboundLabelGunUseResponsePacket msg,
51+
SFMPacketHandlingContext context
52+
) {
53+
ClientLabelGunResponseChatHelper.handle(msg, context);
54+
}
55+
}
56+
}

src/main/java/ca/teamdman/sfm/common/registry/SFMPackets.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@ public static void register(final RegisterPayloadHandlersEvent event) {
7474
registerPacket(registrar, new ClientboundContainerExportsInspectionResultsPacket.Daddy());
7575
registerPacket(registrar, new ClientboundIfStatementInspectionResultsPacket.Daddy());
7676
registerPacket(registrar, new ClientboundInputInspectionResultsPacket.Daddy());
77+
registerPacket(registrar, new ClientboundLabelGunUseResponsePacket.Daddy());
7778
registerPacket(registrar, new ClientboundLabelInspectionResultsPacket.Daddy());
7879
registerPacket(registrar, new ClientboundManagerGuiUpdatePacket.Daddy());
7980
registerPacket(registrar, new ClientboundManagerLogLevelUpdatedPacket.Daddy());
@@ -82,15 +83,14 @@ public static void register(final RegisterPayloadHandlersEvent event) {
8283
registerPacket(registrar, new ClientboundServerConfigCommandPacket.Daddy());
8384
registerPacket(registrar, new ClientboundShowChangelogPacket.Daddy());
8485
registerPacket(registrar, new ServerboundBoolExprStatementInspectionRequestPacket.Daddy());
85-
registerPacket(registrar, new ServerboundServerConfigRequestPacket.Daddy());
8686
registerPacket(registrar, new ServerboundContainerExportsInspectionRequestPacket.Daddy());
8787
registerPacket(registrar, new ServerboundDiskItemSetProgramPacket.Daddy());
8888
registerPacket(registrar, new ServerboundFacadePacket.Daddy());
8989
registerPacket(registrar, new ServerboundIfStatementInspectionRequestPacket.Daddy());
9090
registerPacket(registrar, new ServerboundInputInspectionRequestPacket.Daddy());
9191
registerPacket(registrar, new ServerboundLabelGunClearPacket.Daddy());
92-
registerPacket(registrar, new ServerboundLabelGunPrunePacket.Daddy());
9392
registerPacket(registrar, new ServerboundLabelGunCycleViewModePacket.Daddy());
93+
registerPacket(registrar, new ServerboundLabelGunPrunePacket.Daddy());
9494
registerPacket(registrar, new ServerboundLabelGunSetActiveLabelPacket.Daddy());
9595
registerPacket(registrar, new ServerboundLabelGunUsePacket.Daddy());
9696
registerPacket(registrar, new ServerboundLabelInspectionRequestPacket.Daddy());
@@ -104,6 +104,7 @@ public static void register(final RegisterPayloadHandlersEvent event) {
104104
registerPacket(registrar, new ServerboundNetworkToolToggleOverlayPacket.Daddy());
105105
registerPacket(registrar, new ServerboundNetworkToolUsePacket.Daddy());
106106
registerPacket(registrar, new ServerboundOutputInspectionRequestPacket.Daddy());
107+
registerPacket(registrar, new ServerboundServerConfigRequestPacket.Daddy());
107108
registerPacket(registrar, new ServerboundServerConfigUpdatePacket.Daddy());
108109
}
109110

src/main/resources/assets/sfm/template_programs/changelog.sfml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ END
2121
-- Add Ctrl+E hotkey for opening the text editor in the title screen
2222
-- Add Ctrl+E hotkey for opening the text editor in the select world screen
2323
-- Fix SFM keymapping logic failing to respect modifier keys, fixes #374
24+
-- Update label gun push/pull chat reminders to show the pull modifier key instead of saying "shift"
2425

2526
---- 4.24.0 ----
2627
-- Thanks @Druadi for the support!

0 commit comments

Comments
 (0)