Skip to content

Commit

Permalink
- ダイナマイトの火力を増やすレシピを追加
Browse files Browse the repository at this point in the history
  • Loading branch information
Hiiragi283 committed Dec 24, 2024
1 parent 1dc868b commit 7205eac
Show file tree
Hide file tree
Showing 8 changed files with 45 additions and 25 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import hiiragi283.ragium.api.recipe.HTFluidResult
import hiiragi283.ragium.api.recipe.HTItemIngredient
import hiiragi283.ragium.api.recipe.HTItemResult
import hiiragi283.ragium.integration.RITranslationKeys
import hiiragi283.ragium.integration.rei.display.HTMachineRecipeDisplay
import me.shedaniel.rei.api.common.category.CategoryIdentifier
import me.shedaniel.rei.api.common.entry.EntryIngredient
import me.shedaniel.rei.api.common.entry.EntryStack
Expand Down
Original file line number Diff line number Diff line change
@@ -1,36 +1,42 @@
package hiiragi283.ragium.integration.rei

import hiiragi283.ragium.api.RagiumAPI
import hiiragi283.ragium.api.component.HTExplosionComponent
import hiiragi283.ragium.api.data.HTMachineRecipeJsonBuilder
import hiiragi283.ragium.api.extension.buildItemStack
import hiiragi283.ragium.api.machine.HTMachineKey
import hiiragi283.ragium.api.machine.HTMachineTier
import hiiragi283.ragium.api.recipe.HTMachineRecipe
import hiiragi283.ragium.api.tags.RagiumFluidTags
import hiiragi283.ragium.common.init.*
import hiiragi283.ragium.integration.rei.category.HTMachineRecipeCategory
import hiiragi283.ragium.integration.rei.category.HTMaterialInfoCategory
import hiiragi283.ragium.integration.rei.display.HTMachineRecipeDisplay
import hiiragi283.ragium.integration.rei.display.HTMaterialInfoDisplay
import me.shedaniel.rei.api.client.plugins.REIClientPlugin
import me.shedaniel.rei.api.client.registry.category.CategoryRegistry
import me.shedaniel.rei.api.client.registry.display.DisplayRegistry
import me.shedaniel.rei.api.common.category.CategoryIdentifier
import me.shedaniel.rei.api.common.entry.EntryStack
import me.shedaniel.rei.api.common.util.EntryIngredients
import me.shedaniel.rei.api.common.util.EntryStacks
import me.shedaniel.rei.plugin.common.DefaultPlugin
import me.shedaniel.rei.plugin.common.displays.DefaultSmithingDisplay
import net.fabricmc.api.EnvType
import net.fabricmc.api.Environment
import net.fabricmc.fabric.api.transfer.v1.fluid.FluidConstants
import net.minecraft.block.ComposterBlock
import net.minecraft.enchantment.Enchantment
import net.minecraft.fluid.Fluid
import net.minecraft.item.ItemConvertible
import net.minecraft.item.ItemStack
import net.minecraft.item.Items
import net.minecraft.recipe.RecipeEntry
import net.minecraft.registry.Registries
import net.minecraft.registry.RegistryKey
import net.minecraft.registry.entry.RegistryEntry
import net.minecraft.registry.tag.TagKey
import java.util.*

@Suppress("UnstableApiUsage")
@Environment(EnvType.CLIENT)
object RagiumREIClient : REIClientPlugin {
init {
Expand All @@ -42,15 +48,14 @@ object RagiumREIClient : REIClientPlugin {

// REIClientPlugin //

@Suppress("UnstableApiUsage")
override fun registerCategories(registry: CategoryRegistry) {
// Vanilla
// vanilla
HTMachineTier.entries.map(RagiumMachineKeys.MULTI_SMELTER::createEntryStack).forEach {
registry.addWorkstations(DefaultPlugin.SMELTING, it)
}
registry.addWorkstations(DefaultPlugin.WAXING, EntryStacks.of(RagiumItems.BEE_WAX))

// Machines
// machine
RagiumAPI
.getInstance()
.machineRegistry
Expand All @@ -64,12 +69,7 @@ object RagiumREIClient : REIClientPlugin {
addWorkStation(registry, RagiumMachineKeys.COMPRESSOR, RagiumBlocks.MANUAL_FORGE)
addWorkStation(registry, RagiumMachineKeys.GRINDER, RagiumBlocks.MANUAL_GRINDER)
addWorkStation(registry, RagiumMachineKeys.MIXER, RagiumBlocks.MANUAL_MIXER)
// Enchantment
// registry.addWorkstations(BuiltinPlugin.SMELTING, createEnchantedBook(RagiumEnchantments.SMELTING))
// addWorkStation(registry, RagiumMachineKeys.GRINDER, RagiumEnchantments.SLEDGE_HAMMER)
// addWorkStation(registry, RagiumMachineKeys.CUTTING_MACHINE, RagiumEnchantments.BUZZ_SAW)

// Material Info
// material info
registry.add(HTMaterialInfoCategory)
registry.addWorkstations(MATERIAL_INFO, EntryStacks.of(Items.IRON_INGOT))
}
Expand All @@ -79,11 +79,6 @@ object RagiumREIClient : REIClientPlugin {
registry.addWorkstations(key.categoryId, EntryStacks.of(item))
}

@JvmStatic
private fun addWorkStation(registry: CategoryRegistry, key: HTMachineKey, enchantKey: RegistryKey<Enchantment>) {
registry.addWorkstations(key.categoryId, createEnchantedBook(enchantKey))
}

override fun registerDisplays(registry: DisplayRegistry) {
fun registerFuels(fuelTag: TagKey<Fluid>, key: HTMachineKey, amount: Long) {
Registries.FLUID.iterateEntries(fuelTag).forEach { fluid: RegistryEntry<Fluid> ->
Expand All @@ -95,11 +90,31 @@ object RagiumREIClient : REIClientPlugin {
}
}

// Generator Fuels
// vanilla
(3..16)
.map { power: Int ->
DefaultSmithingDisplay(
listOf(
EntryIngredients.of(RagiumItemsNew.Dynamites.SIMPLE),
EntryIngredients.of(Items.GUNPOWDER, power - 2),
),
listOf(
EntryIngredients.of(
buildItemStack(RagiumItemsNew.Dynamites.SIMPLE) {
add(RagiumComponentTypes.DYNAMITE, HTExplosionComponent(power.toFloat(), true))
},
),
),
null,
Optional.empty(),
)
}.forEach(registry::add)

// generator
registerFuels(RagiumFluidTags.NON_NITRO_FUELS, RagiumMachineKeys.COMBUSTION_GENERATOR, FluidConstants.INGOT)
registerFuels(RagiumFluidTags.NITRO_FUELS, RagiumMachineKeys.COMBUSTION_GENERATOR, FluidConstants.NUGGET)
registerFuels(RagiumFluidTags.THERMAL_FUELS, RagiumMachineKeys.THERMAL_GENERATOR, FluidConstants.INGOT)
// Machine Recipes
// machine
registry.registerRecipeFiller(
HTMachineRecipe::class.java,
RagiumRecipeTypes.MACHINE,
Expand All @@ -114,7 +129,7 @@ object RagiumREIClient : REIClientPlugin {
.transform(::HTMachineRecipeDisplay)
.let(registry::add)
}
// Material Info
// material info
RagiumAPI
.getInstance()
.materialRegistry
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,9 @@ package hiiragi283.ragium.integration.rei.category

import hiiragi283.ragium.api.machine.HTMachineKey
import hiiragi283.ragium.api.machine.HTMachineTier
import hiiragi283.ragium.integration.rei.HTMachineRecipeDisplay
import hiiragi283.ragium.integration.rei.categoryId
import hiiragi283.ragium.integration.rei.createEntryStack
import hiiragi283.ragium.integration.rei.display.HTMachineRecipeDisplay
import me.shedaniel.math.Rectangle
import me.shedaniel.rei.api.client.gui.Renderer
import me.shedaniel.rei.api.client.gui.widgets.Widget
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
package hiiragi283.ragium.integration.rei.category

import hiiragi283.ragium.api.material.HTTagPrefix
import hiiragi283.ragium.integration.rei.HTMaterialInfoDisplay
import hiiragi283.ragium.integration.rei.RagiumREIClient
import hiiragi283.ragium.integration.rei.display.HTMaterialInfoDisplay
import me.shedaniel.math.Rectangle
import me.shedaniel.rei.api.client.gui.Renderer
import me.shedaniel.rei.api.client.gui.widgets.Widget
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package hiiragi283.ragium.integration.rei
package hiiragi283.ragium.integration.rei.display

import hiiragi283.ragium.api.recipe.HTMachineRecipe
import hiiragi283.ragium.integration.rei.categoryId
import hiiragi283.ragium.integration.rei.entryIngredient
import me.shedaniel.rei.api.common.category.CategoryIdentifier
import me.shedaniel.rei.api.common.display.Display
import me.shedaniel.rei.api.common.entry.EntryIngredient
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,10 @@
package hiiragi283.ragium.integration.rei
package hiiragi283.ragium.integration.rei.display

import hiiragi283.ragium.api.material.HTMaterialKey
import hiiragi283.ragium.api.material.HTTagPrefix
import hiiragi283.ragium.api.recipe.HTItemIngredient
import hiiragi283.ragium.integration.rei.RagiumREIClient
import hiiragi283.ragium.integration.rei.entryIngredient
import me.shedaniel.rei.api.common.category.CategoryIdentifier
import me.shedaniel.rei.api.common.display.Display
import me.shedaniel.rei.api.common.entry.EntryIngredient
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ object RagiumEPPlugin : RagiumPlugin {
}

override fun bindMaterialToItem(consumer: TriConsumer<HTTagPrefix, HTMaterialKey, ItemConvertible>) {
consumer.accept(HTTagPrefix.DEEP_ORE, RagiumMaterialKeys.TIN, EPBlocks.DEEPSLATE_TIN_ORE_ITEM)
consumer.accept(HTTagPrefix.ORE, RagiumMaterialKeys.TIN, EPBlocks.DEEPSLATE_TIN_ORE_ITEM)

consumer.accept(HTTagPrefix.DUST, RagiumMaterialKeys.COPPER, EPItems.COPPER_DUST)
consumer.accept(HTTagPrefix.DUST, RagiumMaterialKeys.GOLD, EPItems.GOLD_DUST)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ object RagiumTechRebornPlugin : RagiumPlugin {
fun registerOre(key: HTMaterialKey, ore: TRContent.Ores, prefix: HTTagPrefix = HTTagPrefix.ORE) {
consumer.accept(prefix, key, ore)
ore.deepslate?.let {
consumer.accept(HTTagPrefix.DEEP_ORE, key, ore)
consumer.accept(HTTagPrefix.ORE, key, ore)
}
}

Expand Down

0 comments on commit 7205eac

Please sign in to comment.