From 6972ec8101477fd9be93ec67ea7c1bc0d6f5e67d Mon Sep 17 00:00:00 2001 From: Mohammad-Ali Minaie Date: Thu, 23 Mar 2017 23:26:38 -0400 Subject: [PATCH] updating before integrating jei --- 1.11/build.gradle | 4 +- 1.11/eula.txt | 2 +- 1.11/gradle.properties | 4 +- .../nmd/primal/forgecraft/CommonEvents.java | 24 +-- .../java/nmd/primal/forgecraft/ToolNBT.java | 10 +- .../nmd/primal/forgecraft/blocks/Anvil.java | 128 ++++++------ .../nmd/primal/forgecraft/blocks/Forge.java | 4 +- .../primal/forgecraft/init/ModCrafting.java | 12 ++ .../nmd/primal/forgecraft/init/ModItems.java | 15 +- .../nmd/primal/forgecraft/items/ItemTest.java | 22 +- .../items/{toolparts => parts}/ToolPart.java | 5 +- .../forgecraft/items/weapons/CustomSword.java | 44 ++++ .../forgecraft/models/item/e_texture.png | Bin 141 -> 0 bytes .../forgecraft/models/item/ironsword.json | 189 ++++++++++++++++++ .../forgecraft/models/item/ironsword2.json | 189 ++++++++++++++++++ 15 files changed, 526 insertions(+), 126 deletions(-) rename 1.11/src/main/java/nmd/primal/forgecraft/items/{toolparts => parts}/ToolPart.java (98%) create mode 100644 1.11/src/main/java/nmd/primal/forgecraft/items/weapons/CustomSword.java delete mode 100644 1.11/src/main/resources/assets/forgecraft/models/item/e_texture.png create mode 100644 1.11/src/main/resources/assets/forgecraft/models/item/ironsword.json create mode 100644 1.11/src/main/resources/assets/forgecraft/models/item/ironsword2.json diff --git a/1.11/build.gradle b/1.11/build.gradle index 697e32a5..ea3a735d 100644 --- a/1.11/build.gradle +++ b/1.11/build.gradle @@ -87,8 +87,8 @@ dependencies { // and can be found on CurseForge, check the file name of the version you want. // // compile against the JEI API -//deobfCompile "mezz.jei:jei_${mc_version}:${jei_version}:api" -//runtime "mezz.jei:jei_${mc_version}:${jei_version}" +deobfCompile "mezz.jei:jei_${mc_version}:${jei_version}:api" +runtime "mezz.jei:jei_${mc_version}:${jei_version}" deobfCompile "nmd.primal.core:PrimalCore:${primal_version}:dev" //runtime "nmd.primal.core:PrimalCore:${primal_version}" diff --git a/1.11/eula.txt b/1.11/eula.txt index 346be43a..74b7ad66 100644 --- a/1.11/eula.txt +++ b/1.11/eula.txt @@ -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). -#Mon Mar 13 20:41:32 EDT 2017 +#Thu Mar 23 22:36:43 EDT 2017 eula=false diff --git a/1.11/gradle.properties b/1.11/gradle.properties index f07da05d..d9cfd788 100644 --- a/1.11/gradle.properties +++ b/1.11/gradle.properties @@ -10,7 +10,7 @@ forge_version=13.20.0.2226 mcp_mappings=snapshot_20161220 mc_version=1.11.2 -primal_version=0.3.2 -jei_version=4.0+ +primal_version=0.3.10 +jei_version=4.2+ waila_version=1.7.0-B3 apple_version=2.1+ \ No newline at end of file diff --git a/1.11/src/main/java/nmd/primal/forgecraft/CommonEvents.java b/1.11/src/main/java/nmd/primal/forgecraft/CommonEvents.java index 192ed4dc..63fc63b0 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/CommonEvents.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/CommonEvents.java @@ -1,34 +1,12 @@ package nmd.primal.forgecraft; -import net.minecraft.block.*; -import net.minecraft.block.material.Material; -import net.minecraft.block.state.IBlockState; -import net.minecraft.enchantment.Enchantment; -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.inventory.IInventory; -import net.minecraft.item.Item; 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.IShearable; -import net.minecraftforge.event.world.BlockEvent; -import net.minecraftforge.event.world.WorldEvent; import net.minecraftforge.fml.common.eventhandler.EventPriority; import net.minecraftforge.fml.common.eventhandler.SubscribeEvent; import net.minecraftforge.fml.common.gameevent.PlayerEvent; -import nmd.primal.core.api.PrimalBlocks; -import nmd.primal.core.api.PrimalItems; -import nmd.primal.core.api.PrimalRegistries; -import nmd.primal.core.common.init.ModConfig; import nmd.primal.forgecraft.init.ModItems; -import nmd.primal.forgecraft.items.toolparts.ToolPart; -import nmd.primal.forgecraft.items.tools.CustomPickaxe; - -import javax.annotation.Nonnull; +import nmd.primal.forgecraft.items.parts.ToolPart; /** * Created by mminaie on 3/15/17. diff --git a/1.11/src/main/java/nmd/primal/forgecraft/ToolNBT.java b/1.11/src/main/java/nmd/primal/forgecraft/ToolNBT.java index 44d91c84..76b789a0 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/ToolNBT.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/ToolNBT.java @@ -9,14 +9,20 @@ import net.minecraft.nbt.NBTTagCompound; public interface ToolNBT { default boolean getHot(ItemStack stack){ - return stack.getSubCompound("tags").getBoolean("hot"); + if(stack.hasTagCompound()){ + return stack.getSubCompound("tags").getBoolean("hot"); + } + return false; } default void setHot(ItemStack stack, Boolean bool){ stack.getSubCompound("tags").setBoolean("hot", bool); } default int getModifiers(ItemStack stack) { - return stack.getSubCompound("tags").getInteger("modifiers"); + if(stack.hasTagCompound()) { + return stack.getSubCompound("tags").getInteger("modifiers"); + } + return 0; } default void setModifiers(ItemStack stack, Integer mods){ stack.getSubCompound("tags").setInteger("modifiers", mods); diff --git a/1.11/src/main/java/nmd/primal/forgecraft/blocks/Anvil.java b/1.11/src/main/java/nmd/primal/forgecraft/blocks/Anvil.java index dbabf3a8..cd08157e 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/blocks/Anvil.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/blocks/Anvil.java @@ -9,7 +9,6 @@ import net.minecraft.entity.item.EntityItem; import net.minecraft.entity.player.EntityPlayer; 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; @@ -21,15 +20,13 @@ 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.forgecraft.CommonUtils; import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.crafting.AnvilCrafting; import nmd.primal.forgecraft.init.ModItems; -import nmd.primal.forgecraft.items.toolparts.ToolPart; +import nmd.primal.forgecraft.items.parts.ToolPart; import nmd.primal.forgecraft.tiles.TileAnvil; -import nmd.primal.forgecraft.tiles.TileForge; /** * Created by mminaie on 3/4/17. @@ -74,19 +71,20 @@ public class Anvil extends CustomContainerFacing { @Override public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitx, float hity, float hitz) { - if (!player.isSwingInProgress) { + /*if (!player.isSwingInProgress) { player.swingArm(hand); - } + }*/ /****************************************************************************** Crafting Anvil Recipes *****************************************************************************/ if (!world.isRemote) { - if ((player.inventory.getCurrentItem().getItem().equals(PrimalItems.STONE_GALLAGHER)) || (player.inventory.getCurrentItem().getItem() == ModItems.forgehammer)) { - TileAnvil tile = (TileAnvil) world.getTileEntity(pos); - ItemStack pItem = player.inventory.getCurrentItem(); - if (tile != null) { + ItemStack pItem = player.inventory.getCurrentItem(); + TileAnvil tile = (TileAnvil) world.getTileEntity(pos); + if (tile != null) { + if ((player.inventory.getCurrentItem().getItem().equals(PrimalItems.STONE_GALLAGHER)) || (player.inventory.getCurrentItem().getItem() == ModItems.forgehammer)) { + if ((pItem.getItem().equals(PrimalItems.STONE_GALLAGHER)) || (pItem.getItem() == ModItems.forgehammer)) { @@ -199,95 +197,91 @@ public class Anvil extends CustomContainerFacing { } - - - - /***************************************************************************** - Adding and Removing Inventory With Tongs - *****************************************************************************/ - - + /***************************************************************************** + Adding and Removing Inventory With Tongs + *****************************************************************************/ if ((pItem.getItem() != PrimalItems.STONE_GALLAGHER) || (pItem.getItem() != ModItems.forgehammer)) { + if (pItem.getItem().equals(ModItems.stonetongs)) { + if ((pItem.getTagCompound().getInteger("type") == 6) || (pItem.getTagCompound().getInteger("type") == 7) || + (pItem.getTagCompound().getInteger("type") == 8) || + (pItem.getTagCompound().getInteger("type") == 9) || + (pItem.getTagCompound().getInteger("type") == 10) || + (pItem.getTagCompound().getInteger("type") == 11) || + (pItem.getTagCompound().getInteger("type") == 0)) { + if (state.getValue(FACING) == EnumFacing.NORTH) { + int counter = 0; + for (int z = 0; z < 5; z++) { + for (int x = 0; x < 5; x++) { + if (hitx >= this.getNormalMin(x) && hitx <= this.getNormalMax(x)) { + if (hitz >= this.getNormalMin(z) && hitz <= this.getNormalMax(z)) { - if (state.getValue(FACING) == EnumFacing.NORTH) { - int counter = 0; - for (int z = 0; z < 5; z++) { - for (int x = 0; x < 5; x++) { - if (hitx >= this.getNormalMin(x) && hitx <= this.getNormalMax(x)) { - if (hitz >= this.getNormalMin(z) && hitz <= this.getNormalMax(z)) { - - return doWork(pItem, counter, tile, world, pos, player); + doWork(pItem, counter, tile, world, pos, player); + //System.out.println("Doing work"); + } + } + counter++; } } - counter++; } - } - } - if (state.getValue(FACING) == EnumFacing.SOUTH) { - int counter = 0; - for (int z = 0; z < 5; z++) { - for (int x = 0; x < 5; x++) { - if (hitx >= this.getReverseMin(x) && hitx <= this.getReverseMax(x)) { - if (hitz >= this.getReverseMin(z) && hitz <= this.getReverseMax(z)) { + if (state.getValue(FACING) == EnumFacing.SOUTH) { + int counter = 0; + for (int z = 0; z < 5; z++) { + for (int x = 0; x < 5; x++) { + if (hitx >= this.getReverseMin(x) && hitx <= this.getReverseMax(x)) { + if (hitz >= this.getReverseMin(z) && hitz <= this.getReverseMax(z)) { - return doWork(pItem, counter, tile, world, pos, player); + doWork(pItem, counter, tile, world, pos, player); + } + } + counter++; } } - counter++; } - } - } - if (state.getValue(FACING) == EnumFacing.WEST) { - int counter = 0; - for (int x = 0; x < 5; x++) { - for (int z = 0; z < 5; z++) { - if (hitx >= this.getNormalMin(x) && hitx <= this.getNormalMax(x)) { - if (hitz >= this.getReverseMin(z) && hitz <= this.getReverseMax(z)) { + if (state.getValue(FACING) == EnumFacing.WEST) { + int counter = 0; + for (int x = 0; x < 5; x++) { + for (int z = 0; z < 5; z++) { + if (hitx >= this.getNormalMin(x) && hitx <= this.getNormalMax(x)) { + if (hitz >= this.getReverseMin(z) && hitz <= this.getReverseMax(z)) { - return doWork(pItem, counter, tile, world, pos, player); + doWork(pItem, counter, tile, world, pos, player); + } + } + counter++; } } - counter++; } - } - } - if (state.getValue(FACING) == EnumFacing.EAST) { - int counter = 0; - for (int x = 0; x < 5; x++) { - for (int z = 0; z < 5; z++) { - if (hitx >= this.getReverseMin(x) && hitx <= this.getReverseMax(x)) { - if (hitz >= this.getNormalMin(z) && hitz <= this.getNormalMax(z)) { + if (state.getValue(FACING) == EnumFacing.EAST) { + int counter = 0; + for (int x = 0; x < 5; x++) { + for (int z = 0; z < 5; z++) { + if (hitx >= this.getReverseMin(x) && hitx <= this.getReverseMax(x)) { + if (hitz >= this.getNormalMin(z) && hitz <= this.getNormalMax(z)) { - return doWork(pItem, counter, tile, world, pos, player); + doWork(pItem, counter, tile, world, pos, player); + } + } + counter++; } } - counter++; } } } } - return false; } + return false; } - - return false; } private boolean doWork(ItemStack pItem, Integer counter, TileAnvil tile, World world, BlockPos pos, EntityPlayer player) { if (pItem.getItem().equals(ModItems.stonetongs)) { //System.out.println("Level 1"); - if ((pItem.getTagCompound().getInteger("type") == 6) || (pItem.getTagCompound().getInteger("type") == 7) || - (pItem.getTagCompound().getInteger("type") == 8) || - (pItem.getTagCompound().getInteger("type") == 9) || - (pItem.getTagCompound().getInteger("type") == 10) || - (pItem.getTagCompound().getInteger("type") == 11) || - (pItem.getTagCompound().getInteger("type") == 0)) { if (!tile.getSlotStack(counter).isEmpty()) { if (pItem.getTagCompound().getInteger("type") == 0) { @@ -385,7 +379,7 @@ public class Anvil extends CustomContainerFacing { } } } - } + //System.out.println("1" + pItem); if (pItem.getItem().equals(Items.AIR) && player.isSneaking()) { diff --git a/1.11/src/main/java/nmd/primal/forgecraft/blocks/Forge.java b/1.11/src/main/java/nmd/primal/forgecraft/blocks/Forge.java index 08e889f7..b2ac7f11 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/blocks/Forge.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/blocks/Forge.java @@ -15,7 +15,6 @@ import net.minecraft.init.Items; import net.minecraft.init.SoundEvents; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.*; import net.minecraft.util.math.AxisAlignedBB; @@ -31,8 +30,7 @@ import nmd.primal.core.api.PrimalItems; import nmd.primal.forgecraft.CommonUtils; import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.init.ModBlocks; -import nmd.primal.forgecraft.init.ModItems; -import nmd.primal.forgecraft.items.toolparts.ToolPart; +import nmd.primal.forgecraft.items.parts.ToolPart; import nmd.primal.forgecraft.tiles.TileForge; import javax.annotation.Nullable; diff --git a/1.11/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java b/1.11/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java index 76bf5648..9ca29c9d 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java @@ -269,6 +269,18 @@ public class ModCrafting { "null" ); + /*** Temp Iron Sword ***/ + AnvilCrafting.addRecipe( + new String[] { + empty,empty,empty,empty,empty, + empty,empty,hotChunk,empty,empty, + empty,empty,hotChunk,empty,empty, + empty,hotChunk,hotChunk,hotChunk,empty, + empty,empty,hotChunk,empty,empty }, + new ItemStack(ModItems.ironsword, 1), + "null" + ); + /*** Flaked emerald ***/ AnvilCrafting.addRecipe( new String[] { diff --git a/1.11/src/main/java/nmd/primal/forgecraft/init/ModItems.java b/1.11/src/main/java/nmd/primal/forgecraft/init/ModItems.java index d66fabc6..edbb227d 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/init/ModItems.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/init/ModItems.java @@ -1,6 +1,5 @@ package nmd.primal.forgecraft.init; -import javafx.scene.paint.Material; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.ItemMeshDefinition; import net.minecraft.client.renderer.block.model.ModelBakery; @@ -23,18 +22,19 @@ import net.minecraftforge.fml.relauncher.SideOnly; import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.blocks.IngotBall; import nmd.primal.forgecraft.items.*; -import nmd.primal.forgecraft.items.toolparts.ToolPart; +import nmd.primal.forgecraft.items.parts.ToolPart; 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; /** * Created by kitsu on 11/26/2016. */ public class ModItems { - public static Item test; + //public static Item test; public static Item pistonbellows; public static Item forgehammer = new ForgeHammer("forgehammer"); public static Item softcrucible; @@ -52,6 +52,8 @@ public class ModItems { public static Item ironshovel; public static Item ironhoe; + public static Item ironsword; + //public static Item forgingmanual; public static void init() { @@ -70,8 +72,9 @@ public class ModItems { ironshovel = new CustomShovel("ironshovel", Item.ToolMaterial.IRON); ironhoe = new CustomHoe("ironhoe", Item.ToolMaterial.IRON); + ironsword = new CustomSword("ironsword", Item.ToolMaterial.IRON); //ironingotballcool = new BaseMultiItem("ironingotcool") {}; - //test = new ItemTest(); + //test = new ItemTest("ironsword"); ironingotballhot = new BaseMultiItem("ironingothot") { @@ -128,6 +131,8 @@ public class ModItems { GameRegistry.register(ironshovel); GameRegistry.register(ironhoe); + GameRegistry.register(ironsword); + //GameRegistry.register(forgingmanual); } @@ -148,6 +153,8 @@ public class ModItems { registerRender(ironaxe); registerRender(ironshovel); registerRender(ironhoe); + + registerRender(ironsword); //registerRender(forgingmanual); } diff --git a/1.11/src/main/java/nmd/primal/forgecraft/items/ItemTest.java b/1.11/src/main/java/nmd/primal/forgecraft/items/ItemTest.java index 16d94452..b1039906 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/items/ItemTest.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/items/ItemTest.java @@ -19,25 +19,11 @@ import javax.annotation.Nullable; */ public class ItemTest extends BaseItem { - public ItemTest() { - setUnlocalizedName(ModInfo.ForgecraftItems.TEST.getUnlocalizedName()); - setRegistryName(ModInfo.ForgecraftItems.TEST.getRegistryName()); + public ItemTest(String string) { + setUnlocalizedName(string); + setRegistryName(string); + - this.addPropertyOverride(new ResourceLocation("test"), new IItemPropertyGetter() - { - @SideOnly(Side.CLIENT) - public float apply(ItemStack stack, @Nullable World worldIn, @Nullable EntityLivingBase entityIn) - { - if (entityIn == null) - { - return 0.0F; - } - else - { - return 1.0F; - } - } - }); } } diff --git a/1.11/src/main/java/nmd/primal/forgecraft/items/toolparts/ToolPart.java b/1.11/src/main/java/nmd/primal/forgecraft/items/parts/ToolPart.java similarity index 98% rename from 1.11/src/main/java/nmd/primal/forgecraft/items/toolparts/ToolPart.java rename to 1.11/src/main/java/nmd/primal/forgecraft/items/parts/ToolPart.java index f5589b45..3701b08e 100644 --- a/1.11/src/main/java/nmd/primal/forgecraft/items/toolparts/ToolPart.java +++ b/1.11/src/main/java/nmd/primal/forgecraft/items/parts/ToolPart.java @@ -1,7 +1,6 @@ -package nmd.primal.forgecraft.items.toolparts; +package nmd.primal.forgecraft.items.parts; import com.mojang.realmsclient.gui.ChatFormatting; -import net.minecraft.enchantment.EnchantmentDigging; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; @@ -19,8 +18,6 @@ import nmd.primal.forgecraft.ToolNBT; import javax.annotation.Nullable; import java.util.List; -import static nmd.primal.forgecraft.ToolNBT.*; - /** * Created by mminaie on 3/9/17. */ diff --git a/1.11/src/main/java/nmd/primal/forgecraft/items/weapons/CustomSword.java b/1.11/src/main/java/nmd/primal/forgecraft/items/weapons/CustomSword.java new file mode 100644 index 00000000..18278d96 --- /dev/null +++ b/1.11/src/main/java/nmd/primal/forgecraft/items/weapons/CustomSword.java @@ -0,0 +1,44 @@ +package nmd.primal.forgecraft.items.weapons; + +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +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. + */ +public class CustomSword extends ItemSword { + + public CustomSword(String name, Item.ToolMaterial material) { + super(material); + this.setUnlocalizedName(name); + this.setRegistryName(name); + this.setCreativeTab(ModInfo.TAB_FORGECRAFT); + this.setMaxStackSize(1); + this.setNoRepair(); + + } + + @SideOnly(Side.CLIENT) + @Override + public boolean hasEffect(ItemStack stack) + { + return false; + } + + @Override + public boolean isRepairable() + { + return false; + } + + public int getItemEnchantability(ItemStack stack) + { + return 0; + } + +} diff --git a/1.11/src/main/resources/assets/forgecraft/models/item/e_texture.png b/1.11/src/main/resources/assets/forgecraft/models/item/e_texture.png deleted file mode 100644 index 7291f2ea2b524eccecb6678f7bd40262c849bf2f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 141 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61SBU+%rFB|A)YRdAsV8|HWeQfm^B+%SKK&v zuFpfaoliDNDM&L$@~vsZp9Y?WbuQ1CZf4l2-1K~5=5VI@Msu3kk+ey<5-m~}Y