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/ItemAttributeModifierTest.java
7104 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 net.minecraft.world.entity.ai.attributes.AttributeModifier;
9
import net.minecraft.world.entity.ai.attributes.AttributeModifier.Operation;
10
import net.minecraft.world.entity.ai.attributes.Attributes;
11
import net.minecraft.world.entity.EquipmentSlot;
12
import net.minecraft.world.item.Item;
13
import net.minecraft.world.item.Items;
14
import net.minecraftforge.event.ItemAttributeModifierEvent;
15
import net.minecraftforge.eventbus.api.listener.SubscribeEvent;
16
import net.minecraftforge.fml.common.Mod;
17
18
@Mod(ItemAttributeModifierTest.MOD_ID)
19
@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.FORGE, modid = ItemAttributeModifierTest.MOD_ID)
20
public class ItemAttributeModifierTest
21
{
22
public static final String MOD_ID = "item_modifier_test";
23
public static final boolean ENABLED = true;
24
private static final AttributeModifier MODIFIER = new AttributeModifier(MOD_ID, 10f, Operation.ADDITION);
25
26
@SubscribeEvent
27
public static void onItemAttribute(ItemAttributeModifierEvent event)
28
{
29
if (ENABLED && event.getSlotType() == EquipmentSlot.MAINHAND)
30
{
31
final Item item = event.getItemStack().getItem();
32
if (item == Items.APPLE)
33
{
34
event.addModifier(Attributes.ARMOR, MODIFIER);
35
}
36
else if (item == Items.GOLDEN_SWORD)
37
{
38
event.clearModifiers();
39
}
40
}
41
}
42
}
43