Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
minecraftforge
GitHub Repository: minecraftforge/minecraftforge
Path: blob/1.21.x/src/test_old/java/net/minecraftforge/debug/item/HiddenTooltipPartsTest.java
6513 views
1
/*
2
* Copyright (c) Forge Development LLC and contributors
3
* SPDX-License-Identifier: LGPL-2.1-only
4
*/
5
6
package net.minecraftforge.debug.item;
7
8
import com.google.common.collect.ImmutableMultimap;
9
import com.google.common.collect.Multimap;
10
import net.minecraft.world.entity.EquipmentSlot;
11
import net.minecraft.world.entity.ai.attributes.Attribute;
12
import net.minecraft.world.entity.ai.attributes.AttributeModifier;
13
import net.minecraft.world.entity.ai.attributes.AttributeModifier.Operation;
14
import net.minecraft.world.entity.ai.attributes.Attributes;
15
import net.minecraft.world.item.CreativeModeTabs;
16
import net.minecraft.world.item.Item;
17
import net.minecraft.world.item.ItemStack;
18
import net.minecraftforge.event.BuildCreativeModeTabContentsEvent;
19
import net.minecraftforge.fml.common.Mod;
20
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
21
import net.minecraftforge.registries.DeferredRegister;
22
import net.minecraftforge.registries.ForgeRegistries;
23
import net.minecraftforge.registries.RegistryObject;
24
import org.jetbrains.annotations.NotNull;
25
26
@Mod(HiddenTooltipPartsTest.MOD_ID)
27
@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.FORGE, modid = HiddenTooltipPartsTest.MOD_ID)
28
public class HiddenTooltipPartsTest
29
{
30
public static final String MOD_ID = "hidden_tooltip_parts";
31
public static final boolean ENABLED = true;
32
private static final AttributeModifier MODIFIER = new AttributeModifier(MOD_ID, 10f, Operation.ADDITION);
33
private static final DeferredRegister<Item> ITEMS = DeferredRegister.create(ForgeRegistries.ITEMS, MOD_ID);
34
private static final RegistryObject<Item> TEST_ITEM = ITEMS.register("test_item", () -> new TestItem(new Item.Properties()));
35
36
public HiddenTooltipPartsTest()
37
{
38
var modBus = FMLJavaModLoadingContext.get().getModEventBus();
39
ITEMS.register(modBus);
40
modBus.addListener(this::addCreative);
41
}
42
43
private void addCreative(BuildCreativeModeTabContentsEvent event)
44
{
45
if (event.getTabKey() == CreativeModeTabs.INGREDIENTS)
46
event.accept(TEST_ITEM);
47
}
48
49
static class TestItem extends Item
50
{
51
52
public TestItem(Properties properties)
53
{
54
super(properties);
55
}
56
57
@Override
58
public Multimap<Attribute, AttributeModifier> getAttributeModifiers(EquipmentSlot slot, ItemStack stack)
59
{
60
return ImmutableMultimap.<Attribute, AttributeModifier>builder()
61
.put(Attributes.ARMOR, MODIFIER)
62
.build();
63
}
64
65
@Override
66
public int getDefaultTooltipHideFlags(@NotNull ItemStack stack)
67
{
68
return ItemStack.TooltipPart.MODIFIERS.getMask();
69
}
70
}
71
}
72