Added potions and brewing recipes. Enhanced potion diversity with new effects.

This commit is contained in:
IM23a-spirgif
2025-06-01 13:34:01 +02:00
parent b74248a880
commit 722003a564
6 changed files with 68 additions and 4 deletions
@@ -3,10 +3,12 @@ package net.krituximon.stalinium;
import net.krituximon.stalinium.block.ModBlocks;
import net.krituximon.stalinium.block.entity.ModBlockEntities;
import net.krituximon.stalinium.effect.ModEffects;
import net.krituximon.stalinium.event.ModEvents;
import net.krituximon.stalinium.item.ModCreativeModeTabs;
import net.krituximon.stalinium.item.ModItems;
import net.krituximon.stalinium.particle.BloodParticle;
import net.krituximon.stalinium.particle.ModParticles;
import net.krituximon.stalinium.potion.ModPotions;
import net.krituximon.stalinium.recipe.ModRecipes;
import net.krituximon.stalinium.screen.ModMenuTypes;
import net.krituximon.stalinium.screen.custom.StaliniumPressScreen;
@@ -74,6 +76,7 @@ public class Stalinium
ModBlockEntities.register(modEventBus);
ModMenuTypes.register(modEventBus);
ModEffects.register(modEventBus);
ModPotions.register(modEventBus);
}
private void commonSetup(final FMLCommonSetupEvent event)
@@ -13,13 +13,13 @@ public class StaliniumChargeEffect extends MobEffect {
this.addAttributeModifier(
Attributes.MOVEMENT_SPEED,
ResourceLocation.fromNamespaceAndPath(Stalinium.MODID, "stalinium_charge_speed"),
0.2,
0.15,
AttributeModifier.Operation.ADD_MULTIPLIED_BASE
);
this.addAttributeModifier(
Attributes.KNOCKBACK_RESISTANCE,
ResourceLocation.fromNamespaceAndPath(Stalinium.MODID, "stalinium_charge_knockback"),
0.65,
0.35,
AttributeModifier.Operation.ADD_VALUE
);
this.addAttributeModifier(
@@ -28,5 +28,11 @@ public class StaliniumChargeEffect extends MobEffect {
0.1,
AttributeModifier.Operation.ADD_MULTIPLIED_BASE
);
this.addAttributeModifier(
Attributes.ATTACK_DAMAGE,
ResourceLocation.fromNamespaceAndPath(Stalinium.MODID, "stalinium_charge_damage"),
0.1,
AttributeModifier.Operation.ADD_MULTIPLIED_BASE
);
}
}
@@ -0,0 +1,21 @@
package net.krituximon.stalinium.event;
import net.krituximon.stalinium.Stalinium;
import net.krituximon.stalinium.item.ModItems;
import net.krituximon.stalinium.potion.ModPotions;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.alchemy.PotionBrewing;
import net.minecraft.world.item.alchemy.Potions;
import net.neoforged.bus.api.SubscribeEvent;
import net.neoforged.fml.common.EventBusSubscriber;
import net.neoforged.neoforge.event.brewing.RegisterBrewingRecipesEvent;
@EventBusSubscriber(modid = Stalinium.MODID, bus = EventBusSubscriber.Bus.GAME)
public class ModEvents {
@SubscribeEvent
public static void onBrewingRecipeRegister(RegisterBrewingRecipesEvent event) {
PotionBrewing.Builder builder = event.getBuilder();
builder.addMix(Potions.AWKWARD, Items.POTATO, ModPotions.VODKA);
builder.addMix(ModPotions.VODKA, ModItems.STALINIUM_INGOT.get(), ModPotions.WEAPONS_GRADE_VODKA);
}
}
@@ -0,0 +1,26 @@
package net.krituximon.stalinium.potion;
import net.krituximon.stalinium.Stalinium;
import net.krituximon.stalinium.effect.ModEffects;
import net.minecraft.core.Holder;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.world.effect.MobEffectInstance;
import net.minecraft.world.effect.MobEffects;
import net.minecraft.world.item.alchemy.Potion;
import net.neoforged.bus.api.IEventBus;
import net.neoforged.neoforge.registries.DeferredRegister;
public class ModPotions {
public static final DeferredRegister<Potion> POTIONS =
DeferredRegister.create(BuiltInRegistries.POTION, Stalinium.MODID);
public static final Holder<Potion> VODKA = POTIONS.register("vodka",
() -> new Potion(new MobEffectInstance(MobEffects.CONFUSION, 1200, 0)));
public static final Holder<Potion> WEAPONS_GRADE_VODKA = POTIONS.register("weapons_grade_vodka",
() -> new Potion(new MobEffectInstance(ModEffects.STALINIUM_CHARGE, 1200, 2)));
public static void register(IEventBus eventBus) {
POTIONS.register(eventBus);
}
}