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
usernamecache.json
options.txt
screenshots/
# eclipse
bin

View File

@@ -1,23 +1,20 @@
To-Dos
*** Bugs ***
- [ ] Duplication Bug for Tool Repair
*** Priority ***
- [ ] Make an Iron Anvil
- [ ] Make Clean Iron Recipes and Tools
- [ ] Make Clean Ore Recipe
- [ ] Make Steel Recipes and Tools
- [ ] Make Wootz Recipes and Tools
- [ ] Bloomery not accepting raw clean crucible
- [ ] Move Ingot break into chunks logic out of the block and into the ForgeHammer
- [ ] Add Yew
*** Feature Musket ***
- [ ] Create powder charge item (copper, charcoal, gunpowder)
- [ ] Create musket round item (lead or iron nugget)
- [ ] Create wadding item (paper)
- [ ] Create soaked wick item (cordage, bucket of water, gunpowder)
- [ ] Create dried wick item (soaked wick on drying rack)
- [ ] Create lit wick item (dried wick and firebow/torch/flint&steel)
- [ ] Create soaked slow match item (cordage, bucket of water, gunpowder)
- [ ] Create dried slow match (soaked wick on drying rack)
- [ ] Create lit slow match (dried slow match and firebow/torch/flint&steel)
- [ ] Create barrel item
- [ ] Create stock item
- [ ] Create lock assembly item
@@ -35,7 +32,30 @@ To-Dos
- [ ] Gui
- [ ] Crafting recipes
*** Tid-Bits ***
sed -i -- 's/iron/steel/g' *
rm *.json--
rename s/iron/steel/ iron*
*** 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] Any gallagher can be used to make a stone anvil
- [x] Update Crafting for tools to include leatherStrap
@@ -115,3 +135,45 @@ To-Dos
- [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).
#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
#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;
import com.mojang.realmsclient.gui.ChatFormatting;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.text.TextFormatting;
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.SubscribeEvent;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.items.tools.CustomPickaxe;
import java.util.List;
/**
* 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 nmd.primal.forgecraft.init.ModItems;
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.
@@ -20,7 +23,7 @@ public class CommonEvents implements ToolNBT{
if(!event.player.getEntityWorld().isRemote) {
if (event.crafting.getItem() == ModItems.ironpickaxe) {
if (event.crafting.getItem() instanceof CustomPickaxe) {
NBTTagCompound tempTag = new NBTTagCompound();
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();
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();
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();
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();
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();
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) {
tempTag = a.getSubCompound("tags").copy();
event.crafting.getTagCompound().setTag("tags", tempTag);
@@ -115,15 +109,6 @@ public class CommonEvents implements ToolNBT{
Integer tempDamage = event.craftMatrix.getStackInSlot(i).getItemDamage();
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) {
tempTag = a.getSubCompound("tags").copy();
event.crafting.getTagCompound().setTag("tags", tempTag);
@@ -131,15 +116,6 @@ public class CommonEvents implements ToolNBT{
Integer tempDamage = event.craftMatrix.getStackInSlot(i).getItemDamage();
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) {
tempTag = a.getSubCompound("tags").copy();
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.material.Material;
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
@@ -10,7 +9,6 @@ import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
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.network.NetworkRegistry;
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.gui.GuiHandler;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModCrafting;
import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.init.ModTiles;
import nmd.primal.forgecraft.init.*;
import nmd.primal.forgecraft.proxy.CommonProxy;
//import nmd.primal.forgecraft.common.init.*;

View File

@@ -4,7 +4,6 @@ import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemStack;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.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.Items;
import net.minecraft.item.EnumDyeColor;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
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.SideOnly;
import nmd.primal.core.api.PrimalItems;
import nmd.primal.core.api.PrimalMaterials;
import nmd.primal.core.common.items.tools.WorkMallet;
import nmd.primal.forgecraft.CommonUtils;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.crafting.AnvilCrafting;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.init.ModMaterials;
import nmd.primal.forgecraft.items.BaseMultiItem;
import nmd.primal.forgecraft.items.ForgeHammer;
import nmd.primal.forgecraft.items.parts.ToolPart;
import nmd.primal.forgecraft.tiles.TileAnvil;
import java.util.concurrent.ThreadLocalRandom;
/**
* Created by mminaie on 3/4/17.
*/
@@ -70,7 +71,6 @@ public class Anvil extends CustomContainerFacing {
super(material);
setUnlocalizedName(registryName);
setRegistryName(registryName);
//setRegistryName(ModInfo.ForgecraftBlocks.FIREBOX.getRegistryName());
setCreativeTab(ModInfo.TAB_FORGECRAFT);
setDefaultState(this.blockState.getBaseState().withProperty(FACING, EnumFacing.NORTH));
setHardness(hardness);
@@ -109,7 +109,7 @@ public class Anvil extends CustomContainerFacing {
if(this.getRegistryName().toString().equals("stoneanvil")){
for (int i = 0; i < 25; i++) {
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);
CommonUtils.spawnItemEntityFromWorld(world, pos, new ItemStack(PrimalItems.ROCK_STONE, 3));
CommonUtils.spawnItemEntityFromWorld(world, pos, new ItemStack(ModBlocks.ironball, 1));
@@ -143,7 +143,7 @@ public class Anvil extends CustomContainerFacing {
world.playEvent(1031, pos, 0);
if (world.rand.nextBoolean()) {
if (ThreadLocalRandom.current().nextInt(0, 2)==0) {
if (recipe.getOutput().getItem() instanceof ToolPart) {
@@ -187,6 +187,7 @@ public class Anvil extends CustomContainerFacing {
(outputStack.getSubCompound("tags").getInteger("emerald") + 1));
outputStack.getSubCompound("tags").setInteger("modifiers",
(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").setInteger("modifiers",
(outputStack.getSubCompound("tags").getInteger("modifiers") + 1));
CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack);
}
//Upgrade redstone
@@ -207,6 +209,7 @@ public class Anvil extends CustomContainerFacing {
(outputStack.getSubCompound("tags").getInteger("redstone") + 1));
outputStack.getSubCompound("tags").setInteger("modifiers",
(outputStack.getSubCompound("tags").getInteger("modifiers") + 1));
CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack);
}
//Upgrade lapis
@@ -217,13 +220,11 @@ public class Anvil extends CustomContainerFacing {
(outputStack.getSubCompound("tags").getInteger("lapis") + 1));
outputStack.getSubCompound("tags").setInteger("modifiers",
(outputStack.getSubCompound("tags").getInteger("modifiers") + 1));
}
}
}
CommonUtils.spawnItemEntityFromWorld(world, pos, outputStack);
}
}
}
}
} else {
CommonUtils.spawnItemEntityFromWorld(world, pos, recipe.getOutput());
}
@@ -322,6 +323,18 @@ public class Anvil extends CustomContainerFacing {
(pItem.getTagCompound().getInteger("type") == 9) ||
(pItem.getTagCompound().getInteger("type") == 10) ||
(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)) {
//System.out.println("Level 1");
@@ -335,8 +348,28 @@ public class Anvil extends CustomContainerFacing {
if (tile.getSlotStack(counter).getItem().equals(ModItems.ironchunkhot)) {
pItem.getTagCompound().setInteger("type", 7);
tile.setSlotStack(counter, ItemStack.EMPTY);
//System.out.println(counter);
//System.out.println(counter);
return true;
}
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;
}
@@ -431,6 +464,187 @@ public class Anvil extends CustomContainerFacing {
pItem.getTagCompound().setInteger("tempDamage", 0);
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.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.ModInfo;
/**
* 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.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.init.SoundEvents;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.*;
@@ -121,7 +119,10 @@ public class Bloomery extends CustomContainerFacing implements ITileEntityProvid
}
}
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);
tile.setHeat(100);
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.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.api.PrimalItems;
import nmd.primal.forgecraft.CommonUtils;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.init.ModBlocks;
@@ -99,6 +100,24 @@ public class Crucible extends Block {
if(name.equals("tile.rawironcrucible")){
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;
}
@@ -108,6 +127,18 @@ public class Crucible extends Block {
return Item.getItemFromBlock(ModBlocks.ironball);
} else if (name.equals("tile.rawironcrucible")){
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;
}

View File

@@ -7,7 +7,6 @@ import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumBlockRenderType;
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.SideOnly;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.tiles.TileBaseCrucible;
import org.apache.commons.lang3.StringUtils;
import java.util.Random;
import static nmd.primal.forgecraft.CommonUtils.spawnItemEntityFromWorld;
/**
* Created by mminaie on 2/4/17.
*/

View File

@@ -1,5 +1,6 @@
package nmd.primal.forgecraft.blocks;
import net.minecraft.block.Block;
import net.minecraft.block.ITileEntityProvider;
import net.minecraft.block.material.Material;
import net.minecraft.block.properties.IProperty;
@@ -10,10 +11,8 @@ import net.minecraft.entity.Entity;
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.init.Items;
import net.minecraft.init.SoundEvents;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.*;
@@ -25,12 +24,9 @@ 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.PrimalBlocks;
import nmd.primal.core.api.PrimalItems;
import nmd.primal.core.common.PrimalCore;
import nmd.primal.forgecraft.CommonUtils;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.items.parts.ToolPart;
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 nmd.primal.core.api.PrimalBlocks;
/**
* Created by kitsu on 11/26/2016.
@@ -156,16 +154,11 @@ public class Forge extends CustomContainerFacing implements ITileEntityProvider/
***********************/
//REMOVE COOL INGOT
if(facing == EnumFacing.UP ) {
if (pItem.isEmpty()) {
/*if (pItem.isEmpty()) {
for (int i = 2; i < tile.getSlotListSize(); i++) {
//System.out.println(i);
if (!tile.getSlotStack(i).isEmpty()) {
if (tile.getSlotStack(i).getItem().equals(new ItemStack(ModBlocks.ironchunk).getItem())) {
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())) {
if (Block.getBlockFromItem(tile.getSlotStack(i).getItem()) instanceof IngotBall) {
CommonUtils.spawnItemEntity(world, player, tile.getSlotStack(i));
tile.setSlotStack(i, ItemStack.EMPTY);
return true;
@@ -177,13 +170,12 @@ public class Forge extends CustomContainerFacing implements ITileEntityProvider/
return true;
}
}
}
}
}
}*/
if (pItem.getItem().equals(new ItemStack(ModBlocks.ironchunk).getItem())) {
if (Block.getBlockFromItem(pItem.getItem()) instanceof IngotBall) {
//System.out.println("Activating");
for (int i = 2; i <= tile.getSlotListSize(); i++) {
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
if (pItem.getItem().equals(new ItemStack(Items.IRON_INGOT).getItem())) {
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.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Blocks;
import net.minecraft.init.SoundEvents;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.EnumHand;
import net.minecraft.util.SoundCategory;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.IBlockAccess;
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.concurrent.ThreadLocalRandom;

View File

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

View File

@@ -1,8 +1,5 @@
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 nmd.primal.forgecraft.init.ModBlocks;

View File

@@ -1,15 +1,9 @@
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 java.util.ArrayList;
import java.util.Arrays;
import java.util.Hashtable;
import static javax.swing.UIManager.put;
/**
* Created by mminaie on 3/5/17.

View File

@@ -1,7 +1,5 @@
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.ItemStack;

View File

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

View File

@@ -1,6 +1,5 @@
package nmd.primal.forgecraft.gui;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiButton;
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.util.EnumFacing;
import net.minecraft.util.EnumHand;
import net.minecraft.util.math.AxisAlignedBB;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.fml.relauncher.Side;
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.forgecraft.CommonUtils;
import nmd.primal.forgecraft.blocks.*;
import nmd.primal.forgecraft.items.ForgeHammer;
import nmd.primal.forgecraft.items.blocks.ItemBlockIngotBall;
import nmd.primal.forgecraft.tiles.TileAnvil;
/**
@@ -35,12 +30,15 @@ public class ModBlocks {
public static Block firebox;
public static Block bloomery;
public static Block blockbreaker;
public static Block pistonbellowsoak;
public static Block pistonbellowsjungle;
public static Block pistonbellowsbirch;
public static Block pistonbellowsspruce;
public static Block pistonbellowsdarkoak;
public static Block pistonbellowsacacia;
public static Block emptycrucible;
public static Block emptycruciblehot;
public static Block emptycruciblecracked;
@@ -53,6 +51,27 @@ public class ModBlocks {
public static Block failedironcrucible;
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 ironchunk;
public static Block ironcleanball;
@@ -69,8 +88,8 @@ public class ModBlocks {
public static void init() {
firebox = new Forge(Material.ROCK);
bloomery = new Bloomery(Material.ROCK, "bloomery");
blockbreaker = new Breaker(Material.WOOD, "blockbreaker", 4.0f);
pistonbellowsoak = new PistonBellows(Material.WOOD, "pistonbellowsoak");
pistonbellowsjungle = new PistonBellows(Material.WOOD, "pistonbellowsjungle");
@@ -91,6 +110,27 @@ public class ModBlocks {
failedironcrucible = new Crucible(Material.ROCK, "failedironcrucible");
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") {
@Override
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
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){
Item pItem = player.getHeldItem(hand).getItem();
BlockPos belowPos = pos.down();
//System.out.println("Activating");
//System.out.println("Activating1");
if (pItem instanceof ForgeHammer && world.getBlockState(belowPos).getBlock().equals(Blocks.IRON_BLOCK)) {
player.swingArm(hand);
world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2);
world.setBlockState(belowPos, ModBlocks.ironanvil.getDefaultState().withProperty(Anvil.FACING, player.getHorizontalFacing()), 2);
world.playEvent(1031, pos, 0);
//CommonUtils.spawnItemEntityFromWorld(world, pos, new ItemStack(ModBlocks.stoneanvil, 1));
//System.out.println("Activating");
return true;
}
if (pItem instanceof WorkMallet || pItem.equals(ModItems.forgehammer)) {
@@ -184,15 +225,15 @@ public class ModBlocks {
) {
player.swingArm(hand);
world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2);
tile.setSlotStack(6, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(7, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(8, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(11, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(12, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(13, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(16, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(17, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(18, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(6, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(7, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(8, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(11, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(12, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(13, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(16, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(17, new ItemStack(ModItems.ironcleanchunkhot, 1));
tile.setSlotStack(18, new ItemStack(ModItems.ironcleanchunkhot, 1));
world.playEvent(1031, pos, 0);
return true;
}
@@ -202,7 +243,7 @@ public class ModBlocks {
}
return false;
}
};
}; // clean_iron_ingot ironcleanball.json ironcleanballhot.json - done
steelball = new IngotBall(Material.IRON, "steelball", 6.0f, "ingot"){
@Override
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);
world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2);
tile.setSlotStack(6, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(7, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(8, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(11, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(12, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(13, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(16, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(17, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(18, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(6, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(7, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(8, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(11, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(12, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(13, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(16, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(17, new ItemStack(ModItems.steelchunkhot, 1));
tile.setSlotStack(18, new ItemStack(ModItems.steelchunkhot, 1));
world.playEvent(1031, pos, 0);
return true;
}
@@ -254,7 +295,7 @@ public class ModBlocks {
}
return false;
}
};
}; // steel_ingot steelball.json steelballhot.json
wootzball = new IngotBall(Material.IRON, "wootzball", 6.0f, "ingot") {
@Override
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);
world.setBlockState(pos, Blocks.AIR.getDefaultState(), 2);
tile.setSlotStack(6, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(7, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(8, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(11, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(12, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(13, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(16, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(17, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(18, new ItemStack(ModItems.ironchunkhot, 1));
tile.setSlotStack(6, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(7, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(8, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(11, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(12, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(13, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(16, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(17, new ItemStack(ModItems.wootzchunkhot, 1));
tile.setSlotStack(18, new ItemStack(ModItems.wootzchunkhot, 1));
world.playEvent(1031, pos, 0);
return true;
}
@@ -306,12 +347,12 @@ public class ModBlocks {
}
return false;
}
};
}; //wootz_ingot wootzball.json wootzballhot.json
ironchunk = new IngotBall(Material.IRON, "ironchunk", 5.0F, "chunk");
ironcleanchunk = new IngotBall(Material.IRON, "ironcleanchunk", 5.0F, "chunk");
steelchunk = new IngotBall(Material.IRON, "steelchunk", 6.0f, "chunk");
wootzchunk = new IngotBall(Material.IRON, "wootzchunk", 6.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"); //steel_ingot steelchunk.json steelchunkhot.json - done
wootzchunk = new IngotBall(Material.IRON, "wootzchunk", 6.0f, "chunk"); //wootz_ingot wootzchunk.json wootzchunkhot.json - done
stoneanvil = new Anvil(Material.ANVIL, "stoneanvil", 5.0f);
ironanvil = new Anvil(Material.ANVIL, "ironanvil", 6.0f);
@@ -324,6 +365,7 @@ public class ModBlocks {
public static void register() {
registerBlock(firebox);
registerBlock(bloomery);
registerBlock(blockbreaker);
registerBlock(pistonbellowsoak);
registerBlock(pistonbellowsjungle);
@@ -344,6 +386,27 @@ public class ModBlocks {
registerBlock(failedironcrucible);
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(ironchunk);
@@ -365,6 +428,7 @@ public class ModBlocks {
@SideOnly(Side.CLIENT)
public static void registerRenders() {
registerRender(firebox);
registerRender(blockbreaker);
registerRender(pistonbellowsoak);
registerRender(pistonbellowsjungle);
registerRender(pistonbellowsbirch);
@@ -384,6 +448,27 @@ public class ModBlocks {
registerRender(failedironcrucible);
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(ironchunk);

View File

@@ -3,9 +3,6 @@ package nmd.primal.forgecraft.init;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.fml.relauncher.Side;
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;
/**

View File

@@ -4,31 +4,23 @@ import net.minecraft.client.Minecraft;
import net.minecraft.client.renderer.ItemMeshDefinition;
import net.minecraft.client.renderer.block.model.ModelBakery;
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.ItemBlock;
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.math.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.core.api.PrimalMaterials;
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.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.Musket;
import nmd.primal.forgecraft.util.ToolMaterials;
import nmd.primal.forgecraft.items.tools.BaseTool.ForgeToolMaterial;
/**
* Created by kitsu on 11/26/2016.
@@ -45,18 +37,60 @@ public class ModItems {
public static Item ironchunkhot;
public static Item ironcleaningotballhot;
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 ironaxehead;
public static Item ironshovelhead;
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 ironaxe;
public static Item ironshovel;
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 cleanironsword;
public static Item steelsword;
public static Item wootzsword;
public static Item matchlockmusket;
//public static Item forgingmanual;
@@ -67,57 +101,75 @@ public class ModItems {
softcrucible = new ItemSoftCrucible();
stonetongs = new ItemStoneTongs("stonetongs");
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);
ironshovelhead = new ToolPart("ironshovelhead", ModMaterials.TOOL_WROUGHT_IRON);
ironhoehead = new ToolPart("ironhoehead", ModMaterials.TOOL_WROUGHT_IRON);
/**********
TOOL PARTS
**********/
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);
ironaxe = new CustomAxe("ironaxe", ModMaterials.TOOL_WROUGHT_IRON);
ironshovel = new CustomShovel("ironshovel", ModMaterials.TOOL_WROUGHT_IRON);
ironhoe = new CustomHoe("ironhoe", ModMaterials.TOOL_WROUGHT_IRON);
cleanironpickaxehead = new ToolPart("cleanironpickaxehead", PrimalMaterials.TOOL_CLEAN_IRON);
cleanironaxehead = new ToolPart("cleanironaxehead", PrimalMaterials.TOOL_CLEAN_IRON);
cleanironshovelhead = new ToolPart("cleanironshovelhead", PrimalMaterials.TOOL_CLEAN_IRON);
cleanironhoehead = new ToolPart("cleanironhoehead", PrimalMaterials.TOOL_CLEAN_IRON);
ironsword = new CustomSword("ironsword", ModMaterials.TOOL_WROUGHT_IRON);
//ironingotballcool = new BaseMultiItem("ironingotcool") {};
//test = new ItemTest("ironsword");
matchlockmusket = new Musket("matchlock_musket");
steelpickaxehead = new ToolPart("steelpickaxehead", PrimalMaterials.TOOL_BASIC_STEEL);
steelaxehead = new ToolPart("steelaxehead", PrimalMaterials.TOOL_BASIC_STEEL);
steelshovelhead = new ToolPart("steelshovelhead", PrimalMaterials.TOOL_BASIC_STEEL);
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();
//test = new ItemTest("ironsword");
}
public static void register() {
@@ -127,18 +179,63 @@ public class ModItems {
GameRegistry.register(forgehammer);
GameRegistry.register(ironingotballhot);
GameRegistry.register(ironchunkhot);
GameRegistry.register(ironcleaningotballhot);
GameRegistry.register(ironcleanchunkhot);
GameRegistry.register(steelingotballhot);
GameRegistry.register(steelchunkhot);
GameRegistry.register(wootzingotballhot);
GameRegistry.register(wootzchunkhot);
//GameRegistry.register(test);
/**********
TOOL PARTS
**********/
GameRegistry.register(pickaxehead);
GameRegistry.register(ironaxehead);
GameRegistry.register(ironshovelhead);
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(ironaxe);
GameRegistry.register(ironshovel);
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(matchlockmusket);
@@ -152,17 +249,61 @@ public class ModItems {
registerRender(forgehammer);
registerRender(ironingotballhot);
registerRender(ironchunkhot);
registerRender(ironcleaningotballhot);
registerRender(ironcleanchunkhot);
registerRender(steelingotballhot);
registerRender(steelchunkhot);
//registerRender(test);
/**********
TOOL PARTS
**********/
registerRender(pickaxehead);
registerRender(ironaxehead);
registerRender(ironshovelhead);
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(ironaxe);
registerRender(ironshovel);
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(forgingmanual);
//registerRender(matchlockmusket);
@@ -175,6 +316,7 @@ public class ModItems {
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_default"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_emptyhot"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_emptyhotcracked"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotiron"),
new ResourceLocation(ModInfo.MOD_ID, "stonetongs_hotironcooked"),
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_axe_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() {
@@ -226,6 +388,60 @@ public class ModItems {
else if (stack.getTagCompound().getInteger("type") == 11 ) {
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");
}
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.SoundEvent;
import net.minecraftforge.fml.common.registry.ForgeRegistries;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.api.ForgecraftSounds;
/**
* Created by mminaie on 3/24/17.
@@ -13,10 +11,12 @@ import nmd.primal.forgecraft.api.ForgecraftSounds;
public class ModSounds {
public static SoundEvent PISTON_BELLOWS;
public static SoundEvent MUSKET_SHOT;
public static void registerSounds()
{
PISTON_BELLOWS = registerSound("piston_bellows");
MUSKET_SHOT = registerSound("musket_shot");
}
private static SoundEvent registerSound(String name)

View File

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

View File

@@ -1,7 +1,6 @@
package nmd.primal.forgecraft.items;
import net.minecraft.item.Item;
import nmd.primal.forgecraft.items.BaseItem;
/**
* 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.setMaxStackSize(1);
this.setCreativeTab(ModInfo.TAB_FORGECRAFT);
}
}

View File

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

View File

@@ -1,6 +1,5 @@
package nmd.primal.forgecraft.items;
import com.mojang.realmsclient.gui.ChatFormatting;
import net.minecraft.block.material.Material;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
@@ -8,7 +7,9 @@ import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
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.world.World;
import net.minecraftforge.fml.relauncher.Side;
@@ -39,7 +40,7 @@ public class ItemStoneTongs extends Item {
this.setCreativeTab(ModInfo.TAB_FORGECRAFT);
}
@Override
public void onUpdate(ItemStack item, World world, Entity player, int itemSlot, boolean isSelected) {
if (!item.hasTagCompound()) {
item.setTagCompound(new NBTTagCompound());
@@ -59,12 +60,10 @@ public class ItemStoneTongs extends Item {
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)
{
@@ -72,15 +71,45 @@ public class ItemStoneTongs extends Item {
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 Pickaxe Head
9 | Hot Axe Head
10 | Hot Shovel Head
11 | Hot Hoe Head
--------------------------------
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
*/
if(!world.isRemote) {
@@ -93,24 +122,38 @@ public class ItemStoneTongs extends Item {
*****/
if (world.getBlockState(pos).getBlock() != ModBlocks.bloomery) {
if (world.getBlockState(pos).getBlock() instanceof IngotBall) {
//TileBaseCrucible tileCrucible = (TileBaseCrucible) world.getTileEntity(pos);
if (world.getBlockState(pos).getBlock() == ModBlocks.ironball) {
if(world.getBlockState(pos).getValue(IngotBall.ACTIVE) == true) {
if (world.getBlockState(pos).getBlock() == ModBlocks.ironball) {
itemstack.getTagCompound().setInteger("type", 6);
//itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
world.setBlockToAir(pos);
//System.out.println(itemstack.getTagCompound().getInteger("type"));
return EnumActionResult.SUCCESS;
}
}
if (world.getBlockState(pos).getBlock() == ModBlocks.ironchunk) {
if(world.getBlockState(pos).getValue(IngotBall.ACTIVE) == true) {
itemstack.getTagCompound().setInteger("type", 7);
//itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
world.setBlockToAir(pos);
//System.out.println(itemstack.getTagCompound().getInteger("type"));
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() instanceof CrucibleHot) {
TileBaseCrucible tileCrucible = (TileBaseCrucible) world.getTileEntity(pos);
/***************************
* Crucibles *
***************************/
if (world.getBlockState(pos).getBlock() == ModBlocks.emptycruciblehot) {
itemstack.getTagCompound().setInteger("type", 1);
itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
@@ -134,6 +180,9 @@ public class ItemStoneTongs extends Item {
world.setBlockToAir(pos);
return EnumActionResult.SUCCESS;
}
/***************************
* Iron *
***************************/
if (world.getBlockState(pos).getBlock() == ModBlocks.hotironcrucible) {
itemstack.getTagCompound().setInteger("type", 3);
itemstack.getTagCompound().setInteger("cooldown", tileCrucible.countdown);
@@ -152,13 +201,59 @@ public class ItemStoneTongs extends Item {
world.setBlockToAir(pos);
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
*****/
if ((world.getBlockState(pos).getBlock() instanceof Crucible) || (world.getBlockState(pos).getBlock() instanceof CrucibleHot)) {
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());
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);
itemstack.getTagCompound().setInteger("type", 0);
return EnumActionResult.SUCCESS;
case 8:
return EnumActionResult.FAIL;
case 9:
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);
if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.emptycruciblehot))) {
itemstack.getTagCompound().setInteger("type", 1);
itemstack.getTagCompound().setInteger("cooldown", 0);
tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.emptycruciblecrackedhot))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 2);
tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.hotironcrucible))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 3);
tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.hotcookedironcrucible))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 4);
tile.setSlotStack(1, ItemStack.EMPTY);
return EnumActionResult.SUCCESS;
} else if (tile.getSlotStack(1).getItem().equals(Item.getItemFromBlock(ModBlocks.failedironcruciblehot))) {
itemstack.getTagCompound().setInteger("cooldown", 0);
itemstack.getTagCompound().setInteger("type", 5);
tile.setSlotStack(1, ItemStack.EMPTY);
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;
}
}
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;
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.
*/

View File

@@ -5,8 +5,6 @@ import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock;
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.SideOnly;
import nmd.primal.forgecraft.ModInfo;

View File

@@ -14,8 +14,6 @@ import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.ToolNBT;
import nmd.primal.forgecraft.enumhandler.EnumHandler;
import nmd.primal.forgecraft.items.tools.BaseTool;
import javax.annotation.Nullable;
import java.util.List;
@@ -197,6 +195,12 @@ public class ToolPart extends Item implements ToolNBT{
(getLapisLevel(item) == 2) ) {
return 0.0102F;
}
if ( (getEmerald(item) == false) &&
(getDiamondLevel(item) == 0) &&
(getRedstoneLevel(item) == 1) &&
(getLapisLevel(item) == 1) ) {
return 0.0011F;
}
}
}
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.state.IBlockState;
import net.minecraft.init.Blocks;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.ItemTool;
import nmd.primal.forgecraft.enumhandler.EnumHandler;
import java.util.Set;

View File

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

View File

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

View File

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

View File

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

View File

@@ -1,9 +1,11 @@
package nmd.primal.forgecraft.items.weapons;
import net.minecraft.block.BlockDispenser;
import net.minecraft.creativetab.CreativeTabs;
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.world.World;
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.SideOnly;
import nmd.primal.forgecraft.ModInfo;
import nmd.primal.forgecraft.ToolNBT;
/**
* Created by mminaie on 3/23/17.

View File

@@ -1,9 +1,22 @@
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.init.ModSounds;
import nmd.primal.forgecraft.items.BaseItem;
import javax.annotation.Nullable;
/**
* Created by Lyle on 4/2/2017.
*/
@@ -15,5 +28,95 @@ public class Musket extends BaseItem{
this.setCreativeTab(ModInfo.TAB_FORGECRAFT);
this.setMaxStackSize(1);
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 nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.renders.blocks.TileAnvilRender;
import nmd.primal.forgecraft.renders.blocks.TileBloomeryRender;
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;
import nmd.primal.forgecraft.renders.blocks.*;
import nmd.primal.forgecraft.tiles.*;
/**
* Created by kitsu on 11/26/2016.
@@ -39,6 +33,7 @@ public class ClientProxy implements CommonProxy {
ClientRegistry.bindTileEntitySpecialRenderer(TilePistonBellows.class, new TilePistonBellowsRender());
ClientRegistry.bindTileEntitySpecialRenderer(TileBloomery.class, new TileBloomeryRender());
ClientRegistry.bindTileEntitySpecialRenderer(TileAnvil.class, new TileAnvilRender());
ClientRegistry.bindTileEntitySpecialRenderer(TileBreaker.class, new TileBreakerRender());
}
@Override

View File

@@ -11,18 +11,14 @@ import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer;
import net.minecraft.init.Items;
import net.minecraft.item.EnumDyeColor;
import net.minecraft.item.Item;
import net.minecraft.item.ItemBlock;
import net.minecraft.item.ItemStack;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import nmd.primal.core.api.PrimalItems;
import nmd.primal.forgecraft.blocks.Anvil;
import nmd.primal.forgecraft.blocks.IngotBall;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems;
import nmd.primal.forgecraft.items.BaseMultiItem;
import nmd.primal.forgecraft.tiles.TileAnvil;
import nmd.primal.forgecraft.tiles.TileBloomery;
import org.lwjgl.opengl.GL11;
/**
@@ -48,8 +44,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
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);
@@ -92,13 +91,13 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
for(int i=0; i < 5; i++){
for(int a=0; a<5; a++){
if(!tile.getSlotStack(counter).isEmpty()){
if(tile.getSlotStack(counter).getItem().equals(Items.REDSTONE) ||
(tile.getSlotStack(counter).getItem().equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.EMERALD_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.DIAMOND_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(Items.DIAMOND) ||
tile.getSlotStack(counter).getItem().equals(Items.EMERALD)
Item item = tile.getSlotStack(counter).getItem();
if(item.equals(Items.REDSTONE) ||
(item.equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
item.equals(PrimalItems.EMERALD_KNAPP) ||
item.equals(PrimalItems.DIAMOND_KNAPP) ||
item.equals(Items.DIAMOND) ||
item.equals(Items.EMERALD)
){
GL11.glPushMatrix();
@@ -108,7 +107,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -116,7 +119,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -125,7 +132,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -134,7 +145,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironhoehead)){
if(item.equals(ModItems.ironhoehead)){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -143,7 +154,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(Block.getBlockFromItem(tile.getSlotStack(counter).getItem()) instanceof IngotBall){
if(Block.getBlockFromItem(item) instanceof IngotBall){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -151,7 +162,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem() == ModItems.ironchunkhot || tile.getSlotStack(counter).getItem() == ModItems.ironingotballhot){
if(item instanceof BaseMultiItem){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -170,13 +181,13 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
for(int i=0; i < 5; i++){
for(int a=0; a<5; a++){
if(!tile.getSlotStack(counter).isEmpty()){
if(tile.getSlotStack(counter).getItem().equals(Items.REDSTONE) ||
(tile.getSlotStack(counter).getItem().equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.EMERALD_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.DIAMOND_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(Items.DIAMOND) ||
tile.getSlotStack(counter).getItem().equals(Items.EMERALD)
Item item = tile.getSlotStack(counter).getItem();
if(item.equals(Items.REDSTONE) ||
(item.equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
item.equals(PrimalItems.EMERALD_KNAPP) ||
item.equals(PrimalItems.DIAMOND_KNAPP) ||
item.equals(Items.DIAMOND) ||
item.equals(Items.EMERALD)
){
GL11.glPushMatrix();
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);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -193,7 +208,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -202,7 +221,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -211,7 +234,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -220,7 +247,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(Block.getBlockFromItem(tile.getSlotStack(counter).getItem()) instanceof IngotBall){
if(Block.getBlockFromItem(item) instanceof IngotBall){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -228,7 +255,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem() == ModItems.ironchunkhot || tile.getSlotStack(counter).getItem() == ModItems.ironingotballhot){
if(item instanceof BaseMultiItem){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -247,13 +274,13 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
for(int a=0; a < 5; a++){
for(int i=0; i<5; i++){
if(!tile.getSlotStack(counter).isEmpty()){
if(tile.getSlotStack(counter).getItem().equals(Items.REDSTONE) ||
(tile.getSlotStack(counter).getItem().equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.EMERALD_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.DIAMOND_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(Items.DIAMOND) ||
tile.getSlotStack(counter).getItem().equals(Items.EMERALD)
Item item = tile.getSlotStack(counter).getItem();
if(item.equals(Items.REDSTONE) ||
(item.equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
item.equals(PrimalItems.EMERALD_KNAPP) ||
item.equals(PrimalItems.DIAMOND_KNAPP) ||
item.equals(Items.DIAMOND) ||
item.equals(Items.EMERALD)
){
GL11.glPushMatrix();
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);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -272,7 +303,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -281,7 +316,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -290,7 +329,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironhoehead)){
if(item.equals(ModItems.ironhoehead)){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -299,7 +338,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(Block.getBlockFromItem(tile.getSlotStack(counter).getItem()) instanceof IngotBall){
if(Block.getBlockFromItem(item) instanceof IngotBall){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -307,7 +346,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem() == ModItems.ironchunkhot || tile.getSlotStack(counter).getItem() == ModItems.ironingotballhot){
if(item instanceof BaseMultiItem){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -325,14 +364,13 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
for(int a=0; a < 5; a++){
for(int i=0; i<5; i++){
if(!tile.getSlotStack(counter).isEmpty()){
//GL11.glTranslated( tile.getReverseX(a), 0.0D, tile.getNormalZ(i) );
if(tile.getSlotStack(counter).getItem().equals(Items.REDSTONE) ||
(tile.getSlotStack(counter).getItem().equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.EMERALD_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.DIAMOND_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(Items.DIAMOND) ||
tile.getSlotStack(counter).getItem().equals(Items.EMERALD)
Item item = tile.getSlotStack(counter).getItem();
if(item.equals(Items.REDSTONE) ||
(item.equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
item.equals(PrimalItems.EMERALD_KNAPP) ||
item.equals(PrimalItems.DIAMOND_KNAPP) ||
item.equals(Items.DIAMOND) ||
item.equals(Items.EMERALD)
){
GL11.glPushMatrix();
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);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -352,7 +394,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -361,7 +407,11 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
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();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -370,7 +420,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironhoehead)){
if(item.equals(ModItems.ironhoehead)){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -379,7 +429,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(Block.getBlockFromItem(tile.getSlotStack(counter).getItem()) instanceof IngotBall){
if(Block.getBlockFromItem(item) instanceof IngotBall){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -387,7 +437,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem() == ModItems.ironchunkhot || tile.getSlotStack(counter).getItem() == ModItems.ironingotballhot){
if(item instanceof BaseMultiItem){
GL11.glPushMatrix();
double scale = 1.0D;
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){
if(tile.getSlotStack(counter).getItem().equals(Items.REDSTONE) ||
(tile.getSlotStack(counter).getItem().equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.EMERALD_KNAPP) ||
tile.getSlotStack(counter).getItem().equals(PrimalItems.DIAMOND_KNAPP)
Item item = tile.getSlotStack(counter).getItem();
if(item.equals(Items.REDSTONE) ||
(item.equals(Items.DYE) && tile.getSlotStack(counter).getItemDamage() == EnumDyeColor.BLUE.getDyeDamage()) ||
item.equals(PrimalItems.EMERALD_KNAPP) ||
item.equals(PrimalItems.DIAMOND_KNAPP)
){
GL11.glPushMatrix();
@@ -419,7 +470,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem().equals(ModItems.pickaxehead)){
if(item.equals(ModItems.pickaxehead)){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -427,7 +478,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironaxehead)){
if(item.equals(ModItems.ironaxehead)){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -436,7 +487,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironshovelhead)){
if(item.equals(ModItems.ironshovelhead)){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -445,7 +496,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem().equals(ModItems.ironhoehead)){
if(item.equals(ModItems.ironhoehead)){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -454,7 +505,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem() == ModItems.ironingotballhot ){
if(item == ModItems.ironingotballhot ){
GL11.glPushMatrix();
double scale = 1.0D;
GL11.glScaled(scale, scale, scale);
@@ -462,7 +513,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer<TileAnvil>
renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED);
GL11.glPopMatrix();
}
if(tile.getSlotStack(counter).getItem() == ModItems.ironchunkhot){
if(item == ModItems.ironchunkhot){
GL11.glPushMatrix();
double scale = 1.0D;
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 ) {
for(int i=0; i<this.getSlotListSize(); i++){
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.updateBlock();
this.markDirty();
}
}
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.updateBlock();
this.markDirty();
}
}
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);
this.updateBlock();
this.markDirty();

View File

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

View File

@@ -1,18 +1,20 @@
package nmd.primal.forgecraft.tiles;
import net.minecraft.block.Block;
import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.ITickable;
import net.minecraft.util.NonNullList;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import nmd.primal.core.common.helper.CommonUtils;
import nmd.primal.core.common.helper.ParticleHelper;
import nmd.primal.forgecraft.blocks.Bloomery;
import nmd.primal.forgecraft.blocks.Crucible;
import nmd.primal.forgecraft.blocks.Forge;
import nmd.primal.forgecraft.crafting.BloomeryCrafting;
import nmd.primal.forgecraft.init.ModBlocks;
import nmd.primal.forgecraft.init.ModItems;
import static nmd.primal.forgecraft.CommonUtils.getVanillaItemBurnTime;
@@ -40,6 +42,7 @@ public class TileBloomery extends TileBaseSlot implements ITickable {
this.iteration ++;
if(this.iteration == 300 ) {
this.iteration = 0;
//IBlockState state = world.getBlockState(this.pos);
BlockPos abovePos = new BlockPos(this.getPos().getX(), this.getPos().getY()+1, this.getPos().getZ());
if (world.getBlockState(this.getPos()).getValue(Bloomery.ACTIVE)) {
@@ -68,14 +71,14 @@ public class TileBloomery extends TileBaseSlot implements ITickable {
if(cookCounter >= recipe.getIdealTime() ){
if(this.getSlotStack(1).getItem() == recipe.getInput().getItem()) {
this.setSlotStack(1, recipe.getOutput());
this.cookCounter = 0;
//this.cookCounter = 0;
//System.out.print(" :Success: " + this.getSlotStack(1));
this.updateBlock();
this.markDirty();
}
}
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.cookCounter = 0;
//System.out.print(" :Failure Time: " + this.getSlotStack(1));
@@ -114,6 +117,7 @@ public class TileBloomery extends TileBaseSlot implements ITickable {
this.markDirty();
this.updateBlock();
}
CommonUtils.makeSmoke(world, pos);
}
}
@@ -176,7 +180,7 @@ public class TileBloomery extends TileBaseSlot implements ITickable {
if (stack.getItem() == ModItems.softcrucible) {
return true;
}
if(stack.getItem() == Item.getItemFromBlock(ModBlocks.rawironcrucible)){
if(Block.getBlockFromItem(stack.getItem()) instanceof Crucible ){
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;
import net.minecraft.block.Block;
import net.minecraft.block.BlockFurnace;
import net.minecraft.block.state.IBlockState;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.tileentity.TileEntityFurnace;
import net.minecraft.util.ITickable;
import net.minecraft.util.NonNullList;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import nmd.primal.core.common.helper.CommonUtils;
import nmd.primal.forgecraft.blocks.Forge;
import nmd.primal.forgecraft.blocks.IngotBall;
import nmd.primal.forgecraft.crafting.ForgeCrafting;
import org.omg.PortableInterceptor.ACTIVE;
import static nmd.primal.forgecraft.CommonUtils.getVanillaItemBurnTime;
@@ -52,6 +48,15 @@ public class TileForge extends TileBaseSlot implements ITickable {
this.markDirty();
world.notifyBlockUpdate(pos, state, state, 2);
}
slotZeroManager(world);
}
this.heatManager(this.getHeat(), state, this.getSlotStack(0), world, pos);
}
craftingManager();
}
}
private void slotZeroManager(World world){
if(this.getSlotStack(0) != ItemStack.EMPTY) {
Integer decrInt = (int) Math.floor(getVanillaItemBurnTime(this.getSlotStack(0)) / 20);
if(decrInt == 0) {
@@ -62,11 +67,12 @@ public class TileForge extends TileBaseSlot implements ITickable {
this.markDirty();
this.updateBlock();
}
if (this.getSlotStack(0).getCount() == 1){
this.decrStackSize(0, 1);
this.markDirty();
this.updateBlock();
}
}
this.heatManager(this.getHeat(), state, this.getSlotStack(0), world, pos);
}
craftingManager();
CommonUtils.makeSmoke(world, pos);
}
}

View File

@@ -1,7 +1,5 @@
package nmd.primal.forgecraft.util;
import net.minecraft.item.ItemStack;
/**
* 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,
"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