Skip to content

Commit 20a567d

Browse files
committed
Separate datagen code out of main mod source
1 parent 874ea4b commit 20a567d

12 files changed

+29
-18
lines changed

build.gradle

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,18 @@ sourceSets {
4040
compileClasspath += configurations.getByName("minecraft")
4141
}
4242

43+
datagen {
44+
java {
45+
srcDir "src/datagen/java"
46+
}
47+
48+
compileClasspath += configurations.getByName("minecraft")
49+
compileClasspath += sourceSets.api.output
50+
runtimeClasspath += sourceSets.api.output
51+
compileClasspath += sourceSets.main.output
52+
runtimeClasspath += sourceSets.main.output
53+
}
54+
4355
main {
4456
java {
4557
srcDir "src/main/java"
@@ -106,13 +118,16 @@ minecraft {
106118
// Recommended logging level for the console
107119
property 'forge.logging.console.level', 'debug'
108120

121+
property 'forge.enabledGameTestNamespaces', mod_id
122+
109123
property 'mixin.env.remapRefMap', 'true'
110124
property 'mixin.env.refMapRemappingFile', "${buildDir}/createSrgToMcp/output.srg"
111125

112126
mods {
113127
compactmachines {
114128
source sourceSets.main
115129
source sourceSets.api
130+
source sourceSets.test
116131
}
117132
}
118133
}
@@ -136,13 +151,12 @@ minecraft {
136151

137152
mods {
138153
compactmachines {
139-
source sourceSets.main
140-
source sourceSets.api
154+
source sourceSets.datagen
141155
}
142156
}
143157
}
144158

145-
gametestserver {
159+
gameTestServer {
146160
workingDirectory project.file('run/gametest')
147161

148162
// Recommended logging data for a userdev environment
@@ -160,9 +174,6 @@ minecraft {
160174
property 'mixin.env.remapRefMap', 'true'
161175
property 'mixin.env.refMapRemappingFile', "${buildDir}/createSrgToMcp/output.srg"
162176

163-
// Only runs gametests which use "examplemod" as the namespace
164-
args '--enableNamespace', mod_id
165-
166177
mods {
167178
compactmachines {
168179
source sourceSets.api

src/main/java/dev/compactmods/machines/datagen/AdvancementGenerator.java renamed to src/datagen/java/dev/compactmods/machines/datagen/AdvancementGenerator.java

File renamed without changes.

src/main/java/dev/compactmods/machines/datagen/BlockLootGenerator.java renamed to src/datagen/java/dev/compactmods/machines/datagen/BlockLootGenerator.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import com.google.common.collect.ImmutableList;
99
import com.mojang.datafixers.util.Pair;
1010
import dev.compactmods.machines.core.Registration;
11-
import dev.compactmods.machines.reference.Reference;
11+
import dev.compactmods.machines.data.NbtConstants;
1212
import net.minecraft.data.DataGenerator;
1313
import net.minecraft.data.loot.BlockLoot;
1414
import net.minecraft.data.loot.LootTableProvider;
@@ -66,8 +66,8 @@ protected void addTables() {
6666
}
6767

6868
private final LootItemFunction.Builder CopyOwnerAndReferenceFunction = CopyNbtFunction.copyData(ContextNbtProvider.BLOCK_ENTITY)
69-
.copy(Reference.CompactMachines.OWNER_NBT, Reference.CompactMachines.OWNER_NBT)
70-
.copy(Reference.CompactMachines.NBT_MACHINE_ID, Reference.CompactMachines.NBT_MACHINE_ID);
69+
.copy(NbtConstants.ROOM_OWNER, NbtConstants.ROOM_OWNER)
70+
.copy(NbtConstants.MACHINE_ID, NbtConstants.MACHINE_ID);
7171

7272
private void registerCompactMachineBlockDrops(RegistryObject<Block> block, RegistryObject<Item> item) {
7373
LootPool.Builder builder = LootPool.lootPool()

src/main/java/dev/compactmods/machines/datagen/DataGenUtil.java renamed to src/datagen/java/dev/compactmods/machines/datagen/DataGenUtil.java

File renamed without changes.

src/main/java/dev/compactmods/machines/datagen/DataGeneration.java renamed to src/datagen/java/dev/compactmods/machines/datagen/DataGeneration.java

File renamed without changes.

src/main/java/dev/compactmods/machines/datagen/DimensionTypeBuilder.java renamed to src/datagen/java/dev/compactmods/machines/datagen/DimensionTypeBuilder.java

File renamed without changes.

src/main/java/dev/compactmods/machines/datagen/ItemModelGenerator.java renamed to src/datagen/java/dev/compactmods/machines/datagen/ItemModelGenerator.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package dev.compactmods.machines.datagen;
22

33
import dev.compactmods.machines.CompactMachines;
4-
import dev.compactmods.machines.reference.EnumMachineSize;
4+
import dev.compactmods.machines.rooms.RoomSize;
55
import net.minecraft.data.DataGenerator;
66
import net.minecraftforge.client.model.generators.ItemModelProvider;
77
import net.minecraftforge.common.data.ExistingFileHelper;
@@ -14,7 +14,7 @@ public ItemModelGenerator(DataGenerator generator, ExistingFileHelper existingFi
1414

1515
@Override
1616
protected void registerModels() {
17-
for (var size : EnumMachineSize.values())
17+
for (var size : RoomSize.values())
1818
machine(size.getSerializedName());
1919

2020
withExistingParent("solid_wall", modLoc("block/wall"));

src/main/java/dev/compactmods/machines/datagen/LevelBiomeGenerator.java renamed to src/datagen/java/dev/compactmods/machines/datagen/LevelBiomeGenerator.java

File renamed without changes.

src/main/java/dev/compactmods/machines/datagen/RecipeGenerator.java renamed to src/datagen/java/dev/compactmods/machines/datagen/RecipeGenerator.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ protected void buildCraftingRecipes(Consumer<FinishedRecipe> consumer) {
2828
.pattern(" I ")
2929
.define('R', Tags.Items.DUSTS_REDSTONE)
3030
.define('I', Tags.Items.STORAGE_BLOCKS_IRON)
31-
.unlockedBy("picked_up_iron", has(Tags.Items.STORAGE_BLOCKS_IRON))
31+
.unlockedBy("picked_up_iron", RecipeProvider.has(Tags.Items.STORAGE_BLOCKS_IRON))
3232
.save(consumer);
3333

3434
ShapedRecipeBuilder.shaped(Registration.PERSONAL_SHRINKING_DEVICE.get())
@@ -39,7 +39,7 @@ protected void buildCraftingRecipes(Consumer<FinishedRecipe> consumer) {
3939
.define('E', Items.ENDER_EYE)
4040
.define('B', Items.BOOK)
4141
.define('I', Tags.Items.INGOTS_IRON)
42-
.unlockedBy("picked_up_ender_eye", has(Items.ENDER_EYE))
42+
.unlockedBy("picked_up_ender_eye", RecipeProvider.has(Items.ENDER_EYE))
4343
.save(consumer);
4444

4545
addMachineRecipes(consumer);
@@ -69,7 +69,7 @@ protected void registerMachineRecipe(Consumer<FinishedRecipe> consumer, ItemLike
6969
recipe.define('C', center);
7070

7171
recipe
72-
.unlockedBy("has_recipe", has(wall));
72+
.unlockedBy("has_recipe", RecipeProvider.has(wall));
7373

7474
ConditionalRecipe.builder()
7575
.addCondition(new EnableVanillaRecipesConfigCondition())

src/main/java/dev/compactmods/machines/datagen/StateGenerator.java renamed to src/datagen/java/dev/compactmods/machines/datagen/StateGenerator.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
package dev.compactmods.machines.datagen;
22

33
import dev.compactmods.machines.CompactMachines;
4-
import dev.compactmods.machines.block.BlockCompactMachine;
4+
import dev.compactmods.machines.machine.CompactMachineBlock;
55
import dev.compactmods.machines.core.Registration;
6-
import dev.compactmods.machines.reference.EnumMachineSize;
6+
import dev.compactmods.machines.rooms.RoomSize;
77
import net.minecraft.data.DataGenerator;
88
import net.minecraftforge.client.model.generators.BlockStateProvider;
99
import net.minecraftforge.client.model.generators.ConfiguredModel;
@@ -22,13 +22,13 @@ protected void registerStatesAndModels() {
2222
simpleBlock(Registration.BLOCK_BREAKABLE_WALL.get(), wall);
2323

2424
// Machine models
25-
for(EnumMachineSize size : EnumMachineSize.values()) {
25+
for(RoomSize size : RoomSize.values()) {
2626
String sizeName = size.getName();
2727

2828
var mod = models()
2929
.cubeAll("block/machine/machine_" + sizeName, modLoc("block/machine/machine_" + sizeName));
3030

31-
simpleBlock(BlockCompactMachine.getBySize(size), ConfiguredModel.builder()
31+
simpleBlock(CompactMachineBlock.getBySize(size), ConfiguredModel.builder()
3232
.modelFile(mod)
3333
.build());
3434
}

0 commit comments

Comments
 (0)