@@ -223,12 +223,19 @@ sourceSets {
|
|||||||
include 'appeng/block/grindstone/**'
|
include 'appeng/block/grindstone/**'
|
||||||
include 'appeng/tile/grindstone/**'
|
include 'appeng/tile/grindstone/**'
|
||||||
include 'appeng/container/implementations/ContainerGrinder.java'
|
include 'appeng/container/implementations/ContainerGrinder.java'
|
||||||
|
include 'appeng/recipes/conditions/**'
|
||||||
|
include 'appeng/recipes/game/DisassembleRecipe.java'
|
||||||
|
include 'appeng/recipes/ingredients/**'
|
||||||
|
include 'appeng/forge/data/**'
|
||||||
include 'appeng/client/render/tesr/CrankTESR.java'
|
include 'appeng/client/render/tesr/CrankTESR.java'
|
||||||
include 'appeng/client/render/FacingToRotation.java'
|
include 'appeng/client/render/FacingToRotation.java'
|
||||||
include 'appeng/client/gui/implementations/GuiGrinder.java'
|
include 'appeng/client/gui/implementations/GuiGrinder.java'
|
||||||
}
|
}
|
||||||
compileClasspath += sourceSets.api.output
|
compileClasspath += sourceSets.api.output
|
||||||
runtimeClasspath += sourceSets.api.output
|
runtimeClasspath += sourceSets.api.output
|
||||||
|
resources {
|
||||||
|
srcDir 'src/generated/resources'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
test {
|
test {
|
||||||
compileClasspath += sourceSets.api.output
|
compileClasspath += sourceSets.api.output
|
||||||
|
|||||||
@@ -25,9 +25,11 @@ package appeng.api.definitions;
|
|||||||
|
|
||||||
|
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
import javax.annotation.Nonnull;
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
|
import appeng.api.features.AEFeature;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
|
||||||
@@ -60,7 +62,7 @@ public interface IItemDefinition extends IComparableDefinition
|
|||||||
ItemStack stack( int stackSize );
|
ItemStack stack( int stackSize );
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return <tt>true</tt> if definition is enabled
|
* @return an immutable set of the features of this item
|
||||||
*/
|
*/
|
||||||
boolean isEnabled();
|
Set<AEFeature> features();
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -16,7 +16,7 @@
|
|||||||
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
* along with Applied Energistics 2. If not, see <http://www.gnu.org/licenses/lgpl>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package appeng.core.features;
|
package appeng.api.features;
|
||||||
|
|
||||||
|
|
||||||
public enum AEFeature
|
public enum AEFeature
|
||||||
@@ -39,18 +39,6 @@ import appeng.api.recipes.ISubItemResolver;
|
|||||||
*/
|
*/
|
||||||
public interface IRecipeHandlerRegistry
|
public interface IRecipeHandlerRegistry
|
||||||
{
|
{
|
||||||
|
|
||||||
/**
|
|
||||||
* Add a new Recipe Handler to the parser.
|
|
||||||
*
|
|
||||||
* MUST BE CALLED IN PRE-INIT
|
|
||||||
*
|
|
||||||
* @param name name of crafthandler
|
|
||||||
* @param handler class of crafthandler
|
|
||||||
*/
|
|
||||||
@Deprecated
|
|
||||||
void addNewCraftHandler( String name, Class<? extends ICraftHandler> handler );
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Add a new resolver to the parser.
|
* Add a new resolver to the parser.
|
||||||
*
|
*
|
||||||
@@ -60,21 +48,6 @@ public interface IRecipeHandlerRegistry
|
|||||||
*/
|
*/
|
||||||
void addNewSubItemResolver( ISubItemResolver sir );
|
void addNewSubItemResolver( ISubItemResolver sir );
|
||||||
|
|
||||||
/**
|
|
||||||
* @param name name of crafting handler
|
|
||||||
*
|
|
||||||
* @return A recipe handler by name, returns null on failure.
|
|
||||||
*/
|
|
||||||
@Nullable
|
|
||||||
@Deprecated
|
|
||||||
ICraftHandler getCraftHandlerFor( String name );
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @return a new recipe handler, which can be used to parse, and read recipe files.
|
|
||||||
*/
|
|
||||||
@Deprecated
|
|
||||||
IRecipeHandler createNewRecipehandler();
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* resolve sub items by name.
|
* resolve sub items by name.
|
||||||
*
|
*
|
||||||
|
|||||||
+48
@@ -0,0 +1,48 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:alternatives",
|
||||||
|
"children": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:match_tool",
|
||||||
|
"predicate": {
|
||||||
|
"enchantments": [
|
||||||
|
{
|
||||||
|
"enchantment": "minecraft:silk_touch",
|
||||||
|
"levels": {
|
||||||
|
"min": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"name": "appliedenergistics2:charged_quartz_ore"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"functions": [
|
||||||
|
{
|
||||||
|
"function": "minecraft:apply_bonus",
|
||||||
|
"enchantment": "minecraft:fortune",
|
||||||
|
"formula": "minecraft:ore_drops"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"function": "minecraft:explosion_decay"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"name": "minecraft:lapis_lazuli"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:chiseled_quartz_block"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:chiseled_quartz_slab"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:chiseled_quartz_stairs"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:fluix_block"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:fluix_slab"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:fluix_stairs"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block"
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:quartz_block"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:quartz_fixture"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:quartz_glass"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:alternatives",
|
||||||
|
"children": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:match_tool",
|
||||||
|
"predicate": {
|
||||||
|
"enchantments": [
|
||||||
|
{
|
||||||
|
"enchantment": "minecraft:silk_touch",
|
||||||
|
"levels": {
|
||||||
|
"min": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"name": "appliedenergistics2:quartz_ore"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"functions": [
|
||||||
|
{
|
||||||
|
"function": "minecraft:apply_bonus",
|
||||||
|
"enchantment": "minecraft:fortune",
|
||||||
|
"formula": "minecraft:ore_drops"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"function": "minecraft:explosion_decay"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"name": "minecraft:quartz"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:quartz_pillar"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:quartz_pillar_slab"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:quartz_pillar_stairs"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:quartz_slab"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:quartz_stairs"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:quartz_vibrant_glass"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:sky_stone_block"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:sky_stone_brick"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:sky_stone_brick_slab"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:sky_stone_brick_stairs"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:sky_stone_chest"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:sky_stone_slab"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:sky_stone_small_brick"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:sky_stone_small_brick_slab"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:sky_stone_small_brick_stairs"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:sky_stone_stairs"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:smooth_sky_stone_block"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:smooth_sky_stone_chest"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:smooth_sky_stone_slab"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"type": "minecraft:block",
|
||||||
|
"pools": [
|
||||||
|
{
|
||||||
|
"name": "main",
|
||||||
|
"rolls": 1,
|
||||||
|
"entries": [
|
||||||
|
{
|
||||||
|
"type": "minecraft:item",
|
||||||
|
"name": "appliedenergistics2:smooth_sky_stone_stairs"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"condition": "minecraft:survives_explosion"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"CERTUS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:chiseled_quartz_block"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:chiseled_quartz_slab",
|
||||||
|
"count": 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"FLUIX",
|
||||||
|
"DECORATIVE_BLOCKS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:fluix_block"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:fluix_slab",
|
||||||
|
"count": 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"CERTUS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:quartz_block"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:quartz_slab",
|
||||||
|
"count": 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"CERTUS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:quartz_pillar"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:quartz_pillar_slab",
|
||||||
|
"count": 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"SKY_STONE",
|
||||||
|
"DECORATIVE_BLOCKS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_block"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:sky_stone_slab",
|
||||||
|
"count": 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"SKY_STONE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_brick"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:sky_stone_brick_slab",
|
||||||
|
"count": 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"SKY_STONE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_small_brick"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:sky_stone_small_brick_slab",
|
||||||
|
"count": 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"SKY_STONE",
|
||||||
|
"DECORATIVE_BLOCKS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:smooth_sky_stone_block"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:smooth_sky_stone_slab",
|
||||||
|
"count": 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+31
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"CERTUS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:chiseled_quartz_block"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:chiseled_quartz_slab",
|
||||||
|
"count": 6
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"FLUIX",
|
||||||
|
"DECORATIVE_BLOCKS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:fluix_block"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:fluix_slab",
|
||||||
|
"count": 6
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"CERTUS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:quartz_block"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:quartz_slab",
|
||||||
|
"count": 6
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"CERTUS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:quartz_pillar"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:quartz_pillar_slab",
|
||||||
|
"count": 6
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"SKY_STONE",
|
||||||
|
"DECORATIVE_BLOCKS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_block"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_slab",
|
||||||
|
"count": 6
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"SKY_STONE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_brick"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_brick_slab",
|
||||||
|
"count": 6
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+31
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"SKY_STONE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_small_brick"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_small_brick_slab",
|
||||||
|
"count": 6
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+31
@@ -0,0 +1,31 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"SKY_STONE",
|
||||||
|
"DECORATIVE_BLOCKS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:smooth_sky_stone_block"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:smooth_sky_stone_slab",
|
||||||
|
"count": 6
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"CERTUS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:chiseled_quartz_block"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:chiseled_quartz_stairs",
|
||||||
|
"count": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"FLUIX",
|
||||||
|
"DECORATIVE_BLOCKS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:fluix_block"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:fluix_stairs",
|
||||||
|
"count": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"CERTUS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:quartz_block"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:quartz_stairs",
|
||||||
|
"count": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"CERTUS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:quartz_pillar"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:quartz_pillar_stairs",
|
||||||
|
"count": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"SKY_STONE",
|
||||||
|
"DECORATIVE_BLOCKS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_block"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:sky_stone_stairs",
|
||||||
|
"count": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"SKY_STONE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_brick"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:sky_stone_brick_stairs",
|
||||||
|
"count": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"SKY_STONE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_small_brick"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:sky_stone_small_brick_stairs",
|
||||||
|
"count": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+24
@@ -0,0 +1,24 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"SKY_STONE",
|
||||||
|
"DECORATIVE_BLOCKS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:stonecutting",
|
||||||
|
"ingredient": {
|
||||||
|
"item": "appliedenergistics2:smooth_sky_stone_block"
|
||||||
|
},
|
||||||
|
"result": "appliedenergistics2:smooth_sky_stone_stairs",
|
||||||
|
"count": 1
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+33
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"CERTUS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"# ",
|
||||||
|
"## ",
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:chiseled_quartz_block"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:chiseled_quartz_stairs",
|
||||||
|
"count": 4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"FLUIX",
|
||||||
|
"DECORATIVE_BLOCKS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"# ",
|
||||||
|
"## ",
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:fluix_block"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:fluix_stairs",
|
||||||
|
"count": 4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"CERTUS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"# ",
|
||||||
|
"## ",
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:quartz_block"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:quartz_stairs",
|
||||||
|
"count": 4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"CERTUS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"# ",
|
||||||
|
"## ",
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:quartz_pillar"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:quartz_pillar_stairs",
|
||||||
|
"count": 4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"SKY_STONE",
|
||||||
|
"DECORATIVE_BLOCKS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"# ",
|
||||||
|
"## ",
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_block"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_stairs",
|
||||||
|
"count": 4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"SKY_STONE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"# ",
|
||||||
|
"## ",
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_brick"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_brick_stairs",
|
||||||
|
"count": 4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+33
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"DECORATIVE_BLOCKS",
|
||||||
|
"SKY_STONE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"# ",
|
||||||
|
"## ",
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_small_brick"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:sky_stone_small_brick_stairs",
|
||||||
|
"count": 4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+33
@@ -0,0 +1,33 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"SKY_STONE",
|
||||||
|
"DECORATIVE_BLOCKS"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"# ",
|
||||||
|
"## ",
|
||||||
|
"###"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"#": {
|
||||||
|
"item": "appliedenergistics2:smooth_sky_stone_block"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:smooth_sky_stone_stairs",
|
||||||
|
"count": 4
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"NETHER_QUARTZ_TOOLS",
|
||||||
|
"QUARTZ_AXE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"XX ",
|
||||||
|
"X/ ",
|
||||||
|
" / "
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"/": {
|
||||||
|
"tag": "forge:rods/wooden"
|
||||||
|
},
|
||||||
|
"X": {
|
||||||
|
"tag": "forge:gems/quartz"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:nether_quartz_axe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+38
@@ -0,0 +1,38 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"NETHER_QUARTZ_TOOLS",
|
||||||
|
"QUARTZ_KNIFE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
" /",
|
||||||
|
"I/ ",
|
||||||
|
"XX "
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"/": {
|
||||||
|
"tag": "forge:rods/wooden"
|
||||||
|
},
|
||||||
|
"I": {
|
||||||
|
"tag": "forge:ingots/iron"
|
||||||
|
},
|
||||||
|
"X": {
|
||||||
|
"tag": "forge:gems/quartz"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:nether_quartz_cutting_knife"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"NETHER_QUARTZ_TOOLS",
|
||||||
|
"QUARTZ_HOE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"XX ",
|
||||||
|
" / ",
|
||||||
|
" / "
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"/": {
|
||||||
|
"tag": "forge:rods/wooden"
|
||||||
|
},
|
||||||
|
"X": {
|
||||||
|
"tag": "forge:gems/quartz"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:nether_quartz_hoe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+35
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"NETHER_QUARTZ_TOOLS",
|
||||||
|
"QUARTZ_PICKAXE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"XXX",
|
||||||
|
" / ",
|
||||||
|
" / "
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"/": {
|
||||||
|
"tag": "forge:rods/wooden"
|
||||||
|
},
|
||||||
|
"X": {
|
||||||
|
"tag": "forge:gems/quartz"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:nether_quartz_pickaxe"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+35
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"NETHER_QUARTZ_TOOLS",
|
||||||
|
"QUARTZ_SPADE"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
" X ",
|
||||||
|
" / ",
|
||||||
|
" / "
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"/": {
|
||||||
|
"tag": "forge:rods/wooden"
|
||||||
|
},
|
||||||
|
"X": {
|
||||||
|
"tag": "forge:gems/quartz"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:nether_quartz_spade"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+35
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"NETHER_QUARTZ_TOOLS",
|
||||||
|
"QUARTZ_SWORD"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
" X ",
|
||||||
|
" X ",
|
||||||
|
" / "
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"/": {
|
||||||
|
"tag": "forge:rods/wooden"
|
||||||
|
},
|
||||||
|
"X": {
|
||||||
|
"tag": "forge:gems/quartz"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:nether_quartz_sword"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
+32
@@ -0,0 +1,32 @@
|
|||||||
|
{
|
||||||
|
"type": "forge:conditional",
|
||||||
|
"recipes": [
|
||||||
|
{
|
||||||
|
"conditions": [
|
||||||
|
{
|
||||||
|
"features": [
|
||||||
|
"NETHER_QUARTZ_TOOLS",
|
||||||
|
"QUARTZ_WRENCH"
|
||||||
|
],
|
||||||
|
"type": "appliedenergistics2:feature"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"recipe": {
|
||||||
|
"type": "minecraft:crafting_shaped",
|
||||||
|
"pattern": [
|
||||||
|
"X X",
|
||||||
|
" X ",
|
||||||
|
"X X"
|
||||||
|
],
|
||||||
|
"key": {
|
||||||
|
"X": {
|
||||||
|
"tag": "forge:gems/quartz"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"result": {
|
||||||
|
"item": "appliedenergistics2:nether_quartz_wrench"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
@@ -22,10 +22,9 @@ package appeng.block.crafting;
|
|||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
|
||||||
import appeng.api.AEApi;
|
|
||||||
import appeng.block.AEBaseBlockItem;
|
import appeng.block.AEBaseBlockItem;
|
||||||
import appeng.core.AEConfig;
|
import appeng.core.AEConfig;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
|
|
||||||
|
|
||||||
public class ItemCraftingStorage extends AEBaseBlockItem
|
public class ItemCraftingStorage extends AEBaseBlockItem
|
||||||
|
|||||||
@@ -28,14 +28,10 @@ import java.util.function.Supplier;
|
|||||||
|
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
|
|
||||||
import appeng.bootstrap.components.ITileEntityRegistrationComponent;
|
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.client.renderer.model.ModelResourceLocation;
|
|
||||||
import net.minecraft.item.BlockItem;
|
import net.minecraft.item.BlockItem;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemGroup;
|
import net.minecraft.item.ItemGroup;
|
||||||
import net.minecraft.tileentity.TileEntityType;
|
|
||||||
import net.minecraft.util.ResourceLocation;
|
|
||||||
import net.minecraftforge.api.distmarker.Dist;
|
import net.minecraftforge.api.distmarker.Dist;
|
||||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||||
|
|
||||||
@@ -45,16 +41,12 @@ import appeng.block.AEBaseBlockItem;
|
|||||||
import appeng.block.AEBaseTileBlock;
|
import appeng.block.AEBaseTileBlock;
|
||||||
import appeng.bootstrap.components.IBlockRegistrationComponent;
|
import appeng.bootstrap.components.IBlockRegistrationComponent;
|
||||||
import appeng.bootstrap.components.IItemRegistrationComponent;
|
import appeng.bootstrap.components.IItemRegistrationComponent;
|
||||||
import appeng.bootstrap.components.IPreInitComponent;
|
|
||||||
import appeng.bootstrap.definitions.TileEntityDefinition;
|
import appeng.bootstrap.definitions.TileEntityDefinition;
|
||||||
import appeng.core.AppEng;
|
import appeng.core.AppEng;
|
||||||
import appeng.core.CreativeTab;
|
import appeng.core.CreativeTab;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.core.features.ActivityState;
|
|
||||||
import appeng.core.features.BlockDefinition;
|
import appeng.core.features.BlockDefinition;
|
||||||
import appeng.core.features.BlockStackSrc;
|
|
||||||
import appeng.core.features.TileDefinition;
|
import appeng.core.features.TileDefinition;
|
||||||
import appeng.tile.AEBaseTile;
|
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
|
|
||||||
@@ -200,11 +192,11 @@ class BlockDefinitionBuilder implements IBlockBuilder
|
|||||||
|
|
||||||
if( block instanceof AEBaseTileBlock )
|
if( block instanceof AEBaseTileBlock )
|
||||||
{
|
{
|
||||||
return (T) new TileDefinition( this.registryName, (AEBaseTileBlock) block, item );
|
return (T) new TileDefinition( this.registryName, (AEBaseTileBlock) block, item, features );
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
return (T) new BlockDefinition( this.registryName, block, item );
|
return (T) new BlockDefinition( this.registryName, block, item, features );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ import net.minecraftforge.api.distmarker.OnlyIn;
|
|||||||
import appeng.api.definitions.IItemDefinition;
|
import appeng.api.definitions.IItemDefinition;
|
||||||
import appeng.api.util.AEColor;
|
import appeng.api.util.AEColor;
|
||||||
import appeng.api.util.AEColoredItemDefinition;
|
import appeng.api.util.AEColoredItemDefinition;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.core.features.ActivityState;
|
import appeng.core.features.ActivityState;
|
||||||
import appeng.core.features.ColoredItemDefinition;
|
import appeng.core.features.ColoredItemDefinition;
|
||||||
import appeng.core.features.ItemStackSrc;
|
import appeng.core.features.ItemStackSrc;
|
||||||
@@ -113,7 +113,7 @@ public class FeatureFactory
|
|||||||
{
|
{
|
||||||
for( final AEColor color : AEColor.VALID_COLORS )
|
for( final AEColor color : AEColor.VALID_COLORS )
|
||||||
{
|
{
|
||||||
final ActivityState state = ActivityState.from( target.isEnabled() );
|
final ActivityState state = ActivityState.from( true );
|
||||||
|
|
||||||
definition.add( color, new ItemStackSrc( targetItem, state ) );
|
definition.add( color, new ItemStackSrc( targetItem, state ) );
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,16 +20,14 @@ package appeng.bootstrap;
|
|||||||
|
|
||||||
|
|
||||||
import java.util.function.BiFunction;
|
import java.util.function.BiFunction;
|
||||||
import java.util.function.Function;
|
|
||||||
|
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.client.renderer.RenderType;
|
|
||||||
import net.minecraft.item.BlockItem;
|
import net.minecraft.item.BlockItem;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
|
|
||||||
import appeng.api.definitions.IBlockDefinition;
|
import appeng.api.definitions.IBlockDefinition;
|
||||||
import appeng.bootstrap.definitions.TileEntityDefinition;
|
import appeng.bootstrap.definitions.TileEntityDefinition;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
|
|
||||||
|
|
||||||
public interface IBlockBuilder
|
public interface IBlockBuilder
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ import net.minecraft.dispenser.IDispenseItemBehavior;
|
|||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemGroup;
|
import net.minecraft.item.ItemGroup;
|
||||||
|
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.core.features.ItemDefinition;
|
import appeng.core.features.ItemDefinition;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -30,15 +30,12 @@ import net.minecraft.block.DispenserBlock;
|
|||||||
import net.minecraft.dispenser.IDispenseItemBehavior;
|
import net.minecraft.dispenser.IDispenseItemBehavior;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemGroup;
|
import net.minecraft.item.ItemGroup;
|
||||||
import net.minecraftforge.api.distmarker.Dist;
|
|
||||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
|
||||||
|
|
||||||
import appeng.bootstrap.components.IItemRegistrationComponent;
|
import appeng.bootstrap.components.IItemRegistrationComponent;
|
||||||
import appeng.bootstrap.components.IPostInitComponent;
|
import appeng.bootstrap.components.IPostInitComponent;
|
||||||
import appeng.core.AEConfig;
|
|
||||||
import appeng.core.AppEng;
|
import appeng.core.AppEng;
|
||||||
import appeng.core.CreativeTab;
|
import appeng.core.CreativeTab;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.core.features.ItemDefinition;
|
import appeng.core.features.ItemDefinition;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
@@ -134,7 +131,7 @@ class ItemDefinitionBuilder implements IItemBuilder
|
|||||||
Item item = this.itemSupplier.get();
|
Item item = this.itemSupplier.get();
|
||||||
item.setRegistryName( AppEng.MOD_ID, this.registryName );
|
item.setRegistryName( AppEng.MOD_ID, this.registryName );
|
||||||
|
|
||||||
ItemDefinition definition = new ItemDefinition( this.registryName, item );
|
ItemDefinition definition = new ItemDefinition( this.registryName, item, features );
|
||||||
|
|
||||||
// Register all extra handlers
|
// Register all extra handlers
|
||||||
this.boostrapComponents.forEach( component -> this.factory.addBootstrapComponent( component.apply( item ) ) );
|
this.boostrapComponents.forEach( component -> this.factory.addBootstrapComponent( component.apply( item ) ) );
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import appeng.bootstrap.components.IClientSetupComponent;
|
|||||||
import appeng.bootstrap.components.ITileEntityRegistrationComponent;
|
import appeng.bootstrap.components.ITileEntityRegistrationComponent;
|
||||||
import appeng.bootstrap.definitions.TileEntityDefinition;
|
import appeng.bootstrap.definitions.TileEntityDefinition;
|
||||||
import appeng.core.AppEng;
|
import appeng.core.AppEng;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.core.features.ActivityState;
|
import appeng.core.features.ActivityState;
|
||||||
import appeng.core.features.BlockStackSrc;
|
import appeng.core.features.BlockStackSrc;
|
||||||
import appeng.tile.AEBaseTile;
|
import appeng.tile.AEBaseTile;
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ package appeng.core;
|
|||||||
import appeng.api.config.*;
|
import appeng.api.config.*;
|
||||||
import appeng.api.util.IConfigManager;
|
import appeng.api.util.IConfigManager;
|
||||||
import appeng.api.util.IConfigurableObject;
|
import appeng.api.util.IConfigurableObject;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.core.settings.TickRates;
|
import appeng.core.settings.TickRates;
|
||||||
import appeng.util.ConfigManager;
|
import appeng.util.ConfigManager;
|
||||||
import appeng.util.IConfigManagerHost;
|
import appeng.util.IConfigManagerHost;
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ import org.apache.logging.log4j.message.ParameterizedMessage;
|
|||||||
|
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
|
|
||||||
|
|
||||||
public final class AELog
|
public final class AELog
|
||||||
|
|||||||
@@ -21,26 +21,21 @@ package appeng.core;
|
|||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
|
||||||
import appeng.bootstrap.components.IBlockRegistrationComponent;
|
|
||||||
import appeng.bootstrap.components.IClientSetupComponent;
|
import appeng.bootstrap.components.IClientSetupComponent;
|
||||||
import appeng.client.ClientHelper;
|
import appeng.client.ClientHelper;
|
||||||
import appeng.client.render.model.GlassModelLoader;
|
import appeng.client.render.model.GlassModelLoader;
|
||||||
import appeng.core.features.AEFeature;
|
|
||||||
import appeng.server.ServerHelper;
|
import appeng.server.ServerHelper;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.entity.EntityType;
|
import net.minecraft.entity.EntityType;
|
||||||
import net.minecraft.inventory.container.ContainerType;
|
import net.minecraft.inventory.container.ContainerType;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
|
import net.minecraft.item.crafting.IRecipeSerializer;
|
||||||
import net.minecraft.particles.ParticleType;
|
import net.minecraft.particles.ParticleType;
|
||||||
import net.minecraft.stats.StatType;
|
|
||||||
import net.minecraft.tileentity.TileEntityType;
|
import net.minecraft.tileentity.TileEntityType;
|
||||||
import net.minecraft.util.ResourceLocation;
|
import net.minecraft.util.ResourceLocation;
|
||||||
import net.minecraftforge.api.distmarker.Dist;
|
import net.minecraftforge.api.distmarker.Dist;
|
||||||
import net.minecraftforge.api.distmarker.OnlyIn;
|
import net.minecraftforge.api.distmarker.OnlyIn;
|
||||||
import net.minecraftforge.client.model.ModelLoaderRegistry;
|
import net.minecraftforge.client.model.ModelLoaderRegistry;
|
||||||
import net.minecraftforge.common.MinecraftForge;
|
|
||||||
import net.minecraftforge.event.RegistryEvent;
|
|
||||||
import net.minecraftforge.eventbus.api.Event;
|
|
||||||
import net.minecraftforge.eventbus.api.IEventBus;
|
import net.minecraftforge.eventbus.api.IEventBus;
|
||||||
import net.minecraftforge.fml.CrashReportExtender;
|
import net.minecraftforge.fml.CrashReportExtender;
|
||||||
import net.minecraftforge.fml.DistExecutor;
|
import net.minecraftforge.fml.DistExecutor;
|
||||||
@@ -54,8 +49,7 @@ import appeng.services.export.ExportConfig;
|
|||||||
import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
|
import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
|
||||||
import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
|
import net.minecraftforge.fml.event.lifecycle.FMLCommonSetupEvent;
|
||||||
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
|
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
|
||||||
import net.minecraftforge.fml.loading.FMLEnvironment;
|
|
||||||
import net.minecraftforge.registries.IForgeRegistry;
|
|
||||||
|
|
||||||
@Mod(AppEng.MOD_ID)
|
@Mod(AppEng.MOD_ID)
|
||||||
public final class AppEng
|
public final class AppEng
|
||||||
@@ -109,6 +103,7 @@ public final class AppEng
|
|||||||
modEventBus.addGenericListener(ParticleType.class, registration::registerParticleTypes);
|
modEventBus.addGenericListener(ParticleType.class, registration::registerParticleTypes);
|
||||||
modEventBus.addGenericListener(TileEntityType.class, registration::registerTileEntities);
|
modEventBus.addGenericListener(TileEntityType.class, registration::registerTileEntities);
|
||||||
modEventBus.addGenericListener(ContainerType.class, registration::registerContainerTypes);
|
modEventBus.addGenericListener(ContainerType.class, registration::registerContainerTypes);
|
||||||
|
modEventBus.addGenericListener(IRecipeSerializer.class, registration::registerRecipeSerializers);
|
||||||
modEventBus.addListener(registration::registerParticleFactories);
|
modEventBus.addListener(registration::registerParticleFactories);
|
||||||
modEventBus.addListener(registration::registerTextures);
|
modEventBus.addListener(registration::registerTextures);
|
||||||
|
|
||||||
|
|||||||
@@ -31,6 +31,9 @@ import appeng.client.render.tesr.SkyChestTESR;
|
|||||||
import appeng.container.implementations.ContainerGrinder;
|
import appeng.container.implementations.ContainerGrinder;
|
||||||
import appeng.container.implementations.ContainerSkyChest;
|
import appeng.container.implementations.ContainerSkyChest;
|
||||||
import appeng.core.stats.AeStats;
|
import appeng.core.stats.AeStats;
|
||||||
|
import appeng.recipes.conditions.FeaturesEnabled;
|
||||||
|
import appeng.recipes.game.DisassembleRecipe;
|
||||||
|
import appeng.recipes.ingredients.PartIngredientSerializer;
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.client.Minecraft;
|
import net.minecraft.client.Minecraft;
|
||||||
import net.minecraft.client.gui.ScreenManager;
|
import net.minecraft.client.gui.ScreenManager;
|
||||||
@@ -39,6 +42,7 @@ import net.minecraft.client.renderer.model.ModelResourceLocation;
|
|||||||
import net.minecraft.entity.EntityType;
|
import net.minecraft.entity.EntityType;
|
||||||
import net.minecraft.inventory.container.ContainerType;
|
import net.minecraft.inventory.container.ContainerType;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
|
import net.minecraft.item.crafting.IRecipeSerializer;
|
||||||
import net.minecraft.particles.ParticleType;
|
import net.minecraft.particles.ParticleType;
|
||||||
import net.minecraft.tileentity.TileEntityType;
|
import net.minecraft.tileentity.TileEntityType;
|
||||||
import net.minecraft.util.ResourceLocation;
|
import net.minecraft.util.ResourceLocation;
|
||||||
@@ -48,9 +52,11 @@ import net.minecraftforge.client.event.ModelRegistryEvent;
|
|||||||
import net.minecraftforge.client.event.ParticleFactoryRegisterEvent;
|
import net.minecraftforge.client.event.ParticleFactoryRegisterEvent;
|
||||||
import net.minecraftforge.client.event.TextureStitchEvent;
|
import net.minecraftforge.client.event.TextureStitchEvent;
|
||||||
import net.minecraftforge.client.model.ModelLoaderRegistry;
|
import net.minecraftforge.client.model.ModelLoaderRegistry;
|
||||||
|
import net.minecraftforge.common.crafting.CraftingHelper;
|
||||||
import net.minecraftforge.common.extensions.IForgeContainerType;
|
import net.minecraftforge.common.extensions.IForgeContainerType;
|
||||||
import net.minecraftforge.event.RegistryEvent;
|
import net.minecraftforge.event.RegistryEvent;
|
||||||
import net.minecraftforge.eventbus.api.GenericEvent;
|
import net.minecraftforge.eventbus.api.GenericEvent;
|
||||||
|
import net.minecraftforge.eventbus.api.SubscribeEvent;
|
||||||
import net.minecraftforge.fml.DistExecutor;
|
import net.minecraftforge.fml.DistExecutor;
|
||||||
import net.minecraftforge.fml.loading.FMLEnvironment;
|
import net.minecraftforge.fml.loading.FMLEnvironment;
|
||||||
import net.minecraftforge.registries.ForgeRegistryEntry;
|
import net.minecraftforge.registries.ForgeRegistryEntry;
|
||||||
@@ -252,35 +258,24 @@ final class Registration
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// @SubscribeEvent
|
public void registerRecipeSerializers( RegistryEvent.Register<IRecipeSerializer<?>> event )
|
||||||
// public void registerRecipes( RegistryEvent.Register<IRecipe> event )
|
{
|
||||||
// {
|
IForgeRegistry<IRecipeSerializer<?>> r = event.getRegistry();
|
||||||
// final IForgeRegistry<IRecipe> registry = event.getRegistry();
|
|
||||||
//
|
final ApiDefinitions definitions = Api.INSTANCE.definitions();
|
||||||
// final Api api = Api.INSTANCE;
|
|
||||||
// final ApiDefinitions definitions = api.definitions();
|
r.registerAll(
|
||||||
// final Dist dist = FMLCommonHandler.instance().getEffectiveSide();
|
DisassembleRecipe.SERIALIZER
|
||||||
//
|
// FacadeRecipe.getSerializer( (ItemFacade) definitions.items().facade().item() ) FIXME reimplement facades
|
||||||
// if( AEConfig.instance().isFeatureEnabled( AEFeature.ENABLE_DISASSEMBLY_CRAFTING ) )
|
// this.factories.put( new ResourceLocation( AppEng.MOD_ID, "inscriber" ), new InscriberHandler() ); FIXME re-implement machine recipes
|
||||||
// {
|
// this.factories.put( new ResourceLocation( AppEng.MOD_ID, "smelt" ), new SmeltingHandler() );
|
||||||
// DisassembleRecipe r = new DisassembleRecipe();
|
// this.factories.put( new ResourceLocation( AppEng.MOD_ID, "grinder" ), new GrinderHandler() );
|
||||||
// registry.register( r.setRegistryName( AppEng.MOD_ID.toLowerCase(), "disassemble" ) );
|
);
|
||||||
// }
|
|
||||||
//
|
CraftingHelper.register( FeaturesEnabled.Serializer.INSTANCE );
|
||||||
// if( AEConfig.instance().isFeatureEnabled( AEFeature.ENABLE_FACADE_CRAFTING ) )
|
|
||||||
// {
|
CraftingHelper.register( new ResourceLocation( AppEng.MOD_ID, "part" ), PartIngredientSerializer.INSTANCE );
|
||||||
// definitions.items().facade().maybeItem().ifPresent( facadeItem ->
|
}
|
||||||
// {
|
|
||||||
// FacadeRecipe f = new FacadeRecipe( (ItemFacade) facadeItem );
|
|
||||||
// registry.register( f.setRegistryName( AppEng.MOD_ID.toLowerCase(), "facade" ) );
|
|
||||||
// } );
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// definitions.getRegistry().getBootstrapComponents( IRecipeRegistrationComponent.class ).forEachRemaining( b -> b.recipeRegistration( side, registry ) );
|
|
||||||
//
|
|
||||||
// final AERecipeLoader ldr = new AERecipeLoader();
|
|
||||||
// ldr.loadProcessingRecipes();
|
|
||||||
// }
|
|
||||||
|
|
||||||
|
|
||||||
public void registerEntities( RegistryEvent.Register<EntityType<?>> event )
|
public void registerEntities( RegistryEvent.Register<EntityType<?>> event )
|
||||||
|
|||||||
@@ -31,14 +31,17 @@ import appeng.bootstrap.*;
|
|||||||
import appeng.bootstrap.definitions.TileEntityDefinition;
|
import appeng.bootstrap.definitions.TileEntityDefinition;
|
||||||
import appeng.client.render.tesr.CrankTESR;
|
import appeng.client.render.tesr.CrankTESR;
|
||||||
import appeng.client.render.tesr.SkyChestTESR;
|
import appeng.client.render.tesr.SkyChestTESR;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.core.features.registries.PartModels;
|
import appeng.core.features.registries.PartModels;
|
||||||
import appeng.decorative.AEDecorativeBlock;
|
import appeng.decorative.AEDecorativeBlock;
|
||||||
import appeng.decorative.solid.*;
|
import appeng.decorative.solid.*;
|
||||||
import appeng.tile.grindstone.TileCrank;
|
import appeng.tile.grindstone.TileCrank;
|
||||||
import appeng.tile.grindstone.TileGrinder;
|
import appeng.tile.grindstone.TileGrinder;
|
||||||
import appeng.tile.storage.TileSkyChest;
|
import appeng.tile.storage.TileSkyChest;
|
||||||
import net.minecraft.block.*;
|
import net.minecraft.block.Block;
|
||||||
|
import net.minecraft.block.SlabBlock;
|
||||||
|
import net.minecraft.block.SoundType;
|
||||||
|
import net.minecraft.block.StairsBlock;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.client.renderer.RenderType;
|
import net.minecraft.client.renderer.RenderType;
|
||||||
import net.minecraftforge.api.distmarker.Dist;
|
import net.minecraftforge.api.distmarker.Dist;
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ import appeng.api.definitions.IItemDefinition;
|
|||||||
import appeng.api.definitions.IItems;
|
import appeng.api.definitions.IItems;
|
||||||
import appeng.api.util.AEColoredItemDefinition;
|
import appeng.api.util.AEColoredItemDefinition;
|
||||||
import appeng.bootstrap.FeatureFactory;
|
import appeng.bootstrap.FeatureFactory;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.items.tools.quartz.*;
|
import appeng.items.tools.quartz.*;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -19,8 +19,9 @@
|
|||||||
package appeng.core.features;
|
package appeng.core.features;
|
||||||
|
|
||||||
|
|
||||||
import java.util.Optional;
|
import java.util.Set;
|
||||||
|
|
||||||
|
import appeng.api.features.AEFeature;
|
||||||
import com.google.common.base.Preconditions;
|
import com.google.common.base.Preconditions;
|
||||||
|
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
@@ -30,7 +31,6 @@ import net.minecraft.util.math.BlockPos;
|
|||||||
import net.minecraft.world.IBlockReader;
|
import net.minecraft.world.IBlockReader;
|
||||||
|
|
||||||
import appeng.api.definitions.IBlockDefinition;
|
import appeng.api.definitions.IBlockDefinition;
|
||||||
import net.minecraftforge.fml.RegistryObject;
|
|
||||||
|
|
||||||
|
|
||||||
public class BlockDefinition extends ItemDefinition implements IBlockDefinition
|
public class BlockDefinition extends ItemDefinition implements IBlockDefinition
|
||||||
@@ -39,9 +39,9 @@ public class BlockDefinition extends ItemDefinition implements IBlockDefinition
|
|||||||
|
|
||||||
private final BlockItem blockItem;
|
private final BlockItem blockItem;
|
||||||
|
|
||||||
public BlockDefinition( String registryName, Block block, BlockItem item )
|
public BlockDefinition( String registryName, Block block, BlockItem item, Set<AEFeature> features )
|
||||||
{
|
{
|
||||||
super( registryName, item );
|
super( registryName, item, features );
|
||||||
this.block = block;
|
this.block = block;
|
||||||
this.blockItem = item;
|
this.blockItem = item;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,10 +19,13 @@
|
|||||||
package appeng.core.features;
|
package appeng.core.features;
|
||||||
|
|
||||||
|
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
import javax.annotation.Nonnull;
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
|
import appeng.api.features.AEFeature;
|
||||||
import com.google.common.base.Preconditions;
|
import com.google.common.base.Preconditions;
|
||||||
|
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
@@ -71,9 +74,9 @@ public final class DamagedItemDefinition implements IItemDefinition
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isEnabled()
|
public Set<AEFeature> features()
|
||||||
{
|
{
|
||||||
return this.source.isPresent();
|
return Collections.emptySet();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -84,7 +87,7 @@ public final class DamagedItemDefinition implements IItemDefinition
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
return this.isEnabled() && comparableStack.getItem() == this.source.get().getItem();
|
return comparableStack.getItem() == this.source.get().getItem();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,13 +19,15 @@
|
|||||||
package appeng.core.features;
|
package appeng.core.features;
|
||||||
|
|
||||||
|
|
||||||
import java.util.Optional;
|
import java.util.Set;
|
||||||
|
|
||||||
import javax.annotation.Nonnull;
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
|
import appeng.api.features.AEFeature;
|
||||||
import com.google.common.base.Preconditions;
|
import com.google.common.base.Preconditions;
|
||||||
import com.google.common.base.Strings;
|
import com.google.common.base.Strings;
|
||||||
|
|
||||||
|
import com.google.common.collect.ImmutableSet;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
|
||||||
@@ -37,12 +39,14 @@ public class ItemDefinition implements IItemDefinition
|
|||||||
{
|
{
|
||||||
private final String identifier;
|
private final String identifier;
|
||||||
private final Item item;
|
private final Item item;
|
||||||
|
private final Set<AEFeature> features;
|
||||||
|
|
||||||
public ItemDefinition( String registryName, Item item )
|
public ItemDefinition( String registryName, Item item, Set<AEFeature> features )
|
||||||
{
|
{
|
||||||
Preconditions.checkArgument( !Strings.isNullOrEmpty( registryName ), "registryName" );
|
Preconditions.checkArgument( !Strings.isNullOrEmpty( registryName ), "registryName" );
|
||||||
this.identifier = registryName;
|
this.identifier = registryName;
|
||||||
this.item = item;
|
this.item = item;
|
||||||
|
this.features = ImmutableSet.copyOf(features);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nonnull
|
@Nonnull
|
||||||
@@ -65,10 +69,9 @@ public class ItemDefinition implements IItemDefinition
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isEnabled()
|
public Set<AEFeature> features()
|
||||||
{
|
{
|
||||||
// FIXME sadly we can only set this after registration
|
return features;
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -20,9 +20,11 @@ package appeng.core.features;
|
|||||||
|
|
||||||
|
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
import javax.annotation.Nonnull;
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
|
import appeng.api.features.AEFeature;
|
||||||
import net.minecraft.item.BlockItem;
|
import net.minecraft.item.BlockItem;
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
|
|
||||||
@@ -35,9 +37,9 @@ public final class TileDefinition extends BlockDefinition implements ITileDefini
|
|||||||
|
|
||||||
private final Optional<AEBaseTileBlock> block;
|
private final Optional<AEBaseTileBlock> block;
|
||||||
|
|
||||||
public TileDefinition( @Nonnull String registryName, AEBaseTileBlock block, BlockItem item )
|
public TileDefinition( @Nonnull String registryName, AEBaseTileBlock block, BlockItem item, Set<AEFeature> features )
|
||||||
{
|
{
|
||||||
super( registryName, block, item );
|
super( registryName, block, item, features );
|
||||||
this.block = Optional.ofNullable( block );
|
this.block = Optional.ofNullable( block );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -26,7 +26,6 @@ import net.minecraft.item.Items;
|
|||||||
|
|
||||||
import appeng.api.features.IMatterCannonAmmoRegistry;
|
import appeng.api.features.IMatterCannonAmmoRegistry;
|
||||||
import appeng.recipes.ores.IOreListener;
|
import appeng.recipes.ores.IOreListener;
|
||||||
import appeng.recipes.ores.OreDictionaryHandler;
|
|
||||||
|
|
||||||
|
|
||||||
public class MatterCannonAmmoRegistry implements IOreListener, IMatterCannonAmmoRegistry
|
public class MatterCannonAmmoRegistry implements IOreListener, IMatterCannonAmmoRegistry
|
||||||
|
|||||||
@@ -32,7 +32,6 @@ import appeng.api.recipes.ICraftHandler;
|
|||||||
import appeng.api.recipes.IRecipeHandler;
|
import appeng.api.recipes.IRecipeHandler;
|
||||||
import appeng.api.recipes.ISubItemResolver;
|
import appeng.api.recipes.ISubItemResolver;
|
||||||
import appeng.core.AELog;
|
import appeng.core.AELog;
|
||||||
import appeng.recipes.RecipeHandler;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -43,51 +42,14 @@ import appeng.recipes.RecipeHandler;
|
|||||||
*/
|
*/
|
||||||
public class RecipeHandlerRegistry implements IRecipeHandlerRegistry
|
public class RecipeHandlerRegistry implements IRecipeHandlerRegistry
|
||||||
{
|
{
|
||||||
private final Map<String, Class<? extends ICraftHandler>> handlers = new HashMap<>( 20 );
|
|
||||||
private final Collection<ISubItemResolver> resolvers = new ArrayList<>();
|
private final Collection<ISubItemResolver> resolvers = new ArrayList<>();
|
||||||
|
|
||||||
@Override
|
|
||||||
public void addNewCraftHandler( final String name, final Class<? extends ICraftHandler> handler )
|
|
||||||
{
|
|
||||||
this.handlers.put( name.toLowerCase( Locale.ENGLISH ), handler );
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addNewSubItemResolver( final ISubItemResolver sir )
|
public void addNewSubItemResolver( final ISubItemResolver sir )
|
||||||
{
|
{
|
||||||
this.resolvers.add( sir );
|
this.resolvers.add( sir );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nullable
|
|
||||||
@Override
|
|
||||||
public ICraftHandler getCraftHandlerFor( final String name )
|
|
||||||
{
|
|
||||||
final Class<? extends ICraftHandler> clz = this.handlers.get( name );
|
|
||||||
if( clz == null )
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
try
|
|
||||||
{
|
|
||||||
return clz.newInstance();
|
|
||||||
}
|
|
||||||
catch( final Throwable e )
|
|
||||||
{
|
|
||||||
AELog.error( "Error Caused when trying to construct " + clz.getName() );
|
|
||||||
AELog.debug( e );
|
|
||||||
|
|
||||||
this.handlers.put( name, null ); // clear it..
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public IRecipeHandler createNewRecipehandler()
|
|
||||||
{
|
|
||||||
return new RecipeHandler();
|
|
||||||
}
|
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
@Override
|
@Override
|
||||||
public Object resolveItem( final String nameSpace, final String itemName )
|
public Object resolveItem( final String nameSpace, final String itemName )
|
||||||
|
|||||||
@@ -42,7 +42,6 @@ import appeng.api.features.IInscriberRecipeBuilder;
|
|||||||
import appeng.core.AEConfig;
|
import appeng.core.AEConfig;
|
||||||
import appeng.core.AELog;
|
import appeng.core.AELog;
|
||||||
import appeng.recipes.ores.IOreListener;
|
import appeng.recipes.ores.IOreListener;
|
||||||
import appeng.recipes.ores.OreDictionaryHandler;
|
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -19,8 +19,6 @@
|
|||||||
package appeng.core.sync;
|
package appeng.core.sync;
|
||||||
|
|
||||||
|
|
||||||
import org.apache.commons.lang3.tuple.Pair;
|
|
||||||
|
|
||||||
import net.minecraft.entity.player.PlayerEntity;
|
import net.minecraft.entity.player.PlayerEntity;
|
||||||
import net.minecraft.network.IPacket;
|
import net.minecraft.network.IPacket;
|
||||||
import net.minecraft.network.PacketBuffer;
|
import net.minecraft.network.PacketBuffer;
|
||||||
@@ -28,7 +26,7 @@ import net.minecraftforge.fml.network.NetworkDirection;
|
|||||||
|
|
||||||
import appeng.core.AEConfig;
|
import appeng.core.AEConfig;
|
||||||
import appeng.core.AELog;
|
import appeng.core.AELog;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.core.sync.network.INetworkInfo;
|
import appeng.core.sync.network.INetworkInfo;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -32,13 +32,12 @@ import net.minecraft.util.math.BlockPos;
|
|||||||
import net.minecraft.util.math.MathHelper;
|
import net.minecraft.util.math.MathHelper;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
import appeng.api.AEApi;
|
|
||||||
import appeng.api.definitions.IMaterials;
|
import appeng.api.definitions.IMaterials;
|
||||||
import appeng.client.EffectType;
|
import appeng.client.EffectType;
|
||||||
import appeng.core.AEConfig;
|
import appeng.core.AEConfig;
|
||||||
import appeng.core.Api;
|
import appeng.core.Api;
|
||||||
import appeng.core.AppEng;
|
import appeng.core.AppEng;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ import appeng.api.implementations.tiles.ICrystalGrowthAccelerator;
|
|||||||
import appeng.client.EffectType;
|
import appeng.client.EffectType;
|
||||||
import appeng.core.AEConfig;
|
import appeng.core.AEConfig;
|
||||||
import appeng.core.AppEng;
|
import appeng.core.AppEng;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -30,11 +30,10 @@ import net.minecraft.util.DamageSource;
|
|||||||
import net.minecraft.util.math.AxisAlignedBB;
|
import net.minecraft.util.math.AxisAlignedBB;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
|
||||||
import appeng.api.AEApi;
|
|
||||||
import appeng.api.definitions.IMaterials;
|
import appeng.api.definitions.IMaterials;
|
||||||
import appeng.core.AEConfig;
|
import appeng.core.AEConfig;
|
||||||
import appeng.core.Api;
|
import appeng.core.Api;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.helpers.Reflected;
|
import appeng.helpers.Reflected;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
|
|||||||
@@ -42,11 +42,10 @@ import net.minecraft.world.Explosion.Mode;
|
|||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.fml.common.registry.IEntityAdditionalSpawnData;
|
import net.minecraftforge.fml.common.registry.IEntityAdditionalSpawnData;
|
||||||
|
|
||||||
import appeng.api.AEApi;
|
|
||||||
import appeng.core.AEConfig;
|
import appeng.core.AEConfig;
|
||||||
import appeng.core.Api;
|
import appeng.core.Api;
|
||||||
import appeng.core.AppEng;
|
import appeng.core.AppEng;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.api.features.AEFeature;
|
||||||
import appeng.core.sync.packets.PacketMockExplosion;
|
import appeng.core.sync.packets.PacketMockExplosion;
|
||||||
import appeng.helpers.Reflected;
|
import appeng.helpers.Reflected;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user