Package com.hbm_m.module.machine
Class MachineModuleAdvancedAssembler
java.lang.Object
com.hbm_m.module.machine.MachineModuleBase<AssemblerRecipe>
com.hbm_m.module.machine.MachineModuleAdvancedAssembler
Модуль крафта для продвинутой сборочной машины.
Реализует логику обработки AssemblerRecipe.
ОБНОВЛЕНО: Теперь использует ILongEnergyStorage для поддержки больших значений энергии
-
Field Summary
Fields inherited from class com.hbm_m.module.machine.MachineModuleBase
autoSelectRecipe, currentRecipe, didProcess, energyStorage, inputSlots, itemHandler, level, maxProgress, moduleIndex, needsSync, outputSlots, preferredRecipeId, progress, selectedRecipeId -
Constructor Summary
ConstructorsConstructorDescriptionMachineModuleAdvancedAssembler(int moduleIndex, IEnergyReceiver energyStorage, ModItemStackHandler itemHandler, net.minecraft.world.level.Level level) -
Method Summary
Modifier and TypeMethodDescriptionbooleancanProcess(AssemblerRecipe recipe) protected AssemblerRecipefindRecipeForItem(net.minecraft.world.item.ItemStack stack) protected intgetRecipeDuration(AssemblerRecipe recipe) protected longgetRecipeEnergyCost(AssemblerRecipe recipe) protected AssemblerRecipe.Typeprotected booleanisRecipeAllowedByBlueprint(AssemblerRecipe recipe, net.minecraft.world.item.ItemStack blueprint) Реализация проверки blueprint pool Использует AssemblerRecipeConfig для валидацииprotected booleanmatchesCurrentRecipe(AssemblerRecipe recipe) protected voidprocessCraft(AssemblerRecipe recipe) setInputSlots(int startSlot, int count) setOutputSlot(int slot) voidsetPreferredRecipe(AssemblerRecipe recipe) API used by BE/GUI: prefer a specific recipe (or clear preference).Methods inherited from class com.hbm_m.module.machine.MachineModuleBase
canFitAllItemOutputs, deserialize, getCurrentRecipe, getDidProcess, getGhostItems, getMaxProgress, getProgress, getProgressInt, getProgressPercent, getRecipeByIdCached, getSelectedRecipeId, hasEnoughEnergyForTick, hasEnoughEnergyToStartCraft, isBlueprintAllowedForPool, isBlueprintPoolAllowed, isItemValidForSlot, isProcessing, isSlotClogged, onRecipeChanged, pickRecipeForTick, placeAllItemOutputs, readExtraFromBuf, readExtraFromNbt, readFromNBT, readNBT, requiresFullEnergyBufferToStart, resetProgress, serialize, setLevel, setPreferredRecipeId, setSelectedRecipeId, update, update, writeExtraToBuf, writeExtraToNbt, writeNBT, writeToNBT
-
Constructor Details
-
MachineModuleAdvancedAssembler
public MachineModuleAdvancedAssembler(int moduleIndex, IEnergyReceiver energyStorage, ModItemStackHandler itemHandler, net.minecraft.world.level.Level level)
-
-
Method Details
-
setInputSlots
-
setOutputSlot
-
getRecipeType
- Specified by:
getRecipeTypein classMachineModuleBase<AssemblerRecipe>
-
findRecipeForInputs
- Specified by:
findRecipeForInputsin classMachineModuleBase<AssemblerRecipe>
-
setPreferredRecipe
API used by BE/GUI: prefer a specific recipe (or clear preference). Stored as ID, resolved viaModRecipeIndexwhen needed. -
getPreferredRecipe
-
matchesCurrentRecipe
- Specified by:
matchesCurrentRecipein classMachineModuleBase<AssemblerRecipe>
-
canProcess
- Specified by:
canProcessin classMachineModuleBase<AssemblerRecipe>
-
processCraft
- Specified by:
processCraftin classMachineModuleBase<AssemblerRecipe>
-
getRecipeDuration
- Specified by:
getRecipeDurationin classMachineModuleBase<AssemblerRecipe>
-
getRecipeEnergyCost
- Specified by:
getRecipeEnergyCostin classMachineModuleBase<AssemblerRecipe>
-
findRecipeForItem
- Specified by:
findRecipeForItemin classMachineModuleBase<AssemblerRecipe>
-
isRecipeAllowedByBlueprint
protected boolean isRecipeAllowedByBlueprint(AssemblerRecipe recipe, @Nullable net.minecraft.world.item.ItemStack blueprint) Реализация проверки blueprint pool Использует AssemblerRecipeConfig для валидации- Overrides:
isRecipeAllowedByBlueprintin classMachineModuleBase<AssemblerRecipe>
-