优化狗牌编辑,添加文本

This commit is contained in:
17146 2025-07-10 22:07:40 +08:00 committed by Light_Quanta
parent f5093b7af0
commit f6f2de4f22
No known key found for this signature in database
GPG key ID: 11A39A1B8C890959
5 changed files with 19 additions and 1 deletions

View file

@ -1,5 +1,6 @@
package com.atsuishio.superbwarfare.client;
import com.atsuishio.superbwarfare.init.ModKeyMappings;
import net.minecraft.ChatFormatting;
import net.minecraft.client.gui.screens.Screen;
import net.minecraft.network.chat.Component;
@ -17,4 +18,9 @@ public class TooltipTool {
public static void addDevelopingText(List<Component> tooltip) {
tooltip.add(Component.translatable("des.superbwarfare.developing").withStyle(ChatFormatting.LIGHT_PURPLE).withStyle(ChatFormatting.BOLD));
}
public static void addScreenProviderText(List<Component> tooltip) {
tooltip.add(Component.translatable("des.superbwarfare.item_screen_provider",
"[" + ModKeyMappings.EDIT_MODE.getKey().getDisplayName().getString() + "]").withStyle(ChatFormatting.AQUA));
}
}

View file

@ -162,7 +162,6 @@ public class DogTagEditorScreen extends Screen {
this.name.setResponder(this::onNameChanged);
// this.name.setValue(this.stack.getHoverName().getString());
this.addWidget(this.name);
// this.setInitialFocus(this.name);
this.name.setEditable(true);
}

View file

@ -1,14 +1,17 @@
package com.atsuishio.superbwarfare.item;
import com.atsuishio.superbwarfare.client.TooltipTool;
import com.atsuishio.superbwarfare.client.screens.DogTagEditorScreen;
import com.atsuishio.superbwarfare.client.tooltip.component.DogTagImageComponent;
import com.atsuishio.superbwarfare.component.ModDataComponents;
import net.minecraft.client.gui.screens.Screen;
import net.minecraft.network.chat.Component;
import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.inventory.tooltip.TooltipComponent;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.TooltipFlag;
import net.neoforged.api.distmarker.Dist;
import net.neoforged.api.distmarker.OnlyIn;
import org.jetbrains.annotations.NotNull;
@ -17,7 +20,9 @@ import top.theillusivec4.curios.api.CuriosApi;
import top.theillusivec4.curios.api.SlotContext;
import top.theillusivec4.curios.api.type.capability.ICurioItem;
import javax.annotation.ParametersAreNonnullByDefault;
import java.util.Arrays;
import java.util.List;
import java.util.Optional;
import java.util.concurrent.atomic.AtomicBoolean;
@ -27,6 +32,12 @@ public class DogTag extends Item implements ICurioItem, ItemScreenProvider {
super(new Properties().stacksTo(1));
}
@Override
@ParametersAreNonnullByDefault
public void appendHoverText(ItemStack stack, TooltipContext context, List<Component> tooltipComponents, TooltipFlag tooltipFlag) {
TooltipTool.addScreenProviderText(tooltipComponents);
}
@Override
public boolean canEquip(SlotContext slotContext, ItemStack stack) {
LivingEntity livingEntity = slotContext.entity();

View file

@ -252,6 +252,7 @@
"item.superbwarfare.medium_armament_module": "Medium Armament Module",
"item.superbwarfare.heavy_armament_module": "Heavy Armament Module",
"item.superbwarfare.artillery_indicator": "Artillery Indicator",
"des.superbwarfare.item_screen_provider": "Press %1$s key to open GUI when holding with main hand",
"attribute.superbwarfare.bullet_resistance": "Bullet Resistance",

View file

@ -252,6 +252,7 @@
"item.superbwarfare.medium_armament_module": "中型武装模块",
"item.superbwarfare.heavy_armament_module": "重型武装模块",
"item.superbwarfare.artillery_indicator": "火炮指示器",
"des.superbwarfare.item_screen_provider": "在主手时按下 %1$s 以打开GUI",
"attribute.superbwarfare.bullet_resistance": "子弹防护",