Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
Roadhog360 committed Mar 20, 2024
2 parents 4c280a8 + a0a6b85 commit db7bac1
Show file tree
Hide file tree
Showing 3 changed files with 69 additions and 0 deletions.
5 changes: 5 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,11 @@ dependencies {
compileOnly "codechicken:NotEnoughItems:1.7.10-1.0.5.120:dev"
compileOnly "codechicken:CodeChickenLib:1.7.10-1.1.3.140:dev"
compileOnly "codechicken:CodeChickenCore:1.7.10-1.0.7.47:dev"

compileOnly("com.github.GTNewHorizons:TinkersConstruct:1.11.12-GTNH:dev") {
transitive = false
}

compileOnly("com.github.GTNewHorizons:Angelica:1.0.0-alpha19:api") {
transitive = false
}
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/ganymedes01/etfuturum/EtFuturum.java
Original file line number Diff line number Diff line change
Expand Up @@ -338,6 +338,10 @@ public void postInit(FMLPostInitializationEvent event) {
CompostingRegistry.init();
BeePlantRegistry.init();
PistonBehaviorRegistry.init();

if (ModsList.TINKERS_CONSTRUCT.isLoaded()) {
CompatTinkersConstruct.postInit();
}
}

@EventHandler
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
package ganymedes01.etfuturum.compat;

import java.util.List;
import java.util.Map;
import java.util.Map.Entry;

import ganymedes01.etfuturum.api.RawOreRegistry;
import ganymedes01.etfuturum.api.mappings.RawOreDropMapping;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fluids.FluidStack;
import net.minecraftforge.oredict.OreDictionary;
import tconstruct.library.crafting.Smeltery;

public class CompatTinkersConstruct {

public static void postInit() {
regsiterRawOresToSmeltery();
}

private static void regsiterRawOresToSmeltery() {
Map<String, RawOreDropMapping> oreMap = RawOreRegistry.getOreMap();

for (Entry<String, RawOreDropMapping> kvp : oreMap.entrySet()) {
String oreDictName = kvp.getKey();
RawOreDropMapping mapping = kvp.getValue();
ItemStack melting = new ItemStack(mapping.getObject(), mapping.getMeta());
List<ItemStack> allOres = OreDictionary.getOres(oreDictName);
ItemStack oreBlock = null;

// Find an item stack that is a block.
for (ItemStack ore : allOres) {
if (ore.getItem() instanceof ItemBlock) {
ItemBlock itemBlock = (ItemBlock)ore.getItem();
Block block = Block.getBlockFromItem(itemBlock);

if (block != null && block != Blocks.air) {
oreBlock = ore;
break;
}
}
}

if (oreBlock != null) {
// Collect some infos for the existing block
FluidStack liquid = Smeltery.getSmelteryResult(oreBlock);
int temperature = Smeltery.getLiquifyTemperature(oreBlock);
Block renderBlock = Blocks.air;
int renderBlockMeta = 0;

// Add the melting recipe
if (liquid != null) {
Smeltery.addMelting(melting, renderBlock, renderBlockMeta, temperature, liquid);
}
}
}
}
}

0 comments on commit db7bac1

Please sign in to comment.