Skip to content

Commit c52ff0d

Browse files
authored
Add growing plant renderer in the greenhouse example in the docs (#3910)
1 parent 3770f57 commit c52ff0d

1 file changed

Lines changed: 11 additions & 29 deletions

File tree

docs/content/Modpacks/Examples/Greenhouse.md

Lines changed: 11 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -32,32 +32,24 @@ title: "Greenhouse"
3232
## Multiblock
3333
=== "JavaScript"
3434
```js title="greenhouse_multiblock.js"
35+
const $RecipeLogic = Java.loadClass('com.gregtechceu.gtceu.api.machine.trait.RecipeLogic')
36+
const $List = Java.loadClass('java.util.List')
37+
3538
GTCEuStartupEvents.registry('gtceu:machine', event => {
3639
event.create('greenhouse', 'multiblock')
3740
.rotationState(RotationState.NON_Y_AXIS)
3841
.recipeType('greenhouse')
3942
.appearanceBlock(GTBlocks.CASING_STEEL_SOLID)
4043
.pattern(definition => FactoryBlockPattern.start()
4144
.aisle('CCC', 'CGC', 'CGC', 'CLC', 'CCC')
42-
.aisle('CMC', 'GSG', 'G#G', 'LIL', 'COC')
45+
.aisle('CMC', 'G#G', 'G#G', 'LIL', 'COC')
4346
.aisle('CKC', 'CGC', 'CGC', 'CLC', 'CNC')
4447
.where('K', Predicates.controller(Predicates.blocks(definition.get())))
4548
.where('M', Predicates.blocks('moss_block')
4649
.or(Predicates.blocks('dirt'))
4750
.or(Predicates.blocks('grass_block'))
4851
)
4952
.where('G', Predicates.blocks('ae2:quartz_glass'))
50-
.where('S', Predicates.blocks('oak_sapling')
51-
.or(Predicates.blocks('dark_oak_sapling'))
52-
.or(Predicates.blocks('spruce_sapling'))
53-
.or(Predicates.blocks('birch_sapling'))
54-
.or(Predicates.blocks('jungle_sapling'))
55-
.or(Predicates.blocks('acacia_sapling'))
56-
.or(Predicates.blocks('azalea'))
57-
.or(Predicates.blocks('flowering_azalea'))
58-
.or(Predicates.blocks('mangrove_propagule'))
59-
.or(Predicates.blocks('gtceu:rubber_sapling'))
60-
)
6153
.where('I', Predicates.blocks('glowstone'))
6254
.where('L', Predicates.blocks(GTBlocks.CASING_GRATE.get()))
6355
.where('C', Predicates.blocks(GTBlocks.CASING_STEEL_SOLID.get())
@@ -70,9 +62,9 @@ title: "Greenhouse"
7062
.where('#', Predicates.air())
7163
.build()
7264
)
73-
.workableCasingModel(
74-
"gtceu:block/casings/solid/machine_casing_solid_steel",
75-
"gtceu:block/multiblock/implosion_compressor"
65+
.modelProperty(GTModelProperties.RECIPE_LOGIC_STATUS, $RecipeLogic.Status.IDLE)
66+
.model(GTMachineModels.createWorkableCasingMachineModel(GTCEu.id("block/casings/solid/machine_casing_solid_steel"), GTCEu.id("block/multiblock/implosion_compressor"))
67+
["andThen(java.util.function.Consumer)"](b => b.addDynamicRenderer(() => GTDynamicRenders.makeGrowingPlantRender($List.of(new Vector3f(0, 1, -1)))))
7668
)
7769
})
7870
```
@@ -85,23 +77,13 @@ title: "Greenhouse"
8577
.appearanceBlock(GTBlocks.CASING_STEEL_SOLID)
8678
.pattern(definition -> FactoryBlockPattern.start()
8779
.aisle("CCC", "CGC", "CGC", "CLC", "CCC")
88-
.aisle("CMC", "GSG", "G#G", "LIL", "COC")
80+
.aisle("CMC", "G#G", "G#G", "LIL", "COC")
8981
.aisle("CKC", "CGC", "CGC", "CLC", "CNC")
9082
.where('K', Predicates.controller(Predicates.blocks(definition.get())))
9183
.where('M', Predicates.blocks(Blocks.MOSS_BLOCK)
9284
.or(Predicates.blocks(Blocks.DIRT))
9385
.or(Predicates.blocks(Blocks.GRASS_BLOCK)))
9486
.where('G', Predicates.blocks(AEBlocks.QUARTZ_GLASS.block()))
95-
.where('S', Predicates.blocks(Blocks.OAK_SAPLING)
96-
.or(Predicates.blocks(Blocks.DARK_OAK_SAPLING))
97-
.or(Predicates.blocks(Blocks.SPRUCE_SAPLING))
98-
.or(Predicates.blocks(Blocks.BIRCH_SAPLING))
99-
.or(Predicates.blocks(Blocks.JUNGLE_SAPLING))
100-
.or(Predicates.blocks(Blocks.ACACIA_SAPLING))
101-
.or(Predicates.blocks(Blocks.AZALEA))
102-
.or(Predicates.blocks(Blocks.FLOWERING_AZALEA))
103-
.or(Predicates.blocks(Blocks.MANGROVE_PROPAGULE))
104-
.or(Predicates.blocks(GTBlocks.RUBBER_SAPLING.get())))
10587
.where('I', Predicates.blocks(Blocks.GLOWSTONE))
10688
.where('L', Predicates.blocks(GTBlocks.CASING_GRATE.get()))
10789
.where('C', Predicates.blocks(GTBlocks.CASING_STEEL_SOLID.get())
@@ -111,9 +93,9 @@ title: "Greenhouse"
11193
.where('N', Predicates.abilities(PartAbility.MAINTENANCE))
11294
.where('#', Predicates.air())
11395
.build())
114-
.workableCasingModel(
115-
GTCEu.id("block/casings/solid/machine_casing_solid_steel"),
116-
GTCEu.id("gtceu:block/multiblock/implosion_compressor"))
96+
.modelProperty(GTMachineModelProperties.RECIPE_LOGIC_STATUS, RecipeLogic.Status.IDLE)
97+
.model(GTMachineModels.createWorkableCasingMachineModel(GTCEu.id("block/casings/solid/machine_casing_solid_steel"), GTCEu.id("block/multiblock/implosion_compressor"))
98+
.andThen(b -> b.addDynamicRenderer(() -> GTDynamicRenders.makeGrowingPlantRender(List.of(new Vector3f(0, 1, -1))))))
11799
.register();
118100
```
119101

0 commit comments

Comments
 (0)