Skip to content

Commit

Permalink
Reverted all rocket changes but left machine changes
Browse files Browse the repository at this point in the history
decided to leave rocket code as is because rebuilding everything from scratch was painful. just going to build ontop of the already implemented system
  • Loading branch information
maxryan008 committed Sep 2, 2024
1 parent 90f54b5 commit 2611ae7
Show file tree
Hide file tree
Showing 32 changed files with 198 additions and 108 deletions.

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"variants": {
"": {
"model": "galacticraft:block/rocket_workbench"
"model": "galacticraft:machine/rocket_workbench"
}
}
}

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,4 @@
"sprites": {
"sprite": "galacticraft:block/electric_arc_furnace"
}
}
}
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"machinelib:generate": "machinelib:z_axis",
"sprites": {
"front": "galacticraft:block/food_canner",
"back": "galacticraft:block/food_canner_back",
"front": "galacticraft:block/food_canner",
"sided": true
}
}
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"machinelib:generate": "machinelib:z_axis",
"sprites": {
"front": "galacticraft:block/fuel_loader_controls",
"back": "galacticraft:block/fuel_loader_controls",
"front": "galacticraft:block/fuel_loader_controls",
"sided": false
}
}
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
{
"machinelib:generate": "machinelib:single",
"sprites": {
"particle": "galacticraft:block/oxygen_bubble_distributor",
"sprite": "galacticraft:block/oxygen_bubble_distributor"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"machinelib:generate": "machinelib:single",
"sprites": {
"particle": "galacticraft:block/oxygen_collector",
"sprite": "galacticraft:block/oxygen_collector"
}
}
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"machinelib:generate": "machinelib:z_axis",
"sprites": {
"front": "galacticraft:block/oxygen_compressor",
"back": "galacticraft:block/oxygen_compressor_back",
"front": "galacticraft:block/oxygen_compressor",
"sided": true
}
}
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
{
"machinelib:generate": "machinelib:z_axis",
"sprites": {
"back": "galacticraft:block/oxygen_decompressor_back",
"front": "galacticraft:block/oxygen_decompressor",
"back": "galacticraft:block/oxygen_compressor_back",
"sided": true
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@
"top": "galacticraft:block/oxygen_sealer_top"
},
"textures": {
"up": "galacticraft:block/oxygen_sealer_top",
"down": "galacticraft:block/machine",
"east": "galacticraft:block/machine_side",
"north": "galacticraft:block/machine_side",
"particle": "galacticraft:block/machine",
"south": "galacticraft:block/machine_side",
"east": "galacticraft:block/machine_side",
"west": "galacticraft:block/machine_side",
"particle": "galacticraft:block/machine"
"up": "galacticraft:block/oxygen_sealer_top",
"west": "galacticraft:block/machine_side"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"machinelib:generate": "machinelib:z_axis",
"sprites": {
"back": "galacticraft:block/oxygen_storage_model_8",
"front": "galacticraft:block/oxygen_storage_model_8",
"sided": false
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"machinelib:generate": "machinelib:z_axis",
"sprites": {
"back": "galacticraft:block/refinery_back",
"front": "galacticraft:block/refinery_front",
"sided": true
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"machinelib:generate": "machinelib:front_face",
"sprites": {
"sprite": "galacticraft:block/refinery_front"
},
"textures": {
"down": "galacticraft:block/machine_side",
"east": "galacticraft:block/machine_side",
"north": "galacticraft:block/machine_side",
"particle": "galacticraft:block/machine_side",
"south": "galacticraft:block/machine_side",
"up": "galacticraft:block/machine_side",
"west": "galacticraft:block/machine_side"
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
"galacticraft:oxygen_compressor",
"galacticraft:food_canner",
"galacticraft:oxygen_storage_module",
"galacticraft:fuel_loader"
"galacticraft:fuel_loader",
"galacticraft:rocket_workbench"
]
}
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
"max_delay": 24000,
"min_delay": 12000,
"replace_current_music": false,
"sound": "galacticraft:music.music_moon"
"sound": "galacticraft:music.music_orbit"
},
"sky_color": 0,
"water_color": 0,
Expand Down Expand Up @@ -57,5 +57,5 @@
"water_ambient": [],
"water_creature": []
},
"temperature": -2.0
"temperature": 2.0
}
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,6 @@ public void onInitializeDataGenerator(@NotNull FabricDataGenerator generator) {
pack.addProvider(GCStructureTagProvider::new);

// world generation
// pack.addProvider(BootstrapDataProvider.create("Noise", GCNoiseData::bootstrapRegistries));
pack.addProvider(BootstrapDataProvider.create("Density Functions", GCDensityFunctions::bootstrapRegistries));
pack.addProvider(BootstrapDataProvider.create("Biomes", GCBiomes::bootstrapRegistries));
pack.addProvider(BootstrapDataProvider.create("Dimension Types", GCDimensionTypes::bootstrapRegistries));
Expand Down
153 changes: 134 additions & 19 deletions src/main/java/dev/galacticraft/mod/data/model/GCModelProvider.java
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@
package dev.galacticraft.mod.data.model;

import com.google.common.collect.Maps;
import com.google.gson.JsonElement;
import com.google.gson.JsonObject;
import dev.galacticraft.mod.Constant;
import dev.galacticraft.mod.content.GCBlockRegistry;
import dev.galacticraft.mod.content.GCBlocks;
Expand Down Expand Up @@ -50,6 +52,7 @@
import org.jetbrains.annotations.Contract;

import java.util.List;
import java.util.function.Supplier;

public class GCModelProvider extends FabricModelProvider {
private static final TexturedModel.Provider DETAILED_DECORATION = TexturedModel.createDefault(GCModelProvider::detailedTexture, ModelTemplates.CUBE_BOTTOM_TOP);
Expand Down Expand Up @@ -134,7 +137,6 @@ public void generateBlockStateModels(BlockModelGenerators generator) {
generator.createTrivialCube(GCBlocks.HEAVY_SEALABLE_ALUMINUM_WIRE);
createLaunchPadBlock(GCBlocks.FUELING_PAD, generator);
createLaunchPadBlock(GCBlocks.ROCKET_LAUNCH_PAD, generator);
generator.createNonTemplateModelBlock(GCBlocks.ROCKET_WORKBENCH);
generator.createNonTemplateModelBlock(GCBlocks.FALLEN_METEOR);

// LIGHT PANELS
Expand Down Expand Up @@ -223,25 +225,25 @@ public void generateBlockStateModels(BlockModelGenerators generator) {
// generator.createNonTemplateModelBlock(GCBlocks.CRYOGENIC_CHAMBER);
generator.createNonTemplateModelBlock(GCBlocks.PLAYER_TRANSPORT_TUBE);

//todo gen models (not just blockstates)
createMachineDelegate(generator, GCBlocks.CIRCUIT_FABRICATOR);
createMachineDelegate(generator, GCBlocks.COMPRESSOR);
createMachineDelegate(generator, GCBlocks.ELECTRIC_COMPRESSOR);
createMachineDelegate(generator, GCBlocks.COAL_GENERATOR);
createMachineDelegateFrontFace(generator, GCBlocks.CIRCUIT_FABRICATOR);
createMachineDelegateFrontFace(generator, GCBlocks.COMPRESSOR);
createMachineDelegateFrontFace(generator, GCBlocks.ELECTRIC_COMPRESSOR);
createMachineDelegateFrontFace(generator, GCBlocks.COAL_GENERATOR);
createMachineDelegateFrontFace(generator, GCBlocks.ROCKET_WORKBENCH, "refinery_front", "machine_side"); //Todo not sure if its supposed to be a multiblock model?
createMachineDelegate(generator, GCBlocks.BASIC_SOLAR_PANEL);
createMachineDelegate(generator, GCBlocks.ADVANCED_SOLAR_PANEL);
createMachineDelegate(generator, GCBlocks.ENERGY_STORAGE_MODULE);
createMachineDelegate(generator, GCBlocks.ELECTRIC_FURNACE);
createMachineDelegate(generator, GCBlocks.ELECTRIC_ARC_FURNACE);
createMachineDelegate(generator, GCBlocks.REFINERY);
createMachineDelegate(generator, GCBlocks.OXYGEN_COLLECTOR);
createMachineDelegate(generator, GCBlocks.OXYGEN_SEALER);
createMachineDelegate(generator, GCBlocks.OXYGEN_BUBBLE_DISTRIBUTOR);
createMachineDelegate(generator, GCBlocks.OXYGEN_DECOMPRESSOR);
createMachineDelegate(generator, GCBlocks.OXYGEN_COMPRESSOR);
createMachineDelegate(generator, GCBlocks.FOOD_CANNER);
createMachineDelegate(generator, GCBlocks.OXYGEN_STORAGE_MODULE);
createMachineDelegate(generator, GCBlocks.FUEL_LOADER);
createMachineDelegateFrontFace(generator, GCBlocks.ENERGY_STORAGE_MODULE, "energy_storage_module_0");
createMachineDelegateFrontFace(generator, GCBlocks.ELECTRIC_FURNACE);
createMachineDelegateFrontFace(generator, GCBlocks.ELECTRIC_ARC_FURNACE);
createMachineDelegateZAxis(generator, GCBlocks.REFINERY, "refinery_front", "refinery_back");
createMachineDelegateSingle(generator, GCBlocks.OXYGEN_COLLECTOR, "oxygen_collector");
createMachineDelegateColumn(generator, GCBlocks.OXYGEN_SEALER, "oxygen_sealer", "oxygen_sealer_top", "machine", "machine_side"); //column with particle
createMachineDelegateSingle(generator, GCBlocks.OXYGEN_BUBBLE_DISTRIBUTOR, "oxygen_bubble_distributor");
createMachineDelegateZAxis(generator, GCBlocks.OXYGEN_DECOMPRESSOR, "oxygen_decompressor", "oxygen_decompressor_back");
createMachineDelegateZAxis(generator, GCBlocks.OXYGEN_COMPRESSOR, "oxygen_compressor", "oxygen_compressor_back");
createMachineDelegateZAxis(generator, GCBlocks.FOOD_CANNER, "food_canner", "food_canner_back");
createMachineDelegateZAxis(generator, GCBlocks.OXYGEN_STORAGE_MODULE, "oxygen_storage_model_8");
createMachineDelegateZAxis(generator, GCBlocks.FUEL_LOADER, "fuel_loader_controls");

generator.createNonTemplateModelBlock(GCBlocks.CRUDE_OIL);
generator.createNonTemplateModelBlock(GCBlocks.FUEL);
Expand Down Expand Up @@ -335,10 +337,123 @@ public static ResourceLocation getMachineModelLocation(Block block) {
return resourceLocation.withPrefix("machine/");
}

private static void createMachineDelegate(BlockModelGenerators generator, Block block) { //todo: look into why we need this prefix
private static void createMachineDelegateFrontFace(BlockModelGenerators generator, Block block) {
JsonObject customJson = new JsonObject();
customJson.addProperty("machinelib:generate", "machinelib:front_face");

JsonObject sprites = new JsonObject();
sprites.addProperty("sprite", getMachineModelLocation(block).toString().replace("machine", "block"));

customJson.add("sprites", sprites);
Supplier<JsonElement> jsonSupplier = () -> customJson;
generator.modelOutput.accept(getMachineModelLocation(block), jsonSupplier);
generator.blockStateOutput.accept(BlockModelGenerators.createSimpleBlock(block, getMachineModelLocation(block)));
}

private static void createMachineDelegate(BlockModelGenerators generator, Block block) {
generator.blockStateOutput.accept(BlockModelGenerators.createSimpleBlock(block, getMachineModelLocation(block)));
}

private static void createMachineDelegateFrontFace(BlockModelGenerators generator, Block block, String id) {
JsonObject customJson = new JsonObject();
customJson.addProperty("machinelib:generate", "machinelib:front_face");

JsonObject sprites = new JsonObject();
sprites.addProperty("sprite", "galacticraft:block/" + id);

customJson.add("sprites", sprites);
Supplier<JsonElement> jsonSupplier = () -> customJson;
generator.modelOutput.accept(getMachineModelLocation(block), jsonSupplier);
generator.blockStateOutput.accept(BlockModelGenerators.createSimpleBlock(block, getMachineModelLocation(block)));
}

private static void createMachineDelegateFrontFace(BlockModelGenerators generator, Block block, String id, String sides) {
JsonObject customJson = new JsonObject();
customJson.addProperty("machinelib:generate", "machinelib:front_face");

JsonObject sprites = new JsonObject();
sprites.addProperty("sprite", "galacticraft:block/" + id);
customJson.add("sprites", sprites);
JsonObject textures = new JsonObject();
textures.addProperty("up", "galacticraft:block/" + sides);
textures.addProperty("down", "galacticraft:block/" + sides);
textures.addProperty("north", "galacticraft:block/" + sides);
textures.addProperty("east", "galacticraft:block/" + sides);
textures.addProperty("south", "galacticraft:block/" + sides);
textures.addProperty("west", "galacticraft:block/" + sides);
textures.addProperty("particle", "galacticraft:block/" + sides);
customJson.add("textures", textures);
Supplier<JsonElement> jsonSupplier = () -> customJson;
generator.modelOutput.accept(getMachineModelLocation(block), jsonSupplier);
generator.blockStateOutput.accept(BlockModelGenerators.createSimpleBlock(block, getMachineModelLocation(block)));
}

private static void createMachineDelegateZAxis(BlockModelGenerators generator, Block block, String id) {
JsonObject customJson = new JsonObject();
customJson.addProperty("machinelib:generate", "machinelib:z_axis");

JsonObject sprites = new JsonObject();
sprites.addProperty("front", "galacticraft:block/" + id);
sprites.addProperty("back", "galacticraft:block/" + id);
sprites.addProperty("sided", false);


customJson.add("sprites", sprites);
Supplier<JsonElement> jsonSupplier = () -> customJson;
generator.modelOutput.accept(getMachineModelLocation(block), jsonSupplier);
generator.blockStateOutput.accept(BlockModelGenerators.createSimpleBlock(block, getMachineModelLocation(block)));
}

private static void createMachineDelegateZAxis(BlockModelGenerators generator, Block block, String id, String id2) {
JsonObject customJson = new JsonObject();
customJson.addProperty("machinelib:generate", "machinelib:z_axis");

JsonObject sprites = new JsonObject();
sprites.addProperty("front", "galacticraft:block/" + id);
sprites.addProperty("back", "galacticraft:block/" + id2);
sprites.addProperty("sided", true);


customJson.add("sprites", sprites);
Supplier<JsonElement> jsonSupplier = () -> customJson;
generator.modelOutput.accept(getMachineModelLocation(block), jsonSupplier);
generator.blockStateOutput.accept(BlockModelGenerators.createSimpleBlock(block, getMachineModelLocation(block)));
}

private static void createMachineDelegateSingle(BlockModelGenerators generator, Block block, String id) {
JsonObject customJson = new JsonObject();
customJson.addProperty("machinelib:generate", "machinelib:single");

JsonObject sprites = new JsonObject();
sprites.addProperty("sprite", "galacticraft:block/" + id);
sprites.addProperty("particle", "galacticraft:block/" + id);

customJson.add("sprites", sprites);
Supplier<JsonElement> jsonSupplier = () -> customJson;
generator.modelOutput.accept(getMachineModelLocation(block), jsonSupplier);
generator.blockStateOutput.accept(BlockModelGenerators.createSimpleBlock(block, getMachineModelLocation(block)));
}

private static void createMachineDelegateColumn(BlockModelGenerators generator, Block block, String id, String top, String bottom, String side) {
JsonObject customJson = new JsonObject();
customJson.addProperty("machinelib:generate", "galacticraft:" + id);

JsonObject sprites = new JsonObject();
sprites.addProperty("top", "galacticraft:block/" + top);
customJson.add("sprites", sprites);
JsonObject textures = new JsonObject();
textures.addProperty("up", "galacticraft:block/" + top);
textures.addProperty("down", "galacticraft:block/" + bottom);
textures.addProperty("north", "galacticraft:block/" + side);
textures.addProperty("east", "galacticraft:block/" + side);
textures.addProperty("south", "galacticraft:block/" + side);
textures.addProperty("west", "galacticraft:block/" + side);
textures.addProperty("particle", "galacticraft:block/" + bottom);
customJson.add("textures", textures);
Supplier<JsonElement> jsonSupplier = () -> customJson;
generator.modelOutput.accept(getMachineModelLocation(block), jsonSupplier);
}

@Override
public void generateItemModels(ItemModelGenerators generator) {
// MATERIALS
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,8 @@ protected void addTags(HolderLookup.Provider provider) {
GCBlocks.OXYGEN_COMPRESSOR,
GCBlocks.FOOD_CANNER,
GCBlocks.OXYGEN_STORAGE_MODULE,
GCBlocks.FUEL_LOADER
GCBlocks.FUEL_LOADER,
GCBlocks.ROCKET_WORKBENCH
);

this.tag(BlockTags.CLIMBABLE)
Expand Down
Loading

0 comments on commit 2611ae7

Please sign in to comment.