create saw assets and saw recipes
This commit is contained in:
@@ -10,17 +10,8 @@
|
||||
- [ ] Grinding wheel rotate
|
||||
|
||||
## Current Feature
|
||||
- [ ] Redstone Engine Model
|
||||
- [ ] Engine Refactor
|
||||
- [ ] Slots for Engines
|
||||
- [ ] Tool Slot
|
||||
- [ ] Gearbox Slot
|
||||
- [ ] Grinding Blade
|
||||
- [ ] Fan
|
||||
- [ ] powered-axle
|
||||
- [ ] Gearbox Block
|
||||
- [ ] Engine Overclocking
|
||||
- [ ] Gears
|
||||
- [ ] Recipe Handler for saw
|
||||
- [ ] Sound for block break
|
||||
|
||||
## Feature Optimizations
|
||||
- [ ] Untick Bloomery and Forge
|
||||
@@ -65,6 +56,17 @@ rename s/iron/steel/ iron*
|
||||
```
|
||||
|
||||
### Completed
|
||||
- [x] Redstone Engine Model
|
||||
- [x] Engine Refactor
|
||||
- [x] Slots for Engines
|
||||
- [x] Tool Slot
|
||||
- [x] Gearbox Slot
|
||||
- [x] Grinding Blade
|
||||
- [x] Fan
|
||||
- [x] powered-axle
|
||||
- [x] Gearbox Block
|
||||
- [x] Engine Overclocking
|
||||
- [x] Gears
|
||||
- [x] weapon upgrades
|
||||
- [x] Grinding Bench
|
||||
- [x] Repair ToolHead
|
||||
|
||||
@@ -6,7 +6,9 @@ import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||
import net.minecraftforge.fml.relauncher.Side;
|
||||
import net.minecraftforge.fml.relauncher.SideOnly;
|
||||
import net.minecraftforge.registries.IForgeRegistry;
|
||||
import nmd.primal.forgecraft.blocks.machine.MachineSaw;
|
||||
import nmd.primal.forgecraft.crafting.CrucibleCrafting;
|
||||
import nmd.primal.forgecraft.crafting.MachineSawCrafting;
|
||||
import nmd.primal.forgecraft.crafting.WorkbenchCrafting;
|
||||
import nmd.primal.forgecraft.init.ModItems;
|
||||
//import nmd.primal.forgecraft.Item.ModItems;
|
||||
@@ -57,6 +59,7 @@ public class ModInfo {
|
||||
// In-World Recipes
|
||||
public static final IForgeRegistry<CrucibleCrafting> CRUCIBLE_CRAFTING = GameRegistry.findRegistry(CrucibleCrafting.class);
|
||||
public static final IForgeRegistry<WorkbenchCrafting> WORKBENCH_CRAFTING = GameRegistry.findRegistry(WorkbenchCrafting.class);
|
||||
public static final IForgeRegistry<MachineSawCrafting> MACHINE_SAW_CRAFTING = GameRegistry.findRegistry(MachineSawCrafting.class);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -35,6 +35,13 @@ public abstract class CustomContainerFacingActive extends BlockContainer {
|
||||
setCreativeTab(ModInfo.TAB_FORGECRAFT);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void breakBlock(World worldIn, BlockPos pos, IBlockState state)
|
||||
{
|
||||
super.breakBlock(worldIn, pos, state);
|
||||
worldIn.removeTileEntity(pos);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBlockPlacedBy(World worldIn, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack)
|
||||
{
|
||||
|
||||
@@ -0,0 +1,150 @@
|
||||
package nmd.primal.forgecraft.blocks.machine;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
import net.minecraft.util.EnumHand;
|
||||
import net.minecraft.util.SoundCategory;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
import nmd.primal.core.api.PrimalAPI;
|
||||
import nmd.primal.core.common.helper.PlayerHelper;
|
||||
import nmd.primal.core.common.helper.RecipeHelper;
|
||||
import nmd.primal.forgecraft.blocks.CustomContainerFacingActive;
|
||||
import nmd.primal.forgecraft.crafting.MachineSawCrafting;
|
||||
import nmd.primal.forgecraft.init.ModBlocks;
|
||||
import nmd.primal.forgecraft.init.ModSounds;
|
||||
import nmd.primal.forgecraft.tiles.TileMachineSaw;
|
||||
import nmd.primal.forgecraft.tiles.TileRedstoneEngine;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.Random;
|
||||
|
||||
public class MachineSaw extends CustomContainerFacingActive {
|
||||
|
||||
public MachineSaw(Material material, String registryName) {
|
||||
super(material, registryName);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) {
|
||||
if (!world.isRemote) {
|
||||
if (hand.equals(EnumHand.MAIN_HAND)) {
|
||||
TileMachineSaw tile = (TileMachineSaw) world.getTileEntity(pos);
|
||||
ItemStack playerStack = player.getHeldItem(hand);
|
||||
|
||||
if (tile.isItemValidForSlot(0, playerStack)) {
|
||||
ItemStack setStack = playerStack.copy();
|
||||
setStack.setCount(1);
|
||||
tile.setSlotStack(0, setStack);
|
||||
playerStack.shrink(1);
|
||||
return true;
|
||||
}
|
||||
if(playerStack.isEmpty()){
|
||||
if(player.isSneaking()){
|
||||
PlayerHelper.spawnItemOnPlayer(world, player, tile.slotList);
|
||||
tile.clearSlots();
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void neighborChanged(IBlockState state, World world, BlockPos pos, Block block, BlockPos fromPos) {
|
||||
if (!world.isRemote) {
|
||||
TileMachineSaw tile = (TileMachineSaw) world.getTileEntity(pos);
|
||||
|
||||
if(state.getValue(FACING).equals (EnumFacing.NORTH)){
|
||||
if(world.getBlockState(pos.west()).getBlock().equals(ModBlocks.redstoneengine)){
|
||||
updateValues(world, pos, tile, state, pos.west());
|
||||
sawThings(world, pos, state, tile, fromPos);
|
||||
}
|
||||
|
||||
}
|
||||
if(state.getValue(FACING).equals (EnumFacing.SOUTH)){
|
||||
if(world.getBlockState(pos.east()).getBlock().equals(ModBlocks.redstoneengine)){
|
||||
updateValues(world, pos, tile, state, pos.east());
|
||||
sawThings(world, pos, state, tile, fromPos);
|
||||
}
|
||||
}
|
||||
if(state.getValue(FACING).equals (EnumFacing.EAST)){
|
||||
if(world.getBlockState(pos.north()).getBlock().equals(ModBlocks.redstoneengine)){
|
||||
updateValues(world, pos, tile, state, pos.north());
|
||||
sawThings(world, pos, state, tile, fromPos);
|
||||
}
|
||||
}
|
||||
if(state.getValue(FACING).equals (EnumFacing.WEST)){
|
||||
if(world.getBlockState(pos.south()).getBlock().equals(ModBlocks.redstoneengine)){
|
||||
updateValues(world, pos, tile, state, pos.south());
|
||||
sawThings(world, pos, state, tile, fromPos);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@Override
|
||||
public TileEntity createNewTileEntity(World worldIn, int meta) {
|
||||
return new TileMachineSaw();
|
||||
}
|
||||
|
||||
private void sawThings(World world, BlockPos pos, IBlockState state, TileMachineSaw tile, BlockPos fromPos){
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE) && tile.getTransfer() ){
|
||||
if(fromPos.equals(pos.up())) {
|
||||
IBlockState sawState = world.getBlockState(fromPos);
|
||||
ItemStack sawStack = new ItemStack(Item.getItemFromBlock(sawState.getBlock()), 1, sawState.getBlock().getMetaFromState(sawState));
|
||||
MachineSawCrafting recipe = MachineSawCrafting.getRecipe(sawStack);
|
||||
if(recipe != null){
|
||||
if(!recipe.isDisabled()) {
|
||||
if(PrimalAPI.randomCheck(15-tile.getRedstone())){
|
||||
PlayerHelper.spawnItemOnGround(world, pos.offset(state.getValue(FACING)), recipe.getOutput());
|
||||
world.destroyBlock(pos.up(), false);
|
||||
} else {
|
||||
world.destroyBlock(pos.up(), true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void setValues(TileMachineSaw tile, TileRedstoneEngine tileRedstoneEngine){
|
||||
tile.setPower(tileRedstoneEngine.getPower());
|
||||
tile.setTorque(tileRedstoneEngine.getTorque());
|
||||
tile.setRpm(tileRedstoneEngine.getRPM());
|
||||
tile.setRedstone(tileRedstoneEngine.getRedstone());
|
||||
tile.setGearMulti(tileRedstoneEngine.getGearMulti());
|
||||
tile.setTransfer(tileRedstoneEngine.getTransfer());
|
||||
}
|
||||
|
||||
private void clearValues(TileMachineSaw tile, TileRedstoneEngine tileRedstoneEngine){
|
||||
tile.setPower(0);
|
||||
tile.setTorque(0);
|
||||
tile.setRpm(0);
|
||||
tile.setRedstone(0);
|
||||
tile.setTransfer(tileRedstoneEngine.getTransfer());
|
||||
}
|
||||
|
||||
private void updateValues(World world, BlockPos pos, TileMachineSaw tile, IBlockState state, BlockPos offsetPos){
|
||||
TileRedstoneEngine tileEngine = (TileRedstoneEngine) world.getTileEntity(offsetPos);
|
||||
if(world.getBlockState(offsetPos).getValue(PrimalAPI.States.ACTIVE) && tileEngine.getTransfer()){
|
||||
setValues(tile, tileEngine);
|
||||
world.setBlockState(pos, state.withProperty(PrimalAPI.States.ACTIVE, true), 2);
|
||||
}
|
||||
if(!world.getBlockState(offsetPos).getValue(PrimalAPI.States.ACTIVE) || !tileEngine.getTransfer()){
|
||||
clearValues(tile, tileEngine);
|
||||
world.setBlockState(pos, state.withProperty(PrimalAPI.States.ACTIVE, false), 2);
|
||||
tile.markDirty();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -4,16 +4,20 @@ import net.minecraft.block.Block;
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.inventory.ItemStackHelper;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
import net.minecraft.util.EnumHand;
|
||||
import net.minecraft.util.NonNullList;
|
||||
import net.minecraft.util.math.AxisAlignedBB;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.IBlockAccess;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraft.world.chunk.Chunk;
|
||||
import nmd.primal.core.api.PrimalAPI;
|
||||
import nmd.primal.core.common.helper.PlayerHelper;
|
||||
import nmd.primal.core.common.helper.RecipeHelper;
|
||||
import nmd.primal.forgecraft.blocks.CustomContainerFacingActive;
|
||||
import nmd.primal.forgecraft.tiles.TileRedstoneEngine;
|
||||
|
||||
@@ -22,7 +26,10 @@ import java.util.Random;
|
||||
|
||||
public class RedstoneEngine extends CustomContainerFacingActive {
|
||||
|
||||
protected static final AxisAlignedBB boundBox = new AxisAlignedBB(0/16D, 0/16D, 0/16D, 1, 9 / 16D, 1);
|
||||
protected static final AxisAlignedBB boundBoxNorth = new AxisAlignedBB(0/16D, 0/16D, 0/16D, 10/16D, 27 / 32D, 16/16D);
|
||||
protected static final AxisAlignedBB boundBoxSouth = new AxisAlignedBB(6/16D, 6/16D, 0/16D, 1, 27 / 32D, 16/16D);
|
||||
protected static final AxisAlignedBB boundBoxEast = new AxisAlignedBB(0/16D, 0/16D, 0/16D, 16/16D, 27 / 32D, 10/16D);
|
||||
protected static final AxisAlignedBB boundBoxWest = new AxisAlignedBB(0/16D, 0/16D, 6/16D, 1, 27 / 32D, 16/16D);
|
||||
|
||||
public RedstoneEngine(Material material, String registryName) {
|
||||
super(material, registryName);
|
||||
@@ -34,6 +41,7 @@ public class RedstoneEngine extends CustomContainerFacingActive {
|
||||
if(hand.equals(EnumHand.MAIN_HAND)) {
|
||||
TileRedstoneEngine tile = (TileRedstoneEngine) world.getTileEntity(pos);
|
||||
ItemStack playerStack = player.getHeldItem(hand);
|
||||
Chunk chunk = world.getChunkFromBlockCoords(pos);
|
||||
|
||||
if(tile.isItemValidForSlot(0, playerStack)){
|
||||
ItemStack setStack = playerStack.copy();
|
||||
@@ -47,12 +55,27 @@ public class RedstoneEngine extends CustomContainerFacingActive {
|
||||
setStack.setCount(1);
|
||||
tile.setSlotStack(1, setStack);
|
||||
playerStack.shrink(1);
|
||||
tile.setTransfer(true);
|
||||
|
||||
if( world.getRedstonePower(pos.down(), EnumFacing.UP)>0 ||
|
||||
world.getRedstonePower(pos.offset(state.getValue(FACING).getOpposite()), state.getValue(FACING))>0 ) {
|
||||
if(world.getRedstonePower(pos.down(), EnumFacing.UP) > world.getRedstonePower(pos.offset(state.getValue(FACING).getOpposite()), state.getValue(FACING))){
|
||||
tile.setRedstone(world.getRedstonePower(pos.down(), EnumFacing.UP));
|
||||
} else {
|
||||
tile.setRedstone(world.getRedstonePower(pos.offset(state.getValue(FACING).getOpposite()), state.getValue(FACING)));
|
||||
}
|
||||
tile.setPower();
|
||||
this.setValues(tile);
|
||||
}
|
||||
world.markAndNotifyBlock(pos, chunk, state, state, 3);
|
||||
return true;
|
||||
}
|
||||
if(playerStack.isEmpty()){
|
||||
if(player.isSneaking()){
|
||||
PlayerHelper.spawnItemOnPlayer(world, player, tile.slotList);
|
||||
tile.clearSlots();
|
||||
tile.setTransfer(false);
|
||||
world.markAndNotifyBlock(pos, chunk, state, state, 3);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
@@ -67,34 +90,38 @@ public class RedstoneEngine extends CustomContainerFacingActive {
|
||||
TileRedstoneEngine tile = (TileRedstoneEngine) world.getTileEntity(pos);
|
||||
if (fromPos.equals(pos.down()) || fromPos.equals(pos.offset(state.getValue(FACING).getOpposite()))) {
|
||||
if (world.isBlockIndirectlyGettingPowered(pos)>0) {
|
||||
world.setBlockState(pos, state.withProperty(PrimalAPI.States.ACTIVE, true), 2);
|
||||
int power = world.isBlockIndirectlyGettingPowered(pos);
|
||||
tile.setRedstone(power);
|
||||
tile.updateBlock();
|
||||
|
||||
tile.setPower();
|
||||
this.setValues(tile);
|
||||
world.setBlockState(pos, state.withProperty(PrimalAPI.States.ACTIVE, true), 3);
|
||||
}
|
||||
if (!world.isBlockPowered(pos)) {
|
||||
world.setBlockState(pos, state.withProperty(PrimalAPI.States.ACTIVE, false), 2);
|
||||
tile.setRedstone(0);
|
||||
tile.updateBlock();
|
||||
tile.setPower();
|
||||
this.setValues(tile);
|
||||
world.setBlockState(pos, state.withProperty(PrimalAPI.States.ACTIVE, false), 3);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public void randomDisplayTick(IBlockState state, World world, BlockPos pos, Random rand) {
|
||||
if (state.getValue(PrimalAPI.States.ACTIVE) == Boolean.TRUE) {
|
||||
if (state.getValue(PistonBellows.FACING) == EnumFacing.NORTH) {
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public AxisAlignedBB getBoundingBox(IBlockState state, IBlockAccess source, BlockPos pos)
|
||||
{
|
||||
return boundBox;
|
||||
if(state.getValue(FACING).equals(EnumFacing.NORTH)){
|
||||
return boundBoxNorth;
|
||||
}
|
||||
if(state.getValue(FACING).equals(EnumFacing.SOUTH)){
|
||||
return boundBoxSouth;
|
||||
}
|
||||
if(state.getValue(FACING).equals(EnumFacing.EAST)){
|
||||
return boundBoxEast;
|
||||
}
|
||||
if(state.getValue(FACING).equals(EnumFacing.WEST)){
|
||||
return boundBoxWest;
|
||||
}
|
||||
return boundBoxNorth;
|
||||
}
|
||||
|
||||
@Nullable
|
||||
@@ -103,4 +130,35 @@ public class RedstoneEngine extends CustomContainerFacingActive {
|
||||
return new TileRedstoneEngine();
|
||||
}
|
||||
|
||||
private void setValues(TileRedstoneEngine tile){
|
||||
if(!tile.getSlotStack(0).isEmpty()){
|
||||
NonNullList<ItemStack> gearboxList = NonNullList.<ItemStack>withSize(3, ItemStack.EMPTY);
|
||||
if(tile.getSlotStack(0).getSubCompound("BlockEntityTag") != null) {
|
||||
ItemStackHelper.loadAllItems(tile.getSlotStack(0).getSubCompound("BlockEntityTag"), gearboxList);
|
||||
if (RecipeHelper.isOreName(gearboxList.get(0), "gearPrimalMedium") &&
|
||||
RecipeHelper.isOreName(gearboxList.get(1), "gearPrimalMedium") &&
|
||||
RecipeHelper.isOreName(gearboxList.get(2), "gearboxCoverPrimal")) {
|
||||
tile.setRPM(1200F/(60-2*tile.getRedstone()));
|
||||
tile.setTorque(tile.getPower()/tile.getRPM());
|
||||
tile.setGearMulti(1F);
|
||||
}
|
||||
if (RecipeHelper.isOreName(gearboxList.get(0), "gearPrimalSmall") &&
|
||||
RecipeHelper.isOreName(gearboxList.get(1), "gearPrimalLarge") &&
|
||||
RecipeHelper.isOreName(gearboxList.get(2), "gearboxCoverPrimal")) {
|
||||
tile.setRPM((1200F/(60-2*tile.getRedstone()))*4);
|
||||
tile.setTorque(tile.getPower()/tile.getRPM());
|
||||
tile.setGearMulti(4F);
|
||||
}
|
||||
if (RecipeHelper.isOreName(gearboxList.get(0), "gearPrimalLarge") &&
|
||||
RecipeHelper.isOreName(gearboxList.get(1), "gearPrimalSmall") &&
|
||||
RecipeHelper.isOreName(gearboxList.get(2), "gearboxCoverPrimal")) {
|
||||
|
||||
tile.setRPM((1200F/(60-2*tile.getRedstone()))/4);
|
||||
tile.setTorque(tile.getPower()/tile.getRPM());
|
||||
tile.setGearMulti(0.25F);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
151
kfc/src/main/java/nmd/primal/forgecraft/compat/ct/CTSaw.java
Normal file
151
kfc/src/main/java/nmd/primal/forgecraft/compat/ct/CTSaw.java
Normal file
@@ -0,0 +1,151 @@
|
||||
package nmd.primal.forgecraft.compat.ct;
|
||||
|
||||
|
||||
import crafttweaker.CraftTweakerAPI;
|
||||
import crafttweaker.IAction;
|
||||
import crafttweaker.annotations.ModOnly;
|
||||
import crafttweaker.annotations.ZenRegister;
|
||||
import crafttweaker.api.item.IIngredient;
|
||||
import crafttweaker.api.item.IItemStack;
|
||||
import crafttweaker.api.minecraft.CraftTweakerMC;
|
||||
import net.minecraft.inventory.ItemStackHelper;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.item.crafting.Ingredient;
|
||||
import nmd.primal.core.api.PrimalAPI;
|
||||
import nmd.primal.core.common.PrimalCore;
|
||||
import nmd.primal.core.common.helper.RecipeHelper;
|
||||
import nmd.primal.forgecraft.ModInfo;
|
||||
import nmd.primal.forgecraft.blocks.machine.MachineSaw;
|
||||
import nmd.primal.forgecraft.crafting.CrucibleCrafting;
|
||||
import nmd.primal.forgecraft.crafting.MachineSawCrafting;
|
||||
import stanhebben.zenscript.annotations.ZenClass;
|
||||
import stanhebben.zenscript.annotations.ZenMethod;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@ZenClass("mods.forgecraft.MachineSaw")
|
||||
@ModOnly(ModInfo.MOD_ID)
|
||||
@ZenRegister
|
||||
public class CTSaw {
|
||||
|
||||
static
|
||||
{
|
||||
PrimalCore.LOGGER.info("Registering CraftTweaker: " + MachineSawCrafting.RECIPE_PREFIX);
|
||||
}
|
||||
|
||||
@ZenMethod
|
||||
public static void addRecipe(IIngredient ing0,
|
||||
IIngredient output,
|
||||
String recipe_name)
|
||||
{
|
||||
CraftTweakerAPI.apply(new Add(ing0, output, recipe_name));
|
||||
}
|
||||
|
||||
@ZenMethod
|
||||
public static void removeRecipe(String recipe_name)
|
||||
{
|
||||
CraftTweakerAPI.apply(new Remove(recipe_name));
|
||||
}
|
||||
|
||||
@ZenMethod
|
||||
public static void removeAll()
|
||||
{
|
||||
CraftTweakerAPI.apply(new RemoveAll());
|
||||
}
|
||||
|
||||
private static class Add implements IAction
|
||||
{
|
||||
private final String recipe_name;
|
||||
private final Ingredient ing0;
|
||||
private final List<ItemStack> output;
|
||||
private boolean isDisabled, isHidden;
|
||||
|
||||
public Add(IIngredient I0, IIngredient output, String recipe_name)
|
||||
{
|
||||
|
||||
ItemStack[] array0 = null;
|
||||
ItemStack[] emptyArray = new ItemStack[1];
|
||||
emptyArray[0] = ItemStack.EMPTY;
|
||||
|
||||
if(I0 != null) {
|
||||
List<ItemStack> zeroIList = I0.getItems().stream().map(CraftTweakerMC::getItemStack).collect(Collectors.toList());
|
||||
array0 = zeroIList.stream().toArray(ItemStack[]::new);
|
||||
}
|
||||
if(I0 == null) {
|
||||
array0 = emptyArray;
|
||||
}
|
||||
|
||||
this.recipe_name = recipe_name;
|
||||
this.ing0 = Ingredient.fromStacks(array0);
|
||||
this.output = RecipeHelper.getIIngredientStacks(output);
|
||||
this.isDisabled = false;
|
||||
this.isHidden = false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void apply()
|
||||
{
|
||||
PrimalCore.LOGGER.info("Add CraftTweaker Recipe: " + this.recipe_name);
|
||||
MachineSawCrafting.REGISTRY.register(new MachineSawCrafting(
|
||||
this.ing0,
|
||||
this.output).setRecipeName(this.recipe_name));
|
||||
}
|
||||
|
||||
@Override
|
||||
public String describe()
|
||||
{
|
||||
return "[" + ModInfo.MOD_NAME + "] Adding Crafting Tweaker recipe for: " + MachineSawCrafting.RECIPE_PREFIX;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private static class Remove implements IAction
|
||||
{
|
||||
private String recipe_name;
|
||||
|
||||
public Remove(String recipe_name)
|
||||
{
|
||||
this.recipe_name = recipe_name;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void apply()
|
||||
{
|
||||
MachineSawCrafting recipe = MachineSawCrafting.getRecipe(recipe_name);
|
||||
if (recipe != null && !recipe.isHidden())
|
||||
{
|
||||
PrimalCore.LOGGER.info("Remove CraftTweaker Recipe: " + recipe_name);
|
||||
recipe.setDisabled(true);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String describe()
|
||||
{
|
||||
return "[" + ModInfo.MOD_NAME + "] Removing Crafting Tweaker recipe for:" + MachineSawCrafting.RECIPE_PREFIX;
|
||||
}
|
||||
}
|
||||
|
||||
private static class RemoveAll implements IAction
|
||||
{
|
||||
public RemoveAll() { }
|
||||
|
||||
@Override
|
||||
public void apply()
|
||||
{
|
||||
for (MachineSawCrafting recipe : MachineSawCrafting.RECIPES)
|
||||
{
|
||||
if (!recipe.isHidden())
|
||||
recipe.setDisabled(true);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String describe()
|
||||
{
|
||||
return "[" + ModInfo.MOD_NAME + "] Removing Crafting Tweaker recipe for:" + MachineSawCrafting.RECIPE_PREFIX;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,124 @@
|
||||
package nmd.primal.forgecraft.crafting;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.item.crafting.Ingredient;
|
||||
import net.minecraftforge.registries.IForgeRegistry;
|
||||
import nmd.primal.core.common.helper.RecipeHelper;
|
||||
import nmd.primal.core.common.recipes.AbstractRecipe;
|
||||
import nmd.primal.forgecraft.ModInfo;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Created by mminaie on 11/11/17.
|
||||
*/
|
||||
public class MachineSawCrafting extends AbstractRecipe<MachineSawCrafting> { //extends AbstractCrafting<CrucibleCrafting> {
|
||||
|
||||
// ***************************************************************************** //
|
||||
// Recipe Handler CrucibleHandler
|
||||
// ***************************************************************************** //
|
||||
|
||||
public static final String RECIPE_PREFIX = "machine_saw";
|
||||
public static final IForgeRegistry<MachineSawCrafting> REGISTRY = ModInfo.Registries.MACHINE_SAW_CRAFTING;
|
||||
|
||||
public static Collection<MachineSawCrafting> getRECIPES() {
|
||||
return RECIPES;
|
||||
}
|
||||
|
||||
public static final Collection<MachineSawCrafting> RECIPES = REGISTRY.getValuesCollection();
|
||||
|
||||
private Ingredient input;
|
||||
private List<ItemStack> output;
|
||||
|
||||
public Ingredient getInput() {
|
||||
return input;
|
||||
}
|
||||
public void setInput(Ingredient input) {
|
||||
this.input = input;
|
||||
}
|
||||
|
||||
public List<ItemStack> getOutput() {
|
||||
return output;
|
||||
}
|
||||
public void setOutput(List<ItemStack> output) {
|
||||
this.output = output;
|
||||
}
|
||||
|
||||
public MachineSawCrafting(Ingredient input, List<ItemStack> output){
|
||||
super();
|
||||
this.input = input;
|
||||
this.output = output;
|
||||
}
|
||||
|
||||
public static boolean compare(Ingredient ingredient, ItemStack stack){
|
||||
if(stack == null){
|
||||
stack = new ItemStack(Items.AIR, 1);
|
||||
}
|
||||
if(ingredient == null && stack.isEmpty()) {
|
||||
return true;
|
||||
}
|
||||
|
||||
if (ingredient.test(ItemStack.EMPTY)) {
|
||||
if (stack.isEmpty()) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
if(ingredient.apply(stack)){
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
public boolean isRecipe(ItemStack input){
|
||||
for(MachineSawCrafting recipe : RECIPES){
|
||||
if(input == null){
|
||||
input = ItemStack.EMPTY;
|
||||
}
|
||||
if(compare(recipe.input, input)){
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
public static MachineSawCrafting getRecipe(ItemStack input){
|
||||
for(MachineSawCrafting recipe : RECIPES){
|
||||
if(input == null){
|
||||
input = ItemStack.EMPTY;
|
||||
}
|
||||
if(recipe.input.apply(input)){
|
||||
return recipe;
|
||||
}
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Collection<MachineSawCrafting> getRecipes() {
|
||||
return RECIPES;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getRecipePrefix() {
|
||||
return RECIPE_PREFIX;
|
||||
}
|
||||
|
||||
/**
|
||||
* Shim for getting a recipe directly from correctly formatted name
|
||||
* @param recipe_name basic recipe name, no prefix or mod id
|
||||
* @return Recipe object
|
||||
*/
|
||||
@Nullable
|
||||
public static MachineSawCrafting getRecipe(String recipe_name)
|
||||
{
|
||||
return REGISTRY.getValue(getFullRecipeName(RECIPE_PREFIX, recipe_name));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,113 @@
|
||||
package nmd.primal.forgecraft.crafting.registery;
|
||||
|
||||
import crafttweaker.api.block.IBlock;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.init.Items;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.item.crafting.Ingredient;
|
||||
import net.minecraft.util.NonNullList;
|
||||
import net.minecraftforge.event.RegistryEvent;
|
||||
import net.minecraftforge.fml.common.Mod;
|
||||
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||
import net.minecraftforge.oredict.OreDictionary;
|
||||
import net.minecraftforge.oredict.OreIngredient;
|
||||
import net.minecraftforge.registries.IForgeRegistry;
|
||||
import nmd.primal.core.api.PrimalAPI;
|
||||
import nmd.primal.core.common.helper.RecipeHelper;
|
||||
import nmd.primal.forgecraft.ModInfo;
|
||||
import nmd.primal.forgecraft.crafting.MachineSawCrafting;
|
||||
import nmd.primal.forgecraft.crafting.WorkbenchCrafting;
|
||||
import nmd.primal.forgecraft.init.ModItems;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@GameRegistry.ObjectHolder(ModInfo.MOD_ID)
|
||||
@Mod.EventBusSubscriber
|
||||
public final class RecipesMachineSaw {
|
||||
@SubscribeEvent
|
||||
public static void registerRecipes(RegistryEvent.Register<MachineSawCrafting> event) {
|
||||
PrimalAPI.logger(7, "Registering Recipes: " + MachineSawCrafting.RECIPE_PREFIX);
|
||||
final IForgeRegistry<MachineSawCrafting> recipes = event.getRegistry();
|
||||
|
||||
ItemStack sticks = new ItemStack(Items.STICK, 2);
|
||||
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("logOak"),
|
||||
RecipeHelper.buildList((new ItemStack(Item.getItemFromBlock(Blocks.PLANKS), 4, 0)),
|
||||
(new ItemStack(PrimalAPI.Items.BARK_OAK, 4)),
|
||||
sticks))
|
||||
.setRecipeName("oakPlanks"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("logSpruce"),
|
||||
RecipeHelper.buildList((new ItemStack(Item.getItemFromBlock(Blocks.PLANKS), 4, 1)),
|
||||
(new ItemStack(PrimalAPI.Items.BARK_SPRUCE, 4)),
|
||||
sticks))
|
||||
.setRecipeName("sprucePlanks"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("logBirch"),
|
||||
RecipeHelper.buildList( (new ItemStack(Item.getItemFromBlock(Blocks.PLANKS), 4, 2)),
|
||||
(new ItemStack(PrimalAPI.Items.BARK_BIRCH, 4)),
|
||||
sticks))
|
||||
.setRecipeName("birchPlanks"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("logJungle"),
|
||||
RecipeHelper.buildList(new ItemStack(Item.getItemFromBlock(Blocks.PLANKS), 4, 3)))
|
||||
.setRecipeName("junglePlanks"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("logAcacia"),
|
||||
RecipeHelper.buildList(new ItemStack(Item.getItemFromBlock(Blocks.PLANKS), 4, 0)))
|
||||
.setRecipeName("acaciaPlanks"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("logIronwood"),
|
||||
RecipeHelper.buildList(new ItemStack(Item.getItemFromBlock(PrimalAPI.Blocks.PLANKS), 4, 0)))
|
||||
.setRecipeName("ironwoodPlanks"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("logYew"),
|
||||
RecipeHelper.buildList(new ItemStack(Item.getItemFromBlock(PrimalAPI.Blocks.PLANKS), 4, 1)))
|
||||
.setRecipeName("yewPlanks"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("logCorypha"),
|
||||
RecipeHelper.buildList(new ItemStack(Item.getItemFromBlock(PrimalAPI.Blocks.PLANKS), 4, 3)))
|
||||
.setRecipeName("coryphaPlanks"));
|
||||
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("strippedOak"),
|
||||
RecipeHelper.buildList(new ItemStack(PrimalAPI.Items.LOGS_SPLIT_OAK, 6)))
|
||||
.setRecipeName("splitOak"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("strippedSpruce"),
|
||||
RecipeHelper.buildList(new ItemStack(PrimalAPI.Items.LOGS_SPLIT_SPRUCE, 6)))
|
||||
.setRecipeName("splitSpruce"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("strippedBirch"),
|
||||
RecipeHelper.buildList(new ItemStack(PrimalAPI.Items.LOGS_SPLIT_BIRCH, 6)))
|
||||
.setRecipeName("splitBirch"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("strippedJungle"),
|
||||
RecipeHelper.buildList(new ItemStack(PrimalAPI.Items.LOGS_SPLIT_JUNGLE, 6)))
|
||||
.setRecipeName("splitJungle"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("strippedAcacia"),
|
||||
RecipeHelper.buildList(new ItemStack(PrimalAPI.Items.LOGS_SPLIT_ACACIA, 6)))
|
||||
.setRecipeName("splitAcacia"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("strippedDarkOak"),
|
||||
RecipeHelper.buildList(new ItemStack(PrimalAPI.Items.LOGS_SPLIT_DARK_OAK, 6)))
|
||||
.setRecipeName("splitDarkOak"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("strippedIronwood"),
|
||||
RecipeHelper.buildList(new ItemStack(PrimalAPI.Items.LOGS_SPLIT_IRONWOOD, 6)))
|
||||
.setRecipeName("splitIronwood"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("strippedYew"),
|
||||
RecipeHelper.buildList(new ItemStack(PrimalAPI.Items.LOGS_SPLIT_YEW, 6)))
|
||||
.setRecipeName("splitYew"));
|
||||
recipes.register(new MachineSawCrafting(
|
||||
new OreIngredient("strippedCorypha"),
|
||||
RecipeHelper.buildList(new ItemStack(PrimalAPI.Items.LOGS_SPLIT_CORYPHA, 6)))
|
||||
.setRecipeName("splitCorypha"));
|
||||
}
|
||||
}
|
||||
@@ -49,13 +49,16 @@ public class ModBlocks {
|
||||
public static Block pistonbellowsacacia;
|
||||
|
||||
public static Block stoneanvil;
|
||||
public static Block ironanvil;
|
||||
//public static Block ironanvil;
|
||||
|
||||
public static Block workbench;
|
||||
public static Block sharpbench;
|
||||
|
||||
public static Block yewstave;
|
||||
|
||||
/** M A C H I N E S **/
|
||||
public static Block machinesaw;
|
||||
|
||||
public static void init() {
|
||||
|
||||
nbtCrucible = new NBTCrucible(Material.ROCK, "nbtcrucible");
|
||||
@@ -91,6 +94,8 @@ public class ModBlocks {
|
||||
|
||||
yewstave = new YewStave(Material.WOOD, "yewstave", 3.0F);
|
||||
|
||||
machinesaw = new MachineSaw(Material.IRON, "ironmachinesaw");
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -127,6 +132,8 @@ public class ModBlocks {
|
||||
registerBlockWithItem(sharpbench);
|
||||
|
||||
registerBlockWithItem(yewstave);
|
||||
|
||||
registerBlockWithItem(machinesaw);
|
||||
}
|
||||
|
||||
@SideOnly(Side.CLIENT)
|
||||
@@ -162,6 +169,7 @@ public class ModBlocks {
|
||||
|
||||
registerRender(yewstave);
|
||||
|
||||
registerRender(machinesaw);
|
||||
}
|
||||
|
||||
private static void registerBlockWithItem(Block block)
|
||||
|
||||
@@ -9,6 +9,7 @@ import net.minecraftforge.registries.RegistryBuilder;
|
||||
import nmd.primal.core.api.PrimalAPI;
|
||||
import nmd.primal.forgecraft.ModInfo;
|
||||
import nmd.primal.forgecraft.crafting.CrucibleCrafting;
|
||||
import nmd.primal.forgecraft.crafting.MachineSawCrafting;
|
||||
import nmd.primal.forgecraft.crafting.WorkbenchCrafting;
|
||||
|
||||
/**
|
||||
@@ -35,5 +36,12 @@ public class ModRegistries {
|
||||
registryWorkbench.setIDRange(0, 1000);
|
||||
registryWorkbench.create();
|
||||
|
||||
PrimalAPI.logger(1, "Custom Registry", MachineSawCrafting.RECIPE_PREFIX);
|
||||
RegistryBuilder registryMachineSaw = new RegistryBuilder();
|
||||
registryMachineSaw.setType(MachineSawCrafting.class);
|
||||
registryMachineSaw.setName(new ResourceLocation(ModInfo.MOD_ID, "recipes_" + MachineSawCrafting.RECIPE_PREFIX));
|
||||
registryMachineSaw.setIDRange(0, 1000);
|
||||
registryMachineSaw.create();
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -15,6 +15,9 @@ public class ModSounds {
|
||||
public static SoundEvent BOW_TWANG;
|
||||
public static SoundEvent CHISEL_HIT;
|
||||
public static SoundEvent CHISEL_HIT_FINISHED;
|
||||
public static SoundEvent ENGINE_EXTENSION;
|
||||
public static SoundEvent ENGINE_RETRACTION;
|
||||
public static SoundEvent SAW_MACHINE;
|
||||
|
||||
public static void registerSounds()
|
||||
{
|
||||
@@ -23,6 +26,9 @@ public class ModSounds {
|
||||
BOW_TWANG = registerSound("bow_twang");
|
||||
CHISEL_HIT = registerSound("chisel_hit");
|
||||
CHISEL_HIT_FINISHED = registerSound("chisel_hit_finished");
|
||||
ENGINE_EXTENSION = registerSound("piston_engine_out");
|
||||
ENGINE_RETRACTION = registerSound("piston_engine_in");
|
||||
SAW_MACHINE = registerSound("saw_machine");
|
||||
}
|
||||
|
||||
private static SoundEvent registerSound(String name)
|
||||
|
||||
@@ -17,6 +17,7 @@ public class ModTileRenders {
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileSharpBench.class, new TileSharpBenchRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileRedstoneEngine.class, new TileRedstoneEngineRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileGearbox.class, new TileGearboxRender());
|
||||
ClientRegistry.bindTileEntitySpecialRenderer(TileMachineSaw.class, new TileMachineSawRender());
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
package nmd.primal.forgecraft.init;
|
||||
|
||||
import net.minecraft.tileentity.TileEntity;
|
||||
import net.minecraftforge.fml.common.registry.ForgeRegistries;
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||
import nmd.primal.forgecraft.tiles.*;
|
||||
|
||||
@@ -22,6 +21,7 @@ public class ModTiles {
|
||||
registerTileEntity(TileSharpBench.class, "sharpbench");
|
||||
registerTileEntity(TileRedstoneEngine.class, "redstoneengine");
|
||||
registerTileEntity(TileGearbox.class, "gearbox");
|
||||
registerTileEntity(TileMachineSaw.class, "machine");
|
||||
}
|
||||
|
||||
private static void registerTileEntity(Class<? extends TileEntity> tile_class, String baseName) {
|
||||
|
||||
@@ -0,0 +1,418 @@
|
||||
package nmd.primal.forgecraft.renders.blocks;
|
||||
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.client.Minecraft;
|
||||
import net.minecraft.client.renderer.OpenGlHelper;
|
||||
import net.minecraft.client.renderer.RenderItem;
|
||||
import net.minecraft.client.renderer.block.model.ItemCameraTransforms;
|
||||
import net.minecraft.client.renderer.texture.TextureMap;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
import net.minecraft.util.SoundCategory;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
import nmd.primal.core.api.PrimalAPI;
|
||||
import nmd.primal.forgecraft.blocks.CustomContainerFacingActive;
|
||||
import nmd.primal.forgecraft.blocks.machine.MachineSaw;
|
||||
import nmd.primal.forgecraft.init.ModBlocks;
|
||||
import nmd.primal.forgecraft.init.ModSounds;
|
||||
import nmd.primal.forgecraft.tiles.TileMachineSaw;
|
||||
import nmd.primal.forgecraft.tiles.TileRedstoneEngine;
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
/**
|
||||
* Created by mminaie on 4/9/17.
|
||||
*/
|
||||
public class TileMachineSawRender extends TileEntitySpecialRenderer<TileMachineSaw> {
|
||||
private RenderItem renderItem = Minecraft.getMinecraft().getRenderItem();
|
||||
private boolean sound1;
|
||||
|
||||
private boolean getSound1() {
|
||||
return sound1;
|
||||
}
|
||||
private void setSound1(boolean sound) {
|
||||
this.sound1 = sound;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void render(TileMachineSaw tile, double x, double y, double z, float partialTicks, int destroyStage, float alpha) {
|
||||
BlockPos pos = tile.getPos();
|
||||
IBlockState state = this.getWorld().getBlockState(pos);
|
||||
World world = tile.getWorld();
|
||||
|
||||
ItemStack saw = tile.getSlotStack(0);
|
||||
|
||||
if (state.getBlock() instanceof MachineSaw) {
|
||||
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated(x, y, z);
|
||||
GL11.glScalef(1.0f, 1.0f, 1.0f);
|
||||
Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE);
|
||||
float prevLGTX = OpenGlHelper.lastBrightnessX;
|
||||
float prevLGTY = OpenGlHelper.lastBrightnessY;
|
||||
int bright = tile.getWorld().getCombinedLight(pos.up(), 0);
|
||||
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, bright % 65536, bright / 65536);
|
||||
|
||||
//N O R T H
|
||||
if (state.getValue(CustomContainerFacingActive.FACING) == EnumFacing.NORTH) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated((16 / 32D), (27 / 32D), (16 / 32D));
|
||||
GL11.glRotatef(180 , 0.0F, 1.0F, 0.0F);
|
||||
if(world.getBlockState(pos.west()).getBlock().equals(ModBlocks.redstoneengine)) {
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE) && tile.getTransfer()) {
|
||||
GL11.glRotatef(-360 * createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone()), 1.0F, 0.0F, 0.0F);
|
||||
if(createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone())<=0.02F && !getSound1()){
|
||||
world.playSound(pos.getX(), pos.getY(), pos.getZ(), ModSounds.SAW_MACHINE, SoundCategory.BLOCKS, 0.15F, 1.0F, true);
|
||||
}
|
||||
if(createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone())>0.02F && getSound1()){
|
||||
setSound1(false);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
renderItem.renderItem(saw, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
//S O U T H//
|
||||
if (state.getValue(CustomContainerFacingActive.FACING) == EnumFacing.SOUTH) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated((16 / 32D), (27 / 32D), (16 / 32D));
|
||||
if(world.getBlockState(pos.east()).getBlock().equals(ModBlocks.redstoneengine)) {
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE) && tile.getTransfer()) {
|
||||
GL11.glRotatef(-360 * createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone()), 1.0F, 0.0F, 0.0F);
|
||||
if(createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone())<=0.02F && !getSound1()){
|
||||
world.playSound(pos.getX(), pos.getY(), pos.getZ(), ModSounds.SAW_MACHINE, SoundCategory.BLOCKS, 0.15F, 1.0F, true);
|
||||
}
|
||||
if(createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone())>0.02F && getSound1()){
|
||||
setSound1(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
renderItem.renderItem(saw, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
//E A S T//
|
||||
if (state.getValue(CustomContainerFacingActive.FACING) == EnumFacing.EAST) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated((16 / 32D), (27 / 32D), (16 / 32D));
|
||||
GL11.glRotatef(90 , 0.0F, 1.0F, 0.0F);
|
||||
if(world.getBlockState(pos.north()).getBlock().equals(ModBlocks.redstoneengine)) {
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE) && tile.getTransfer()) {
|
||||
GL11.glRotatef(360 * createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone()), 1.0F, 0.0F, 0.0F);
|
||||
if(createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone())<=0.02F && !getSound1()){
|
||||
world.playSound(pos.getX(), pos.getY(), pos.getZ(), ModSounds.SAW_MACHINE, SoundCategory.BLOCKS, 0.15F, 1.0F, true);
|
||||
}
|
||||
if(createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone())>0.02F && getSound1()){
|
||||
setSound1(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
renderItem.renderItem(saw, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
//W E S T//
|
||||
if (state.getValue(CustomContainerFacingActive.FACING) == EnumFacing.WEST) {
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated((16 / 32D), (27 / 32D), (16 / 32D));
|
||||
GL11.glRotatef(-90 , 0.0F, 1.0F, 0.0F);
|
||||
if(world.getBlockState(pos.south()).getBlock().equals(ModBlocks.redstoneengine)) {
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE) && tile.getTransfer()) {
|
||||
GL11.glRotatef(360 * createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone()), 1.0F, 0.0F, 0.0F);
|
||||
if(createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone())<=0.02F && !getSound1()){
|
||||
world.playSound(pos.getX(), pos.getY(), pos.getZ(), ModSounds.SAW_MACHINE, SoundCategory.BLOCKS, 0.15F, 1.0F, true);
|
||||
}
|
||||
if(createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone())>0.02F && getSound1()){
|
||||
setSound1(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
renderItem.renderItem(saw, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
|
||||
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, prevLGTX, prevLGTY);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
}
|
||||
|
||||
public float createOutputK(World world, Float gearMulti, int redstone){
|
||||
if(gearMulti==1){
|
||||
float k = (60 - (redstone*2));
|
||||
float time = (int) (world.getTotalWorldTime() % k);
|
||||
float tempK = (time / k);
|
||||
return tempK;
|
||||
} else if (gearMulti==4){
|
||||
float fastk = (60 - (redstone*2))*0.25F;
|
||||
float fastTime = (int) (world.getTotalWorldTime() % fastk);
|
||||
float tempk = fastTime / fastk;
|
||||
return tempk;
|
||||
} else if(gearMulti==0.25){
|
||||
float slowk = (60 - (redstone*2))*4F;
|
||||
float slowTime = (int) (world.getTotalWorldTime() % slowk);
|
||||
float tempk = slowTime / slowk;
|
||||
return tempk;
|
||||
} else return 0;
|
||||
}
|
||||
|
||||
}
|
||||
/************************
|
||||
S O U T H
|
||||
************************/
|
||||
/*
|
||||
if (state.getValue(CustomContainerFacingActive.FACING) == EnumFacing.SOUTH) {
|
||||
/***CRANK***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated((21/32D), (16/32D), (25/32D));
|
||||
GL11.glRotatef(180, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)){
|
||||
GL11.glRotatef(360*(time / k), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
renderItem.renderItem(crank, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
/***PISTON***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated((29/32D), 16/32D, 1/16D);
|
||||
GL11.glRotatef(180, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)){
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
}
|
||||
renderItem.renderItem(piston, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
/***ARM1***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
|
||||
GL11.glTranslated((29/32D), 16/32D, 3/32D);
|
||||
GL11.glRotatef(180, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
GL11.glTranslated(0, 0, tempZ);
|
||||
}
|
||||
renderItem.renderItem(arm, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
/***GEARBOX***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
|
||||
GL11.glTranslated(16/32D, 23/32D, 16/32D);
|
||||
GL11.glRotatef(90, 0F, 1F, 0.0F);
|
||||
renderItem.renderItem(gearbox, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
/***TOOL SLOT***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
|
||||
float gearMulti = 1;
|
||||
|
||||
GL11.glTranslated((16/32D), 16/32D, 16/32D);
|
||||
GL11.glRotatef(180, 0F, 1F, 0F);
|
||||
|
||||
NonNullList<ItemStack> gearList = NonNullList.<ItemStack>withSize(3, ItemStack.EMPTY);
|
||||
if(gearbox.getSubCompound("BlockEntityTag") != null) {
|
||||
ItemStackHelper.loadAllItems(gearbox.getSubCompound("BlockEntityTag"), gearList);
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalSmall")) {
|
||||
gearMulti=4F;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalMedium")) {
|
||||
gearMulti=1;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalLarge")) {
|
||||
gearMulti=0.25f;
|
||||
}
|
||||
}
|
||||
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
GL11.glRotatef(-360*(percentK*gearMulti), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
renderItem.renderItem(slotTool, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
/************************
|
||||
E A S T
|
||||
************************/
|
||||
/*
|
||||
if (state.getValue(CustomContainerFacingActive.FACING) == EnumFacing.EAST) {
|
||||
/***CRANK***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated((25/32D), (16/32D), (11/32D));
|
||||
GL11.glRotatef(-90, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)){
|
||||
GL11.glRotatef(360*(time / k), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
renderItem.renderItem(crank, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
/***PISTON***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated((3/32D), 16/32D, 3/32D);
|
||||
GL11.glRotatef(-90, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)){
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
}
|
||||
renderItem.renderItem(piston, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
/***ARM1***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
|
||||
GL11.glTranslated((3/32D), 16/32D, 3/32D);
|
||||
GL11.glRotatef(-90, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
GL11.glTranslated(0, 0, tempZ);
|
||||
}
|
||||
|
||||
renderItem.renderItem(arm, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
/***GEARBOX***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
|
||||
GL11.glTranslated(16/32D, 23/32D, 16/32D);
|
||||
GL11.glRotatef(180, 0F, 1F, 0.0F);
|
||||
renderItem.renderItem(gearbox, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
/***TOOL SLOT***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
|
||||
float gearMulti = 1;
|
||||
|
||||
GL11.glTranslated((16/32D), 16/32D, 16/32D);
|
||||
GL11.glRotatef(-90, 0F, 1F, 0F);
|
||||
|
||||
NonNullList<ItemStack> gearList = NonNullList.<ItemStack>withSize(3, ItemStack.EMPTY);
|
||||
if(gearbox.getSubCompound("BlockEntityTag") != null) {
|
||||
ItemStackHelper.loadAllItems(gearbox.getSubCompound("BlockEntityTag"), gearList);
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalSmall")) {
|
||||
gearMulti=4F;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalMedium")) {
|
||||
gearMulti=1;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalLarge")) {
|
||||
gearMulti=0.25f;
|
||||
}
|
||||
}
|
||||
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
GL11.glRotatef(-360*(percentK*gearMulti), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
renderItem.renderItem(slotTool, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
/************************
|
||||
W E S T
|
||||
************************/
|
||||
/*
|
||||
if (state.getValue(CustomContainerFacingActive.FACING) == EnumFacing.WEST) {
|
||||
/***CRANK***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated((7/32D), (16/32D), (21/32D));
|
||||
GL11.glRotatef(90, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)){
|
||||
GL11.glRotatef(360*(time / k), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
renderItem.renderItem(crank, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
/***PISTON***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated((29/32D), 16/32D, 29/32D);
|
||||
GL11.glRotatef(90, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)){
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
}
|
||||
renderItem.renderItem(piston, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
/***ARM1***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
|
||||
GL11.glTranslated((29/32D), 16/32D, 29/32D);
|
||||
GL11.glRotatef(90, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
GL11.glTranslated(0, 0, tempZ);
|
||||
}
|
||||
|
||||
renderItem.renderItem(arm, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
/***GEARBOX***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
|
||||
GL11.glTranslated(16/32D, 23/32D, 16/32D);
|
||||
//GL11.glRotatef(180, 0F, 1F, 0.0F);
|
||||
renderItem.renderItem(gearbox, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
|
||||
/***TOOL SLOT***/
|
||||
/*
|
||||
GL11.glPushMatrix();
|
||||
|
||||
float gearMulti = 1;
|
||||
|
||||
GL11.glTranslated((16/32D), 16/32D, 16/32D);
|
||||
GL11.glRotatef(90, 0F, 1F, 0F);
|
||||
|
||||
NonNullList<ItemStack> gearList = NonNullList.<ItemStack>withSize(3, ItemStack.EMPTY);
|
||||
if(gearbox.getSubCompound("BlockEntityTag") != null) {
|
||||
ItemStackHelper.loadAllItems(gearbox.getSubCompound("BlockEntityTag"), gearList);
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalSmall")) {
|
||||
gearMulti=4F;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalMedium")) {
|
||||
gearMulti=1;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalLarge")) {
|
||||
gearMulti=0.25f;
|
||||
}
|
||||
}
|
||||
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
GL11.glRotatef(-360*(percentK*gearMulti), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
renderItem.renderItem(slotTool, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
*/
|
||||
//OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, prevLGTX, prevLGTY);
|
||||
//GL11.glPopMatrix();
|
||||
//}
|
||||
|
||||
|
||||
/*if( percentK >= 0 && percentK < 0.25 ) {
|
||||
GL11.glRotatef(angle * (time/(k/4)), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
float halfFloat = time - (k/4);
|
||||
if( percentK >= 0.25 && percentK < 0.5) {
|
||||
GL11.glRotatef(angle * (((k/4)-halfFloat)/(k/4)), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
if( percentK >= 0.5 && percentK < 0.75) {
|
||||
GL11.glRotatef(-angle * ((time-(k/2))/(k/4)), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
float thirdFloat = time - ((k/4)*3);
|
||||
if( percentK >= 0.75 && percentK < 1) {
|
||||
GL11.glRotatef(-angle * (((k/4)-thirdFloat)/(k/4)), 1.0F, 0.0F, 0.0F);
|
||||
|
||||
}*/
|
||||
@@ -7,16 +7,21 @@ import net.minecraft.client.renderer.RenderItem;
|
||||
import net.minecraft.client.renderer.block.model.ItemCameraTransforms;
|
||||
import net.minecraft.client.renderer.texture.TextureMap;
|
||||
import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.init.SoundEvents;
|
||||
import net.minecraft.inventory.ItemStackHelper;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.EnumFacing;
|
||||
import net.minecraft.util.NonNullList;
|
||||
import net.minecraft.util.SoundCategory;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
import nmd.primal.core.api.PrimalAPI;
|
||||
import nmd.primal.core.common.helper.RecipeHelper;
|
||||
import nmd.primal.forgecraft.blocks.CustomContainerFacingActive;
|
||||
import nmd.primal.forgecraft.blocks.machine.RedstoneEngine;
|
||||
import nmd.primal.forgecraft.init.ModItems;
|
||||
import nmd.primal.forgecraft.init.ModSounds;
|
||||
import nmd.primal.forgecraft.tiles.TileRedstoneEngine;
|
||||
import org.lwjgl.opengl.GL11;
|
||||
|
||||
@@ -29,19 +34,53 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
private static int time =0;
|
||||
//private static float k =60;
|
||||
private static float angle = 17;
|
||||
private boolean sound1;
|
||||
private boolean sound2;
|
||||
|
||||
private boolean getSound1() {
|
||||
return sound1;
|
||||
}
|
||||
private void setSound1(boolean sound) {
|
||||
this.sound1 = sound;
|
||||
}
|
||||
|
||||
private boolean getSound2() {
|
||||
return sound2;
|
||||
}
|
||||
private void setSound2(boolean sound) {
|
||||
this.sound2 = sound;
|
||||
}
|
||||
|
||||
|
||||
private void doPistonRotations(int t, float kon, float a, float pk, float testa, World world, BlockPos pos){
|
||||
|
||||
private void doPistonRotations(int t, float kon, float a, float pk, float testa){
|
||||
if( pk >= 0 && pk < 0.25 ) {
|
||||
if(pk<=0.02 && !getSound2()){
|
||||
world.playSound(pos.getX(), pos.getY(), pos.getZ(), ModSounds.ENGINE_RETRACTION, SoundCategory.BLOCKS, 0.25F, 1.0F, true);
|
||||
setSound2(true);
|
||||
}
|
||||
|
||||
GL11.glRotatef(angle * (time/(kon/4)), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
if( pk >= 0.25 && pk < 0.5) {
|
||||
if(getSound2()){
|
||||
setSound2(false);
|
||||
}
|
||||
GL11.glRotatef(testa, 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
if( pk >= 0.5 && pk < 0.75) {
|
||||
if(pk<=0.52 && !getSound1()){
|
||||
world.playSound(pos.getX(), pos.getY(), pos.getZ(), ModSounds.ENGINE_EXTENSION, SoundCategory.BLOCKS, 0.2F, 1.0F, true);
|
||||
setSound1(true);
|
||||
}
|
||||
|
||||
GL11.glRotatef(testa, 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
float thirdFloat = time - ((kon/4)*3);
|
||||
if( pk >= 0.75 && pk < 1) {
|
||||
if( pk >= 0.75 && pk <= 1) {
|
||||
if(getSound1()){
|
||||
setSound1(false);
|
||||
}
|
||||
GL11.glRotatef(-angle * (((kon/4)-thirdFloat)/(kon/4)), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
}
|
||||
@@ -51,12 +90,12 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
{
|
||||
BlockPos pos = tile.getPos();
|
||||
IBlockState state = this.getWorld().getBlockState(pos);
|
||||
World world = tile.getWorld();
|
||||
|
||||
ItemStack crank = new ItemStack(ModItems.woodcrank);
|
||||
ItemStack arm = new ItemStack(ModItems.woodpistonarm);
|
||||
ItemStack piston = new ItemStack(ModItems.woodpiston);
|
||||
|
||||
|
||||
ItemStack gearbox = tile.getSlotStack(0);
|
||||
ItemStack slotTool = tile.getSlotStack(1);
|
||||
|
||||
@@ -64,19 +103,7 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
time = (int) (tile.getWorld().getTotalWorldTime() % k);
|
||||
float percentK = time / k;
|
||||
|
||||
float slowk = (60 - (tile.getRedstone()*2))*0.25F;
|
||||
float slowTime = (int) (tile.getWorld().getTotalWorldTime() % slowk);
|
||||
float percentKSlow = slowTime / slowk;
|
||||
|
||||
float fastk = (60 - (tile.getRedstone()*2))*4F;
|
||||
float fastTime = (int) (tile.getWorld().getTotalWorldTime() % fastk);
|
||||
float percentKFast = fastTime / fastk;
|
||||
|
||||
float percentKMed = percentK;
|
||||
//System.out.println(k + ":" + time + ":" + percentK);
|
||||
|
||||
if (state.getBlock() instanceof RedstoneEngine) {
|
||||
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated(x, y, z);
|
||||
GL11.glScalef(1.0f, 1.0f, 1.0f);
|
||||
@@ -111,7 +138,7 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
GL11.glPushMatrix();
|
||||
GL11.glTranslated((3/32D), 16/32D, 15/16D);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)){
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
doPistonRotations(time, k, angle, percentK, testAngle, world, pos);
|
||||
}
|
||||
renderItem.renderItem(piston, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
@@ -123,7 +150,7 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
//GL11.glTranslated(0.0, ((3/16D) * Math.cos(Math.toRadians( (360*(time / k))-90) )),
|
||||
// (3/16D)+((3/16D) * Math.sin(Math.toRadians( (360*(time / k))-90 ))) );
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
doPistonRotations(time, k, angle, percentK, testAngle, world, pos);
|
||||
GL11.glTranslated(0, 0, tempZ);
|
||||
|
||||
}
|
||||
@@ -141,27 +168,12 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
/***A X L E***/
|
||||
GL11.glPushMatrix();
|
||||
|
||||
float gearMulti = 1;
|
||||
|
||||
GL11.glTranslated((16/32D), 16/32D, 16/32D);
|
||||
//GL11.glRotatef(45, 1.0F, 0.0F, 0.0F);
|
||||
|
||||
NonNullList<ItemStack> gearList = NonNullList.<ItemStack>withSize(3, ItemStack.EMPTY);
|
||||
if(gearbox.getSubCompound("BlockEntityTag") != null) {
|
||||
ItemStackHelper.loadAllItems(gearbox.getSubCompound("BlockEntityTag"), gearList);
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalSmall")) {
|
||||
gearMulti=percentKSlow;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalMedium")) {
|
||||
gearMulti=percentKMed;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalLarge")) {
|
||||
gearMulti=percentKFast;
|
||||
}
|
||||
}
|
||||
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
GL11.glRotatef(-360*(gearMulti), 1.0F, 0.0F, 0.0F);
|
||||
|
||||
GL11.glRotatef(-360 * createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone()) , 1.0F, 0.0F, 0.0F);
|
||||
//GL11.glRotatef(-360*(percentKFast), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
renderItem.renderItem(slotTool, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
@@ -185,7 +197,7 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
GL11.glTranslated((29/32D), 16/32D, 1/16D);
|
||||
GL11.glRotatef(180, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)){
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
doPistonRotations(time, k, angle, percentK, testAngle, world, pos);
|
||||
}
|
||||
renderItem.renderItem(piston, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
@@ -196,7 +208,7 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
GL11.glTranslated((29/32D), 16/32D, 3/32D);
|
||||
GL11.glRotatef(180, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
doPistonRotations(time, k, angle, percentK, testAngle, world, pos);
|
||||
GL11.glTranslated(0, 0, tempZ);
|
||||
}
|
||||
renderItem.renderItem(arm, ItemCameraTransforms.TransformType.FIXED);
|
||||
@@ -218,22 +230,8 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
GL11.glTranslated((16/32D), 16/32D, 16/32D);
|
||||
GL11.glRotatef(180, 0F, 1F, 0F);
|
||||
|
||||
NonNullList<ItemStack> gearList = NonNullList.<ItemStack>withSize(3, ItemStack.EMPTY);
|
||||
if(gearbox.getSubCompound("BlockEntityTag") != null) {
|
||||
ItemStackHelper.loadAllItems(gearbox.getSubCompound("BlockEntityTag"), gearList);
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalSmall")) {
|
||||
gearMulti=4F;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalMedium")) {
|
||||
gearMulti=1;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalLarge")) {
|
||||
gearMulti=0.25f;
|
||||
}
|
||||
}
|
||||
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
GL11.glRotatef(-360*(percentK*gearMulti), 1.0F, 0.0F, 0.0F);
|
||||
GL11.glRotatef(-360*createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone()), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
renderItem.renderItem(slotTool, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
@@ -257,7 +255,7 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
GL11.glTranslated((3/32D), 16/32D, 3/32D);
|
||||
GL11.glRotatef(-90, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)){
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
doPistonRotations(time, k, angle, percentK, testAngle, world, pos);
|
||||
}
|
||||
renderItem.renderItem(piston, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
@@ -268,7 +266,7 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
GL11.glTranslated((3/32D), 16/32D, 3/32D);
|
||||
GL11.glRotatef(-90, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
doPistonRotations(time, k, angle, percentK, testAngle, world, pos);
|
||||
GL11.glTranslated(0, 0, tempZ);
|
||||
}
|
||||
|
||||
@@ -291,22 +289,8 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
GL11.glTranslated((16/32D), 16/32D, 16/32D);
|
||||
GL11.glRotatef(-90, 0F, 1F, 0F);
|
||||
|
||||
NonNullList<ItemStack> gearList = NonNullList.<ItemStack>withSize(3, ItemStack.EMPTY);
|
||||
if(gearbox.getSubCompound("BlockEntityTag") != null) {
|
||||
ItemStackHelper.loadAllItems(gearbox.getSubCompound("BlockEntityTag"), gearList);
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalSmall")) {
|
||||
gearMulti=4F;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalMedium")) {
|
||||
gearMulti=1;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalLarge")) {
|
||||
gearMulti=0.25f;
|
||||
}
|
||||
}
|
||||
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
GL11.glRotatef(-360*(percentK*gearMulti), 1.0F, 0.0F, 0.0F);
|
||||
GL11.glRotatef(-360*createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone()), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
renderItem.renderItem(slotTool, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
@@ -330,7 +314,7 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
GL11.glTranslated((29/32D), 16/32D, 29/32D);
|
||||
GL11.glRotatef(90, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)){
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
doPistonRotations(time, k, angle, percentK, testAngle, world, pos);
|
||||
}
|
||||
renderItem.renderItem(piston, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
@@ -341,7 +325,7 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
GL11.glTranslated((29/32D), 16/32D, 29/32D);
|
||||
GL11.glRotatef(90, 0.0F, 1.0F, 0.0F);
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
doPistonRotations(time, k, angle, percentK, testAngle);
|
||||
doPistonRotations(time, k, angle, percentK, testAngle, world, pos);
|
||||
GL11.glTranslated(0, 0, tempZ);
|
||||
}
|
||||
|
||||
@@ -364,22 +348,8 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
GL11.glTranslated((16/32D), 16/32D, 16/32D);
|
||||
GL11.glRotatef(90, 0F, 1F, 0F);
|
||||
|
||||
NonNullList<ItemStack> gearList = NonNullList.<ItemStack>withSize(3, ItemStack.EMPTY);
|
||||
if(gearbox.getSubCompound("BlockEntityTag") != null) {
|
||||
ItemStackHelper.loadAllItems(gearbox.getSubCompound("BlockEntityTag"), gearList);
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalSmall")) {
|
||||
gearMulti=4F;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalMedium")) {
|
||||
gearMulti=1;
|
||||
}
|
||||
if(RecipeHelper.isOreName(gearList.get(0), "gearPrimalLarge")) {
|
||||
gearMulti=0.25f;
|
||||
}
|
||||
}
|
||||
|
||||
if(state.getValue(PrimalAPI.States.ACTIVE)) {
|
||||
GL11.glRotatef(-360*(percentK*gearMulti), 1.0F, 0.0F, 0.0F);
|
||||
GL11.glRotatef(-360*createOutputK(tile.getWorld(), tile.getGearMulti(), tile.getRedstone()), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
renderItem.renderItem(slotTool, ItemCameraTransforms.TransformType.FIXED);
|
||||
GL11.glPopMatrix();
|
||||
@@ -389,20 +359,24 @@ public class TileRedstoneEngineRender extends TileEntitySpecialRenderer<TileReds
|
||||
GL11.glPopMatrix();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*if( percentK >= 0 && percentK < 0.25 ) {
|
||||
GL11.glRotatef(angle * (time/(k/4)), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
float halfFloat = time - (k/4);
|
||||
if( percentK >= 0.25 && percentK < 0.5) {
|
||||
GL11.glRotatef(angle * (((k/4)-halfFloat)/(k/4)), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
if( percentK >= 0.5 && percentK < 0.75) {
|
||||
GL11.glRotatef(-angle * ((time-(k/2))/(k/4)), 1.0F, 0.0F, 0.0F);
|
||||
}
|
||||
float thirdFloat = time - ((k/4)*3);
|
||||
if( percentK >= 0.75 && percentK < 1) {
|
||||
GL11.glRotatef(-angle * (((k/4)-thirdFloat)/(k/4)), 1.0F, 0.0F, 0.0F);
|
||||
public float createOutputK(World world, Float gearMulti, int redstone){
|
||||
if(gearMulti==1){
|
||||
float k = (60 - (redstone*2));
|
||||
float time = (int) (world.getTotalWorldTime() % k);
|
||||
float tempK = (time / k);
|
||||
return tempK;
|
||||
} else if (gearMulti==4){
|
||||
float fastk = (60 - (redstone*2))*0.25F;
|
||||
float fastTime = (int) (world.getTotalWorldTime() % fastk);
|
||||
float tempk = fastTime / fastk;
|
||||
return tempk;
|
||||
} else if(gearMulti==0.25){
|
||||
float slowk = (60 - (redstone*2))*4F;
|
||||
float slowTime = (int) (world.getTotalWorldTime() % slowk);
|
||||
float tempk = slowTime / slowk;
|
||||
return tempk;
|
||||
} else return 0;
|
||||
}
|
||||
|
||||
}*/
|
||||
}
|
||||
@@ -0,0 +1,124 @@
|
||||
package nmd.primal.forgecraft.tiles;
|
||||
|
||||
import net.minecraft.inventory.ItemStackHelper;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.util.ITickable;
|
||||
import net.minecraft.util.NonNullList;
|
||||
import nmd.primal.forgecraft.items.blocks.ItemGearbox;
|
||||
import nmd.primal.forgecraft.items.enginetools.BaseEngineTool;
|
||||
|
||||
public class TileMachineSaw extends TileBaseSlot /*implements ITickable*/ {
|
||||
|
||||
|
||||
|
||||
private float torque;
|
||||
private float power;
|
||||
private float rpm;
|
||||
|
||||
private int redstone;
|
||||
private float gearMulti;
|
||||
|
||||
private boolean transfer;
|
||||
private boolean playSound;
|
||||
|
||||
public int getRedstone() {
|
||||
return redstone;
|
||||
}
|
||||
|
||||
public void setRedstone(int redstone) {
|
||||
this.redstone = redstone;
|
||||
}
|
||||
|
||||
public float getGearMulti() {
|
||||
return gearMulti;
|
||||
}
|
||||
|
||||
public void setGearMulti(float gearMulti) {
|
||||
this.gearMulti = gearMulti;
|
||||
}
|
||||
|
||||
public void setTorque(float torque) {
|
||||
this.torque = torque;
|
||||
}
|
||||
|
||||
public void setPower(float power) {
|
||||
this.power = power;
|
||||
}
|
||||
|
||||
public void setRpm(float rpm) {
|
||||
this.rpm = rpm;
|
||||
}
|
||||
|
||||
public float getTorque() {
|
||||
return torque;
|
||||
}
|
||||
|
||||
public float getPower() {
|
||||
return power;
|
||||
}
|
||||
|
||||
public float getRpm() {
|
||||
return rpm;
|
||||
}
|
||||
|
||||
public boolean getTransfer() {
|
||||
return transfer;
|
||||
}
|
||||
|
||||
public void setTransfer(boolean transfer) {
|
||||
this.transfer = transfer;
|
||||
}
|
||||
public boolean getPlaySound() {
|
||||
return playSound;
|
||||
}
|
||||
|
||||
public void setPlaySound(boolean playSound) {
|
||||
this.playSound = playSound;
|
||||
}
|
||||
|
||||
public TileMachineSaw() {
|
||||
}
|
||||
|
||||
public boolean isItemValidForSlot(int index, ItemStack stack) {
|
||||
|
||||
if(index == 0){
|
||||
if(this.getSlotStack(0).isEmpty() && stack.getItem() instanceof BaseEngineTool) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
// ***************************************************************************** //
|
||||
// NBT
|
||||
// ***************************************************************************** //
|
||||
@Override
|
||||
public NBTTagCompound readNBT(NBTTagCompound nbt)
|
||||
{
|
||||
super.readNBT(nbt);
|
||||
this.torque = nbt.getFloat("torque");
|
||||
this.power = nbt.getFloat("power");
|
||||
this.rpm = nbt.getFloat("rpm");
|
||||
this.redstone = nbt.getInteger("redstone");
|
||||
this.gearMulti = nbt.getFloat("gear");
|
||||
this.transfer = nbt.getBoolean("transfer");
|
||||
return nbt;
|
||||
}
|
||||
|
||||
@Override
|
||||
public NBTTagCompound writeNBT(NBTTagCompound nbt)
|
||||
{
|
||||
nbt.setFloat("torque", this.torque);
|
||||
nbt.setFloat("power", this.power);
|
||||
nbt.setFloat("rpm", this.rpm);
|
||||
nbt.setInteger("redstone", this.redstone);
|
||||
nbt.setFloat("gear", this.gearMulti);
|
||||
nbt.setBoolean("transfer", this.transfer);
|
||||
super.writeNBT(nbt);
|
||||
return nbt;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -1,55 +1,47 @@
|
||||
package nmd.primal.forgecraft.tiles;
|
||||
|
||||
import net.minecraft.block.Block;
|
||||
import net.minecraft.block.state.IBlockState;
|
||||
import net.minecraft.inventory.ItemStackHelper;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.nbt.NBTTagCompound;
|
||||
import net.minecraft.util.ITickable;
|
||||
import net.minecraft.util.NonNullList;
|
||||
import net.minecraft.util.math.BlockPos;
|
||||
import net.minecraft.world.World;
|
||||
import nmd.primal.core.common.helper.RecipeHelper;
|
||||
import nmd.primal.forgecraft.items.blocks.ItemGearbox;
|
||||
import nmd.primal.forgecraft.items.enginetools.BaseEngineTool;
|
||||
|
||||
public class TileRedstoneEngine extends TileBaseSlot implements ITickable {
|
||||
public class TileRedstoneEngine extends TileBaseSlot {
|
||||
|
||||
private int redstone; // AKA power
|
||||
private int torque; // = power/speed
|
||||
private int speed; // = power/torque
|
||||
private float torque; // = power/speed
|
||||
private float power;// = 100*redstone;
|
||||
private float rpm;
|
||||
|
||||
private boolean transfer = false;
|
||||
private float gearMulti;
|
||||
|
||||
public float getGearMulti() { return gearMulti; }
|
||||
public void setGearMulti(float gearMulti){ this.gearMulti = gearMulti;}
|
||||
|
||||
public int getRedstone() { return redstone; }
|
||||
public void setRedstone(int redstone) { this.redstone = redstone; }
|
||||
public int getTorque() { return torque; }
|
||||
public void setTorque(int torque) { this.torque = torque; }
|
||||
public int getSpeed() { return speed; }
|
||||
public void setSpeed(int speed) { this.speed = speed; }
|
||||
|
||||
public float getTorque() { return torque; }
|
||||
public void setTorque(float torque) {
|
||||
this.torque = torque;
|
||||
}
|
||||
|
||||
public float getRPM() { return rpm; }
|
||||
public void setRPM(float rpm) {
|
||||
this.rpm = rpm;
|
||||
}
|
||||
|
||||
public float getPower() {return power; }
|
||||
public void setPower() { this.power = 100*redstone; }
|
||||
|
||||
public boolean getTransfer() { return transfer; }
|
||||
public void setTransfer(boolean transfer) {
|
||||
this.transfer = transfer;
|
||||
}
|
||||
|
||||
public TileRedstoneEngine() {
|
||||
}
|
||||
|
||||
|
||||
|
||||
@Override
|
||||
public void update () {
|
||||
if(!world.isRemote) {
|
||||
World world = this.getWorld();
|
||||
IBlockState state = world.getBlockState(this.pos);
|
||||
BlockPos pos = new BlockPos(this.getPos().getX(), this.getPos().getY(), this.getPos().getZ());
|
||||
Block block = world.getBlockState(pos).getBlock();
|
||||
|
||||
NonNullList<ItemStack> renderList = NonNullList.<ItemStack>withSize(3, ItemStack.EMPTY);
|
||||
//System.out.println(this.getSlotStack(0).getTagCompound());
|
||||
if(this.getSlotStack(0).getSubCompound("BlockEntityTag") != null) {
|
||||
ItemStackHelper.loadAllItems(this.getSlotStack(0).getSubCompound("BlockEntityTag"), renderList);
|
||||
//System.out.println(renderList);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
public boolean isItemValidForSlot(int index, ItemStack stack) {
|
||||
if(index == 0 ) {
|
||||
if (this.getSlotStack(0).isEmpty() && stack.getItem() instanceof ItemGearbox) {
|
||||
@@ -73,7 +65,11 @@ public class TileRedstoneEngine extends TileBaseSlot implements ITickable {
|
||||
{
|
||||
super.readNBT(nbt);
|
||||
this.redstone = nbt.getInteger("redstone");
|
||||
|
||||
this.torque = nbt.getFloat("torque");
|
||||
this.power = nbt.getFloat("power");
|
||||
this.rpm = nbt.getFloat("rpm");
|
||||
this.transfer = nbt.getBoolean("transfer");
|
||||
this.gearMulti = nbt.getFloat("gear");
|
||||
return nbt;
|
||||
}
|
||||
|
||||
@@ -81,6 +77,11 @@ public class TileRedstoneEngine extends TileBaseSlot implements ITickable {
|
||||
public NBTTagCompound writeNBT(NBTTagCompound nbt)
|
||||
{
|
||||
nbt.setInteger("redstone", this.redstone);
|
||||
nbt.setFloat("torque", this.torque);
|
||||
nbt.setFloat("power", this.power);
|
||||
nbt.setFloat("rpm", this.rpm);
|
||||
nbt.setBoolean("transfer", this.transfer);
|
||||
nbt.setFloat("gear", this.gearMulti);
|
||||
super.writeNBT(nbt);
|
||||
return nbt;
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ public interface BreakerHandler {
|
||||
|
||||
if (RecipeHelper.isOreName(smashStack, "cobblestone")) {
|
||||
if (tile.getCharge() > getThreshold(world, pos.offset(face))) {
|
||||
world.setBlockToAir(pos.offset(face));
|
||||
world.destroyBlock(pos.offset(face), false);
|
||||
PlayerHelper.spawnItemOnGround(world, pos.offset(face), new ItemStack(Blocks.GRAVEL, randomChanceReturn(9, 1, 1)));
|
||||
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage() + 1);
|
||||
return true;
|
||||
@@ -56,7 +56,7 @@ public interface BreakerHandler {
|
||||
}
|
||||
if (RecipeHelper.isOreName(smashStack, "gravel")) {
|
||||
if (tile.getCharge() > getThreshold(world, pos.offset(face))) {
|
||||
world.setBlockToAir(pos.offset(face));
|
||||
world.destroyBlock(pos.offset(face), false);
|
||||
PlayerHelper.spawnItemOnGround(world, pos.offset(face), new ItemStack(Blocks.SAND, randomChanceReturn(9, 1, 1)));
|
||||
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage() + 1);
|
||||
return true;
|
||||
@@ -66,7 +66,7 @@ public interface BreakerHandler {
|
||||
for (GallagherRecipe recipe : GallagherRecipe.RECIPES) {
|
||||
if (recipe.match(smashState)) {
|
||||
if (tile.getCharge() > getThreshold(world, pos.offset(face))) {
|
||||
world.setBlockToAir(pos.offset(face));
|
||||
world.destroyBlock(pos.offset(face), false);
|
||||
PlayerHelper.spawnItemOnGround(world, pos.offset(face), recipe.getOutputStack());
|
||||
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage() + 1);
|
||||
return true;
|
||||
@@ -76,7 +76,7 @@ public interface BreakerHandler {
|
||||
|
||||
if (RecipeHelper.isOreName(smashStack, "oreIron")) {
|
||||
if (tile.getCharge() > getThreshold(world, pos.offset(face))) {
|
||||
world.setBlockToAir(pos.offset(face));
|
||||
world.destroyBlock(pos.offset(face), false);
|
||||
PlayerHelper.spawnItemOnGround(world, pos.offset(face), new ItemStack(PrimalAPI.Items.IRON_DUST, randomChanceReturn(9, 1, 2)));
|
||||
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage() + 1);
|
||||
return true;
|
||||
@@ -84,7 +84,7 @@ public interface BreakerHandler {
|
||||
}
|
||||
if (RecipeHelper.isOreName(smashStack, "oreCopper")) {
|
||||
if (tile.getCharge() > getThreshold(world, pos.offset(face))) {
|
||||
world.setBlockToAir(pos.offset(face));
|
||||
world.destroyBlock(pos.offset(face), false);
|
||||
PlayerHelper.spawnItemOnGround(world, pos.offset(face), new ItemStack(PrimalAPI.Items.COPPER_DUST, randomChanceReturn(9, 1, 2)));
|
||||
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage() + 1);
|
||||
return true;
|
||||
@@ -92,7 +92,7 @@ public interface BreakerHandler {
|
||||
}
|
||||
if (RecipeHelper.isOreName(smashStack, "oreTin")) {
|
||||
if (tile.getCharge() > getThreshold(world, pos.offset(face))) {
|
||||
world.setBlockToAir(pos.offset(face));
|
||||
world.destroyBlock(pos.offset(face), false);
|
||||
PlayerHelper.spawnItemOnGround(world, pos.offset(face), new ItemStack(PrimalAPI.Items.TIN_DUST, randomChanceReturn(9, 1, 2)));
|
||||
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage() + 1);
|
||||
return true;
|
||||
@@ -100,7 +100,7 @@ public interface BreakerHandler {
|
||||
}
|
||||
if (RecipeHelper.isOreName(smashStack, "oreZinc")) {
|
||||
if (tile.getCharge() > getThreshold(world, pos.offset(face))) {
|
||||
world.setBlockToAir(pos.offset(face));
|
||||
world.destroyBlock(pos.offset(face), false);
|
||||
PlayerHelper.spawnItemOnGround(world, pos.offset(face), new ItemStack(PrimalAPI.Items.ZINC_DUST, randomChanceReturn(9, 1, 2)));
|
||||
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage() + 1);
|
||||
return true;
|
||||
@@ -108,7 +108,7 @@ public interface BreakerHandler {
|
||||
}
|
||||
if (RecipeHelper.isOreName(smashStack, "oreGold")) {
|
||||
if (tile.getCharge() > getThreshold(world, pos.offset(face))) {
|
||||
world.setBlockToAir(pos.offset(face));
|
||||
world.destroyBlock(pos.offset(face), false);
|
||||
PlayerHelper.spawnItemOnGround(world, pos.offset(face), new ItemStack(PrimalAPI.Items.GOLD_DUST, randomChanceReturn(9, 1, 2)));
|
||||
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage() + 1);
|
||||
return true;
|
||||
@@ -116,7 +116,7 @@ public interface BreakerHandler {
|
||||
}
|
||||
if (RecipeHelper.isOreName(smashStack, "cobblestone")) {
|
||||
if (tile.getCharge() > getThreshold(world, pos.offset(face))) {
|
||||
world.setBlockToAir(pos.offset(face));
|
||||
world.destroyBlock(pos.offset(face), false);
|
||||
PlayerHelper.spawnItemOnGround(world, pos.offset(face), new ItemStack(Blocks.GRAVEL, randomChanceReturn(9, 1, 1)));
|
||||
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage() + 1);
|
||||
return true;
|
||||
@@ -124,7 +124,7 @@ public interface BreakerHandler {
|
||||
}
|
||||
if (RecipeHelper.isOreName(smashStack, "gravel")) {
|
||||
if (tile.getCharge() > getThreshold(world, pos.offset(face))) {
|
||||
world.setBlockToAir(pos.offset(face));
|
||||
world.destroyBlock(pos.offset(face), false);
|
||||
PlayerHelper.spawnItemOnGround(world, pos.offset(face), new ItemStack(Blocks.SAND, randomChanceReturn(9, 1, 1)));
|
||||
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage() + 1);
|
||||
return true;
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
{
|
||||
"forge_marker":1,
|
||||
"defaults": {
|
||||
"textures": {
|
||||
"particle": "forgecraft:items/iron/0",
|
||||
"texture": "forgecraft:items/iron/0"
|
||||
},
|
||||
"parent": "forgecraft:block/saw_block_model"
|
||||
},
|
||||
"variants": {
|
||||
"active=false,facing=north": { "model": "forgecraft:saw_block_model" },
|
||||
"active=false,facing=east": { "model": "forgecraft:saw_block_model", "y": 90 },
|
||||
"active=false,facing=south": { "model": "forgecraft:saw_block_model", "y": 180 },
|
||||
"active=false,facing=west": { "model": "forgecraft:saw_block_model", "y": 270 },
|
||||
"active=true,facing=north": { "model": "forgecraft:saw_block_model" },
|
||||
"active=true,facing=east": { "model": "forgecraft:saw_block_model", "y": 90 },
|
||||
"active=true,facing=south": { "model": "forgecraft:saw_block_model", "y": 180 },
|
||||
"active=true,facing=west": { "model": "forgecraft:saw_block_model", "y": 270 }
|
||||
}
|
||||
}
|
||||
@@ -1,111 +0,0 @@
|
||||
{
|
||||
"__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio",
|
||||
"textures": {
|
||||
"particle": "blocks/e_particle",
|
||||
"texture": "items/test"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"__comment": "Box1",
|
||||
"from": [ 0, 2, 0 ],
|
||||
"to": [ 3, 5, 16 ],
|
||||
"faces": {
|
||||
"up": { "uv": [ 0, 0, 3, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 13, 11, 16, 14 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 11, 3, 14 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 11, 16, 14 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 11, 16, 14 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box1",
|
||||
"from": [ 13, 2, 0 ],
|
||||
"to": [ 16, 5, 16 ],
|
||||
"faces": {
|
||||
"up": { "uv": [ 13, 0, 16, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 0, 11, 3, 14 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 13, 11, 16, 14 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 11, 16, 14 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 11, 16, 14 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box5",
|
||||
"from": [ 3, 2, 0 ],
|
||||
"to": [ 13, 5, 3 ],
|
||||
"faces": {
|
||||
"up": { "uv": [ 3, 0, 13, 3 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 11, 13, 14 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 3, 11, 13, 14 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box5",
|
||||
"from": [ 3, 2, 13 ],
|
||||
"to": [ 13, 5, 16 ],
|
||||
"faces": {
|
||||
"up": { "uv": [ 3, 13, 13, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 11, 13, 14 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 3, 11, 13, 14 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box8",
|
||||
"from": [ 0, 0, 0 ],
|
||||
"to": [ 16, 2, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box6",
|
||||
"from": [ 7.5, 5, 0 ],
|
||||
"to": [ 8.5, 6, 1 ],
|
||||
"faces": {
|
||||
"up": { "uv": [ 7.5, 0, 8.5, 1 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 10, 8.5, 11 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 10, 8.5, 11 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 10, 1, 11 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 15, 10, 16, 11 ], "texture": "#texture" }
|
||||
}
|
||||
}
|
||||
],
|
||||
"display": {
|
||||
"thirdperson_righthand": {
|
||||
"rotation": [ 75, 45, 0 ],
|
||||
"translation": [ 0, 2.5, 1.5 ],
|
||||
"scale": [ 0.375, 0.375, 0.375 ]
|
||||
},
|
||||
"thirdperson_lefthand": {
|
||||
"rotation": [ 75, 45, 0 ],
|
||||
"translation": [ 0, 2.5, 1.5 ],
|
||||
"scale": [ 0.375, 0.375, 0.375 ]
|
||||
},
|
||||
"firstperson_righthand": {
|
||||
"translation": [ 0, 2, 0 ],
|
||||
"scale": [ 0.4, 0.4, 0.4 ]
|
||||
},
|
||||
"firstperson_lefthand": {
|
||||
"translation": [ 0, 2, 0 ],
|
||||
"scale": [ 0.4, 0.4, 0.4 ]
|
||||
},
|
||||
"gui": {
|
||||
"rotation": [ 30, 225, 0 ],
|
||||
"scale": [ 0.625, 0.625, 0.625 ]
|
||||
},
|
||||
"ground": {
|
||||
"translation": [ 0, 3, 0 ],
|
||||
"scale": [ 0.25, 0.25, 0.25 ]
|
||||
},
|
||||
"fixed": {
|
||||
"rotation": [ 90, 0, 180 ],
|
||||
"translation": [ 0, 0, -3 ],
|
||||
"scale": [ 0.5, 0.5, 0.5 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -4,123 +4,216 @@
|
||||
"particle": "blocks/e_particle",
|
||||
"texture": "blocks/e_texture"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"__comment": "Box1",
|
||||
"from": [ 0, 0, 0 ],
|
||||
"to": [ 16, 6, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 0, 10, 16, 16 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 10, 16, 16 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 10, 16, 16 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 10, 16, 16 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box4",
|
||||
"from": [ 0, 7.5, 0 ],
|
||||
"to": [ 2, 8.5, 7.5 ],
|
||||
"faces": {
|
||||
"north": { "uv": [ 14, 7.5, 16, 8.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 7.5, 2, 8.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 7.5, 7.5, 8.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box4",
|
||||
"from": [ 0, 7.5, 8.5 ],
|
||||
"to": [ 2, 8.5, 16 ],
|
||||
"faces": {
|
||||
"north": { "uv": [ 14, 7.5, 16, 8.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 7.5, 2, 8.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 8.5, 7.5, 16, 8.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box8",
|
||||
"from": [ 0, 8.5, 0 ],
|
||||
"to": [ 2, 14, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 0, 0, 2, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 14, 2, 16, 7.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 2, 2, 7.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 2, 16, 7.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box17",
|
||||
"from": [ 2, 6, 0 ],
|
||||
"to": [ 6, 14, 16 ],
|
||||
"faces": {
|
||||
"north": { "uv": [ 10, 2, 14, 10 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 2, 2, 6, 10 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 2, 16, 10 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 2, 16, 10 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box18",
|
||||
"from": [ 0, 6, 0 ],
|
||||
"to": [ 2, 7.5, 16 ],
|
||||
"faces": {
|
||||
"up": { "uv": [ 0, 0, 2, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 14, 8.5, 16, 10 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 8.5, 2, 10 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 8.5, 16, 10 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box20",
|
||||
"from": [ 0, 14, 0 ],
|
||||
"to": [ 6, 16, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 10, 0, 16, 2 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 0, 6, 2 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 0, 16, 2 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 0, 16, 2 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box20",
|
||||
"from": [ 10, 6, 0 ],
|
||||
"to": [ 16, 16, 16 ],
|
||||
"faces": {
|
||||
"up": { "uv": [ 10, 0, 16, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 0, 0, 6, 10 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 10, 0, 16, 10 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 0, 16, 10 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 0, 16, 10 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box22",
|
||||
"from": [ 6, 14.5, 0 ],
|
||||
"to": [ 7.5, 16, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 6, 0, 7.5, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 6, 0, 7.5, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 8.5, 0, 10, 1.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 6, 0, 7.5, 1.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 0, 16, 1.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box22",
|
||||
"from": [ 8.5, 14.5, 0 ],
|
||||
"to": [ 10, 16, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 8.5, 0, 10, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 8.5, 0, 10, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 6, 0, 7.5, 1.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 8.5, 0, 10, 1.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 0, 16, 1.5 ], "texture": "#texture" }
|
||||
}
|
||||
}
|
||||
],
|
||||
"elements": [
|
||||
{
|
||||
"__comment": "Box1",
|
||||
"from": [ 0, 0, 0 ],
|
||||
"to": [ 16, 4, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 0, 12, 16, 16 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 12, 16, 16 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 12, 16, 16 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 12, 16, 16 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box4",
|
||||
"from": [ 0, 7.5, 0 ],
|
||||
"to": [ 2, 8.5, 7.5 ],
|
||||
"faces": {
|
||||
"north": { "uv": [ 14, 7.5, 16, 8.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 7.5, 2, 8.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 7.5, 7.5, 8.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box4",
|
||||
"from": [ 0, 7.5, 8.5 ],
|
||||
"to": [ 2, 8.5, 16 ],
|
||||
"faces": {
|
||||
"north": { "uv": [ 14, 7.5, 16, 8.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 7.5, 2, 8.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 8.5, 7.5, 16, 8.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box8",
|
||||
"from": [ 0, 8.5, 0 ],
|
||||
"to": [ 6, 13, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 10, 3, 16, 7.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 3, 6, 7.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 3, 16, 7.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 3, 16, 7.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box17",
|
||||
"from": [ 2, 4, 0 ],
|
||||
"to": [ 6, 8.5, 16 ],
|
||||
"faces": {
|
||||
"north": { "uv": [ 10, 7.5, 14, 12 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 2, 7.5, 6, 12 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 7.5, 16, 12 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 7.5, 16, 12 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box18",
|
||||
"from": [ 0, 4, 0 ],
|
||||
"to": [ 2, 7.5, 16 ],
|
||||
"faces": {
|
||||
"up": { "uv": [ 0, 0, 2, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 14, 8.5, 16, 12 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 8.5, 2, 12 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 8.5, 16, 12 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box20",
|
||||
"from": [ 0, 14, 0 ],
|
||||
"to": [ 6, 16, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 10, 0, 16, 2 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 0, 6, 2 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 0, 16, 2 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 0, 16, 2 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box20",
|
||||
"from": [ 10, 4, 0 ],
|
||||
"to": [ 16, 13, 16 ],
|
||||
"faces": {
|
||||
"up": { "uv": [ 10, 0, 16, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 0, 3, 6, 12 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 10, 3, 16, 12 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 3, 16, 12 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 3, 16, 12 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box22",
|
||||
"from": [ 6, 14.5, 0 ],
|
||||
"to": [ 7.5, 16, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 6, 0, 7.5, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 6, 0, 7.5, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 8.5, 0, 10, 1.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 6, 0, 7.5, 1.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 0, 16, 1.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box22",
|
||||
"from": [ 8.5, 14.5, 0 ],
|
||||
"to": [ 10, 16, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 8.5, 0, 10, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 8.5, 0, 10, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 6, 0, 7.5, 1.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 8.5, 0, 10, 1.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 0, 16, 1.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box11",
|
||||
"from": [ 5, 13, 0 ],
|
||||
"to": [ 6, 14, 7.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 5, 8.5, 6, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 5, 0, 6, 7.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 10, 2, 11, 3 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 5, 2, 6, 3 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 2, 7.5, 3 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 8.5, 2, 16, 3 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box11",
|
||||
"from": [ 5, 13, 8.5 ],
|
||||
"to": [ 6, 14, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 5, 0, 6, 7.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 5, 8.5, 6, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 10, 2, 11, 3 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 5, 2, 6, 3 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 8.5, 2, 16, 3 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 2, 7.5, 3 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box13",
|
||||
"from": [ 0, 13, 0 ],
|
||||
"to": [ 5, 14, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 0, 0, 5, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 0, 0, 5, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 11, 2, 16, 3 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 0, 2, 5, 3 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 2, 16, 3 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 2, 16, 3 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box13",
|
||||
"from": [ 11, 13, 0 ],
|
||||
"to": [ 16, 14, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 11, 0, 16, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 11, 0, 16, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 0, 2, 5, 3 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 11, 2, 16, 3 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 2, 16, 3 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 2, 16, 3 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box11",
|
||||
"from": [ 10, 13, 0 ],
|
||||
"to": [ 11, 14, 7.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 10, 8.5, 11, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 10, 0, 11, 7.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 5, 2, 6, 3 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 10, 2, 11, 3 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 2, 7.5, 3 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 8.5, 2, 16, 3 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box11",
|
||||
"from": [ 10, 13, 8.5 ],
|
||||
"to": [ 11, 14, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 10, 0, 11, 7.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 10, 8.5, 11, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 5, 2, 6, 3 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 10, 2, 11, 3 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 8.5, 2, 16, 3 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 2, 7.5, 3 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box20",
|
||||
"from": [ 10, 14, 0 ],
|
||||
"to": [ 16, 16, 16 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 10, 0, 16, 16 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 10, 0, 16, 16 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 0, 0, 6, 2 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 10, 0, 16, 2 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 0, 0, 16, 2 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 0, 0, 16, 2 ], "texture": "#texture" }
|
||||
}
|
||||
}
|
||||
],
|
||||
"display": {
|
||||
"thirdperson_righthand": {
|
||||
"rotation": [ 75, 45, 0 ],
|
||||
@@ -149,7 +242,7 @@
|
||||
"scale": [ 0.25, 0.25, 0.25 ]
|
||||
},
|
||||
"fixed": {
|
||||
"scale": [ 0.5, 0.5, 0.5 ]
|
||||
"scale": [ 1, 1, 1 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -8,535 +8,534 @@
|
||||
"elements": [
|
||||
{
|
||||
"__comment": "Box17",
|
||||
"from": [ 8.5, 7.5, 7.5 ],
|
||||
"to": [ 12, 8.5, 8.5 ],
|
||||
"from": [ 5, 7.5, 7.5 ],
|
||||
"to": [ 11, 8.5, 8.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 8.5, 7.5, 12, 8.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 8.5, 7.5, 12, 8.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 4, 7.5, 7.5, 8.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 8.5, 7.5, 12, 8.5 ], "texture": "#texture" },
|
||||
"down": { "uv": [ 5, 7.5, 11, 8.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 5, 7.5, 11, 8.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 5, 7.5, 11, 8.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 5, 7.5, 11, 8.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 7.5, 7.5, 8.5, 8.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 7.5, 7.5, 8.5, 8.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box7",
|
||||
"from": [ 12, 11.5, 6 ],
|
||||
"to": [ 13, 12.5, 10 ],
|
||||
"from": [ 7.5, 13.25, 5 ],
|
||||
"to": [ 8.5, 14.75, 11 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 6, 13, 10 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 6, 13, 10 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 3.5, 4, 4.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 3.5, 13, 4.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 6, 3.5, 10, 4.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 6, 3.5, 10, 4.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 1.25, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 1.25, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 5, 1.25, 11, 2.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 5, 1.25, 11, 2.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box7",
|
||||
"from": [ 12, 3.5, 6 ],
|
||||
"to": [ 13, 4.5, 10 ],
|
||||
"from": [ 7.5, 1.25, 5 ],
|
||||
"to": [ 8.5, 2.75, 11 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 6, 13, 10 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 6, 13, 10 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 11.5, 4, 12.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 11.5, 13, 12.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 6, 11.5, 10, 12.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 6, 11.5, 10, 12.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 13.25, 8.5, 14.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 13.25, 8.5, 14.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 5, 13.25, 11, 14.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 5, 13.25, 11, 14.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box16",
|
||||
"from": [ 12, 6, 3.5 ],
|
||||
"to": [ 13, 10, 4.5 ],
|
||||
"from": [ 7.5, 5, 1.25 ],
|
||||
"to": [ 8.5, 11, 2.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 11.5, 13, 12.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 3.5, 13, 4.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 6, 4, 10 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 6, 13, 10 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 3.5, 6, 4.5, 10 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11.5, 6, 12.5, 10 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 13.25, 8.5, 14.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 1.25, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 1.25, 5, 2.75, 11 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 13.25, 5, 14.75, 11 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box16",
|
||||
"from": [ 12, 6, 11.5 ],
|
||||
"to": [ 13, 10, 12.5 ],
|
||||
"from": [ 7.5, 5, 13.25 ],
|
||||
"to": [ 8.5, 11, 14.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 3.5, 13, 4.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 11.5, 13, 12.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 6, 4, 10 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 6, 13, 10 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11.5, 6, 12.5, 10 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 3.5, 6, 4.5, 10 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 1.25, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 13.25, 8.5, 14.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 13.25, 5, 14.75, 11 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 1.25, 5, 2.75, 11 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box24",
|
||||
"from": [ 12, 5.5, 4.5 ],
|
||||
"to": [ 13, 10.5, 5.5 ],
|
||||
"from": [ 7.5, 4.25, 2.75 ],
|
||||
"to": [ 8.5, 11.75, 4.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 10.5, 13, 11.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 4.5, 13, 5.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 5.5, 4, 10.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 5.5, 13, 10.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 4.5, 5.5, 5.5, 10.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 10.5, 5.5, 11.5, 10.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 11.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 2.75, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 4.25, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 4.25, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 2.75, 4.25, 4.25, 11.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11.75, 4.25, 13.25, 11.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box24",
|
||||
"from": [ 12, 5.5, 10.5 ],
|
||||
"to": [ 13, 10.5, 11.5 ],
|
||||
"from": [ 7.5, 4.25, 11.75 ],
|
||||
"to": [ 8.5, 11.75, 13.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 4.5, 13, 5.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 10.5, 13, 11.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 5.5, 4, 10.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 5.5, 13, 10.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 10.5, 5.5, 11.5, 10.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 4.5, 5.5, 5.5, 10.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 2.75, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 11.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 4.25, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 4.25, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11.75, 4.25, 13.25, 11.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 2.75, 4.25, 4.25, 11.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box28",
|
||||
"from": [ 12, 4.5, 5.5 ],
|
||||
"to": [ 13, 11.5, 10.5 ],
|
||||
"from": [ 7.5, 2.75, 4.25 ],
|
||||
"to": [ 8.5, 13.25, 11.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 5.5, 13, 10.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 5.5, 13, 10.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 4.5, 4, 11.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 4.5, 13, 11.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 5.5, 4.5, 10.5, 11.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 5.5, 4.5, 10.5, 11.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 4.25, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 4.25, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 2.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 2.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 4.25, 2.75, 11.75, 13.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 4.25, 2.75, 11.75, 13.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 10, 4 ],
|
||||
"to": [ 13, 10.5, 4.5 ],
|
||||
"from": [ 7.5, 11, 2 ],
|
||||
"to": [ 8.5, 11.75, 2.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 11.5, 13, 12 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 4, 13, 4.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 5.5, 4, 6 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 5.5, 13, 6 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 4, 5.5, 4.5, 6 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11.5, 5.5, 12, 6 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 2, 4.25, 2.75, 5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 13.25, 4.25, 14, 5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 10.5, 4.5 ],
|
||||
"to": [ 13, 11, 5 ],
|
||||
"from": [ 7.5, 11.75, 2.75 ],
|
||||
"to": [ 8.5, 12.5, 3.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 11, 13, 11.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 4.5, 13, 5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 5, 4, 5.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 5, 13, 5.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 4.5, 5, 5, 5.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11, 5, 11.5, 5.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 12.5, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 2.75, 8.5, 3.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 2.75, 3.5, 3.5, 4.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 12.5, 3.5, 13.25, 4.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 10.5, 5 ],
|
||||
"to": [ 13, 11.5, 5.5 ],
|
||||
"from": [ 7.5, 11.75, 3.5 ],
|
||||
"to": [ 8.5, 13.25, 4.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 10.5, 13, 11 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 5, 13, 5.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 4.5, 4, 5.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 4.5, 13, 5.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 5, 4.5, 5.5, 5.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 10.5, 4.5, 11, 5.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 2.75, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 2.75, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 3.5, 2.75, 4.25, 4.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11.75, 2.75, 12.5, 4.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 4.5, 5 ],
|
||||
"to": [ 13, 5.5, 5.5 ],
|
||||
"from": [ 7.5, 2.75, 3.5 ],
|
||||
"to": [ 8.5, 4.25, 4.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 10.5, 13, 11 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 5, 13, 5.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 10.5, 4, 11.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 10.5, 13, 11.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 5, 10.5, 5.5, 11.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 10.5, 10.5, 11, 11.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 11.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 11.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 3.5, 11.75, 4.25, 13.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11.75, 11.75, 12.5, 13.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 10.5, 10.5 ],
|
||||
"to": [ 13, 11.5, 11 ],
|
||||
"from": [ 7.5, 11.75, 11.75 ],
|
||||
"to": [ 8.5, 13.25, 12.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 5, 13, 5.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 10.5, 13, 11 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 4.5, 4, 5.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 4.5, 13, 5.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 10.5, 4.5, 11, 5.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 5, 4.5, 5.5, 5.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 2.75, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 2.75, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11.75, 2.75, 12.5, 4.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 3.5, 2.75, 4.25, 4.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 4.5, 10.5 ],
|
||||
"to": [ 13, 5.5, 11 ],
|
||||
"from": [ 7.5, 2.75, 11.75 ],
|
||||
"to": [ 8.5, 4.25, 12.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 5, 13, 5.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 10.5, 13, 11 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 10.5, 4, 11.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 10.5, 13, 11.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 10.5, 10.5, 11, 11.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 5, 10.5, 5.5, 11.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 11.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 11.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11.75, 11.75, 12.5, 13.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 3.5, 11.75, 4.25, 13.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 11.5, 5.5 ],
|
||||
"to": [ 13, 12, 6 ],
|
||||
"from": [ 7.5, 13.25, 4.25 ],
|
||||
"to": [ 8.5, 14, 5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 10, 13, 10.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 5.5, 13, 6 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 4, 4, 4.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 4, 13, 4.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 5.5, 4, 6, 4.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 10, 4, 10.5, 4.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 4.25, 2, 5, 2.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11, 2, 11.75, 2.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 5.5, 4 ],
|
||||
"to": [ 13, 6, 4.5 ],
|
||||
"from": [ 7.5, 4.25, 2 ],
|
||||
"to": [ 8.5, 5, 2.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 11.5, 13, 12 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 4, 13, 4.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 10, 4, 10.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 10, 13, 10.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 4, 10, 4.5, 10.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11.5, 10, 12, 10.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 2, 11, 2.75, 11.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 13.25, 11, 14, 11.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 5, 4.5 ],
|
||||
"to": [ 13, 5.5, 5 ],
|
||||
"from": [ 7.5, 3.5, 2.75 ],
|
||||
"to": [ 8.5, 4.25, 3.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 11, 13, 11.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 4.5, 13, 5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 10.5, 4, 11 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 10.5, 13, 11 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 4.5, 10.5, 5, 11 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11, 10.5, 11.5, 11 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 12.5, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 2.75, 8.5, 3.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 2.75, 11.75, 3.5, 12.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 12.5, 11.75, 13.25, 12.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 4, 5.5 ],
|
||||
"to": [ 13, 4.5, 6 ],
|
||||
"from": [ 7.5, 2, 4.25 ],
|
||||
"to": [ 8.5, 2.75, 5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 10, 13, 10.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 5.5, 13, 6 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 11.5, 4, 12 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 11.5, 13, 12 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 5.5, 11.5, 6, 12 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 10, 11.5, 10.5, 12 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 4.25, 13.25, 5, 14 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11, 13.25, 11.75, 14 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 4, 10 ],
|
||||
"to": [ 13, 4.5, 10.5 ],
|
||||
"from": [ 7.5, 2, 11 ],
|
||||
"to": [ 8.5, 2.75, 11.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 5.5, 13, 6 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 10, 13, 10.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 11.5, 4, 12 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 11.5, 13, 12 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 10, 11.5, 10.5, 12 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 5.5, 11.5, 6, 12 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11, 13.25, 11.75, 14 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 4.25, 13.25, 5, 14 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 5, 11 ],
|
||||
"to": [ 13, 5.5, 11.5 ],
|
||||
"from": [ 7.5, 3.5, 12.5 ],
|
||||
"to": [ 8.5, 4.25, 13.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 4.5, 13, 5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 11, 13, 11.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 10.5, 4, 11 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 10.5, 13, 11 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11, 10.5, 11.5, 11 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 4.5, 10.5, 5, 11 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 2.75, 8.5, 3.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 12.5, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 12.5, 11.75, 13.25, 12.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 2.75, 11.75, 3.5, 12.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 5.5, 11.5 ],
|
||||
"to": [ 13, 6, 12 ],
|
||||
"from": [ 7.5, 4.25, 13.25 ],
|
||||
"to": [ 8.5, 5, 14 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 4, 13, 4.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 11.5, 13, 12 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 10, 4, 10.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 10, 13, 10.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11.5, 10, 12, 10.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 4, 10, 4.5, 10.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 13.25, 11, 14, 11.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 2, 11, 2.75, 11.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 11.5, 10 ],
|
||||
"to": [ 13, 12, 10.5 ],
|
||||
"from": [ 7.5, 13.25, 11 ],
|
||||
"to": [ 8.5, 14, 11.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 5.5, 13, 6 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 10, 13, 10.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 4, 4, 4.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 4, 13, 4.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 10, 4, 10.5, 4.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 5.5, 4, 6, 4.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11, 2, 11.75, 2.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 4.25, 2, 5, 2.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 10.5, 11 ],
|
||||
"to": [ 13, 11, 11.5 ],
|
||||
"from": [ 7.5, 11.75, 12.5 ],
|
||||
"to": [ 8.5, 12.5, 13.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 4.5, 13, 5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 11, 13, 11.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 5, 4, 5.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 5, 13, 5.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11, 5, 11.5, 5.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 4.5, 5, 5, 5.5 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 2.75, 8.5, 3.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 12.5, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 12.5, 3.5, 13.25, 4.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 2.75, 3.5, 3.5, 4.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 12, 10, 11.5 ],
|
||||
"to": [ 13, 10.5, 12 ],
|
||||
"from": [ 7.5, 11, 13.25 ],
|
||||
"to": [ 8.5, 11.75, 14 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12, 4, 13, 4.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 12, 11.5, 13, 12 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 3, 5.5, 4, 6 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 12, 5.5, 13, 6 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11.5, 5.5, 12, 6 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 4, 5.5, 4.5, 6 ], "texture": "#texture" }
|
||||
"down": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 13.25, 4.25, 14, 5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 2, 4.25, 2.75, 5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 7, 3.5 ],
|
||||
"to": [ 12.75, 8, 4 ],
|
||||
"rotation": { "origin": [ 12.25, 8, 4 ], "axis": "x", "angle": 45 },
|
||||
"from": [ 7.75, 6.5, 1.25 ],
|
||||
"to": [ 8.25, 8, 2 ],
|
||||
"rotation": { "origin": [ 7.75, 8, 2 ], "axis": "x", "angle": 45 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 12.25, 3.5, 12.75, 4 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 12, 12.75, 12.5 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 8.5, 12.25, 7.5 ], "texture": "#light" },
|
||||
"south": { "uv": [ 3.75, 8.5, 3.25, 7.5 ], "texture": "#light" },
|
||||
"west": { "uv": [ 3.5, 7.5, 4, 8.5 ], "texture": "#light", "rotation": 180 },
|
||||
"east": { "uv": [ 12, 7.5, 12.5, 8.5 ], "texture": "#light", "rotation": 180 }
|
||||
"down": { "uv": [ 7.75, 14.84099, 8.25, 15.59099 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 0.4090099, 8.25, 1.15901 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 7.03033, 8.25, 8.53033 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 7.03033, 8.25, 8.53033 ], "texture": "#light" },
|
||||
"west": { "uv": [ 0.4090095, 7.03033, 1.159009, 8.53033 ], "texture": "#light" },
|
||||
"east": { "uv": [ 14.84099, 7.03033, 15.59099, 8.53033 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 12, 8 ],
|
||||
"to": [ 12.75, 13, 8.5 ],
|
||||
"rotation": { "origin": [ 12.25, 12, 8 ], "axis": "x", "angle": -45 },
|
||||
"from": [ 7.75, 14, 8 ],
|
||||
"to": [ 8.25, 15.5, 8.75 ],
|
||||
"rotation": { "origin": [ 7.75, 14, 8 ], "axis": "x", "angle": -45 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 12.25, 8, 12.75, 8.5 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 7.5, 12.75, 8 ], "texture": "#light" },
|
||||
"north": { "uv": [ 3.25, 2.5, 3.75, 3.5 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 2.5, 12.75, 3.5 ], "texture": "#light" },
|
||||
"west": { "uv": [ 7.5, 2.5, 8, 3.5 ], "texture": "#light" },
|
||||
"east": { "uv": [ 8, 2.5, 8.5, 3.5 ], "texture": "#light" }
|
||||
"down": { "uv": [ 7.75, 7.25, 8.25, 8 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 8, 8.25, 8.75 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 0.5, 8.25, 2 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 0.5, 8.25, 2 ], "texture": "#light" },
|
||||
"west": { "uv": [ 8, 0.5, 8.75, 2 ], "texture": "#light" },
|
||||
"east": { "uv": [ 7.25, 0.5, 8, 2 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 3, 7.5 ],
|
||||
"to": [ 12.75, 4, 8 ],
|
||||
"rotation": { "origin": [ 12.25, 4, 8 ], "axis": "x", "angle": -45 },
|
||||
"from": [ 7.75, 0.5, 7.25 ],
|
||||
"to": [ 8.25, 2, 8 ],
|
||||
"rotation": { "origin": [ 7.75, 2, 8 ], "axis": "x", "angle": -45 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 12.25, 8.06066, 12.75, 8.56066 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 7.439341, 12.75, 7.939341 ], "texture": "#light" },
|
||||
"north": { "uv": [ 3.25, 11.85355, 3.75, 12.85355 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 11.85355, 12.75, 12.85355 ], "texture": "#light" },
|
||||
"west": { "uv": [ 7.43934, 11.85355, 7.93934, 12.85355 ], "texture": "#light" },
|
||||
"east": { "uv": [ 8.06066, 11.85355, 8.56066, 12.85355 ], "texture": "#light" }
|
||||
"down": { "uv": [ 7.75, 6.719669, 8.25, 7.469669 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 8.530331, 8.25, 9.280331 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 14.09099, 8.25, 15.59099 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 14.09099, 8.25, 15.59099 ], "texture": "#light" },
|
||||
"west": { "uv": [ 8.530331, 14.09099, 9.280331, 15.59099 ], "texture": "#light" },
|
||||
"east": { "uv": [ 6.719669, 14.09099, 7.469669, 15.59099 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 8, 12 ],
|
||||
"to": [ 12.75, 9, 12.5 ],
|
||||
"rotation": { "origin": [ 12.25, 8, 12 ], "axis": "x", "angle": 45 },
|
||||
"from": [ 7.75, 8, 14 ],
|
||||
"to": [ 8.25, 9.5, 14.75 ],
|
||||
"rotation": { "origin": [ 7.75, 8, 14 ], "axis": "x", "angle": 45 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 12.25, 12.85355, 12.75, 13.35355 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 2.646446, 12.75, 3.146446 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 8.56066, 12.25, 7.560659 ], "texture": "#light" },
|
||||
"south": { "uv": [ 3.75, 8.56066, 3.25, 7.560659 ], "texture": "#light" },
|
||||
"west": { "uv": [ 12.85355, 7.560659, 13.35355, 8.56066 ], "texture": "#light", "rotation": 180 },
|
||||
"east": { "uv": [ 2.646446, 7.560659, 3.146446, 8.56066 ], "texture": "#light", "rotation": 180 }
|
||||
"down": { "uv": [ 7.75, 1.25, 8.25, 2 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 14, 8.25, 14.75 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 6.5, 8.25, 8 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 6.5, 8.25, 8 ], "texture": "#light" },
|
||||
"west": { "uv": [ 14, 6.5, 14.75, 8 ], "texture": "#light" },
|
||||
"east": { "uv": [ 1.25, 6.5, 2, 8 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 9.5, 3 ],
|
||||
"to": [ 12.75, 10, 4 ],
|
||||
"rotation": { "origin": [ 12.25, 9.5, 4 ], "axis": "x", "angle": -22.5 },
|
||||
"from": [ 7.75, 10.25, 0.5 ],
|
||||
"to": [ 8.25, 11, 2 ],
|
||||
"rotation": { "origin": [ 7.75, 10.25, 2 ], "axis": "x", "angle": -22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 3.75, 6.5, 3.25, 5.5 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 5.5, 12.75, 6.5 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 4, 12.25, 3.5 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 12, 12.75, 12.5 ], "texture": "#light" },
|
||||
"west": { "uv": [ 3.5, 5.5, 4, 6.5 ], "texture": "#light", "rotation": 270 },
|
||||
"east": { "uv": [ 12, 5.5, 12.5, 6.5 ], "texture": "#light", "rotation": 90 }
|
||||
"down": { "uv": [ 7.75, 13.88582, 8.25, 15.38582 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 0.6141806, 8.25, 2.114181 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 5.574026, 8.25, 6.324026 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 5.574026, 8.25, 6.324026 ], "texture": "#light" },
|
||||
"west": { "uv": [ 0.6141806, 5.574026, 2.114181, 6.324026 ], "texture": "#light" },
|
||||
"east": { "uv": [ 13.88582, 5.574026, 15.38582, 6.324026 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 12, 9.5 ],
|
||||
"to": [ 12.75, 13, 10 ],
|
||||
"rotation": { "origin": [ 12.25, 12, 9.5 ], "axis": "x", "angle": -22.5 },
|
||||
"from": [ 7.75, 14, 10.25 ],
|
||||
"to": [ 8.25, 15.5, 11 ],
|
||||
"rotation": { "origin": [ 7.75, 14, 10.25 ], "axis": "x", "angle": -22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 3.75, 3.96194, 3.25, 3.46194 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 3.46194, 12.75, 3.96194 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 10.69134, 12.25, 9.69134 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 5.308661, 12.75, 6.308661 ], "texture": "#light" },
|
||||
"west": { "uv": [ 9.69134, 3.46194, 10.69134, 3.96194 ], "texture": "#light", "rotation": 270 },
|
||||
"east": { "uv": [ 5.30866, 3.46194, 6.30866, 3.96194 ], "texture": "#light", "rotation": 90 }
|
||||
"down": { "uv": [ 7.75, 5, 8.25, 5.75 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 10.25, 8.25, 11 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 0.5, 8.25, 2 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 0.5, 8.25, 2 ], "texture": "#light" },
|
||||
"west": { "uv": [ 10.25, 0.5, 11, 2 ], "texture": "#light" },
|
||||
"east": { "uv": [ 5, 0.5, 5.75, 2 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 6, 12 ],
|
||||
"to": [ 12.75, 6.5, 13 ],
|
||||
"rotation": { "origin": [ 12.25, 6.5, 12 ], "axis": "x", "angle": -22.5 },
|
||||
"from": [ 7.75, 5, 14 ],
|
||||
"to": [ 8.25, 5.75, 15.5 ],
|
||||
"rotation": { "origin": [ 7.75, 5.75, 14 ], "axis": "x", "angle": -22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 3.75, 10.61522, 3.25, 9.615221 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 9.615221, 12.75, 10.61522 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 12.92074, 12.25, 12.42074 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 3.079256, 12.75, 3.579256 ], "texture": "#light" },
|
||||
"west": { "uv": [ 12.42074, 9.615221, 12.92074, 10.61522 ], "texture": "#light", "rotation": 270 },
|
||||
"east": { "uv": [ 3.079256, 9.615221, 3.579256, 10.61522 ], "texture": "#light", "rotation": 90 }
|
||||
"down": { "uv": [ 7.75, 0.2129879, 8.25, 1.712988 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 14.28701, 8.25, 15.78701 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 10.19291, 8.25, 10.94291 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 10.19291, 8.25, 10.94291 ], "texture": "#light" },
|
||||
"west": { "uv": [ 14.28701, 10.19291, 15.78701, 10.94291 ], "texture": "#light" },
|
||||
"east": { "uv": [ 0.2129879, 10.19291, 1.712988, 10.94291 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 11, 4 ],
|
||||
"to": [ 12.75, 11.5, 5 ],
|
||||
"from": [ 7.75, 12.5, 2 ],
|
||||
"to": [ 8.25, 13.25, 3.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 3.75, 5, 3.25, 4 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 4, 12.75, 5 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 5, 12.25, 4.5 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 11, 12.75, 11.5 ], "texture": "#light" },
|
||||
"west": { "uv": [ 4.5, 4, 5, 5 ], "texture": "#light", "rotation": 270 },
|
||||
"east": { "uv": [ 11, 4, 11.5, 5 ], "texture": "#light", "rotation": 90 }
|
||||
"down": { "uv": [ 7.75, 12.5, 8.25, 14 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 2, 8.25, 3.5 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 2.75, 8.25, 3.5 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 2.75, 8.25, 3.5 ], "texture": "#light" },
|
||||
"west": { "uv": [ 2, 2.75, 3.5, 3.5 ], "texture": "#light" },
|
||||
"east": { "uv": [ 12.5, 2.75, 14, 3.5 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 11, 11 ],
|
||||
"to": [ 12.75, 12, 11.5 ],
|
||||
"from": [ 7.75, 12.5, 12.5 ],
|
||||
"to": [ 8.25, 14, 13.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 3.75, 5, 3.25, 4.5 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 4.5, 12.75, 5 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 12, 12.25, 11 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 4.000001, 12.75, 5.000001 ], "texture": "#light" },
|
||||
"west": { "uv": [ 11, 4.5, 12, 5 ], "texture": "#light", "rotation": 270 },
|
||||
"east": { "uv": [ 4.000001, 4.5, 5.000001, 5 ], "texture": "#light", "rotation": 90 }
|
||||
"down": { "uv": [ 7.75, 2.75, 8.25, 3.5 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 12.5, 8.25, 13.25 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 2, 8.25, 3.5 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 2, 8.25, 3.5 ], "texture": "#light" },
|
||||
"west": { "uv": [ 12.5, 2, 13.25, 3.5 ], "texture": "#light" },
|
||||
"east": { "uv": [ 2.75, 2, 3.5, 3.5 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 4.5, 11 ],
|
||||
"to": [ 12.75, 5, 12 ],
|
||||
"rotation": { "origin": [ 12.25, 5, 11 ], "axis": "x", "angle": 0 },
|
||||
"from": [ 7.75, 2.75, 12.5 ],
|
||||
"to": [ 8.25, 3.5, 14 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12.25, 11, 12.75, 12 ], "texture": "#light" },
|
||||
"up": { "uv": [ 3.75, 12, 3.25, 11 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 5, 12.25, 4.5 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 11, 12.75, 11.5 ], "texture": "#light" },
|
||||
"west": { "uv": [ 11, 11, 11.5, 12 ], "texture": "#light", "rotation": 90 },
|
||||
"east": { "uv": [ 4.5, 11, 5, 12 ], "texture": "#light", "rotation": 270 }
|
||||
"down": { "uv": [ 7.75, 2, 8.25, 3.5 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 12.5, 8.25, 14 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 12.5, 8.25, 13.25 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 12.5, 8.25, 13.25 ], "texture": "#light" },
|
||||
"west": { "uv": [ 12.5, 12.5, 14, 13.25 ], "texture": "#light" },
|
||||
"east": { "uv": [ 2, 12.5, 3.5, 13.25 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 4, 4.5 ],
|
||||
"to": [ 12.75, 5, 5 ],
|
||||
"from": [ 7.75, 2, 2.75 ],
|
||||
"to": [ 8.25, 3.5, 3.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 12.25, 11, 12.75, 11.5 ], "texture": "#light" },
|
||||
"up": { "uv": [ 3.75, 11.5, 3.25, 11 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 12, 12.25, 11 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 4, 12.75, 5 ], "texture": "#light" },
|
||||
"west": { "uv": [ 4, 11, 5, 11.5 ], "texture": "#light", "rotation": 90 },
|
||||
"east": { "uv": [ 11, 11, 12, 11.5 ], "texture": "#light", "rotation": 270 }
|
||||
"down": { "uv": [ 7.75, 12.5, 8.25, 13.25 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 2.75, 8.25, 3.5 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 12.5, 8.25, 14 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 12.5, 8.25, 14 ], "texture": "#light" },
|
||||
"west": { "uv": [ 2.75, 12.5, 3.5, 14 ], "texture": "#light" },
|
||||
"east": { "uv": [ 12.5, 12.5, 13.25, 14 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 11.5, 5 ],
|
||||
"to": [ 12.75, 12, 6.5 ],
|
||||
"rotation": { "origin": [ 12.25, 11.5, 6.5 ], "axis": "x", "angle": 22.5 },
|
||||
"from": [ 7.75, 13.25, 3.5 ],
|
||||
"to": [ 8.25, 14, 5.75 ],
|
||||
"rotation": { "origin": [ 7.75, 13.25, 5.75 ], "axis": "x", "angle": 22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 3.75, 4, 3.25, 2.5 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 2.5, 12.75, 4 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 6, 12.25, 5.5 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 10, 12.75, 10.5 ], "texture": "#light" },
|
||||
"west": { "uv": [ 5.5, 2.5, 6, 4 ], "texture": "#light", "rotation": 270 },
|
||||
"east": { "uv": [ 10, 2.5, 10.5, 4 ], "texture": "#light", "rotation": 90 }
|
||||
"down": { "uv": [ 7.75, 10.07873, 8.25, 12.32873 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 3.67127, 8.25, 5.92127 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 1.138962, 8.25, 1.888962 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 1.138962, 8.25, 1.888962 ], "texture": "#light" },
|
||||
"west": { "uv": [ 3.671271, 1.138962, 5.921271, 1.888962 ], "texture": "#light" },
|
||||
"east": { "uv": [ 10.07873, 1.138962, 12.32873, 1.888962 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 9.5, 11.5 ],
|
||||
"to": [ 12.75, 11, 12 ],
|
||||
"rotation": { "origin": [ 12.25, 9.5, 11.5 ], "axis": "x", "angle": 22.5 },
|
||||
"from": [ 7.75, 10.25, 13.25 ],
|
||||
"to": [ 8.25, 12.5, 14 ],
|
||||
"rotation": { "origin": [ 7.75, 10.25, 13.25 ], "axis": "x", "angle": 22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 3.75, 5.96194, 3.25, 5.46194 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 5.46194, 12.75, 5.96194 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 13.30866, 12.25, 11.80866 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 2.691342, 12.75, 4.191341 ], "texture": "#light" },
|
||||
"west": { "uv": [ 11.80866, 5.46194, 13.30866, 5.96194 ], "texture": "#light", "rotation": 270 },
|
||||
"east": { "uv": [ 2.691342, 5.46194, 4.191342, 5.96194 ], "texture": "#light", "rotation": 90 }
|
||||
"down": { "uv": [ 7.75, 2, 8.25, 2.75 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 13.25, 8.25, 14 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 3.5, 8.25, 5.75 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 3.5, 8.25, 5.75 ], "texture": "#light" },
|
||||
"west": { "uv": [ 13.25, 3.5, 14, 5.75 ], "texture": "#light" },
|
||||
"east": { "uv": [ 2, 3.5, 2.75, 5.75 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 4, 9.5 ],
|
||||
"to": [ 12.75, 4.5, 11 ],
|
||||
"rotation": { "origin": [ 12.25, 4.5, 9.5 ], "axis": "x", "angle": 22.5 },
|
||||
"from": [ 7.75, 2, 10.25 ],
|
||||
"to": [ 8.25, 2.75, 12.5 ],
|
||||
"rotation": { "origin": [ 7.75, 2.75, 10.25 ], "axis": "x", "angle": 22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 3.75, 13.19448, 3.25, 11.69448 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 11.69448, 12.75, 13.19448 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 9.964035, 12.25, 9.464035 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 6.035965, 12.75, 6.535965 ], "texture": "#light" },
|
||||
"west": { "uv": [ 9.464035, 11.69448, 9.964035, 13.19448 ], "texture": "#light", "rotation": 270 },
|
||||
"east": { "uv": [ 6.035965, 11.69448, 6.535965, 13.19448 ], "texture": "#light", "rotation": 90 }
|
||||
"down": { "uv": [ 7.75, 3.787012, 8.25, 6.037012 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 9.962988, 8.25, 12.21299 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 13.19291, 8.25, 13.94291 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 13.19291, 8.25, 13.94291 ], "texture": "#light" },
|
||||
"west": { "uv": [ 9.962988, 13.19291, 12.21299, 13.94291 ], "texture": "#light" },
|
||||
"east": { "uv": [ 3.787012, 13.19291, 6.037012, 13.94291 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 5, 4 ],
|
||||
"to": [ 12.75, 6.5, 4.5 ],
|
||||
"rotation": { "origin": [ 12.25, 6.5, 4.5 ], "axis": "x", "angle": 22.5 },
|
||||
"from": [ 7.75, 3.5, 2 ],
|
||||
"to": [ 8.25, 5.75, 2.75 ],
|
||||
"rotation": { "origin": [ 7.75, 5.75, 2.75 ], "axis": "x", "angle": 22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 3.75, 9.925975, 3.25, 9.425975 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 9.425975, 12.75, 9.925975 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 4.114182, 12.25, 2.614182 ], "texture": "#light" },
|
||||
"south": { "uv": [ 12.25, 11.88582, 12.75, 13.38582 ], "texture": "#light" },
|
||||
"west": { "uv": [ 2.614181, 9.425975, 4.114181, 9.925975 ], "texture": "#light", "rotation": 270 },
|
||||
"east": { "uv": [ 11.88582, 9.425975, 13.38582, 9.925975 ], "texture": "#light", "rotation": 90 }
|
||||
"down": { "uv": [ 7.75, 14.05395, 8.25, 14.80395 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 1.196053, 8.25, 1.946053 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 9.791717, 8.25, 12.04172 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 9.791717, 8.25, 12.04172 ], "texture": "#light" },
|
||||
"west": { "uv": [ 1.196053, 9.791717, 1.946053, 12.04172 ], "texture": "#light" },
|
||||
"east": { "uv": [ 14.05395, 9.791717, 14.80395, 12.04172 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 12.25, 3, 6 ],
|
||||
"to": [ 12.75, 4, 6.5 ],
|
||||
"rotation": { "origin": [ 12.25, 4, 6.5 ], "axis": "x", "angle": -22.5 },
|
||||
"from": [ 7.75, 0.5, 5 ],
|
||||
"to": [ 8.25, 2, 5.75 ],
|
||||
"rotation": { "origin": [ 7.75, 2, 5.75 ], "axis": "x", "angle": -22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 12.25, 3.5, 12.75, 4 ], "texture": "#light" },
|
||||
"up": { "uv": [ 12.25, 12, 12.75, 12.5 ], "texture": "#light" },
|
||||
"north": { "uv": [ 12.75, 6.5, 12.25, 5.5 ], "texture": "#light" },
|
||||
"south": { "uv": [ 3.75, 6.5, 3.25, 5.5 ], "texture": "#light" },
|
||||
"west": { "uv": [ 3.5, 5.5, 4, 6.5 ], "texture": "#light", "rotation": 180 },
|
||||
"east": { "uv": [ 12, 5.5, 12.5, 6.5 ], "texture": "#light", "rotation": 180 }
|
||||
"down": { "uv": [ 7.75, 9.618885, 8.25, 10.36889 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 5.631115, 8.25, 6.381115 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 14.17283, 8.25, 15.67283 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 14.17283, 8.25, 15.67283 ], "texture": "#light" },
|
||||
"west": { "uv": [ 5.631115, 14.17283, 6.381115, 15.67283 ], "texture": "#light" },
|
||||
"east": { "uv": [ 9.618885, 14.17283, 10.36889, 15.67283 ], "texture": "#light" }
|
||||
}
|
||||
}
|
||||
],
|
||||
|
||||
@@ -0,0 +1,573 @@
|
||||
{
|
||||
"__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio",
|
||||
"textures": {
|
||||
"particle": "blocks/e_particle",
|
||||
"texture": "blocks/e_texture",
|
||||
"light": "blocks/iron_ingot_light"
|
||||
},
|
||||
"elements": [
|
||||
{
|
||||
"__comment": "Box17",
|
||||
"from": [ 5, 7.5, 7.5 ],
|
||||
"to": [ 11, 8.5, 8.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 5, 7.5, 11, 8.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 5, 7.5, 11, 8.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 5, 7.5, 11, 8.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 5, 7.5, 11, 8.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 7.5, 7.5, 8.5, 8.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 7.5, 7.5, 8.5, 8.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box7",
|
||||
"from": [ 7.5, 13.25, 5 ],
|
||||
"to": [ 8.5, 14.75, 11 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 1.25, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 1.25, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 5, 1.25, 11, 2.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 5, 1.25, 11, 2.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box7",
|
||||
"from": [ 7.5, 1.25, 5 ],
|
||||
"to": [ 8.5, 2.75, 11 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 13.25, 8.5, 14.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 13.25, 8.5, 14.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 5, 13.25, 11, 14.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 5, 13.25, 11, 14.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box16",
|
||||
"from": [ 7.5, 5, 1.25 ],
|
||||
"to": [ 8.5, 11, 2.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 13.25, 8.5, 14.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 1.25, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 1.25, 5, 2.75, 11 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 13.25, 5, 14.75, 11 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box16",
|
||||
"from": [ 7.5, 5, 13.25 ],
|
||||
"to": [ 8.5, 11, 14.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 1.25, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 13.25, 8.5, 14.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 5, 8.5, 11 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 13.25, 5, 14.75, 11 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 1.25, 5, 2.75, 11 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box24",
|
||||
"from": [ 7.5, 4.25, 2.75 ],
|
||||
"to": [ 8.5, 11.75, 4.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 11.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 2.75, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 4.25, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 4.25, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 2.75, 4.25, 4.25, 11.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11.75, 4.25, 13.25, 11.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box24",
|
||||
"from": [ 7.5, 4.25, 11.75 ],
|
||||
"to": [ 8.5, 11.75, 13.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 2.75, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 11.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 4.25, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 4.25, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11.75, 4.25, 13.25, 11.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 2.75, 4.25, 4.25, 11.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box28",
|
||||
"from": [ 7.5, 2.75, 4.25 ],
|
||||
"to": [ 8.5, 13.25, 11.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 4.25, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 4.25, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 2.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 2.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 4.25, 2.75, 11.75, 13.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 4.25, 2.75, 11.75, 13.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 11, 2 ],
|
||||
"to": [ 8.5, 11.75, 2.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 2, 4.25, 2.75, 5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 13.25, 4.25, 14, 5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 11.75, 2.75 ],
|
||||
"to": [ 8.5, 12.5, 3.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 12.5, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 2.75, 8.5, 3.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 2.75, 3.5, 3.5, 4.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 12.5, 3.5, 13.25, 4.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 11.75, 3.5 ],
|
||||
"to": [ 8.5, 13.25, 4.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 2.75, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 2.75, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 3.5, 2.75, 4.25, 4.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11.75, 2.75, 12.5, 4.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 2.75, 3.5 ],
|
||||
"to": [ 8.5, 4.25, 4.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 11.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 11.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 3.5, 11.75, 4.25, 13.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11.75, 11.75, 12.5, 13.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 11.75, 11.75 ],
|
||||
"to": [ 8.5, 13.25, 12.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 2.75, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 2.75, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11.75, 2.75, 12.5, 4.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 3.5, 2.75, 4.25, 4.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 2.75, 11.75 ],
|
||||
"to": [ 8.5, 4.25, 12.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 11.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 11.75, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11.75, 11.75, 12.5, 13.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 3.5, 11.75, 4.25, 13.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 13.25, 4.25 ],
|
||||
"to": [ 8.5, 14, 5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 4.25, 2, 5, 2.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11, 2, 11.75, 2.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 4.25, 2 ],
|
||||
"to": [ 8.5, 5, 2.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 2, 11, 2.75, 11.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 13.25, 11, 14, 11.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 3.5, 2.75 ],
|
||||
"to": [ 8.5, 4.25, 3.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 12.5, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 2.75, 8.5, 3.5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 2.75, 11.75, 3.5, 12.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 12.5, 11.75, 13.25, 12.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 2, 4.25 ],
|
||||
"to": [ 8.5, 2.75, 5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 4.25, 13.25, 5, 14 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 11, 13.25, 11.75, 14 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 2, 11 ],
|
||||
"to": [ 8.5, 2.75, 11.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11, 13.25, 11.75, 14 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 4.25, 13.25, 5, 14 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 3.5, 12.5 ],
|
||||
"to": [ 8.5, 4.25, 13.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 2.75, 8.5, 3.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 12.5, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 11.75, 8.5, 12.5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 12.5, 11.75, 13.25, 12.5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 2.75, 11.75, 3.5, 12.5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 4.25, 13.25 ],
|
||||
"to": [ 8.5, 5, 14 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 13.25, 11, 14, 11.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 2, 11, 2.75, 11.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 13.25, 11 ],
|
||||
"to": [ 8.5, 14, 11.75 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 11, 8.5, 11.75 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 11, 2, 11.75, 2.75 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 4.25, 2, 5, 2.75 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 11.75, 12.5 ],
|
||||
"to": [ 8.5, 12.5, 13.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 2.75, 8.5, 3.5 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 12.5, 8.5, 13.25 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 3.5, 8.5, 4.25 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 12.5, 3.5, 13.25, 4.25 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 2.75, 3.5, 3.5, 4.25 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box30",
|
||||
"from": [ 7.5, 11, 13.25 ],
|
||||
"to": [ 8.5, 11.75, 14 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.5, 2, 8.5, 2.75 ], "texture": "#texture" },
|
||||
"up": { "uv": [ 7.5, 13.25, 8.5, 14 ], "texture": "#texture" },
|
||||
"north": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"south": { "uv": [ 7.5, 4.25, 8.5, 5 ], "texture": "#texture" },
|
||||
"west": { "uv": [ 13.25, 4.25, 14, 5 ], "texture": "#texture" },
|
||||
"east": { "uv": [ 2, 4.25, 2.75, 5 ], "texture": "#texture" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 6.5, 1.25 ],
|
||||
"to": [ 8.25, 8, 2 ],
|
||||
"rotation": { "origin": [ 7.75, 8, 2 ], "axis": "x", "angle": 45 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 14.84099, 8.25, 15.59099 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 0.4090099, 8.25, 1.15901 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 7.03033, 8.25, 8.53033 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 7.03033, 8.25, 8.53033 ], "texture": "#light" },
|
||||
"west": { "uv": [ 0.4090095, 7.03033, 1.159009, 8.53033 ], "texture": "#light" },
|
||||
"east": { "uv": [ 14.84099, 7.03033, 15.59099, 8.53033 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 14, 8 ],
|
||||
"to": [ 8.25, 15.5, 8.75 ],
|
||||
"rotation": { "origin": [ 7.75, 14, 8 ], "axis": "x", "angle": -45 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 7.25, 8.25, 8 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 8, 8.25, 8.75 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 0.5, 8.25, 2 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 0.5, 8.25, 2 ], "texture": "#light" },
|
||||
"west": { "uv": [ 8, 0.5, 8.75, 2 ], "texture": "#light" },
|
||||
"east": { "uv": [ 7.25, 0.5, 8, 2 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 0.5, 7.25 ],
|
||||
"to": [ 8.25, 2, 8 ],
|
||||
"rotation": { "origin": [ 7.75, 2, 8 ], "axis": "x", "angle": -45 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 6.719669, 8.25, 7.469669 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 8.530331, 8.25, 9.280331 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 14.09099, 8.25, 15.59099 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 14.09099, 8.25, 15.59099 ], "texture": "#light" },
|
||||
"west": { "uv": [ 8.530331, 14.09099, 9.280331, 15.59099 ], "texture": "#light" },
|
||||
"east": { "uv": [ 6.719669, 14.09099, 7.469669, 15.59099 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 8, 14 ],
|
||||
"to": [ 8.25, 9.5, 14.75 ],
|
||||
"rotation": { "origin": [ 7.75, 8, 14 ], "axis": "x", "angle": 45 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 1.25, 8.25, 2 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 14, 8.25, 14.75 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 6.5, 8.25, 8 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 6.5, 8.25, 8 ], "texture": "#light" },
|
||||
"west": { "uv": [ 14, 6.5, 14.75, 8 ], "texture": "#light" },
|
||||
"east": { "uv": [ 1.25, 6.5, 2, 8 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 10.25, 0.5 ],
|
||||
"to": [ 8.25, 11, 2 ],
|
||||
"rotation": { "origin": [ 7.75, 10.25, 2 ], "axis": "x", "angle": -22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 13.88582, 8.25, 15.38582 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 0.6141806, 8.25, 2.114181 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 5.574026, 8.25, 6.324026 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 5.574026, 8.25, 6.324026 ], "texture": "#light" },
|
||||
"west": { "uv": [ 0.6141806, 5.574026, 2.114181, 6.324026 ], "texture": "#light" },
|
||||
"east": { "uv": [ 13.88582, 5.574026, 15.38582, 6.324026 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 14, 10.25 ],
|
||||
"to": [ 8.25, 15.5, 11 ],
|
||||
"rotation": { "origin": [ 7.75, 14, 10.25 ], "axis": "x", "angle": -22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 5, 8.25, 5.75 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 10.25, 8.25, 11 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 0.5, 8.25, 2 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 0.5, 8.25, 2 ], "texture": "#light" },
|
||||
"west": { "uv": [ 10.25, 0.5, 11, 2 ], "texture": "#light" },
|
||||
"east": { "uv": [ 5, 0.5, 5.75, 2 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 5, 14 ],
|
||||
"to": [ 8.25, 5.75, 15.5 ],
|
||||
"rotation": { "origin": [ 7.75, 5.75, 14 ], "axis": "x", "angle": -22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 0.2129879, 8.25, 1.712988 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 14.28701, 8.25, 15.78701 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 10.19291, 8.25, 10.94291 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 10.19291, 8.25, 10.94291 ], "texture": "#light" },
|
||||
"west": { "uv": [ 14.28701, 10.19291, 15.78701, 10.94291 ], "texture": "#light" },
|
||||
"east": { "uv": [ 0.2129879, 10.19291, 1.712988, 10.94291 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 12.5, 2 ],
|
||||
"to": [ 8.25, 13.25, 3.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 12.5, 8.25, 14 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 2, 8.25, 3.5 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 2.75, 8.25, 3.5 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 2.75, 8.25, 3.5 ], "texture": "#light" },
|
||||
"west": { "uv": [ 2, 2.75, 3.5, 3.5 ], "texture": "#light" },
|
||||
"east": { "uv": [ 12.5, 2.75, 14, 3.5 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 12.5, 12.5 ],
|
||||
"to": [ 8.25, 14, 13.25 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 2.75, 8.25, 3.5 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 12.5, 8.25, 13.25 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 2, 8.25, 3.5 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 2, 8.25, 3.5 ], "texture": "#light" },
|
||||
"west": { "uv": [ 12.5, 2, 13.25, 3.5 ], "texture": "#light" },
|
||||
"east": { "uv": [ 2.75, 2, 3.5, 3.5 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 2.75, 12.5 ],
|
||||
"to": [ 8.25, 3.5, 14 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 2, 8.25, 3.5 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 12.5, 8.25, 14 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 12.5, 8.25, 13.25 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 12.5, 8.25, 13.25 ], "texture": "#light" },
|
||||
"west": { "uv": [ 12.5, 12.5, 14, 13.25 ], "texture": "#light" },
|
||||
"east": { "uv": [ 2, 12.5, 3.5, 13.25 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 2, 2.75 ],
|
||||
"to": [ 8.25, 3.5, 3.5 ],
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 12.5, 8.25, 13.25 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 2.75, 8.25, 3.5 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 12.5, 8.25, 14 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 12.5, 8.25, 14 ], "texture": "#light" },
|
||||
"west": { "uv": [ 2.75, 12.5, 3.5, 14 ], "texture": "#light" },
|
||||
"east": { "uv": [ 12.5, 12.5, 13.25, 14 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 13.25, 3.5 ],
|
||||
"to": [ 8.25, 14, 5.75 ],
|
||||
"rotation": { "origin": [ 7.75, 13.25, 5.75 ], "axis": "x", "angle": 22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 10.07873, 8.25, 12.32873 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 3.67127, 8.25, 5.92127 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 1.138962, 8.25, 1.888962 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 1.138962, 8.25, 1.888962 ], "texture": "#light" },
|
||||
"west": { "uv": [ 3.671271, 1.138962, 5.921271, 1.888962 ], "texture": "#light" },
|
||||
"east": { "uv": [ 10.07873, 1.138962, 12.32873, 1.888962 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 10.25, 13.25 ],
|
||||
"to": [ 8.25, 12.5, 14 ],
|
||||
"rotation": { "origin": [ 7.75, 10.25, 13.25 ], "axis": "x", "angle": 22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 2, 8.25, 2.75 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 13.25, 8.25, 14 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 3.5, 8.25, 5.75 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 3.5, 8.25, 5.75 ], "texture": "#light" },
|
||||
"west": { "uv": [ 13.25, 3.5, 14, 5.75 ], "texture": "#light" },
|
||||
"east": { "uv": [ 2, 3.5, 2.75, 5.75 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 2, 10.25 ],
|
||||
"to": [ 8.25, 2.75, 12.5 ],
|
||||
"rotation": { "origin": [ 7.75, 2.75, 10.25 ], "axis": "x", "angle": 22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 3.787012, 8.25, 6.037012 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 9.962988, 8.25, 12.21299 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 13.19291, 8.25, 13.94291 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 13.19291, 8.25, 13.94291 ], "texture": "#light" },
|
||||
"west": { "uv": [ 9.962988, 13.19291, 12.21299, 13.94291 ], "texture": "#light" },
|
||||
"east": { "uv": [ 3.787012, 13.19291, 6.037012, 13.94291 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 3.5, 2 ],
|
||||
"to": [ 8.25, 5.75, 2.75 ],
|
||||
"rotation": { "origin": [ 7.75, 5.75, 2.75 ], "axis": "x", "angle": 22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 14.05395, 8.25, 14.80395 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 1.196053, 8.25, 1.946053 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 9.791717, 8.25, 12.04172 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 9.791717, 8.25, 12.04172 ], "texture": "#light" },
|
||||
"west": { "uv": [ 1.196053, 9.791717, 1.946053, 12.04172 ], "texture": "#light" },
|
||||
"east": { "uv": [ 14.05395, 9.791717, 14.80395, 12.04172 ], "texture": "#light" }
|
||||
}
|
||||
},
|
||||
{
|
||||
"__comment": "Box46",
|
||||
"from": [ 7.75, 0.5, 5 ],
|
||||
"to": [ 8.25, 2, 5.75 ],
|
||||
"rotation": { "origin": [ 7.75, 2, 5.75 ], "axis": "x", "angle": -22.5 },
|
||||
"faces": {
|
||||
"down": { "uv": [ 7.75, 9.618885, 8.25, 10.36889 ], "texture": "#light" },
|
||||
"up": { "uv": [ 7.75, 5.631115, 8.25, 6.381115 ], "texture": "#light" },
|
||||
"north": { "uv": [ 7.75, 14.17283, 8.25, 15.67283 ], "texture": "#light" },
|
||||
"south": { "uv": [ 7.75, 14.17283, 8.25, 15.67283 ], "texture": "#light" },
|
||||
"west": { "uv": [ 5.631115, 14.17283, 6.381115, 15.67283 ], "texture": "#light" },
|
||||
"east": { "uv": [ 9.618885, 14.17283, 10.36889, 15.67283 ], "texture": "#light" }
|
||||
}
|
||||
}
|
||||
],
|
||||
"display": {
|
||||
"thirdperson_righthand": {
|
||||
"rotation": [ 0, -90, 55 ],
|
||||
"translation": [ 0, 0.2635, 0.5 ],
|
||||
"scale": [ 0.85, 0.85, 0.85 ]
|
||||
},
|
||||
"thirdperson_lefthand": {
|
||||
"rotation": [ 0, -90, 55 ],
|
||||
"translation": [ 0, 0.2635, 0.5 ],
|
||||
"scale": [ 0.85, 0.85, 0.85 ]
|
||||
},
|
||||
"firstperson_righthand": {
|
||||
"rotation": [ 0, -90, 25 ],
|
||||
"translation": [ 1.13, 3.2, 1.13 ],
|
||||
"scale": [ 0.68, 0.68, 0.68 ]
|
||||
},
|
||||
"firstperson_lefthand": {
|
||||
"rotation": [ 0, 90, -25 ],
|
||||
"translation": [ 1.13, 3.2, 1.13 ],
|
||||
"scale": [ 0.68, 0.68, 0.68 ]
|
||||
},
|
||||
"gui": {
|
||||
"rotation": [ 30, 225, 0 ],
|
||||
"translation": [ 2, 0, 0 ],
|
||||
"scale": [ 0.625, 0.625, 0.625 ]
|
||||
},
|
||||
"ground": {
|
||||
"translation": [ 0, 3, 0 ],
|
||||
"scale": [ 0.25, 0.25, 0.25 ]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -23,7 +23,25 @@
|
||||
|
||||
"chisel_hit_finished": {
|
||||
"category": "block",
|
||||
"subtitle": "forgecraft.subtitle.chisel_hit_finishedg",
|
||||
"subtitle": "forgecraft.subtitle.chisel_hit_finished",
|
||||
"sounds": [ "forgecraft:chisel_hit_finished" ]
|
||||
},
|
||||
|
||||
"piston_engine_in": {
|
||||
"category": "block",
|
||||
"subtitle": "forgecraft.subtitle.piston_engine_in",
|
||||
"sounds": [ "forgecraft:piston_engine_in" ]
|
||||
},
|
||||
|
||||
"piston_engine_out": {
|
||||
"category": "block",
|
||||
"subtitle": "forgecraft.subtitle.piston_engine_out",
|
||||
"sounds": [ "forgecraft:piston_engine_out" ]
|
||||
},
|
||||
|
||||
"saw_machine": {
|
||||
"category": "block",
|
||||
"subtitle": "forgecraft.subtitle.saw_machine",
|
||||
"sounds": [ "forgecraft:saw_machine" ]
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Binary file not shown.
Binary file not shown.
BIN
kfc/src/main/resources/assets/forgecraft/sounds/saw_machine.ogg
Normal file
BIN
kfc/src/main/resources/assets/forgecraft/sounds/saw_machine.ogg
Normal file
Binary file not shown.
Reference in New Issue
Block a user