Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ minecraft_version=1.21.1
# as they do not follow standard versioning conventions.
minecraft_version_range=[1.21.1, 1.22)
# The Neo version must agree with the Minecraft version to get a valid artifact
neo_version=21.1.179
mdg_version=2.0.93
neo_version=21.1.213
mdg_version=2.0.115
# The Neo version range can use any version of Neo as bounds
neo_version_range=[21.1.0,)
# The loader version range can only use the major version of FML as bounds
Expand Down
7 changes: 5 additions & 2 deletions notes.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,8 @@ Altar
- datapackable structure, by default looking at tags (bloodmagic:altar/runes, bloodmagic:altar/tN_capstones, bloodmagic:altar/pillars) with the pillars tag being special in that when its empty it just requires solid blocks
- should be working exactly like the old one from user perspective
- the blocks to enable redstone pulse on crafting and reading the soul network instead of the altar fill level are based on the block tags bloodmagic:altar/pulse_on_crafting and bloodmagic:altar/soul_network_comparator
- now has its 2 in/out put tanks visible for jade
- now has its 2 in/out put tanks visible for jade (as well as the main tank)
- there is a 5 second grace period when swapping altar structure before the tanks get capped at current max capacity instead of it happening immediately

Blood Tank
- stores any fluid (emits the same light level the inserted fluid does)
Expand Down Expand Up @@ -51,4 +52,6 @@ Tartaric gems
Training Bracelet
- will allow at most the minimum exp required for the selected level for each of the set tomes
- in deny others mode all "unknown" upgrades (the ones not set) will return the limit of 0 meaning nothing else can be trained
- in allow others mode all "unknown" upgrades will return the limit of -1 signifying that there is no limit set and can be trained as normal
- in allow others mode all "unknown" upgrades will return the limit of -1 signifying that there is no limit set and can be trained as normal

Transfer Nodes
2 changes: 1 addition & 1 deletion src/datagen/java/wayoftime/bloodmagic/Datagen.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
import wayoftime.bloodmagic.datagen.content.LivingUpgrades;
import wayoftime.bloodmagic.datagen.provider.*;

@EventBusSubscriber(bus = EventBusSubscriber.Bus.MOD)
@EventBusSubscriber
public class Datagen {

@SubscribeEvent
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,16 @@
import net.minecraft.core.Direction;
import net.minecraft.data.PackOutput;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.level.block.Block;
import net.neoforged.neoforge.client.model.generators.BlockStateProvider;
import net.neoforged.neoforge.client.model.generators.ModelFile;
import net.neoforged.neoforge.client.model.generators.MultiPartBlockStateBuilder;
import net.neoforged.neoforge.client.model.generators.VariantBlockStateBuilder;
import net.neoforged.neoforge.common.data.ExistingFileHelper;
import wayoftime.bloodmagic.BloodMagic;
import wayoftime.bloodmagic.common.block.ARCBlock;
import wayoftime.bloodmagic.common.block.BMBlocks;
import wayoftime.bloodmagic.common.block.RoutingNodeBlock;
import wayoftime.bloodmagic.common.datacomponent.EnumWillType;

public class BMBlockstateProvider extends BlockStateProvider {
Expand All @@ -23,6 +26,31 @@ protected void registerStatesAndModels() {
simpleBlockWithItem(block.get(), cubeAll(block.get()));
});

buildArc();

buildRoutingNode(BMBlocks.ROUTING_NODE.block().get(), "");
buildRoutingNode(BMBlocks.MASTER_NODE.block().get(), "_master");
buildRoutingNode(BMBlocks.INPUT_ROUTING_NODE.block().get(), "_input");
buildRoutingNode(BMBlocks.OUTPUT_ROUTING_NODE.block().get(), "_output");
}

private void buildRoutingNode(Block node, String type) {
MultiPartBlockStateBuilder builder = getMultipartBuilder(node);

ModelFile base = models().getExistingFile(bm("block/routing_node_base" + type));
ModelFile core = models().getExistingFile(bm("block/routing_node_core" + type));

builder.part().modelFile(core).addModel().end();

builder.part().modelFile(base).addModel().condition(RoutingNodeBlock.DOWN, true).end();
builder.part().modelFile(base).rotationX(180).addModel().condition(RoutingNodeBlock.UP, true).end();
builder.part().modelFile(base).rotationX(270).addModel().condition(RoutingNodeBlock.NORTH, true).end();
builder.part().modelFile(base).rotationX(90).addModel().condition(RoutingNodeBlock.SOUTH, true).end();
builder.part().modelFile(base).rotationY(90).rotationX(90).addModel().condition(RoutingNodeBlock.WEST, true).end();
builder.part().modelFile(base).rotationY(90).rotationX(270).addModel().condition(RoutingNodeBlock.EAST, true).end();
}

private void buildArc() {
VariantBlockStateBuilder builder = getVariantBuilder(BMBlocks.ARC_BLOCK.block().get());
String bottom = "block/arc_bottom";
String lit = "_lit";
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
import net.minecraft.world.level.block.Block;
import net.neoforged.neoforge.common.data.ExistingFileHelper;
import wayoftime.bloodmagic.BloodMagic;
import wayoftime.bloodmagic.common.block.BMBlocks;
import wayoftime.bloodmagic.common.item.BMItems;
import wayoftime.bloodmagic.common.tag.BMTags;

Expand Down Expand Up @@ -48,5 +49,28 @@ protected void addTags(HolderLookup.Provider provider) {
.addTag(BMTags.Items.CUTTING_FLUIDS)
.addTag(BMTags.Items.HYDRATION)
.addTag(BMTags.Items.ARC_FURNACE);

tag(BMTags.Items.SOUL_GEM)
.add(BMItems.SOUL_GEM_PETTY.get())
.add(BMItems.SOUL_GEM_LESSER.get())
.add(BMItems.SOUL_GEM_COMMON.get())
.add(BMItems.SOUL_GEM_GREATER.get())
.add(BMItems.SOUL_GEM_GRAND.get());

tag(BMTags.Items.NODE_DEBUGGER)
.add(BMItems.NODE_ROUTER.get())
.add(BMBlocks.MASTER_NODE.asItem(), BMBlocks.ROUTING_NODE.asItem(), BMBlocks.INPUT_ROUTING_NODE.asItem(), BMBlocks.OUTPUT_ROUTING_NODE.asItem())
.addTag(BMTags.Items.SOUL_GEM);

tag(BMTags.Items.TAG_FILTER)
.add(BMItems.TAG_FILTER.get());

tag(BMTags.Items.ENCHANT_FILTER)
.add(BMItems.ENCHANT_FILTER.get());

tag(BMTags.Items.FILTERS)
.addTag(BMTags.Items.TAG_FILTER)
.addTag(BMTags.Items.ENCHANT_FILTER)
.add(BMItems.STANDARD_FILTER.get(), BMItems.MOD_FILTER.get(), BMItems.COMPOSITE_FILTER.get());
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,30 @@ protected void addTranslations() {
add("chat.bloodmagic.living_upgrade.level_up", "%s has levelled up to %s!");

LivingUpgrades.translations(this::add);

addTooltip("stored_position", "Stored: %s in %s");

add(BMBlocks.ROUTING_NODE, "Routing Node");
add(BMBlocks.MASTER_NODE, "Master Routing Node");
add(BMBlocks.INPUT_ROUTING_NODE, "Input Routing Node");
add(BMBlocks.OUTPUT_ROUTING_NODE, "Output Routing Node");
add(BMItems.NODE_ROUTER.get(), "Node Router");

add(BMItems.NODE_AMOUNT_UPGRADE.get(), "Basic Routing Logic Upgrade");
add(BMItems.NODE_SPEED_UPGRADE.get(), "Basic Routing Speed Upgrade");

add("gui.bloodmagic.node.master", "Master Routing Node");
add("gui.bloodmagic.node.input", "Input Routing Node");
add("gui.bloodmagic.node.output", "Output Routing Node");

addTooltip("router.connected", "Successfully connected nodes!");
addTooltip("router.pos_cleared", "Cleared stored position!");
addTooltip("router.pos_set", "Stored %s!");

addTooltip("router.master_child", "Cannot add Master as a child node!");
addTooltip("router.no_node", "Block at %s is not a Routing Node!");
addTooltip("router.distance", "Nodes are too far apart, max 16 blocks");
addTooltip("router.same", "Cannot link node to itself!");
}

public void addCommand(String key, String value) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,6 @@ public <T> GatherDataEvent.DataProviderFromOutputLookup<TagsProvider<T>> tagsFor
protected void addTags(HolderLookup.Provider provider) {
adder.accept(this::tag);
}

};
}
}

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "bloodmagic:block/hellforged_block_default"
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
{
"multipart": [
{
"apply": {
"model": "bloodmagic:block/routing_node_core"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base"
},
"when": {
"down": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base",
"x": 180
},
"when": {
"up": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base",
"x": 270
},
"when": {
"north": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base",
"x": 90
},
"when": {
"south": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base",
"x": 90,
"y": 90
},
"when": {
"west": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base",
"x": 270,
"y": 90
},
"when": {
"east": "true"
}
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
{
"multipart": [
{
"apply": {
"model": "bloodmagic:block/routing_node_core_input"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base_input"
},
"when": {
"down": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base_input",
"x": 180
},
"when": {
"up": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base_input",
"x": 270
},
"when": {
"north": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base_input",
"x": 90
},
"when": {
"south": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base_input",
"x": 90,
"y": 90
},
"when": {
"west": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base_input",
"x": 270,
"y": 90
},
"when": {
"east": "true"
}
}
]
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
{
"multipart": [
{
"apply": {
"model": "bloodmagic:block/routing_node_core_master"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base_master"
},
"when": {
"down": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base_master",
"x": 180
},
"when": {
"up": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base_master",
"x": 270
},
"when": {
"north": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base_master",
"x": 90
},
"when": {
"south": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base_master",
"x": 90,
"y": 90
},
"when": {
"west": "true"
}
},
{
"apply": {
"model": "bloodmagic:block/routing_node_base_master",
"x": 270,
"y": 90
},
"when": {
"east": "true"
}
}
]
}
Loading