Skip to content

Commit

Permalink
awawawawa
Browse files Browse the repository at this point in the history
  • Loading branch information
SammySemicolon committed Feb 3, 2024
1 parent 06a97b3 commit b02402f
Show file tree
Hide file tree
Showing 33 changed files with 343 additions and 65 deletions.
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,6 @@ modAuthors=Sammy Semicolon
# The description of the mod. This is a simple multiline text string that is used for display purposes in the mod list.
modDescription=A dark magic mod focused on soul and spirit magic.
# Mod Dependency Versions
lodestoneVersion=1.4.2.61
lodestoneVersion=1.4.2.62
jeiVersion=15.2.0.22
curiosVersion=5.4.0+1.20.1
2 changes: 2 additions & 0 deletions src/generated/resources/assets/malum/lang/en_us.json
Original file line number Diff line number Diff line change
Expand Up @@ -366,6 +366,7 @@
"item.malum.lead_node": "Lead Node",
"item.malum.lesbian_prideweave": "Lesbian Prideweave",
"item.malum.living_flesh": "Living Flesh",
"item.malum.malignant_lead": "Malignant Lead",
"item.malum.mechanical_weave_v1": "Mechanical Weave V1",
"item.malum.mechanical_weave_v2": "Mechanical Weave V2",
"item.malum.mending_diffuser": "Mending Diffuser",
Expand Down Expand Up @@ -451,6 +452,7 @@
"item.malum.void_salts": "Void Salts",
"item.malum.warp_flux": "Warp Flux",
"item.malum.warping_engine": "Warping Engine",
"item.malum.weight_of_worlds": "Weight of Worlds",
"item.malum.wicked_spirit": "Wicked Spirit",
"item.malum.zinc_impetus": "Zinc Impetus",
"item.malum.zinc_node": "Zinc Node",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "malum:item/malignant_lead"
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@
]
}
],
"name": "minecraft:air"
"name": "malum:calcified_blight"
},
{
"type": "minecraft:item",
Expand All @@ -46,7 +46,7 @@
"condition": "minecraft:survives_explosion"
}
],
"name": "minecraft:air"
"name": "malum:calcified_blight"
}
]
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,20 +3,20 @@
"extra_items": [
{
"count": 1,
"item": "malum:ether"
"item": "minecraft:tnt"
},
{
"count": 4,
"tag": "forge:gunpowder"
},
{
"count": 2,
"item": "malum:cursed_grit"
"item": "minecraft:blaze_powder"
}
],
"input": {
"count": 1,
"item": "minecraft:tnt"
"item": "malum:ether"
},
"output": {
"count": 4,
Expand All @@ -27,6 +27,10 @@
"type": "infernal",
"count": 8
},
{
"type": "aerial",
"count": 8
},
{
"type": "arcane",
"count": 8
Expand Down
Original file line number Diff line number Diff line change
@@ -1,47 +1,46 @@
{
"type": "malum:spirit_infusion",
"extra_items": [
{
"count": 4,
"item": "malum:cursed_grit"
},
{
"count": 4,
"tag": "forge:gunpowder"
},
{
"count": 2,
"tag": "forge:gems/prismarine"
},
{
"count": 2,
"item": "malum:arcane_charcoal"
}
],
"input": {
"count": 8,
"count": 4,
"item": "malum:etheric_nitrate"
},
"output": {
"count": 8,
"count": 4,
"item": "malum:vivid_nitrate"
},
"spirits": [
{
"type": "aerial",
"count": 8
"count": 4
},
{
"type": "aqueous",
"count": 8
"count": 4
},
{
"type": "infernal",
"count": 8
"count": 4
},
{
"type": "earthen",
"count": 8
"count": 4
},
{
"type": "eldritch",
"count": 2
"type": "eldritch"
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"type": "malum:favor_of_the_void",
"input": {
"item": "malum:cthonic_gold"
},
"output": {
"item": "malum:malignant_lead"
}
}
1 change: 0 additions & 1 deletion src/main/java/com/sammy/malum/client/BufferWrapper.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import com.mojang.blaze3d.vertex.*;
import net.minecraft.client.renderer.*;
import team.lodestar.lodestone.systems.rendering.rendeertype.*;

import java.util.function.*;

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,138 @@
package com.sammy.malum.client.model;
// Made with Blockbench 3.9.2
// Exported for Minecraft version 1.15 - 1.16 with MCP mappings
// Paste this class into your mod and generate all required imports


import com.mojang.blaze3d.vertex.*;
import com.sammy.malum.*;
import com.sammy.malum.registry.client.*;
import net.minecraft.client.*;
import net.minecraft.client.model.*;
import net.minecraft.client.model.geom.*;
import net.minecraft.client.model.geom.builders.*;
import net.minecraft.resources.*;
import net.minecraft.world.entity.*;
import team.lodestar.lodestone.handlers.*;
import team.lodestar.lodestone.helpers.*;
import team.lodestar.lodestone.registry.client.*;
import team.lodestar.lodestone.systems.model.*;

public class MalignantLeadArmorModel extends LodestoneArmorModel {
public static ModelLayerLocation LAYER = new ModelLayerLocation(MalumMod.malumPath("malignant_lead_armor"), "main");

private final ModelPart right_arm_glow;
private final ModelPart left_arm_glow;

public MalignantLeadArmorModel(ModelPart root) {
super(root);
this.right_arm_glow = root.getChild("right_arm_glow");
this.left_arm_glow = root.getChild("left_arm_glow");
}

@Override
public void renderToBuffer(PoseStack pPoseStack, VertexConsumer pBuffer, int pPackedLight, int pPackedOverlay, float pRed, float pGreen, float pBlue, float pAlpha) {
super.renderToBuffer(pPoseStack, pBuffer, pPackedLight, pPackedOverlay, pRed, pGreen, pBlue, pAlpha);
if (!this.young) {
if (slot == EquipmentSlot.CHEST) {
pPoseStack.pushPose();
final ResourceLocation texture = MalumMod.malumPath("textures/armor/malignant_stronghold.png");
final VertexConsumer additive = RenderHandler.DELAYED_RENDER.getBuffer(RenderTypeRegistry.MALIGNANT_GLOW.applyAndCache(texture));
final VertexConsumer transparent = RenderHandler.DELAYED_RENDER.getBuffer(LodestoneRenderTypeRegistry.TRANSPARENT_TEXTURE.applyAndCache(texture));

right_arm_glow.render(pPoseStack, transparent, RenderHelper.FULL_BRIGHT, pPackedOverlay, pRed, pGreen, pBlue, 0.25f);
left_arm_glow.render(pPoseStack, transparent, RenderHelper.FULL_BRIGHT, pPackedOverlay, pRed, pGreen, pBlue, 0.25f);

float gameTime = Minecraft.getInstance().level.getGameTime()+Minecraft.getInstance().getPartialTick();
int time = 160;
float distance = 0.01f;
float alpha = 0.15f;
for (int i = 0; i < 4; i++) {
double angle = i / 4f * (Math.PI * 2);
angle += ((gameTime % time) / time) * (Math.PI * 2);
double xOffset = (distance * Math.cos(angle));
double zOffset = (distance * Math.sin(angle));
pPoseStack.translate(xOffset, zOffset / 2f, zOffset);
right_arm_glow.render(pPoseStack, additive, RenderHelper.FULL_BRIGHT, pPackedOverlay, pRed, pGreen, pBlue, alpha);
left_arm_glow.render(pPoseStack, additive, RenderHelper.FULL_BRIGHT, pPackedOverlay, pRed, pGreen, pBlue, alpha);
pPoseStack.translate(-xOffset, -zOffset/2f, -zOffset);
distance+=0.0125f;
}
pPoseStack.popPose();
}
}
}


@Override
public void copyFromDefault(HumanoidModel model) {
super.copyFromDefault(model);
right_arm_glow.copyFrom(model.rightArm);
left_arm_glow.copyFrom(model.leftArm);
}


public static LayerDefinition createBodyLayer() {
MeshDefinition mesh = HumanoidModel.createMesh(new CubeDeformation(0), 0);
PartDefinition root = createHumanoidAlias(mesh);
PartDefinition right_arm_glow = root.addOrReplaceChild("right_arm_glow", new CubeListBuilder(), PartPose.ZERO);
PartDefinition left_arm_glow = root.addOrReplaceChild("left_arm_glow", new CubeListBuilder(), PartPose.ZERO);

PartDefinition body = root.getChild("body");
PartDefinition torso = body.addOrReplaceChild("torso", CubeListBuilder.create().texOffs(6, 37).addBox(-5.0F, 2.0F, -3.0F, 10.0F, 5.0F, 6.0F, new CubeDeformation(0.0F))
.texOffs(6, 49).addBox(-4.5F, 6.5F, -2.5F, 9.0F, 4.0F, 5.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 0.0F, 0.0F));
PartDefinition thing = torso.addOrReplaceChild("thing", CubeListBuilder.create().texOffs(60, 40).addBox(-6.0F, -1.0F, -5.0F, 12.0F, 4.0F, 9.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, 0.0F, 0.0F, 0.2618F, 0.0F, 0.0F));

PartDefinition leggings = root.getChild("leggings");
PartDefinition codpiece = leggings.addOrReplaceChild("codpiece", CubeListBuilder.create().texOffs(6, 61).addBox(-4.0F, -14.5F, -3.0F, 8.0F, 2.0F, 6.0F, new CubeDeformation(0.01F))
.texOffs(42, 58).addBox(-2.0F, -12.5F, -3.0F, 4.0F, 3.0F, 6.0F, new CubeDeformation(0.01F)), PartPose.offset(0.0F, 24.0F, 0.0F));

PartDefinition right_legging = root.getChild("right_legging");
PartDefinition right_leg = right_legging.addOrReplaceChild("right_leg", CubeListBuilder.create().texOffs(53, 88).addBox(-2.5F, -0.5F, -2.5F, 5.0F, 7.0F, 5.0F, new CubeDeformation(0.0F)), PartPose.offset(-2.0F, 12.0F, 0.0F));
PartDefinition right_thigh_guard = right_leg.addOrReplaceChild("right_thigh_guard", CubeListBuilder.create().texOffs(19, 108).addBox(-4.0F, -2.0F, -3.0F, 3.0F, 6.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(0.0F, 2.0F, 0.0F, 0.0F, 0.0F, 1.1345F));
PartDefinition right_thigh_guard2 = right_leg.addOrReplaceChild("right_thigh_guard2", CubeListBuilder.create().texOffs(40, 109).addBox(-3.0F, -3.0F, -3.0F, 3.0F, 7.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offsetAndRotation(-1.0F, 4.0F, 0.0F, 0.0F, 0.0F, 1.1345F));

PartDefinition right_foot = root.getChild("right_foot");
PartDefinition right_boot = right_foot.addOrReplaceChild("right_boot", CubeListBuilder.create().texOffs(63, 107).mirror().addBox(-3.0F, 6.0F, -3.0F, 6.0F, 7.0F, 6.0F, new CubeDeformation(0.0F)).mirror(false), PartPose.offset(0.0F, 0.0F, 0.0F));

PartDefinition right_arm = root.getChild("right_arm");
PartDefinition right_shoulder = right_arm.addOrReplaceChild("right_shoulder", CubeListBuilder.create().texOffs(36, 75).mirror().addBox(-7.0F, -4.0F, -3.0F, 5.0F, 5.0F, 6.0F, new CubeDeformation(0.01F)).mirror(false)
.texOffs(7, 88).mirror().addBox(-5.5F, 5.0F, -3.0F, 5.0F, 6.0F, 6.0F, new CubeDeformation(0.02F)).mirror(false), PartPose.offset(-3.0F, 2.0F, 0.0F));
PartDefinition right_shoulder_pad = right_shoulder.addOrReplaceChild("right_shoulder_pad", CubeListBuilder.create().texOffs(4, 73).mirror().addBox(-8.0F, 0.0F, -4.0F, 6.0F, 3.0F, 8.0F, new CubeDeformation(0.01F)).mirror(false), PartPose.offsetAndRotation(0.0F, -1.5F, 0.0F, 0.0F, 0.0F, -0.2182F));

PartDefinition glow_right_arm = right_arm_glow.addOrReplaceChild("glow_right_arm", CubeListBuilder.create().texOffs(100, 88).mirror().addBox(-9.0F, -6.0F, -1.0F, 3.0F, 8.0F, 2.0F, new CubeDeformation(0.01F)).mirror(false)
.texOffs(89, 88).mirror().addBox(-9.0F, -6.0F, -1.0F, 3.0F, 8.0F, 2.0F, new CubeDeformation(0.26F)).mirror(false), PartPose.offsetAndRotation(0.0F, 1.0F, 0.0F, 0.0F, 0.0F, 0.1309F));
PartDefinition lower_glow_right_arm = right_arm_glow.addOrReplaceChild("lower_glow_right_arm", CubeListBuilder.create().texOffs(89, 77).mirror().addBox(-6.5F, 4.0F, -1.0F, 3.0F, 5.0F, 2.0F, new CubeDeformation(0.27F)).mirror(false)
.texOffs(100, 77).mirror().addBox(-6.5F, 4.0F, -1.0F, 3.0F, 5.0F, 2.0F, new CubeDeformation(0.02F)).mirror(false), PartPose.offset(0.0F, 0.0F, 0.0F));

PartDefinition left_legging = root.getChild("left_legging");
PartDefinition left_leg = left_legging.addOrReplaceChild("left_leg", CubeListBuilder.create().texOffs(53, 88).mirror().addBox(-2.5F, -0.5F, -2.5F, 5.0F, 7.0F, 5.0F, new CubeDeformation(0.0F)).mirror(false), PartPose.offset(2.0F, 12.0F, 0.0F));
PartDefinition thigh_guard_l = left_leg.addOrReplaceChild("left_thigh_guard1", CubeListBuilder.create().texOffs(19, 108).mirror().addBox(1.0F, -2.0F, -3.0F, 3.0F, 6.0F, 6.0F, new CubeDeformation(0.0F)).mirror(false), PartPose.offsetAndRotation(0.0F, 2.0F, 0.0F, 0.0F, 0.0F, -1.1345F));
PartDefinition thigh_guard_l2 = left_leg.addOrReplaceChild("left_thigh_guard2", CubeListBuilder.create().texOffs(40, 109).mirror().addBox(0.0F, -3.0F, -3.0F, 3.0F, 7.0F, 6.0F, new CubeDeformation(0.0F)).mirror(false), PartPose.offsetAndRotation(1.0F, 4.0F, 0.0F, 0.0F, 0.0F, -1.1345F));

PartDefinition left_foot = root.getChild("left_foot");
PartDefinition left_boot = left_foot.addOrReplaceChild("left_boot", CubeListBuilder.create().texOffs(63, 107).addBox(-3.0F, 6.0F, -3.0F, 6.0F, 7.0F, 6.0F, new CubeDeformation(0.01F)), PartPose.offset(0.0F, 0.0F, 0.0F));

PartDefinition left_arm = root.getChild("left_arm");
PartDefinition left_shoulder = left_arm.addOrReplaceChild("left_shoulder", CubeListBuilder.create().texOffs(36, 75).addBox(2.0F, -4.0F, -3.0F, 5.0F, 5.0F, 6.0F, new CubeDeformation(0.01F))
.texOffs(7, 88).addBox(0.5F, 5.0F, -3.0F, 5.0F, 6.0F, 6.0F, new CubeDeformation(0.02F)), PartPose.offset(3.0F, 2.0F, 0.0F));
PartDefinition left_shoulder_pad = left_shoulder.addOrReplaceChild("left_shoulder_pad", CubeListBuilder.create().texOffs(4, 73).addBox(2.0F, -1.0F, -4.0F, 6.0F, 3.0F, 8.0F, new CubeDeformation(0.01F)), PartPose.offsetAndRotation(0.0F, -0.5F, 0.0F, 0.0F, 0.0F, 0.2182F));

PartDefinition glow_left_arm = left_arm_glow.addOrReplaceChild("glow_left_arm", CubeListBuilder.create().texOffs(100, 88).addBox(6.0F, -5.0F, -1.0F, 3.0F, 8.0F, 2.0F, new CubeDeformation(0.01F))
.texOffs(89, 88).addBox(6.0F, -5.0F, -1.0F, 3.0F, 8.0F, 2.0F, new CubeDeformation(0.26F)), PartPose.offsetAndRotation(0.0F, 0.0F, 0.0F, 0.0F, 0.0F, -0.1309F));
PartDefinition lower_glow_left_arm = left_arm_glow.addOrReplaceChild("lower_glow_left_arm", CubeListBuilder.create().texOffs(100, 77).addBox(3.5F, 4.0F, -1.0F, 3.0F, 5.0F, 2.0F, new CubeDeformation(0.02F))
.texOffs(89, 77).addBox(3.5F, 4.0F, -1.0F, 3.0F, 5.0F, 2.0F, new CubeDeformation(0.27F)), PartPose.offset(0.0F, 0.0F, 0.0F));

PartDefinition head = root.getChild("head");
PartDefinition helmet = head.addOrReplaceChild("helmet", CubeListBuilder.create().texOffs(59, 3).addBox(-4.5F, -9.0F, -5.0F, 3.0F, 4.0F, 10.0F, new CubeDeformation(0.0F))
.texOffs(8, 0).addBox(-4.5F, -5.0F, 1.0F, 9.0F, 4.0F, 4.0F, new CubeDeformation(0.0F))
.texOffs(59, 3).mirror().addBox(1.5F, -9.0F, -5.0F, 3.0F, 4.0F, 10.0F, new CubeDeformation(0.0F)).mirror(false)
.texOffs(0, 16).addBox(-1.5F, -11.0F, -6.0F, 3.0F, 7.0F, 12.0F, new CubeDeformation(0.0F))
.texOffs(40, 25).addBox(-5.5F, -12.0F, -3.0F, 2.0F, 7.0F, 9.0F, new CubeDeformation(0.0F))
.texOffs(40, 25).addBox(3.5F, -12.0F, -3.0F, 2.0F, 7.0F, 9.0F, new CubeDeformation(0.0F))
.texOffs(40, 16).addBox(-5.0F, -5.0F, -5.0F, 3.0F, 4.0F, 4.0F, new CubeDeformation(0.0F))
.texOffs(40, 16).mirror().addBox(2.0F, -5.0F, -5.0F, 3.0F, 4.0F, 4.0F, new CubeDeformation(0.0F)).mirror(false), PartPose.offset(0.0F, 0.0F, 0.0F));

return LayerDefinition.create(mesh, 128, 128);
}
}

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,11 @@ public static void setupEntries() {
.setWidgetConfig(w -> w.setIcon(MNEMONIC_FRAGMENT).setStyle(BookWidgetStyle.SOULWOOD))
.addPage(new HeadlineTextItemPage("void.mnemonic_fragment", "void.mnemonic_fragment.1", MNEMONIC_FRAGMENT.get()))
);
VOID_ENTRIES.add(new BookEntry<>(
"void.malignant_lead", 3, 3)
.setWidgetConfig(w -> w.setIcon(MALIGNANT_LEAD).setStyle(BookWidgetStyle.SOULWOOD))
.addPage(new HeadlineTextItemPage("void.malignant_lead", "void.malignant_lead.1", MALIGNANT_LEAD.get()))
);

VOID_ENTRIES.add(new BookEntry<>(
"void.ring_of_growing_flesh", -3, 5)
Expand Down Expand Up @@ -141,8 +146,8 @@ public static void setupEntries() {
.addPage(SpiritInfusionPage.fromOutput(RING_OF_THE_PLENTIFUL.get()))
);
VOID_ENTRIES.add(new BookEntry<>(
"void.something2", 4, 6)
.setWidgetConfig(w -> w.setIcon(BARRIER).setStyle(BookWidgetStyle.SOULWOOD))
"void.weight_of_worlds", 4, 6)
.setWidgetConfig(w -> w.setIcon(WEIGHT_OF_WORLDS).setStyle(BookWidgetStyle.SOULWOOD))
);
VOID_ENTRIES.add(new BookEntry<>(
"void.something3", 2, 6)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,4 +35,8 @@ public String getArmorTexture(ItemStack stack, Entity entity, EquipmentSlot slot
}
return super.getArmorTexture(stack, entity, slot, type);
}
@Override
public String getTextureLocation() {
return "malum:textures/armor/";
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,8 @@ public ImmutableMultimap.Builder<Attribute, AttributeModifier> createExtraAttrib
return builder;
}

@Override
public String getTextureLocation() {
return "malum:textures/armor/";
}

public String getTexture() {
return "soul_stained_steel_reforged";
return "malignant_stronghold";
}

@OnlyIn(Dist.CLIENT)
Expand All @@ -58,7 +53,7 @@ public LodestoneArmorModel getHumanoidArmorModel(LivingEntity entity, ItemStack
float netHeadYaw = f1 - f;
float netHeadPitch = Mth.lerp(pticks, entity.xRotO, entity.getXRot());
ArmorSkin skin = ArmorSkin.getAppliedItemSkin(itemStack);
LodestoneArmorModel model = ModelRegistry.SOUL_STAINED_ARMOR;
LodestoneArmorModel model = ModelRegistry.MALIGNANT_LEAD_ARMOR;
if (skin != null) {
model = ArmorSkinRenderingData.RENDERING_DATA.apply(skin).getModel(entity);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
package com.sammy.malum.common.item.curiosities.weapons;

import net.minecraft.world.item.*;
import team.lodestar.lodestone.systems.item.tools.*;

public class WeightOfWorldsItem extends LodestoneAxeItem {
public WeightOfWorldsItem(Tier material, int attackDamage, float attackSpeed, Properties properties) {
super(material, attackDamage, attackSpeed, properties);
}
}
2 changes: 2 additions & 0 deletions src/main/java/com/sammy/malum/data/item/MalumItemModels.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
import com.sammy.malum.MalumMod;
import com.sammy.malum.common.item.cosmetic.weaves.AbstractWeaveItem;
import com.sammy.malum.common.item.cosmetic.weaves.PrideweaveItem;
import com.sammy.malum.common.item.curiosities.weapons.*;
import com.sammy.malum.common.item.curiosities.weapons.scythe.MalumScytheItem;
import com.sammy.malum.common.item.curiosities.weapons.staff.*;
import com.sammy.malum.common.item.impetus.CrackedImpetusItem;
Expand Down Expand Up @@ -40,6 +41,7 @@ protected void registerModels() {

items.removeIf(i -> i.get() instanceof BlockItem);
items.removeIf(i -> i.get() instanceof MalumScytheItem);
items.removeIf(i -> i.get() instanceof WeightOfWorldsItem);

AbstractItemModelSmith.ItemModelSmithData data = new AbstractItemModelSmith.ItemModelSmithData(this, items::remove);

Expand Down
Loading

0 comments on commit b02402f

Please sign in to comment.