Skip to content

Commit 8cbedf1

Browse files
committed
增加封包星辉祭坛的自动搭建
1 parent 7b440ea commit 8cbedf1

File tree

3 files changed

+78
-10
lines changed

3 files changed

+78
-10
lines changed

build.gradle.kts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -203,14 +203,14 @@ dependencies {
203203

204204
// Mixins
205205
// implementation("zone.rong:mixinbooter:7.1")
206-
val mixin : String = modUtils.enableMixins("zone.rong:mixinbooter:9.3", "mixins.novaeng_core.refmap.json").toString()
207-
api (mixin) {
206+
val mixin: String = modUtils.enableMixins("zone.rong:mixinbooter:9.3", "mixins.novaeng_core.refmap.json").toString()
207+
api(mixin) {
208208
isTransitive = false
209209
}
210210
annotationProcessor("org.ow2.asm:asm-debug-all:5.2")
211211
annotationProcessor("com.google.guava:guava:32.0.1-android")
212212
annotationProcessor("com.google.code.gson:gson:2.8.9")
213-
annotationProcessor (mixin) {
213+
annotationProcessor(mixin) {
214214
isTransitive = false
215215
}
216216
compileOnlyApi("org.jetbrains:annotations:24.1.0")
@@ -226,6 +226,7 @@ dependencies {
226226

227227
// Mod Dependencies
228228
implementation("CraftTweaker2:CraftTweaker2-MC1120-Main:1.12-4.+")
229+
implementation(rfg.deobf("curse.maven:modularui-624243:7102461"))
229230
implementation(rfg.deobf("curse.maven:electroblobs-wizardry-265642:5354477"))
230231
implementation(rfg.deobf("curse.maven:modularmachinery-community-edition-817377:6945422"))
231232
implementation(rfg.deobf("kasuminova:MMCE-ComponentModelHider:1.1:dev"))
@@ -311,14 +312,15 @@ dependencies {
311312
implementation(rfg.deobf("curse.maven:Flux-Networks-248020:3178199"))
312313
implementation(rfg.deobf("curse.maven:BloodMagic-224791:2822288"))
313314
implementation(rfg.deobf("curse.maven:dme-737252:5985530"))
314-
implementation(rfg.deobf("curse.maven:packagedauto-308380:6312996"))
315315
compileOnly(rfg.deobf("curse.maven:libvulpes-236541:3801015"))
316316
compileOnly(rfg.deobf("curse.maven:advanced-rocketry-236542:4671856"))
317317
implementation(rfg.deobf("curse.maven:random-complement-1198138:7155516"))
318318
implementation(rfg.deobf("curse.maven:modular-routers-250294:2954953"))
319319
implementation(rfg.deobf("curse.maven:actually-additions-228404:3117927"))
320320
implementation(rfg.deobf("curse.maven:brandons-core-231382:3408276"))
321321
implementation(rfg.deobf("curse.maven:draconic-evolution-223565:3431261"))
322+
implementation(rfg.deobf("curse.maven:packagedauto-308380:6932932"))
323+
implementation(rfg.deobf("curse.maven:packagedastral-811828:7063119"))
322324
}
323325

324326
// Publishing to a Maven repository

src/main/java/github/kasuminova/novaeng/NovaEngCoreConfig.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,11 +64,11 @@ public static class Server {
6464

6565
public static class MachineAssemblyTool {
6666
@Config.Name("BuildQuantity")
67-
@Config.RangeInt(min = 1, max = 1000)
67+
@Config.RangeInt(min = 1)
6868
public int buildQuantity = 100;
6969

7070
@Config.Name("BuildSpeed")
71-
@Config.RangeInt(min = 1, max = 1000)
71+
@Config.RangeInt(min = 1)
7272
public int buildSpeed = 20;
7373
}
7474
}

src/main/java/github/kasuminova/novaeng/common/registry/RegistryAssembly.kt

Lines changed: 70 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,11 @@ import net.minecraft.util.EnumFacing
2323
import net.minecraft.util.ResourceLocation
2424
import net.minecraft.util.math.BlockPos
2525
import net.minecraft.util.text.translation.I18n
26+
import net.minecraftforge.fml.common.Loader
27+
import net.minecraftforge.fml.common.Optional
28+
import thelm.packagedastral.block.BlockAttunementCrafter
29+
import thelm.packagedastral.block.BlockConstellationCrafter
30+
import thelm.packagedastral.block.BlockTraitCrafter
2631
import vazkii.botania.common.block.ModBlocks
2732
import java.util.Arrays
2833
import java.util.stream.Collectors
@@ -43,11 +48,13 @@ object RegistryAssembly {
4348
}
4449

4550
fun regAll() {
46-
regAS()
47-
regMEK()
48-
regBot()
51+
if (Loader.isModLoaded("astralsorcery")) regAS()
52+
if (Loader.isModLoaded("mekanism")) regMEK()
53+
if (Loader.isModLoaded("botania")) regBot()
54+
if (Loader.isModLoaded("packagedastral")) regPackagedastral()
4955
}
5056

57+
@Optional.Method(modid = "astralsorcery")
5158
private fun regAS() {
5259
NEWMachineAssemblyManager.setConstructors(
5360
NEWMachineAssemblyManager.BlockPair(BlocksAS.blockAltar, 1),
@@ -121,6 +128,7 @@ object RegistryAssembly {
121128
)
122129
}
123130

131+
@Optional.Method(modid = "mekanism")
124132
@Suppress("UNCHECKED_CAST")
125133
private fun regMEK() {
126134
val reactorMachine = NEWDynamicMachine("")
@@ -325,6 +333,7 @@ object RegistryAssembly {
325333
)
326334
}
327335

336+
@Optional.Method(modid = "botania")
328337
private fun regBot() {
329338
val terraPlateMachine = NEWDynamicMachine("")
330339
if (terraPlateMachine is AccessorAbstractMachine) {
@@ -379,13 +388,53 @@ object RegistryAssembly {
379388
)
380389
}
381390

391+
@Optional.Method(modid = "packagedastral")
392+
private fun regPackagedastral() {
393+
val attunementCrafter = NEWMachineAssemblyManager.BlockPair(BlockAttunementCrafter.INSTANCE, 0)
394+
val attunementCrafterMachine = transformationPackagedastralBlockArrays(
395+
MultiBlockArrays.patternAltarAttunement,
396+
"AltarAttunement".camelToSnake()
397+
).setName("tile.packagedastral.attunement_crafter.name")
398+
attunementCrafterMachine.pattern.addBlock(BlockPos.ORIGIN, packBlock(attunementCrafter.blockState))
399+
NEWMachineAssemblyManager.setConstructors(
400+
attunementCrafter,
401+
attunementCrafterMachine
402+
)
403+
404+
val constellationCrafter = NEWMachineAssemblyManager.BlockPair(BlockConstellationCrafter.INSTANCE, 0)
405+
val constellationCrafterMachine = transformationPackagedastralBlockArrays(
406+
MultiBlockArrays.patternAltarConstellation,
407+
"AltarConstellation".camelToSnake()
408+
).setName("tile.packagedastral.constellation_crafter.name")
409+
constellationCrafterMachine.pattern.addBlock(BlockPos.ORIGIN, packBlock(constellationCrafter.blockState))
410+
NEWMachineAssemblyManager.setConstructors(
411+
constellationCrafter,
412+
constellationCrafterMachine
413+
)
414+
415+
val traitCrafter = NEWMachineAssemblyManager.BlockPair(BlockTraitCrafter.INSTANCE, 0)
416+
val traitCrafterMachine = transformationPackagedastralBlockArrays(
417+
MultiBlockArrays.patternAltarTrait,
418+
"AltarTrait".camelToSnake()
419+
).setName("tile.packagedastral.trait_crafter.name")
420+
traitCrafterMachine.pattern.addBlock(BlockPos.ORIGIN, packBlock(traitCrafter.blockState))
421+
NEWMachineAssemblyManager.setConstructors(
422+
traitCrafter,
423+
traitCrafterMachine
424+
)
425+
}
426+
382427
private class XY(val x: Int, val z: Int) {
383428
operator fun get(y: Int): BlockPos {
384429
return BlockPos(x, y, z)
385430
}
386431
}
387432

388-
private fun transformationBlockArrays(array: PatternBlockArray, name: String): NEWDynamicMachine {
433+
@Optional.Method(modid = "astralsorcery")
434+
private fun transformationBlockArrays(
435+
array: PatternBlockArray,
436+
name: String
437+
): NEWDynamicMachine {
389438
val machine = NEWDynamicMachine("")
390439
if (machine is AccessorAbstractMachine) {
391440
machine.setRL(ResourceLocation("astralsorcery", name))
@@ -398,6 +447,23 @@ object RegistryAssembly {
398447
return machine
399448
}
400449

450+
@Optional.Method(modid = "packagedastral")
451+
private fun transformationPackagedastralBlockArrays(
452+
array: PatternBlockArray,
453+
name: String
454+
): NEWDynamicMachine {
455+
val machine = NEWDynamicMachine("")
456+
if (machine is AccessorAbstractMachine) {
457+
machine.setRL(ResourceLocation("packagedastral", name))
458+
}
459+
val newBlcokArray = machine.pattern
460+
for (entry in array.pattern) {
461+
val info = BlockArray.BlockInformation(ObjectLists.singleton(IBlockStateDescriptor(entry.value.state)))
462+
newBlcokArray.addBlock(entry.key, info)
463+
}
464+
return machine
465+
}
466+
401467
private fun NEWDynamicMachine.setName(name: String): NEWDynamicMachine {
402468
this.localizedName = I18n.translateToLocal(name)
403469
return this

0 commit comments

Comments
 (0)