Skip to content

Commit

Permalink
Use itemlike to reduce getter resolves in TinkerItemProperties
Browse files Browse the repository at this point in the history
  • Loading branch information
KnightMiner committed Jan 19, 2025
1 parent bf429b6 commit ddc6745
Show file tree
Hide file tree
Showing 2 changed files with 31 additions and 29 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
import net.minecraft.world.item.Item;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.UseAnim;
import net.minecraft.world.level.ItemLike;
import slimeknights.tconstruct.TConstruct;
import slimeknights.tconstruct.library.modifiers.hook.interaction.GeneralInteractionModifierHook;
import slimeknights.tconstruct.library.tools.helper.ModifierUtil;
Expand Down Expand Up @@ -73,15 +74,16 @@ public static void registerBrokenProperty(Item item) {
}

/** Registers properties for a tool, including the option to have charge/block animations */
public static void registerToolProperties(Item item) {
public static void registerToolProperties(ItemLike itemlike) {
Item item = itemlike.asItem();
registerBrokenProperty(item);
ItemProperties.register(item, CHARGING_ID, CHARGING);
ItemProperties.register(item, CHARGE_ID, CHARGE);
}

/** Registers properties for a bow */
public static void registerCrossbowProperties(Item item) {
public static void registerCrossbowProperties(ItemLike item) {
registerToolProperties(item);
ItemProperties.register(item, AMMO_ID, AMMO);
ItemProperties.register(item.asItem(), AMMO_ID, AMMO);
}
}
52 changes: 26 additions & 26 deletions src/main/java/slimeknights/tconstruct/tools/ToolClientEvents.java
Original file line number Diff line number Diff line change
Expand Up @@ -148,39 +148,39 @@ static void clientSetupEvent(FMLClientSetupEvent event) {

// properties
// stone
TinkerItemProperties.registerToolProperties(TinkerTools.pickaxe.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.sledgeHammer.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.veinHammer.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.pickaxe);
TinkerItemProperties.registerToolProperties(TinkerTools.sledgeHammer);
TinkerItemProperties.registerToolProperties(TinkerTools.veinHammer);
// dirt
TinkerItemProperties.registerToolProperties(TinkerTools.mattock.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.pickadze.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.excavator.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.mattock);
TinkerItemProperties.registerToolProperties(TinkerTools.pickadze);
TinkerItemProperties.registerToolProperties(TinkerTools.excavator);
// axe
TinkerItemProperties.registerToolProperties(TinkerTools.handAxe.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.broadAxe.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.handAxe);
TinkerItemProperties.registerToolProperties(TinkerTools.broadAxe);
// leaves
TinkerItemProperties.registerToolProperties(TinkerTools.kama.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.scythe.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.kama);
TinkerItemProperties.registerToolProperties(TinkerTools.scythe);
// sword
TinkerItemProperties.registerToolProperties(TinkerTools.dagger.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.sword.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.cleaver.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.dagger);
TinkerItemProperties.registerToolProperties(TinkerTools.sword);
TinkerItemProperties.registerToolProperties(TinkerTools.cleaver);
// bow
TinkerItemProperties.registerCrossbowProperties(TinkerTools.crossbow.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.longbow.asItem());
TinkerItemProperties.registerCrossbowProperties(TinkerTools.crossbow);
TinkerItemProperties.registerToolProperties(TinkerTools.longbow);
// misc
TinkerItemProperties.registerToolProperties(TinkerTools.flintAndBrick.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.skyStaff.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.earthStaff.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.ichorStaff.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.enderStaff.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.flintAndBrick);
TinkerItemProperties.registerToolProperties(TinkerTools.skyStaff);
TinkerItemProperties.registerToolProperties(TinkerTools.earthStaff);
TinkerItemProperties.registerToolProperties(TinkerTools.ichorStaff);
TinkerItemProperties.registerToolProperties(TinkerTools.enderStaff);
// ancient
TinkerItemProperties.registerToolProperties(TinkerTools.meltingPan.asItem());
TinkerItemProperties.registerCrossbowProperties(TinkerTools.warPick.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.battlesign.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.meltingPan);
TinkerItemProperties.registerCrossbowProperties(TinkerTools.warPick);
TinkerItemProperties.registerToolProperties(TinkerTools.battlesign);
// armor
TinkerItemProperties.registerToolProperties(TinkerTools.travelersShield.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.plateShield.asItem());
TinkerItemProperties.registerToolProperties(TinkerTools.travelersShield);
TinkerItemProperties.registerToolProperties(TinkerTools.plateShield);
Consumer<Item> brokenConsumer = TinkerItemProperties::registerBrokenProperty;
TinkerTools.travelersGear.forEach(brokenConsumer);
TinkerTools.plateArmor.forEach(brokenConsumer);
Expand Down Expand Up @@ -241,7 +241,7 @@ static void itemColors(RegisterColorHandlersEvent.Item event) {
return ResourceColorManager.getColor(Util.makeTranslationKey("modifier", modifier));
}
return -1;
}, TinkerModifiers.modifierCrystal.asItem());
}, TinkerModifiers.modifierCrystal);
}

// values to check if a key was being pressed last tick, safe as a static value as we only care about a single player client side
Expand Down

0 comments on commit ddc6745

Please sign in to comment.