Added Stalinium Pickaxe with full functionality, including model, recipe, localization, and creative tab entry. Adjusted attack speed modifier for Stalinium Charge Effect for better balance.

This commit is contained in:
IM23a-spirgif
2025-05-27 10:50:24 +02:00
parent 73f54feca1
commit bb7a36717f
7 changed files with 52 additions and 2 deletions
@@ -20,5 +20,6 @@ public class ModItemModelProvider extends ItemModelProvider {
handheldItem(ModItems.STALINIUM_AXE.get());
handheldItem(ModItems.STALINIUM_SHOVEL.get());
handheldItem(ModItems.STALINIUM_HOE.get());
handheldItem(ModItems.STALINIUM_PICKAXE.get());
}
}
@@ -68,5 +68,21 @@ public class ModRecipeProvider extends RecipeProvider implements IConditionBuild
.define('I', ModItems.STALINIUM_INGOT.get())
.define('G', Items.GOLD_BLOCK)
.unlockedBy("has_ingot", has(ModItems.STALINIUM_INGOT)).save(recipeOutput);
ShapedRecipeBuilder.shaped(RecipeCategory.MISC, ModItems.STALINIUM_HOE.get())
.pattern("II")
.pattern(" G")
.pattern(" G")
.define('I', ModItems.STALINIUM_INGOT.get())
.define('G', Items.GOLD_BLOCK)
.unlockedBy("has_ingot", has(ModItems.STALINIUM_INGOT)).save(recipeOutput);
ShapedRecipeBuilder.shaped(RecipeCategory.MISC, ModItems.STALINIUM_PICKAXE.get())
.pattern("III")
.pattern(" G ")
.pattern(" G ")
.define('I', ModItems.STALINIUM_INGOT.get())
.define('G', Items.GOLD_BLOCK)
.unlockedBy("has_ingot", has(ModItems.STALINIUM_INGOT)).save(recipeOutput);
}
}
@@ -25,7 +25,7 @@ public class StaliniumChargeEffect extends MobEffect {
this.addAttributeModifier(
Attributes.ATTACK_SPEED,
ResourceLocation.fromNamespaceAndPath(Stalinium.MODID, "stalinium_charge_toughness"),
0.15,
0.1,
AttributeModifier.Operation.ADD_MULTIPLIED_BASE
);
}
@@ -30,6 +30,7 @@ public class ModCreativeModeTabs {
output.accept(ModItems.STALINIUM_AXE.get());
output.accept(ModItems.STALINIUM_SHOVEL.get());
output.accept(ModItems.STALINIUM_HOE.get());
output.accept(ModItems.STALINIUM_PICKAXE.get());
}).build());
public static void register(IEventBus eventBus) {
@@ -36,6 +36,9 @@ public class ModItems {
() -> new StaliniumHoeItem(ModTiers.STALINIUM, new Item.Properties()
.attributes(HoeItem.createAttributes(ModTiers.STALINIUM, 1.0f, -3.0f))));
public static final DeferredItem<PickaxeItem> STALINIUM_PICKAXE = ITEMS.register("stalinium_pickaxe",
() -> new StaliniumPickaxeItem(ModTiers.STALINIUM, new Item.Properties()
.attributes(PickaxeItem.createAttributes(ModTiers.STALINIUM, 1.0f, -2.8f))));
public static void register(IEventBus eventBus) {
ITEMS.register(eventBus);
}
@@ -0,0 +1,26 @@
package net.krituximon.stalinium.item;
import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.item.*;
public class StaliniumPickaxeItem extends PickaxeItem {
public StaliniumPickaxeItem(Tier tier, Item.Properties properties) {
super(tier, properties);
}
@Override
public boolean hurtEnemy(ItemStack stack, LivingEntity target, LivingEntity attacker) {
return true;
}
@Override
public boolean isDamageable(ItemStack stack) {
return false;
}
@Override
public boolean isDamaged(ItemStack stack) {
return false;
}
}