Fixed stairs
This commit is contained in:
parent
8b921a7b79
commit
59dbfb1452
28
build.gradle
28
build.gradle
|
@ -1,6 +1,6 @@
|
||||||
/*
|
/*
|
||||||
* This file is part of Applied Energistics 2.
|
* This file is part of Applied Energistics 2.
|
||||||
* Copyright (c) 2013 - 2014, AlgorithmX2, All rights reserved.
|
* Copyright (c) 2013 - 2015, AlgorithmX2, All rights reserved.
|
||||||
*
|
*
|
||||||
* Applied Energistics 2 is free software: you can redistribute it and/or modify
|
* Applied Energistics 2 is free software: you can redistribute it and/or modify
|
||||||
* it under the terms of the GNU Lesser General Public License as published by
|
* it under the terms of the GNU Lesser General Public License as published by
|
||||||
|
@ -15,8 +15,7 @@
|
||||||
* You should have received a copy of the GNU Lesser General Public License
|
* You should have received a copy of the GNU Lesser General Public License
|
||||||
* 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>.
|
||||||
*/
|
*/
|
||||||
|
apply plugin: 'net.minecraftforge.gradle.forge'
|
||||||
apply plugin: 'forge'
|
|
||||||
|
|
||||||
apply from: 'gradle/scripts/dependencies.gradle'
|
apply from: 'gradle/scripts/dependencies.gradle'
|
||||||
apply from: 'gradle/scripts/artifacts.gradle'
|
apply from: 'gradle/scripts/artifacts.gradle'
|
||||||
|
@ -28,6 +27,7 @@ buildscript {
|
||||||
repositories {
|
repositories {
|
||||||
mavenLocal()
|
mavenLocal()
|
||||||
mavenCentral()
|
mavenCentral()
|
||||||
|
jcenter()
|
||||||
|
|
||||||
maven {
|
maven {
|
||||||
name = "forge"
|
name = "forge"
|
||||||
|
@ -41,7 +41,7 @@ buildscript {
|
||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'net.minecraftforge.gradle:ForgeGradle:1.2-SNAPSHOT'
|
classpath 'net.minecraftforge.gradle:ForgeGradle:2.0-SNAPSHOT'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -84,7 +84,7 @@ minecraft {
|
||||||
// used when launching minecraft in dev env
|
// used when launching minecraft in dev env
|
||||||
runDir = "run"
|
runDir = "run"
|
||||||
|
|
||||||
mappings = "snapshot_20141130"
|
mappings = "snapshot_20150928"
|
||||||
}
|
}
|
||||||
|
|
||||||
sourceSets {
|
sourceSets {
|
||||||
|
@ -92,25 +92,17 @@ sourceSets {
|
||||||
java {
|
java {
|
||||||
srcDirs += 'src/api/java'
|
srcDirs += 'src/api/java'
|
||||||
srcDirs += 'src/main/java/'
|
srcDirs += 'src/main/java/'
|
||||||
|
|
||||||
// excludes integration due to not being available upon port
|
|
||||||
exclude 'appeng/integration/modules/**'
|
|
||||||
exclude 'appeng/fmp/**'
|
|
||||||
exclude 'appeng/parts/layers/**'
|
|
||||||
}
|
}
|
||||||
|
|
||||||
resources {
|
resources {
|
||||||
srcDir "src/main/resources/"
|
srcDir "src/main/resources/"
|
||||||
include "assets/appliedenergistics2/recipes/*.recipe",
|
include "assets/appliedenergistics2/recipes/**/*.recipe",
|
||||||
"assets/appliedenergistics2/recipes/README.html",
|
"assets/appliedenergistics2/recipes/README.html",
|
||||||
"assets/appliedenergistics2/lang/*.lang",
|
"assets/appliedenergistics2/lang/*.lang",
|
||||||
"assets/appliedenergistics2/blockstates/*.json",
|
"assets/appliedenergistics2/blockstates/**/*.json",
|
||||||
"assets/appliedenergistics2/models/block/*.json",
|
"assets/appliedenergistics2/models/**/*.json",
|
||||||
"assets/appliedenergistics2/models/item/*.json",
|
"assets/appliedenergistics2/textures/**/*.png",
|
||||||
"assets/appliedenergistics2/textures/blocks/*",
|
"assets/appliedenergistics2/textures/**/*.mcmeta",
|
||||||
"assets/appliedenergistics2/textures/guis/*",
|
|
||||||
"assets/appliedenergistics2/textures/models/*",
|
|
||||||
"assets/appliedenergistics2/textures/items/*",
|
|
||||||
"assets/appliedenergistics2/meta/*",
|
"assets/appliedenergistics2/meta/*",
|
||||||
"mcmod.info",
|
"mcmod.info",
|
||||||
"pack.mcmeta"
|
"pack.mcmeta"
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
aeversion=rv4
|
aeversion=rv3
|
||||||
aechannel=alpha
|
aechannel=alpha
|
||||||
aebuild=0
|
aebuild=0
|
||||||
aegroup=appeng
|
aegroup=appeng
|
||||||
|
@ -8,12 +8,12 @@ aebasename=appliedenergistics2
|
||||||
# Versions #
|
# Versions #
|
||||||
#########################################################
|
#########################################################
|
||||||
minecraft_version=1.8
|
minecraft_version=1.8
|
||||||
forge_version=11.14.3.1450
|
forge_version=11.14.3.1516
|
||||||
|
|
||||||
#########################################################
|
#########################################################
|
||||||
# Installable #
|
# Installable #
|
||||||
#########################################################
|
#########################################################
|
||||||
waila_version=1.5.10
|
waila_version=1.6.0_B1
|
||||||
jabba_version=1.2.1a
|
jabba_version=1.2.1a
|
||||||
enderstorage_version=1.4.7.33
|
enderstorage_version=1.4.7.33
|
||||||
translocator_version=1.1.1.14
|
translocator_version=1.1.1.14
|
||||||
|
@ -24,7 +24,7 @@ enderio_version=2.3.0.375_beta
|
||||||
#texpansion_version=4.0.0-176
|
#texpansion_version=4.0.0-176
|
||||||
#tfoundation_version=1.0.0-82
|
#tfoundation_version=1.0.0-82
|
||||||
betterstorage_version=0.11.3.123.20
|
betterstorage_version=0.11.3.123.20
|
||||||
invtweaks_version=1.60-dev-14
|
invtweaks_version=1.59
|
||||||
|
|
||||||
#########################################################
|
#########################################################
|
||||||
# Provided APIs #
|
# Provided APIs #
|
||||||
|
@ -34,7 +34,7 @@ code_chicken_lib_version=1.1.2.139
|
||||||
code_chicken_core_version=1.0.5.36
|
code_chicken_core_version=1.0.5.36
|
||||||
nei_version=1.0.5.104
|
nei_version=1.0.5.104
|
||||||
bc_version=7.0.9
|
bc_version=7.0.9
|
||||||
opencomputers_version=1.5.9.21
|
opencomputers_version=1.5.18.39
|
||||||
|
|
||||||
#########################################################
|
#########################################################
|
||||||
# Self Compiled APIs #
|
# Self Compiled APIs #
|
||||||
|
|
|
@ -10,10 +10,12 @@ task javadocJar(type: Jar, dependsOn: myJavadocs) {
|
||||||
from 'build/docs/javadoc/'
|
from 'build/docs/javadoc/'
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
task sourceJar(type: Jar, dependsOn: classes) {
|
task sourceJar(type: Jar, dependsOn: classes) {
|
||||||
classifier = 'sources'
|
classifier = 'sources'
|
||||||
from sourceSets.main.allSource
|
from sourceSets.main.allSource
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
task devJar(type: Jar) {
|
task devJar(type: Jar) {
|
||||||
|
|
||||||
|
|
|
@ -1,12 +1,13 @@
|
||||||
// searches for NEI and Chicken stuff from compile set
|
// searches for NEI and Chicken stuff from compile set
|
||||||
// and adds them to the mods in run dir
|
// and adds them to the mods in run dir
|
||||||
task copyChicken(type: Copy, dependsOn: "extractUserDev") {
|
|
||||||
from { configurations.compile }
|
// task copyChicken(type: Copy, dependsOn: "extractUserDev") {
|
||||||
include "**/*Chicken*.jar", "**/*NotEnoughItems*.jar"
|
// from { configurations.compile }
|
||||||
exclude "**/CodeChickenLib*" // because CCC downloads it anyways.. -_-
|
// include "**/*Chicken*.jar", "**/*NotEnoughItems*.jar"
|
||||||
into file(minecraft.runDir + "/mods")
|
// exclude "**/CodeChickenLib*" // because CCC downloads it anyways.. -_-
|
||||||
mustRunAfter "deobfBinJar"
|
// into file(minecraft.runDir + "/mods")
|
||||||
mustRunAfter "repackMinecraft"
|
// mustRunAfter "deobfBinJar"
|
||||||
}
|
// mustRunAfter "repackMinecraft"
|
||||||
tasks.setupDevWorkspace.dependsOn copyChicken
|
// }
|
||||||
tasks.setupDecompWorkspace.dependsOn copyChicken
|
// tasks.setupDevWorkspace.dependsOn copyChicken
|
||||||
|
// tasks.setupDecompWorkspace.dependsOn copyChicken
|
||||||
|
|
|
@ -89,7 +89,7 @@ configurations {
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
// installable
|
// installable
|
||||||
// mods "mcp.mobius.waila:Waila:${waila_version}_${minecraft_version}:dev"
|
// mods "mcp.mobius.waila:Waila:${waila_version}_1.8.1:dev"
|
||||||
// mods "mcp.mobius.jabba:Jabba:${jabba_version}_${minecraft_version}:dev"
|
// mods "mcp.mobius.jabba:Jabba:${jabba_version}_${minecraft_version}:dev"
|
||||||
// mods "codechicken:EnderStorage:${minecraft_version}-${enderstorage_version}:dev"
|
// mods "codechicken:EnderStorage:${minecraft_version}-${enderstorage_version}:dev"
|
||||||
// mods "codechicken:Translocator:${minecraft_version}-${translocator_version}:dev"
|
// mods "codechicken:Translocator:${minecraft_version}-${translocator_version}:dev"
|
||||||
|
@ -105,9 +105,9 @@ dependencies {
|
||||||
// mods name: 'ThermalFoundation', version: "[${minecraft_version}]${tfoundation_version}-dev", ext: 'jar'
|
// mods name: 'ThermalFoundation', version: "[${minecraft_version}]${tfoundation_version}-dev", ext: 'jar'
|
||||||
|
|
||||||
// compile "codechicken:ForgeMultipart:${minecraft_version}-${fmp_version}:dev"
|
// compile "codechicken:ForgeMultipart:${minecraft_version}-${fmp_version}:dev"
|
||||||
compile "codechicken:CodeChickenLib:${minecraft_version}-${code_chicken_lib_version}:dev"
|
// compile "codechicken:CodeChickenLib:${minecraft_version}-${code_chicken_lib_version}:dev"
|
||||||
compile "codechicken:CodeChickenCore:${minecraft_version}-${code_chicken_core_version}:dev"
|
// compile "codechicken:CodeChickenCore:${minecraft_version}-${code_chicken_core_version}:dev"
|
||||||
compile "codechicken:NotEnoughItems:${minecraft_version}-${nei_version}:dev"
|
// compile "codechicken:NotEnoughItems:${minecraft_version}-${nei_version}:dev"
|
||||||
// compile "com.mod-buildcraft:buildcraft:${bc_version}:dev"
|
// compile "com.mod-buildcraft:buildcraft:${bc_version}:dev"
|
||||||
|
|
||||||
// provided APIs
|
// provided APIs
|
||||||
|
|
|
@ -3,5 +3,10 @@ apply plugin: 'idea'
|
||||||
idea {
|
idea {
|
||||||
module {
|
module {
|
||||||
inheritOutputDirs = true
|
inheritOutputDirs = true
|
||||||
|
|
||||||
|
// excludes integration due to not being available upon port
|
||||||
|
excludeDirs += file('src/main/java/appeng/integration/modules/')
|
||||||
|
excludeDirs += file('src/main/java/appeng/fmp/')
|
||||||
|
excludeDirs += file('src/main/java/appeng/parts/layers/')
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -1,5 +1,5 @@
|
||||||
task wrapper(type: Wrapper) {
|
task wrapper(type: Wrapper) {
|
||||||
gradleVersion = "2.4"
|
gradleVersion = "2.7"
|
||||||
}
|
}
|
||||||
|
|
||||||
// WAILA
|
// WAILA
|
||||||
|
|
4
gradle/wrapper/gradle-wrapper.properties
vendored
4
gradle/wrapper/gradle-wrapper.properties
vendored
|
@ -1,6 +1,6 @@
|
||||||
#Wed Jun 17 12:06:23 CEST 2015
|
#Mon Sep 28 22:02:24 CEST 2015
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-2.4-all.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-2.7-all.zip
|
||||||
|
|
|
@ -1,14 +1,22 @@
|
||||||
package appeng.api.definitions;
|
package appeng.api.definitions;
|
||||||
|
|
||||||
|
|
||||||
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
|
import com.google.common.base.Optional;
|
||||||
|
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
|
||||||
import com.google.common.base.Optional;
|
|
||||||
|
|
||||||
|
|
||||||
public interface IItemDefinition extends IComparableDefinition
|
public interface IItemDefinition extends IComparableDefinition
|
||||||
{
|
{
|
||||||
|
/**
|
||||||
|
* @return the unique name of the definition which will be used to register the underlying structure. Will never be null
|
||||||
|
*/
|
||||||
|
@Nonnull
|
||||||
|
String identifier();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @return the {@link Item} Implementation if applicable
|
* @return the {@link Item} Implementation if applicable
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -123,7 +123,7 @@ public interface IMaterials
|
||||||
|
|
||||||
IItemDefinition woodenGear();
|
IItemDefinition woodenGear();
|
||||||
|
|
||||||
IItemDefinition wireless();
|
IItemDefinition wirelessReceiver();
|
||||||
|
|
||||||
IItemDefinition wirelessBooster();
|
IItemDefinition wirelessBooster();
|
||||||
|
|
||||||
|
|
|
@ -22,6 +22,7 @@ package appeng.block;
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
|
||||||
import com.google.common.base.Optional;
|
import com.google.common.base.Optional;
|
||||||
|
import com.google.common.base.Preconditions;
|
||||||
|
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.BlockStairs;
|
import net.minecraft.block.BlockStairs;
|
||||||
|
@ -36,13 +37,17 @@ public abstract class AEBaseStairBlock extends BlockStairs implements IAEFeature
|
||||||
{
|
{
|
||||||
private final IFeatureHandler features;
|
private final IFeatureHandler features;
|
||||||
|
|
||||||
protected AEBaseStairBlock( Block block, EnumSet<AEFeature> features, String type )
|
protected AEBaseStairBlock( Block block, EnumSet<AEFeature> features, String type )
|
||||||
{
|
{
|
||||||
super( block.getDefaultState() );
|
super( block.getStateFromMeta( 0 ) );
|
||||||
|
|
||||||
this.features = new StairBlockFeatureHandler( features, this, Optional.<String>of(type) );
|
Preconditions.checkNotNull( block );
|
||||||
setUnlocalizedName( block.getUnlocalizedName() );
|
Preconditions.checkNotNull( block.getUnlocalizedName() );
|
||||||
|
Preconditions.checkArgument( block.getUnlocalizedName().length() > 0 );
|
||||||
|
|
||||||
|
this.features = new StairBlockFeatureHandler( features, this, Optional.of( type ) );
|
||||||
|
|
||||||
|
this.setUnlocalizedName( "stair." + type );
|
||||||
this.setLightOpacity( 0 );
|
this.setLightOpacity( 0 );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -22,6 +22,8 @@ package appeng.block.crafting;
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.google.common.base.Optional;
|
||||||
|
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.block.properties.IProperty;
|
import net.minecraft.block.properties.IProperty;
|
||||||
|
@ -37,6 +39,7 @@ import net.minecraft.util.EnumWorldBlockLayer;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.fml.relauncher.Side;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
|
|
||||||
import appeng.api.util.AEPartLocation;
|
import appeng.api.util.AEPartLocation;
|
||||||
import appeng.block.AEBaseTileBlock;
|
import appeng.block.AEBaseTileBlock;
|
||||||
import appeng.client.render.BaseBlockRender;
|
import appeng.client.render.BaseBlockRender;
|
||||||
|
@ -47,22 +50,49 @@ import appeng.core.sync.GuiBridge;
|
||||||
import appeng.tile.crafting.TileCraftingTile;
|
import appeng.tile.crafting.TileCraftingTile;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
import com.google.common.base.Optional;
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*/
|
||||||
public class BlockCraftingUnit extends AEBaseTileBlock
|
public class BlockCraftingUnit extends AEBaseTileBlock
|
||||||
{
|
{
|
||||||
public static final PropertyBool POWERED = PropertyBool.create("powered");
|
public static final PropertyBool POWERED = PropertyBool.create( "powered" );
|
||||||
public static final PropertyBool FORMED = PropertyBool.create("formed");
|
public static final PropertyBool FORMED = PropertyBool.create( "formed" );
|
||||||
|
|
||||||
public static final int FLAG_FORMED = 8;
|
|
||||||
|
|
||||||
final public CraftingUnitType type;
|
final public CraftingUnitType type;
|
||||||
|
|
||||||
public static enum CraftingUnitType
|
public BlockCraftingUnit( CraftingUnitType type )
|
||||||
{
|
{
|
||||||
UNIT, ACCELERATOR, STORAGE_1K,STORAGE_4K, STORAGE_16K, STORAGE_64K, MONITOR
|
super( Material.iron, Optional.of( type.name() ) );
|
||||||
};
|
|
||||||
|
this.type = type;
|
||||||
|
this.setTileEntity( TileCraftingTile.class );
|
||||||
|
this.setFeature( EnumSet.of( AEFeature.CraftingCPU ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IBlockState getStateFromMeta( int meta )
|
||||||
|
{
|
||||||
|
return getDefaultState().withProperty( POWERED, ( meta & 1 ) == 1 ).withProperty( FORMED, ( meta & 2 ) == 2 );
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getMetaFromState( IBlockState state )
|
||||||
|
{
|
||||||
|
boolean p = (boolean) state.getValue( POWERED );
|
||||||
|
boolean f = (boolean) state.getValue( FORMED );
|
||||||
|
return ( p ? 1 : 0 ) | ( f ? 2 : 0 );
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNeighborBlockChange( World worldIn, BlockPos pos, IBlockState state, Block neighborBlock )
|
||||||
|
{
|
||||||
|
TileCraftingTile cp = this.getTileEntity( worldIn, pos );
|
||||||
|
if( cp != null )
|
||||||
|
{
|
||||||
|
cp.updateMultiBlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public EnumWorldBlockLayer getBlockLayer()
|
public EnumWorldBlockLayer getBlockLayer()
|
||||||
|
@ -71,63 +101,20 @@ public class BlockCraftingUnit extends AEBaseTileBlock
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getMetaFromState(
|
public void breakBlock( World w, BlockPos pos, IBlockState state )
|
||||||
IBlockState state )
|
|
||||||
{
|
{
|
||||||
boolean p = (boolean)state.getValue( POWERED );
|
TileCraftingTile cp = this.getTileEntity( w, pos );
|
||||||
boolean f = (boolean)state.getValue( FORMED );
|
if( cp != null )
|
||||||
return (p ? 1 : 0) | (f?2 : 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public IBlockState getStateFromMeta( int meta )
|
|
||||||
{
|
|
||||||
return getDefaultState().withProperty( POWERED, ( meta & 1 ) == 1 ? true : false ).withProperty( FORMED, ( meta & 2 ) == 2 ? true : false );
|
|
||||||
}
|
|
||||||
|
|
||||||
public BlockCraftingUnit( CraftingUnitType type )
|
|
||||||
{
|
|
||||||
super( Material.iron, Optional.of(type.name()) );
|
|
||||||
|
|
||||||
this.type = type;
|
|
||||||
this.setTileEntity( TileCraftingTile.class );
|
|
||||||
this.setFeature( EnumSet.of( AEFeature.CraftingCPU ) );
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected Class<? extends BaseBlockRender> getRenderer()
|
|
||||||
{
|
|
||||||
return RenderBlockCraftingCPU.class;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public appeng.client.texture.IAESprite getIcon(EnumFacing side, IBlockState state)
|
|
||||||
{
|
|
||||||
if ( type == CraftingUnitType.ACCELERATOR )
|
|
||||||
{
|
{
|
||||||
if ( (boolean)state.getValue( FORMED ) )
|
cp.breakCluster();
|
||||||
return ExtraBlockTextures.BlockCraftingAcceleratorFit.getIcon();
|
|
||||||
|
|
||||||
return ExtraBlockTextures.BlockCraftingAccelerator.getIcon();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if ( (boolean)state.getValue( FORMED ) )
|
|
||||||
return ExtraBlockTextures.BlockCraftingUnitFit.getIcon();
|
|
||||||
|
|
||||||
return super.getIcon( side,state );
|
super.breakBlock( w, pos, state );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onBlockActivated(
|
public boolean onBlockActivated( World w, BlockPos pos, IBlockState state, EntityPlayer p, EnumFacing side, float hitX, float hitY, float hitZ )
|
||||||
World w,
|
{
|
||||||
BlockPos pos,
|
|
||||||
IBlockState state,
|
|
||||||
EntityPlayer p,
|
|
||||||
EnumFacing side,
|
|
||||||
float hitX,
|
|
||||||
float hitY,
|
|
||||||
float hitZ )
|
|
||||||
{
|
|
||||||
TileCraftingTile tg = this.getTileEntity( w, pos );
|
TileCraftingTile tg = this.getTileEntity( w, pos );
|
||||||
if( tg != null && !p.isSneaking() && tg.isFormed() && tg.isActive() )
|
if( tg != null && !p.isSneaking() && tg.isFormed() && tg.isActive() )
|
||||||
{
|
{
|
||||||
|
@ -143,6 +130,47 @@ public boolean onBlockActivated(
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected String getItemUnlocalizedName( ItemStack is )
|
||||||
|
{
|
||||||
|
return super.getUnlocalizedName( is );
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected IProperty[] getAEStates()
|
||||||
|
{
|
||||||
|
return new IProperty[] {
|
||||||
|
POWERED,
|
||||||
|
FORMED
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Class<? extends BaseBlockRender> getRenderer()
|
||||||
|
{
|
||||||
|
return RenderBlockCraftingCPU.class;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public appeng.client.texture.IAESprite getIcon( EnumFacing side, IBlockState state )
|
||||||
|
{
|
||||||
|
if( type == CraftingUnitType.ACCELERATOR )
|
||||||
|
{
|
||||||
|
if( (boolean) state.getValue( FORMED ) )
|
||||||
|
{
|
||||||
|
return ExtraBlockTextures.BlockCraftingAcceleratorFit.getIcon();
|
||||||
|
}
|
||||||
|
|
||||||
|
return ExtraBlockTextures.BlockCraftingAccelerator.getIcon();
|
||||||
|
}
|
||||||
|
|
||||||
|
if( (boolean) state.getValue( FORMED ) )
|
||||||
|
{
|
||||||
|
return ExtraBlockTextures.BlockCraftingUnitFit.getIcon();
|
||||||
|
}
|
||||||
|
|
||||||
|
return super.getIcon( side, state );
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@SideOnly( Side.CLIENT )
|
@SideOnly( Side.CLIENT )
|
||||||
public void getCheckedSubBlocks( Item item, CreativeTabs tabs, List<ItemStack> itemStacks )
|
public void getCheckedSubBlocks( Item item, CreativeTabs tabs, List<ItemStack> itemStacks )
|
||||||
|
@ -151,21 +179,6 @@ public boolean onBlockActivated(
|
||||||
itemStacks.add( new ItemStack( this, 1, 1 ) );
|
itemStacks.add( new ItemStack( this, 1, 1 ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void breakBlock(
|
|
||||||
World w,
|
|
||||||
BlockPos pos,
|
|
||||||
IBlockState state )
|
|
||||||
{
|
|
||||||
TileCraftingTile cp = this.getTileEntity( w, pos );
|
|
||||||
if( cp != null )
|
|
||||||
{
|
|
||||||
cp.breakCluster();
|
|
||||||
}
|
|
||||||
|
|
||||||
super.breakBlock( w, pos, state );
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getUnlocalizedName( ItemStack is )
|
public String getUnlocalizedName( ItemStack is )
|
||||||
{
|
{
|
||||||
|
@ -177,29 +190,8 @@ public boolean onBlockActivated(
|
||||||
return this.getItemUnlocalizedName( is );
|
return this.getItemUnlocalizedName( is );
|
||||||
}
|
}
|
||||||
|
|
||||||
protected String getItemUnlocalizedName( ItemStack is )
|
public enum CraftingUnitType
|
||||||
{
|
{
|
||||||
return super.getUnlocalizedName( is );
|
UNIT, ACCELERATOR, STORAGE_1K, STORAGE_4K, STORAGE_16K, STORAGE_64K, MONITOR
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
protected IProperty[] getAEStates()
|
|
||||||
{
|
|
||||||
return new IProperty[]{POWERED, FORMED };
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onNeighborBlockChange(
|
|
||||||
World worldIn,
|
|
||||||
BlockPos pos,
|
|
||||||
IBlockState state,
|
|
||||||
Block neighborBlock )
|
|
||||||
{
|
|
||||||
TileCraftingTile cp = this.getTileEntity( worldIn, pos );
|
|
||||||
if( cp != null )
|
|
||||||
{
|
|
||||||
cp.updateMultiBlock();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,6 +23,7 @@ import java.util.EnumSet;
|
||||||
|
|
||||||
import net.minecraft.block.material.Material;
|
import net.minecraft.block.material.Material;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.BlockPos;
|
import net.minecraft.util.BlockPos;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
@ -81,4 +82,10 @@ public class BlockInscriber extends AEBaseTileBlock
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getUnlocalizedName( ItemStack is )
|
||||||
|
{
|
||||||
|
return super.getUnlocalizedName( is );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -39,9 +39,9 @@ import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.world.Explosion;
|
import net.minecraft.world.Explosion;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
import net.minecraftforge.fml.common.registry.EntityRegistry;
|
import net.minecraftforge.fml.common.registry.EntityRegistry;
|
||||||
|
|
||||||
import appeng.block.AEBaseBlock;
|
import appeng.block.AEBaseBlock;
|
||||||
import appeng.client.render.BaseBlockRender;
|
import appeng.client.render.BaseBlockRender;
|
||||||
import appeng.client.render.blocks.RenderTinyTNT;
|
|
||||||
import appeng.core.AppEng;
|
import appeng.core.AppEng;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.core.features.AEFeature;
|
||||||
import appeng.entity.EntityIds;
|
import appeng.entity.EntityIds;
|
||||||
|
@ -80,14 +80,7 @@ public class BlockTinyTNT extends AEBaseBlock implements ICustomCollision
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onActivated(
|
public boolean onActivated( World w, BlockPos pos, EntityPlayer player, EnumFacing side, float hitX, float hitY, float hitZ )
|
||||||
World w,
|
|
||||||
BlockPos pos,
|
|
||||||
EntityPlayer player,
|
|
||||||
EnumFacing side,
|
|
||||||
float hitX,
|
|
||||||
float hitY,
|
|
||||||
float hitZ )
|
|
||||||
{
|
{
|
||||||
if( player.getCurrentEquippedItem() != null && player.getCurrentEquippedItem().getItem() == Items.flint_and_steel )
|
if( player.getCurrentEquippedItem() != null && player.getCurrentEquippedItem().getItem() == Items.flint_and_steel )
|
||||||
{
|
{
|
||||||
|
@ -111,12 +104,19 @@ public class BlockTinyTNT extends AEBaseBlock implements ICustomCollision
|
||||||
w.playSoundAtEntity( primedTinyTNTEntity, "game.tnt.primed", 1.0F, 1.0F );
|
w.playSoundAtEntity( primedTinyTNTEntity, "game.tnt.primed", 1.0F, 1.0F );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBlockAdded(
|
public void onNeighborBlockChange( World w, BlockPos pos, IBlockState state, Block neighborBlock )
|
||||||
World w,
|
{
|
||||||
BlockPos pos,
|
if( w.isBlockIndirectlyGettingPowered( pos ) > 0 )
|
||||||
IBlockState state )
|
{
|
||||||
|
this.startFuse( w, pos, null );
|
||||||
|
w.setBlockToAir( pos );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onBlockAdded( World w, BlockPos pos, IBlockState state )
|
||||||
{
|
{
|
||||||
super.onBlockAdded( w, pos, state );
|
super.onBlockAdded( w, pos, state );
|
||||||
|
|
||||||
|
@ -128,38 +128,7 @@ public class BlockTinyTNT extends AEBaseBlock implements ICustomCollision
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onNeighborBlockChange(
|
public void onEntityCollidedWithBlock( World w, BlockPos pos, Entity entity )
|
||||||
World w,
|
|
||||||
BlockPos pos,
|
|
||||||
IBlockState state,
|
|
||||||
Block neighborBlock )
|
|
||||||
{
|
|
||||||
if( w.isBlockIndirectlyGettingPowered( pos ) > 0 )
|
|
||||||
{
|
|
||||||
this.startFuse( w, pos, null );
|
|
||||||
w.setBlockToAir( pos );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onBlockExploded(
|
|
||||||
World w,
|
|
||||||
BlockPos pos,
|
|
||||||
Explosion exp )
|
|
||||||
{
|
|
||||||
if( !w.isRemote )
|
|
||||||
{
|
|
||||||
EntityTinyTNTPrimed primedTinyTNTEntity = new EntityTinyTNTPrimed( w, pos.getX() + 0.5F, pos.getY() + 0.5F, pos.getZ() + 0.5F, exp.getExplosivePlacedBy() );
|
|
||||||
primedTinyTNTEntity.fuse = w.rand.nextInt( primedTinyTNTEntity.fuse / 4 ) + primedTinyTNTEntity.fuse / 8;
|
|
||||||
w.spawnEntityInWorld( primedTinyTNTEntity );
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onEntityCollidedWithBlock(
|
|
||||||
World w,
|
|
||||||
BlockPos pos,
|
|
||||||
Entity entity )
|
|
||||||
{
|
{
|
||||||
if( entity instanceof EntityArrow && !w.isRemote )
|
if( entity instanceof EntityArrow && !w.isRemote )
|
||||||
{
|
{
|
||||||
|
@ -180,22 +149,24 @@ public class BlockTinyTNT extends AEBaseBlock implements ICustomCollision
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Iterable<AxisAlignedBB> getSelectedBoundingBoxesFromPool(
|
public void onBlockExploded( World w, BlockPos pos, Explosion exp )
|
||||||
World w,
|
{
|
||||||
BlockPos pos,
|
if( !w.isRemote )
|
||||||
Entity thePlayer,
|
{
|
||||||
boolean b )
|
EntityTinyTNTPrimed primedTinyTNTEntity = new EntityTinyTNTPrimed( w, pos.getX() + 0.5F, pos.getY() + 0.5F, pos.getZ() + 0.5F, exp.getExplosivePlacedBy() );
|
||||||
|
primedTinyTNTEntity.fuse = w.rand.nextInt( primedTinyTNTEntity.fuse / 4 ) + primedTinyTNTEntity.fuse / 8;
|
||||||
|
w.spawnEntityInWorld( primedTinyTNTEntity );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Iterable<AxisAlignedBB> getSelectedBoundingBoxesFromPool( World w, BlockPos pos, Entity thePlayer, boolean b )
|
||||||
{
|
{
|
||||||
return Collections.singletonList( AxisAlignedBB.fromBounds( 0.25, 0, 0.25, 0.75, 0.5, 0.75 ) );
|
return Collections.singletonList( AxisAlignedBB.fromBounds( 0.25, 0, 0.25, 0.75, 0.5, 0.75 ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addCollidingBlockToList(
|
public void addCollidingBlockToList( World w, BlockPos pos, AxisAlignedBB bb, List<AxisAlignedBB> out, Entity e )
|
||||||
World w,
|
|
||||||
BlockPos pos,
|
|
||||||
AxisAlignedBB bb,
|
|
||||||
List<AxisAlignedBB> out,
|
|
||||||
Entity e )
|
|
||||||
{
|
{
|
||||||
out.add( AxisAlignedBB.fromBounds( 0.25, 0, 0.25, 0.75, 0.5, 0.75 ) );
|
out.add( AxisAlignedBB.fromBounds( 0.25, 0, 0.25, 0.75, 0.5, 0.75 ) );
|
||||||
}
|
}
|
||||||
|
|
|
@ -43,6 +43,7 @@ import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.init.Items;
|
import net.minecraft.init.Items;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.util.ResourceLocation;
|
import net.minecraft.util.ResourceLocation;
|
||||||
import net.minecraft.util.Vec3;
|
import net.minecraft.util.Vec3;
|
||||||
|
@ -101,12 +102,11 @@ public class ClientHelper extends ServerHelper
|
||||||
|
|
||||||
private static final RenderItem ITEM_RENDERER = Minecraft.getMinecraft().getRenderItem();
|
private static final RenderItem ITEM_RENDERER = Minecraft.getMinecraft().getRenderItem();
|
||||||
private static final ModelGenerator BLOCK_RENDERER = new ModelGenerator();
|
private static final ModelGenerator BLOCK_RENDERER = new ModelGenerator();
|
||||||
final ModelResourceLocation partRenderer = new ModelResourceLocation( new ResourceLocation( AppEng.MOD_ID, "DynamicPartRenderer" ), "inventory" );
|
private final ModelResourceLocation partRenderer = new ModelResourceLocation( new ResourceLocation( AppEng.MOD_ID, "DynamicPartRenderer" ), "inventory" );
|
||||||
|
|
||||||
;
|
private Map<Object, List<IconReg>> iconRegistrations = new HashMap<>();
|
||||||
public Map<Object, List<IconReg>> iconRegistrations = new HashMap();
|
private List<IconReg> iconTmp = new ArrayList<>();
|
||||||
public List<IconReg> iconTmp = new ArrayList<>();
|
private List<ResourceLocation> extraIcons = new ArrayList<>();
|
||||||
public List<ResourceLocation> extraIcons = new ArrayList<>();
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void configureIcon( Object item, String name )
|
public void configureIcon( Object item, String name )
|
||||||
|
@ -123,10 +123,23 @@ public class ClientHelper extends ServerHelper
|
||||||
@Override
|
@Override
|
||||||
public void init()
|
public void init()
|
||||||
{
|
{
|
||||||
Item fluixItem = GameRegistry.findItem( "appliedenergistics2", "fluix" );
|
// final Block fluixBlock = GameRegistry.findBlock( "appliedenergistics2", "fluix" );
|
||||||
ModelResourceLocation itemModelResourceLocation = new ModelResourceLocation( "appliedenergistics2:fluix", "inventory" );
|
// Item fluixItem = Item.getItemFromBlock( fluixBlock );
|
||||||
final int DEFAULT_ITEM_SUBTYPE = 0;
|
// ModelResourceLocation itemModelResourceLocation = new ModelResourceLocation( "appliedenergistics2:fluix", "inventory" );
|
||||||
Minecraft.getMinecraft().getRenderItem().getItemModelMesher().register( fluixItem, DEFAULT_ITEM_SUBTYPE, itemModelResourceLocation );
|
// final int DEFAULT_ITEM_SUBTYPE = 0;
|
||||||
|
// final ItemModelMesher mesher = Minecraft.getMinecraft().getRenderItem().getItemModelMesher();
|
||||||
|
// // mesher.register( fluixItem, DEFAULT_ITEM_SUBTYPE, itemModelResourceLocation );
|
||||||
|
//
|
||||||
|
// final ResourceLocation resource = new ResourceLocation( "appliedenergistics2", "stair.fluix" );
|
||||||
|
// final ModelResourceLocation fluixStairModel = new ModelResourceLocation( resource, "inventory" );
|
||||||
|
// AELog.info( "FluixStairModel: " + fluixStairModel );
|
||||||
|
//
|
||||||
|
// final Set<Item> items = AEApi.instance().definitions().blocks().fluixStair().maybeItem().asSet();
|
||||||
|
// for( Item item : items )
|
||||||
|
// {
|
||||||
|
// AELog.info( "Registering with %s with unlocalized %s", item, item.getUnlocalizedName() );
|
||||||
|
// mesher.register( item, DEFAULT_ITEM_SUBTYPE, fluixStairModel );
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -143,7 +156,7 @@ public class ClientHelper extends ServerHelper
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void bindTileEntitySpecialRenderer( Class tile, AEBaseBlock blk )
|
public void bindTileEntitySpecialRenderer( Class<? extends TileEntity> tile, AEBaseBlock blk )
|
||||||
{
|
{
|
||||||
BaseBlockRender bbr = blk.getRendererInstance().rendererInstance;
|
BaseBlockRender bbr = blk.getRendererInstance().rendererInstance;
|
||||||
if( bbr.hasTESR() && tile != null )
|
if( bbr.hasTESR() && tile != null )
|
||||||
|
@ -157,7 +170,7 @@ public class ClientHelper extends ServerHelper
|
||||||
{
|
{
|
||||||
if( Platform.isClient() )
|
if( Platform.isClient() )
|
||||||
{
|
{
|
||||||
List<EntityPlayer> o = new ArrayList<EntityPlayer>();
|
List<EntityPlayer> o = new ArrayList<>();
|
||||||
o.add( Minecraft.getMinecraft().thePlayer );
|
o.add( Minecraft.getMinecraft().thePlayer );
|
||||||
return o;
|
return o;
|
||||||
}
|
}
|
||||||
|
@ -282,15 +295,7 @@ public class ClientHelper extends ServerHelper
|
||||||
|
|
||||||
addIcon( reg.name );
|
addIcon( reg.name );
|
||||||
|
|
||||||
mesher.register( reg.item instanceof Item ? (Item) reg.item : Item.getItemFromBlock( (Block) reg.item ), new ItemMeshDefinition()
|
mesher.register( reg.item instanceof Item ? (Item) reg.item : Item.getItemFromBlock( (Block) reg.item ), stack -> renderer.rendererInstance.getResourcePath() );
|
||||||
{
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public ModelResourceLocation getModelLocation( ItemStack stack )
|
|
||||||
{
|
|
||||||
return renderer.rendererInstance.getResourcePath();
|
|
||||||
}
|
|
||||||
} );
|
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -385,7 +390,7 @@ public class ClientHelper extends ServerHelper
|
||||||
List<IconReg> reg = iconRegistrations.get( item );
|
List<IconReg> reg = iconRegistrations.get( item );
|
||||||
if( reg == null )
|
if( reg == null )
|
||||||
{
|
{
|
||||||
iconRegistrations.put( item, reg = new LinkedList<IconReg>() );
|
iconRegistrations.put( item, reg = new LinkedList<>() );
|
||||||
}
|
}
|
||||||
|
|
||||||
ModelResourceLocation res = new ModelResourceLocation( new ResourceLocation( AppEng.MOD_ID, name ), "inventory" );
|
ModelResourceLocation res = new ModelResourceLocation( new ResourceLocation( AppEng.MOD_ID, name ), "inventory" );
|
||||||
|
@ -398,7 +403,7 @@ public class ClientHelper extends ServerHelper
|
||||||
List<IconReg> reg = iconRegistrations.get( item );
|
List<IconReg> reg = iconRegistrations.get( item );
|
||||||
if( reg == null )
|
if( reg == null )
|
||||||
{
|
{
|
||||||
iconRegistrations.put( item, reg = new LinkedList<IconReg>() );
|
iconRegistrations.put( item, reg = new LinkedList<>() );
|
||||||
}
|
}
|
||||||
|
|
||||||
ModelResourceLocation res = new ModelResourceLocation( new ResourceLocation( AppEng.MOD_ID, name ), "inventory" );
|
ModelResourceLocation res = new ModelResourceLocation( new ResourceLocation( AppEng.MOD_ID, name ), "inventory" );
|
||||||
|
@ -567,10 +572,7 @@ public class ClientHelper extends ServerHelper
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for( ResourceLocation res : extraIcons )
|
extraIcons.forEach( ev.map::registerSprite );
|
||||||
{
|
|
||||||
ev.map.registerSprite( res );
|
|
||||||
}
|
|
||||||
|
|
||||||
//if( ev.map.getTextureType() == ITEM_RENDERER )
|
//if( ev.map.getTextureType() == ITEM_RENDERER )
|
||||||
{
|
{
|
||||||
|
|
|
@ -99,7 +99,7 @@ public class SlotDisconnected extends AppEngSlot
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isSlotInInventory( IInventory par1iInventory, int par2 )
|
public boolean isHere( IInventory inv, int slotIn )
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,6 +23,7 @@ import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.inventory.IInventory;
|
import net.minecraft.inventory.IInventory;
|
||||||
import net.minecraft.inventory.Slot;
|
import net.minecraft.inventory.Slot;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
|
||||||
import appeng.api.storage.data.IAEItemStack;
|
import appeng.api.storage.data.IAEItemStack;
|
||||||
|
|
||||||
|
|
||||||
|
@ -96,7 +97,7 @@ public class SlotME extends Slot
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isSlotInInventory( IInventory par1iInventory, int par2 )
|
public boolean isHere( IInventory inv, int slotIn )
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,7 +27,7 @@ import net.minecraft.world.IBlockAccess;
|
||||||
import net.minecraftforge.client.IItemRenderer.ItemRenderType;
|
import net.minecraftforge.client.IItemRenderer.ItemRenderType;
|
||||||
import appeng.api.AEApi;
|
import appeng.api.AEApi;
|
||||||
import appeng.api.util.AEPartLocation;
|
import appeng.api.util.AEPartLocation;
|
||||||
import appeng.block.solids.BlockQuartzGlass;
|
import appeng.decorative.solid.QuartzGlassBlock;
|
||||||
import appeng.client.render.BaseBlockRender;
|
import appeng.client.render.BaseBlockRender;
|
||||||
import appeng.client.render.ModelGenerator;
|
import appeng.client.render.ModelGenerator;
|
||||||
import appeng.client.texture.ExtraBlockTextures;
|
import appeng.client.texture.ExtraBlockTextures;
|
||||||
|
@ -35,7 +35,7 @@ import appeng.client.texture.OffsetIcon;
|
||||||
import appeng.tile.AEBaseTile;
|
import appeng.tile.AEBaseTile;
|
||||||
|
|
||||||
|
|
||||||
public class RenderQuartzGlass extends BaseBlockRender<BlockQuartzGlass, AEBaseTile>
|
public class RenderQuartzGlass extends BaseBlockRender<QuartzGlassBlock, AEBaseTile>
|
||||||
{
|
{
|
||||||
|
|
||||||
static byte[][][] offsets;
|
static byte[][][] offsets;
|
||||||
|
@ -58,7 +58,7 @@ public class RenderQuartzGlass extends BaseBlockRender<BlockQuartzGlass, AEBaseT
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void renderInventory( BlockQuartzGlass block, ItemStack is, ModelGenerator renderer, ItemRenderType type, Object[] obj )
|
public void renderInventory( QuartzGlassBlock block, ItemStack is, ModelGenerator renderer, ItemRenderType type, Object[] obj )
|
||||||
{
|
{
|
||||||
renderer.overrideBlockTexture = ExtraBlockTextures.GlassFrame.getIcon();
|
renderer.overrideBlockTexture = ExtraBlockTextures.GlassFrame.getIcon();
|
||||||
super.renderInventory( block, is, renderer, type, obj );
|
super.renderInventory( block, is, renderer, type, obj );
|
||||||
|
@ -67,7 +67,7 @@ public class RenderQuartzGlass extends BaseBlockRender<BlockQuartzGlass, AEBaseT
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean renderInWorld( BlockQuartzGlass imb, IBlockAccess world, BlockPos pos, ModelGenerator renderer )
|
public boolean renderInWorld( QuartzGlassBlock imb, IBlockAccess world, BlockPos pos, ModelGenerator renderer )
|
||||||
{
|
{
|
||||||
renderer.setRenderBounds( 0, 0, 0, 1, 1, 1 );
|
renderer.setRenderBounds( 0, 0, 0, 1, 1, 1 );
|
||||||
|
|
||||||
|
@ -130,7 +130,7 @@ public class RenderQuartzGlass extends BaseBlockRender<BlockQuartzGlass, AEBaseT
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void renderEdge( BlockQuartzGlass imb, IBlockAccess world, BlockPos pos, ModelGenerator renderer, AEPartLocation side, AEPartLocation direction )
|
private void renderEdge( QuartzGlassBlock imb, IBlockAccess world, BlockPos pos, ModelGenerator renderer, AEPartLocation side, AEPartLocation direction )
|
||||||
{
|
{
|
||||||
if( !this.isFlush( imb, world, pos.getX() + side.xOffset, pos.getY() + side.yOffset, pos.getZ() + side.zOffset ) )
|
if( !this.isFlush( imb, world, pos.getX() + side.xOffset, pos.getY() + side.yOffset, pos.getZ() + side.zOffset ) )
|
||||||
{
|
{
|
||||||
|
@ -214,12 +214,12 @@ public class RenderQuartzGlass extends BaseBlockRender<BlockQuartzGlass, AEBaseT
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isFlush( BlockQuartzGlass imb, IBlockAccess world, int x, int y, int z )
|
private boolean isFlush( QuartzGlassBlock imb, IBlockAccess world, int x, int y, int z )
|
||||||
{
|
{
|
||||||
return this.isGlass( imb, world, new BlockPos(x, y, z) );
|
return this.isGlass( imb, world, new BlockPos(x, y, z) );
|
||||||
}
|
}
|
||||||
|
|
||||||
private boolean isGlass( BlockQuartzGlass imb, IBlockAccess world,BlockPos pos)
|
private boolean isGlass( QuartzGlassBlock imb, IBlockAccess world,BlockPos pos)
|
||||||
{
|
{
|
||||||
return this.isQuartzGlass( world, pos ) || this.isVibrantQuartzGlass( world, pos );
|
return this.isQuartzGlass( world, pos ) || this.isVibrantQuartzGlass( world, pos );
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,14 +23,14 @@ import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.BlockPos;
|
import net.minecraft.util.BlockPos;
|
||||||
import net.minecraft.world.IBlockAccess;
|
import net.minecraft.world.IBlockAccess;
|
||||||
import net.minecraftforge.client.IItemRenderer.ItemRenderType;
|
import net.minecraftforge.client.IItemRenderer.ItemRenderType;
|
||||||
import appeng.block.solids.OreQuartz;
|
import appeng.decorative.solid.QuartzOreBlock;
|
||||||
import appeng.client.render.BaseBlockRender;
|
import appeng.client.render.BaseBlockRender;
|
||||||
import appeng.client.render.ModelGenerator;
|
import appeng.client.render.ModelGenerator;
|
||||||
import appeng.client.texture.ExtraBlockTextures;
|
import appeng.client.texture.ExtraBlockTextures;
|
||||||
import appeng.tile.AEBaseTile;
|
import appeng.tile.AEBaseTile;
|
||||||
|
|
||||||
|
|
||||||
public class RenderQuartzOre extends BaseBlockRender<OreQuartz, AEBaseTile>
|
public class RenderQuartzOre extends BaseBlockRender<QuartzOreBlock, AEBaseTile>
|
||||||
{
|
{
|
||||||
|
|
||||||
public RenderQuartzOre()
|
public RenderQuartzOre()
|
||||||
|
@ -39,7 +39,7 @@ public class RenderQuartzOre extends BaseBlockRender<OreQuartz, AEBaseTile>
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void renderInventory( OreQuartz blk, ItemStack is, ModelGenerator renderer, ItemRenderType type, Object[] obj )
|
public void renderInventory( QuartzOreBlock blk, ItemStack is, ModelGenerator renderer, ItemRenderType type, Object[] obj )
|
||||||
{
|
{
|
||||||
super.renderInventory( blk, is, renderer, type, obj );
|
super.renderInventory( blk, is, renderer, type, obj );
|
||||||
blk.getRendererInstance().setTemporaryRenderIcon( ExtraBlockTextures.OreQuartzStone.getIcon() );
|
blk.getRendererInstance().setTemporaryRenderIcon( ExtraBlockTextures.OreQuartzStone.getIcon() );
|
||||||
|
@ -48,9 +48,9 @@ public class RenderQuartzOre extends BaseBlockRender<OreQuartz, AEBaseTile>
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean renderInWorld( OreQuartz block, IBlockAccess world, BlockPos pos, ModelGenerator renderer )
|
public boolean renderInWorld( QuartzOreBlock block, IBlockAccess world, BlockPos pos, ModelGenerator renderer )
|
||||||
{
|
{
|
||||||
OreQuartz blk = block;
|
QuartzOreBlock blk = block;
|
||||||
blk.setEnhanceBrightness( true );
|
blk.setEnhanceBrightness( true );
|
||||||
super.renderInWorld( block, world, pos, renderer );
|
super.renderInWorld( block, world, pos, renderer );
|
||||||
blk.setEnhanceBrightness( false );
|
blk.setEnhanceBrightness( false );
|
||||||
|
|
|
@ -75,7 +75,7 @@ public class AssemblerFX extends EntityFX
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void func_180434_a(WorldRenderer par1Tessellator, Entity p_180434_2_, float l, float rX, float rY, float rZ, float rYZ, float rXY )
|
public void renderParticle(WorldRenderer par1Tessellator, Entity p_180434_2_, float l, float rX, float rY, float rZ, float rYZ, float rXY )
|
||||||
{
|
{
|
||||||
this.time += l;
|
this.time += l;
|
||||||
if( this.time > 4.0 )
|
if( this.time > 4.0 )
|
||||||
|
|
|
@ -68,7 +68,7 @@ public class CraftingFx extends EntityBreakingFX
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void func_180434_a(WorldRenderer par1Tessellator, Entity p_180434_2_, float partialTick, float x, float y, float z, float rx, float rz)
|
public void renderParticle(WorldRenderer par1Tessellator, Entity p_180434_2_, float partialTick, float x, float y, float z, float rx, float rz)
|
||||||
{
|
{
|
||||||
if( partialTick < 0 || partialTick > 1 )
|
if( partialTick < 0 || partialTick > 1 )
|
||||||
{
|
{
|
||||||
|
|
|
@ -67,7 +67,7 @@ public class EnergyFx extends EntityBreakingFX
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void func_180434_a(WorldRenderer par1Tessellator, Entity p_180434_2_, float par2, float par3, float par4, float par5, float par6, float par7)
|
public void renderParticle(WorldRenderer par1Tessellator, Entity p_180434_2_, float par2, float par3, float par4, float par5, float par6, float par7)
|
||||||
{
|
{
|
||||||
float f6 = this.particleTextureIndex.getMinU();
|
float f6 = this.particleTextureIndex.getMinU();
|
||||||
float f7 = this.particleTextureIndex.getMaxU();
|
float f7 = this.particleTextureIndex.getMaxU();
|
||||||
|
|
|
@ -84,7 +84,7 @@ public class LightningFX extends EntityFX
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void func_180434_a(WorldRenderer tess, Entity p_180434_2_, float l, float rX, float rY, float rZ, float rYZ, float rXY )
|
public void renderParticle(WorldRenderer tess, Entity p_180434_2_, float l, float rX, float rY, float rZ, float rYZ, float rXY )
|
||||||
{
|
{
|
||||||
float j = 1.0f;
|
float j = 1.0f;
|
||||||
tess.setColorRGBA_F( this.particleRed * j * 0.9f, this.particleGreen * j * 0.95f, this.particleBlue * j, this.particleAlpha );
|
tess.setColorRGBA_F( this.particleRed * j * 0.9f, this.particleGreen * j * 0.95f, this.particleBlue * j, this.particleAlpha );
|
||||||
|
|
|
@ -70,7 +70,7 @@ public class MatterCannonFX extends EntityBreakingFX
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void func_180434_a(WorldRenderer par1Tessellator, Entity p_180434_2_, float par2, float par3, float par4, float par5, float par6, float par7 )
|
public void renderParticle(WorldRenderer par1Tessellator, Entity p_180434_2_, float par2, float par3, float par4, float par5, float par6, float par7 )
|
||||||
{
|
{
|
||||||
float f6 = this.particleTextureIndex.getMinU();
|
float f6 = this.particleTextureIndex.getMinU();
|
||||||
float f7 = this.particleTextureIndex.getMaxU();
|
float f7 = this.particleTextureIndex.getMaxU();
|
||||||
|
|
|
@ -295,7 +295,7 @@ public class ContainerCellWorkbench extends ContainerUpgradeable
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return "Upgrades";
|
return "Upgrades";
|
||||||
}
|
}
|
||||||
|
|
|
@ -298,9 +298,10 @@ public class ContainerMEMonitorable extends AEBaseContainer implements IConfigMa
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void addCraftingToCrafters( ICrafting c )
|
public void onCraftGuiOpened( ICrafting c )
|
||||||
{
|
{
|
||||||
super.addCraftingToCrafters( c );
|
super.onCraftGuiOpened( c );
|
||||||
|
|
||||||
this.queueInventory( c );
|
this.queueInventory( c );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -194,7 +194,7 @@ public class ContainerQuartzKnife extends AEBaseContainer implements IAEAppEngIn
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return "Quartz Knife Output";
|
return "Quartz Knife Output";
|
||||||
}
|
}
|
||||||
|
|
|
@ -82,7 +82,7 @@ public class NullSlot extends Slot
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isSlotInInventory( IInventory par1IInventory, int par2 )
|
public boolean isHere( IInventory inv, int slotIn )
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,10 +19,11 @@
|
||||||
package appeng.core;
|
package appeng.core;
|
||||||
|
|
||||||
|
|
||||||
import net.minecraft.util.BlockPos;
|
|
||||||
import net.minecraftforge.fml.relauncher.FMLRelaunchLog;
|
|
||||||
|
|
||||||
import org.apache.logging.log4j.Level;
|
import org.apache.logging.log4j.Level;
|
||||||
|
import org.apache.logging.log4j.LogManager;
|
||||||
|
import org.apache.logging.log4j.Logger;
|
||||||
|
|
||||||
|
import net.minecraft.util.BlockPos;
|
||||||
|
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.core.features.AEFeature;
|
||||||
import appeng.tile.AEBaseTile;
|
import appeng.tile.AEBaseTile;
|
||||||
|
@ -31,8 +32,8 @@ import appeng.util.Platform;
|
||||||
|
|
||||||
public final class AELog
|
public final class AELog
|
||||||
{
|
{
|
||||||
|
private static final Logger SERVER = LogManager.getFormatterLogger( "AE2:S" );
|
||||||
public static final FMLRelaunchLog INSTANCE = FMLRelaunchLog.log;
|
private static final Logger CLIENT = LogManager.getFormatterLogger( "AE2:C" );
|
||||||
|
|
||||||
private AELog()
|
private AELog()
|
||||||
{
|
{
|
||||||
|
@ -47,7 +48,14 @@ public final class AELog
|
||||||
{
|
{
|
||||||
if( AEConfig.instance == null || AEConfig.instance.isFeatureEnabled( AEFeature.Logging ) )
|
if( AEConfig.instance == null || AEConfig.instance.isFeatureEnabled( AEFeature.Logging ) )
|
||||||
{
|
{
|
||||||
FMLRelaunchLog.log( "AE2:" + ( Platform.isServer() ? "S" : "C" ), level, format, data );
|
if( Platform.isServer() )
|
||||||
|
{
|
||||||
|
SERVER.log( level, format, data );
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
CLIENT.log( level, format, data );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -59,7 +59,6 @@ public final class AppEng
|
||||||
public static final String MOD_ID = "appliedenergistics2";
|
public static final String MOD_ID = "appliedenergistics2";
|
||||||
public static final String MOD_NAME = "Applied Energistics 2";
|
public static final String MOD_NAME = "Applied Energistics 2";
|
||||||
|
|
||||||
public static final String MODID = "appliedenergistics2";
|
|
||||||
public static final String ASSETS = "appliedenergistics2:";
|
public static final String ASSETS = "appliedenergistics2:";
|
||||||
|
|
||||||
public static final String MOD_DEPENDENCIES =
|
public static final String MOD_DEPENDENCIES =
|
||||||
|
@ -162,6 +161,7 @@ public final class AppEng
|
||||||
|
|
||||||
Registration.INSTANCE.initialize( event );
|
Registration.INSTANCE.initialize( event );
|
||||||
IntegrationRegistry.INSTANCE.init();
|
IntegrationRegistry.INSTANCE.init();
|
||||||
|
CommonHelper.proxy.init();
|
||||||
|
|
||||||
AELog.info( "Initialization ( ended after " + star.elapsed( TimeUnit.MILLISECONDS ) + "ms )" );
|
AELog.info( "Initialization ( ended after " + star.elapsed( TimeUnit.MILLISECONDS ) + "ms )" );
|
||||||
}
|
}
|
||||||
|
@ -183,6 +183,12 @@ public final class AppEng
|
||||||
NetworkHandler.instance = new NetworkHandler( "AE2" );
|
NetworkHandler.instance = new NetworkHandler( "AE2" );
|
||||||
|
|
||||||
AELog.info( "Post Initialization ( ended after " + star.elapsed( TimeUnit.MILLISECONDS ) + "ms )" );
|
AELog.info( "Post Initialization ( ended after " + star.elapsed( TimeUnit.MILLISECONDS ) + "ms )" );
|
||||||
|
|
||||||
|
// System.out.println( "REGISTRY:" );
|
||||||
|
// for( Block block : GameData.getBlockRegistry().typeSafeIterable() )
|
||||||
|
// {
|
||||||
|
// System.out.println( "block = " + block + ", " + block.getUnlocalizedName() + ", " + block.getLocalizedName() );
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
|
|
|
@ -24,6 +24,7 @@ import java.util.Random;
|
||||||
|
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.util.ResourceLocation;
|
import net.minecraft.util.ResourceLocation;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
@ -47,7 +48,7 @@ public abstract class CommonHelper
|
||||||
|
|
||||||
public abstract World getWorld();
|
public abstract World getWorld();
|
||||||
|
|
||||||
public abstract void bindTileEntitySpecialRenderer( Class tile, AEBaseBlock blk );
|
public abstract void bindTileEntitySpecialRenderer( Class <? extends TileEntity> tile, AEBaseBlock blk );
|
||||||
|
|
||||||
public abstract List<EntityPlayer> getPlayers();
|
public abstract List<EntityPlayer> getPlayers();
|
||||||
|
|
||||||
|
|
|
@ -68,7 +68,7 @@ import appeng.core.localization.GuiText;
|
||||||
import appeng.core.localization.PlayerMessages;
|
import appeng.core.localization.PlayerMessages;
|
||||||
import appeng.core.stats.PlayerStatsRegistration;
|
import appeng.core.stats.PlayerStatsRegistration;
|
||||||
import appeng.hooks.TickHandler;
|
import appeng.hooks.TickHandler;
|
||||||
import appeng.items.materials.ItemMultiMaterial;
|
import appeng.items.materials.MultiItem;
|
||||||
import appeng.me.cache.CraftingGridCache;
|
import appeng.me.cache.CraftingGridCache;
|
||||||
import appeng.me.cache.EnergyGridCache;
|
import appeng.me.cache.EnergyGridCache;
|
||||||
import appeng.me.cache.GridStorageCache;
|
import appeng.me.cache.GridStorageCache;
|
||||||
|
@ -222,7 +222,7 @@ public final class Registration
|
||||||
final IRegistryContainer registries = api.registries();
|
final IRegistryContainer registries = api.registries();
|
||||||
|
|
||||||
// Perform ore camouflage!
|
// Perform ore camouflage!
|
||||||
ItemMultiMaterial.instance.makeUnique();
|
MultiItem.instance.makeUnique();
|
||||||
|
|
||||||
final Runnable recipeLoader = new RecipeLoader( this.recipeHandler );
|
final Runnable recipeLoader = new RecipeLoader( this.recipeHandler );
|
||||||
recipeLoader.run();
|
recipeLoader.run();
|
||||||
|
|
|
@ -53,20 +53,20 @@ import appeng.block.networking.BlockEnergyCell;
|
||||||
import appeng.block.networking.BlockWireless;
|
import appeng.block.networking.BlockWireless;
|
||||||
import appeng.block.qnb.BlockQuantumLinkChamber;
|
import appeng.block.qnb.BlockQuantumLinkChamber;
|
||||||
import appeng.block.qnb.BlockQuantumRing;
|
import appeng.block.qnb.BlockQuantumRing;
|
||||||
import appeng.block.solids.BlockFluix;
|
import appeng.decorative.solid.FluixBlock;
|
||||||
import appeng.block.solids.BlockQuartz;
|
import appeng.decorative.solid.QuartzBlock;
|
||||||
import appeng.block.solids.BlockQuartzChiseled;
|
import appeng.decorative.solid.ChiseledQuartzBlock;
|
||||||
import appeng.block.solids.BlockQuartzGlass;
|
import appeng.decorative.solid.QuartzGlassBlock;
|
||||||
import appeng.block.solids.BlockQuartzLamp;
|
import appeng.decorative.solid.QuartzLampBlock;
|
||||||
import appeng.block.solids.BlockQuartzPillar;
|
import appeng.decorative.solid.QuartzPillarBlock;
|
||||||
import appeng.block.solids.BlockSkyStone;
|
import appeng.decorative.solid.SkyStoneBlock;
|
||||||
import appeng.block.solids.BlockSkyStone.SkystoneType;
|
import appeng.decorative.solid.SkyStoneBlock.SkystoneType;
|
||||||
import appeng.block.solids.OreQuartz;
|
import appeng.decorative.solid.QuartzOreBlock;
|
||||||
import appeng.block.solids.OreQuartzCharged;
|
import appeng.decorative.solid.ChargedQuartzOreBlock;
|
||||||
import appeng.block.spatial.BlockMatrixFrame;
|
import appeng.block.spatial.BlockMatrixFrame;
|
||||||
import appeng.block.spatial.BlockSpatialIOPort;
|
import appeng.block.spatial.BlockSpatialIOPort;
|
||||||
import appeng.block.spatial.BlockSpatialPylon;
|
import appeng.block.spatial.BlockSpatialPylon;
|
||||||
import appeng.block.stair.BlockStairCommon;
|
import appeng.decorative.stair.BlockStairCommon;
|
||||||
import appeng.block.storage.BlockChest;
|
import appeng.block.storage.BlockChest;
|
||||||
import appeng.block.storage.BlockDrive;
|
import appeng.block.storage.BlockDrive;
|
||||||
import appeng.block.storage.BlockIOPort;
|
import appeng.block.storage.BlockIOPort;
|
||||||
|
@ -161,20 +161,21 @@ public final class ApiBlocks implements IBlocks
|
||||||
|
|
||||||
public ApiBlocks( DefinitionConstructor constructor )
|
public ApiBlocks( DefinitionConstructor constructor )
|
||||||
{
|
{
|
||||||
this.quartzOre = constructor.registerBlockDefinition( new OreQuartz() );
|
// this.quartzOre = new BlockDefinition( "ore.quartz", new OreQuartz() );
|
||||||
this.quartzOreCharged = constructor.registerBlockDefinition( new OreQuartzCharged() );
|
this.quartzOre = constructor.registerBlockDefinition( new QuartzOreBlock() );
|
||||||
|
this.quartzOreCharged = constructor.registerBlockDefinition( new ChargedQuartzOreBlock() );
|
||||||
this.matrixFrame = constructor.registerBlockDefinition( new BlockMatrixFrame() );
|
this.matrixFrame = constructor.registerBlockDefinition( new BlockMatrixFrame() );
|
||||||
this.quartz = constructor.registerBlockDefinition( new BlockQuartz() );
|
this.quartz = constructor.registerBlockDefinition( new QuartzBlock() );
|
||||||
this.quartzPillar = constructor.registerBlockDefinition( new BlockQuartzPillar() );
|
this.quartzPillar = constructor.registerBlockDefinition( new QuartzPillarBlock() );
|
||||||
this.quartzChiseled = constructor.registerBlockDefinition( new BlockQuartzChiseled() );
|
this.quartzChiseled = constructor.registerBlockDefinition( new ChiseledQuartzBlock() );
|
||||||
this.quartzGlass = constructor.registerBlockDefinition( new BlockQuartzGlass() );
|
this.quartzGlass = constructor.registerBlockDefinition( new QuartzGlassBlock() );
|
||||||
this.quartzVibrantGlass = constructor.registerBlockDefinition( new BlockQuartzLamp() );
|
this.quartzVibrantGlass = constructor.registerBlockDefinition( new QuartzLampBlock() );
|
||||||
this.quartzTorch = constructor.registerBlockDefinition( new BlockQuartzTorch() );
|
this.quartzTorch = constructor.registerBlockDefinition( new BlockQuartzTorch() );
|
||||||
this.fluix = constructor.registerBlockDefinition( new BlockFluix() );
|
this.fluix = constructor.registerBlockDefinition( new FluixBlock() );
|
||||||
this.skyStone_stone = constructor.registerBlockDefinition( new BlockSkyStone( SkystoneType.stone ) );
|
this.skyStone_stone = constructor.registerBlockDefinition( new SkyStoneBlock( SkystoneType.STONE ) );
|
||||||
this.skyStone_block = constructor.registerBlockDefinition( new BlockSkyStone( SkystoneType.block ) );
|
this.skyStone_block = constructor.registerBlockDefinition( new SkyStoneBlock( SkystoneType.BLOCK ) );
|
||||||
this.skyStone_brick = constructor.registerBlockDefinition( new BlockSkyStone( SkystoneType.brick ) );
|
this.skyStone_brick = constructor.registerBlockDefinition( new SkyStoneBlock( SkystoneType.BRICK ) );
|
||||||
this.skyStone_smallbrick = constructor.registerBlockDefinition( new BlockSkyStone( SkystoneType.smallbrick ) );
|
this.skyStone_smallbrick = constructor.registerBlockDefinition( new SkyStoneBlock( SkystoneType.SMALL_BRICK ) );
|
||||||
this.skyChest = constructor.registerBlockDefinition( new BlockSkyChest( SkyChestType.STONE ) );
|
this.skyChest = constructor.registerBlockDefinition( new BlockSkyChest( SkyChestType.STONE ) );
|
||||||
this.skyChestBlock = constructor.registerBlockDefinition( new BlockSkyChest( SkyChestType.BLOCK ) );
|
this.skyChestBlock = constructor.registerBlockDefinition( new BlockSkyChest( SkyChestType.BLOCK ) );
|
||||||
this.skyCompass = constructor.registerBlockDefinition( new BlockSkyCompass() );
|
this.skyCompass = constructor.registerBlockDefinition( new BlockSkyCompass() );
|
||||||
|
@ -214,7 +215,7 @@ public final class ApiBlocks implements IBlocks
|
||||||
this.lightDetector = constructor.registerTileDefinition( new BlockLightDetector() );
|
this.lightDetector = constructor.registerTileDefinition( new BlockLightDetector() );
|
||||||
this.paint = constructor.registerTileDefinition( new BlockPaint() );
|
this.paint = constructor.registerTileDefinition( new BlockPaint() );
|
||||||
|
|
||||||
this.skyStoneStair = makeStairs( constructor, skyStone_stone, "skystone" );
|
this.skyStoneStair = makeStairs( constructor, skyStone_stone, "skystone.stone" );
|
||||||
this.skyStoneBlockStair = makeStairs( constructor, skyStone_block, "skystone.block" );
|
this.skyStoneBlockStair = makeStairs( constructor, skyStone_block, "skystone.block" );
|
||||||
this.skyStoneBrickStair = makeStairs( constructor, skyStone_brick, "skystone.brick" );
|
this.skyStoneBrickStair = makeStairs( constructor, skyStone_brick, "skystone.brick" );
|
||||||
this.skyStoneSmallBrickStair = makeStairs( constructor, skyStone_smallbrick, "skystone.brick.small" );
|
this.skyStoneSmallBrickStair = makeStairs( constructor, skyStone_smallbrick, "skystone.brick.small" );
|
||||||
|
|
|
@ -22,7 +22,7 @@ package appeng.core.api.definitions;
|
||||||
import appeng.api.definitions.IItemDefinition;
|
import appeng.api.definitions.IItemDefinition;
|
||||||
import appeng.api.definitions.IMaterials;
|
import appeng.api.definitions.IMaterials;
|
||||||
import appeng.core.features.DamagedItemDefinition;
|
import appeng.core.features.DamagedItemDefinition;
|
||||||
import appeng.items.materials.ItemMultiMaterial;
|
import appeng.items.materials.MultiItem;
|
||||||
import appeng.items.materials.MaterialType;
|
import appeng.items.materials.MaterialType;
|
||||||
|
|
||||||
|
|
||||||
|
@ -93,7 +93,7 @@ public final class ApiMaterials implements IMaterials
|
||||||
|
|
||||||
private final IItemDefinition woodenGear;
|
private final IItemDefinition woodenGear;
|
||||||
|
|
||||||
private final IItemDefinition wireless;
|
private final IItemDefinition wirelessReceiver;
|
||||||
private final IItemDefinition wirelessBooster;
|
private final IItemDefinition wirelessBooster;
|
||||||
|
|
||||||
private final IItemDefinition annihilationCore;
|
private final IItemDefinition annihilationCore;
|
||||||
|
@ -105,80 +105,79 @@ public final class ApiMaterials implements IMaterials
|
||||||
|
|
||||||
public ApiMaterials( DefinitionConstructor constructor )
|
public ApiMaterials( DefinitionConstructor constructor )
|
||||||
{
|
{
|
||||||
final ItemMultiMaterial itemMultiMaterial = new ItemMultiMaterial();
|
final MultiItem materials = new MultiItem();
|
||||||
constructor.registerItemDefinition( itemMultiMaterial );
|
constructor.registerItemDefinition( materials );
|
||||||
|
|
||||||
this.cell2SpatialPart = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.Cell2SpatialPart ) );
|
this.cell2SpatialPart = new DamagedItemDefinition( "material.cell.spatial.2", materials.createMaterial( MaterialType.Cell2SpatialPart ) );
|
||||||
this.cell16SpatialPart = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.Cell16SpatialPart ) );
|
this.cell16SpatialPart = new DamagedItemDefinition( "material.cell.spatial.16", materials.createMaterial( MaterialType.Cell16SpatialPart ) );
|
||||||
this.cell128SpatialPart = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.Cell128SpatialPart ) );
|
this.cell128SpatialPart = new DamagedItemDefinition( "material.cell.spatial.128", materials.createMaterial( MaterialType.Cell128SpatialPart ) );
|
||||||
|
|
||||||
this.silicon = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.Silicon ) );
|
this.silicon = new DamagedItemDefinition( "material.silicon", materials.createMaterial( MaterialType.Silicon ) );
|
||||||
this.skyDust = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.SkyDust ) );
|
this.skyDust = new DamagedItemDefinition( "material.dust.skystone", materials.createMaterial( MaterialType.SkyDust ) );
|
||||||
|
|
||||||
this.calcProcessorPress = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.CalcProcessorPress ) );
|
this.calcProcessorPress = new DamagedItemDefinition( "material.press.processor.calculation", materials.createMaterial( MaterialType.CalcProcessorPress ) );
|
||||||
this.engProcessorPress = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.EngProcessorPress ) );
|
this.engProcessorPress = new DamagedItemDefinition( "material.press.processor.engineering", materials.createMaterial( MaterialType.EngProcessorPress ) );
|
||||||
this.logicProcessorPress = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.LogicProcessorPress ) );
|
this.logicProcessorPress = new DamagedItemDefinition( "material.press.processor.logic", materials.createMaterial( MaterialType.LogicProcessorPress ) );
|
||||||
|
this.siliconPress = new DamagedItemDefinition( "material.press.silicon", materials.createMaterial( MaterialType.SiliconPress ) );
|
||||||
|
this.namePress = new DamagedItemDefinition( "material.press.name", materials.createMaterial( MaterialType.NamePress ) );
|
||||||
|
|
||||||
this.calcProcessorPrint = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.CalcProcessorPrint ) );
|
this.calcProcessorPrint = new DamagedItemDefinition( "material.print.processor.calculation", materials.createMaterial( MaterialType.CalcProcessorPrint ) );
|
||||||
this.engProcessorPrint = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.EngProcessorPrint ) );
|
this.engProcessorPrint = new DamagedItemDefinition( "material.print.processor.engineering", materials.createMaterial( MaterialType.EngProcessorPrint ) );
|
||||||
this.logicProcessorPrint = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.LogicProcessorPrint ) );
|
this.logicProcessorPrint = new DamagedItemDefinition( "material.print.processor.logic", materials.createMaterial( MaterialType.LogicProcessorPrint ) );
|
||||||
|
this.siliconPrint = new DamagedItemDefinition( "material.print.silicon", materials.createMaterial( MaterialType.SiliconPrint ) );
|
||||||
|
|
||||||
this.siliconPress = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.SiliconPress ) );
|
|
||||||
this.siliconPrint = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.SiliconPrint ) );
|
|
||||||
|
|
||||||
this.namePress = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.NamePress ) );
|
this.logicProcessor = new DamagedItemDefinition( "material.processor.logic", materials.createMaterial( MaterialType.LogicProcessor ) );
|
||||||
|
this.calcProcessor = new DamagedItemDefinition( "material.processor.calculation", materials.createMaterial( MaterialType.CalcProcessor ) );
|
||||||
|
this.engProcessor = new DamagedItemDefinition( "material.processor.engineering", materials.createMaterial( MaterialType.EngProcessor ) );
|
||||||
|
|
||||||
this.logicProcessor = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.LogicProcessor ) );
|
this.basicCard = new DamagedItemDefinition( "material.card.basic", materials.createMaterial( MaterialType.BasicCard ) );
|
||||||
this.calcProcessor = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.CalcProcessor ) );
|
this.advCard = new DamagedItemDefinition( "material.card.advanced", materials.createMaterial( MaterialType.AdvCard ) );
|
||||||
this.engProcessor = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.EngProcessor ) );
|
|
||||||
|
|
||||||
this.basicCard = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.BasicCard ) );
|
this.purifiedCertusQuartzCrystal = new DamagedItemDefinition( "material.crystal.quartz.certus.purified", materials.createMaterial( MaterialType.PurifiedCertusQuartzCrystal ) );
|
||||||
this.advCard = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.AdvCard ) );
|
this.purifiedNetherQuartzCrystal = new DamagedItemDefinition( "material.crystal.quartz.nether.purified", materials.createMaterial( MaterialType.PurifiedNetherQuartzCrystal ) );
|
||||||
|
this.purifiedFluixCrystal = new DamagedItemDefinition( "material.crystal.fluix.purified", materials.createMaterial( MaterialType.PurifiedFluixCrystal ) );
|
||||||
|
|
||||||
this.purifiedCertusQuartzCrystal = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.PurifiedCertusQuartzCrystal ) );
|
this.cell1kPart = new DamagedItemDefinition( "material.cell.storage.1k", materials.createMaterial( MaterialType.Cell1kPart ) );
|
||||||
this.purifiedNetherQuartzCrystal = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.PurifiedNetherQuartzCrystal ) );
|
this.cell4kPart = new DamagedItemDefinition( "material.cell.storage.4k", materials.createMaterial( MaterialType.Cell4kPart ) );
|
||||||
this.purifiedFluixCrystal = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.PurifiedFluixCrystal ) );
|
this.cell16kPart = new DamagedItemDefinition( "material.cell.storage.16k", materials.createMaterial( MaterialType.Cell16kPart ) );
|
||||||
|
this.cell64kPart = new DamagedItemDefinition( "material.cell.storage.64k", materials.createMaterial( MaterialType.Cell64kPart ) );
|
||||||
|
this.emptyStorageCell = new DamagedItemDefinition( "material.cell.storage.empty", materials.createMaterial( MaterialType.EmptyStorageCell ) );
|
||||||
|
|
||||||
this.cell1kPart = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.Cell1kPart ) );
|
this.cardRedstone = new DamagedItemDefinition( "material.card.redstone", materials.createMaterial( MaterialType.CardRedstone ) );
|
||||||
this.cell4kPart = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.Cell4kPart ) );
|
this.cardSpeed = new DamagedItemDefinition( "material.card.acceleration", materials.createMaterial( MaterialType.CardSpeed ) );
|
||||||
this.cell16kPart = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.Cell16kPart ) );
|
this.cardCapacity = new DamagedItemDefinition( "material.card.capacity", materials.createMaterial( MaterialType.CardCapacity ) );
|
||||||
this.cell64kPart = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.Cell64kPart ) );
|
this.cardFuzzy = new DamagedItemDefinition( "material.card.fuzzy", materials.createMaterial( MaterialType.CardFuzzy ) );
|
||||||
this.emptyStorageCell = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.EmptyStorageCell ) );
|
this.cardInverter = new DamagedItemDefinition( "material.card.inverter", materials.createMaterial( MaterialType.CardInverter ) );
|
||||||
|
this.cardCrafting = new DamagedItemDefinition( "material.card.crafting", materials.createMaterial( MaterialType.CardCrafting ) );
|
||||||
|
|
||||||
this.cardRedstone = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.CardRedstone ) );
|
this.enderDust = new DamagedItemDefinition( "material.dust.ender", materials.createMaterial( MaterialType.EnderDust ) );
|
||||||
this.cardSpeed = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.CardSpeed ) );
|
this.flour = new DamagedItemDefinition( "material.flour", materials.createMaterial( MaterialType.Flour ) );
|
||||||
this.cardCapacity = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.CardCapacity ) );
|
this.goldDust = new DamagedItemDefinition( "material.dust.gold", materials.createMaterial( MaterialType.GoldDust ) );
|
||||||
this.cardFuzzy = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.CardFuzzy ) );
|
this.ironDust = new DamagedItemDefinition( "material.dust.iron", materials.createMaterial( MaterialType.IronDust ) );
|
||||||
this.cardInverter = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.CardInverter ) );
|
this.fluixDust = new DamagedItemDefinition( "material.dust.fluix", materials.createMaterial( MaterialType.FluixDust ) );
|
||||||
this.cardCrafting = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.CardCrafting ) );
|
this.certusQuartzDust = new DamagedItemDefinition( "material.dust.quartz.certus", materials.createMaterial( MaterialType.CertusQuartzDust ) );
|
||||||
|
this.netherQuartzDust = new DamagedItemDefinition( "material.dust.quartz.nether", materials.createMaterial( MaterialType.NetherQuartzDust ) );
|
||||||
|
|
||||||
this.enderDust = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.EnderDust ) );
|
this.matterBall = new DamagedItemDefinition( "material.ammo.matter_ball", materials.createMaterial( MaterialType.MatterBall ) );
|
||||||
this.flour = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.Flour ) );
|
this.ironNugget = new DamagedItemDefinition( "material.ammo.nugget.iron", materials.createMaterial( MaterialType.IronNugget ) );
|
||||||
this.goldDust = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.GoldDust ) );
|
|
||||||
this.ironDust = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.IronDust ) );
|
|
||||||
this.fluixDust = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.FluixDust ) );
|
|
||||||
this.certusQuartzDust = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.CertusQuartzDust ) );
|
|
||||||
this.netherQuartzDust = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.NetherQuartzDust ) );
|
|
||||||
|
|
||||||
this.matterBall = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.MatterBall ) );
|
this.certusQuartzCrystal = new DamagedItemDefinition( "material.crystal.quartz.certus", materials.createMaterial( MaterialType.CertusQuartzCrystal ) );
|
||||||
this.ironNugget = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.IronNugget ) );
|
this.certusQuartzCrystalCharged = new DamagedItemDefinition( "material.crystal.quartz.certus.charged", materials.createMaterial( MaterialType.CertusQuartzCrystalCharged ) );
|
||||||
|
this.fluixCrystal = new DamagedItemDefinition( "material.crystal.fluix", materials.createMaterial( MaterialType.FluixCrystal ) );
|
||||||
|
this.fluixPearl = new DamagedItemDefinition( "material.pearl.fluix", materials.createMaterial( MaterialType.FluixPearl ) );
|
||||||
|
|
||||||
this.certusQuartzCrystal = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.CertusQuartzCrystal ) );
|
this.woodenGear = new DamagedItemDefinition( "material.gear.wooden", materials.createMaterial( MaterialType.WoodenGear ) );
|
||||||
this.certusQuartzCrystalCharged = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.CertusQuartzCrystalCharged ) );
|
|
||||||
this.fluixCrystal = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.FluixCrystal ) );
|
|
||||||
this.fluixPearl = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.FluixPearl ) );
|
|
||||||
|
|
||||||
this.woodenGear = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.WoodenGear ) );
|
this.wirelessReceiver = new DamagedItemDefinition( "material.wireless.receiver", materials.createMaterial( MaterialType.Wireless ) );
|
||||||
|
this.wirelessBooster = new DamagedItemDefinition( "material.wireless.booster", materials.createMaterial( MaterialType.WirelessBooster ) );
|
||||||
|
|
||||||
this.wireless = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.Wireless ) );
|
this.annihilationCore = new DamagedItemDefinition( "material.core.annihilation", materials.createMaterial( MaterialType.AnnihilationCore ) );
|
||||||
this.wirelessBooster = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.WirelessBooster ) );
|
this.formationCore = new DamagedItemDefinition( "material.core.formation", materials.createMaterial( MaterialType.FormationCore ) );
|
||||||
|
|
||||||
this.annihilationCore = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.AnnihilationCore ) );
|
this.singularity = new DamagedItemDefinition( "material.singularity", materials.createMaterial( MaterialType.Singularity ) );
|
||||||
this.formationCore = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.FormationCore ) );
|
this.qESingularity = new DamagedItemDefinition( "material.singularity.entangled.quantum", materials.createMaterial( MaterialType.QESingularity ) );
|
||||||
|
this.blankPattern = new DamagedItemDefinition( "material.pattern.blank", materials.createMaterial( MaterialType.BlankPattern ) );
|
||||||
this.singularity = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.Singularity ) );
|
|
||||||
this.qESingularity = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.QESingularity ) );
|
|
||||||
this.blankPattern = new DamagedItemDefinition( itemMultiMaterial.createMaterial( MaterialType.BlankPattern ) );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -464,9 +463,9 @@ public final class ApiMaterials implements IMaterials
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IItemDefinition wireless()
|
public IItemDefinition wirelessReceiver()
|
||||||
{
|
{
|
||||||
return this.wireless;
|
return this.wirelessReceiver;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -85,35 +85,35 @@ public final class ApiParts implements IParts
|
||||||
// this.lumenCableCovered = Optional.absent(); // has yet to be implemented, no PartType defined for it yet
|
// this.lumenCableCovered = Optional.absent(); // has yet to be implemented, no PartType defined for it yet
|
||||||
// this.lumenCableGlass = Optional.absent(); // has yet to be implemented, no PartType defined for it yet
|
// this.lumenCableGlass = Optional.absent(); // has yet to be implemented, no PartType defined for it yet
|
||||||
// this.lumenCableDense = Optional.absent(); // has yet to be implemented, no PartType defined for it yet
|
// this.lumenCableDense = Optional.absent(); // has yet to be implemented, no PartType defined for it yet
|
||||||
this.quartzFiber = new DamagedItemDefinition( itemMultiPart.createPart( PartType.QuartzFiber ) );
|
this.quartzFiber = new DamagedItemDefinition( "part.quartz_fiber", itemMultiPart.createPart( PartType.QuartzFiber ) );
|
||||||
this.toggleBus = new DamagedItemDefinition( itemMultiPart.createPart( PartType.ToggleBus ) );
|
this.toggleBus = new DamagedItemDefinition( "part.toggle_bus", itemMultiPart.createPart( PartType.ToggleBus ) );
|
||||||
this.invertedToggleBus = new DamagedItemDefinition( itemMultiPart.createPart( PartType.InvertedToggleBus ) );
|
this.invertedToggleBus = new DamagedItemDefinition( "part.toggle_bus.inverted", itemMultiPart.createPart( PartType.InvertedToggleBus ) );
|
||||||
this.storageBus = new DamagedItemDefinition( itemMultiPart.createPart( PartType.StorageBus ) );
|
this.storageBus = new DamagedItemDefinition( "part.bus.storage", itemMultiPart.createPart( PartType.StorageBus ) );
|
||||||
this.importBus = new DamagedItemDefinition( itemMultiPart.createPart( PartType.ImportBus ) );
|
this.importBus = new DamagedItemDefinition( "part.bus.import", itemMultiPart.createPart( PartType.ImportBus ) );
|
||||||
this.exportBus = new DamagedItemDefinition( itemMultiPart.createPart( PartType.ExportBus ) );
|
this.exportBus = new DamagedItemDefinition( "part.bus.export", itemMultiPart.createPart( PartType.ExportBus ) );
|
||||||
this.iface = new DamagedItemDefinition( itemMultiPart.createPart( PartType.Interface ) );
|
this.iface = new DamagedItemDefinition( "part.interface", itemMultiPart.createPart( PartType.Interface ) );
|
||||||
this.levelEmitter = new DamagedItemDefinition( itemMultiPart.createPart( PartType.LevelEmitter ) );
|
this.levelEmitter = new DamagedItemDefinition( "part.level_emitter", itemMultiPart.createPart( PartType.LevelEmitter ) );
|
||||||
this.annihilationPlane = new DamagedItemDefinition( itemMultiPart.createPart( PartType.AnnihilationPlane ) );
|
this.annihilationPlane = new DamagedItemDefinition( "part.plane.annihilation", itemMultiPart.createPart( PartType.AnnihilationPlane ) );
|
||||||
this.identityAnnihilationPlane = new DamagedItemDefinition( itemMultiPart.createPart( PartType.IdentityAnnihilationPlane ) );
|
this.identityAnnihilationPlane = new DamagedItemDefinition( "part.plane.annihiliation.identity", itemMultiPart.createPart( PartType.IdentityAnnihilationPlane ) );
|
||||||
this.formationPlane = new DamagedItemDefinition( itemMultiPart.createPart( PartType.FormationPlane ) );
|
this.formationPlane = new DamagedItemDefinition( "part.plane.formation", itemMultiPart.createPart( PartType.FormationPlane ) );
|
||||||
this.p2PTunnelME = new DamagedItemDefinition( itemMultiPart.createPart( PartType.P2PTunnelME ) );
|
this.p2PTunnelME = new DamagedItemDefinition( "part.tunnel.me", itemMultiPart.createPart( PartType.P2PTunnelME ) );
|
||||||
this.p2PTunnelRedstone = new DamagedItemDefinition( itemMultiPart.createPart( PartType.P2PTunnelRedstone ) );
|
this.p2PTunnelRedstone = new DamagedItemDefinition( "part.tunnel.redstone", itemMultiPart.createPart( PartType.P2PTunnelRedstone ) );
|
||||||
this.p2PTunnelItems = new DamagedItemDefinition( itemMultiPart.createPart( PartType.P2PTunnelItems ) );
|
this.p2PTunnelItems = new DamagedItemDefinition( "part.tunnel.item", itemMultiPart.createPart( PartType.P2PTunnelItems ) );
|
||||||
this.p2PTunnelLiquids = new DamagedItemDefinition( itemMultiPart.createPart( PartType.P2PTunnelLiquids ) );
|
this.p2PTunnelLiquids = new DamagedItemDefinition( "part.tunnel.fluid", itemMultiPart.createPart( PartType.P2PTunnelLiquids ) );
|
||||||
//this.p2PTunnelEU = new DamagedItemDefinition( itemMultiPart.createPart( PartType.P2PTunnelEU ) );
|
//this.p2PTunnelEU = new DamagedItemDefinition( itemMultiPart.createPart( PartType.P2PTunnelEU ) );
|
||||||
//this.p2PTunnelRF = new DamagedItemDefinition( itemMultiPart.createPart( PartType.P2PTunnelRF ) );
|
//this.p2PTunnelRF = new DamagedItemDefinition( itemMultiPart.createPart( PartType.P2PTunnelRF ) );
|
||||||
this.p2PTunnelLight = new DamagedItemDefinition( itemMultiPart.createPart( PartType.P2PTunnelLight ) );
|
this.p2PTunnelLight = new DamagedItemDefinition( "part.tunnel.light", itemMultiPart.createPart( PartType.P2PTunnelLight ) );
|
||||||
//this.p2PTunnelOpenComputers = new DamagedItemDefinition( itemMultiPart.createPart( PartType.P2PTunnelOpenComputers ) );
|
//this.p2PTunnelOpenComputers = new DamagedItemDefinition( itemMultiPart.createPart( PartType.P2PTunnelOpenComputers ) );
|
||||||
this.cableAnchor = new DamagedItemDefinition( itemMultiPart.createPart( PartType.CableAnchor ) );
|
this.cableAnchor = new DamagedItemDefinition( "part.cable_anchor", itemMultiPart.createPart( PartType.CableAnchor ) );
|
||||||
this.monitor = new DamagedItemDefinition( itemMultiPart.createPart( PartType.Monitor ) );
|
this.monitor = new DamagedItemDefinition( "part.monitor", itemMultiPart.createPart( PartType.Monitor ) );
|
||||||
this.semiDarkMonitor = new DamagedItemDefinition( itemMultiPart.createPart( PartType.SemiDarkMonitor ) );
|
this.semiDarkMonitor = new DamagedItemDefinition( "part.monitor.semi_dark", itemMultiPart.createPart( PartType.SemiDarkMonitor ) );
|
||||||
this.darkMonitor = new DamagedItemDefinition( itemMultiPart.createPart( PartType.DarkMonitor ) );
|
this.darkMonitor = new DamagedItemDefinition( "part.monitor.dark", itemMultiPart.createPart( PartType.DarkMonitor ) );
|
||||||
this.interfaceTerminal = new DamagedItemDefinition( itemMultiPart.createPart( PartType.InterfaceTerminal ) );
|
this.interfaceTerminal = new DamagedItemDefinition( "part.terminal.interface", itemMultiPart.createPart( PartType.InterfaceTerminal ) );
|
||||||
this.patternTerminal = new DamagedItemDefinition( itemMultiPart.createPart( PartType.PatternTerminal ) );
|
this.patternTerminal = new DamagedItemDefinition( "part.terminal.pattern", itemMultiPart.createPart( PartType.PatternTerminal ) );
|
||||||
this.craftingTerminal = new DamagedItemDefinition( itemMultiPart.createPart( PartType.CraftingTerminal ) );
|
this.craftingTerminal = new DamagedItemDefinition( "part.terminal.crafting", itemMultiPart.createPart( PartType.CraftingTerminal ) );
|
||||||
this.terminal = new DamagedItemDefinition( itemMultiPart.createPart( PartType.Terminal ) );
|
this.terminal = new DamagedItemDefinition( "part.terminal", itemMultiPart.createPart( PartType.Terminal ) );
|
||||||
this.storageMonitor = new DamagedItemDefinition( itemMultiPart.createPart( PartType.StorageMonitor ) );
|
this.storageMonitor = new DamagedItemDefinition( "part.monitor.storage", itemMultiPart.createPart( PartType.StorageMonitor ) );
|
||||||
this.conversionMonitor = new DamagedItemDefinition( itemMultiPart.createPart( PartType.ConversionMonitor ) );
|
this.conversionMonitor = new DamagedItemDefinition( "part.monitor.conversion", itemMultiPart.createPart( PartType.ConversionMonitor ) );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -47,7 +47,8 @@ public final class AEBlockFeatureHandler implements IFeatureHandler
|
||||||
this.featured = featured;
|
this.featured = featured;
|
||||||
this.extractor = new FeatureNameExtractor( featured.getClass(), subName );
|
this.extractor = new FeatureNameExtractor( featured.getClass(), subName );
|
||||||
this.enabled = state == ActivityState.Enabled;
|
this.enabled = state == ActivityState.Enabled;
|
||||||
this.definition = new BlockDefinition( featured, state );
|
// TODO use real identifier
|
||||||
|
this.definition = new BlockDefinition( featured.getClass().getSimpleName(), featured, state );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -63,25 +64,29 @@ public final class AEBlockFeatureHandler implements IFeatureHandler
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void register(Side side)
|
public void register( Side side )
|
||||||
{
|
{
|
||||||
if( this.enabled )
|
if( this.enabled )
|
||||||
{
|
{
|
||||||
String name = this.extractor.get();
|
String name = this.extractor.get();
|
||||||
this.featured.setCreativeTab( CreativeTab.instance );
|
this.featured.setCreativeTab( CreativeTab.instance );
|
||||||
this.featured.setUnlocalizedName( /* "tile." */"appliedenergistics2." + name );
|
this.featured.setUnlocalizedName( "appliedenergistics2." + name );
|
||||||
this.featured.setBlockTextureName( name );
|
this.featured.setBlockTextureName( name );
|
||||||
|
|
||||||
// Bypass the forge magic with null to register our own itemblock later.
|
// Bypass the forge magic with null to register our own itemblock later.
|
||||||
GameRegistry.registerBlock( this.featured, null, name );
|
GameRegistry.registerBlock( this.featured, null, name );
|
||||||
GameRegistry.registerItem( this.definition.maybeItem().get(), name );
|
GameRegistry.registerItem( this.definition.maybeItem().get(), name );
|
||||||
|
|
||||||
// register the block/item conversion...
|
// register the block/item conversion...
|
||||||
if ( this.definition.maybeItem().isPresent() )
|
if( this.definition.maybeItem().isPresent() )
|
||||||
GameData.getBlockItemMap().put( this.featured, this.definition.maybeItem().get() );
|
{
|
||||||
|
GameData.getBlockItemMap().put( this.featured, this.definition.maybeItem().get() );
|
||||||
if ( side == Side.CLIENT)
|
}
|
||||||
CommonHelper.proxy.configureIcon( this.featured, name );
|
|
||||||
|
if( side == Side.CLIENT )
|
||||||
|
{
|
||||||
|
CommonHelper.proxy.configureIcon( this.featured, name );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,10 +21,13 @@ package appeng.core.features;
|
||||||
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
|
||||||
|
import com.google.common.base.Optional;
|
||||||
|
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraftforge.fml.common.registry.GameData;
|
import net.minecraftforge.fml.common.registry.GameData;
|
||||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||||
import net.minecraftforge.fml.relauncher.Side;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
|
|
||||||
import appeng.api.definitions.ITileDefinition;
|
import appeng.api.definitions.ITileDefinition;
|
||||||
import appeng.block.AEBaseTileBlock;
|
import appeng.block.AEBaseTileBlock;
|
||||||
import appeng.block.networking.BlockCableBus;
|
import appeng.block.networking.BlockCableBus;
|
||||||
|
@ -32,8 +35,6 @@ import appeng.core.CommonHelper;
|
||||||
import appeng.core.CreativeTab;
|
import appeng.core.CreativeTab;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
import com.google.common.base.Optional;
|
|
||||||
|
|
||||||
|
|
||||||
public final class AECableBusFeatureHandler implements IFeatureHandler
|
public final class AECableBusFeatureHandler implements IFeatureHandler
|
||||||
{
|
{
|
||||||
|
@ -49,7 +50,7 @@ public final class AECableBusFeatureHandler implements IFeatureHandler
|
||||||
this.featured = featured;
|
this.featured = featured;
|
||||||
this.extractor = new FeatureNameExtractor( featured.getClass(), subName );
|
this.extractor = new FeatureNameExtractor( featured.getClass(), subName );
|
||||||
this.enabled = state == ActivityState.Enabled;
|
this.enabled = state == ActivityState.Enabled;
|
||||||
this.definition = new TileDefinition( featured, state );
|
this.definition = new TileDefinition( featured.getClass().getSimpleName(), featured, state );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -25,53 +25,111 @@ public enum AEFeature
|
||||||
// is just flat out required by tons of
|
// is just flat out required by tons of
|
||||||
// important stuff.
|
// important stuff.
|
||||||
|
|
||||||
CertusQuartzWorldGen( "World" ), MeteoriteWorldGen( "World" ),
|
CertusQuartzWorldGen( "World" ),
|
||||||
|
MeteoriteWorldGen( "World" ),
|
||||||
DecorativeLights( "World" ), DecorativeQuartzBlocks( "World" ), SkyStoneChests( "World" ), SpawnPressesInMeteorites( "World" ),
|
DecorativeLights( "World" ),
|
||||||
|
DecorativeQuartzBlocks( "World" ),
|
||||||
GrindStone( "World" ), Flour( "World" ), Inscriber( "World" ),
|
SkyStoneChests( "World" ),
|
||||||
|
SpawnPressesInMeteorites( "World" ),
|
||||||
ChestLoot( "World" ), VillagerTrading( "World" ),
|
GrindStone( "World" ),
|
||||||
|
Flour( "World" ),
|
||||||
|
Inscriber( "World" ),
|
||||||
|
ChestLoot( "World" ),
|
||||||
|
VillagerTrading( "World" ),
|
||||||
TinyTNT( "World" ),
|
TinyTNT( "World" ),
|
||||||
|
|
||||||
PoweredTools( "ToolsClassifications" ),
|
PoweredTools( "ToolsClassifications" ),
|
||||||
|
|
||||||
CertusQuartzTools( "ToolsClassifications" ),
|
CertusQuartzTools( "ToolsClassifications" ),
|
||||||
|
|
||||||
NetherQuartzTools( "ToolsClassifications" ),
|
NetherQuartzTools( "ToolsClassifications" ),
|
||||||
|
|
||||||
QuartzHoe( "Tools" ), QuartzSpade( "Tools" ), QuartzSword( "Tools" ), QuartzPickaxe( "Tools" ), QuartzAxe( "Tools" ), QuartzKnife( "Tools" ), QuartzWrench( "Tools" ),
|
QuartzHoe( "Tools" ),
|
||||||
|
QuartzSpade( "Tools" ),
|
||||||
|
QuartzSword( "Tools" ),
|
||||||
|
QuartzPickaxe( "Tools" ),
|
||||||
|
QuartzAxe( "Tools" ),
|
||||||
|
QuartzKnife( "Tools" ),
|
||||||
|
QuartzWrench( "Tools" ),
|
||||||
|
ChargedStaff( "Tools" ),
|
||||||
|
EntropyManipulator( "Tools" ),
|
||||||
|
MatterCannon( "Tools" ),
|
||||||
|
WirelessAccessTerminal( "Tools" ),
|
||||||
|
ColorApplicator( "Tools" ),
|
||||||
|
PaintBalls( "Tools" ),
|
||||||
|
MeteoriteCompass( "Tools" ),
|
||||||
|
|
||||||
ChargedStaff( "Tools" ), EntropyManipulator( "Tools" ), MatterCannon( "Tools" ), WirelessAccessTerminal( "Tools" ), ColorApplicator( "Tools" ),
|
CraftingCPU( "CraftingFeatures" ),
|
||||||
|
|
||||||
CraftingCPU( "CraftingFeatures" ), PowerGen( "NetworkFeatures" ), Security( "NetworkFeatures" ),
|
PowerGen( "NetworkFeatures" ),
|
||||||
|
Security( "NetworkFeatures" ),
|
||||||
|
SpatialIO( "NetworkFeatures" ),
|
||||||
|
QuantumNetworkBridge( "NetworkFeatures" ),
|
||||||
|
Channels( "NetworkFeatures" ),
|
||||||
|
|
||||||
SpatialIO( "NetworkFeatures" ), QuantumNetworkBridge( "NetworkFeatures" ), Channels( "NetworkFeatures" ),
|
LevelEmitter( "NetworkBuses" ),
|
||||||
|
CraftingTerminal( "NetworkBuses" ),
|
||||||
|
StorageMonitor( "NetworkBuses" ),
|
||||||
|
P2PTunnel( "NetworkBuses" ),
|
||||||
|
FormationPlane( "NetworkBuses" ),
|
||||||
|
AnnihilationPlane( "NetworkBuses" ),
|
||||||
|
IdentityAnnihilationPlane( "NetworkBuses" ),
|
||||||
|
ImportBus( "NetworkBuses" ),
|
||||||
|
ExportBus( "NetworkBuses" ),
|
||||||
|
StorageBus( "NetworkBuses" ),
|
||||||
|
PartConversionMonitor( "NetworkBuses" ),
|
||||||
|
|
||||||
LevelEmitter( "NetworkBuses" ), CraftingTerminal( "NetworkBuses" ), StorageMonitor( "NetworkBuses" ), P2PTunnel( "NetworkBuses" ), FormationPlane( "NetworkBuses" ), AnnihilationPlane( "NetworkBuses" ), IdentityAnnihilationPlane( "NetworkBuses" ), ImportBus( "NetworkBuses" ), ExportBus( "NetworkBuses" ), StorageBus( "NetworkBuses" ), PartConversionMonitor( "NetworkBuses" ),
|
StorageCells( "Storage" ),
|
||||||
|
MEChest( "Storage" ),
|
||||||
|
MEDrive( "Storage" ),
|
||||||
|
IOPort( "Storage" ),
|
||||||
|
|
||||||
StorageCells( "Storage" ), PortableCell( "PortableCell" ), MEChest( "Storage" ), MEDrive( "Storage" ), IOPort( "Storage" ),
|
PortableCell( "PortableCell" ),
|
||||||
|
|
||||||
NetworkTool( "NetworkTool" ),
|
NetworkTool( "NetworkTool" ),
|
||||||
|
|
||||||
DenseEnergyCells( "HigherCapacity" ), DenseCables( "HigherCapacity" ),
|
DenseEnergyCells( "HigherCapacity" ),
|
||||||
|
DenseCables( "HigherCapacity" ),
|
||||||
|
|
||||||
P2PTunnelRF( "P2PTunnels" ), P2PTunnelME( "P2PTunnels" ), P2PTunnelItems( "P2PTunnels" ), P2PTunnelRedstone( "P2PTunnels" ), P2PTunnelEU( "P2PTunnels" ), P2PTunnelLiquids( "P2PTunnels" ), P2PTunnelLight( "P2PTunnels" ), P2PTunnelOpenComputers( "P2PTunnels" ),
|
P2PTunnelRF( "P2PTunnels" ),
|
||||||
|
P2PTunnelME( "P2PTunnels" ),
|
||||||
|
P2PTunnelItems( "P2PTunnels" ),
|
||||||
|
P2PTunnelRedstone( "P2PTunnels" ),
|
||||||
|
P2PTunnelEU( "P2PTunnels" ),
|
||||||
|
P2PTunnelLiquids( "P2PTunnels" ),
|
||||||
|
P2PTunnelLight( "P2PTunnels" ),
|
||||||
|
P2PTunnelOpenComputers( "P2PTunnels" ),
|
||||||
|
|
||||||
MassCannonBlockDamage( "BlockFeatures" ), TinyTNTBlockDamage( "BlockFeatures" ), Facades( "Facades" ),
|
MassCannonBlockDamage( "BlockFeatures" ),
|
||||||
|
TinyTNTBlockDamage( "BlockFeatures" ),
|
||||||
|
|
||||||
UnsupportedDeveloperTools( "Misc", false ), Creative( "Misc" ),
|
Facades( "Facades" ),
|
||||||
|
|
||||||
GrinderLogging( "Misc", false ), Logging( "Misc" ), IntegrationLogging( "Misc", false ), WebsiteRecipes( "Misc", false ),
|
UnsupportedDeveloperTools( "Misc", false ),
|
||||||
|
Creative( "Misc" ),
|
||||||
|
GrinderLogging( "Misc", false ),
|
||||||
|
Logging( "Misc" ),
|
||||||
|
IntegrationLogging( "Misc", false ),
|
||||||
|
WebsiteRecipes( "Misc", false ),
|
||||||
|
UpdateLogging( "Misc", false ),
|
||||||
|
PacketLogging( "Misc", false ),
|
||||||
|
CraftingLog( "Misc", false ),
|
||||||
|
LightDetector( "Misc" ),
|
||||||
|
LogSecurityAudits( "Misc", false ),
|
||||||
|
Achievements( "Misc" ),
|
||||||
|
|
||||||
enableFacadeCrafting( "Crafting" ), inWorldSingularity( "Crafting" ), inWorldFluix( "Crafting" ), inWorldPurification( "Crafting" ), UpdateLogging( "Misc", false ),
|
enableFacadeCrafting( "Crafting" ),
|
||||||
|
inWorldSingularity( "Crafting" ),
|
||||||
|
inWorldFluix( "Crafting" ),
|
||||||
|
inWorldPurification( "Crafting" ),
|
||||||
|
InterfaceTerminal( "Crafting" ),
|
||||||
|
|
||||||
AlphaPass( "Rendering" ), PaintBalls( "Tools" ), PacketLogging( "Misc", false ), CraftingLog( "Misc", false ), InterfaceTerminal( "Crafting" ), LightDetector( "Misc" ),
|
AlphaPass( "Rendering" ),
|
||||||
|
|
||||||
enableDisassemblyCrafting( "Crafting" ), MolecularAssembler( "CraftingFeatures" ), MeteoriteCompass( "Tools" ), Patterns( "CraftingFeatures" ),
|
MolecularAssembler( "CraftingFeatures" ),
|
||||||
|
|
||||||
ChunkLoggerTrace( "Commands", false ), LogSecurityAudits( "Misc", false ), Achievements( "Misc" );
|
enableDisassemblyCrafting( "Crafting" ),
|
||||||
|
Patterns( "CraftingFeatures" ),
|
||||||
|
|
||||||
|
ChunkLoggerTrace( "Commands", false );
|
||||||
|
|
||||||
public final String category;
|
public final String category;
|
||||||
public final boolean isVisible;
|
public final boolean isVisible;
|
||||||
|
@ -79,7 +137,7 @@ public enum AEFeature
|
||||||
|
|
||||||
AEFeature( String cat )
|
AEFeature( String cat )
|
||||||
{
|
{
|
||||||
this(cat, true);
|
this( cat, true );
|
||||||
}
|
}
|
||||||
|
|
||||||
AEFeature( String cat, boolean defaultValue )
|
AEFeature( String cat, boolean defaultValue )
|
||||||
|
|
|
@ -21,17 +21,18 @@ package appeng.core.features;
|
||||||
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
|
||||||
|
import com.google.common.base.Optional;
|
||||||
|
|
||||||
import net.minecraftforge.fml.common.registry.GameData;
|
import net.minecraftforge.fml.common.registry.GameData;
|
||||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||||
import net.minecraftforge.fml.relauncher.Side;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
|
|
||||||
import appeng.api.definitions.ITileDefinition;
|
import appeng.api.definitions.ITileDefinition;
|
||||||
import appeng.block.AEBaseTileBlock;
|
import appeng.block.AEBaseTileBlock;
|
||||||
import appeng.core.CommonHelper;
|
import appeng.core.CommonHelper;
|
||||||
import appeng.core.CreativeTab;
|
import appeng.core.CreativeTab;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
import com.google.common.base.Optional;
|
|
||||||
|
|
||||||
|
|
||||||
public final class AETileBlockFeatureHandler implements IFeatureHandler
|
public final class AETileBlockFeatureHandler implements IFeatureHandler
|
||||||
{
|
{
|
||||||
|
@ -47,7 +48,7 @@ public final class AETileBlockFeatureHandler implements IFeatureHandler
|
||||||
this.featured = featured;
|
this.featured = featured;
|
||||||
this.extractor = new FeatureNameExtractor( featured.getClass(), subName );
|
this.extractor = new FeatureNameExtractor( featured.getClass(), subName );
|
||||||
this.enabled = state == ActivityState.Enabled;
|
this.enabled = state == ActivityState.Enabled;
|
||||||
this.definition = new TileDefinition( featured, state );
|
this.definition = new TileDefinition( featured.getClass().getSimpleName(), featured, state );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -63,7 +64,7 @@ public final class AETileBlockFeatureHandler implements IFeatureHandler
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void register(Side side)
|
public void register( Side side )
|
||||||
{
|
{
|
||||||
if( this.enabled )
|
if( this.enabled )
|
||||||
{
|
{
|
||||||
|
@ -82,15 +83,19 @@ public final class AETileBlockFeatureHandler implements IFeatureHandler
|
||||||
// Bypass the forge magic with null to register our own itemblock later.
|
// Bypass the forge magic with null to register our own itemblock later.
|
||||||
GameRegistry.registerBlock( this.featured, null, registryName );
|
GameRegistry.registerBlock( this.featured, null, registryName );
|
||||||
GameRegistry.registerItem( this.definition.maybeItem().get(), registryName );
|
GameRegistry.registerItem( this.definition.maybeItem().get(), registryName );
|
||||||
|
|
||||||
// register the block/item conversion...
|
// register the block/item conversion...
|
||||||
if ( this.featured != null && this.definition.maybeItem().isPresent() )
|
if( this.definition.maybeItem().isPresent() )
|
||||||
GameData.getBlockItemMap().put( this.featured, this.definition.maybeItem().get() );
|
{
|
||||||
|
GameData.getBlockItemMap().put( this.featured, this.definition.maybeItem().get() );
|
||||||
|
}
|
||||||
|
|
||||||
GameRegistry.registerTileEntity( this.featured.getTileEntityClass(), this.featured.toString() );
|
GameRegistry.registerTileEntity( this.featured.getTileEntityClass(), this.featured.toString() );
|
||||||
|
|
||||||
if ( side == Side.CLIENT)
|
if( side == Side.CLIENT )
|
||||||
CommonHelper.proxy.configureIcon( this.featured, name );
|
{
|
||||||
|
CommonHelper.proxy.configureIcon( this.featured, name );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -21,28 +21,29 @@ package appeng.core.features;
|
||||||
|
|
||||||
import java.lang.reflect.Constructor;
|
import java.lang.reflect.Constructor;
|
||||||
|
|
||||||
|
import com.google.common.base.Optional;
|
||||||
|
import com.google.common.base.Preconditions;
|
||||||
|
import com.google.common.collect.ObjectArrays;
|
||||||
|
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.item.Item;
|
import net.minecraft.item.Item;
|
||||||
import net.minecraft.item.ItemBlock;
|
import net.minecraft.item.ItemBlock;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.BlockPos;
|
import net.minecraft.util.BlockPos;
|
||||||
import net.minecraft.world.IBlockAccess;
|
import net.minecraft.world.IBlockAccess;
|
||||||
|
|
||||||
import appeng.api.definitions.IBlockDefinition;
|
import appeng.api.definitions.IBlockDefinition;
|
||||||
import appeng.block.AEBaseBlock;
|
import appeng.block.AEBaseBlock;
|
||||||
|
|
||||||
import com.google.common.base.Optional;
|
|
||||||
import com.google.common.base.Preconditions;
|
|
||||||
import com.google.common.collect.ObjectArrays;
|
|
||||||
|
|
||||||
|
|
||||||
public class BlockDefinition extends ItemDefinition implements IBlockDefinition
|
public class BlockDefinition extends ItemDefinition implements IBlockDefinition
|
||||||
{
|
{
|
||||||
private final Block block;
|
private final Block block;
|
||||||
private final boolean enabled;
|
private final boolean enabled;
|
||||||
|
|
||||||
public BlockDefinition( Block block, ActivityState state )
|
public BlockDefinition( final String identifier, Block block, ActivityState state )
|
||||||
{
|
{
|
||||||
super( constructItemFromBlock( block ), state );
|
super( identifier, constructItemFromBlock( block ), state );
|
||||||
|
|
||||||
Preconditions.checkNotNull( block );
|
Preconditions.checkNotNull( block );
|
||||||
Preconditions.checkNotNull( state );
|
Preconditions.checkNotNull( state );
|
||||||
|
|
|
@ -21,23 +21,35 @@ package appeng.core.features;
|
||||||
|
|
||||||
import javax.annotation.Nonnull;
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
import net.minecraft.item.Item;
|
|
||||||
import net.minecraft.item.ItemStack;
|
|
||||||
import net.minecraft.util.BlockPos;
|
|
||||||
import net.minecraft.world.IBlockAccess;
|
|
||||||
import appeng.api.definitions.IItemDefinition;
|
|
||||||
|
|
||||||
import com.google.common.base.Optional;
|
import com.google.common.base.Optional;
|
||||||
import com.google.common.base.Preconditions;
|
import com.google.common.base.Preconditions;
|
||||||
|
|
||||||
|
import net.minecraft.item.Item;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
|
|
||||||
|
import appeng.api.definitions.IItemDefinition;
|
||||||
|
|
||||||
|
|
||||||
public final class DamagedItemDefinition implements IItemDefinition
|
public final class DamagedItemDefinition implements IItemDefinition
|
||||||
{
|
{
|
||||||
|
private final String identifier;
|
||||||
private final IStackSrc source;
|
private final IStackSrc source;
|
||||||
|
|
||||||
public DamagedItemDefinition( @Nonnull IStackSrc source )
|
public DamagedItemDefinition( @Nonnull String identifier, @Nonnull IStackSrc source )
|
||||||
{
|
{
|
||||||
this.source = Preconditions.checkNotNull( source );
|
Preconditions.checkNotNull( identifier );
|
||||||
|
Preconditions.checkArgument( !identifier.isEmpty() );
|
||||||
|
Preconditions.checkNotNull( source );
|
||||||
|
|
||||||
|
this.identifier = identifier;
|
||||||
|
this.source = source;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Nonnull
|
||||||
|
@Override
|
||||||
|
public String identifier()
|
||||||
|
{
|
||||||
|
return this.identifier;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -59,11 +71,7 @@ public final class DamagedItemDefinition implements IItemDefinition
|
||||||
@Override
|
@Override
|
||||||
public boolean isSameAs( ItemStack comparableStack )
|
public boolean isSameAs( ItemStack comparableStack )
|
||||||
{
|
{
|
||||||
if( comparableStack == null )
|
// is available && is same item && has same damage
|
||||||
{
|
return comparableStack != null && comparableStack.getItem() == this.source.getItem() && comparableStack.getItemDamage() == this.source.getDamage();
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return comparableStack.getItem() == this.source.getItem() && comparableStack.getItemDamage() == this.source.getDamage();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,6 +19,8 @@
|
||||||
package appeng.core.features;
|
package appeng.core.features;
|
||||||
|
|
||||||
|
|
||||||
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
import com.google.common.base.Optional;
|
import com.google.common.base.Optional;
|
||||||
import com.google.common.base.Preconditions;
|
import com.google.common.base.Preconditions;
|
||||||
|
|
||||||
|
@ -31,18 +33,29 @@ import appeng.util.Platform;
|
||||||
|
|
||||||
public class ItemDefinition implements IItemDefinition
|
public class ItemDefinition implements IItemDefinition
|
||||||
{
|
{
|
||||||
|
private final String identifier;
|
||||||
private final Item item;
|
private final Item item;
|
||||||
private final boolean enabled;
|
private final boolean enabled;
|
||||||
|
|
||||||
public ItemDefinition( Item item, ActivityState state )
|
public ItemDefinition( String identifier, Item item, ActivityState state )
|
||||||
{
|
{
|
||||||
|
Preconditions.checkNotNull( identifier );
|
||||||
|
Preconditions.checkArgument( !identifier.isEmpty() );
|
||||||
Preconditions.checkNotNull( item );
|
Preconditions.checkNotNull( item );
|
||||||
Preconditions.checkNotNull( state );
|
Preconditions.checkNotNull( state );
|
||||||
|
|
||||||
|
this.identifier = identifier;
|
||||||
this.item = item;
|
this.item = item;
|
||||||
this.enabled = state == ActivityState.Enabled;
|
this.enabled = state == ActivityState.Enabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Nonnull
|
||||||
|
@Override
|
||||||
|
public String identifier()
|
||||||
|
{
|
||||||
|
return this.identifier;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public final Optional<Item> maybeItem()
|
public final Optional<Item> maybeItem()
|
||||||
{
|
{
|
||||||
|
|
|
@ -48,7 +48,7 @@ public final class ItemFeatureHandler implements IFeatureHandler
|
||||||
this.item = item;
|
this.item = item;
|
||||||
this.extractor = new FeatureNameExtractor( featured.getClass(), subName );
|
this.extractor = new FeatureNameExtractor( featured.getClass(), subName );
|
||||||
this.enabled = state == ActivityState.Enabled;
|
this.enabled = state == ActivityState.Enabled;
|
||||||
this.definition = new ItemDefinition( item, state );
|
this.definition = new ItemDefinition( item.getClass().getSimpleName(), item, state );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -72,7 +72,7 @@ public final class ItemFeatureHandler implements IFeatureHandler
|
||||||
String itemPhysicalName = name;
|
String itemPhysicalName = name;
|
||||||
|
|
||||||
//this.item.setTextureName( "appliedenergistics2:" + name );
|
//this.item.setTextureName( "appliedenergistics2:" + name );
|
||||||
this.item.setUnlocalizedName( /* "item." */"appliedenergistics2." + name );
|
this.item.setUnlocalizedName( "appliedenergistics2." + name );
|
||||||
|
|
||||||
if( this.item instanceof ItemFacade )
|
if( this.item instanceof ItemFacade )
|
||||||
{
|
{
|
||||||
|
|
|
@ -24,10 +24,13 @@ import java.util.EnumSet;
|
||||||
import com.google.common.base.Optional;
|
import com.google.common.base.Optional;
|
||||||
|
|
||||||
import net.minecraft.block.BlockStairs;
|
import net.minecraft.block.BlockStairs;
|
||||||
|
import net.minecraft.item.Item;
|
||||||
|
import net.minecraft.item.ItemBlock;
|
||||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||||
import net.minecraftforge.fml.relauncher.Side;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
|
|
||||||
import appeng.api.definitions.IBlockDefinition;
|
import appeng.api.definitions.IBlockDefinition;
|
||||||
|
import appeng.core.CommonHelper;
|
||||||
import appeng.core.CreativeTab;
|
import appeng.core.CreativeTab;
|
||||||
|
|
||||||
|
|
||||||
|
@ -45,7 +48,7 @@ public class StairBlockFeatureHandler implements IFeatureHandler
|
||||||
this.stairs = stairs;
|
this.stairs = stairs;
|
||||||
this.extractor = new FeatureNameExtractor( stairs.getClass(), subName );
|
this.extractor = new FeatureNameExtractor( stairs.getClass(), subName );
|
||||||
this.enabled = state == ActivityState.Enabled;
|
this.enabled = state == ActivityState.Enabled;
|
||||||
this.definition = new BlockDefinition( stairs, state );
|
this.definition = new BlockDefinition( stairs.getClass().getSimpleName(), stairs, state );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -69,8 +72,13 @@ public class StairBlockFeatureHandler implements IFeatureHandler
|
||||||
this.stairs.setCreativeTab( CreativeTab.instance );
|
this.stairs.setCreativeTab( CreativeTab.instance );
|
||||||
this.stairs.setUnlocalizedName( "appliedenergistics2." + name );
|
this.stairs.setUnlocalizedName( "appliedenergistics2." + name );
|
||||||
|
|
||||||
// "tile." +
|
|
||||||
GameRegistry.registerBlock( this.stairs, name );
|
GameRegistry.registerBlock( this.stairs, name );
|
||||||
|
|
||||||
|
if( side == Side.CLIENT )
|
||||||
|
{
|
||||||
|
final Item item = ItemBlock.getItemFromBlock( this.stairs );
|
||||||
|
CommonHelper.proxy.configureIcon( item, name );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,25 +19,26 @@
|
||||||
package appeng.core.features;
|
package appeng.core.features;
|
||||||
|
|
||||||
|
|
||||||
import net.minecraft.tileentity.TileEntity;
|
import javax.annotation.Nonnull;
|
||||||
import appeng.api.definitions.ITileDefinition;
|
|
||||||
import appeng.block.AEBaseTileBlock;
|
|
||||||
|
|
||||||
import com.google.common.base.Optional;
|
import com.google.common.base.Optional;
|
||||||
import com.google.common.base.Preconditions;
|
import com.google.common.base.Preconditions;
|
||||||
|
|
||||||
|
import net.minecraft.tileentity.TileEntity;
|
||||||
|
|
||||||
|
import appeng.api.definitions.ITileDefinition;
|
||||||
|
import appeng.block.AEBaseTileBlock;
|
||||||
|
|
||||||
|
|
||||||
public final class TileDefinition extends BlockDefinition implements ITileDefinition
|
public final class TileDefinition extends BlockDefinition implements ITileDefinition
|
||||||
{
|
{
|
||||||
private final AEBaseTileBlock block;
|
private final AEBaseTileBlock block;
|
||||||
|
|
||||||
public TileDefinition( AEBaseTileBlock block, ActivityState state )
|
public TileDefinition( @Nonnull final String identifier, AEBaseTileBlock block, ActivityState state )
|
||||||
{
|
{
|
||||||
super( block, state );
|
super( identifier, block, state );
|
||||||
|
|
||||||
Preconditions.checkNotNull( block );
|
Preconditions.checkNotNull( block );
|
||||||
Preconditions.checkNotNull( state );
|
|
||||||
Preconditions.checkNotNull( block.getTileEntityClass() );
|
|
||||||
|
|
||||||
this.block = block;
|
this.block = block;
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,7 +33,6 @@ import net.minecraftforge.common.config.ConfigCategory;
|
||||||
import net.minecraftforge.common.config.Configuration;
|
import net.minecraftforge.common.config.Configuration;
|
||||||
import net.minecraftforge.common.config.Property;
|
import net.minecraftforge.common.config.Property;
|
||||||
|
|
||||||
import appeng.core.AELog;
|
|
||||||
import appeng.core.CommonHelper;
|
import appeng.core.CommonHelper;
|
||||||
|
|
||||||
|
|
||||||
|
@ -66,7 +65,7 @@ final class PlayerData implements IWorldPlayerData, IOnWorldStartable, IOnWorldS
|
||||||
this.config = new Configuration( configFile, configVersion );
|
this.config = new Configuration( configFile, configVersion );
|
||||||
|
|
||||||
final ConfigCategory playerList = this.config.getCategory( "players" );
|
final ConfigCategory playerList = this.config.getCategory( "players" );
|
||||||
this.playerMapping = new PlayerMapping( playerList, AELog.INSTANCE );
|
this.playerMapping = new PlayerMapping( playerList );
|
||||||
}
|
}
|
||||||
|
|
||||||
@Nullable
|
@Nullable
|
||||||
|
|
|
@ -27,9 +27,6 @@ import com.google.common.base.Optional;
|
||||||
import com.google.common.base.Preconditions;
|
import com.google.common.base.Preconditions;
|
||||||
|
|
||||||
import net.minecraftforge.common.config.ConfigCategory;
|
import net.minecraftforge.common.config.ConfigCategory;
|
||||||
import net.minecraftforge.fml.relauncher.FMLRelaunchLog;
|
|
||||||
|
|
||||||
import com.google.common.base.Optional;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -46,9 +43,9 @@ final class PlayerMapping implements IWorldPlayerMapping
|
||||||
*/
|
*/
|
||||||
private final Map<Integer, UUID> mappings;
|
private final Map<Integer, UUID> mappings;
|
||||||
|
|
||||||
public PlayerMapping( ConfigCategory category, FMLRelaunchLog log )
|
public PlayerMapping( ConfigCategory category )
|
||||||
{
|
{
|
||||||
final PlayerMappingsInitializer init = new PlayerMappingsInitializer( category, log );
|
final PlayerMappingsInitializer init = new PlayerMappingsInitializer( category );
|
||||||
|
|
||||||
this.mappings = init.getPlayerMappings();
|
this.mappings = init.getPlayerMappings();
|
||||||
}
|
}
|
||||||
|
|
|
@ -25,7 +25,6 @@ import java.util.UUID;
|
||||||
|
|
||||||
import net.minecraftforge.common.config.ConfigCategory;
|
import net.minecraftforge.common.config.ConfigCategory;
|
||||||
import net.minecraftforge.common.config.Property;
|
import net.minecraftforge.common.config.Property;
|
||||||
import net.minecraftforge.fml.relauncher.FMLRelaunchLog;
|
|
||||||
|
|
||||||
import appeng.core.AELog;
|
import appeng.core.AELog;
|
||||||
import appeng.util.UUIDMatcher;
|
import appeng.util.UUIDMatcher;
|
||||||
|
@ -50,9 +49,8 @@ class PlayerMappingsInitializer
|
||||||
* where the UUIDs were introduced.
|
* where the UUIDs were introduced.
|
||||||
*
|
*
|
||||||
* @param playerList the category for the player list, generally extracted using the "players" tag
|
* @param playerList the category for the player list, generally extracted using the "players" tag
|
||||||
* @param log the logger used to warn the server or user of faulty entries
|
|
||||||
*/
|
*/
|
||||||
PlayerMappingsInitializer( ConfigCategory playerList, FMLRelaunchLog log )
|
PlayerMappingsInitializer( ConfigCategory playerList )
|
||||||
{
|
{
|
||||||
// Matcher for UUIDs
|
// Matcher for UUIDs
|
||||||
final UUIDMatcher matcher = new UUIDMatcher();
|
final UUIDMatcher matcher = new UUIDMatcher();
|
||||||
|
@ -61,7 +59,7 @@ class PlayerMappingsInitializer
|
||||||
final int capacity = playerList.size();
|
final int capacity = playerList.size();
|
||||||
|
|
||||||
// Mappings for the IDs is a regular HashMap
|
// Mappings for the IDs is a regular HashMap
|
||||||
this.playerMappings = new HashMap<Integer, UUID>( capacity );
|
this.playerMappings = new HashMap<>( capacity );
|
||||||
|
|
||||||
// Iterates through every pair of UUID to ID
|
// Iterates through every pair of UUID to ID
|
||||||
for( Map.Entry<String, Property> entry : playerList.getValues().entrySet() )
|
for( Map.Entry<String, Property> entry : playerList.getValues().entrySet() )
|
||||||
|
|
|
@ -104,7 +104,7 @@ public class TileItemGen extends AEBaseTile implements IInventory
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -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.block.solids;
|
package appeng.decorative.solid;
|
||||||
|
|
||||||
|
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
@ -34,10 +34,10 @@ import appeng.core.AEConfig;
|
||||||
import appeng.core.CommonHelper;
|
import appeng.core.CommonHelper;
|
||||||
|
|
||||||
|
|
||||||
public class OreQuartzCharged extends OreQuartz
|
public final class ChargedQuartzOreBlock extends QuartzOreBlock
|
||||||
{
|
{
|
||||||
|
|
||||||
public OreQuartzCharged()
|
public ChargedQuartzOreBlock()
|
||||||
{
|
{
|
||||||
this.setBoostBrightnessLow( 2 );
|
this.setBoostBrightnessLow( 2 );
|
||||||
this.setBoostBrightnessHigh( 5 );
|
this.setBoostBrightnessHigh( 5 );
|
|
@ -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.block.solids;
|
package appeng.decorative.solid;
|
||||||
|
|
||||||
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
@ -27,9 +27,9 @@ import appeng.block.AEDecorativeBlock;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.core.features.AEFeature;
|
||||||
|
|
||||||
|
|
||||||
public final class BlockQuartzChiseled extends AEDecorativeBlock
|
public final class ChiseledQuartzBlock extends AEDecorativeBlock
|
||||||
{
|
{
|
||||||
public BlockQuartzChiseled()
|
public ChiseledQuartzBlock()
|
||||||
{
|
{
|
||||||
super( Material.rock );
|
super( Material.rock );
|
||||||
|
|
|
@ -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.block.solids;
|
package appeng.decorative.solid;
|
||||||
|
|
||||||
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
@ -27,9 +27,9 @@ import appeng.block.AEDecorativeBlock;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.core.features.AEFeature;
|
||||||
|
|
||||||
|
|
||||||
public final class BlockFluix extends AEDecorativeBlock
|
public final class FluixBlock extends AEDecorativeBlock
|
||||||
{
|
{
|
||||||
public BlockFluix()
|
public FluixBlock()
|
||||||
{
|
{
|
||||||
super( Material.rock );
|
super( Material.rock );
|
||||||
|
|
20
src/main/java/appeng/decorative/solid/FluixIdentifier.java
Normal file
20
src/main/java/appeng/decorative/solid/FluixIdentifier.java
Normal file
|
@ -0,0 +1,20 @@
|
||||||
|
package appeng.decorative.solid;
|
||||||
|
|
||||||
|
|
||||||
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author thatsIch
|
||||||
|
* @version rv3 - 29.06.2015
|
||||||
|
* @since rv3 29.06.2015
|
||||||
|
*/
|
||||||
|
public class FluixIdentifier implements Identifier
|
||||||
|
{
|
||||||
|
@Nonnull
|
||||||
|
@Override
|
||||||
|
public String identifier()
|
||||||
|
{
|
||||||
|
return "fluix";
|
||||||
|
}
|
||||||
|
}
|
18
src/main/java/appeng/decorative/solid/Identifier.java
Normal file
18
src/main/java/appeng/decorative/solid/Identifier.java
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
package appeng.decorative.solid;
|
||||||
|
|
||||||
|
|
||||||
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
*
|
||||||
|
* @author thatsIch
|
||||||
|
* @version rv3 - 29.06.2015
|
||||||
|
* @since rv3 29.06.2015
|
||||||
|
*/
|
||||||
|
public interface Identifier
|
||||||
|
{
|
||||||
|
@Nonnull
|
||||||
|
String identifier();
|
||||||
|
}
|
|
@ -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.block.solids;
|
package appeng.decorative.solid;
|
||||||
|
|
||||||
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
@ -27,9 +27,9 @@ import appeng.block.AEDecorativeBlock;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.core.features.AEFeature;
|
||||||
|
|
||||||
|
|
||||||
public final class BlockQuartz extends AEDecorativeBlock
|
public final class QuartzBlock extends AEDecorativeBlock
|
||||||
{
|
{
|
||||||
public BlockQuartz()
|
public QuartzBlock()
|
||||||
{
|
{
|
||||||
super( Material.rock );
|
super( Material.rock );
|
||||||
|
|
|
@ -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.block.solids;
|
package appeng.decorative.solid;
|
||||||
|
|
||||||
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
@ -35,9 +35,9 @@ import appeng.core.features.AEFeature;
|
||||||
import appeng.helpers.AEGlassMaterial;
|
import appeng.helpers.AEGlassMaterial;
|
||||||
|
|
||||||
|
|
||||||
public class BlockQuartzGlass extends AEBaseBlock
|
public class QuartzGlassBlock extends AEBaseBlock
|
||||||
{
|
{
|
||||||
public BlockQuartzGlass()
|
public QuartzGlassBlock()
|
||||||
{
|
{
|
||||||
super( Material.glass );
|
super( Material.glass );
|
||||||
this.setLightOpacity( 0 );
|
this.setLightOpacity( 0 );
|
|
@ -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.block.solids;
|
package appeng.decorative.solid;
|
||||||
|
|
||||||
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
@ -32,10 +32,10 @@ import appeng.core.CommonHelper;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.core.features.AEFeature;
|
||||||
|
|
||||||
|
|
||||||
public class BlockQuartzLamp extends BlockQuartzGlass
|
public class QuartzLampBlock extends QuartzGlassBlock
|
||||||
{
|
{
|
||||||
|
|
||||||
public BlockQuartzLamp()
|
public QuartzLampBlock()
|
||||||
{
|
{
|
||||||
this.setLightLevel( 1.0f );
|
this.setLightLevel( 1.0f );
|
||||||
this.setBlockTextureName( "BlockQuartzGlass" );
|
this.setBlockTextureName( "BlockQuartzGlass" );
|
|
@ -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.block.solids;
|
package appeng.decorative.solid;
|
||||||
|
|
||||||
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
@ -40,13 +40,13 @@ import appeng.client.render.blocks.RenderQuartzOre;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.core.features.AEFeature;
|
||||||
|
|
||||||
|
|
||||||
public class OreQuartz extends AEBaseBlock
|
public class QuartzOreBlock extends AEBaseBlock
|
||||||
{
|
{
|
||||||
private int boostBrightnessLow;
|
private int boostBrightnessLow;
|
||||||
private int boostBrightnessHigh;
|
private int boostBrightnessHigh;
|
||||||
private boolean enhanceBrightness;
|
private boolean enhanceBrightness;
|
||||||
|
|
||||||
public OreQuartz()
|
public QuartzOreBlock()
|
||||||
{
|
{
|
||||||
super( Material.rock );
|
super( Material.rock );
|
||||||
this.setHardness( 3.0F );
|
this.setHardness( 3.0F );
|
|
@ -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.block.solids;
|
package appeng.decorative.solid;
|
||||||
|
|
||||||
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
@ -34,10 +34,10 @@ import appeng.helpers.MetaRotation;
|
||||||
|
|
||||||
|
|
||||||
// TODO Quartz Rotation.
|
// TODO Quartz Rotation.
|
||||||
public class BlockQuartzPillar extends AEBaseBlock implements IOrientableBlock
|
public class QuartzPillarBlock extends AEBaseBlock implements IOrientableBlock
|
||||||
{
|
{
|
||||||
|
|
||||||
public BlockQuartzPillar()
|
public QuartzPillarBlock()
|
||||||
{
|
{
|
||||||
super( Material.rock );
|
super( Material.rock );
|
||||||
this.setFeature( EnumSet.of( AEFeature.DecorativeQuartzBlocks ) );
|
this.setFeature( EnumSet.of( AEFeature.DecorativeQuartzBlocks ) );
|
|
@ -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.block.solids;
|
package appeng.decorative.solid;
|
||||||
|
|
||||||
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
@ -38,30 +38,27 @@ import appeng.core.worlddata.WorldData;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
|
|
||||||
public class BlockSkyStone extends AEBaseBlock
|
public class SkyStoneBlock extends AEBaseBlock
|
||||||
{
|
{
|
||||||
private static final float BLOCK_RESISTANCE = 150.0f;
|
private static final float BLOCK_RESISTANCE = 150.0f;
|
||||||
private static final double BREAK_SPEAK_SCALAR = 0.1;
|
private static final double BREAK_SPEAK_SCALAR = 0.1;
|
||||||
private static final double BREAK_SPEAK_THRESHOLD = 7.0;
|
private static final double BREAK_SPEAK_THRESHOLD = 7.0;
|
||||||
|
private final SkystoneType type;
|
||||||
|
|
||||||
public static enum SkystoneType {
|
public SkyStoneBlock( SkystoneType type )
|
||||||
stone,block,brick,smallbrick
|
|
||||||
};
|
|
||||||
|
|
||||||
SkystoneType type;
|
|
||||||
|
|
||||||
public BlockSkyStone( SkystoneType type )
|
|
||||||
{
|
{
|
||||||
super( Material.rock, Optional.of( type.name()) );
|
super( Material.rock, Optional.of( type.name() ) );
|
||||||
this.setHardness( 50 );
|
this.setHardness( 50 );
|
||||||
this.hasSubtypes = true;
|
this.hasSubtypes = true;
|
||||||
this.blockResistance = BLOCK_RESISTANCE;
|
this.blockResistance = BLOCK_RESISTANCE;
|
||||||
if ( type == SkystoneType.stone )
|
if( type == SkystoneType.STONE )
|
||||||
|
{
|
||||||
this.setHarvestLevel( "pickaxe", 3 );
|
this.setHarvestLevel( "pickaxe", 3 );
|
||||||
|
}
|
||||||
this.setFeature( EnumSet.of( AEFeature.Core ) );
|
this.setFeature( EnumSet.of( AEFeature.Core ) );
|
||||||
|
|
||||||
this.type = type;
|
this.type = type;
|
||||||
|
|
||||||
MinecraftForge.EVENT_BUS.register( this );
|
MinecraftForge.EVENT_BUS.register( this );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -78,7 +75,7 @@ public class BlockSkyStone extends AEBaseBlock
|
||||||
level = is.getItem().getHarvestLevel( is, "pickaxe" );
|
level = is.getItem().getHarvestLevel( is, "pickaxe" );
|
||||||
}
|
}
|
||||||
|
|
||||||
if( type != SkystoneType.stone || level >= 3 || event.originalSpeed > BREAK_SPEAK_THRESHOLD )
|
if( type != SkystoneType.STONE || level >= 3 || event.originalSpeed > BREAK_SPEAK_THRESHOLD )
|
||||||
{
|
{
|
||||||
event.newSpeed /= BREAK_SPEAK_SCALAR;
|
event.newSpeed /= BREAK_SPEAK_SCALAR;
|
||||||
}
|
}
|
||||||
|
@ -86,10 +83,7 @@ public class BlockSkyStone extends AEBaseBlock
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onBlockAdded(
|
public void onBlockAdded( World w, BlockPos pos, IBlockState state )
|
||||||
World w,
|
|
||||||
BlockPos pos,
|
|
||||||
IBlockState state )
|
|
||||||
{
|
{
|
||||||
super.onBlockAdded( w, pos, state );
|
super.onBlockAdded( w, pos, state );
|
||||||
if( Platform.isServer() )
|
if( Platform.isServer() )
|
||||||
|
@ -99,27 +93,34 @@ public class BlockSkyStone extends AEBaseBlock
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getUnlocalizedName( ItemStack is )
|
public void breakBlock( World w, BlockPos pos, IBlockState state )
|
||||||
{
|
|
||||||
switch(type)
|
|
||||||
{
|
|
||||||
case block: return this.getUnlocalizedName() + ".Block";
|
|
||||||
case brick: return this.getUnlocalizedName() + ".Brick";
|
|
||||||
case smallbrick: return this.getUnlocalizedName() + ".SmallBrick";
|
|
||||||
default: return this.getUnlocalizedName();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void breakBlock(
|
|
||||||
World w,
|
|
||||||
BlockPos pos,
|
|
||||||
IBlockState state )
|
|
||||||
{
|
{
|
||||||
super.breakBlock( w, pos, state );
|
super.breakBlock( w, pos, state );
|
||||||
|
|
||||||
if( Platform.isServer() )
|
if( Platform.isServer() )
|
||||||
{
|
{
|
||||||
WorldData.instance().compassData().service().updateArea( w, pos.getX(), pos.getY(), pos.getZ() );
|
WorldData.instance().compassData().service().updateArea( w, pos.getX(), pos.getY(), pos.getZ() );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getUnlocalizedName( ItemStack is )
|
||||||
|
{
|
||||||
|
switch( type )
|
||||||
|
{
|
||||||
|
case BLOCK:
|
||||||
|
return this.getUnlocalizedName() + ".Block";
|
||||||
|
case BRICK:
|
||||||
|
return this.getUnlocalizedName() + ".Brick";
|
||||||
|
case SMALL_BRICK:
|
||||||
|
return this.getUnlocalizedName() + ".SmallBrick";
|
||||||
|
default:
|
||||||
|
return this.getUnlocalizedName();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public enum SkystoneType
|
||||||
|
{
|
||||||
|
STONE, BLOCK, BRICK, SMALL_BRICK
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -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.block.stair;
|
package appeng.decorative.stair;
|
||||||
|
|
||||||
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
@ -27,10 +27,10 @@ import appeng.block.AEBaseStairBlock;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.core.features.AEFeature;
|
||||||
|
|
||||||
|
|
||||||
public final class BlockStairCommon extends AEBaseStairBlock
|
public class BlockStairCommon extends AEBaseStairBlock
|
||||||
{
|
{
|
||||||
public BlockStairCommon( Block material, String type )
|
public BlockStairCommon( Block block, String type )
|
||||||
{
|
{
|
||||||
super( material,EnumSet.of( AEFeature.DecorativeQuartzBlocks ), type );
|
super( block, EnumSet.of( AEFeature.DecorativeQuartzBlocks ), type );
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -0,0 +1,58 @@
|
||||||
|
package appeng.decorative.stair;
|
||||||
|
|
||||||
|
|
||||||
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
|
import com.google.common.base.Preconditions;
|
||||||
|
|
||||||
|
import net.minecraft.block.Block;
|
||||||
|
|
||||||
|
import appeng.decorative.solid.Identifier;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* An refactor safe implementation for stair identifiers.
|
||||||
|
* The internal Strings are not supposed to be changed,
|
||||||
|
* they are used to persist the blocks into the save file.
|
||||||
|
*
|
||||||
|
* If you change these, you will break worlds if not countered
|
||||||
|
*
|
||||||
|
* @author thatsIch
|
||||||
|
* @version rv3 - 29.06.2015
|
||||||
|
* @since rv3 29.06.2015
|
||||||
|
*/
|
||||||
|
public enum DecorativeStairIdentifier implements Identifier
|
||||||
|
{
|
||||||
|
FLUIX("stair.fluix"),
|
||||||
|
CHISELED_CERTUS_QUARTZ("stair.quartz.certus.chiseled"),
|
||||||
|
CERTUS_QUARTZ("stair.quartz.certus"),
|
||||||
|
CERTUS_QUARTZ_PILLAR("stair.quartz.certus.pillar"),
|
||||||
|
SKYSTONE("stair.skystone"),
|
||||||
|
SKYSTONE_BLOCK("stair.skystone.block"),
|
||||||
|
SKYSTONE_BRICK("stair.skystone.brick"),
|
||||||
|
SKYSTONE_SMALL_BRICK("stair.skystone.brick.small");
|
||||||
|
|
||||||
|
private final String name;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Used to register the specific blocks
|
||||||
|
*
|
||||||
|
* @param name id of the block or a unique name
|
||||||
|
*
|
||||||
|
* @see net.minecraftforge.fml.common.registry.GameRegistry#registerBlock(Block, String)
|
||||||
|
*/
|
||||||
|
DecorativeStairIdentifier( @Nonnull String name )
|
||||||
|
{
|
||||||
|
Preconditions.checkNotNull( name );
|
||||||
|
Preconditions.checkArgument( !name.isEmpty() );
|
||||||
|
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Nonnull
|
||||||
|
@Override
|
||||||
|
public String identifier()
|
||||||
|
{
|
||||||
|
return this.name;
|
||||||
|
}
|
||||||
|
}
|
18
src/main/java/appeng/decorative/stair/FluixStairBlock.java
Normal file
18
src/main/java/appeng/decorative/stair/FluixStairBlock.java
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
package appeng.decorative.stair;
|
||||||
|
|
||||||
|
|
||||||
|
import net.minecraft.block.Block;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author thatsIch
|
||||||
|
* @version rv3 - 30.06.2015
|
||||||
|
* @since rv3 30.06.2015
|
||||||
|
*/
|
||||||
|
public class FluixStairBlock extends BlockStairCommon
|
||||||
|
{
|
||||||
|
public FluixStairBlock( Block block, String type )
|
||||||
|
{
|
||||||
|
super( block, type );
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
package appeng.decorative.stair;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author thatsIch
|
||||||
|
* @version rv3 - 30.06.2015
|
||||||
|
* @since rv3 30.06.2015
|
||||||
|
*/
|
||||||
|
public class FluixStairComponent
|
||||||
|
{
|
||||||
|
}
|
|
@ -0,0 +1,22 @@
|
||||||
|
package appeng.decorative.stair;
|
||||||
|
|
||||||
|
|
||||||
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
|
import appeng.decorative.solid.Identifier;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author thatsIch
|
||||||
|
* @version rv3 - 29.06.2015
|
||||||
|
* @since rv3 29.06.2015
|
||||||
|
*/
|
||||||
|
public final class FluixStairIdentifier implements Identifier
|
||||||
|
{
|
||||||
|
@Nonnull
|
||||||
|
@Override
|
||||||
|
public String identifier()
|
||||||
|
{
|
||||||
|
return "stair.fluix";
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,33 @@
|
||||||
|
package appeng.decorative.stair;
|
||||||
|
|
||||||
|
|
||||||
|
import java.util.function.Supplier;
|
||||||
|
|
||||||
|
import com.google.common.base.Preconditions;
|
||||||
|
|
||||||
|
import net.minecraft.block.Block;
|
||||||
|
import net.minecraft.block.BlockStairs;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author thatsIch
|
||||||
|
* @version rv3 - 30.06.2015
|
||||||
|
* @since rv3 30.06.2015
|
||||||
|
*/
|
||||||
|
public class FluixStairSupplier implements Supplier<BlockStairs>
|
||||||
|
{
|
||||||
|
private final Supplier<Block> fluixBlockSupplier;
|
||||||
|
|
||||||
|
public FluixStairSupplier( Supplier<Block> fluixBlockSupplier )
|
||||||
|
{
|
||||||
|
Preconditions.checkNotNull( fluixBlockSupplier );
|
||||||
|
|
||||||
|
this.fluixBlockSupplier = fluixBlockSupplier;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public FluixStairBlock get()
|
||||||
|
{
|
||||||
|
return new FluixStairBlock( this.fluixBlockSupplier.get(), "fluix" );
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,71 @@
|
||||||
|
package appeng.decorative.stair;
|
||||||
|
|
||||||
|
|
||||||
|
import javax.annotation.Nonnull;
|
||||||
|
|
||||||
|
import com.google.common.base.Optional;
|
||||||
|
|
||||||
|
import net.minecraft.block.Block;
|
||||||
|
import net.minecraft.item.Item;
|
||||||
|
import net.minecraft.item.ItemBlock;
|
||||||
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.util.BlockPos;
|
||||||
|
import net.minecraft.world.IBlockAccess;
|
||||||
|
|
||||||
|
import appeng.api.definitions.IBlockDefinition;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author thatsIch
|
||||||
|
* @version rv3 - 29.06.2015
|
||||||
|
* @since rv3 29.06.2015
|
||||||
|
*/
|
||||||
|
public class StairBlockDefinition implements IBlockDefinition
|
||||||
|
{
|
||||||
|
public StairBlockDefinition()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Optional<Block> maybeBlock()
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Optional<ItemBlock> maybeItemBlock()
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isSameAs( IBlockAccess world, BlockPos pos )
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Nonnull
|
||||||
|
@Override
|
||||||
|
public String identifier()
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Optional<Item> maybeItem()
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Optional<ItemStack> maybeStack( int stackSize )
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isSameAs( ItemStack comparableStack )
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
|
@ -78,9 +78,9 @@ public class NetworkToolViewer implements INetworkTool
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return this.inv.getName();
|
return this.inv.getCommandSenderName();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -69,14 +69,14 @@ import appeng.util.InventoryAdaptor;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
|
|
||||||
public final class ItemMultiMaterial extends AEBaseItem implements IStorageComponent, IUpgradeModule
|
public final class MultiItem extends AEBaseItem implements IStorageComponent, IUpgradeModule
|
||||||
{
|
{
|
||||||
public static final int KILO_SCALAR = 1024;
|
public static final int KILO_SCALAR = 1024;
|
||||||
public static ItemMultiMaterial instance;
|
public static MultiItem instance;
|
||||||
|
|
||||||
private final Map<Integer, MaterialType> dmgToMaterial = new HashMap<Integer, MaterialType>();
|
private final Map<Integer, MaterialType> dmgToMaterial = new HashMap<Integer, MaterialType>();
|
||||||
|
|
||||||
public ItemMultiMaterial()
|
public MultiItem()
|
||||||
{
|
{
|
||||||
this.setFeature( EnumSet.of( AEFeature.Core ) );
|
this.setFeature( EnumSet.of( AEFeature.Core ) );
|
||||||
this.setHasSubtypes( true );
|
this.setHasSubtypes( true );
|
|
@ -45,7 +45,7 @@ import appeng.api.AEApi;
|
||||||
import appeng.api.exceptions.MissingDefinition;
|
import appeng.api.exceptions.MissingDefinition;
|
||||||
import appeng.api.parts.IAlphaPassItem;
|
import appeng.api.parts.IAlphaPassItem;
|
||||||
import appeng.api.util.AEPartLocation;
|
import appeng.api.util.AEPartLocation;
|
||||||
import appeng.block.solids.OreQuartz;
|
import appeng.decorative.solid.QuartzOreBlock;
|
||||||
import appeng.client.texture.BaseIcon;
|
import appeng.client.texture.BaseIcon;
|
||||||
import appeng.core.AppEng;
|
import appeng.core.AppEng;
|
||||||
import appeng.core.FacadeConfig;
|
import appeng.core.FacadeConfig;
|
||||||
|
@ -159,7 +159,7 @@ public class ItemFacade extends AEBaseItem implements IFacadeItem, IAlphaPassIte
|
||||||
|
|
||||||
boolean hasTile = b.hasTileEntity( b.getStateFromMeta( metadata ) );
|
boolean hasTile = b.hasTileEntity( b.getStateFromMeta( metadata ) );
|
||||||
boolean enableGlass = b instanceof BlockGlass || b instanceof BlockStainedGlass;
|
boolean enableGlass = b instanceof BlockGlass || b instanceof BlockStainedGlass;
|
||||||
boolean disableOre = b instanceof OreQuartz;
|
boolean disableOre = b instanceof QuartzOreBlock;
|
||||||
|
|
||||||
boolean defaultValue = ( b.isOpaqueCube() && !b.getTickRandomly() && !hasTile && !disableOre ) || enableGlass;
|
boolean defaultValue = ( b.isOpaqueCube() && !b.getTickRandomly() && !hasTile && !disableOre ) || enableGlass;
|
||||||
if( FacadeConfig.instance.checkEnabled( b, metadata, defaultValue ) )
|
if( FacadeConfig.instance.checkEnabled( b, metadata, defaultValue ) )
|
||||||
|
|
|
@ -21,9 +21,13 @@ package appeng.items.tools.powered;
|
||||||
|
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
|
|
||||||
|
import com.google.common.base.Optional;
|
||||||
|
|
||||||
import net.minecraft.entity.EntityLivingBase;
|
import net.minecraft.entity.EntityLivingBase;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
|
import net.minecraft.util.AxisAlignedBB;
|
||||||
import net.minecraft.util.DamageSource;
|
import net.minecraft.util.DamageSource;
|
||||||
|
|
||||||
import appeng.core.AEConfig;
|
import appeng.core.AEConfig;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.core.features.AEFeature;
|
||||||
import appeng.core.sync.packets.PacketLightning;
|
import appeng.core.sync.packets.PacketLightning;
|
||||||
|
@ -31,8 +35,6 @@ import appeng.items.tools.powered.powersink.AEBasePoweredItem;
|
||||||
import appeng.server.ServerHelper;
|
import appeng.server.ServerHelper;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
|
|
||||||
import com.google.common.base.Optional;
|
|
||||||
|
|
||||||
|
|
||||||
public class ToolChargedStaff extends AEBasePoweredItem
|
public class ToolChargedStaff extends AEBasePoweredItem
|
||||||
{
|
{
|
||||||
|
@ -53,9 +55,10 @@ public class ToolChargedStaff extends AEBasePoweredItem
|
||||||
{
|
{
|
||||||
for( int x = 0; x < 2; x++ )
|
for( int x = 0; x < 2; x++ )
|
||||||
{
|
{
|
||||||
float dx = (float) ( Platform.getRandomFloat() * target.width + target.getBoundingBox().minX );
|
final AxisAlignedBB entityBoundingBox = target.getEntityBoundingBox();
|
||||||
float dy = (float) ( Platform.getRandomFloat() * target.height + target.getBoundingBox().minY );
|
float dx = (float) ( Platform.getRandomFloat() * target.width + entityBoundingBox.minX );
|
||||||
float dz = (float) ( Platform.getRandomFloat() * target.width + target.getBoundingBox().minZ );
|
float dy = (float) ( Platform.getRandomFloat() * target.height + entityBoundingBox.minY );
|
||||||
|
float dz = (float) ( Platform.getRandomFloat() * target.width + entityBoundingBox.minZ );
|
||||||
ServerHelper.proxy.sendToAllNearExcept( null, dx, dy, dz, 32.0, target.worldObj, new PacketLightning( dx, dy, dz ) );
|
ServerHelper.proxy.sendToAllNearExcept( null, dx, dy, dz, 32.0, target.worldObj, new PacketLightning( dx, dy, dz ) );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -222,7 +222,7 @@ public class ToolMassCannon extends AEBasePoweredItem implements IStorageCell
|
||||||
|
|
||||||
float f1 = 0.3F;
|
float f1 = 0.3F;
|
||||||
|
|
||||||
AxisAlignedBB boundingBox = entity1.getBoundingBox().expand( f1, f1, f1 );
|
AxisAlignedBB boundingBox = entity1.getEntityBoundingBox().expand( f1, f1, f1 );
|
||||||
MovingObjectPosition movingObjectPosition = boundingBox.calculateIntercept( vec3, vec31 );
|
MovingObjectPosition movingObjectPosition = boundingBox.calculateIntercept( vec3, vec31 );
|
||||||
|
|
||||||
if( movingObjectPosition != null )
|
if( movingObjectPosition != null )
|
||||||
|
@ -341,7 +341,7 @@ public class ToolMassCannon extends AEBasePoweredItem implements IStorageCell
|
||||||
|
|
||||||
float f1 = 0.3F;
|
float f1 = 0.3F;
|
||||||
|
|
||||||
AxisAlignedBB boundingBox = entity1.getBoundingBox().expand( f1, f1, f1 );
|
AxisAlignedBB boundingBox = entity1.getEntityBoundingBox().expand( f1, f1, f1 );
|
||||||
MovingObjectPosition movingObjectPosition = boundingBox.calculateIntercept( vec3, vec31 );
|
MovingObjectPosition movingObjectPosition = boundingBox.calculateIntercept( vec3, vec31 );
|
||||||
|
|
||||||
if( movingObjectPosition != null )
|
if( movingObjectPosition != null )
|
||||||
|
|
|
@ -22,6 +22,8 @@ package appeng.parts.misc;
|
||||||
import java.util.EnumSet;
|
import java.util.EnumSet;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
import com.google.common.collect.ImmutableSet;
|
||||||
|
|
||||||
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.inventory.IInventory;
|
import net.minecraft.inventory.IInventory;
|
||||||
|
@ -36,6 +38,7 @@ import net.minecraft.util.IChatComponent;
|
||||||
import net.minecraft.util.Vec3;
|
import net.minecraft.util.Vec3;
|
||||||
import net.minecraftforge.fml.relauncher.Side;
|
import net.minecraftforge.fml.relauncher.Side;
|
||||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||||
|
|
||||||
import appeng.api.config.Actionable;
|
import appeng.api.config.Actionable;
|
||||||
import appeng.api.config.Upgrades;
|
import appeng.api.config.Upgrades;
|
||||||
import appeng.api.implementations.tiles.ITileStorageMonitorable;
|
import appeng.api.implementations.tiles.ITileStorageMonitorable;
|
||||||
|
@ -70,8 +73,6 @@ import appeng.tile.inventory.InvOperation;
|
||||||
import appeng.util.Platform;
|
import appeng.util.Platform;
|
||||||
import appeng.util.inv.IInventoryDestination;
|
import appeng.util.inv.IInventoryDestination;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableSet;
|
|
||||||
|
|
||||||
|
|
||||||
public class PartInterface extends PartBasicState implements IGridTickable, IStorageMonitorable, IInventoryDestination, IInterfaceHost, ISidedInventory, IAEAppEngInventory, ITileStorageMonitorable, IPriorityHost
|
public class PartInterface extends PartBasicState implements IGridTickable, IStorageMonitorable, IInventoryDestination, IInterfaceHost, ISidedInventory, IAEAppEngInventory, ITileStorageMonitorable, IPriorityHost
|
||||||
{
|
{
|
||||||
|
@ -281,9 +282,9 @@ public class PartInterface extends PartBasicState implements IGridTickable, ISto
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return this.duality.getStorage().getName();
|
return this.duality.getStorage().getCommandSenderName();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -307,7 +307,7 @@ public class PartP2PItems extends PartP2PTunnel<PartP2PItems> implements ISidedI
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,7 +30,7 @@ import appeng.api.recipes.ResolverResultSet;
|
||||||
import appeng.api.util.AEColor;
|
import appeng.api.util.AEColor;
|
||||||
import appeng.api.util.AEColoredItemDefinition;
|
import appeng.api.util.AEColoredItemDefinition;
|
||||||
import appeng.core.AppEng;
|
import appeng.core.AppEng;
|
||||||
import appeng.items.materials.ItemMultiMaterial;
|
import appeng.items.materials.MultiItem;
|
||||||
import appeng.items.materials.MaterialType;
|
import appeng.items.materials.MaterialType;
|
||||||
import appeng.items.misc.ItemCrystalSeed;
|
import appeng.items.misc.ItemCrystalSeed;
|
||||||
import appeng.items.parts.ItemMultiPart;
|
import appeng.items.parts.ItemMultiPart;
|
||||||
|
@ -123,7 +123,7 @@ public class AEItemResolver implements ISubItemResolver
|
||||||
String materialName = itemName.substring( itemName.indexOf( '.' ) + 1 );
|
String materialName = itemName.substring( itemName.indexOf( '.' ) + 1 );
|
||||||
MaterialType mt = MaterialType.valueOf( materialName );
|
MaterialType mt = MaterialType.valueOf( materialName );
|
||||||
// itemName = itemName.substring( 0, itemName.indexOf( "." ) );
|
// itemName = itemName.substring( 0, itemName.indexOf( "." ) );
|
||||||
if( mt.itemInstance == ItemMultiMaterial.instance && mt.damageValue >= 0 && mt.isRegistered() )
|
if( mt.itemInstance == MultiItem.instance && mt.damageValue >= 0 && mt.isRegistered() )
|
||||||
{
|
{
|
||||||
return new ResolverResult( "ItemMultiMaterial", mt.damageValue );
|
return new ResolverResult( "ItemMultiMaterial", mt.damageValue );
|
||||||
}
|
}
|
||||||
|
|
|
@ -54,7 +54,7 @@ import appeng.core.AEConfig;
|
||||||
import appeng.core.AELog;
|
import appeng.core.AELog;
|
||||||
import appeng.core.AppEng;
|
import appeng.core.AppEng;
|
||||||
import appeng.core.features.AEFeature;
|
import appeng.core.features.AEFeature;
|
||||||
import appeng.items.materials.ItemMultiMaterial;
|
import appeng.items.materials.MultiItem;
|
||||||
import appeng.items.misc.ItemCrystalSeed;
|
import appeng.items.misc.ItemCrystalSeed;
|
||||||
import appeng.items.parts.ItemMultiPart;
|
import appeng.items.parts.ItemMultiPart;
|
||||||
import appeng.recipes.handlers.IWebsiteSerializer;
|
import appeng.recipes.handlers.IWebsiteSerializer;
|
||||||
|
@ -200,10 +200,10 @@ public class RecipeHandler implements IRecipeHandler
|
||||||
default:
|
default:
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if( is.getItem() instanceof ItemMultiMaterial )
|
else if( is.getItem() instanceof MultiItem )
|
||||||
{
|
{
|
||||||
realName = realName.replace( "ItemMultiMaterial", "ItemMaterial" );
|
realName = realName.replace( "ItemMultiMaterial", "ItemMaterial" );
|
||||||
realName += '.' + ( (ItemMultiMaterial) is.getItem() ).getTypeByStack( is ).name();
|
realName += '.' + ( (MultiItem) is.getItem() ).getTypeByStack( is ).name();
|
||||||
}
|
}
|
||||||
else if( is.getItem() instanceof ItemMultiPart )
|
else if( is.getItem() instanceof ItemMultiPart )
|
||||||
{
|
{
|
||||||
|
|
|
@ -19,14 +19,14 @@
|
||||||
package appeng.server;
|
package appeng.server;
|
||||||
|
|
||||||
|
|
||||||
|
import com.google.common.base.Joiner;
|
||||||
|
|
||||||
import net.minecraft.command.CommandBase;
|
import net.minecraft.command.CommandBase;
|
||||||
import net.minecraft.command.CommandException;
|
import net.minecraft.command.CommandException;
|
||||||
import net.minecraft.command.ICommandSender;
|
import net.minecraft.command.ICommandSender;
|
||||||
import net.minecraft.command.WrongUsageException;
|
import net.minecraft.command.WrongUsageException;
|
||||||
import net.minecraft.server.MinecraftServer;
|
import net.minecraft.server.MinecraftServer;
|
||||||
|
|
||||||
import com.google.common.base.Joiner;
|
|
||||||
|
|
||||||
|
|
||||||
public final class AECommand extends CommandBase
|
public final class AECommand extends CommandBase
|
||||||
{
|
{
|
||||||
|
@ -53,7 +53,7 @@ public final class AECommand extends CommandBase
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandName()
|
||||||
{
|
{
|
||||||
return "ae2";
|
return "ae2";
|
||||||
}
|
}
|
||||||
|
@ -65,7 +65,7 @@ public final class AECommand extends CommandBase
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void execute(
|
public void processCommand(
|
||||||
ICommandSender sender,
|
ICommandSender sender,
|
||||||
String[] args ) throws CommandException
|
String[] args ) throws CommandException
|
||||||
{
|
{
|
||||||
|
@ -101,7 +101,7 @@ public final class AECommand extends CommandBase
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
Commands c = Commands.valueOf( args[0] );
|
Commands c = Commands.valueOf( args[0] );
|
||||||
if( sender.canUseCommand( c.level, this.getName() ) )
|
if( sender.canCommandSenderUseCommand( c.level, this.getCommandName() ) )
|
||||||
{
|
{
|
||||||
c.command.call( this.srv, args, sender );
|
c.command.call( this.srv, args, sender );
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,6 +29,7 @@ import net.minecraft.entity.player.InventoryPlayer;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.nbt.NBTTagCompound;
|
import net.minecraft.nbt.NBTTagCompound;
|
||||||
import net.minecraft.server.MinecraftServer;
|
import net.minecraft.server.MinecraftServer;
|
||||||
|
import net.minecraft.tileentity.TileEntity;
|
||||||
import net.minecraft.util.MovingObjectPosition;
|
import net.minecraft.util.MovingObjectPosition;
|
||||||
import net.minecraft.util.ResourceLocation;
|
import net.minecraft.util.ResourceLocation;
|
||||||
import net.minecraft.world.World;
|
import net.minecraft.world.World;
|
||||||
|
@ -68,7 +69,7 @@ public class ServerHelper extends CommonHelper
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void bindTileEntitySpecialRenderer( Class tile, AEBaseBlock blk )
|
public void bindTileEntitySpecialRenderer( Class <? extends TileEntity> tile, AEBaseBlock blk )
|
||||||
{
|
{
|
||||||
throw new UnsupportedOperationException( "This is a server..." );
|
throw new UnsupportedOperationException( "This is a server..." );
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,6 +29,7 @@ import net.minecraft.world.World;
|
||||||
import net.minecraft.world.chunk.Chunk;
|
import net.minecraft.world.chunk.Chunk;
|
||||||
import net.minecraft.world.chunk.IChunkProvider;
|
import net.minecraft.world.chunk.IChunkProvider;
|
||||||
import net.minecraft.world.gen.ChunkProviderGenerate;
|
import net.minecraft.world.gen.ChunkProviderGenerate;
|
||||||
|
|
||||||
import appeng.api.AEApi;
|
import appeng.api.AEApi;
|
||||||
import appeng.core.AEConfig;
|
import appeng.core.AEConfig;
|
||||||
|
|
||||||
|
@ -94,9 +95,7 @@ public class StorageChunkProvider extends ChunkProviderGenerate
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List func_177458_a(
|
public List getPossibleCreatures( EnumCreatureType creatureType, BlockPos pos )
|
||||||
EnumCreatureType p_177458_1_,
|
|
||||||
BlockPos p_177458_2_ )
|
|
||||||
{
|
{
|
||||||
return new ArrayList();
|
return new ArrayList();
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,6 +31,7 @@ import net.minecraft.util.ChatComponentText;
|
||||||
import net.minecraft.util.ChatComponentTranslation;
|
import net.minecraft.util.ChatComponentTranslation;
|
||||||
import net.minecraft.util.EnumFacing;
|
import net.minecraft.util.EnumFacing;
|
||||||
import net.minecraft.util.IChatComponent;
|
import net.minecraft.util.IChatComponent;
|
||||||
|
|
||||||
import appeng.block.AEBaseBlock;
|
import appeng.block.AEBaseBlock;
|
||||||
import appeng.tile.events.TileEventType;
|
import appeng.tile.events.TileEventType;
|
||||||
import appeng.tile.inventory.IAEAppEngInventory;
|
import appeng.tile.inventory.IAEAppEngInventory;
|
||||||
|
@ -39,6 +40,11 @@ import appeng.tile.inventory.InvOperation;
|
||||||
|
|
||||||
public abstract class AEBaseInvTile extends AEBaseTile implements ISidedInventory, IAEAppEngInventory
|
public abstract class AEBaseInvTile extends AEBaseTile implements ISidedInventory, IAEAppEngInventory
|
||||||
{
|
{
|
||||||
|
@Override
|
||||||
|
public String getCommandSenderName()
|
||||||
|
{
|
||||||
|
return this.getCustomName();
|
||||||
|
}
|
||||||
|
|
||||||
@TileEvent( TileEventType.WORLD_NBT_READ )
|
@TileEvent( TileEventType.WORLD_NBT_READ )
|
||||||
public void readFromNBT_AEBaseInvTile( net.minecraft.nbt.NBTTagCompound data )
|
public void readFromNBT_AEBaseInvTile( net.minecraft.nbt.NBTTagCompound data )
|
||||||
|
@ -102,15 +108,6 @@ public abstract class AEBaseInvTile extends AEBaseTile implements ISidedInventor
|
||||||
this.getInternalInventory().setInventorySlotContents( i, itemstack );
|
this.getInternalInventory().setInventorySlotContents( i, itemstack );
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Returns the name of the inventory
|
|
||||||
*/
|
|
||||||
@Override
|
|
||||||
public String getName()
|
|
||||||
{
|
|
||||||
return this.getCustomName();
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns if the inventory is named
|
* Returns if the inventory is named
|
||||||
*/
|
*/
|
||||||
|
@ -135,15 +132,17 @@ public abstract class AEBaseInvTile extends AEBaseTile implements ISidedInventor
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void openInventory(EntityPlayer player) {
|
public void openInventory( EntityPlayer player )
|
||||||
|
|
||||||
};
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void closeInventory(
|
|
||||||
EntityPlayer player )
|
|
||||||
{
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void closeInventory( EntityPlayer player )
|
||||||
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -156,8 +155,7 @@ public abstract class AEBaseInvTile extends AEBaseTile implements ISidedInventor
|
||||||
public abstract void onChangeInventory( IInventory inv, int slot, InvOperation mc, ItemStack removed, ItemStack added );
|
public abstract void onChangeInventory( IInventory inv, int slot, InvOperation mc, ItemStack removed, ItemStack added );
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int[] getSlotsForFace(
|
public int[] getSlotsForFace( EnumFacing side )
|
||||||
EnumFacing side )
|
|
||||||
{
|
{
|
||||||
Block blk = this.worldObj.getBlockState( pos ).getBlock();
|
Block blk = this.worldObj.getBlockState( pos ).getBlock();
|
||||||
if( blk instanceof AEBaseBlock )
|
if( blk instanceof AEBaseBlock )
|
||||||
|
@ -178,41 +176,40 @@ public abstract class AEBaseInvTile extends AEBaseTile implements ISidedInventor
|
||||||
{
|
{
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void clear()
|
public void clear()
|
||||||
{
|
{
|
||||||
this.getInternalInventory().clear();
|
this.getInternalInventory().clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getField(
|
public int getField( int id )
|
||||||
int id )
|
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void setField(
|
public void setField( int id, int value )
|
||||||
int id,
|
|
||||||
int value )
|
|
||||||
{
|
{
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getFieldCount()
|
public int getFieldCount()
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IChatComponent getDisplayName()
|
public IChatComponent getDisplayName()
|
||||||
{
|
{
|
||||||
if ( hasCustomName() )
|
if( hasCustomName() )
|
||||||
return new ChatComponentText(getName());
|
{
|
||||||
|
return new ChatComponentText( this.getCustomName() );
|
||||||
|
}
|
||||||
return new ChatComponentTranslation( getBlockType().getUnlocalizedName() );
|
return new ChatComponentTranslation( getBlockType().getUnlocalizedName() );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public abstract int[] getAccessibleSlotsBySide( EnumFacing whichSide );
|
public abstract int[] getAccessibleSlotsBySide( EnumFacing whichSide );
|
||||||
}
|
}
|
||||||
|
|
|
@ -218,7 +218,7 @@ public class AppEngInternalAEInventory implements IInventory, Iterable<ItemStack
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return "appeng-internal";
|
return "appeng-internal";
|
||||||
}
|
}
|
||||||
|
|
|
@ -158,7 +158,7 @@ public class AppEngInternalInventory implements IInventory, Iterable<ItemStack>
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return "appeng-internal";
|
return "appeng-internal";
|
||||||
}
|
}
|
||||||
|
|
|
@ -68,7 +68,7 @@ public class AppEngNullInventory implements IInventory
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return "appeng-internal";
|
return "appeng-internal";
|
||||||
}
|
}
|
||||||
|
|
|
@ -20,9 +20,10 @@ package appeng.transformer;
|
||||||
|
|
||||||
|
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import javax.annotation.Nullable;
|
import javax.annotation.Nullable;
|
||||||
|
|
||||||
|
import com.google.common.eventbus.EventBus;
|
||||||
|
|
||||||
import net.minecraftforge.fml.common.DummyModContainer;
|
import net.minecraftforge.fml.common.DummyModContainer;
|
||||||
import net.minecraftforge.fml.common.LoadController;
|
import net.minecraftforge.fml.common.LoadController;
|
||||||
import net.minecraftforge.fml.common.Mod.EventHandler;
|
import net.minecraftforge.fml.common.Mod.EventHandler;
|
||||||
|
@ -31,9 +32,8 @@ import net.minecraftforge.fml.common.event.FMLInitializationEvent;
|
||||||
import net.minecraftforge.fml.relauncher.FMLRelaunchLog;
|
import net.minecraftforge.fml.relauncher.FMLRelaunchLog;
|
||||||
import net.minecraftforge.fml.relauncher.IFMLLoadingPlugin;
|
import net.minecraftforge.fml.relauncher.IFMLLoadingPlugin;
|
||||||
import net.minecraftforge.fml.relauncher.IFMLLoadingPlugin.MCVersion;
|
import net.minecraftforge.fml.relauncher.IFMLLoadingPlugin.MCVersion;
|
||||||
import appeng.core.AEConfig;
|
|
||||||
|
|
||||||
import com.google.common.eventbus.EventBus;
|
import appeng.core.AEConfig;
|
||||||
|
|
||||||
|
|
||||||
@MCVersion( "1.8" )
|
@MCVersion( "1.8" )
|
||||||
|
@ -126,4 +126,6 @@ public final class AppEngCore extends DummyModContainer implements IFMLLoadingPl
|
||||||
{
|
{
|
||||||
return this.getVersion();
|
return this.getVersion();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1541,7 +1541,7 @@ public class Platform
|
||||||
}
|
}
|
||||||
|
|
||||||
f1 = 0.3F;
|
f1 = 0.3F;
|
||||||
AxisAlignedBB boundingBox = entity1.getBoundingBox().expand( f1, f1, f1 );
|
AxisAlignedBB boundingBox = entity1.getEntityBoundingBox().expand( f1, f1, f1 );
|
||||||
MovingObjectPosition movingObjectPosition = boundingBox.calculateIntercept( vec3, vec31 );
|
MovingObjectPosition movingObjectPosition = boundingBox.calculateIntercept( vec3, vec31 );
|
||||||
|
|
||||||
if( movingObjectPosition != null )
|
if( movingObjectPosition != null )
|
||||||
|
|
|
@ -126,9 +126,9 @@ public class AdaptorPlayerInventory implements IInventory
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return src.getName();
|
return src.getCommandSenderName();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -138,7 +138,7 @@ public class WrapperBCPipe implements IInventory
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,13 +24,13 @@ import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
|
import com.google.common.collect.ImmutableList;
|
||||||
|
|
||||||
import net.minecraft.entity.player.EntityPlayer;
|
import net.minecraft.entity.player.EntityPlayer;
|
||||||
import net.minecraft.inventory.IInventory;
|
import net.minecraft.inventory.IInventory;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.util.IChatComponent;
|
import net.minecraft.util.IChatComponent;
|
||||||
|
|
||||||
import com.google.common.collect.ImmutableList;
|
|
||||||
|
|
||||||
|
|
||||||
public class WrapperChainedInventory implements IInventory
|
public class WrapperChainedInventory implements IInventory
|
||||||
{
|
{
|
||||||
|
@ -168,7 +168,7 @@ public class WrapperChainedInventory implements IInventory
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return "ChainedInv";
|
return "ChainedInv";
|
||||||
}
|
}
|
||||||
|
|
|
@ -106,9 +106,9 @@ public class WrapperInvSlot
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return this.inv.getName();
|
return this.inv.getCommandSenderName();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -123,9 +123,9 @@ public class WrapperInventoryRange implements IInventory
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getName()
|
public String getCommandSenderName()
|
||||||
{
|
{
|
||||||
return this.src.getName();
|
return this.src.getCommandSenderName();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -62,7 +62,7 @@ public final class QuartzWorldGen implements IWorldGenerator
|
||||||
{
|
{
|
||||||
int x = ( chunkX << 4 ) + 8;
|
int x = ( chunkX << 4 ) + 8;
|
||||||
int z = ( chunkZ << 4 ) + 8;
|
int z = ( chunkZ << 4 ) + 8;
|
||||||
seaLevel = w.getHorizon( new BlockPos( x, 0, z) ).getY();
|
seaLevel = (int) w.getHorizon();
|
||||||
}
|
}
|
||||||
|
|
||||||
if( this.oreNormal == null || this.oreCharged == null )
|
if( this.oreNormal == null || this.oreCharged == null )
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"normal": { "model": "appliedenergistics2:fluix" }
|
"normal": { "model": "appliedenergistics2:fluix/block" }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,44 +1,44 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=east,half=bottom,shape=straight": { "model": "appliedenergistics2:stair.fluix" },
|
"facing=east,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/fluix/block" },
|
||||||
"facing=west,half=bottom,shape=straight": { "model": "appliedenergistics2:stair.fluix", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/fluix/block", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=straight": { "model": "appliedenergistics2:stair.fluix", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/fluix/block", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=straight": { "model": "appliedenergistics2:stair.fluix", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/fluix/block", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair.fluix.outer" },
|
"facing=east,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/fluix/outer" },
|
||||||
"facing=west,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair.fluix.outer", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/fluix/outer", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair.fluix.outer", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/fluix/outer", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair.fluix.outer", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/fluix/outer", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair.fluix.outer", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/fluix/outer", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair.fluix.outer", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/fluix/outer", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair.fluix.outer" },
|
"facing=south,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/fluix/outer" },
|
||||||
"facing=north,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair.fluix.outer", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/fluix/outer", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair.fluix.inner" },
|
"facing=east,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/fluix/inner" },
|
||||||
"facing=west,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair.fluix.inner", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/fluix/inner", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair.fluix.inner", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/fluix/inner", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair.fluix.inner", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/fluix/inner", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair.fluix.inner", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/fluix/inner", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair.fluix.inner", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/fluix/inner", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair.fluix.inner" },
|
"facing=south,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/fluix/inner" },
|
||||||
"facing=north,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair.fluix.inner", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/fluix/inner", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=straight": { "model": "appliedenergistics2:stair.fluix", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=straight": { "model": "appliedenergistics2:stair/fluix/block", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=straight": { "model": "appliedenergistics2:stair.fluix", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=straight": { "model": "appliedenergistics2:stair/fluix/block", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=straight": { "model": "appliedenergistics2:stair.fluix", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=straight": { "model": "appliedenergistics2:stair/fluix/block", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=straight": { "model": "appliedenergistics2:stair.fluix", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=straight": { "model": "appliedenergistics2:stair/fluix/block", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_right": { "model": "appliedenergistics2:stair.fluix.outer", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/fluix/outer", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_right": { "model": "appliedenergistics2:stair.fluix.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/fluix/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_right": { "model": "appliedenergistics2:stair.fluix.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/fluix/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_right": { "model": "appliedenergistics2:stair.fluix.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/fluix/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_left": { "model": "appliedenergistics2:stair.fluix.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/fluix/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_left": { "model": "appliedenergistics2:stair.fluix.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/fluix/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_left": { "model": "appliedenergistics2:stair.fluix.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/fluix/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_left": { "model": "appliedenergistics2:stair.fluix.outer", "x": 180, "uvlock": true },
|
"facing=north,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/fluix/outer", "x": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_right": { "model": "appliedenergistics2:stair.fluix.inner", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/fluix/inner", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_right": { "model": "appliedenergistics2:stair.fluix.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/fluix/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_right": { "model": "appliedenergistics2:stair.fluix.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/fluix/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_right": { "model": "appliedenergistics2:stair.fluix.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/fluix/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_left": { "model": "appliedenergistics2:stair.fluix.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/fluix/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_left": { "model": "appliedenergistics2:stair.fluix.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/fluix/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_left": { "model": "appliedenergistics2:stair.fluix.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/fluix/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_left": { "model": "appliedenergistics2:stair.fluix.inner", "x": 180, "uvlock": true }
|
"facing=north,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/fluix/inner", "x": 180, "uvlock": true }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,44 +1,44 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=east,half=bottom,shape=straight": { "model": "stair.quartz.certus.chiseled" },
|
"facing=east,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/block" },
|
||||||
"facing=west,half=bottom,shape=straight": { "model": "stair.quartz.certus.chiseled", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/block", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=straight": { "model": "stair.quartz.certus.chiseled", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/block", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=straight": { "model": "stair.quartz.certus.chiseled", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/block", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_right": { "model": "stair.quartz.certus.chiseled.outer" },
|
"facing=east,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer" },
|
||||||
"facing=west,half=bottom,shape=outer_right": { "model": "stair.quartz.certus.chiseled.outer", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_right": { "model": "stair.quartz.certus.chiseled.outer", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=outer_right": { "model": "stair.quartz.certus.chiseled.outer", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_left": { "model": "stair.quartz.certus.chiseled.outer", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=outer_left": { "model": "stair.quartz.certus.chiseled.outer", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_left": { "model": "stair.quartz.certus.chiseled.outer" },
|
"facing=south,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer" },
|
||||||
"facing=north,half=bottom,shape=outer_left": { "model": "stair.quartz.certus.chiseled.outer", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_right": { "model": "stair.quartz.certus.chiseled.inner" },
|
"facing=east,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner" },
|
||||||
"facing=west,half=bottom,shape=inner_right": { "model": "stair.quartz.certus.chiseled.inner", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_right": { "model": "stair.quartz.certus.chiseled.inner", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=inner_right": { "model": "stair.quartz.certus.chiseled.inner", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_left": { "model": "stair.quartz.certus.chiseled.inner", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=inner_left": { "model": "stair.quartz.certus.chiseled.inner", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_left": { "model": "stair.quartz.certus.chiseled.inner" },
|
"facing=south,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner" },
|
||||||
"facing=north,half=bottom,shape=inner_left": { "model": "stair.quartz.certus.chiseled.inner", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=straight": { "model": "stair.quartz.certus.chiseled", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/block", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=straight": { "model": "stair.quartz.certus.chiseled", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/block", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=straight": { "model": "stair.quartz.certus.chiseled", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/block", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=straight": { "model": "stair.quartz.certus.chiseled", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/block", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_right": { "model": "stair.quartz.certus.chiseled.outer", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_right": { "model": "stair.quartz.certus.chiseled.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_right": { "model": "stair.quartz.certus.chiseled.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_right": { "model": "stair.quartz.certus.chiseled.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_left": { "model": "stair.quartz.certus.chiseled.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_left": { "model": "stair.quartz.certus.chiseled.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_left": { "model": "stair.quartz.certus.chiseled.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_left": { "model": "stair.quartz.certus.chiseled.outer", "x": 180, "uvlock": true },
|
"facing=north,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/outer", "x": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_right": { "model": "stair.quartz.certus.chiseled.inner", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_right": { "model": "stair.quartz.certus.chiseled.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_right": { "model": "stair.quartz.certus.chiseled.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_right": { "model": "stair.quartz.certus.chiseled.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_left": { "model": "stair.quartz.certus.chiseled.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_left": { "model": "stair.quartz.certus.chiseled.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_left": { "model": "stair.quartz.certus.chiseled.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_left": { "model": "stair.quartz.certus.chiseled.inner", "x": 180, "uvlock": true }
|
"facing=north,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/chiseled/inner", "x": 180, "uvlock": true }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,44 +1,44 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=east,half=bottom,shape=straight": { "model": "stair.quartz.certus" },
|
"facing=east,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/block" },
|
||||||
"facing=west,half=bottom,shape=straight": { "model": "stair.quartz.certus", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/block", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=straight": { "model": "stair.quartz.certus", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/block", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=straight": { "model": "stair.quartz.certus", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/block", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_right": { "model": "stair.quartz.certus.outer" },
|
"facing=east,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/outer" },
|
||||||
"facing=west,half=bottom,shape=outer_right": { "model": "stair.quartz.certus.outer", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/outer", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_right": { "model": "stair.quartz.certus.outer", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/outer", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=outer_right": { "model": "stair.quartz.certus.outer", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/outer", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_left": { "model": "stair.quartz.certus.outer", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/outer", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=outer_left": { "model": "stair.quartz.certus.outer", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/outer", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_left": { "model": "stair.quartz.certus.outer" },
|
"facing=south,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/outer" },
|
||||||
"facing=north,half=bottom,shape=outer_left": { "model": "stair.quartz.certus.outer", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/outer", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_right": { "model": "stair.quartz.certus.inner" },
|
"facing=east,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/inner" },
|
||||||
"facing=west,half=bottom,shape=inner_right": { "model": "stair.quartz.certus.inner", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/inner", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_right": { "model": "stair.quartz.certus.inner", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/inner", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=inner_right": { "model": "stair.quartz.certus.inner", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/inner", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_left": { "model": "stair.quartz.certus.inner", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/inner", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=inner_left": { "model": "stair.quartz.certus.inner", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/inner", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_left": { "model": "stair.quartz.certus.inner" },
|
"facing=south,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/inner" },
|
||||||
"facing=north,half=bottom,shape=inner_left": { "model": "stair.quartz.certus.inner", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/inner", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=straight": { "model": "stair.quartz.certus", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/block", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=straight": { "model": "stair.quartz.certus", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/block", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=straight": { "model": "stair.quartz.certus", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/block", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=straight": { "model": "stair.quartz.certus", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/block", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_right": { "model": "stair.quartz.certus.outer", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/outer", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_right": { "model": "stair.quartz.certus.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_right": { "model": "stair.quartz.certus.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_right": { "model": "stair.quartz.certus.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_left": { "model": "stair.quartz.certus.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_left": { "model": "stair.quartz.certus.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_left": { "model": "stair.quartz.certus.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_left": { "model": "stair.quartz.certus.outer", "x": 180, "uvlock": true },
|
"facing=north,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/outer", "x": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_right": { "model": "stair.quartz.certus.inner", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/inner", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_right": { "model": "stair.quartz.certus.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_right": { "model": "stair.quartz.certus.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_right": { "model": "stair.quartz.certus.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_left": { "model": "stair.quartz.certus.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_left": { "model": "stair.quartz.certus.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_left": { "model": "stair.quartz.certus.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_left": { "model": "stair.quartz.certus.inner", "x": 180, "uvlock": true }
|
"facing=north,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/inner", "x": 180, "uvlock": true }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,44 +1,44 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=east,half=bottom,shape=straight": { "model": "stair.quartz.certus.pillar" },
|
"facing=east,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/pillar/block" },
|
||||||
"facing=west,half=bottom,shape=straight": { "model": "stair.quartz.certus.pillar", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/pillar/block", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=straight": { "model": "stair.quartz.certus.pillar", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/pillar/block", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=straight": { "model": "stair.quartz.certus.pillar", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/pillar/block", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_right": { "model": "stair.quartz.certus.pillar.outer" },
|
"facing=east,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer" },
|
||||||
"facing=west,half=bottom,shape=outer_right": { "model": "stair.quartz.certus.pillar.outer", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_right": { "model": "stair.quartz.certus.pillar.outer", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=outer_right": { "model": "stair.quartz.certus.pillar.outer", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_left": { "model": "stair.quartz.certus.pillar.outer", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=outer_left": { "model": "stair.quartz.certus.pillar.outer", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_left": { "model": "stair.quartz.certus.pillar.outer" },
|
"facing=south,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer" },
|
||||||
"facing=north,half=bottom,shape=outer_left": { "model": "stair.quartz.certus.pillar.outer", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_right": { "model": "stair.quartz.certus.pillar.inner" },
|
"facing=east,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner" },
|
||||||
"facing=west,half=bottom,shape=inner_right": { "model": "stair.quartz.certus.pillar.inner", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_right": { "model": "stair.quartz.certus.pillar.inner", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=inner_right": { "model": "stair.quartz.certus.pillar.inner", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_left": { "model": "stair.quartz.certus.pillar.inner", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=inner_left": { "model": "stair.quartz.certus.pillar.inner", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_left": { "model": "stair.quartz.certus.pillar.inner" },
|
"facing=south,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner" },
|
||||||
"facing=north,half=bottom,shape=inner_left": { "model": "stair.quartz.certus.pillar.inner", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=straight": { "model": "stair.quartz.certus.pillar", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/pillar/block", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=straight": { "model": "stair.quartz.certus.pillar", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/pillar/block", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=straight": { "model": "stair.quartz.certus.pillar", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/pillar/block", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=straight": { "model": "stair.quartz.certus.pillar", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=straight": { "model": "appliedenergistics2:stair/quartz/certus/pillar/block", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_right": { "model": "stair.quartz.certus.pillar.outer", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_right": { "model": "stair.quartz.certus.pillar.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_right": { "model": "stair.quartz.certus.pillar.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_right": { "model": "stair.quartz.certus.pillar.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_left": { "model": "stair.quartz.certus.pillar.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_left": { "model": "stair.quartz.certus.pillar.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_left": { "model": "stair.quartz.certus.pillar.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_left": { "model": "stair.quartz.certus.pillar.outer", "x": 180, "uvlock": true },
|
"facing=north,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/outer", "x": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_right": { "model": "stair.quartz.certus.pillar.inner", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_right": { "model": "stair.quartz.certus.pillar.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_right": { "model": "stair.quartz.certus.pillar.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_right": { "model": "stair.quartz.certus.pillar.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_left": { "model": "stair.quartz.certus.pillar.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_left": { "model": "stair.quartz.certus.pillar.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_left": { "model": "stair.quartz.certus.pillar.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_left": { "model": "stair.quartz.certus.pillar.inner", "x": 180, "uvlock": true }
|
"facing=north,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/quartz/certus/pillar/inner", "x": 180, "uvlock": true }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,44 +1,44 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=east,half=bottom,shape=straight": { "model": "stair.skystone.block" },
|
"facing=east,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/skystone/block/block" },
|
||||||
"facing=west,half=bottom,shape=straight": { "model": "stair.skystone.block", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/skystone/block/block", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=straight": { "model": "stair.skystone.block", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/skystone/block/block", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=straight": { "model": "stair.skystone.block", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/skystone/block/block", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_right": { "model": "stair.skystone.block.outer" },
|
"facing=east,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/block/outer" },
|
||||||
"facing=west,half=bottom,shape=outer_right": { "model": "stair.skystone.block.outer", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/block/outer", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_right": { "model": "stair.skystone.block.outer", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/block/outer", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=outer_right": { "model": "stair.skystone.block.outer", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/block/outer", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_left": { "model": "stair.skystone.block.outer", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/block/outer", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=outer_left": { "model": "stair.skystone.block.outer", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/block/outer", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_left": { "model": "stair.skystone.block.outer" },
|
"facing=south,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/block/outer" },
|
||||||
"facing=north,half=bottom,shape=outer_left": { "model": "stair.skystone.block.outer", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/block/outer", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_right": { "model": "stair.skystone.block.inner" },
|
"facing=east,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/block/inner" },
|
||||||
"facing=west,half=bottom,shape=inner_right": { "model": "stair.skystone.block.inner", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/block/inner", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_right": { "model": "stair.skystone.block.inner", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/block/inner", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=inner_right": { "model": "stair.skystone.block.inner", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/block/inner", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_left": { "model": "stair.skystone.block.inner", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/block/inner", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=inner_left": { "model": "stair.skystone.block.inner", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/block/inner", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_left": { "model": "stair.skystone.block.inner" },
|
"facing=south,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/block/inner" },
|
||||||
"facing=north,half=bottom,shape=inner_left": { "model": "stair.skystone.block.inner", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/block/inner", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=straight": { "model": "stair.skystone.block", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=straight": { "model": "appliedenergistics2:stair/skystone/block/block", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=straight": { "model": "stair.skystone.block", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=straight": { "model": "appliedenergistics2:stair/skystone/block/block", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=straight": { "model": "stair.skystone.block", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=straight": { "model": "appliedenergistics2:stair/skystone/block/block", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=straight": { "model": "stair.skystone.block", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=straight": { "model": "appliedenergistics2:stair/skystone/block/block", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_right": { "model": "stair.skystone.block.outer", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/block/outer", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_right": { "model": "stair.skystone.block.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/block/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_right": { "model": "stair.skystone.block.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/block/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_right": { "model": "stair.skystone.block.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/block/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_left": { "model": "stair.skystone.block.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/block/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_left": { "model": "stair.skystone.block.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/block/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_left": { "model": "stair.skystone.block.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/block/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_left": { "model": "stair.skystone.block.outer", "x": 180, "uvlock": true },
|
"facing=north,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/block/outer", "x": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_right": { "model": "stair.skystone.block.inner", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/block/inner", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_right": { "model": "stair.skystone.block.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/block/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_right": { "model": "stair.skystone.block.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/block/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_right": { "model": "stair.skystone.block.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/block/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_left": { "model": "stair.skystone.block.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/block/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_left": { "model": "stair.skystone.block.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/block/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_left": { "model": "stair.skystone.block.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/block/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_left": { "model": "stair.skystone.block.inner", "x": 180, "uvlock": true }
|
"facing=north,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/block/inner", "x": 180, "uvlock": true }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,44 +1,44 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=east,half=bottom,shape=straight": { "model": "stair.skystone.brick" },
|
"facing=east,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/block" },
|
||||||
"facing=west,half=bottom,shape=straight": { "model": "stair.skystone.brick", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/block", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=straight": { "model": "stair.skystone.brick", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/block", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=straight": { "model": "stair.skystone.brick", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/block", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_right": { "model": "stair.skystone.brick.outer" },
|
"facing=east,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/outer" },
|
||||||
"facing=west,half=bottom,shape=outer_right": { "model": "stair.skystone.brick.outer", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/outer", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_right": { "model": "stair.skystone.brick.outer", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/outer", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=outer_right": { "model": "stair.skystone.brick.outer", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/outer", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_left": { "model": "stair.skystone.brick.outer", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/outer", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=outer_left": { "model": "stair.skystone.brick.outer", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/outer", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_left": { "model": "stair.skystone.brick.outer" },
|
"facing=south,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/outer" },
|
||||||
"facing=north,half=bottom,shape=outer_left": { "model": "stair.skystone.brick.outer", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/outer", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_right": { "model": "stair.skystone.brick.inner" },
|
"facing=east,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/inner" },
|
||||||
"facing=west,half=bottom,shape=inner_right": { "model": "stair.skystone.brick.inner", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/inner", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_right": { "model": "stair.skystone.brick.inner", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/inner", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=inner_right": { "model": "stair.skystone.brick.inner", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/inner", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_left": { "model": "stair.skystone.brick.inner", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/inner", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=inner_left": { "model": "stair.skystone.brick.inner", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/inner", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_left": { "model": "stair.skystone.brick.inner" },
|
"facing=south,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/inner" },
|
||||||
"facing=north,half=bottom,shape=inner_left": { "model": "stair.skystone.brick.inner", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/inner", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=straight": { "model": "stair.skystone.brick", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/block", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=straight": { "model": "stair.skystone.brick", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/block", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=straight": { "model": "stair.skystone.brick", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/block", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=straight": { "model": "stair.skystone.brick", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/block", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_right": { "model": "stair.skystone.brick.outer", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/outer", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_right": { "model": "stair.skystone.brick.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_right": { "model": "stair.skystone.brick.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_right": { "model": "stair.skystone.brick.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_left": { "model": "stair.skystone.brick.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_left": { "model": "stair.skystone.brick.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_left": { "model": "stair.skystone.brick.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_left": { "model": "stair.skystone.brick.outer", "x": 180, "uvlock": true },
|
"facing=north,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/outer", "x": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_right": { "model": "stair.skystone.brick.inner", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/inner", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_right": { "model": "stair.skystone.brick.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_right": { "model": "stair.skystone.brick.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_right": { "model": "stair.skystone.brick.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_left": { "model": "stair.skystone.brick.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_left": { "model": "stair.skystone.brick.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_left": { "model": "stair.skystone.brick.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_left": { "model": "stair.skystone.brick.inner", "x": 180, "uvlock": true }
|
"facing=north,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/inner", "x": 180, "uvlock": true }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,44 +1,44 @@
|
||||||
{
|
{
|
||||||
"variants": {
|
"variants": {
|
||||||
"facing=east,half=bottom,shape=straight": { "model": "stair.skystone.brick.small" },
|
"facing=east,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/small/block" },
|
||||||
"facing=west,half=bottom,shape=straight": { "model": "stair.skystone.brick.small", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/small/block", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=straight": { "model": "stair.skystone.brick.small", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/small/block", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=straight": { "model": "stair.skystone.brick.small", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/small/block", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_right": { "model": "stair.skystone.brick.small.outer" },
|
"facing=east,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/small/outer" },
|
||||||
"facing=west,half=bottom,shape=outer_right": { "model": "stair.skystone.brick.small.outer", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_right": { "model": "stair.skystone.brick.small.outer", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=outer_right": { "model": "stair.skystone.brick.small.outer", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=outer_left": { "model": "stair.skystone.brick.small.outer", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=outer_left": { "model": "stair.skystone.brick.small.outer", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=outer_left": { "model": "stair.skystone.brick.small.outer" },
|
"facing=south,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/small/outer" },
|
||||||
"facing=north,half=bottom,shape=outer_left": { "model": "stair.skystone.brick.small.outer", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_right": { "model": "stair.skystone.brick.small.inner" },
|
"facing=east,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/small/inner" },
|
||||||
"facing=west,half=bottom,shape=inner_right": { "model": "stair.skystone.brick.small.inner", "y": 180, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "y": 180, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_right": { "model": "stair.skystone.brick.small.inner", "y": 90, "uvlock": true },
|
"facing=south,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "y": 90, "uvlock": true },
|
||||||
"facing=north,half=bottom,shape=inner_right": { "model": "stair.skystone.brick.small.inner", "y": 270, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "y": 270, "uvlock": true },
|
||||||
"facing=east,half=bottom,shape=inner_left": { "model": "stair.skystone.brick.small.inner", "y": 270, "uvlock": true },
|
"facing=east,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "y": 270, "uvlock": true },
|
||||||
"facing=west,half=bottom,shape=inner_left": { "model": "stair.skystone.brick.small.inner", "y": 90, "uvlock": true },
|
"facing=west,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "y": 90, "uvlock": true },
|
||||||
"facing=south,half=bottom,shape=inner_left": { "model": "stair.skystone.brick.small.inner" },
|
"facing=south,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/small/inner" },
|
||||||
"facing=north,half=bottom,shape=inner_left": { "model": "stair.skystone.brick.small.inner", "y": 180, "uvlock": true },
|
"facing=north,half=bottom,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "y": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=straight": { "model": "stair.skystone.brick.small", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/small/block", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=straight": { "model": "stair.skystone.brick.small", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/small/block", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=straight": { "model": "stair.skystone.brick.small", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/small/block", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=straight": { "model": "stair.skystone.brick.small", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=straight": { "model": "appliedenergistics2:stair/skystone/brick/small/block", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_right": { "model": "stair.skystone.brick.small.outer", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_right": { "model": "stair.skystone.brick.small.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_right": { "model": "stair.skystone.brick.small.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_right": { "model": "stair.skystone.brick.small.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=outer_right": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=outer_left": { "model": "stair.skystone.brick.small.outer", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=outer_left": { "model": "stair.skystone.brick.small.outer", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=outer_left": { "model": "stair.skystone.brick.small.outer", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=outer_left": { "model": "stair.skystone.brick.small.outer", "x": 180, "uvlock": true },
|
"facing=north,half=top,shape=outer_left": { "model": "appliedenergistics2:stair/skystone/brick/small/outer", "x": 180, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_right": { "model": "stair.skystone.brick.small.inner", "x": 180, "uvlock": true },
|
"facing=east,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "x": 180, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_right": { "model": "stair.skystone.brick.small.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=west,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_right": { "model": "stair.skystone.brick.small.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=south,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_right": { "model": "stair.skystone.brick.small.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=north,half=top,shape=inner_right": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=east,half=top,shape=inner_left": { "model": "stair.skystone.brick.small.inner", "x": 180, "y": 90, "uvlock": true },
|
"facing=east,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "x": 180, "y": 90, "uvlock": true },
|
||||||
"facing=west,half=top,shape=inner_left": { "model": "stair.skystone.brick.small.inner", "x": 180, "y": 270, "uvlock": true },
|
"facing=west,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "x": 180, "y": 270, "uvlock": true },
|
||||||
"facing=south,half=top,shape=inner_left": { "model": "stair.skystone.brick.small.inner", "x": 180, "y": 180, "uvlock": true },
|
"facing=south,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "x": 180, "y": 180, "uvlock": true },
|
||||||
"facing=north,half=top,shape=inner_left": { "model": "stair.skystone.brick.small.inner", "x": 180, "uvlock": true }
|
"facing=north,half=top,shape=inner_left": { "model": "appliedenergistics2:stair/skystone/brick/small/inner", "x": 180, "uvlock": true }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,44 +0,0 @@
|
||||||
{
|
|
||||||
"variants": {
|
|
||||||
"facing=east,half=bottom,shape=straight": { "model": "stair.skystone" },
|
|
||||||
"facing=west,half=bottom,shape=straight": { "model": "stair.skystone", "y": 180, "uvlock": true },
|
|
||||||
"facing=south,half=bottom,shape=straight": { "model": "stair.skystone", "y": 90, "uvlock": true },
|
|
||||||
"facing=north,half=bottom,shape=straight": { "model": "stair.skystone", "y": 270, "uvlock": true },
|
|
||||||
"facing=east,half=bottom,shape=outer_right": { "model": "stair.skystone.outer" },
|
|
||||||
"facing=west,half=bottom,shape=outer_right": { "model": "stair.skystone.outer", "y": 180, "uvlock": true },
|
|
||||||
"facing=south,half=bottom,shape=outer_right": { "model": "stair.skystone.outer", "y": 90, "uvlock": true },
|
|
||||||
"facing=north,half=bottom,shape=outer_right": { "model": "stair.skystone.outer", "y": 270, "uvlock": true },
|
|
||||||
"facing=east,half=bottom,shape=outer_left": { "model": "stair.skystone.outer", "y": 270, "uvlock": true },
|
|
||||||
"facing=west,half=bottom,shape=outer_left": { "model": "stair.skystone.outer", "y": 90, "uvlock": true },
|
|
||||||
"facing=south,half=bottom,shape=outer_left": { "model": "stair.skystone.outer" },
|
|
||||||
"facing=north,half=bottom,shape=outer_left": { "model": "stair.skystone.outer", "y": 180, "uvlock": true },
|
|
||||||
"facing=east,half=bottom,shape=inner_right": { "model": "stair.skystone.inner" },
|
|
||||||
"facing=west,half=bottom,shape=inner_right": { "model": "stair.skystone.inner", "y": 180, "uvlock": true },
|
|
||||||
"facing=south,half=bottom,shape=inner_right": { "model": "stair.skystone.inner", "y": 90, "uvlock": true },
|
|
||||||
"facing=north,half=bottom,shape=inner_right": { "model": "stair.skystone.inner", "y": 270, "uvlock": true },
|
|
||||||
"facing=east,half=bottom,shape=inner_left": { "model": "stair.skystone.inner", "y": 270, "uvlock": true },
|
|
||||||
"facing=west,half=bottom,shape=inner_left": { "model": "stair.skystone.inner", "y": 90, "uvlock": true },
|
|
||||||
"facing=south,half=bottom,shape=inner_left": { "model": "stair.skystone.inner" },
|
|
||||||
"facing=north,half=bottom,shape=inner_left": { "model": "stair.skystone.inner", "y": 180, "uvlock": true },
|
|
||||||
"facing=east,half=top,shape=straight": { "model": "stair.skystone", "x": 180, "uvlock": true },
|
|
||||||
"facing=west,half=top,shape=straight": { "model": "stair.skystone", "x": 180, "y": 180, "uvlock": true },
|
|
||||||
"facing=south,half=top,shape=straight": { "model": "stair.skystone", "x": 180, "y": 90, "uvlock": true },
|
|
||||||
"facing=north,half=top,shape=straight": { "model": "stair.skystone", "x": 180, "y": 270, "uvlock": true },
|
|
||||||
"facing=east,half=top,shape=outer_right": { "model": "stair.skystone.outer", "x": 180, "uvlock": true },
|
|
||||||
"facing=west,half=top,shape=outer_right": { "model": "stair.skystone.outer", "x": 180, "y": 180, "uvlock": true },
|
|
||||||
"facing=south,half=top,shape=outer_right": { "model": "stair.skystone.outer", "x": 180, "y": 90, "uvlock": true },
|
|
||||||
"facing=north,half=top,shape=outer_right": { "model": "stair.skystone.outer", "x": 180, "y": 270, "uvlock": true },
|
|
||||||
"facing=east,half=top,shape=outer_left": { "model": "stair.skystone.outer", "x": 180, "y": 90, "uvlock": true },
|
|
||||||
"facing=west,half=top,shape=outer_left": { "model": "stair.skystone.outer", "x": 180, "y": 270, "uvlock": true },
|
|
||||||
"facing=south,half=top,shape=outer_left": { "model": "stair.skystone.outer", "x": 180, "y": 180, "uvlock": true },
|
|
||||||
"facing=north,half=top,shape=outer_left": { "model": "stair.skystone.outer", "x": 180, "uvlock": true },
|
|
||||||
"facing=east,half=top,shape=inner_right": { "model": "stair.skystone.inner", "x": 180, "uvlock": true },
|
|
||||||
"facing=west,half=top,shape=inner_right": { "model": "stair.skystone.inner", "x": 180, "y": 180, "uvlock": true },
|
|
||||||
"facing=south,half=top,shape=inner_right": { "model": "stair.skystone.inner", "x": 180, "y": 90, "uvlock": true },
|
|
||||||
"facing=north,half=top,shape=inner_right": { "model": "stair.skystone.inner", "x": 180, "y": 270, "uvlock": true },
|
|
||||||
"facing=east,half=top,shape=inner_left": { "model": "stair.skystone.inner", "x": 180, "y": 90, "uvlock": true },
|
|
||||||
"facing=west,half=top,shape=inner_left": { "model": "stair.skystone.inner", "x": 180, "y": 270, "uvlock": true },
|
|
||||||
"facing=south,half=top,shape=inner_left": { "model": "stair.skystone.inner", "x": 180, "y": 180, "uvlock": true },
|
|
||||||
"facing=north,half=top,shape=inner_left": { "model": "stair.skystone.inner", "x": 180, "uvlock": true }
|
|
||||||
}
|
|
||||||
}
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue