Merge pull request #10 from kitsushadow/featureMoreIron

Feature more iron
This commit is contained in:
Mohammad Minaie
2017-04-22 20:35:47 -04:00
committed by GitHub
1017 changed files with 11263 additions and 1112 deletions

1
1.11/.gitignore vendored
View File

@@ -15,6 +15,7 @@ logs
usercache.json usercache.json
usernamecache.json usernamecache.json
options.txt options.txt
screenshots/
# eclipse # eclipse
bin bin

View File

@@ -1,23 +1,20 @@
To-Dos To-Dos
*** Bugs *** *** Bugs ***
- [ ] Duplication Bug for Tool Repair
*** Priority *** *** Priority ***
- [ ] Make an Iron Anvil - [ ] Bloomery not accepting raw clean crucible
- [ ] Make Clean Iron Recipes and Tools - [ ] Move Ingot break into chunks logic out of the block and into the ForgeHammer
- [ ] Make Clean Ore Recipe
- [ ] Make Steel Recipes and Tools
- [ ] Make Wootz Recipes and Tools
- [ ] Add Yew - [ ] Add Yew
*** Feature Musket *** *** Feature Musket ***
- [ ] Create powder charge item (copper, charcoal, gunpowder) - [ ] Create powder charge item (copper, charcoal, gunpowder)
- [ ] Create musket round item (lead or iron nugget) - [ ] Create musket round item (lead or iron nugget)
- [ ] Create wadding item (paper) - [ ] Create wadding item (paper)
- [ ] Create soaked wick item (cordage, bucket of water, gunpowder) - [ ] Create soaked slow match item (cordage, bucket of water, gunpowder)
- [ ] Create dried wick item (soaked wick on drying rack) - [ ] Create dried slow match (soaked wick on drying rack)
- [ ] Create lit wick item (dried wick and firebow/torch/flint&steel) - [ ] Create lit slow match (dried slow match and firebow/torch/flint&steel)
- [ ] Create barrel item - [ ] Create barrel item
- [ ] Create stock item - [ ] Create stock item
- [ ] Create lock assembly item - [ ] Create lock assembly item
@@ -35,7 +32,30 @@ To-Dos
- [ ] Gui - [ ] Gui
- [ ] Crafting recipes - [ ] Crafting recipes
*** Tid-Bits ***
sed -i -- 's/iron/steel/g' *
rm *.json--
rename s/iron/steel/ iron*
*** Completed *** *** Completed ***
- [x] StoneTongs for all tool heads
- [x] ItemNBT
- [x] ItemRender
- [x] JSON
- [x] Change how bloomery does recipe cookTime
- [x] Duplication Bug for Tool Repair
- [x] Fix Breaker Render to rotate correctly
- [x] Make All Accompanying Recipes
- [x] Update blockstates with:
- [x] cleanIron
- [x] steel
- [x] wootz
- [x] Make an Iron Anvil
- [x] Check Iron Anvil creation logic
- [x] Make New Ore Tool, Tool Part, Ingot, and Chunk Assets
- [x] Make Steel Recipes and Tools
- [x] Make Wootz Recipes and Tools
- [x] Update tool parts and tool textures
- [x] Light Forge and Firebox with Firebow or Torch - [x] Light Forge and Firebox with Firebow or Torch
- [x] Any gallagher can be used to make a stone anvil - [x] Any gallagher can be used to make a stone anvil
- [x] Update Crafting for tools to include leatherStrap - [x] Update Crafting for tools to include leatherStrap
@@ -115,3 +135,45 @@ To-Dos
- [x] Crafting Recipes - [x] Crafting Recipes
0 | Default StoneTongs
1 | Empty Crucible Hot
2 | Empty Crucible Cracked Hot
================================
3 | Hot Iron Crucible
4 | Hot Cooked Iron Crucible
5 | Hot Failed Iron Crucible
6 | Hot Iron Ingot
7 | Hot Iron Chunk
--------------------------------
8 | Hot Iron Pickaxe Head
9 | Hot Iron Axe Head
10 | Hot Iron Shovel Head
11 | Hot Iron Hoe Head
================================
12 | Hot Clean Iron Crucible
13 | Hot Cooked Clean Iron Crucible
14 | Hot Failed Clean Iron Crucible
15 | Hot Clean Iron Ball
16 | Hot Clean Iron Chunk
--------------------------------
17 | Hot Clean Iron Pickaxe Head
18 | Hot Clean Iron Axe Head
19 | Hot Clean Iron Shovel Head
20 | Hot Clean Iron Hoe Head
================================
21 | Hot Steel Crucible
22 | Hot Cooked Steel Crucible
23 | Hot Failed Steel Crucible
24 | Hot Steel Ingot
25 | Hot Steel Chunk
--------------------------------
26 | Hot Steel Pickaxe Head
27 | Hot Steel Axe Head
28 | Hot Steel Shovel Head
29 | Hot Steel Hoe Head

1
1.11/banned-ips.json Normal file
View File

@@ -0,0 +1 @@
[]

1
1.11/banned-players.json Normal file
View File

@@ -0,0 +1 @@
[]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 159 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 141 B

View File

@@ -1,3 +1,3 @@
#By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula). #By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula).
#Sat Apr 01 13:44:13 EDT 2017 #Sat Apr 01 13:44:13 EDT 2017
eula=false eula=true

1
1.11/ops.json Normal file
View File

@@ -0,0 +1 @@
[]

View File

@@ -1,2 +1,38 @@
#Minecraft server properties #Minecraft server properties
#Mon Feb 13 22:08:20 EST 2017 #Tue Apr 04 17:37:36 EDT 2017
max-tick-time=60000
generator-settings=
allow-nether=true
force-gamemode=false
gamemode=0
enable-query=false
player-idle-timeout=0
difficulty=1
spawn-monsters=true
op-permission-level=4
announce-player-achievements=true
pvp=true
snooper-enabled=true
level-type=DEFAULT
hardcore=false
enable-command-block=false
max-players=20
network-compression-threshold=256
resource-pack-sha1=
max-world-size=29999984
server-port=25565
server-ip=
spawn-npcs=true
allow-flight=false
level-name=world
view-distance=10
resource-pack=
spawn-animals=true
white-list=false
generate-structures=true
online-mode=true
max-build-height=256
level-seed=
prevent-proxy-connections=false
motd=A Minecraft Server
enable-rcon=false

View File

@@ -1,20 +1,15 @@
package nmd.primal.forgecraft; package nmd.primal.forgecraft;
import com.mojang.realmsclient.gui.ChatFormatting;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.text.TextFormatting;
import net.minecraftforge.event.entity.player.ItemTooltipEvent; import net.minecraftforge.event.entity.player.ItemTooltipEvent;
import net.minecraftforge.event.entity.player.PlayerEvent;
import net.minecraftforge.fml.common.eventhandler.EventPriority; import net.minecraftforge.fml.common.eventhandler.EventPriority;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.items.tools.CustomPickaxe; import nmd.primal.forgecraft.items.tools.CustomPickaxe;
import java.util.List;
/** /**
* Created by mminaie on 3/15/17. * Created by mminaie on 3/15/17.
*/ */

View File

@@ -7,7 +7,10 @@ import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.gameevent.PlayerEvent; import net.minecraftforge.fml.common.gameevent.PlayerEvent;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.items.parts.ToolPart; import nmd.primal.forgecraft.items.parts.ToolPart;
import nmd.primal.forgecraft.items.tools.*; import nmd.primal.forgecraft.items.tools.CustomAxe;
import nmd.primal.forgecraft.items.tools.CustomHoe;
import nmd.primal.forgecraft.items.tools.CustomPickaxe;
import nmd.primal.forgecraft.items.tools.CustomShovel;
/** /**
* Created by mminaie on 3/15/17. * Created by mminaie on 3/15/17.
@@ -20,7 +23,7 @@ public class CommonEvents implements ToolNBT{
if(!event.player.getEntityWorld().isRemote) { if(!event.player.getEntityWorld().isRemote) {
if (event.crafting.getItem() == ModItems.ironpickaxe) { if (event.crafting.getItem() instanceof CustomPickaxe) {
NBTTagCompound tempTag = new NBTTagCompound(); NBTTagCompound tempTag = new NBTTagCompound();
for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots
@@ -35,7 +38,7 @@ public class CommonEvents implements ToolNBT{
} }
} }
} }
if (event.crafting.getItem() == ModItems.ironaxe) { if (event.crafting.getItem() instanceof CustomAxe) {
NBTTagCompound tempTag = new NBTTagCompound(); NBTTagCompound tempTag = new NBTTagCompound();
for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots
@@ -50,7 +53,7 @@ public class CommonEvents implements ToolNBT{
} }
} }
} }
if (event.crafting.getItem() == ModItems.ironshovel) { if (event.crafting.getItem() instanceof CustomShovel) {
NBTTagCompound tempTag = new NBTTagCompound(); NBTTagCompound tempTag = new NBTTagCompound();
for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots
@@ -68,7 +71,7 @@ public class CommonEvents implements ToolNBT{
} }
} }
} }
if (event.crafting.getItem() == ModItems.ironhoe) { if (event.crafting.getItem() instanceof CustomHoe) {
NBTTagCompound tempTag = new NBTTagCompound(); NBTTagCompound tempTag = new NBTTagCompound();
for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots
@@ -86,7 +89,7 @@ public class CommonEvents implements ToolNBT{
} }
} }
} }
if (event.crafting.getItem() == ModItems.ironaxehead) { if (event.crafting.getItem() instanceof ToolPart) {
NBTTagCompound tempTag = new NBTTagCompound(); NBTTagCompound tempTag = new NBTTagCompound();
for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots
@@ -99,15 +102,6 @@ public class CommonEvents implements ToolNBT{
Integer tempDamage = event.craftMatrix.getStackInSlot(i).getItemDamage(); Integer tempDamage = event.craftMatrix.getStackInSlot(i).getItemDamage();
event.crafting.setItemDamage(tempDamage); event.crafting.setItemDamage(tempDamage);
} }
}
}
}
if (event.crafting.getItem() == ModItems.pickaxehead) {
NBTTagCompound tempTag = new NBTTagCompound();
for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots
if (event.craftMatrix.getStackInSlot(i) != null) { // If there is an item
ItemStack a = event.craftMatrix.getStackInSlot(i); // Gets the item
if (a.getItem() instanceof CustomPickaxe) { if (a.getItem() instanceof CustomPickaxe) {
tempTag = a.getSubCompound("tags").copy(); tempTag = a.getSubCompound("tags").copy();
event.crafting.getTagCompound().setTag("tags", tempTag); event.crafting.getTagCompound().setTag("tags", tempTag);
@@ -115,15 +109,6 @@ public class CommonEvents implements ToolNBT{
Integer tempDamage = event.craftMatrix.getStackInSlot(i).getItemDamage(); Integer tempDamage = event.craftMatrix.getStackInSlot(i).getItemDamage();
event.crafting.setItemDamage(tempDamage); event.crafting.setItemDamage(tempDamage);
} }
}
}
}
if (event.crafting.getItem() == ModItems.ironshovelhead) {
NBTTagCompound tempTag = new NBTTagCompound();
for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots
if (event.craftMatrix.getStackInSlot(i) != null) { // If there is an item
ItemStack a = event.craftMatrix.getStackInSlot(i); // Gets the item
if (a.getItem() instanceof CustomShovel) { if (a.getItem() instanceof CustomShovel) {
tempTag = a.getSubCompound("tags").copy(); tempTag = a.getSubCompound("tags").copy();
event.crafting.getTagCompound().setTag("tags", tempTag); event.crafting.getTagCompound().setTag("tags", tempTag);
@@ -131,15 +116,6 @@ public class CommonEvents implements ToolNBT{
Integer tempDamage = event.craftMatrix.getStackInSlot(i).getItemDamage(); Integer tempDamage = event.craftMatrix.getStackInSlot(i).getItemDamage();
event.crafting.setItemDamage(tempDamage); event.crafting.setItemDamage(tempDamage);
} }
}
}
}
if (event.crafting.getItem() == ModItems.ironhoehead) {
NBTTagCompound tempTag = new NBTTagCompound();
for (int i = 0; i < event.craftMatrix.getSizeInventory(); i++) { // Checks all the slots
if (event.craftMatrix.getStackInSlot(i) != null) { // If there is an item
ItemStack a = event.craftMatrix.getStackInSlot(i); // Gets the item
if (a.getItem() instanceof CustomHoe) { if (a.getItem() instanceof CustomHoe) {
tempTag = a.getSubCompound("tags").copy(); tempTag = a.getSubCompound("tags").copy();
event.crafting.getTagCompound().setTag("tags", tempTag); event.crafting.getTagCompound().setTag("tags", tempTag);

View File

@@ -2,7 +2,6 @@ package nmd.primal.forgecraft;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
@@ -10,7 +9,6 @@ import net.minecraft.init.Items;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.common.util.FakePlayer; import net.minecraftforge.common.util.FakePlayer;

View File

@@ -9,14 +9,9 @@ import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
import net.minecraftforge.fml.common.network.NetworkRegistry; import net.minecraftforge.fml.common.network.NetworkRegistry;
import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper; import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper;
import nmd.primal.forgecraft.init.ModSounds;
import nmd.primal.forgecraft.init.ModEvents;
import nmd.primal.forgecraft.compat.ModDictionary; import nmd.primal.forgecraft.compat.ModDictionary;
import nmd.primal.forgecraft.gui.GuiHandler; import nmd.primal.forgecraft.gui.GuiHandler;
import nmd.primal.forgecraft.init.ModBlocks; import nmd.primal.forgecraft.init.*;
import nmd.primal.forgecraft.init.ModCrafting;
import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.init.ModTiles;
import nmd.primal.forgecraft.proxy.CommonProxy; import nmd.primal.forgecraft.proxy.CommonProxy;
//import nmd.primal.forgecraft.common.init.*; //import nmd.primal.forgecraft.common.init.*;

View File

@@ -4,7 +4,6 @@ import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
//import nmd.primal.forgecraft.Item.ModItems; //import nmd.primal.forgecraft.Item.ModItems;

View File

@@ -1,12 +0,0 @@
package nmd.primal.forgecraft.api;
import net.minecraft.util.SoundEvent;
/**
* Created by mminaie on 3/24/17.
*/
public class ForgecraftSounds {
}

View File

@@ -11,7 +11,6 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.item.EnumDyeColor; import net.minecraft.item.EnumDyeColor;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
@@ -24,18 +23,20 @@ import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.api.PrimalItems; import nmd.primal.core.api.PrimalItems;
import nmd.primal.core.api.PrimalMaterials;
import nmd.primal.core.common.items.tools.WorkMallet; import nmd.primal.core.common.items.tools.WorkMallet;
import nmd.primal.forgecraft.CommonUtils; import nmd.primal.forgecraft.CommonUtils;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.crafting.AnvilCrafting; import nmd.primal.forgecraft.crafting.AnvilCrafting;
import nmd.primal.forgecraft.init.ModBlocks; import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.init.ModMaterials;
import nmd.primal.forgecraft.items.BaseMultiItem; import nmd.primal.forgecraft.items.BaseMultiItem;
import nmd.primal.forgecraft.items.ForgeHammer; import nmd.primal.forgecraft.items.ForgeHammer;
import nmd.primal.forgecraft.items.parts.ToolPart; import nmd.primal.forgecraft.items.parts.ToolPart;
import nmd.primal.forgecraft.tiles.TileAnvil; import nmd.primal.forgecraft.tiles.TileAnvil;
import java.util.concurrent.ThreadLocalRandom;
/** /**
* Created by mminaie on 3/4/17. * Created by mminaie on 3/4/17.
*/ */
@@ -70,7 +71,6 @@ public class Anvil extends CustomContainerFacing {
super(material); super(material);
setUnlocalizedName(registryName); setUnlocalizedName(registryName);
setRegistryName(registryName); setRegistryName(registryName);
//setRegistryName(ModInfo.ForgecraftBlocks.FIREBOX.getRegistryName());
setCreativeTab(ModInfo.TAB_FORGECRAFT); setCreativeTab(ModInfo.TAB_FORGECRAFT);
setDefaultState(this.blockState.getBaseState().withProperty(FACING, EnumFacing.NORTH)); setDefaultState(this.blockState.getBaseState().withProperty(FACING, EnumFacing.NORTH));
setHardness(hardness); setHardness(hardness);
@@ -109,7 +109,7 @@ public class Anvil extends CustomContainerFacing {
if(this.getRegistryName().toString().equals("stoneanvil")){ if(this.getRegistryName().toString().equals("stoneanvil")){
for (int i = 0; i < 25; i++) { for (int i = 0; i < 25; i++) {
if (tile.getSlotStack(i).getItem() instanceof BaseMultiItem) { if (tile.getSlotStack(i).getItem() instanceof BaseMultiItem) {
if(((BaseMultiItem) tile.getSlotStack(i).getItem()).getMaterial(tile.getSlotStack(i).getItem()) != ModMaterials.TOOL_WROUGHT_IRON ) { if(((BaseMultiItem) tile.getSlotStack(i).getItem()).getMaterial(tile.getSlotStack(i).getItem()) != PrimalMaterials.TOOL_WROUGHT_IRON ) {
world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2); world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2);
CommonUtils.spawnItemEntityFromWorld(world, pos, new ItemStack(PrimalItems.ROCK_STONE, 3)); CommonUtils.spawnItemEntityFromWorld(world, pos, new ItemStack(PrimalItems.ROCK_STONE, 3));
CommonUtils.spawnItemEntityFromWorld(world, pos, new ItemStack(ModBlocks.ironball, 1)); CommonUtils.spawnItemEntityFromWorld(world, pos, new ItemStack(ModBlocks.ironball, 1));
@@ -143,7 +143,7 @@ public class Anvil extends CustomContainerFacing {
world.playEvent(1031, pos, 0); world.playEvent(1031, pos, 0);
if (world.rand.nextBoolean()) { if (ThreadLocalRandom.current().nextInt(0, 2)==0) {
if (recipe.getOutput().getItem() instanceof ToolPart) { if (recipe.getOutput().getItem() instanceof ToolPart) {
@@ -187,6 +187,7 @@ public class Anvil extends CustomContainerFacing {
(outputStack.getSubCompound("tags").getInteger("emerald") + 1)); (outputStack.getSubCompound("tags").getInteger("emerald") + 1));
outputStack.getSubCompound("tags").setInteger("modifiers", outputStack.getSubCompound("tags").setInteger("modifiers",
(outputStack.getSubCompound("tags").getInteger("modifiers") + 1)); (outputStack.getSubCompound("tags").getInteger("modifiers") + 1));
CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack);
} }
} }
} }
@@ -198,6 +199,7 @@ public class Anvil extends CustomContainerFacing {
(outputStack.getSubCompound("tags").getInteger("diamond") + 1)); (outputStack.getSubCompound("tags").getInteger("diamond") + 1));
outputStack.getSubCompound("tags").setInteger("modifiers", outputStack.getSubCompound("tags").setInteger("modifiers",
(outputStack.getSubCompound("tags").getInteger("modifiers") + 1)); (outputStack.getSubCompound("tags").getInteger("modifiers") + 1));
CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack);
} }
//Upgrade redstone //Upgrade redstone
@@ -207,6 +209,7 @@ public class Anvil extends CustomContainerFacing {
(outputStack.getSubCompound("tags").getInteger("redstone") + 1)); (outputStack.getSubCompound("tags").getInteger("redstone") + 1));
outputStack.getSubCompound("tags").setInteger("modifiers", outputStack.getSubCompound("tags").setInteger("modifiers",
(outputStack.getSubCompound("tags").getInteger("modifiers") + 1)); (outputStack.getSubCompound("tags").getInteger("modifiers") + 1));
CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack);
} }
//Upgrade lapis //Upgrade lapis
@@ -217,13 +220,11 @@ public class Anvil extends CustomContainerFacing {
(outputStack.getSubCompound("tags").getInteger("lapis") + 1)); (outputStack.getSubCompound("tags").getInteger("lapis") + 1));
outputStack.getSubCompound("tags").setInteger("modifiers", outputStack.getSubCompound("tags").setInteger("modifiers",
(outputStack.getSubCompound("tags").getInteger("modifiers") + 1)); (outputStack.getSubCompound("tags").getInteger("modifiers") + 1));
CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack);
} }
} }
} }
CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack);
} }
} else { } else {
CommonUtils.spawnItemEntityFromWorld(world, pos, recipe.getOutput()); CommonUtils.spawnItemEntityFromWorld(world, pos, recipe.getOutput());
} }
@@ -322,6 +323,18 @@ public class Anvil extends CustomContainerFacing {
(pItem.getTagCompound().getInteger("type") == 9) || (pItem.getTagCompound().getInteger("type") == 9) ||
(pItem.getTagCompound().getInteger("type") == 10) || (pItem.getTagCompound().getInteger("type") == 10) ||
(pItem.getTagCompound().getInteger("type") == 11) || (pItem.getTagCompound().getInteger("type") == 11) ||
(pItem.getTagCompound().getInteger("type") == 15) ||
(pItem.getTagCompound().getInteger("type") == 16) ||
(pItem.getTagCompound().getInteger("type") == 17) ||
(pItem.getTagCompound().getInteger("type") == 18) ||
(pItem.getTagCompound().getInteger("type") == 19) ||
(pItem.getTagCompound().getInteger("type") == 20) ||
(pItem.getTagCompound().getInteger("type") == 24) ||
(pItem.getTagCompound().getInteger("type") == 25) ||
(pItem.getTagCompound().getInteger("type") == 26) ||
(pItem.getTagCompound().getInteger("type") == 27) ||
(pItem.getTagCompound().getInteger("type") == 28) ||
(pItem.getTagCompound().getInteger("type") == 29) ||
(pItem.getTagCompound().getInteger("type") == 0)) { (pItem.getTagCompound().getInteger("type") == 0)) {
//System.out.println("Level 1"); //System.out.println("Level 1");
@@ -335,8 +348,28 @@ public class Anvil extends CustomContainerFacing {
if (tile.getSlotStack(counter).getItem().equals(ModItems.ironchunkhot)) { if (tile.getSlotStack(counter).getItem().equals(ModItems.ironchunkhot)) {
pItem.getTagCompound().setInteger("type", 7); pItem.getTagCompound().setInteger("type", 7);
tile.setSlotStack(counter, ItemStack.EMPTY); tile.setSlotStack(counter, ItemStack.EMPTY);
//System.out.println(counter); return true;
//System.out.println(counter); }
if (tile.getSlotStack(counter).getItem().equals(ModItems.ironcleaningotballhot)) {
pItem.getTagCompound().setInteger("type", 15);
tile.setSlotStack(counter, ItemStack.EMPTY);
return true;
}
if (tile.getSlotStack(counter).getItem().equals(ModItems.ironcleanchunkhot)) {
pItem.getTagCompound().setInteger("type", 16);
tile.setSlotStack(counter, ItemStack.EMPTY);
return true;
}
if (tile.getSlotStack(counter).getItem().equals(ModItems.steelingotballhot)) {
pItem.getTagCompound().setInteger("type", 24);
tile.setSlotStack(counter, ItemStack.EMPTY);
return true;
}
if (tile.getSlotStack(counter).getItem().equals(ModItems.steelchunkhot)) {
pItem.getTagCompound().setInteger("type", 25);
tile.setSlotStack(counter, ItemStack.EMPTY);
return true; return true;
} }
@@ -431,6 +464,187 @@ public class Anvil extends CustomContainerFacing {
pItem.getTagCompound().setInteger("tempDamage", 0); pItem.getTagCompound().setInteger("tempDamage", 0);
return true; return true;
} }
/*********************************
* Clean Iron *
*********************************/
if (pItem.getTagCompound().getInteger("type") == 15) {
//System.out.println("Tongs meta = 6");
tile.setSlotStack((counter), new ItemStack(ModItems.ironcleaningotballhot, 1));
pItem.getTagCompound().setInteger("type", 0);
//return true;
}
if (pItem.getTagCompound().getInteger("type") == 16) {
//System.out.println("Tongs meta = 7");
tile.setSlotStack((counter), new ItemStack(ModItems.ironcleanchunkhot, 1));
pItem.getTagCompound().setInteger("type", 0);
///System.out.println(counter);
//System.out.println(tile.getSlotStack(counter));
//return true;
}
if (pItem.getTagCompound().getInteger("type") == 17) {
ItemStack tempStack = new ItemStack(ModItems.cleanironpickaxehead, 1);
tempStack.setTagCompound(new NBTTagCompound());
NBTTagCompound tags = pItem.getSubCompound("tags").copy();
tempStack.getTagCompound().setTag("tags", tags);
tempStack.setItemDamage(pItem.getTagCompound().getInteger("tempDamage"));
tile.setSlotStack((counter), tempStack);
pItem.getTagCompound().setInteger("type", 0);
pItem.getSubCompound("tags").setBoolean("hot", false);
pItem.getSubCompound("tags").setBoolean("emerald", false);
pItem.getSubCompound("tags").setInteger("diamond", 0);
pItem.getSubCompound("tags").setInteger("redstone", 0);
pItem.getSubCompound("tags").setInteger("lapis", 0);
pItem.getSubCompound("tags").setInteger("modifiers", 0);
pItem.getTagCompound().setInteger("tempDamage", 0);
return true;
}
if (pItem.getTagCompound().getInteger("type") == 18) {
ItemStack tempStack = new ItemStack(ModItems.cleanironaxehead, 1);
tempStack.setTagCompound(new NBTTagCompound());
NBTTagCompound tags = pItem.getSubCompound("tags").copy();
tempStack.getTagCompound().setTag("tags", tags);
tempStack.setItemDamage(pItem.getTagCompound().getInteger("tempDamage"));
tile.setSlotStack((counter), tempStack);
pItem.getTagCompound().setInteger("type", 0);
pItem.getSubCompound("tags").setBoolean("hot", false);
pItem.getSubCompound("tags").setBoolean("emerald", false);
pItem.getSubCompound("tags").setInteger("diamond", 0);
pItem.getSubCompound("tags").setInteger("redstone", 0);
pItem.getSubCompound("tags").setInteger("lapis", 0);
pItem.getSubCompound("tags").setInteger("modifiers", 0);
pItem.getTagCompound().setInteger("tempDamage", 0);
return true;
}
if (pItem.getTagCompound().getInteger("type") == 19) {
ItemStack tempStack = new ItemStack(ModItems.cleanironshovelhead, 1);
tempStack.setTagCompound(new NBTTagCompound());
NBTTagCompound tags = pItem.getSubCompound("tags").copy();
tempStack.getTagCompound().setTag("tags", tags);
tempStack.setItemDamage(pItem.getTagCompound().getInteger("tempDamage"));
tile.setSlotStack((counter), tempStack);
pItem.getTagCompound().setInteger("type", 0);
pItem.getSubCompound("tags").setBoolean("hot", false);
pItem.getSubCompound("tags").setBoolean("emerald", false);
pItem.getSubCompound("tags").setInteger("diamond", 0);
pItem.getSubCompound("tags").setInteger("redstone", 0);
pItem.getSubCompound("tags").setInteger("lapis", 0);
pItem.getSubCompound("tags").setInteger("modifiers", 0);
pItem.getTagCompound().setInteger("tempDamage", 0);
return true;
}
if (pItem.getTagCompound().getInteger("type") == 20) {
ItemStack tempStack = new ItemStack(ModItems.cleanironhoehead, 1);
tempStack.setTagCompound(new NBTTagCompound());
NBTTagCompound tags = pItem.getSubCompound("tags").copy();
tempStack.getTagCompound().setTag("tags", tags);
tempStack.setItemDamage(pItem.getTagCompound().getInteger("tempDamage"));
tile.setSlotStack((counter), tempStack);
pItem.getTagCompound().setInteger("type", 0);
pItem.getSubCompound("tags").setBoolean("hot", false);
pItem.getSubCompound("tags").setBoolean("emerald", false);
pItem.getSubCompound("tags").setInteger("diamond", 0);
pItem.getSubCompound("tags").setInteger("redstone", 0);
pItem.getSubCompound("tags").setInteger("lapis", 0);
pItem.getSubCompound("tags").setInteger("modifiers", 0);
pItem.getTagCompound().setInteger("tempDamage", 0);
return true;
}
/*********************************
* Steel *
*********************************/
if (pItem.getTagCompound().getInteger("type") == 24) {
//System.out.println("Tongs meta = 6");
tile.setSlotStack((counter), new ItemStack(ModItems.steelingotballhot, 1));
pItem.getTagCompound().setInteger("type", 0);
//return true;
}
if (pItem.getTagCompound().getInteger("type") == 25) {
//System.out.println("Tongs meta = 7");
tile.setSlotStack((counter), new ItemStack(ModItems.steelchunkhot, 1));
pItem.getTagCompound().setInteger("type", 0);
///System.out.println(counter);
//System.out.println(tile.getSlotStack(counter));
//return true;
}
if (pItem.getTagCompound().getInteger("type") == 26) {
ItemStack tempStack = new ItemStack(ModItems.steelpickaxehead, 1);
tempStack.setTagCompound(new NBTTagCompound());
NBTTagCompound tags = pItem.getSubCompound("tags").copy();
tempStack.getTagCompound().setTag("tags", tags);
tempStack.setItemDamage(pItem.getTagCompound().getInteger("tempDamage"));
tile.setSlotStack((counter), tempStack);
pItem.getTagCompound().setInteger("type", 0);
pItem.getSubCompound("tags").setBoolean("hot", false);
pItem.getSubCompound("tags").setBoolean("emerald", false);
pItem.getSubCompound("tags").setInteger("diamond", 0);
pItem.getSubCompound("tags").setInteger("redstone", 0);
pItem.getSubCompound("tags").setInteger("lapis", 0);
pItem.getSubCompound("tags").setInteger("modifiers", 0);
pItem.getTagCompound().setInteger("tempDamage", 0);
return true;
}
if (pItem.getTagCompound().getInteger("type") == 27) {
ItemStack tempStack = new ItemStack(ModItems.steelaxehead, 1);
tempStack.setTagCompound(new NBTTagCompound());
NBTTagCompound tags = pItem.getSubCompound("tags").copy();
tempStack.getTagCompound().setTag("tags", tags);
tempStack.setItemDamage(pItem.getTagCompound().getInteger("tempDamage"));
tile.setSlotStack((counter), tempStack);
pItem.getTagCompound().setInteger("type", 0);
pItem.getSubCompound("tags").setBoolean("hot", false);
pItem.getSubCompound("tags").setBoolean("emerald", false);
pItem.getSubCompound("tags").setInteger("diamond", 0);
pItem.getSubCompound("tags").setInteger("redstone", 0);
pItem.getSubCompound("tags").setInteger("lapis", 0);
pItem.getSubCompound("tags").setInteger("modifiers", 0);
pItem.getTagCompound().setInteger("tempDamage", 0);
return true;
}
if (pItem.getTagCompound().getInteger("type") == 28) {
ItemStack tempStack = new ItemStack(ModItems.steelshovelhead, 1);
tempStack.setTagCompound(new NBTTagCompound());
NBTTagCompound tags = pItem.getSubCompound("tags").copy();
tempStack.getTagCompound().setTag("tags", tags);
tempStack.setItemDamage(pItem.getTagCompound().getInteger("tempDamage"));
tile.setSlotStack((counter), tempStack);
pItem.getTagCompound().setInteger("type", 0);
pItem.getSubCompound("tags").setBoolean("hot", false);
pItem.getSubCompound("tags").setBoolean("emerald", false);
pItem.getSubCompound("tags").setInteger("diamond", 0);
pItem.getSubCompound("tags").setInteger("redstone", 0);
pItem.getSubCompound("tags").setInteger("lapis", 0);
pItem.getSubCompound("tags").setInteger("modifiers", 0);
pItem.getTagCompound().setInteger("tempDamage", 0);
return true;
}
if (pItem.getTagCompound().getInteger("type") == 29) {
ItemStack tempStack = new ItemStack(ModItems.steelhoehead, 1);
tempStack.setTagCompound(new NBTTagCompound());
NBTTagCompound tags = pItem.getSubCompound("tags").copy();
tempStack.getTagCompound().setTag("tags", tags);
tempStack.setItemDamage(pItem.getTagCompound().getInteger("tempDamage"));
tile.setSlotStack((counter), tempStack);
pItem.getTagCompound().setInteger("type", 0);
pItem.getSubCompound("tags").setBoolean("hot", false);
pItem.getSubCompound("tags").setBoolean("emerald", false);
pItem.getSubCompound("tags").setInteger("diamond", 0);
pItem.getSubCompound("tags").setInteger("redstone", 0);
pItem.getSubCompound("tags").setInteger("lapis", 0);
pItem.getSubCompound("tags").setInteger("modifiers", 0);
pItem.getTagCompound().setInteger("tempDamage", 0);
return true;
}
} }
} }
} }

View File

@@ -9,7 +9,6 @@ import net.minecraft.util.math.BlockPos;
import net.minecraft.world.IBlockAccess; import net.minecraft.world.IBlockAccess;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.ModInfo;
/** /**
* Created by mminaie on 2/6/17. * Created by mminaie on 2/6/17.

View File

@@ -10,10 +10,8 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.init.SoundEvents; import net.minecraft.init.SoundEvents;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.*; import net.minecraft.util.*;
@@ -121,7 +119,10 @@ public class Bloomery extends CustomContainerFacing implements ITileEntityProvid
} }
} }
if(tile.getSlotStack(0) != ItemStack.EMPTY) { if(tile.getSlotStack(0) != ItemStack.EMPTY) {
if((pItem.getItem() == Items.FLINT_AND_STEEL) || (pItem.getItem() == PrimalItems.FIRE_BOW) || pItem.getItem() == PrimalItems.TORCH_WOOD_LIT || pItem.getItem() == PrimalItems.TORCH_NETHER_LIT ) { if((pItem.getItem() == Items.FLINT_AND_STEEL) ||
(pItem.getItem() == PrimalItems.FIRE_BOW) ||
pItem.getItem() == PrimalItems.TORCH_WOOD_LIT ||
pItem.getItem() == PrimalItems.TORCH_NETHER_LIT ) {
world.setBlockState(pos, state.withProperty(ACTIVE, true), 2); world.setBlockState(pos, state.withProperty(ACTIVE, true), 2);
tile.setHeat(100); tile.setHeat(100);
tile.markDirty(); tile.markDirty();

View File

@@ -0,0 +1,280 @@
package nmd.primal.forgecraft.blocks;
import net.minecraft.block.material.Material;
import net.minecraft.block.properties.IProperty;
import net.minecraft.block.properties.PropertyBool;
import net.minecraft.block.state.BlockStateContainer;
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumBlockRenderType;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.EnumHand;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.api.PrimalItems;
import nmd.primal.core.common.items.tools.WorkMallet;
import nmd.primal.forgecraft.CommonUtils;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.tiles.TileBreaker;
import java.util.concurrent.ThreadLocalRandom;
/**
* Created by mminaie on 4/9/17.
*/
public class Breaker extends CustomContainerFacing {
public static final PropertyBool ACTIVE = PropertyBool.create("active");
public Breaker(Material material, String registryName, Float hardness) {
super(material);
setUnlocalizedName(registryName);
setRegistryName(registryName);
setCreativeTab(ModInfo.TAB_FORGECRAFT);
setDefaultState(this.blockState.getBaseState().withProperty(FACING, EnumFacing.NORTH).withProperty(ACTIVE, false));
setHardness(hardness);
}
private void doWork (World world, IBlockState state, BlockPos pos, TileBreaker tile){
if (state.getValue(FACING) == EnumFacing.EAST) {
if(tile.getCharge() > world.getBlockState(pos.east()).getBlockHardness(world, pos.east())) {
if (world.getBlockState(pos.east()).getBlock() == Blocks.IRON_ORE) {
world.setBlockToAir(pos.east());
CommonUtils.spawnItemEntityFromWorld(world, pos.east(), new ItemStack(PrimalItems.IRON_DUST, ThreadLocalRandom.current().nextInt(1, 2)));
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage()-1);
}
} else {
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage()-10);
}
}
if (state.getValue(FACING) == EnumFacing.WEST) {
if(tile.getCharge() > world.getBlockState(pos.west()).getBlockHardness(world, pos.west())) {
if (world.getBlockState(pos.west()).getBlock() == Blocks.IRON_ORE) {
world.setBlockToAir(pos.west());
CommonUtils.spawnItemEntityFromWorld(world, pos.east(), new ItemStack(PrimalItems.IRON_DUST, ThreadLocalRandom.current().nextInt(1, 2)));
}
} else {
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage()-10);
}
}
if (state.getValue(FACING) == EnumFacing.SOUTH) {
if(tile.getCharge() > world.getBlockState(pos.south()).getBlockHardness(world, pos.south())) {
if (world.getBlockState(pos.south()).getBlock() == Blocks.IRON_ORE) {
world.setBlockToAir(pos.south());
CommonUtils.spawnItemEntityFromWorld(world, pos.east(), new ItemStack(PrimalItems.IRON_DUST, ThreadLocalRandom.current().nextInt(1, 2)));
}
} else {
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage()-10);
}
}
if (state.getValue(FACING) == EnumFacing.NORTH) {
if(tile.getCharge() > world.getBlockState(pos.north()).getBlockHardness(world, pos.north())) {
if (world.getBlockState(pos.north()).getBlock() == Blocks.IRON_ORE) {
world.setBlockToAir(pos.north());
CommonUtils.spawnItemEntityFromWorld(world, pos.east(), new ItemStack(PrimalItems.IRON_DUST, ThreadLocalRandom.current().nextInt(1, 2)));
}
} else {
//tile.getSlotStack(0).damageItem(10, (EntityPlayer) null);
tile.getSlotStack(0).setItemDamage(tile.getSlotStack(0).getItemDamage()-10);
}
}
tile.setCharge(0.0f);
}
@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){
TileBreaker tile = (TileBreaker) world.getTileEntity(pos);
ItemStack pItem = player.inventory.getCurrentItem();
if(state.getValue(ACTIVE) == true && player.isSneaking() && pItem.isEmpty()){
world.setBlockState(pos, state.withProperty(FACING, state.getValue(FACING)).withProperty(ACTIVE, false));
doWork(world, state, pos, tile);
}
if(!player.isSneaking() && pItem.isEmpty()) {
if (!state.getValue(ACTIVE)) {
world.setBlockState(pos, state.withProperty(FACING, state.getValue(FACING)).withProperty(ACTIVE, true), 2);
}
if(tile.getCharge() < 181) {
tile.setCharge(tile.getCharge() + 2.0f);
tile.updateBlock();
//System.out.println(tile.charge);
return true;
}
}
if(pItem.getItem() instanceof WorkMallet){
tile.setSlotStack(0, player.inventory.getCurrentItem());
player.inventory.setInventorySlotContents(player.inventory.currentItem, ItemStack.EMPTY);
return true;
}
}
return false;
}
@Override
public void breakBlock(World world, BlockPos pos, IBlockState state)
{
if (!world.isRemote && world.getGameRules().getBoolean("doTileDrops"))
{
TileBreaker tile = (TileBreaker) world.getTileEntity(pos);
if (tile !=null)
{
for (ItemStack stack : tile.getSlotList())
{
if (stack != null) {
float offset = 0.7F;
double offsetX = world.rand.nextFloat() * offset + (1.0F - offset) * 0.5D;
double offsetY = world.rand.nextFloat() * offset + (1.0F - offset) * 0.5D;
double offsetZ = world.rand.nextFloat() * offset + (1.0F - offset) * 0.5D;
EntityItem item = new EntityItem(world, pos.getX() + offsetX, pos.getY() + offsetY, pos.getZ() + offsetZ, stack);
item.setDefaultPickupDelay();
world.spawnEntity(item);
}
}
}
}
super.breakBlock(world, pos, state);
}
@Override
public TileEntity createNewTileEntity(World worldIn, int meta)
{
return new TileBreaker();
}
@Override
public void onBlockPlacedBy(World worldIn, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack)
{
//if(!worldIn.isRemote) {
worldIn.setBlockState(pos, state.withProperty(FACING, placer.getHorizontalFacing()).withProperty(ACTIVE, false), 2);
//}
}
@Override
public int getMetaFromState(IBlockState state) {
int i = 0;
if(state.getValue(ACTIVE ) == false) {
if (state.getValue(FACING) == EnumFacing.EAST) {
i = 0;
return i;
}
if (state.getValue(FACING) == EnumFacing.WEST) {
i = 1;
return i;
}
if (state.getValue(FACING) == EnumFacing.SOUTH) {
i = 2;
return i;
}
if (state.getValue(FACING) == EnumFacing.NORTH) {
i = 3;
return i;
}
}
if(state.getValue(ACTIVE)) {
if (state.getValue(FACING) == EnumFacing.EAST) {
i = 4;
return i;
}
if (state.getValue(FACING) == EnumFacing.WEST) {
i = 5;
return i;
}
if (state.getValue(FACING) == EnumFacing.SOUTH) {
i = 6;
return i;
}
if (state.getValue(FACING) == EnumFacing.NORTH) {
i = 7;
return i;
}
}
return i;
}
@Override
public IBlockState getStateFromMeta(int meta)
{
IBlockState iblockstate = this.getDefaultState();
if (meta == 0){
iblockstate = iblockstate.withProperty(FACING, EnumFacing.EAST).withProperty(ACTIVE, false);
}
if (meta == 1) {
iblockstate = iblockstate.withProperty(FACING, EnumFacing.WEST).withProperty(ACTIVE, false);
}
if (meta == 2) {
iblockstate = iblockstate.withProperty(FACING, EnumFacing.SOUTH).withProperty(ACTIVE, false);
}
if (meta == 3) {
iblockstate = iblockstate.withProperty(FACING, EnumFacing.NORTH).withProperty(ACTIVE, false);
}
if (meta == 4){
iblockstate = iblockstate.withProperty(FACING, EnumFacing.EAST).withProperty(ACTIVE, true);
}
if (meta == 5) {
iblockstate = iblockstate.withProperty(FACING, EnumFacing.WEST).withProperty(ACTIVE, true);
}
if (meta == 6) {
iblockstate = iblockstate.withProperty(FACING, EnumFacing.SOUTH).withProperty(ACTIVE, true);
}
if (meta == 7) {
iblockstate = iblockstate.withProperty(FACING, EnumFacing.NORTH).withProperty(ACTIVE, true);
}
return iblockstate;
}
@Override
protected BlockStateContainer createBlockState() {
return new BlockStateContainer(this, new IProperty[] {ACTIVE, FACING});
}
@Override
public boolean isFullCube(IBlockState state)
{
return false;
}
@Override
public boolean isFullyOpaque(IBlockState state)
{
return false;
}
@Override
public boolean isOpaqueCube(IBlockState state)
{
return false;
}
@Override
@SideOnly(Side.CLIENT)
public boolean shouldSideBeRendered(IBlockState blockState, IBlockAccess blockAccess, BlockPos pos, EnumFacing side)
{
return true;
}
@Override
public EnumBlockRenderType getRenderType(IBlockState state)
{
return EnumBlockRenderType.MODEL;
}
}

View File

@@ -17,6 +17,7 @@ import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.api.PrimalItems;
import nmd.primal.forgecraft.CommonUtils; import nmd.primal.forgecraft.CommonUtils;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.init.ModBlocks; import nmd.primal.forgecraft.init.ModBlocks;
@@ -99,6 +100,24 @@ public class Crucible extends Block {
if(name.equals("tile.rawironcrucible")){ if(name.equals("tile.rawironcrucible")){
string = this.getUnlocalizedName(); string = this.getUnlocalizedName();
} }
if(name.equals("tile.coolcleanironcrucible")){
string = this.getUnlocalizedName();
}
if(name.equals("tile.rawcleanironcrucible")){
string = this.getUnlocalizedName();
}
if(name.equals("tile.coolsteelcrucible")){
string = this.getUnlocalizedName();
}
if(name.equals("tile.rawsteelcrucible")){
string = this.getUnlocalizedName();
}
if(name.equals("tile.coolwootzcrucible")){
string = this.getUnlocalizedName();
}
if(name.equals("tile.rawwootzcrucible")){
string = this.getUnlocalizedName();
}
return string; return string;
} }
@@ -108,6 +127,18 @@ public class Crucible extends Block {
return Item.getItemFromBlock(ModBlocks.ironball); return Item.getItemFromBlock(ModBlocks.ironball);
} else if (name.equals("tile.rawironcrucible")){ } else if (name.equals("tile.rawironcrucible")){
return Item.getItemFromBlock(Blocks.IRON_ORE); return Item.getItemFromBlock(Blocks.IRON_ORE);
} else if (name.equals("tile.coolcleanironcrucible")){
return Item.getItemFromBlock(ModBlocks.ironcleanball);
} else if (name.equals("tile.rawcleanironcrucible")){
return PrimalItems.IRON_DUST;
} else if (name.equals("tile.coolsteelcrucible")){
return Item.getItemFromBlock(ModBlocks.steelball);
} else if (name.equals("tile.rawsteelcrucible")){
return Item.getItemFromBlock(ModBlocks.ironcleanball);
} else if (name.equals("tile.coolwootzcrucible")){
return Item.getItemFromBlock(ModBlocks.wootzball);
} else if (name.equals("tile.rawcleanironcrucible")){
return PrimalItems.GOLDEN_STICK;
} }
else return Items.AIR; else return Items.AIR;
} }

View File

@@ -7,7 +7,6 @@ import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumBlockRenderType; import net.minecraft.util.EnumBlockRenderType;
import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumFacing;
@@ -19,14 +18,10 @@ import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.tiles.TileBaseCrucible; import nmd.primal.forgecraft.tiles.TileBaseCrucible;
import org.apache.commons.lang3.StringUtils;
import java.util.Random; import java.util.Random;
import static nmd.primal.forgecraft.CommonUtils.spawnItemEntityFromWorld;
/** /**
* Created by mminaie on 2/4/17. * Created by mminaie on 2/4/17.
*/ */

View File

@@ -1,5 +1,6 @@
package nmd.primal.forgecraft.blocks; package nmd.primal.forgecraft.blocks;
import net.minecraft.block.Block;
import net.minecraft.block.ITileEntityProvider; import net.minecraft.block.ITileEntityProvider;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.block.properties.IProperty; import net.minecraft.block.properties.IProperty;
@@ -10,10 +11,8 @@ import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.init.SoundEvents; import net.minecraft.init.SoundEvents;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.*; import net.minecraft.util.*;
@@ -25,12 +24,9 @@ import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
//import nmd.primal.core.api.PrimalBlocks;
import nmd.primal.core.api.PrimalItems; import nmd.primal.core.api.PrimalItems;
import nmd.primal.core.common.PrimalCore;
import nmd.primal.forgecraft.CommonUtils; import nmd.primal.forgecraft.CommonUtils;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.items.parts.ToolPart; import nmd.primal.forgecraft.items.parts.ToolPart;
import nmd.primal.forgecraft.tiles.TileForge; import nmd.primal.forgecraft.tiles.TileForge;
@@ -40,6 +36,8 @@ import java.util.concurrent.ThreadLocalRandom;
import static nmd.primal.core.common.helper.CommonUtils.makeSmoke; import static nmd.primal.core.common.helper.CommonUtils.makeSmoke;
//import nmd.primal.core.api.PrimalBlocks;
/** /**
* Created by kitsu on 11/26/2016. * Created by kitsu on 11/26/2016.
@@ -156,16 +154,11 @@ public class Forge extends CustomContainerFacing implements ITileEntityProvider/
***********************/ ***********************/
//REMOVE COOL INGOT //REMOVE COOL INGOT
if(facing == EnumFacing.UP ) { if(facing == EnumFacing.UP ) {
if (pItem.isEmpty()) { /*if (pItem.isEmpty()) {
for (int i = 2; i < tile.getSlotListSize(); i++) { for (int i = 2; i < tile.getSlotListSize(); i++) {
//System.out.println(i); //System.out.println(i);
if (!tile.getSlotStack(i).isEmpty()) { if (!tile.getSlotStack(i).isEmpty()) {
if (tile.getSlotStack(i).getItem().equals(new ItemStack(ModBlocks.ironchunk).getItem())) { if (Block.getBlockFromItem(tile.getSlotStack(i).getItem()) instanceof IngotBall) {
CommonUtils.spawnItemEntity(world, player, tile.getSlotStack(i));
tile.setSlotStack(i, ItemStack.EMPTY);
return true;
}
if (tile.getSlotStack(i).getItem().equals(new ItemStack(ModBlocks.ironball).getItem())) {
CommonUtils.spawnItemEntity(world, player, tile.getSlotStack(i)); CommonUtils.spawnItemEntity(world, player, tile.getSlotStack(i));
tile.setSlotStack(i, ItemStack.EMPTY); tile.setSlotStack(i, ItemStack.EMPTY);
return true; return true;
@@ -177,13 +170,12 @@ public class Forge extends CustomContainerFacing implements ITileEntityProvider/
return true; return true;
} }
} }
} }
} }
} }*/
if (pItem.getItem().equals(new ItemStack(ModBlocks.ironchunk).getItem())) { if (Block.getBlockFromItem(pItem.getItem()) instanceof IngotBall) {
//System.out.println("Activating"); //System.out.println("Activating");
for (int i = 2; i <= tile.getSlotListSize(); i++) { for (int i = 2; i <= tile.getSlotListSize(); i++) {
if (tile.getSlotStack(i).isEmpty()) { if (tile.getSlotStack(i).isEmpty()) {
@@ -193,15 +185,6 @@ public class Forge extends CustomContainerFacing implements ITileEntityProvider/
} }
} }
} }
if (pItem.getItem().equals(new ItemStack(ModBlocks.ironball).getItem())) {
for (int i = 2; i < tile.getSlotListSize(); i++) {
if (tile.getSlotStack(i).isEmpty()) {
tile.setSlotStack(i, new ItemStack(pItem.getItem(), 1));
pItem.shrink(1);
return true;
}
}
}
//Needs Ore Dictionary Compat //Needs Ore Dictionary Compat
if (pItem.getItem().equals(new ItemStack(Items.IRON_INGOT).getItem())) { if (pItem.getItem().equals(new ItemStack(Items.IRON_INGOT).getItem())) {
for (int i = 2; i < 7; i++) { for (int i = 2; i < 7; i++) {

View File

@@ -7,20 +7,13 @@ import net.minecraft.block.state.BlockStateContainer;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.init.SoundEvents; import net.minecraft.init.SoundEvents;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.EnumHand;
import net.minecraft.util.SoundCategory; import net.minecraft.util.SoundCategory;
import net.minecraft.util.math.AxisAlignedBB; import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.IBlockAccess; import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World; import net.minecraft.world.World;
import nmd.primal.core.api.PrimalItems;
import nmd.primal.forgecraft.CommonUtils;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.init.ModBlocks;
import java.util.Random; import java.util.Random;
import java.util.concurrent.ThreadLocalRandom; import java.util.concurrent.ThreadLocalRandom;

View File

@@ -17,7 +17,6 @@ import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.api.ForgecraftSounds;
import nmd.primal.forgecraft.init.ModBlocks; import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModSounds; import nmd.primal.forgecraft.init.ModSounds;
import nmd.primal.forgecraft.tiles.TileBloomery; import nmd.primal.forgecraft.tiles.TileBloomery;

View File

@@ -1,8 +1,5 @@
package nmd.primal.forgecraft.compat; package nmd.primal.forgecraft.compat;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraftforge.oredict.OreDictionary; import net.minecraftforge.oredict.OreDictionary;
import nmd.primal.forgecraft.init.ModBlocks; import nmd.primal.forgecraft.init.ModBlocks;

View File

@@ -1,15 +1,9 @@
package nmd.primal.forgecraft.crafting; package nmd.primal.forgecraft.crafting;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Hashtable;
import static javax.swing.UIManager.put;
/** /**
* Created by mminaie on 3/5/17. * Created by mminaie on 3/5/17.

View File

@@ -1,7 +1,5 @@
package nmd.primal.forgecraft.crafting; package nmd.primal.forgecraft.crafting;
import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;

View File

@@ -1,6 +1,5 @@
package nmd.primal.forgecraft.enumhandler; package nmd.primal.forgecraft.enumhandler;
import net.minecraft.util.IStringSerializable;
import nmd.primal.forgecraft.util.IMetaLookup; import nmd.primal.forgecraft.util.IMetaLookup;
/** /**

View File

@@ -1,6 +1,5 @@
package nmd.primal.forgecraft.gui; package nmd.primal.forgecraft.gui;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiButton; import net.minecraft.client.gui.GuiButton;
import net.minecraft.client.gui.GuiScreen; import net.minecraft.client.gui.GuiScreen;

View File

@@ -12,20 +12,15 @@ import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumFacing;
import net.minecraft.util.EnumHand; import net.minecraft.util.EnumHand;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.client.model.ModelLoader; import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.fml.common.registry.GameRegistry; import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.api.PrimalItems;
import nmd.primal.core.common.blocks.PrimalBlock;
import nmd.primal.core.common.items.tools.WorkMallet; import nmd.primal.core.common.items.tools.WorkMallet;
import nmd.primal.forgecraft.CommonUtils;
import nmd.primal.forgecraft.blocks.*; import nmd.primal.forgecraft.blocks.*;
import nmd.primal.forgecraft.items.ForgeHammer; import nmd.primal.forgecraft.items.ForgeHammer;
import nmd.primal.forgecraft.items.blocks.ItemBlockIngotBall;
import nmd.primal.forgecraft.tiles.TileAnvil; import nmd.primal.forgecraft.tiles.TileAnvil;
/** /**
@@ -35,12 +30,15 @@ public class ModBlocks {
public static Block firebox; public static Block firebox;
public static Block bloomery; public static Block bloomery;
public static Block blockbreaker;
public static Block pistonbellowsoak; public static Block pistonbellowsoak;
public static Block pistonbellowsjungle; public static Block pistonbellowsjungle;
public static Block pistonbellowsbirch; public static Block pistonbellowsbirch;
public static Block pistonbellowsspruce; public static Block pistonbellowsspruce;
public static Block pistonbellowsdarkoak; public static Block pistonbellowsdarkoak;
public static Block pistonbellowsacacia; public static Block pistonbellowsacacia;
public static Block emptycrucible; public static Block emptycrucible;
public static Block emptycruciblehot; public static Block emptycruciblehot;
public static Block emptycruciblecracked; public static Block emptycruciblecracked;
@@ -53,6 +51,27 @@ public class ModBlocks {
public static Block failedironcrucible; public static Block failedironcrucible;
public static Block failedironcruciblehot; public static Block failedironcruciblehot;
public static Block rawcleanironcrucible;
public static Block hotcleanironcrucible;
public static Block hotcookedcleanironcrucible;
public static Block coolcleanironcrucible;
public static Block failedcleanironcrucible;
public static Block failedcleanironcruciblehot;
public static Block rawsteelcrucible;
public static Block hotsteelcrucible;
public static Block hotcookedsteelcrucible;
public static Block coolsteelcrucible;
public static Block failedsteelcrucible;
public static Block failedsteelcruciblehot;
public static Block rawwootzcrucible;
public static Block hotwootzcrucible;
public static Block hotcookedwootzcrucible;
public static Block coolwootzcrucible;
public static Block failedwootzcrucible;
public static Block failedwootzcruciblehot;
public static Block ironball; public static Block ironball;
public static Block ironchunk; public static Block ironchunk;
public static Block ironcleanball; public static Block ironcleanball;
@@ -69,8 +88,8 @@ public class ModBlocks {
public static void init() { public static void init() {
firebox = new Forge(Material.ROCK); firebox = new Forge(Material.ROCK);
bloomery = new Bloomery(Material.ROCK, "bloomery"); bloomery = new Bloomery(Material.ROCK, "bloomery");
blockbreaker = new Breaker(Material.WOOD, "blockbreaker", 4.0f);
pistonbellowsoak = new PistonBellows(Material.WOOD, "pistonbellowsoak"); pistonbellowsoak = new PistonBellows(Material.WOOD, "pistonbellowsoak");
pistonbellowsjungle = new PistonBellows(Material.WOOD, "pistonbellowsjungle"); pistonbellowsjungle = new PistonBellows(Material.WOOD, "pistonbellowsjungle");
@@ -91,6 +110,27 @@ public class ModBlocks {
failedironcrucible = new Crucible(Material.ROCK, "failedironcrucible"); failedironcrucible = new Crucible(Material.ROCK, "failedironcrucible");
failedironcruciblehot = new CrucibleHot(Material.ROCK, "failedironcruciblehot"); failedironcruciblehot = new CrucibleHot(Material.ROCK, "failedironcruciblehot");
rawcleanironcrucible = new Crucible(Material.ROCK, "rawcleanironcrucible");
hotcleanironcrucible = new CrucibleHot(Material.ROCK, "hotcleanironcrucible");
hotcookedcleanironcrucible = new CrucibleHot(Material.ROCK, "hotcookedcleanironcrucible");
coolcleanironcrucible = new Crucible(Material.ROCK, "coolcleanironcrucible");
failedcleanironcrucible = new Crucible(Material.ROCK, "failedcleanironcrucible");
failedcleanironcruciblehot = new Crucible(Material.ROCK, "failedcleanironcruciblehot");
rawsteelcrucible = new Crucible(Material.ROCK, "rawsteelcrucible");
hotsteelcrucible = new CrucibleHot(Material.ROCK, "hotsteelcrucible");
hotcookedsteelcrucible = new CrucibleHot(Material.ROCK, "hotcookedsteelcrucible");
coolsteelcrucible = new Crucible(Material.ROCK, "coolsteelcrucible");
failedsteelcrucible = new Crucible(Material.ROCK, "failedsteelcrucible");
failedsteelcruciblehot = new Crucible(Material.ROCK, "failedsteelcruciblehot");
rawwootzcrucible = new Crucible(Material.ROCK, "rawwootzcrucible");
hotwootzcrucible = new CrucibleHot(Material.ROCK, "hotwootzcrucible");
hotcookedwootzcrucible = new CrucibleHot(Material.ROCK, "hotcookedwootzcrucible");
coolwootzcrucible = new Crucible(Material.ROCK, "coolwootzcrucible");
failedwootzcrucible = new Crucible(Material.ROCK, "failedwootzcrucible");
failedwootzcruciblehot = new Crucible(Material.ROCK, "failedwootzcruciblehot");
ironball = new IngotBall(Material.IRON, "ironball", 5.0F, "ingot") { ironball = new IngotBall(Material.IRON, "ironball", 5.0F, "ingot") {
@Override @Override
public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitx, float hity, float hitz) public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitx, float hity, float hitz)
@@ -155,16 +195,17 @@ public class ModBlocks {
@Override @Override
public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitx, float hity, float hitz) public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitx, float hity, float hitz)
{ {
//System.out.println("Level 0");
if(!world.isRemote){ if(!world.isRemote){
Item pItem = player.getHeldItem(hand).getItem(); Item pItem = player.getHeldItem(hand).getItem();
BlockPos belowPos = pos.down(); BlockPos belowPos = pos.down();
//System.out.println("Activating"); //System.out.println("Activating1");
if (pItem instanceof ForgeHammer && world.getBlockState(belowPos).getBlock().equals(Blocks.IRON_BLOCK)) { if (pItem instanceof ForgeHammer && world.getBlockState(belowPos).getBlock().equals(Blocks.IRON_BLOCK)) {
player.swingArm(hand); player.swingArm(hand);
world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2); world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2);
world.setBlockState(belowPos, ModBlocks.ironanvil.getDefaultState().withProperty(Anvil.FACING, player.getHorizontalFacing()), 2); world.setBlockState(belowPos, ModBlocks.ironanvil.getDefaultState().withProperty(Anvil.FACING, player.getHorizontalFacing()), 2);
world.playEvent(1031, pos, 0); world.playEvent(1031, pos, 0);
//CommonUtils.spawnItemEntityFromWorld(world, pos, new ItemStack(ModBlocks.stoneanvil, 1)); //System.out.println("Activating");
return true; return true;
} }
if (pItem instanceof WorkMallet || pItem.equals(ModItems.forgehammer)) { if (pItem instanceof WorkMallet || pItem.equals(ModItems.forgehammer)) {
@@ -184,15 +225,15 @@ public class ModBlocks {
) { ) {
player.swingArm(hand); player.swingArm(hand);
world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2); world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2);
tile.setSlotStack(6, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(6, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(7, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(7, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(8, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(8, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(11, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(11, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(12, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(12, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(13, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(13, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(16, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(16, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(17, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(17, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(18, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(18, new ItemStack(ModItems.ironcleanchunkhot, 1));
world.playEvent(1031, pos, 0); world.playEvent(1031, pos, 0);
return true; return true;
} }
@@ -202,7 +243,7 @@ public class ModBlocks {
} }
return false; return false;
} }
}; }; // clean_iron_ingot ironcleanball.json ironcleanballhot.json - done
steelball = new IngotBall(Material.IRON, "steelball", 6.0f, "ingot"){ steelball = new IngotBall(Material.IRON, "steelball", 6.0f, "ingot"){
@Override @Override
public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitx, float hity, float hitz) public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitx, float hity, float hitz)
@@ -236,15 +277,15 @@ public class ModBlocks {
) { ) {
player.swingArm(hand); player.swingArm(hand);
world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2); world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2);
tile.setSlotStack(6, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(6, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(7, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(7, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(8, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(8, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(11, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(11, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(12, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(12, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(13, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(13, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(16, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(16, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(17, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(17, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(18, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(18, new ItemStack(ModItems.steelchunkhot, 1));
world.playEvent(1031, pos, 0); world.playEvent(1031, pos, 0);
return true; return true;
} }
@@ -254,7 +295,7 @@ public class ModBlocks {
} }
return false; return false;
} }
}; }; // steel_ingot steelball.json steelballhot.json
wootzball = new IngotBall(Material.IRON, "wootzball", 6.0f, "ingot") { wootzball = new IngotBall(Material.IRON, "wootzball", 6.0f, "ingot") {
@Override @Override
public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitx, float hity, float hitz) public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitx, float hity, float hitz)
@@ -288,15 +329,15 @@ public class ModBlocks {
) { ) {
player.swingArm(hand); player.swingArm(hand);
world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2); world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2);
tile.setSlotStack(6, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(6, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(7, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(7, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(8, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(8, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(11, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(11, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(12, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(12, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(13, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(13, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(16, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(16, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(17, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(17, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(18, new ItemStack(ModItems.ironchunkhot, 1)); tile.setSlotStack(18, new ItemStack(ModItems.wootzchunkhot, 1));
world.playEvent(1031, pos, 0); world.playEvent(1031, pos, 0);
return true; return true;
} }
@@ -306,12 +347,12 @@ public class ModBlocks {
} }
return false; return false;
} }
}; }; //wootz_ingot wootzball.json wootzballhot.json
ironchunk = new IngotBall(Material.IRON, "ironchunk", 5.0F, "chunk"); ironchunk = new IngotBall(Material.IRON, "ironchunk", 5.0F, "chunk");
ironcleanchunk = new IngotBall(Material.IRON, "ironcleanchunk", 5.0F, "chunk"); ironcleanchunk = new IngotBall(Material.IRON, "ironcleanchunk", 5.0F, "chunk"); //Lyle to make assets clean_iron_ingot, blockstate\ironcleanchunk.json, item\ironcleanchunk.json, item\ironcleanchunkhot.json - done
steelchunk = new IngotBall(Material.IRON, "steelchunk", 6.0f, "chunk"); steelchunk = new IngotBall(Material.IRON, "steelchunk", 6.0f, "chunk"); //steel_ingot steelchunk.json steelchunkhot.json - done
wootzchunk = new IngotBall(Material.IRON, "wootzchunk", 6.0f, "chunk"); wootzchunk = new IngotBall(Material.IRON, "wootzchunk", 6.0f, "chunk"); //wootz_ingot wootzchunk.json wootzchunkhot.json - done
stoneanvil = new Anvil(Material.ANVIL, "stoneanvil", 5.0f); stoneanvil = new Anvil(Material.ANVIL, "stoneanvil", 5.0f);
ironanvil = new Anvil(Material.ANVIL, "ironanvil", 6.0f); ironanvil = new Anvil(Material.ANVIL, "ironanvil", 6.0f);
@@ -324,6 +365,7 @@ public class ModBlocks {
public static void register() { public static void register() {
registerBlock(firebox); registerBlock(firebox);
registerBlock(bloomery); registerBlock(bloomery);
registerBlock(blockbreaker);
registerBlock(pistonbellowsoak); registerBlock(pistonbellowsoak);
registerBlock(pistonbellowsjungle); registerBlock(pistonbellowsjungle);
@@ -344,6 +386,27 @@ public class ModBlocks {
registerBlock(failedironcrucible); registerBlock(failedironcrucible);
registerBlock(failedironcruciblehot); registerBlock(failedironcruciblehot);
registerBlock(rawcleanironcrucible);
registerBlock(hotcleanironcrucible);
registerBlock(hotcookedcleanironcrucible);
registerBlock(coolcleanironcrucible);
registerBlock(failedcleanironcrucible);
registerBlock(failedcleanironcruciblehot);
registerBlock(rawsteelcrucible);
registerBlock(hotsteelcrucible);
registerBlock(hotcookedsteelcrucible);
registerBlock(coolsteelcrucible);
registerBlock(failedsteelcrucible);
registerBlock(failedsteelcruciblehot);
registerBlock(rawwootzcrucible);
registerBlock(hotwootzcrucible);
registerBlock(hotcookedwootzcrucible);
registerBlock(coolwootzcrucible);
registerBlock(failedwootzcrucible);
registerBlock(failedwootzcruciblehot);
registerBlock(ironball); registerBlock(ironball);
registerBlock(ironchunk); registerBlock(ironchunk);
@@ -365,6 +428,7 @@ public class ModBlocks {
@SideOnly(Side.CLIENT) @SideOnly(Side.CLIENT)
public static void registerRenders() { public static void registerRenders() {
registerRender(firebox); registerRender(firebox);
registerRender(blockbreaker);
registerRender(pistonbellowsoak); registerRender(pistonbellowsoak);
registerRender(pistonbellowsjungle); registerRender(pistonbellowsjungle);
registerRender(pistonbellowsbirch); registerRender(pistonbellowsbirch);
@@ -384,6 +448,27 @@ public class ModBlocks {
registerRender(failedironcrucible); registerRender(failedironcrucible);
registerRender(failedironcruciblehot); registerRender(failedironcruciblehot);
registerRender(rawcleanironcrucible);
registerRender(hotcleanironcrucible);
registerRender(hotcookedcleanironcrucible);
registerRender(coolcleanironcrucible);
registerRender(failedcleanironcrucible);
registerRender(failedcleanironcruciblehot);
registerRender(rawsteelcrucible);
registerRender(hotsteelcrucible);
registerRender(hotcookedsteelcrucible);
registerRender(coolsteelcrucible);
registerRender(failedsteelcrucible);
registerRender(failedsteelcruciblehot);
registerRender(rawwootzcrucible);
registerRender(hotwootzcrucible);
registerRender(hotcookedwootzcrucible);
registerRender(coolwootzcrucible);
registerRender(failedwootzcrucible);
registerRender(failedwootzcruciblehot);
registerRender(ironball); registerRender(ironball);
registerRender(ironchunk); registerRender(ironchunk);

View File

@@ -3,9 +3,6 @@ package nmd.primal.forgecraft.init;
import net.minecraftforge.common.MinecraftForge; import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.common.PrimalCore;
import nmd.primal.core.common.init.ModConfig;
import nmd.primal.forgecraft.ClientEvents;
import nmd.primal.forgecraft.CommonEvents; import nmd.primal.forgecraft.CommonEvents;
/** /**

View File

@@ -4,31 +4,23 @@ import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.ItemMeshDefinition; import net.minecraft.client.renderer.ItemMeshDefinition;
import net.minecraft.client.renderer.block.model.ModelBakery; import net.minecraft.client.renderer.block.model.ModelBakery;
import net.minecraft.client.renderer.block.model.ModelResourceLocation; import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumActionResult;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.EnumHand;
import net.minecraft.util.ResourceLocation; import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.client.model.ModelLoader; import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.fml.common.registry.GameRegistry; import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.api.PrimalMaterials;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.blocks.IngotBall;
import nmd.primal.forgecraft.enumhandler.EnumHandler;
import nmd.primal.forgecraft.items.*; import nmd.primal.forgecraft.items.*;
import nmd.primal.forgecraft.items.parts.ToolPart; import nmd.primal.forgecraft.items.parts.ToolPart;
import nmd.primal.forgecraft.items.tools.*; import nmd.primal.forgecraft.items.tools.CustomAxe;
import nmd.primal.forgecraft.items.tools.CustomHoe;
import nmd.primal.forgecraft.items.tools.CustomPickaxe;
import nmd.primal.forgecraft.items.tools.CustomShovel;
import nmd.primal.forgecraft.items.weapons.CustomSword; import nmd.primal.forgecraft.items.weapons.CustomSword;
import nmd.primal.forgecraft.items.weapons.Musket;
import nmd.primal.forgecraft.util.ToolMaterials;
import nmd.primal.forgecraft.items.tools.BaseTool.ForgeToolMaterial;
/** /**
* Created by kitsu on 11/26/2016. * Created by kitsu on 11/26/2016.
@@ -45,18 +37,60 @@ public class ModItems {
public static Item ironchunkhot; public static Item ironchunkhot;
public static Item ironcleaningotballhot; public static Item ironcleaningotballhot;
public static Item ironcleanchunkhot; public static Item ironcleanchunkhot;
public static Item steelingotballhot;
public static Item steelchunkhot;
public static Item wootzingotballhot;
public static Item wootzchunkhot;
public static Item pickaxehead; public static Item pickaxehead;
public static Item ironaxehead; public static Item ironaxehead;
public static Item ironshovelhead; public static Item ironshovelhead;
public static Item ironhoehead; public static Item ironhoehead;
public static Item cleanironpickaxehead;
public static Item cleanironaxehead;
public static Item cleanironshovelhead;
public static Item cleanironhoehead;
public static Item steelpickaxehead;
public static Item steelaxehead;
public static Item steelshovelhead;
public static Item steelhoehead;
public static Item wootzpickaxehead;
public static Item wootzaxehead;
public static Item wootzshovelhead;
public static Item wootzhoehead;
public static Item ironpickaxe; public static Item ironpickaxe;
public static Item ironaxe; public static Item ironaxe;
public static Item ironshovel; public static Item ironshovel;
public static Item ironhoe; public static Item ironhoe;
public static Item cleanironpickaxe;
public static Item cleanironaxe;
public static Item cleanironshovel;
public static Item cleanironhoe;
public static Item steelpickaxe;
public static Item steelaxe;
public static Item steelshovel;
public static Item steelhoe;
public static Item wootzpickaxe;
public static Item wootzaxe;
public static Item wootzshovel;
public static Item wootzhoe;
public static Item ironsword; public static Item ironsword;
public static Item cleanironsword;
public static Item steelsword;
public static Item wootzsword;
public static Item matchlockmusket; public static Item matchlockmusket;
//public static Item forgingmanual; //public static Item forgingmanual;
@@ -67,57 +101,75 @@ public class ModItems {
softcrucible = new ItemSoftCrucible(); softcrucible = new ItemSoftCrucible();
stonetongs = new ItemStoneTongs("stonetongs"); stonetongs = new ItemStoneTongs("stonetongs");
forgehammer = new ForgeHammer("forgehammer"); forgehammer = new ForgeHammer("forgehammer");
//matchlockmusket = new Musket("matchlock_musket");
pickaxehead = new ToolPart("ironpickaxehead", ModMaterials.TOOL_WROUGHT_IRON); /**********
ironaxehead = new ToolPart("ironaxehead", ModMaterials.TOOL_WROUGHT_IRON); TOOL PARTS
ironshovelhead = new ToolPart("ironshovelhead", ModMaterials.TOOL_WROUGHT_IRON); **********/
ironhoehead = new ToolPart("ironhoehead", ModMaterials.TOOL_WROUGHT_IRON); pickaxehead = new ToolPart("ironpickaxehead", PrimalMaterials.TOOL_WROUGHT_IRON);
ironaxehead = new ToolPart("ironaxehead", PrimalMaterials.TOOL_WROUGHT_IRON);
ironshovelhead = new ToolPart("ironshovelhead", PrimalMaterials.TOOL_WROUGHT_IRON);
ironhoehead = new ToolPart("ironhoehead", PrimalMaterials.TOOL_WROUGHT_IRON);
ironpickaxe = new CustomPickaxe("ironpickaxe", ModMaterials.TOOL_WROUGHT_IRON); cleanironpickaxehead = new ToolPart("cleanironpickaxehead", PrimalMaterials.TOOL_CLEAN_IRON);
ironaxe = new CustomAxe("ironaxe", ModMaterials.TOOL_WROUGHT_IRON); cleanironaxehead = new ToolPart("cleanironaxehead", PrimalMaterials.TOOL_CLEAN_IRON);
ironshovel = new CustomShovel("ironshovel", ModMaterials.TOOL_WROUGHT_IRON); cleanironshovelhead = new ToolPart("cleanironshovelhead", PrimalMaterials.TOOL_CLEAN_IRON);
ironhoe = new CustomHoe("ironhoe", ModMaterials.TOOL_WROUGHT_IRON); cleanironhoehead = new ToolPart("cleanironhoehead", PrimalMaterials.TOOL_CLEAN_IRON);
ironsword = new CustomSword("ironsword", ModMaterials.TOOL_WROUGHT_IRON); steelpickaxehead = new ToolPart("steelpickaxehead", PrimalMaterials.TOOL_BASIC_STEEL);
//ironingotballcool = new BaseMultiItem("ironingotcool") {}; steelaxehead = new ToolPart("steelaxehead", PrimalMaterials.TOOL_BASIC_STEEL);
//test = new ItemTest("ironsword"); steelshovelhead = new ToolPart("steelshovelhead", PrimalMaterials.TOOL_BASIC_STEEL);
matchlockmusket = new Musket("matchlock_musket"); steelhoehead = new ToolPart("steelhoehead", PrimalMaterials.TOOL_BASIC_STEEL);
wootzpickaxehead = new ToolPart("wootzpickaxehead", PrimalMaterials.TOOL_WOOTZ_STEEL);
wootzaxehead = new ToolPart("wootzaxehead", PrimalMaterials.TOOL_WOOTZ_STEEL);
wootzshovelhead = new ToolPart("wootzshovelhead", PrimalMaterials.TOOL_WOOTZ_STEEL);
wootzhoehead = new ToolPart("wootzhoehead", PrimalMaterials.TOOL_WOOTZ_STEEL);
/**********
TOOLS
**********/
ironpickaxe = new CustomPickaxe("ironpickaxe", PrimalMaterials.TOOL_WROUGHT_IRON);
ironaxe = new CustomAxe("ironaxe", PrimalMaterials.TOOL_WROUGHT_IRON);
ironshovel = new CustomShovel("ironshovel", PrimalMaterials.TOOL_WROUGHT_IRON);
ironhoe = new CustomHoe("ironhoe", PrimalMaterials.TOOL_WROUGHT_IRON);
cleanironpickaxe = new CustomPickaxe("cleanironpickaxe", PrimalMaterials.TOOL_CLEAN_IRON);
cleanironaxe = new CustomAxe("cleanironaxe", PrimalMaterials.TOOL_CLEAN_IRON);
cleanironshovel = new CustomShovel("cleanironshovel", PrimalMaterials.TOOL_CLEAN_IRON);
cleanironhoe = new CustomHoe("cleanironhoe", PrimalMaterials.TOOL_CLEAN_IRON);
steelpickaxe = new CustomPickaxe("steelpickaxe", PrimalMaterials.TOOL_BASIC_STEEL);
steelaxe = new CustomAxe("steelaxe", PrimalMaterials.TOOL_BASIC_STEEL);
steelshovel = new CustomShovel("steelshovel", PrimalMaterials.TOOL_BASIC_STEEL);
steelhoe = new CustomHoe("steelhoe", PrimalMaterials.TOOL_BASIC_STEEL);
wootzpickaxe = new CustomPickaxe("wootzpickaxe", PrimalMaterials.TOOL_WOOTZ_STEEL);
wootzaxe = new CustomAxe("wootzaxe", PrimalMaterials.TOOL_WOOTZ_STEEL);
wootzshovel = new CustomShovel("wootzshovel", PrimalMaterials.TOOL_WOOTZ_STEEL);
wootzhoe = new CustomHoe("wootzhoe", PrimalMaterials.TOOL_WOOTZ_STEEL);
/**********
WEAPONS
**********/
ironsword = new CustomSword("ironsword", PrimalMaterials.TOOL_WROUGHT_IRON);
cleanironsword = new CustomSword("ironsword", PrimalMaterials.TOOL_CLEAN_IRON);
steelsword = new CustomSword("ironsword", PrimalMaterials.TOOL_BASIC_STEEL);
wootzsword = new CustomSword("ironsword", PrimalMaterials.TOOL_WOOTZ_STEEL);
/**********
INGOTS AND CHUNKS
**********/
ironingotballhot = new BaseMultiItem("ironingothot", PrimalMaterials.TOOL_WROUGHT_IRON);
ironchunkhot = new BaseMultiItem("ironchunkhot", PrimalMaterials.TOOL_WROUGHT_IRON);
ironcleaningotballhot= new BaseMultiItem("ironcleaningotballhot", PrimalMaterials.TOOL_CLEAN_IRON);
ironcleanchunkhot= new BaseMultiItem("ironcleanchunkhot", PrimalMaterials.TOOL_CLEAN_IRON);
steelingotballhot= new BaseMultiItem("steelingotballhot", PrimalMaterials.TOOL_BASIC_STEEL);
steelchunkhot= new BaseMultiItem("steelchunkhot", PrimalMaterials.TOOL_BASIC_STEEL);
wootzingotballhot= new BaseMultiItem("wootzingotballhot", PrimalMaterials.TOOL_WOOTZ_STEEL);
wootzchunkhot= new BaseMultiItem("wootzchunkhot", PrimalMaterials.TOOL_WOOTZ_STEEL);
ironingotballhot = new BaseMultiItem("ironingothot", ModMaterials.TOOL_WROUGHT_IRON);
ironchunkhot = new BaseMultiItem("ironchunkhot", ModMaterials.TOOL_WROUGHT_IRON);
/*ironingotballhot = new BaseMultiItem("ironingothot", ModMaterials.TOOL_WROUGHT_IRON) {
public EnumActionResult onItemUse(EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) {
if(!world.isRemote) {
ItemStack itemstack = player.getHeldItem(hand);
if (world.getBlockState(pos).getBlock() != ModBlocks.firebox) {
BlockPos tempPos = new BlockPos(pos.getX(), pos.getY() + 1, pos.getZ());
if(world.getBlockState(tempPos).getBlock() == Blocks.AIR){
world.setBlockState(tempPos, ModBlocks.ironball.getDefaultState().withProperty(IngotBall.ACTIVE, true), 3);
itemstack.shrink(1);
return EnumActionResult.SUCCESS;
}
}
}
return EnumActionResult.FAIL;
}
};
ironchunkhot = new BaseMultiItem("ironchunkhot", ModMaterials.TOOL_WROUGHT_IRON) {
public EnumActionResult onItemUse(EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) {
if(!world.isRemote) {
ItemStack itemstack = player.getHeldItem(hand);
if (world.getBlockState(pos).getBlock() != ModBlocks.firebox) {
BlockPos tempPos = new BlockPos(pos.getX(), pos.getY() + 1, pos.getZ());
if(world.getBlockState(tempPos).getBlock() == Blocks.AIR){
world.setBlockState(tempPos, ModBlocks.ironchunk.getDefaultState().withProperty(IngotBall.ACTIVE, true), 3);
itemstack.shrink(1);
return EnumActionResult.SUCCESS;
}
}
}
return EnumActionResult.FAIL;
}
};*/
//forgingmanual = new ItemForgingManual(); //forgingmanual = new ItemForgingManual();
//test = new ItemTest("ironsword");
} }
public static void register() { public static void register() {
@@ -127,18 +179,63 @@ public class ModItems {
GameRegistry.register(forgehammer); GameRegistry.register(forgehammer);
GameRegistry.register(ironingotballhot); GameRegistry.register(ironingotballhot);
GameRegistry.register(ironchunkhot); GameRegistry.register(ironchunkhot);
GameRegistry.register(ironcleaningotballhot);
GameRegistry.register(ironcleanchunkhot);
GameRegistry.register(steelingotballhot);
GameRegistry.register(steelchunkhot);
GameRegistry.register(wootzingotballhot);
GameRegistry.register(wootzchunkhot);
//GameRegistry.register(test); //GameRegistry.register(test);
/**********
TOOL PARTS
**********/
GameRegistry.register(pickaxehead); GameRegistry.register(pickaxehead);
GameRegistry.register(ironaxehead); GameRegistry.register(ironaxehead);
GameRegistry.register(ironshovelhead); GameRegistry.register(ironshovelhead);
GameRegistry.register(ironhoehead); GameRegistry.register(ironhoehead);
GameRegistry.register(cleanironpickaxehead);
GameRegistry.register(cleanironaxehead);
GameRegistry.register(cleanironshovelhead);
GameRegistry.register(cleanironhoehead);
GameRegistry.register(steelpickaxehead);
GameRegistry.register(steelaxehead);
GameRegistry.register(steelshovelhead);
GameRegistry.register(steelhoehead);
GameRegistry.register(wootzpickaxehead);
GameRegistry.register(wootzaxehead);
GameRegistry.register(wootzshovelhead);
GameRegistry.register(wootzhoehead);
/**********
TOOLS
**********/
GameRegistry.register(ironpickaxe); GameRegistry.register(ironpickaxe);
GameRegistry.register(ironaxe); GameRegistry.register(ironaxe);
GameRegistry.register(ironshovel); GameRegistry.register(ironshovel);
GameRegistry.register(ironhoe); GameRegistry.register(ironhoe);
GameRegistry.register(cleanironpickaxe);
GameRegistry.register(cleanironaxe);
GameRegistry.register(cleanironshovel);
GameRegistry.register(cleanironhoe);
GameRegistry.register(steelpickaxe);
GameRegistry.register(steelaxe);
GameRegistry.register(steelshovel);
GameRegistry.register(steelhoe);
GameRegistry.register(wootzpickaxe);
GameRegistry.register(wootzaxe);
GameRegistry.register(wootzshovel);
GameRegistry.register(wootzhoe);
/**********
WEAPONS
**********/
GameRegistry.register(ironsword); GameRegistry.register(ironsword);
//GameRegistry.register(matchlockmusket); //GameRegistry.register(matchlockmusket);
@@ -152,17 +249,61 @@ public class ModItems {
registerRender(forgehammer); registerRender(forgehammer);
registerRender(ironingotballhot); registerRender(ironingotballhot);
registerRender(ironchunkhot); registerRender(ironchunkhot);
registerRender(ironcleaningotballhot);
registerRender(ironcleanchunkhot);
registerRender(steelingotballhot);
registerRender(steelchunkhot);
//registerRender(test); //registerRender(test);
/**********
TOOL PARTS
**********/
registerRender(pickaxehead); registerRender(pickaxehead);
registerRender(ironaxehead); registerRender(ironaxehead);
registerRender(ironshovelhead); registerRender(ironshovelhead);
registerRender(ironhoehead); registerRender(ironhoehead);
registerRender(cleanironpickaxehead);
registerRender(cleanironaxehead);
registerRender(cleanironshovelhead);
registerRender(cleanironhoehead);
registerRender(steelpickaxehead);
registerRender(steelaxehead);
registerRender(steelshovelhead);
registerRender(steelhoehead);
registerRender(wootzpickaxehead);
registerRender(wootzaxehead);
registerRender(wootzshovelhead);
registerRender(wootzhoehead);
/**********
TOOLS
**********/
registerRender(ironpickaxe); registerRender(ironpickaxe);
registerRender(ironaxe); registerRender(ironaxe);
registerRender(ironshovel); registerRender(ironshovel);
registerRender(ironhoe); registerRender(ironhoe);
registerRender(cleanironpickaxe);
registerRender(cleanironaxe);
registerRender(cleanironshovel);
registerRender(cleanironhoe);
registerRender(steelpickaxe);
registerRender(steelaxe);
registerRender(steelshovel);
registerRender(steelhoe);
registerRender(wootzpickaxe);
registerRender(wootzaxe);
registerRender(wootzshovel);
registerRender(wootzhoe);
/**********
WEAPONS
**********/
registerRender(ironsword); registerRender(ironsword);
//registerRender(forgingmanual); //registerRender(forgingmanual);
//registerRender(matchlockmusket); //registerRender(matchlockmusket);
@@ -175,6 +316,7 @@ public class ModItems {
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_default"), new ResourceLocation(ModInfo.MOD_ID, "stonetongs_default"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_emptyhot"), new ResourceLocation(ModInfo.MOD_ID, "stonetongs_emptyhot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_emptyhotcracked"), new ResourceLocation(ModInfo.MOD_ID, "stonetongs_emptyhotcracked"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotiron"), new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotiron"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotironcooked"), new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotironcooked"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotironfailed"), new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotironfailed"),
@@ -183,7 +325,27 @@ public class ModItems {
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_pickaxe_hot"), new ResourceLocation(ModInfo.MOD_ID, "stonetongs_pickaxe_hot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_axe_hot"), new ResourceLocation(ModInfo.MOD_ID, "stonetongs_axe_hot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_shovel_hot"), new ResourceLocation(ModInfo.MOD_ID, "stonetongs_shovel_hot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hoe_hot") new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hoe_hot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotcleaniron"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotcleanironcooked"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotcleanironfailed"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_cleanironingot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_cleanironchunk"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_cleaniron_pickaxe_hot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_cleaniron_axe_hot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_cleaniron_shovel_hot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_cleaniron_hoe_hot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotsteel"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotsteelcooked"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotsteelfailed"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_steelingot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_steelchunk"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_steel_pickaxe_hot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_steel_axe_hot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_steel_shovel_hot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_steel_hoe_hot")
); );
ModelLoader.setCustomMeshDefinition(ModItems.stonetongs, new ItemMeshDefinition() { ModelLoader.setCustomMeshDefinition(ModItems.stonetongs, new ItemMeshDefinition() {
@@ -226,6 +388,60 @@ public class ModItems {
else if (stack.getTagCompound().getInteger("type") == 11 ) { else if (stack.getTagCompound().getInteger("type") == 11 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_hoe_hot", "inventory"); return new ModelResourceLocation(stack.getItem().getRegistryName() + "_hoe_hot", "inventory");
} }
else if (stack.getTagCompound().getInteger("type") == 12 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_hotcleaniron", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 13 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_hotcleanironcooked", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 14 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_hotcleanironfailed", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 15 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_cleanironingot", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 16 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_cleanironchunk", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 17 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_cleaniron_pickaxe_hot", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 18 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_cleaniron_axe_hot", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 19 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_cleaniron_shovel_hot", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 20 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_cleaniron_hoe_hot", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 21 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_hotsteel", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 22 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_hotsteelcooked", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 23 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_hotsteelfailed", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 24 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_steelingot", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 25 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_steelchunk", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 26 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_steel_pickaxe_hot", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 27 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_steel_axe_hot", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 28 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_steel_shovel_hot", "inventory");
}
else if (stack.getTagCompound().getInteger("type") == 29 ) {
return new ModelResourceLocation(stack.getItem().getRegistryName() + "_steel_hoe_hot", "inventory");
}
else return new ModelResourceLocation(stack.getItem().getRegistryName(), "inventory"); else return new ModelResourceLocation(stack.getItem().getRegistryName(), "inventory");
} }
return new ModelResourceLocation(stack.getItem().getRegistryName(), "inventory"); return new ModelResourceLocation(stack.getItem().getRegistryName(), "inventory");

View File

@@ -1,15 +0,0 @@
package nmd.primal.forgecraft.init;
import net.minecraft.item.Item;
import net.minecraftforge.common.util.EnumHelper;
/**
* Created by mminaie on 3/30/17.
*/
public class ModMaterials {
public static Item.ToolMaterial TOOL_WROUGHT_IRON = EnumHelper.addToolMaterial("wroughtiron", 2, 500, 4.0F, 1.0F, 0);
public static Item.ToolMaterial CLEAN_IRON = EnumHelper.addToolMaterial("cleaniron", 2, 700, 6.0F, 3.0F, 0);
public static Item.ToolMaterial BASIC_STEEL = EnumHelper.addToolMaterial("steelbasic", 3, 900, 8.0F, 5.0F, 0);
public static Item.ToolMaterial WOOTZ_STEEL = EnumHelper.addToolMaterial("wootzsteel", 3, 1100, 10.0F, 7.0F, 0);
}

View File

@@ -3,9 +3,7 @@ package nmd.primal.forgecraft.init;
import net.minecraft.util.ResourceLocation; import net.minecraft.util.ResourceLocation;
import net.minecraft.util.SoundEvent; import net.minecraft.util.SoundEvent;
import net.minecraftforge.fml.common.registry.ForgeRegistries; import net.minecraftforge.fml.common.registry.ForgeRegistries;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.api.ForgecraftSounds;
/** /**
* Created by mminaie on 3/24/17. * Created by mminaie on 3/24/17.
@@ -13,10 +11,12 @@ import nmd.primal.forgecraft.api.ForgecraftSounds;
public class ModSounds { public class ModSounds {
public static SoundEvent PISTON_BELLOWS; public static SoundEvent PISTON_BELLOWS;
public static SoundEvent MUSKET_SHOT;
public static void registerSounds() public static void registerSounds()
{ {
PISTON_BELLOWS = registerSound("piston_bellows"); PISTON_BELLOWS = registerSound("piston_bellows");
MUSKET_SHOT = registerSound("musket_shot");
} }
private static SoundEvent registerSound(String name) private static SoundEvent registerSound(String name)

View File

@@ -15,6 +15,7 @@ public class ModTiles {
registerTileEntity(TileBloomery.class, "bloomery"); registerTileEntity(TileBloomery.class, "bloomery");
registerTileEntity(TileBaseCrucible.class, "basecrucible"); registerTileEntity(TileBaseCrucible.class, "basecrucible");
registerTileEntity(TileAnvil.class, "anvil"); registerTileEntity(TileAnvil.class, "anvil");
registerTileEntity(TileBreaker.class, "breaker");
} }
private static void registerTileEntity(Class<? extends TileEntity> tile_class, String baseName) { private static void registerTileEntity(Class<? extends TileEntity> tile_class, String baseName) {

View File

@@ -1,7 +1,6 @@
package nmd.primal.forgecraft.items; package nmd.primal.forgecraft.items;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import nmd.primal.forgecraft.items.BaseItem;
/** /**
* Created by mminaie on 2/19/17. * Created by mminaie on 2/19/17.

View File

@@ -15,6 +15,7 @@ public class ForgeHammer extends Item {
//this.setHasSubtypes(true); //This just says the item has metadata //this.setHasSubtypes(true); //This just says the item has metadata
this.setMaxStackSize(1); this.setMaxStackSize(1);
this.setCreativeTab(ModInfo.TAB_FORGECRAFT); this.setCreativeTab(ModInfo.TAB_FORGECRAFT);
} }
} }

View File

@@ -8,8 +8,6 @@ import net.minecraft.util.EnumHand;
import net.minecraft.world.World; import net.minecraft.world.World;
import nmd.primal.forgecraft.ForgeCraft; import nmd.primal.forgecraft.ForgeCraft;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.gui.GuiHandler;
import sun.applet.Main;
/** /**
* Created by mminaie on 2/4/17. * Created by mminaie on 2/4/17.

View File

@@ -1,6 +1,5 @@
package nmd.primal.forgecraft.items; package nmd.primal.forgecraft.items;
import com.mojang.realmsclient.gui.ChatFormatting;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
@@ -8,7 +7,9 @@ import net.minecraft.init.Blocks;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.*; import net.minecraft.util.EnumActionResult;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.EnumHand;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
@@ -39,7 +40,7 @@ public class ItemStoneTongs extends Item {
this.setCreativeTab(ModInfo.TAB_FORGECRAFT); this.setCreativeTab(ModInfo.TAB_FORGECRAFT);
} }
@Override
public void onUpdate(ItemStack item, World world, Entity player, int itemSlot, boolean isSelected) { public void onUpdate(ItemStack item, World world, Entity player, int itemSlot, boolean isSelected) {
if (!item.hasTagCompound()) { if (!item.hasTagCompound()) {
item.setTagCompound(new NBTTagCompound()); item.setTagCompound(new NBTTagCompound());
@@ -59,12 +60,10 @@ public class ItemStoneTongs extends Item {
item.getSubCompound("tags").setInteger("modifiers", 0); item.getSubCompound("tags").setInteger("modifiers", 0);
} }
} }
@Override
public EnumActionResult onItemUse(EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) public EnumActionResult onItemUse(EntityPlayer player, World world, BlockPos pos, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ)
{ {
@@ -72,15 +71,45 @@ public class ItemStoneTongs extends Item {
0 | Default StoneTongs 0 | Default StoneTongs
1 | Empty Crucible Hot 1 | Empty Crucible Hot
2 | Empty Crucible Cracked Hot 2 | Empty Crucible Cracked Hot
================================
3 | Hot Iron Crucible 3 | Hot Iron Crucible
4 | Hot Cooked Iron Crucible 4 | Hot Cooked Iron Crucible
5 | Hot Failed Iron Crucible 5 | Hot Failed Iron Crucible
6 | Hot Iron Ingot 6 | Hot Iron Ingot
7 | Hot Iron Chunk 7 | Hot Iron Chunk
8 | Hot Pickaxe Head --------------------------------
9 | Hot Axe Head 8 | Hot Iron Pickaxe Head
10 | Hot Shovel Head 9 | Hot Iron Axe Head
11 | Hot Hoe Head 10 | Hot Iron Shovel Head
11 | Hot Iron Hoe Head
================================
12 | Hot Clean Iron Crucible
13 | Hot Cooked Clean Iron Crucible
14 | Hot Failed Clean Iron Crucible
15 | Hot Clean Iron Ball
16 | Hot Clean Iron Chunk
--------------------------------
17 | Hot Clean Iron Pickaxe Head
18 | Hot Clean Iron Axe Head
19 | Hot Clean Iron Shovel Head
20 | Hot Clean Iron Hoe Head
================================
21 | Hot Steel Crucible
22 | Hot Cooked Steel Crucible
23 | Hot Failed Steel Crucible
24 | Hot Steel Ingot
25 | Hot Steel Chunk
--------------------------------
26 | Hot Steel Pickaxe Head
27 | Hot Steel Axe Head
28 | Hot Steel Shovel Head
29 | Hot Steel Hoe Head
*/ */
if(!world.isRemote) { if(!world.isRemote) {
@@ -93,24 +122,38 @@ public class ItemStoneTongs extends Item {
*****/ *****/
if (world.getBlockState(pos).getBlock() != ModBlocks.bloomery) { if (world.getBlockState(pos).getBlock() != ModBlocks.bloomery) {
if (world.getBlockState(pos).getBlock() instanceof IngotBall) { if (world.getBlockState(pos).getBlock() instanceof IngotBall) {
//TileBaseCrucible tileCrucible = (TileBaseCrucible) world.getTileEntity(pos); if(world.getBlockState(pos).getValue(IngotBall.ACTIVE) == true) {
if (world.getBlockState(pos).getBlock() == ModBlocks.ironball) { if (world.getBlockState(pos).getBlock() == ModBlocks.ironball) {
if(world.getBlockState(pos).getValue(IngotBall.ACTIVE) == true) {
itemstack.getTagCompound().setInteger("type", 6); itemstack.getTagCompound().setInteger("type", 6);
//itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
world.setBlockToAir(pos); world.setBlockToAir(pos);
//System.out.println(itemstack.getTagCompound().getInteger("type"));
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
} }
} if (world.getBlockState(pos).getBlock() == ModBlocks.ironchunk) {
if (world.getBlockState(pos).getBlock() == ModBlocks.ironchunk) {
if(world.getBlockState(pos).getValue(IngotBall.ACTIVE) == true) {
itemstack.getTagCompound().setInteger("type", 7); itemstack.getTagCompound().setInteger("type", 7);
//itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
world.setBlockToAir(pos); world.setBlockToAir(pos);
//System.out.println(itemstack.getTagCompound().getInteger("type"));
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
} }
if (world.getBlockState(pos).getBlock() == ModBlocks.ironcleanball) {
itemstack.getTagCompound().setInteger("type", 15);
world.setBlockToAir(pos);
return EnumActionResult.SUCCESS;
}
if (world.getBlockState(pos).getBlock() == ModBlocks.ironcleanchunk) {
itemstack.getTagCompound().setInteger("type", 16);
world.setBlockToAir(pos);
return EnumActionResult.SUCCESS;
}
if (world.getBlockState(pos).getBlock() == ModBlocks.steelball) {
itemstack.getTagCompound().setInteger("type", 24);
world.setBlockToAir(pos);
return EnumActionResult.SUCCESS;
}
if (world.getBlockState(pos).getBlock() == ModBlocks.steelchunk) {
itemstack.getTagCompound().setInteger("type", 25);
world.setBlockToAir(pos);
return EnumActionResult.SUCCESS;
}
/* TODO Wootz */
} }
} }
} }
@@ -122,6 +165,9 @@ public class ItemStoneTongs extends Item {
if (world.getBlockState(pos).getBlock() != ModBlocks.bloomery) { if (world.getBlockState(pos).getBlock() != ModBlocks.bloomery) {
if(world.getBlockState(pos).getBlock() instanceof CrucibleHot) { if(world.getBlockState(pos).getBlock() instanceof CrucibleHot) {
TileBaseCrucible tileCrucible = (TileBaseCrucible) world.getTileEntity(pos); TileBaseCrucible tileCrucible = (TileBaseCrucible) world.getTileEntity(pos);
/***************************
* Crucibles *
***************************/
if (world.getBlockState(pos).getBlock() == ModBlocks.emptycruciblehot) { if (world.getBlockState(pos).getBlock() == ModBlocks.emptycruciblehot) {
itemstack.getTagCompound().setInteger("type", 1); itemstack.getTagCompound().setInteger("type", 1);
itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown); itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
@@ -134,6 +180,9 @@ public class ItemStoneTongs extends Item {
world.setBlockToAir(pos); world.setBlockToAir(pos);
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
} }
/***************************
* Iron *
***************************/
if (world.getBlockState(pos).getBlock() == ModBlocks.hotironcrucible) { if (world.getBlockState(pos).getBlock() == ModBlocks.hotironcrucible) {
itemstack.getTagCompound().setInteger("type", 3); itemstack.getTagCompound().setInteger("type", 3);
itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown); itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
@@ -152,13 +201,59 @@ public class ItemStoneTongs extends Item {
world.setBlockToAir(pos); world.setBlockToAir(pos);
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
} }
/***************************
* Clean Iron *
***************************/
if (world.getBlockState(pos).getBlock() == ModBlocks.hotcleanironcrucible) {
itemstack.getTagCompound().setInteger("type", 12);
itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
world.setBlockToAir(pos);
return EnumActionResult.SUCCESS;
}
if (world.getBlockState(pos).getBlock() == ModBlocks.hotcookedcleanironcrucible) {
itemstack.getTagCompound().setInteger("type", 13);
itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
world.setBlockToAir(pos);
return EnumActionResult.SUCCESS;
}
if (world.getBlockState(pos).getBlock() == ModBlocks.failedcleanironcruciblehot) {
itemstack.getTagCompound().setInteger("type", 14);
itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
world.setBlockToAir(pos);
return EnumActionResult.SUCCESS;
}
/***************************
* Steel *
***************************/
if (world.getBlockState(pos).getBlock() == ModBlocks.hotsteelcrucible) {
itemstack.getTagCompound().setInteger("type", 21);
itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
world.setBlockToAir(pos);
return EnumActionResult.SUCCESS;
}
if (world.getBlockState(pos).getBlock() == ModBlocks.hotcookedsteelcrucible) {
itemstack.getTagCompound().setInteger("type", 22);
itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
world.setBlockToAir(pos);
return EnumActionResult.SUCCESS;
}
if (world.getBlockState(pos).getBlock() == ModBlocks.failedsteelcruciblehot) {
itemstack.getTagCompound().setInteger("type", 23);
itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
world.setBlockToAir(pos);
return EnumActionResult.SUCCESS;
}
/* TODO Wootz */
} }
/***** /*****
Places the content from the Tongs to the World Places the content from the Tongs to the World
*****/ *****/
if ((world.getBlockState(pos).getBlock() instanceof Crucible) || (world.getBlockState(pos).getBlock() instanceof CrucibleHot)) { if ((world.getBlockState(pos).getBlock() instanceof Crucible) || (world.getBlockState(pos).getBlock() instanceof CrucibleHot)) {
return EnumActionResult.FAIL; return EnumActionResult.FAIL;
} else if (world.getBlockState(pos).getMaterial() == Material.ROCK || world.getBlockState(pos).getMaterial() == Material.SAND) } else if (world.getBlockState(pos).getMaterial() == Material.ROCK ||
world.getBlockState(pos).getMaterial() == Material.SAND ||
world.getBlockState(pos).getMaterial() == Material.IRON ||
world.getBlockState(pos).getMaterial() == Material.ANVIL )
{ {
BlockPos tempPos = new BlockPos(pos.getX(), pos.getY() + 1, pos.getZ()); BlockPos tempPos = new BlockPos(pos.getX(), pos.getY() + 1, pos.getZ());
if (world.getBlockState(tempPos).getBlock() == Blocks.AIR) { if (world.getBlockState(tempPos).getBlock() == Blocks.AIR) {
@@ -208,8 +303,80 @@ public class ItemStoneTongs extends Item {
world.setBlockState(tempPos, ModBlocks.ironchunk.getDefaultState().withProperty(IngotBall.ACTIVE, true), 3); world.setBlockState(tempPos, ModBlocks.ironchunk.getDefaultState().withProperty(IngotBall.ACTIVE, true), 3);
itemstack.getTagCompound().setInteger("type", 0); itemstack.getTagCompound().setInteger("type", 0);
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
case 8:
return EnumActionResult.FAIL;
case 9: case 9:
return EnumActionResult.FAIL; return EnumActionResult.FAIL;
case 10:
return EnumActionResult.FAIL;
case 11:
return EnumActionResult.FAIL;
case 12:
world.setBlockState(tempPos, ModBlocks.hotcleanironcrucible.getDefaultState(), 3);
TileBaseCrucible tileCrucible12 = (TileBaseCrucible) world.getTileEntity(tempPos);
tileCrucible12.countdown = itemstack.getTagCompound().getInteger("cooldown");
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 0);
return EnumActionResult.SUCCESS;
case 13:
world.setBlockState(tempPos, ModBlocks.hotcookedcleanironcrucible.getDefaultState(), 2);
TileBaseCrucible tileCrucible13 = (TileBaseCrucible) world.getTileEntity(tempPos);
tileCrucible13.countdown = itemstack.getTagCompound().getInteger("cooldown");
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 0);
return EnumActionResult.SUCCESS;
case 14:
world.setBlockState(tempPos, ModBlocks.failedcleanironcruciblehot.getDefaultState(), 3);
TileBaseCrucible tileCrucible14 = (TileBaseCrucible) world.getTileEntity(tempPos);
tileCrucible14.countdown = itemstack.getTagCompound().getInteger("cooldown");
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 0);
return EnumActionResult.SUCCESS;
case 15:
world.setBlockState(tempPos, ModBlocks.ironcleanball.getDefaultState().withProperty(IngotBall.ACTIVE, true), 3);
itemstack.getTagCompound().setInteger("type", 0);
return EnumActionResult.SUCCESS;
case 16:
world.setBlockState(tempPos, ModBlocks.ironcleanchunk.getDefaultState().withProperty(IngotBall.ACTIVE, true), 3);
itemstack.getTagCompound().setInteger("type", 0);
return EnumActionResult.SUCCESS;
case 17:
return EnumActionResult.FAIL;
case 18:
return EnumActionResult.FAIL;
case 19:
return EnumActionResult.FAIL;
case 20:
return EnumActionResult.FAIL;
case 21:
world.setBlockState(tempPos, ModBlocks.hotsteelcrucible.getDefaultState(), 3);
TileBaseCrucible tileCrucible21 = (TileBaseCrucible) world.getTileEntity(tempPos);
tileCrucible21.countdown = itemstack.getTagCompound().getInteger("cooldown");
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 0);
return EnumActionResult.SUCCESS;
case 22:
world.setBlockState(tempPos, ModBlocks.hotcookedsteelcrucible.getDefaultState(), 3);
TileBaseCrucible tileCrucible22 = (TileBaseCrucible) world.getTileEntity(tempPos);
tileCrucible22.countdown = itemstack.getTagCompound().getInteger("cooldown");
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 0);
return EnumActionResult.SUCCESS;
case 23:
world.setBlockState(tempPos, ModBlocks.failedsteelcruciblehot.getDefaultState(), 3);
TileBaseCrucible tileCrucible23 = (TileBaseCrucible) world.getTileEntity(tempPos);
tileCrucible23.countdown = itemstack.getTagCompound().getInteger("cooldown");
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 0);
return EnumActionResult.SUCCESS;
case 24:
world.setBlockState(tempPos, ModBlocks.steelball.getDefaultState().withProperty(IngotBall.ACTIVE, true), 3);
itemstack.getTagCompound().setInteger("type", 0);
return EnumActionResult.SUCCESS;
case 25:
world.setBlockState(tempPos, ModBlocks.steelchunk.getDefaultState().withProperty(IngotBall.ACTIVE, true), 3);
itemstack.getTagCompound().setInteger("type", 0);
return EnumActionResult.SUCCESS;
} }
} }
} }
@@ -222,24 +389,59 @@ public class ItemStoneTongs extends Item {
TileBloomery tile = (TileBloomery) world.getTileEntity(pos); TileBloomery tile = (TileBloomery) world.getTileEntity(pos);
if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.emptycruciblehot))) { if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.emptycruciblehot))) {
itemstack.getTagCompound().setInteger("type", 1); itemstack.getTagCompound().setInteger("type", 1);
itemstack.getTagCompound().setInteger("cooldown", 0);
tile.setSlotStack(1, ItemStack.EMPTY); tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.emptycruciblecrackedhot))) { } else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.emptycruciblecrackedhot))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 2); itemstack.getTagCompound().setInteger("type", 2);
tile.setSlotStack(1, ItemStack.EMPTY); tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.hotironcrucible))) { } else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.hotironcrucible))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 3); itemstack.getTagCompound().setInteger("type", 3);
tile.setSlotStack(1, ItemStack.EMPTY); tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.hotcookedironcrucible))) { } else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.hotcookedironcrucible))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 4); itemstack.getTagCompound().setInteger("type", 4);
tile.setSlotStack(1, ItemStack.EMPTY); tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.failedironcruciblehot))) { } else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.failedironcruciblehot))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 5); itemstack.getTagCompound().setInteger("type", 5);
tile.setSlotStack(1, ItemStack.EMPTY); tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.hotcleanironcrucible))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 12);
tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.hotcookedcleanironcrucible))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 13);
tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.failedcleanironcrucible))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 14);
tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.hotsteelcrucible))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 21);
tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.hotcookedsteelcrucible))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 22);
tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.failedsteelcrucible))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 23);
tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
} }
} }
@@ -306,6 +508,116 @@ public class ItemStoneTongs extends Item {
return EnumActionResult.SUCCESS; return EnumActionResult.SUCCESS;
} }
} }
if (tile.getSlotStack(i).getItem().equals(ModItems.ironcleanchunkhot)) {
tile.setSlotStack(i, ItemStack.EMPTY);
itemstack.getTagCompound().setInteger("type", 16);
return EnumActionResult.SUCCESS;
}
if (tile.getSlotStack(i).getItem().equals(ModItems.ironcleaningotballhot)) {
tile.setSlotStack(i, ItemStack.EMPTY);
itemstack.getTagCompound().setInteger("type", 15);
return EnumActionResult.SUCCESS;
}
if (tile.getSlotStack(i).getItem().equals(ModItems.cleanironpickaxehead)) {
if(tile.getSlotStack(i).getSubCompound("tags").getBoolean("hot") == true) {
itemstack.getTagCompound().setInteger("type", 17);
NBTTagCompound tags = tile.getSlotStack(i).getSubCompound("tags").copy();
itemstack.getTagCompound().setTag("tags", tags);
itemstack.getTagCompound().setInteger("tempDamage", tile.getSlotStack(i).getItemDamage());
//itemstack.getSubCompound("tags").setBoolean("hot", true);
tile.setSlotStack(i, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
}
}
if (tile.getSlotStack(i).getItem().equals(ModItems.cleanironaxehead)) {
if(tile.getSlotStack(i).getSubCompound("tags").getBoolean("hot") == true) {
itemstack.getTagCompound().setInteger("type", 18);
NBTTagCompound tags = tile.getSlotStack(i).getSubCompound("tags").copy();
itemstack.getTagCompound().setTag("tags", tags);
itemstack.getTagCompound().setInteger("tempDamage", tile.getSlotStack(i).getItemDamage());
//itemstack.getSubCompound("tags").setBoolean("hot", true);
tile.setSlotStack(i, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
}
}
if (tile.getSlotStack(i).getItem().equals(ModItems.cleanironshovelhead)) {
if(tile.getSlotStack(i).getSubCompound("tags").getBoolean("hot") == true) {
itemstack.getTagCompound().setInteger("type", 19);
NBTTagCompound tags = tile.getSlotStack(i).getSubCompound("tags").copy();
itemstack.getTagCompound().setTag("tags", tags);
itemstack.getTagCompound().setInteger("tempDamage", tile.getSlotStack(i).getItemDamage());
//itemstack.getSubCompound("tags").setBoolean("hot", true);
tile.setSlotStack(i, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
}
}
if (tile.getSlotStack(i).getItem().equals(ModItems.cleanironhoehead)) {
if(tile.getSlotStack(i).getSubCompound("tags").getBoolean("hot") == true) {
itemstack.getTagCompound().setInteger("type", 20);
NBTTagCompound tags = tile.getSlotStack(i).getSubCompound("tags").copy();
itemstack.getTagCompound().setTag("tags", tags);
itemstack.getTagCompound().setInteger("tempDamage", tile.getSlotStack(i).getItemDamage());
//itemstack.getSubCompound("tags").setBoolean("hot", true);
tile.setSlotStack(i, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
}
}
if (tile.getSlotStack(i).getItem().equals(ModItems.steelchunkhot)) {
tile.setSlotStack(i, ItemStack.EMPTY);
itemstack.getTagCompound().setInteger("type", 25);
return EnumActionResult.SUCCESS;
}
if (tile.getSlotStack(i).getItem().equals(ModItems.steelingotballhot)) {
tile.setSlotStack(i, ItemStack.EMPTY);
itemstack.getTagCompound().setInteger("type", 24);
return EnumActionResult.SUCCESS;
}
if (tile.getSlotStack(i).getItem().equals(ModItems.steelpickaxehead)) {
if(tile.getSlotStack(i).getSubCompound("tags").getBoolean("hot") == true) {
itemstack.getTagCompound().setInteger("type", 26);
NBTTagCompound tags = tile.getSlotStack(i).getSubCompound("tags").copy();
itemstack.getTagCompound().setTag("tags", tags);
itemstack.getTagCompound().setInteger("tempDamage", tile.getSlotStack(i).getItemDamage());
//itemstack.getSubCompound("tags").setBoolean("hot", true);
tile.setSlotStack(i, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
}
}
if (tile.getSlotStack(i).getItem().equals(ModItems.steelaxehead)) {
if(tile.getSlotStack(i).getSubCompound("tags").getBoolean("hot") == true) {
itemstack.getTagCompound().setInteger("type", 27);
NBTTagCompound tags = tile.getSlotStack(i).getSubCompound("tags").copy();
itemstack.getTagCompound().setTag("tags", tags);
itemstack.getTagCompound().setInteger("tempDamage", tile.getSlotStack(i).getItemDamage());
//itemstack.getSubCompound("tags").setBoolean("hot", true);
tile.setSlotStack(i, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
}
}
if (tile.getSlotStack(i).getItem().equals(ModItems.steelshovelhead)) {
if(tile.getSlotStack(i).getSubCompound("tags").getBoolean("hot") == true) {
itemstack.getTagCompound().setInteger("type", 28);
NBTTagCompound tags = tile.getSlotStack(i).getSubCompound("tags").copy();
itemstack.getTagCompound().setTag("tags", tags);
itemstack.getTagCompound().setInteger("tempDamage", tile.getSlotStack(i).getItemDamage());
//itemstack.getSubCompound("tags").setBoolean("hot", true);
tile.setSlotStack(i, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
}
}
if (tile.getSlotStack(i).getItem().equals(ModItems.steelhoehead)) {
if(tile.getSlotStack(i).getSubCompound("tags").getBoolean("hot") == true) {
itemstack.getTagCompound().setInteger("type", 29);
NBTTagCompound tags = tile.getSlotStack(i).getSubCompound("tags").copy();
itemstack.getTagCompound().setTag("tags", tags);
itemstack.getTagCompound().setInteger("tempDamage", tile.getSlotStack(i).getItemDamage());
//itemstack.getSubCompound("tags").setBoolean("hot", true);
tile.setSlotStack(i, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
}
}
} }
} }
} }

View File

@@ -1,19 +1,5 @@
package nmd.primal.forgecraft.items; package nmd.primal.forgecraft.items;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.IItemPropertyGetter;
import net.minecraft.item.ItemFishingRod;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.ModInfo;
import javax.annotation.Nullable;
/** /**
* Created by kitsu on 11/26/2016. * Created by kitsu on 11/26/2016.
*/ */

View File

@@ -5,8 +5,6 @@ import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock; import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;

View File

@@ -14,8 +14,6 @@ import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.ToolNBT; import nmd.primal.forgecraft.ToolNBT;
import nmd.primal.forgecraft.enumhandler.EnumHandler;
import nmd.primal.forgecraft.items.tools.BaseTool;
import javax.annotation.Nullable; import javax.annotation.Nullable;
import java.util.List; import java.util.List;
@@ -197,6 +195,12 @@ public class ToolPart extends Item implements ToolNBT{
(getLapisLevel(item) == 2) ) { (getLapisLevel(item) == 2) ) {
return 0.0102F; return 0.0102F;
} }
if ( (getEmerald(item) == false) &&
(getDiamondLevel(item) == 0) &&
(getRedstoneLevel(item) == 1) &&
(getLapisLevel(item) == 1) ) {
return 0.0011F;
}
} }
} }
if (getHot(item) == true) { if (getHot(item) == true) {

View File

@@ -5,10 +5,7 @@ import net.minecraft.block.Block;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.item.ItemTool;
import nmd.primal.forgecraft.enumhandler.EnumHandler;
import java.util.Set; import java.util.Set;

View File

@@ -14,7 +14,6 @@ import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.enumhandler.EnumHandler;
import java.util.Set; import java.util.Set;

View File

@@ -1,7 +1,6 @@
package nmd.primal.forgecraft.items.tools; package nmd.primal.forgecraft.items.tools;
import com.mojang.realmsclient.gui.ChatFormatting; import com.mojang.realmsclient.gui.ChatFormatting;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.enchantment.Enchantment; import net.minecraft.enchantment.Enchantment;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;

View File

@@ -1,24 +1,17 @@
package nmd.primal.forgecraft.items.tools; package nmd.primal.forgecraft.items.tools;
import com.google.common.collect.Sets;
import com.mojang.realmsclient.gui.ChatFormatting; import com.mojang.realmsclient.gui.ChatFormatting;
import net.minecraft.block.Block;
import net.minecraft.block.material.Material; import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.enchantment.Enchantment; import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentDigging;
import net.minecraft.enchantment.EnchantmentUntouching;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.item.IItemPropertyGetter; import net.minecraft.item.IItemPropertyGetter;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemPickaxe; import net.minecraft.item.ItemPickaxe;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.nbt.NBTTagList;
import net.minecraft.util.IStringSerializable;
import net.minecraft.util.ResourceLocation; import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World; import net.minecraft.world.World;
@@ -26,7 +19,6 @@ import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.ToolNBT; import nmd.primal.forgecraft.ToolNBT;
import nmd.primal.forgecraft.enumhandler.EnumHandler;
import javax.annotation.Nullable; import javax.annotation.Nullable;
import java.util.List; import java.util.List;

View File

@@ -3,7 +3,6 @@ package nmd.primal.forgecraft.items.tools;
import com.google.common.collect.Sets; import com.google.common.collect.Sets;
import com.mojang.realmsclient.gui.ChatFormatting; import com.mojang.realmsclient.gui.ChatFormatting;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.enchantment.Enchantment; import net.minecraft.enchantment.Enchantment;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;

View File

@@ -1,9 +1,11 @@
package nmd.primal.forgecraft.items.weapons; package nmd.primal.forgecraft.items.weapons;
import net.minecraft.block.BlockDispenser;
import net.minecraft.creativetab.CreativeTabs; import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.item.*; import net.minecraft.item.IItemPropertyGetter;
import net.minecraft.item.Item;
import net.minecraft.item.ItemShield;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation; import net.minecraft.util.ResourceLocation;
import net.minecraft.world.World; import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;

View File

@@ -6,7 +6,6 @@ import net.minecraft.item.ItemSword;
import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.ToolNBT;
/** /**
* Created by mminaie on 3/23/17. * Created by mminaie on 3/23/17.

View File

@@ -1,9 +1,22 @@
package nmd.primal.forgecraft.items.weapons; package nmd.primal.forgecraft.items.weapons;
import net.minecraft.item.Item; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.EnumAction;
import net.minecraft.item.IItemPropertyGetter;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.*;
import net.minecraft.world.World;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.common.entities.projectiles.EntityMuckBall;
import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.init.ModSounds;
import nmd.primal.forgecraft.items.BaseItem; import nmd.primal.forgecraft.items.BaseItem;
import javax.annotation.Nullable;
/** /**
* Created by Lyle on 4/2/2017. * Created by Lyle on 4/2/2017.
*/ */
@@ -15,5 +28,95 @@ public class Musket extends BaseItem{
this.setCreativeTab(ModInfo.TAB_FORGECRAFT); this.setCreativeTab(ModInfo.TAB_FORGECRAFT);
this.setMaxStackSize(1); this.setMaxStackSize(1);
this.setNoRepair(); this.setNoRepair();
//this.description = ".72 Calibre"
this.addPropertyOverride(new ResourceLocation("type"), new IItemPropertyGetter() {
@SideOnly(Side.CLIENT)
public float apply(ItemStack item, @Nullable World worldIn, @Nullable EntityLivingBase entityIn) {
if(item.hasTagCompound()){
if ( item.getTagCompound().getBoolean("use") == true) {
return 0.1f;
} else return 0.0f;
} else return 0.0f;
}
});
}
// Temporary onItemRightClick method
@Override
public void onPlayerStoppedUsing(ItemStack stack, World world, EntityLivingBase entityLiving, int timeLeft)
{
System.out.println("Stopped Using");
EntityPlayer player = (EntityPlayer) entityLiving;
System.out.println(player.getItemInUseCount());
//if(player.getItemInUseCount() > 5) {
world.playSound( null, player.posX, player.posY, player.posZ, ModSounds.MUSKET_SHOT, SoundCategory.BLOCKS, 0.5F, 0.3F / (itemRand.nextFloat() * 0.4F + 0.8F));
EntityMuckBall entity = new EntityMuckBall(world, player);
entity.setHeadingFromThrower(player, player.rotationPitch, player.rotationYaw, 0.0F, 7.0F, 0.5F);
world.spawnEntity(entity);
if (!stack.hasTagCompound()) {
stack.setTagCompound(new NBTTagCompound());
}
stack.getTagCompound().setBoolean("use", false);
//}
}
/*
public ItemStack onItemUseFinish(ItemStack stack, World world, EntityLivingBase entityLiving)
{
if (entityLiving instanceof EntityPlayer)
{
EntityPlayer player = (EntityPlayer) entityLiving;
world.playSound( null, player.posX, player.posY, player.posZ, ModSounds.MUSKET_SHOT, SoundCategory.BLOCKS, 0.5F, 0.3F / (itemRand.nextFloat() * 0.4F + 0.8F));
EntityMuckBall entity = new EntityMuckBall(world, player);
entity.setHeadingFromThrower(player, player.rotationPitch, player.rotationYaw, 0.0F, 7.0F, 0.5F);
world.spawnEntity(entity);
}
return stack;
}
*/
@Override
public ActionResult<ItemStack> onItemRightClick(World worldIn, EntityPlayer playerIn, EnumHand handIn)
{
ItemStack itemstack = playerIn.getHeldItem(handIn);
boolean flag = true;
if (!itemstack.hasTagCompound()) {
itemstack.setTagCompound(new NBTTagCompound());
}
itemstack.getTagCompound().setBoolean("use", true);
ActionResult<ItemStack> ret = net.minecraftforge.event.ForgeEventFactory.onArrowNock(itemstack, worldIn, playerIn, handIn, flag);
if (ret != null) {
return ret;
}
if (!playerIn.capabilities.isCreativeMode && !flag)
{
return flag ? new ActionResult(EnumActionResult.PASS, itemstack) : new ActionResult(EnumActionResult.FAIL, itemstack);
}
else
{
playerIn.setActiveHand(handIn);
return new ActionResult(EnumActionResult.SUCCESS, itemstack);
}
}
public int getMaxItemUseDuration(ItemStack stack)
{
return 7200;
}
/**
* returns the action that specifies what animation to play when the items is being used
*/
public EnumAction getItemUseAction(ItemStack stack)
{
return EnumAction.BOW;
} }
} }

View File

@@ -3,14 +3,8 @@ package nmd.primal.forgecraft.proxy;
import net.minecraftforge.fml.client.registry.ClientRegistry; import net.minecraftforge.fml.client.registry.ClientRegistry;
import nmd.primal.forgecraft.init.ModBlocks; import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.renders.blocks.TileAnvilRender; import nmd.primal.forgecraft.renders.blocks.*;
import nmd.primal.forgecraft.renders.blocks.TileBloomeryRender; import nmd.primal.forgecraft.tiles.*;
import nmd.primal.forgecraft.renders.blocks.TileForgeRender;
import nmd.primal.forgecraft.renders.blocks.TilePistonBellowsRender;
import nmd.primal.forgecraft.tiles.TileAnvil;
import nmd.primal.forgecraft.tiles.TileBloomery;
import nmd.primal.forgecraft.tiles.TileForge;
import nmd.primal.forgecraft.tiles.TilePistonBellows;
/** /**
* Created by kitsu on 11/26/2016. * Created by kitsu on 11/26/2016.
@@ -39,6 +33,7 @@ public class ClientProxy implements CommonProxy {
ClientRegistry.bindTileEntitySpecialRenderer(TilePistonBellows.class, new TilePistonBellowsRender()); ClientRegistry.bindTileEntitySpecialRenderer(TilePistonBellows.class, new TilePistonBellowsRender());
ClientRegistry.bindTileEntitySpecialRenderer(TileBloomery.class, new TileBloomeryRender()); ClientRegistry.bindTileEntitySpecialRenderer(TileBloomery.class, new TileBloomeryRender());
ClientRegistry.bindTileEntitySpecialRenderer(TileAnvil.class, new TileAnvilRender()); ClientRegistry.bindTileEntitySpecialRenderer(TileAnvil.class, new TileAnvilRender());
ClientRegistry.bindTileEntitySpecialRenderer(TileBreaker.class, new TileBreakerRender());
} }
@Override @Override

View File

@@ -11,18 +11,14 @@ import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.item.EnumDyeColor; import net.minecraft.item.EnumDyeColor;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing; import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import nmd.primal.core.api.PrimalItems; import nmd.primal.core.api.PrimalItems;
import nmd.primal.forgecraft.blocks.Anvil; import nmd.primal.forgecraft.blocks.Anvil;
import nmd.primal.forgecraft.blocks.IngotBall; import nmd.primal.forgecraft.blocks.IngotBall;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.items.BaseMultiItem;
import nmd.primal.forgecraft.tiles.TileAnvil; import nmd.primal.forgecraft.tiles.TileAnvil;
import nmd.primal.forgecraft.tiles.TileBloomery;
import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL11;
/** /**
@@ -48,8 +44,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE); Minecraft.getMinecraft().getTextureManager().bindTexture(TextureMap.LOCATION_BLOCKS_TEXTURE);
float prevLGTX = OpenGlHelper.lastBrightnessX; float prevLGTX = OpenGlHelper.lastBrightnessX;
float prevLGTY = OpenGlHelper.lastBrightnessY; float prevLGTY = OpenGlHelper.lastBrightnessY;
BlockPos pos = tile.getPos(); BlockPos pos = tile.getPos();
IBlockState state = this.getWorld().getBlockState(pos); IBlockState state = this.getWorld().getBlockState(pos);
int bright = tile.getWorld().getCombinedLight(pos.up(), 0); int bright = tile.getWorld().getCombinedLight(pos.up(), 0);
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, bright % 65536, bright / 65536); OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, bright % 65536, bright / 65536);
@@ -92,13 +91,13 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
for(int i=0; i < 5; i++){ for(int i=0; i < 5; i++){
for(int a=0; a<5; a++){ for(int a=0; a<5; a++){
if(!tile.getSlotStack(counter).isEmpty()){ if(!tile.getSlotStack(counter).isEmpty()){
Item item = tile.getSlotStack(counter).getItem();
if(tile.getSlotStack(counter).getItem().equals(Items.REDSTONE) || if(item.equals(Items.REDSTONE) ||
(tile.getSlotStack(counter).getItem().equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) || (item.equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.EMERALD_KNAPP) || item.equals(PrimalItems.EMERALD_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.DIAMOND_KNAPP) || item.equals(PrimalItems.DIAMOND_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(Items.DIAMOND) || item.equals(Items.DIAMOND) ||
tile.getSlotStack(counter).getItem().equals(Items.EMERALD) item.equals(Items.EMERALD)
){ ){
GL11.glPushMatrix(); GL11.glPushMatrix();
@@ -108,7 +107,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.pickaxehead)){ if(item.equals(ModItems.pickaxehead) ||
item.equals(ModItems.cleanironpickaxehead) ||
item.equals(ModItems.steelpickaxehead) ||
item.equals(ModItems.wootzpickaxehead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -116,7 +119,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironaxehead)){ if(item.equals(ModItems.ironaxehead) ||
item.equals(ModItems.cleanironaxehead) ||
item.equals(ModItems.steelaxehead) ||
item.equals(ModItems.wootzaxehead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -125,7 +132,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironshovelhead)){ if(item.equals(ModItems.ironshovelhead) ||
item.equals(ModItems.cleanironshovelhead) ||
item.equals(ModItems.steelshovelhead) ||
item.equals(ModItems.steelshovelhead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -134,7 +145,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironhoehead)){ if(item.equals(ModItems.ironhoehead)){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -143,7 +154,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(Block.getBlockFromItem(tile.getSlotStack(counter).getItem()) instanceof IngotBall){ if(Block.getBlockFromItem(item) instanceof IngotBall){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -151,7 +162,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem() == ModItems.ironchunkhot || tile.getSlotStack(counter).getItem() == ModItems.ironingotballhot){ if(item instanceof BaseMultiItem){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -170,13 +181,13 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
for(int i=0; i < 5; i++){ for(int i=0; i < 5; i++){
for(int a=0; a<5; a++){ for(int a=0; a<5; a++){
if(!tile.getSlotStack(counter).isEmpty()){ if(!tile.getSlotStack(counter).isEmpty()){
Item item = tile.getSlotStack(counter).getItem();
if(tile.getSlotStack(counter).getItem().equals(Items.REDSTONE) || if(item.equals(Items.REDSTONE) ||
(tile.getSlotStack(counter).getItem().equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) || (item.equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.EMERALD_KNAPP) || item.equals(PrimalItems.EMERALD_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.DIAMOND_KNAPP) || item.equals(PrimalItems.DIAMOND_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(Items.DIAMOND) || item.equals(Items.DIAMOND) ||
tile.getSlotStack(counter).getItem().equals(Items.EMERALD) item.equals(Items.EMERALD)
){ ){
GL11.glPushMatrix(); GL11.glPushMatrix();
GL11.glTranslated( tile.getReverseX(a), -0.49D, tile.getReverseZ(i) ); GL11.glTranslated( tile.getReverseX(a), -0.49D, tile.getReverseZ(i) );
@@ -185,7 +196,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.pickaxehead)){ if(item.equals(ModItems.pickaxehead) ||
item.equals(ModItems.cleanironpickaxehead) ||
item.equals(ModItems.steelpickaxehead) ||
item.equals(ModItems.wootzpickaxehead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -193,7 +208,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironaxehead)){ if(item.equals(ModItems.ironaxehead) ||
item.equals(ModItems.cleanironaxehead) ||
item.equals(ModItems.steelaxehead) ||
item.equals(ModItems.wootzaxehead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -202,7 +221,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironshovelhead)){ if(item.equals(ModItems.ironshovelhead) ||
item.equals(ModItems.cleanironshovelhead) ||
item.equals(ModItems.steelshovelhead) ||
item.equals(ModItems.steelshovelhead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -211,7 +234,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironhoehead)){ if(item.equals(ModItems.ironhoehead) ||
item.equals(ModItems.cleanironhoehead) ||
item.equals(ModItems.steelhoehead) ||
item.equals(ModItems.wootzhoehead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -220,7 +247,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(Block.getBlockFromItem(tile.getSlotStack(counter).getItem()) instanceof IngotBall){ if(Block.getBlockFromItem(item) instanceof IngotBall){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -228,7 +255,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem() == ModItems.ironchunkhot || tile.getSlotStack(counter).getItem() == ModItems.ironingotballhot){ if(item instanceof BaseMultiItem){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -247,13 +274,13 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
for(int a=0; a < 5; a++){ for(int a=0; a < 5; a++){
for(int i=0; i<5; i++){ for(int i=0; i<5; i++){
if(!tile.getSlotStack(counter).isEmpty()){ if(!tile.getSlotStack(counter).isEmpty()){
Item item = tile.getSlotStack(counter).getItem();
if(tile.getSlotStack(counter).getItem().equals(Items.REDSTONE) || if(item.equals(Items.REDSTONE) ||
(tile.getSlotStack(counter).getItem().equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) || (item.equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.EMERALD_KNAPP) || item.equals(PrimalItems.EMERALD_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.DIAMOND_KNAPP) || item.equals(PrimalItems.DIAMOND_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(Items.DIAMOND) || item.equals(Items.DIAMOND) ||
tile.getSlotStack(counter).getItem().equals(Items.EMERALD) item.equals(Items.EMERALD)
){ ){
GL11.glPushMatrix(); GL11.glPushMatrix();
GL11.glTranslated( tile.getNormalX(a), -0.49D, tile.getReverseZ(i) ); GL11.glTranslated( tile.getNormalX(a), -0.49D, tile.getReverseZ(i) );
@@ -263,7 +290,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.pickaxehead)){ if(item.equals(ModItems.pickaxehead) ||
item.equals(ModItems.cleanironpickaxehead) ||
item.equals(ModItems.steelpickaxehead) ||
item.equals(ModItems.wootzpickaxehead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -272,7 +303,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironaxehead)){ if(item.equals(ModItems.ironaxehead) ||
item.equals(ModItems.cleanironaxehead) ||
item.equals(ModItems.steelaxehead) ||
item.equals(ModItems.wootzaxehead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -281,7 +316,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironshovelhead)){ if(item.equals(ModItems.ironshovelhead) ||
item.equals(ModItems.cleanironshovelhead) ||
item.equals(ModItems.steelshovelhead) ||
item.equals(ModItems.steelshovelhead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -290,7 +329,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironhoehead)){ if(item.equals(ModItems.ironhoehead)){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -299,7 +338,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(Block.getBlockFromItem(tile.getSlotStack(counter).getItem()) instanceof IngotBall){ if(Block.getBlockFromItem(item) instanceof IngotBall){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -307,7 +346,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem() == ModItems.ironchunkhot || tile.getSlotStack(counter).getItem() == ModItems.ironingotballhot){ if(item instanceof BaseMultiItem){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -325,14 +364,13 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
for(int a=0; a < 5; a++){ for(int a=0; a < 5; a++){
for(int i=0; i<5; i++){ for(int i=0; i<5; i++){
if(!tile.getSlotStack(counter).isEmpty()){ if(!tile.getSlotStack(counter).isEmpty()){
Item item = tile.getSlotStack(counter).getItem();
//GL11.glTranslated( tile.getReverseX(a), 0.0D, tile.getNormalZ(i) ); if(item.equals(Items.REDSTONE) ||
if(tile.getSlotStack(counter).getItem().equals(Items.REDSTONE) || (item.equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
(tile.getSlotStack(counter).getItem().equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) || item.equals(PrimalItems.EMERALD_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.EMERALD_KNAPP) || item.equals(PrimalItems.DIAMOND_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.DIAMOND_KNAPP) || item.equals(Items.DIAMOND) ||
tile.getSlotStack(counter).getItem().equals(Items.DIAMOND) || item.equals(Items.EMERALD)
tile.getSlotStack(counter).getItem().equals(Items.EMERALD)
){ ){
GL11.glPushMatrix(); GL11.glPushMatrix();
GL11.glTranslated( tile.getReverseX(a), -0.49D, tile.getNormalZ(i) ); GL11.glTranslated( tile.getReverseX(a), -0.49D, tile.getNormalZ(i) );
@@ -343,7 +381,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.pickaxehead)){ if(item.equals(ModItems.pickaxehead) ||
item.equals(ModItems.cleanironpickaxehead) ||
item.equals(ModItems.steelpickaxehead) ||
item.equals(ModItems.wootzpickaxehead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -352,7 +394,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironaxehead)){ if(item.equals(ModItems.ironaxehead) ||
item.equals(ModItems.cleanironaxehead) ||
item.equals(ModItems.steelaxehead) ||
item.equals(ModItems.wootzaxehead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -361,7 +407,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironshovelhead)){ if(item.equals(ModItems.ironshovelhead) ||
item.equals(ModItems.cleanironshovelhead) ||
item.equals(ModItems.steelshovelhead) ||
item.equals(ModItems.steelshovelhead)
){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -370,7 +420,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironhoehead)){ if(item.equals(ModItems.ironhoehead)){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -379,7 +429,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(Block.getBlockFromItem(tile.getSlotStack(counter).getItem()) instanceof IngotBall){ if(Block.getBlockFromItem(item) instanceof IngotBall){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -387,7 +437,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem() == ModItems.ironchunkhot || tile.getSlotStack(counter).getItem() == ModItems.ironingotballhot){ if(item instanceof BaseMultiItem){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -406,10 +456,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
} }
private void doRendering(TileAnvil tile, Integer counter, Integer i, Integer a){ private void doRendering(TileAnvil tile, Integer counter, Integer i, Integer a){
if(tile.getSlotStack(counter).getItem().equals(Items.REDSTONE) || Item item = tile.getSlotStack(counter).getItem();
(tile.getSlotStack(counter).getItem().equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) || if(item.equals(Items.REDSTONE) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.EMERALD_KNAPP) || (item.equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.DIAMOND_KNAPP) item.equals(PrimalItems.EMERALD_KNAPP) ||
item.equals(PrimalItems.DIAMOND_KNAPP)
){ ){
GL11.glPushMatrix(); GL11.glPushMatrix();
@@ -419,7 +470,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.pickaxehead)){ if(item.equals(ModItems.pickaxehead)){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -427,7 +478,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironaxehead)){ if(item.equals(ModItems.ironaxehead)){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -436,7 +487,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironshovelhead)){ if(item.equals(ModItems.ironshovelhead)){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -445,7 +496,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironhoehead)){ if(item.equals(ModItems.ironhoehead)){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -454,7 +505,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem() == ModItems.ironingotballhot ){ if(item == ModItems.ironingotballhot ){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);
@@ -462,7 +513,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix(); GL11.glPopMatrix();
} }
if(tile.getSlotStack(counter).getItem() == ModItems.ironchunkhot){ if(item == ModItems.ironchunkhot){
GL11.glPushMatrix(); GL11.glPushMatrix();
double scale = 1.0D; double scale = 1.0D;
GL11.glScaled(scale, scale, scale); GL11.glScaled(scale, scale, scale);

View File

@@ -0,0 +1,102 @@
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.util.EnumFacing;
import net.minecraft.util.math.BlockPos;
import nmd.primal.forgecraft.blocks.Breaker;
import nmd.primal.forgecraft.tiles.TileBreaker;
import org.lwjgl.opengl.GL11;
/**
* Created by mminaie on 4/9/17.
*/
public class TileBreakerRender extends TileEntitySpecialRenderer<TileBreaker>
{
private RenderItem renderItem = Minecraft.getMinecraft().getRenderItem();
@Override
public void renderTileEntityAt(TileBreaker tile, double x, double y, double z, float partialTicks, int destroyStage)
{
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;
BlockPos pos = tile.getPos();
IBlockState state = this.getWorld().getBlockState(pos);
int bright = tile.getWorld().getCombinedLight(pos.up(), 0);
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, bright % 65536, bright / 65536);
//ItemStack stack0 = tile.getSlotStack(0);
if(state.getValue(Breaker.FACING) == EnumFacing.NORTH) {
GL11.glPushMatrix();
GL11.glTranslated(0.5D, 0.450D, 0.7);
GL11.glRotated(90, 0.0f, 1.0f, 0.0f);
GL11.glRotatef(-135, 0.0f, 0.0f, 1.0f);
GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, 1.0f);
GL11.glTranslatef(0.0f, 0.40f, 0.0f);
GL11.glTranslated(-0.45D, 0.0D, 0.0D);
renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(state.getValue(Breaker.FACING) == EnumFacing.EAST) {
GL11.glPushMatrix();
GL11.glTranslated(0.3D, 0.450D, 0.5);
//GL11.glRotated(90, 0.0f, 1.0f, 0.0f);
GL11.glRotatef(-135, 0.0f, 0.0f, 1.0f);
GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, 1.0f);
GL11.glTranslatef(0.0f, 0.40f, 0.0f);
GL11.glTranslated(-0.45D, 0.0D, 0.0D);
renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(state.getValue(Breaker.FACING) == EnumFacing.SOUTH) {
GL11.glPushMatrix();
GL11.glTranslated(0.5D, 0.450D, 0.3);
GL11.glRotated(90, 0.0f, 1.0f, 0.0f);
GL11.glRotatef(45, 0.0f, 0.0f, 1.0f);
GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, -1.0f);
GL11.glTranslatef(0.0f, 0.40f, 0.0f);
GL11.glTranslated(-0.45D, 0.0D, 0.0D);
renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(state.getValue(Breaker.FACING) == EnumFacing.WEST) {
GL11.glPushMatrix();
GL11.glTranslated(0.7D, 0.450D, 0.5);
//GL11.glRotated(90, 0.0f, 1.0f, 0.0f);
GL11.glRotatef(45, 0.0f, 0.0f, 1.0f);
GL11.glRotatef(tile.getCharge(), 0.0f, 0.0f, -1.0f);
GL11.glTranslatef(0.0f, 0.40f, 0.0f);
GL11.glTranslated(-0.45D, 0.0D, 0.0D);
renderItem.renderItem(tile.getSlotStack(0), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
OpenGlHelper.setLightmapTextureCoords(OpenGlHelper.lightmapTexUnit, prevLGTX, prevLGTY);
GL11.glPopMatrix();
}
}

View File

@@ -52,21 +52,21 @@ public class TileAnvil extends TileBaseSlot implements ITickable {
if ( ThreadLocalRandom.current().nextInt(0,10000) == 0 ) { if ( ThreadLocalRandom.current().nextInt(0,10000) == 0 ) {
for(int i=0; i<this.getSlotListSize(); i++){ for(int i=0; i<this.getSlotListSize(); i++){
if(this.getSlotStack(i).getItem() == ModItems.ironchunkhot){ if(this.getSlotStack(i).getItem() == ModItems.ironchunkhot){
if(ThreadLocalRandom.current().nextInt(0,100) == 1){ if(ThreadLocalRandom.current().nextInt(0,1000) == 1){
this.setSlotStack(i, new ItemStack(ModBlocks.ironchunk, 1)); this.setSlotStack(i, new ItemStack(ModBlocks.ironchunk, 1));
this.updateBlock(); this.updateBlock();
this.markDirty(); this.markDirty();
} }
} }
if(this.getSlotStack(i).getItem() == ModItems.ironingotballhot){ if(this.getSlotStack(i).getItem() == ModItems.ironingotballhot){
if(ThreadLocalRandom.current().nextInt(0,100) == 2){ if(ThreadLocalRandom.current().nextInt(0,1000) == 2){
this.setSlotStack(i, new ItemStack(ModBlocks.ironball, 1)); this.setSlotStack(i, new ItemStack(ModBlocks.ironball, 1));
this.updateBlock(); this.updateBlock();
this.markDirty(); this.markDirty();
} }
} }
if(this.getSlotStack(i).getItem() instanceof ToolPart){ if(this.getSlotStack(i).getItem() instanceof ToolPart){
if(ThreadLocalRandom.current().nextInt(0,100) == 0){ if(ThreadLocalRandom.current().nextInt(0,1000) == 3){
((ToolPart) this.getSlotStack(i).getItem()).setHot(this.getSlotStack(i), false); ((ToolPart) this.getSlotStack(i).getItem()).setHot(this.getSlotStack(i), false);
this.updateBlock(); this.updateBlock();
this.markDirty(); this.markDirty();

View File

@@ -2,7 +2,6 @@ package nmd.primal.forgecraft.tiles;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.ITickable; import net.minecraft.util.ITickable;
import net.minecraft.world.World; import net.minecraft.world.World;

View File

@@ -1,18 +1,20 @@
package nmd.primal.forgecraft.tiles; package nmd.primal.forgecraft.tiles;
import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.ITickable; import net.minecraft.util.ITickable;
import net.minecraft.util.NonNullList; import net.minecraft.util.NonNullList;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World; import net.minecraft.world.World;
import nmd.primal.core.common.helper.CommonUtils;
import nmd.primal.core.common.helper.ParticleHelper;
import nmd.primal.forgecraft.blocks.Bloomery; import nmd.primal.forgecraft.blocks.Bloomery;
import nmd.primal.forgecraft.blocks.Crucible;
import nmd.primal.forgecraft.blocks.Forge; import nmd.primal.forgecraft.blocks.Forge;
import nmd.primal.forgecraft.crafting.BloomeryCrafting; import nmd.primal.forgecraft.crafting.BloomeryCrafting;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.init.ModItems;
import static nmd.primal.forgecraft.CommonUtils.getVanillaItemBurnTime; import static nmd.primal.forgecraft.CommonUtils.getVanillaItemBurnTime;
@@ -40,6 +42,7 @@ public class TileBloomery extends TileBaseSlot implements ITickable {
this.iteration ++; this.iteration ++;
if(this.iteration == 300 ) { if(this.iteration == 300 ) {
this.iteration = 0; this.iteration = 0;
//IBlockState state = world.getBlockState(this.pos); //IBlockState state = world.getBlockState(this.pos);
BlockPos abovePos = new BlockPos(this.getPos().getX(), this.getPos().getY()+1, this.getPos().getZ()); BlockPos abovePos = new BlockPos(this.getPos().getX(), this.getPos().getY()+1, this.getPos().getZ());
if (world.getBlockState(this.getPos()).getValue(Bloomery.ACTIVE)) { if (world.getBlockState(this.getPos()).getValue(Bloomery.ACTIVE)) {
@@ -68,14 +71,14 @@ public class TileBloomery extends TileBaseSlot implements ITickable {
if(cookCounter >= recipe.getIdealTime() ){ if(cookCounter >= recipe.getIdealTime() ){
if(this.getSlotStack(1).getItem() == recipe.getInput().getItem()) { if(this.getSlotStack(1).getItem() == recipe.getInput().getItem()) {
this.setSlotStack(1, recipe.getOutput()); this.setSlotStack(1, recipe.getOutput());
this.cookCounter = 0; //this.cookCounter = 0;
//System.out.print(" :Success: " + this.getSlotStack(1)); //System.out.print(" :Success: " + this.getSlotStack(1));
this.updateBlock(); this.updateBlock();
this.markDirty(); this.markDirty();
} }
} }
if(cookCounter > recipe.getIdealTime() + (recipe.getIdealTime() * recipe.getTimeVariance())){ if(cookCounter > recipe.getIdealTime() + (recipe.getIdealTime() * recipe.getTimeVariance())){
if(this.getSlotStack(1).getItem() == recipe.getInput().getItem()) { if(this.getSlotStack(1).getItem() == recipe.getOutput().getItem()) {
this.setSlotStack(1, recipe.getOutputFailed()); this.setSlotStack(1, recipe.getOutputFailed());
this.cookCounter = 0; this.cookCounter = 0;
//System.out.print(" :Failure Time: " + this.getSlotStack(1)); //System.out.print(" :Failure Time: " + this.getSlotStack(1));
@@ -114,6 +117,7 @@ public class TileBloomery extends TileBaseSlot implements ITickable {
this.markDirty(); this.markDirty();
this.updateBlock(); this.updateBlock();
} }
CommonUtils.makeSmoke(world, pos);
} }
} }
@@ -176,7 +180,7 @@ public class TileBloomery extends TileBaseSlot implements ITickable {
if (stack.getItem() == ModItems.softcrucible) { if (stack.getItem() == ModItems.softcrucible) {
return true; return true;
} }
if(stack.getItem() == Item.getItemFromBlock(ModBlocks.rawironcrucible)){ if(Block.getBlockFromItem(stack.getItem()) instanceof Crucible ){
return true; return true;
} }
} }

View File

@@ -0,0 +1,49 @@
package nmd.primal.forgecraft.tiles;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.NonNullList;
/**
* Created by mminaie on 4/9/17.
*/
public class TileBreaker extends TileBaseSlot {
private float charge = 0.0f;
public float getCharge() {
return charge;
}
public void setCharge(float a) {
this.charge = a;
this.updateBlock();
}
public NonNullList<ItemStack> slotList = NonNullList.<ItemStack>withSize(1, ItemStack.EMPTY);
@Override
public int getSlotLimit() {
return 1;
}
// ***************************************************************************** //
// NBT
// ***************************************************************************** //
@Override
public NBTTagCompound readNBT(NBTTagCompound nbt)
{
super.readNBT(nbt);
this.charge = nbt.getFloat("charge");
return nbt;
}
@Override
public NBTTagCompound writeNBT(NBTTagCompound nbt)
{
nbt.setFloat("charge", this.charge);
super.writeNBT(nbt);
return nbt;
}
}

View File

@@ -1,22 +1,18 @@
package nmd.primal.forgecraft.tiles; package nmd.primal.forgecraft.tiles;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.block.BlockFurnace;
import net.minecraft.block.state.IBlockState; import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items; import net.minecraft.init.Items;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntityFurnace;
import net.minecraft.util.ITickable; import net.minecraft.util.ITickable;
import net.minecraft.util.NonNullList; import net.minecraft.util.NonNullList;
import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World; import net.minecraft.world.World;
import nmd.primal.core.common.helper.CommonUtils;
import nmd.primal.forgecraft.blocks.Forge; import nmd.primal.forgecraft.blocks.Forge;
import nmd.primal.forgecraft.blocks.IngotBall;
import nmd.primal.forgecraft.crafting.ForgeCrafting; import nmd.primal.forgecraft.crafting.ForgeCrafting;
import org.omg.PortableInterceptor.ACTIVE;
import static nmd.primal.forgecraft.CommonUtils.getVanillaItemBurnTime; import static nmd.primal.forgecraft.CommonUtils.getVanillaItemBurnTime;
@@ -52,17 +48,7 @@ public class TileForge extends TileBaseSlot implements ITickable {
this.markDirty(); this.markDirty();
world.notifyBlockUpdate(pos, state, state, 2); world.notifyBlockUpdate(pos, state, state, 2);
} }
if(this.getSlotStack(0) != ItemStack.EMPTY) { slotZeroManager(world);
Integer decrInt = (int) Math.floor(getVanillaItemBurnTime(this.getSlotStack(0)) / 20);
if(decrInt == 0) {
decrInt = 1;
}
if (world.rand.nextInt(decrInt) == 0) {
this.decrStackSize(0, 1);
this.markDirty();
this.updateBlock();
}
}
} }
this.heatManager(this.getHeat(), state, this.getSlotStack(0), world, pos); this.heatManager(this.getHeat(), state, this.getSlotStack(0), world, pos);
} }
@@ -70,6 +56,26 @@ public class TileForge extends TileBaseSlot implements ITickable {
} }
} }
private void slotZeroManager(World world){
if(this.getSlotStack(0) != ItemStack.EMPTY) {
Integer decrInt = (int) Math.floor(getVanillaItemBurnTime(this.getSlotStack(0)) / 20);
if(decrInt == 0) {
decrInt = 1;
}
if (world.rand.nextInt(decrInt) == 0) {
this.decrStackSize(0, 1);
this.markDirty();
this.updateBlock();
}
if (this.getSlotStack(0).getCount() == 1){
this.decrStackSize(0, 1);
this.markDirty();
this.updateBlock();
}
CommonUtils.makeSmoke(world, pos);
}
}
private void heatManager(Integer h, IBlockState state, ItemStack stack, World world, BlockPos pos){ private void heatManager(Integer h, IBlockState state, ItemStack stack, World world, BlockPos pos){
if(state.getValue(Forge.ACTIVE) == true){ if(state.getValue(Forge.ACTIVE) == true){
if(!stack.isEmpty()) { if(!stack.isEmpty()) {

View File

@@ -1,7 +1,5 @@
package nmd.primal.forgecraft.util; package nmd.primal.forgecraft.util;
import net.minecraft.item.ItemStack;
/** /**
* Created by mminaie on 3/29/17. * Created by mminaie on 3/29/17.
*/ */

View File

@@ -0,0 +1,12 @@
{
"variants": {
"active=false,facing=north": { "model": "forgecraft:blockbreaker" },
"active=false,facing=east": { "model": "forgecraft:blockbreaker", "y": 90 },
"active=false,facing=south": { "model": "forgecraft:blockbreaker", "y": 180 },
"active=false,facing=west": { "model": "forgecraft:blockbreaker", "y": 270 },
"active=true,facing=north": { "model": "forgecraft:blockbreakeractive" },
"active=true,facing=east": { "model": "forgecraft:blockbreakeractive", "y": 90 },
"active=true,facing=south": { "model": "forgecraft:blockbreakeractive", "y": 180 },
"active=true,facing=west": { "model": "forgecraft:blockbreakeractive", "y": 270 }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab",
"texture": "forgecraft:blocks/stone_slab"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab",
"texture": "forgecraft:blocks/stone_slab"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab",
"texture": "forgecraft:blocks/stone_slab"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab_burnt",
"texture": "forgecraft:blocks/stone_slab_burnt"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab_hot_burnt",
"texture": "forgecraft:blocks/stone_slab_hot_burnt"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab_burnt",
"texture": "forgecraft:blocks/stone_slab_burnt"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab_hot_burnt",
"texture": "forgecraft:blocks/stone_slab_hot_burnt"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab_burnt",
"texture": "forgecraft:blocks/stone_slab_burnt"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab_hot_burnt",
"texture": "forgecraft:blocks/stone_slab_hot_burnt"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab_hot",
"texture": "forgecraft:blocks/stone_slab_hot"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab_hot",
"texture": "forgecraft:blocks/stone_slab_hot"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab_hot",
"texture": "forgecraft:blocks/stone_slab_hot"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab_hot",
"texture": "forgecraft:blocks/stone_slab_hot"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab_hot",
"texture": "forgecraft:blocks/stone_slab_hot"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab_hot",
"texture": "forgecraft:blocks/stone_slab_hot"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,17 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/anvil_base",
"texture": "forgecraft:blocks/anvil_base",
"texture1": "forgecraft:blocks/anvil_base_top"
},
"parent": "forgecraft:ironanvil"
},
"variants": {
"facing=north": { "model": "forgecraft:ironanvil" },
"facing=east": { "model": "forgecraft:ironanvil", "y": 90 },
"facing=south": { "model": "forgecraft:ironanvil", "y": 180 },
"facing=west": { "model": "forgecraft:ironanvil", "y": 270 }
}
}

View File

@@ -1,6 +1,3 @@
{ {
"forge_marker":1, "forge_marker":1,
"defaults": { "defaults": {

View File

@@ -0,0 +1,26 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/clean_iron_ingot",
"texture": "forgecraft:blocks/clean_iron_ingot"
},
"parent": "forgecraft:ironball"
},
"variants": {
"active=false": {
"model": "forgecraft:ironball",
"textures": {
"particle": "forgecraft:blocks/clean_iron_ingot",
"texture": "forgecraft:blocks/clean_iron_ingot"
}
},
"active=true": {
"model": "forgecraft:ironball",
"textures": {
"particle": "forgecraft:blocks/clean_iron_ingot_hot",
"texture": "forgecraft:blocks/clean_iron_ingot_hot"
}
}
}
}

View File

@@ -0,0 +1,26 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/clean_iron_ingot",
"texture": "forgecraft:blocks/clean_iron_ingot"
},
"parent": "forgecraft:ironchunk"
},
"variants": {
"active=false": {
"model": "forgecraft:ironchunk",
"textures": {
"particle": "forgecraft:blocks/clean_iron_ingot",
"texture": "forgecraft:blocks/clean_iron_ingot"
}
},
"active=true": {
"model": "forgecraft:ironchunk",
"textures": {
"particle": "forgecraft:blocks/clean_iron_ingot_hot",
"texture": "forgecraft:blocks/clean_iron_ingot_hot"
}
}
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab",
"texture": "forgecraft:blocks/stone_slab"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab",
"texture": "forgecraft:blocks/stone_slab"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,12 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/stone_slab",
"texture": "forgecraft:blocks/stone_slab"
}
},
"variants": {
"normal": { "model": "forgecraft:crucibleshut" }
}
}

View File

@@ -0,0 +1,26 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/steel_ingot",
"texture": "forgecraft:blocks/steel_ingot"
},
"parent": "forgecraft:ironball"
},
"variants": {
"active=false": {
"model": "forgecraft:ironball",
"textures": {
"particle": "forgecraft:blocks/steel_ingot",
"texture": "forgecraft:blocks/steel_ingot"
}
},
"active=true": {
"model": "forgecraft:ironball",
"textures": {
"particle": "forgecraft:blocks/steel_ingot_hot",
"texture": "forgecraft:blocks/steel_ingot_hot"
}
}
}
}

View File

@@ -0,0 +1,26 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/steel_ingot",
"texture": "forgecraft:blocks/steel_ingot"
},
"parent": "forgecraft:ironchunk"
},
"variants": {
"active=false": {
"model": "forgecraft:ironchunk",
"textures": {
"particle": "forgecraft:blocks/steel_ingot",
"texture": "forgecraft:blocks/steel_ingot"
}
},
"active=true": {
"model": "forgecraft:ironchunk",
"textures": {
"particle": "forgecraft:blocks/steel_ingot_hot",
"texture": "forgecraft:blocks/steel_ingot_hot"
}
}
}
}

View File

@@ -0,0 +1,26 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/wootz_ingot",
"texture": "forgecraft:blocks/wootz_ingot"
},
"parent": "forgecraft:ironball"
},
"variants": {
"active=false": {
"model": "forgecraft:ironball",
"textures": {
"particle": "forgecraft:blocks/wootz_ingot",
"texture": "forgecraft:blocks/wootz_ingot"
}
},
"active=true": {
"model": "forgecraft:ironball",
"textures": {
"particle": "forgecraft:blocks/wootz_ingot_hot",
"texture": "forgecraft:blocks/wootz_ingot_hot"
}
}
}
}

View File

@@ -0,0 +1,26 @@
{
"forge_marker":1,
"defaults": {
"textures": {
"particle": "forgecraft:blocks/wootz_ingot",
"texture": "forgecraft:blocks/wootz_ingot"
},
"parent": "forgecraft:ironchunk"
},
"variants": {
"active=false": {
"model": "forgecraft:ironchunk",
"textures": {
"particle": "forgecraft:blocks/wootz_ingot",
"texture": "forgecraft:blocks/wootz_ingot"
}
},
"active=true": {
"model": "forgecraft:ironchunk",
"textures": {
"particle": "forgecraft:blocks/wootz_ingot_hot",
"texture": "forgecraft:blocks/wootz_ingot_hot"
}
}
}
}

View File

@@ -0,0 +1,200 @@
{
"__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio",
"textures": {
"particle": "blocks/planks_oak",
"texture": "blocks/planks_oak",
"texture1": "forgecraft:blocks/leather",
"texture2": "forgecraft:blocks/lever"
},
"elements": [
{
"__comment": "Cube1",
"from": [ 0, 0, 0 ],
"to": [ 6, 2, 16 ],
"faces": {
"down": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" },
"up": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" },
"north": { "uv": [ 10, 14, 16, 16 ], "texture": "#texture" },
"south": { "uv": [ 0, 14, 6, 16 ], "texture": "#texture" },
"west": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture" }
}
},
{
"__comment": "Cube2",
"from": [ 6, 0, 2 ],
"to": [ 10, 2, 16 ],
"faces": {
"down": { "uv": [ 6, 0, 10, 14 ], "texture": "#texture" },
"up": { "uv": [ 6, 2, 10, 16 ], "texture": "#texture" },
"north": { "uv": [ 6, 14, 10, 16 ], "texture": "#texture" },
"south": { "uv": [ 6, 14, 10, 16 ], "texture": "#texture" }
}
},
{
"__comment": "Cube3",
"from": [ 10, 0, 0 ],
"to": [ 16, 2, 16 ],
"faces": {
"down": { "uv": [ 10, 0, 16, 16 ], "texture": "#texture" },
"up": { "uv": [ 10, 0, 16, 16 ], "texture": "#texture" },
"north": { "uv": [ 0, 14, 6, 16 ], "texture": "#texture" },
"south": { "uv": [ 10, 14, 16, 16 ], "texture": "#texture" },
"east": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture" }
}
},
{
"__comment": "PlaneX5",
"from": [ 6, 0, 0 ],
"to": [ 6.001, 2, 2 ],
"faces": {
"east": { "uv": [ 14, 14, 16, 16 ], "texture": "#texture" }
}
},
{
"__comment": "PlaneX6",
"from": [ 10, 0, 0 ],
"to": [ 10.001, 2, 2 ],
"faces": {
"west": { "uv": [ 0, 14, 2, 16 ], "texture": "#texture" }
}
},
{
"__comment": "Cube7",
"from": [ 0, 2, 8 ],
"to": [ 2, 4, 15 ],
"faces": {
"down": { "uv": [ 0, 1, 2, 8 ], "texture": "#texture" },
"up": { "uv": [ 0, 8, 2, 15 ], "texture": "#texture" },
"north": { "uv": [ 14, 12, 16, 14 ], "texture": "#texture" },
"south": { "uv": [ 0, 12, 2, 14 ], "texture": "#texture" },
"west": { "uv": [ 8, 12, 15, 14 ], "texture": "#texture" },
"east": { "uv": [ 1, 12, 8, 14 ], "texture": "#texture" }
}
},
{
"__comment": "Cube8",
"from": [ 0, 4, 9 ],
"to": [ 2, 6, 14 ],
"faces": {
"down": { "uv": [ 0, 2, 2, 7 ], "texture": "#texture" },
"up": { "uv": [ 0, 9, 2, 14 ], "texture": "#texture" },
"north": { "uv": [ 14, 10, 16, 12 ], "texture": "#texture" },
"south": { "uv": [ 0, 10, 2, 12 ], "texture": "#texture" },
"west": { "uv": [ 9, 10, 14, 12 ], "texture": "#texture" },
"east": { "uv": [ 2, 10, 7, 12 ], "texture": "#texture" }
}
},
{
"__comment": "Cube9",
"from": [ 0, 6, 10 ],
"to": [ 2, 8, 13 ],
"faces": {
"down": { "uv": [ 0, 3, 2, 6 ], "texture": "#texture" },
"up": { "uv": [ 0, 10, 2, 13 ], "texture": "#texture" },
"north": { "uv": [ 14, 8, 16, 10 ], "texture": "#texture" },
"south": { "uv": [ 0, 8, 2, 10 ], "texture": "#texture" },
"west": { "uv": [ 10, 8, 13, 10 ], "texture": "#texture" },
"east": { "uv": [ 3, 8, 6, 10 ], "texture": "#texture" }
}
},
{
"__comment": "Cube7",
"from": [ 14, 2, 8 ],
"to": [ 16, 4, 15 ],
"faces": {
"down": { "uv": [ 0, 0, 2, 7 ], "texture": "#texture" },
"up": { "uv": [ 0, 9, 2, 16 ], "texture": "#texture" },
"north": { "uv": [ 14, 12, 16, 14 ], "texture": "#texture" },
"south": { "uv": [ 0, 12, 2, 14 ], "texture": "#texture" },
"west": { "uv": [ 9, 12, 16, 14 ], "texture": "#texture" },
"east": { "uv": [ 0, 12, 7, 14 ], "texture": "#texture" }
}
},
{
"__comment": "Cube8",
"from": [ 14, 4, 9 ],
"to": [ 16, 6, 14 ],
"faces": {
"down": { "uv": [ 0, 1, 2, 6 ], "texture": "#texture" },
"up": { "uv": [ 0, 10, 2, 15 ], "texture": "#texture" },
"north": { "uv": [ 14, 10, 16, 12 ], "texture": "#texture" },
"south": { "uv": [ 0, 10, 2, 12 ], "texture": "#texture" },
"west": { "uv": [ 10, 10, 15, 12 ], "texture": "#texture" },
"east": { "uv": [ 1, 10, 6, 12 ], "texture": "#texture" }
}
},
{
"__comment": "Cube9",
"from": [ 14, 6, 10 ],
"to": [ 16, 8, 13 ],
"faces": {
"down": { "uv": [ 0, 2, 2, 5 ], "texture": "#texture" },
"up": { "uv": [ 0, 11, 2, 14 ], "texture": "#texture" },
"north": { "uv": [ 14, 8, 16, 10 ], "texture": "#texture" },
"south": { "uv": [ 0, 8, 2, 10 ], "texture": "#texture" },
"west": { "uv": [ 11, 8, 14, 10 ], "texture": "#texture" },
"east": { "uv": [ 2, 8, 5, 10 ], "texture": "#texture" }
}
},
{
"__comment": "Cube13",
"from": [ 2, 6.5, 10.5 ],
"to": [ 14, 8, 12 ],
"faces": {
"down": { "uv": [ 2, 1, 14, 3 ], "texture": "#texture1" },
"up": { "uv": [ 2, 13, 14, 15 ], "texture": "#texture1" },
"north": { "uv": [ 2, 8, 14, 10 ], "texture": "#texture1" },
"south": { "uv": [ 2, 8, 14, 10 ], "texture": "#texture1" }
}
},
{
"__comment": "Cube14",
"from": [ 2, 5.5, 12.5 ],
"to": [ 3, 11.5, 13.5 ],
"faces": {
"down": { "uv": [ 15, 2.5, 16, 3.5 ], "texture": "#texture2" },
"up": { "uv": [ 14, 0, 15, 1 ], "texture": "#texture2" },
"north": { "uv": [ 11.5, 0, 12.5, 6 ], "texture": "#texture2" },
"south": { "uv": [ 13, 0, 14, 6 ], "texture": "#texture2" },
"west": { "uv": [ 14, 0, 15, 6 ], "texture": "#texture2" },
"east": { "uv": [ 15, 0, 16, 6 ], "texture": "#texture2" }
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [ 75, 45, 0 ],
"translation": [ 0, 2.5, 0 ],
"scale": [ 0.375, 0.375, 0.375 ]
},
"thirdperson_lefthand": {
"rotation": [ 75, 45, 0 ],
"translation": [ 0, 2.5, 0 ],
"scale": [ 0.375, 0.375, 0.375 ]
},
"firstperson_righthand": {
"rotation": [ 0, 45, 0 ],
"translation": [ 0, 1, 0 ],
"scale": [ 0.4, 0.4, 0.4 ]
},
"firstperson_lefthand": {
"rotation": [ 0, 45, 0 ],
"translation": [ 0, 1, 0 ],
"scale": [ 0.4, 0.4, 0.4 ]
},
"gui": {
"rotation": [ 30, 225, 0 ],
"translation": [ 0, 2.5, 0 ],
"scale": [ 0.625, 0.625, 0.625 ]
},
"ground": {
"translation": [ 0, 1, 0 ],
"scale": [ 0.25, 0.25, 0.25 ]
},
"fixed": {
"rotation": [ -90, -90, 0 ],
"translation": [ 0, 0, -3 ],
"scale": [ 0.5, 0.5, 0.5 ]
}
}
}

View File

@@ -0,0 +1,200 @@
{
"__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio",
"textures": {
"particle": "blocks/e_particle",
"texture": "blocks/e_texture",
"texture1": "blocks/checker_test",
"texture2": "blocks/e_texture"
},
"elements": [
{
"__comment": "Cube1",
"from": [ 0, 0, 0 ],
"to": [ 6, 2, 16 ],
"faces": {
"down": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" },
"up": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" },
"north": { "uv": [ 10, 14, 16, 16 ], "texture": "#texture" },
"south": { "uv": [ 0, 14, 6, 16 ], "texture": "#texture" },
"west": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture" }
}
},
{
"__comment": "Cube2",
"from": [ 6, 0, 2 ],
"to": [ 10, 2, 16 ],
"faces": {
"down": { "uv": [ 6, 0, 10, 14 ], "texture": "#texture" },
"up": { "uv": [ 6, 2, 10, 16 ], "texture": "#texture" },
"north": { "uv": [ 6, 14, 10, 16 ], "texture": "#texture" },
"south": { "uv": [ 6, 14, 10, 16 ], "texture": "#texture" }
}
},
{
"__comment": "Cube3",
"from": [ 10, 0, 0 ],
"to": [ 16, 2, 16 ],
"faces": {
"down": { "uv": [ 10, 0, 16, 16 ], "texture": "#texture" },
"up": { "uv": [ 10, 0, 16, 16 ], "texture": "#texture" },
"north": { "uv": [ 0, 14, 6, 16 ], "texture": "#texture" },
"south": { "uv": [ 10, 14, 16, 16 ], "texture": "#texture" },
"east": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture" }
}
},
{
"__comment": "PlaneX5",
"from": [ 6, 0, 0 ],
"to": [ 6.001, 2, 2 ],
"faces": {
"east": { "uv": [ 14, 14, 16, 16 ], "texture": "#texture" }
}
},
{
"__comment": "PlaneX6",
"from": [ 10, 0, 0 ],
"to": [ 10.001, 2, 2 ],
"faces": {
"west": { "uv": [ 0, 14, 2, 16 ], "texture": "#texture" }
}
},
{
"__comment": "Cube7",
"from": [ 0, 2, 8 ],
"to": [ 2, 4, 15 ],
"faces": {
"down": { "uv": [ 0, 1, 2, 8 ], "texture": "#texture" },
"up": { "uv": [ 0, 8, 2, 15 ], "texture": "#texture" },
"north": { "uv": [ 14, 12, 16, 14 ], "texture": "#texture" },
"south": { "uv": [ 0, 12, 2, 14 ], "texture": "#texture" },
"west": { "uv": [ 8, 12, 15, 14 ], "texture": "#texture" },
"east": { "uv": [ 1, 12, 8, 14 ], "texture": "#texture" }
}
},
{
"__comment": "Cube8",
"from": [ 0, 4, 9 ],
"to": [ 2, 6, 14 ],
"faces": {
"down": { "uv": [ 0, 2, 2, 7 ], "texture": "#texture" },
"up": { "uv": [ 0, 9, 2, 14 ], "texture": "#texture" },
"north": { "uv": [ 14, 10, 16, 12 ], "texture": "#texture" },
"south": { "uv": [ 0, 10, 2, 12 ], "texture": "#texture" },
"west": { "uv": [ 9, 10, 14, 12 ], "texture": "#texture" },
"east": { "uv": [ 2, 10, 7, 12 ], "texture": "#texture" }
}
},
{
"__comment": "Cube9",
"from": [ 0, 6, 10 ],
"to": [ 2, 8, 13 ],
"faces": {
"down": { "uv": [ 0, 3, 2, 6 ], "texture": "#texture" },
"up": { "uv": [ 0, 10, 2, 13 ], "texture": "#texture" },
"north": { "uv": [ 14, 8, 16, 10 ], "texture": "#texture" },
"south": { "uv": [ 0, 8, 2, 10 ], "texture": "#texture" },
"west": { "uv": [ 10, 8, 13, 10 ], "texture": "#texture" },
"east": { "uv": [ 3, 8, 6, 10 ], "texture": "#texture" }
}
},
{
"__comment": "Cube7",
"from": [ 14, 2, 8 ],
"to": [ 16, 4, 15 ],
"faces": {
"down": { "uv": [ 0, 0, 2, 7 ], "texture": "#texture" },
"up": { "uv": [ 0, 9, 2, 16 ], "texture": "#texture" },
"north": { "uv": [ 14, 12, 16, 14 ], "texture": "#texture" },
"south": { "uv": [ 0, 12, 2, 14 ], "texture": "#texture" },
"west": { "uv": [ 9, 12, 16, 14 ], "texture": "#texture" },
"east": { "uv": [ 0, 12, 7, 14 ], "texture": "#texture" }
}
},
{
"__comment": "Cube8",
"from": [ 14, 4, 9 ],
"to": [ 16, 6, 14 ],
"faces": {
"down": { "uv": [ 0, 1, 2, 6 ], "texture": "#texture" },
"up": { "uv": [ 0, 10, 2, 15 ], "texture": "#texture" },
"north": { "uv": [ 14, 10, 16, 12 ], "texture": "#texture" },
"south": { "uv": [ 0, 10, 2, 12 ], "texture": "#texture" },
"west": { "uv": [ 10, 10, 15, 12 ], "texture": "#texture" },
"east": { "uv": [ 1, 10, 6, 12 ], "texture": "#texture" }
}
},
{
"__comment": "Cube9",
"from": [ 14, 6, 10 ],
"to": [ 16, 8, 13 ],
"faces": {
"down": { "uv": [ 0, 2, 2, 5 ], "texture": "#texture" },
"up": { "uv": [ 0, 11, 2, 14 ], "texture": "#texture" },
"north": { "uv": [ 14, 8, 16, 10 ], "texture": "#texture" },
"south": { "uv": [ 0, 8, 2, 10 ], "texture": "#texture" },
"west": { "uv": [ 11, 8, 14, 10 ], "texture": "#texture" },
"east": { "uv": [ 2, 8, 5, 10 ], "texture": "#texture" }
}
},
{
"__comment": "Cube13",
"from": [ 2, 6.5, 10.5 ],
"to": [ 14, 8, 12 ],
"faces": {
"down": { "uv": [ 2, 1, 14, 3 ], "texture": "#texture1" },
"up": { "uv": [ 2, 13, 14, 15 ], "texture": "#texture1" },
"north": { "uv": [ 2, 8, 14, 10 ], "texture": "#texture1" },
"south": { "uv": [ 2, 8, 14, 10 ], "texture": "#texture1" }
}
},
{
"__comment": "Cube14",
"from": [ 2, 5.5, 12.5 ],
"to": [ 3, 11.5, 13.5 ],
"faces": {
"down": { "uv": [ 15, 2.5, 16, 3.5 ], "texture": "#texture" },
"up": { "uv": [ 14, 0, 15, 1 ], "texture": "#texture" },
"north": { "uv": [ 11.5, 0, 12.5, 6 ], "texture": "#texture" },
"south": { "uv": [ 13, 0, 14, 6 ], "texture": "#texture" },
"west": { "uv": [ 14, 0, 15, 6 ], "texture": "#texture" },
"east": { "uv": [ 15, 0, 16, 6 ], "texture": "#texture" }
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [ 75, 45, 0 ],
"translation": [ 0, 2.5, 0 ],
"scale": [ 0.375, 0.375, 0.375 ]
},
"thirdperson_lefthand": {
"rotation": [ 75, 45, 0 ],
"translation": [ 0, 2.5, 0 ],
"scale": [ 0.375, 0.375, 0.375 ]
},
"firstperson_righthand": {
"rotation": [ 0, 45, 0 ],
"translation": [ 0, 1, 0 ],
"scale": [ 0.4, 0.4, 0.4 ]
},
"firstperson_lefthand": {
"rotation": [ 0, 45, 0 ],
"translation": [ 0, 1, 0 ],
"scale": [ 0.4, 0.4, 0.4 ]
},
"gui": {
"rotation": [ 30, 225, 0 ],
"translation": [ 0, 2.5, 0 ],
"scale": [ 0.625, 0.625, 0.625 ]
},
"ground": {
"translation": [ 0, 1, 0 ],
"scale": [ 0.25, 0.25, 0.25 ]
},
"fixed": {
"rotation": [ -90, -90, 0 ],
"translation": [ 0, 0, -3 ],
"scale": [ 0.5, 0.5, 0.5 ]
}
}
}

View File

@@ -0,0 +1,201 @@
{
"__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio",
"textures": {
"particle": "blocks/planks_oak",
"texture": "blocks/planks_oak",
"texture1": "forgecraft:blocks/leather",
"texture2": "forgecraft:blocks/lever"
},
"elements": [
{
"__comment": "Cube1",
"from": [ 0, 0, 0 ],
"to": [ 6, 2, 16 ],
"faces": {
"down": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" },
"up": { "uv": [ 0, 0, 6, 16 ], "texture": "#texture" },
"north": { "uv": [ 10, 14, 16, 16 ], "texture": "#texture" },
"south": { "uv": [ 0, 14, 6, 16 ], "texture": "#texture" },
"west": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture" }
}
},
{
"__comment": "Cube2",
"from": [ 6, 0, 2 ],
"to": [ 10, 2, 16 ],
"faces": {
"down": { "uv": [ 6, 0, 10, 14 ], "texture": "#texture" },
"up": { "uv": [ 6, 2, 10, 16 ], "texture": "#texture" },
"north": { "uv": [ 6, 14, 10, 16 ], "texture": "#texture" },
"south": { "uv": [ 6, 14, 10, 16 ], "texture": "#texture" }
}
},
{
"__comment": "Cube3",
"from": [ 10, 0, 0 ],
"to": [ 16, 2, 16 ],
"faces": {
"down": { "uv": [ 10, 0, 16, 16 ], "texture": "#texture" },
"up": { "uv": [ 10, 0, 16, 16 ], "texture": "#texture" },
"north": { "uv": [ 0, 14, 6, 16 ], "texture": "#texture" },
"south": { "uv": [ 10, 14, 16, 16 ], "texture": "#texture" },
"east": { "uv": [ 0, 14, 16, 16 ], "texture": "#texture" }
}
},
{
"__comment": "PlaneX5",
"from": [ 6, 0, 0 ],
"to": [ 6.001, 2, 2 ],
"faces": {
"east": { "uv": [ 14, 14, 16, 16 ], "texture": "#texture" }
}
},
{
"__comment": "PlaneX6",
"from": [ 10, 0, 0 ],
"to": [ 10.001, 2, 2 ],
"faces": {
"west": { "uv": [ 0, 14, 2, 16 ], "texture": "#texture" }
}
},
{
"__comment": "Cube7",
"from": [ 0, 2, 8 ],
"to": [ 2, 4, 15 ],
"faces": {
"down": { "uv": [ 0, 1, 2, 8 ], "texture": "#texture" },
"up": { "uv": [ 0, 8, 2, 15 ], "texture": "#texture" },
"north": { "uv": [ 14, 12, 16, 14 ], "texture": "#texture" },
"south": { "uv": [ 0, 12, 2, 14 ], "texture": "#texture" },
"west": { "uv": [ 8, 12, 15, 14 ], "texture": "#texture" },
"east": { "uv": [ 1, 12, 8, 14 ], "texture": "#texture" }
}
},
{
"__comment": "Cube8",
"from": [ 0, 4, 9 ],
"to": [ 2, 6, 14 ],
"faces": {
"down": { "uv": [ 0, 2, 2, 7 ], "texture": "#texture" },
"up": { "uv": [ 0, 9, 2, 14 ], "texture": "#texture" },
"north": { "uv": [ 14, 10, 16, 12 ], "texture": "#texture" },
"south": { "uv": [ 0, 10, 2, 12 ], "texture": "#texture" },
"west": { "uv": [ 9, 10, 14, 12 ], "texture": "#texture" },
"east": { "uv": [ 2, 10, 7, 12 ], "texture": "#texture" }
}
},
{
"__comment": "Cube9",
"from": [ 0, 6, 10 ],
"to": [ 2, 8, 13 ],
"faces": {
"down": { "uv": [ 0, 3, 2, 6 ], "texture": "#texture" },
"up": { "uv": [ 0, 10, 2, 13 ], "texture": "#texture" },
"north": { "uv": [ 14, 8, 16, 10 ], "texture": "#texture" },
"south": { "uv": [ 0, 8, 2, 10 ], "texture": "#texture" },
"west": { "uv": [ 10, 8, 13, 10 ], "texture": "#texture" },
"east": { "uv": [ 3, 8, 6, 10 ], "texture": "#texture" }
}
},
{
"__comment": "Cube7",
"from": [ 14, 2, 8 ],
"to": [ 16, 4, 15 ],
"faces": {
"down": { "uv": [ 0, 0, 2, 7 ], "texture": "#texture" },
"up": { "uv": [ 0, 9, 2, 16 ], "texture": "#texture" },
"north": { "uv": [ 14, 12, 16, 14 ], "texture": "#texture" },
"south": { "uv": [ 0, 12, 2, 14 ], "texture": "#texture" },
"west": { "uv": [ 9, 12, 16, 14 ], "texture": "#texture" },
"east": { "uv": [ 0, 12, 7, 14 ], "texture": "#texture" }
}
},
{
"__comment": "Cube8",
"from": [ 14, 4, 9 ],
"to": [ 16, 6, 14 ],
"faces": {
"down": { "uv": [ 0, 1, 2, 6 ], "texture": "#texture" },
"up": { "uv": [ 0, 10, 2, 15 ], "texture": "#texture" },
"north": { "uv": [ 14, 10, 16, 12 ], "texture": "#texture" },
"south": { "uv": [ 0, 10, 2, 12 ], "texture": "#texture" },
"west": { "uv": [ 10, 10, 15, 12 ], "texture": "#texture" },
"east": { "uv": [ 1, 10, 6, 12 ], "texture": "#texture" }
}
},
{
"__comment": "Cube9",
"from": [ 14, 6, 10 ],
"to": [ 16, 8, 13 ],
"faces": {
"down": { "uv": [ 0, 2, 2, 5 ], "texture": "#texture" },
"up": { "uv": [ 0, 11, 2, 14 ], "texture": "#texture" },
"north": { "uv": [ 14, 8, 16, 10 ], "texture": "#texture" },
"south": { "uv": [ 0, 8, 2, 10 ], "texture": "#texture" },
"west": { "uv": [ 11, 8, 14, 10 ], "texture": "#texture" },
"east": { "uv": [ 2, 8, 5, 10 ], "texture": "#texture" }
}
},
{
"__comment": "Cube13",
"from": [ 2, 6.5, 10.5 ],
"to": [ 14, 8, 12 ],
"faces": {
"down": { "uv": [ 2, 1, 14, 3 ], "texture": "#texture1" },
"up": { "uv": [ 2, 13, 14, 15 ], "texture": "#texture1" },
"north": { "uv": [ 2, 8, 14, 10 ], "texture": "#texture1" },
"south": { "uv": [ 2, 8, 14, 10 ], "texture": "#texture1" }
}
},
{
"__comment": "Cube14",
"from": [ 2, 5.5, 12.5 ],
"to": [ 3, 11.5, 13.5 ],
"rotation": { "origin": [ 2, 5.5, 12.5 ], "axis": "x", "angle": 45 },
"faces": {
"down": { "uv": [ 15, 2.5, 16, 3.5 ], "texture": "#texture2" },
"up": { "uv": [ 14, 0, 15, 1 ], "texture": "#texture2" },
"north": { "uv": [ 11.5, 0, 12.5, 6 ], "texture": "#texture2" },
"south": { "uv": [ 13, 0, 14, 6 ], "texture": "#texture2" },
"west": { "uv": [ 14, 0, 15, 6 ], "texture": "#texture2" },
"east": { "uv": [ 15, 0, 16, 6 ], "texture": "#texture2" }
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [ 75, 45, 0 ],
"translation": [ 0, 2.5, 0 ],
"scale": [ 0.375, 0.375, 0.375 ]
},
"thirdperson_lefthand": {
"rotation": [ 75, 45, 0 ],
"translation": [ 0, 2.5, 0 ],
"scale": [ 0.375, 0.375, 0.375 ]
},
"firstperson_righthand": {
"rotation": [ 0, 45, 0 ],
"translation": [ 0, 1, 0 ],
"scale": [ 0.4, 0.4, 0.4 ]
},
"firstperson_lefthand": {
"rotation": [ 0, 45, 0 ],
"translation": [ 0, 1, 0 ],
"scale": [ 0.4, 0.4, 0.4 ]
},
"gui": {
"rotation": [ 30, 225, 0 ],
"translation": [ 0, 2.5, 0 ],
"scale": [ 0.625, 0.625, 0.625 ]
},
"ground": {
"translation": [ 0, 1, 0 ],
"scale": [ 0.25, 0.25, 0.25 ]
},
"fixed": {
"rotation": [ -90, -90, 0 ],
"translation": [ 0, 0, -3 ],
"scale": [ 0.5, 0.5, 0.5 ]
}
}
}

View File

@@ -0,0 +1,119 @@
{
"__comment": "Designed by Kitsushadow with Cubik Studio - https://cubik.studio",
"textures": {
"particle": "forgecraft:blocks/anvil_base",
"texture": "forgecraft:blocks/anvil_base",
"texture1": "forgecraft:blocks/anvil_base_top"
},
"elements": [
{
"__comment": "Cube1",
"from": [ 0, 0, 0 ],
"to": [ 16, 3, 16 ],
"faces": {
"down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" },
"up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" },
"north": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture" },
"south": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture" },
"west": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture" },
"east": { "uv": [ 0, 13, 16, 16 ], "texture": "#texture" }
}
},
{
"__comment": "Cube1",
"from": [ 0, 12, 0 ],
"to": [ 16, 16, 16 ],
"faces": {
"down": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture" },
"up": { "uv": [ 0, 0, 16, 16 ], "texture": "#texture1" },
"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": "Cube6",
"from": [ 1, 3, 1 ],
"to": [ 4, 12, 4 ],
"faces": {
"down": { "uv": [ 1, 12, 4, 15 ], "texture": "#texture" },
"up": { "uv": [ 1, 1, 4, 4 ], "texture": "#texture" },
"north": { "uv": [ 12, 4, 15, 13 ], "texture": "#texture" },
"south": { "uv": [ 1, 4, 4, 13 ], "texture": "#texture" },
"west": { "uv": [ 1, 4, 4, 13 ], "texture": "#texture" },
"east": { "uv": [ 12, 4, 15, 13 ], "texture": "#texture" }
}
},
{
"__comment": "Cube6",
"from": [ 12, 3, 1 ],
"to": [ 15, 12, 4 ],
"faces": {
"down": { "uv": [ 1, 12, 4, 15 ], "texture": "#texture" },
"up": { "uv": [ 1, 1, 4, 4 ], "texture": "#texture" },
"north": { "uv": [ 12, 11, 15, 14 ], "texture": "#texture" },
"south": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" },
"west": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" },
"east": { "uv": [ 12, 11, 15, 14 ], "texture": "#texture" }
}
},
{
"__comment": "Cube6",
"from": [ 1, 3, 12 ],
"to": [ 4, 12, 15 ],
"faces": {
"down": { "uv": [ 1, 12, 4, 15 ], "texture": "#texture" },
"up": { "uv": [ 1, 1, 4, 4 ], "texture": "#texture" },
"north": { "uv": [ 12, 11, 15, 14 ], "texture": "#texture" },
"south": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" },
"west": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" },
"east": { "uv": [ 12, 11, 15, 14 ], "texture": "#texture" }
}
},
{
"__comment": "Cube6",
"from": [ 12, 3, 12 ],
"to": [ 15, 12, 15 ],
"faces": {
"down": { "uv": [ 1, 12, 4, 15 ], "texture": "#texture" },
"up": { "uv": [ 1, 1, 4, 4 ], "texture": "#texture" },
"north": { "uv": [ 12, 11, 15, 14 ], "texture": "#texture" },
"south": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" },
"west": { "uv": [ 1, 11, 4, 14 ], "texture": "#texture" },
"east": { "uv": [ 12, 11, 15, 14 ], "texture": "#texture" }
}
}
],
"display": {
"thirdperson_righthand": {
"rotation": [ 75, 45, 0 ],
"translation": [ 0, 2.5, 0 ],
"scale": [ 0.375, 0.375, 0.375 ]
},
"thirdperson_lefthand": {
"rotation": [ 75, 45, 0 ],
"translation": [ 0, 2.5, 0 ],
"scale": [ 0.375, 0.375, 0.375 ]
},
"firstperson_righthand": {
"rotation": [ 0, 45, 0 ],
"scale": [ 0.4, 0.4, 0.4 ]
},
"firstperson_lefthand": {
"rotation": [ 0, 45, 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": {
"scale": [ 0.5, 0.5, 0.5 ]
}
}
}

View File

@@ -0,0 +1,8 @@
{
"parent": "forgecraft:item/axe",
"textures": {
"particle": "forgecraft:items/clean_iron_ingot",
"texture": "blocks/planks_oak",
"texture1": "forgecraft:items/clean_iron_ingot"
}
}

View File

@@ -0,0 +1,8 @@
{
"parent": "forgecraft:item/axe",
"textures": {
"particle": "forgecraft:items/clean_iron_ingot_hot",
"texture": "blocks/planks_oak",
"texture1": "forgecraft:items/clean_iron_ingot_hot"
}
}

View File

@@ -0,0 +1,8 @@
{
"parent": "forgecraft:item/axe",
"textures": {
"particle": "forgecraft:items/clean_iron_ingot",
"texture": "blocks/planks_oak",
"texture1": "forgecraft:items/clean_iron_ingot_redstone1"
}
}

View File

@@ -0,0 +1,8 @@
{
"parent": "forgecraft:item/axe",
"textures": {
"particle": "forgecraft:items/clean_iron_ingot",
"texture": "blocks/planks_oak",
"texture1": "forgecraft:items/clean_iron_ingot_redstone2"
}
}

View File

@@ -0,0 +1,8 @@
{
"parent": "forgecraft:item/axe",
"textures": {
"particle": "forgecraft:items/clean_iron_ingot",
"texture": "blocks/planks_oak",
"texture1": "forgecraft:items/clean_iron_ingot_redstone3"
}
}

View File

@@ -0,0 +1,8 @@
{
"parent": "forgecraft:item/axe",
"textures": {
"particle": "forgecraft:items/clean_iron_ingot",
"texture": "blocks/planks_oak",
"texture1": "forgecraft:items/clean_iron_ingot_lapis1"
}
}

View File

@@ -0,0 +1,8 @@
{
"parent": "forgecraft:item/axe",
"textures": {
"particle": "forgecraft:items/clean_iron_ingot",
"texture": "blocks/planks_oak",
"texture1": "forgecraft:items/clean_iron_ingot_lapis2"
}
}

View File

@@ -0,0 +1,8 @@
{
"parent": "forgecraft:item/axe",
"textures": {
"particle": "forgecraft:items/clean_iron_ingot",
"texture": "blocks/planks_oak",
"texture1": "forgecraft:items/clean_iron_ingot_lapis3"
}
}

View File

@@ -0,0 +1,8 @@
{
"parent": "forgecraft:item/axe",
"textures": {
"particle": "forgecraft:items/clean_iron_ingot",
"texture": "blocks/planks_oak",
"texture1": "forgecraft:items/clean_iron_ingot_diamond1_redstone1_lapis1"
}
}

Some files were not shown because too many files have changed in this diff Show More