From 80b9e4ebbd2e33d947bbb504d5ad9c823c6f2f0d Mon Sep 17 00:00:00 2001 From: C-H716 <1536152356@qq.com> Date: Wed, 5 Nov 2025 19:37:22 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=97=A0=E7=BA=BF=E6=94=B6?= =?UTF-8?q?=E5=8F=91=E5=99=A8=E7=9A=84tooltips=E7=BF=BB=E8=AF=91=E9=94=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wireless/WirelessTransceiverBlock.java | 30 ++++++++++--------- .../assets/extendedae_plus/lang/en_us.json | 12 +++++++- .../assets/extendedae_plus/lang/zh_cn.json | 12 +++++++- 3 files changed, 38 insertions(+), 16 deletions(-) diff --git a/src/main/java/com/extendedae_plus/content/wireless/WirelessTransceiverBlock.java b/src/main/java/com/extendedae_plus/content/wireless/WirelessTransceiverBlock.java index 8041566..55fda89 100644 --- a/src/main/java/com/extendedae_plus/content/wireless/WirelessTransceiverBlock.java +++ b/src/main/java/com/extendedae_plus/content/wireless/WirelessTransceiverBlock.java @@ -50,18 +50,18 @@ public class WirelessTransceiverBlock extends Block implements EntityBlock { BlockEntity be = level.getBlockEntity(pos); if (be instanceof WirelessTransceiverBlockEntity te) { ItemStack mainHand = player.getMainHandItem(); - + // 潜行左键频道卡:写入频道卡信息到收发器 if (player.isShiftKeyDown() && mainHand.getItem() == ModItems.CHANNEL_CARD.get()) { handleChannelCardBinding(te, mainHand, player); super.attack(state, level, pos, player); return; } - + // 潜行左键(其他物品):减频(-1 或 -10) if (player.isShiftKeyDown()) { if (te.isLocked()) { - player.displayClientMessage(Component.literal("收发器已锁定,无法修改频道"), true); + player.displayClientMessage(Component.translatable("extendedae_plus.tooltips.wireless.transceiver_locked"), true); super.attack(state, level, pos, player); return; } @@ -72,31 +72,32 @@ public class WirelessTransceiverBlock extends Block implements EntityBlock { f -= step; if (f < 0) f = 0; te.setFrequency(f); - player.displayClientMessage(Component.literal("频道:" + te.getFrequency()), true); + player.displayClientMessage(Component.translatable("extendedae_plus.tooltips.wireless.channel", te.getFrequency()), true); } } } super.attack(state, level, pos, player); } - + /** * 处理频道卡绑定到收发器 */ private void handleChannelCardBinding(WirelessTransceiverBlockEntity te, ItemStack channelCard, Player player) { UUID cardOwner = ChannelCardItem.getOwnerUUID(channelCard); - + if (cardOwner != null) { // 写入频道卡的所有者到收发器 String teamName = ChannelCardItem.getTeamName(channelCard); te.setPlacerId(cardOwner, teamName); + String displayName = teamName != null ? teamName : cardOwner.toString().substring(0, 8); player.displayClientMessage( - Component.literal("已将收发器绑定至:" + (teamName != null ? teamName : cardOwner.toString().substring(0, 8))), - true + Component.translatable("extendedae_plus.tooltips.wireless.bound_to", displayName), + true ); } else { // 频道卡未绑定所有者,使用当前玩家 te.setPlacerId(player.getUUID(), player.getName().getString()); - player.displayClientMessage(Component.literal("频道卡未绑定,已使用当前玩家"), true); + player.displayClientMessage(Component.translatable("extendedae_plus.tooltips.wireless.card_unbound_using_player"), true); } } @@ -110,7 +111,7 @@ public class WirelessTransceiverBlock extends Block implements EntityBlock { boolean sneaking = player.isShiftKeyDown(); if (sneaking) { if (te.isLocked()) { - player.displayClientMessage(Component.literal("收发器已锁定,无法修改频道"), true); + player.displayClientMessage(Component.translatable("extendedae_plus.tooltips.wireless.transceiver_locked"), true); return InteractionResult.CONSUME; } // 频率调节:主手 +1(或 +10),副手 -1(或 -10) @@ -127,14 +128,15 @@ public class WirelessTransceiverBlock extends Block implements EntityBlock { if (f < 0) f = 0; } te.setFrequency(f); - player.displayClientMessage(Component.literal("频道:" + te.getFrequency()), true); + player.displayClientMessage(Component.translatable("extendedae_plus.tooltips.wireless.channel", te.getFrequency()), true); } else { if (te.isLocked()) { - player.displayClientMessage(Component.literal("收发器已锁定,无法切换模式"), true); + player.displayClientMessage(Component.translatable("extendedae_plus.tooltips.wireless.transceiver_locked"), true); return InteractionResult.CONSUME; } te.setMasterMode(!te.isMasterMode()); - player.displayClientMessage(Component.literal(te.isMasterMode() ? "模式:主端" : "模式:从端"), true); + String modeKey = te.isMasterMode() ? "extendedae_plus.tooltips.wireless.mode_master" : "extendedae_plus.tooltips.wireless.mode_slave"; + player.displayClientMessage(Component.translatable("extendedae_plus.tooltips.wireless.mode", Component.translatable(modeKey)), true); } return InteractionResult.CONSUME; } @@ -159,4 +161,4 @@ public class WirelessTransceiverBlock extends Block implements EntityBlock { ? (lvl, pos, st, be) -> WirelessTransceiverBlockEntity.serverTick(lvl, pos, st, (WirelessTransceiverBlockEntity) be) : null; } -} +} \ No newline at end of file diff --git a/src/main/resources/assets/extendedae_plus/lang/en_us.json b/src/main/resources/assets/extendedae_plus/lang/en_us.json index a23fd44..e84867f 100644 --- a/src/main/resources/assets/extendedae_plus/lang/en_us.json +++ b/src/main/resources/assets/extendedae_plus/lang/en_us.json @@ -142,5 +142,15 @@ "group.pattern_provider.name": "Pattern Provider", "group.entity_ticker.name": "Entity Accelerator", - "group.storage.name": "StorageBus" + "group.storage.name": "StorageBus", + + + + "extendedae_plus.tooltips.wireless.transceiver_locked": "Transceiver locked, cannot modify", + "extendedae_plus.tooltips.wireless.channel": "Channel: %s", + "extendedae_plus.tooltips.wireless.bound_to": "Transceiver bound to: %s", + "extendedae_plus.tooltips.wireless.card_unbound_using_player": "Channel card unbound, using current player", + "extendedae_plus.tooltips.wireless.mode": "Mode: %s", + "extendedae_plus.tooltips.wireless.mode_master": "Master", + "extendedae_plus.tooltips.wireless.mode_slave": "Slave" } \ No newline at end of file diff --git a/src/main/resources/assets/extendedae_plus/lang/zh_cn.json b/src/main/resources/assets/extendedae_plus/lang/zh_cn.json index 7d16255..ef16ccc 100644 --- a/src/main/resources/assets/extendedae_plus/lang/zh_cn.json +++ b/src/main/resources/assets/extendedae_plus/lang/zh_cn.json @@ -142,5 +142,15 @@ "group.pattern_provider.name": "样板供应器", "group.entity_ticker.name": "实体加速器", - "group.storage.name": "存储总线" + "group.storage.name": "存储总线", + + + + "extendedae_plus.tooltips.wireless.transceiver_locked": "收发器已锁定,无法修改", + "extendedae_plus.tooltips.wireless.channel": "频道:%s", + "extendedae_plus.tooltips.wireless.bound_to": "已将收发器绑定至:%s", + "extendedae_plus.tooltips.wireless.card_unbound_using_player": "频道卡未绑定,已使用当前玩家", + "extendedae_plus.tooltips.wireless.mode": "模式:%s", + "extendedae_plus.tooltips.wireless.mode_master": "主端", + "extendedae_plus.tooltips.wireless.mode_slave": "从端" } \ No newline at end of file