diff --git a/kfc/gradle.properties b/kfc/gradle.properties index 95e93d0a..a629d380 100644 --- a/kfc/gradle.properties +++ b/kfc/gradle.properties @@ -6,7 +6,7 @@ org.gradle.jvmargs=-Xmx3G mod_group=nmd.primal.forgecraft mod_name=ForgeCraft -mod_version=1.4.1 +mod_version=1.4.01 forge_version=14.23.0.2517 mcp_mappings=snapshot_20171003 mc_version=1.12.2 diff --git a/kfc/src/main/java/nmd/primal/forgecraft/ForgeCraft.java b/kfc/src/main/java/nmd/primal/forgecraft/ForgeCraft.java index 37911ee1..4b008d2e 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/ForgeCraft.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/ForgeCraft.java @@ -7,8 +7,10 @@ import net.minecraftforge.fml.common.SidedProxy; import net.minecraftforge.fml.common.event.FMLInitializationEvent; import net.minecraftforge.fml.common.event.FMLPostInitializationEvent; import net.minecraftforge.fml.common.event.FMLPreInitializationEvent; +import net.minecraftforge.fml.common.event.FMLServerStartingEvent; import net.minecraftforge.fml.common.network.NetworkRegistry; import net.minecraftforge.fml.common.network.simpleimpl.SimpleNetworkWrapper; +import nmd.primal.forgecraft.commands.CommandShowWiki; import nmd.primal.forgecraft.compat.ModDictionary; import nmd.primal.forgecraft.gui.GuiHandler; import nmd.primal.forgecraft.init.*; @@ -78,4 +80,10 @@ public class ForgeCraft //this.proxy.postInit(event); } + @EventHandler + public void serverStarting(FMLServerStartingEvent event) + { + event.registerServerCommand(new CommandShowWiki()); + } + } \ No newline at end of file diff --git a/kfc/src/main/java/nmd/primal/forgecraft/ModInfo.java b/kfc/src/main/java/nmd/primal/forgecraft/ModInfo.java index 0b231caf..45d6a152 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/ModInfo.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/ModInfo.java @@ -17,7 +17,7 @@ public class ModInfo { public static final String MOD_CONFIG = "primal/" + MOD_ID; //public static final String MOD_PREFIX = MOD_ID + ":"; public static final String MOD_CHANNEL = MOD_ID; - public static final String MOD_VERSION = "1.4.1"; + public static final String MOD_VERSION = "1.4.01"; public static final String MC_VERSIONS = "[1.12.0, 1.13.0)"; public static final String DEPENDENCIES = "required-after:forge@[14.21.1.2400,);" + "required-after:primal@[0.6.0,);"; diff --git a/kfc/src/main/java/nmd/primal/forgecraft/blocks/Anvil/AnvilStone.java b/kfc/src/main/java/nmd/primal/forgecraft/blocks/Anvil/AnvilStone.java index 954ddc53..cf099022 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/blocks/Anvil/AnvilStone.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/blocks/Anvil/AnvilStone.java @@ -31,6 +31,46 @@ public class AnvilStone extends AnvilBase { ItemStack pItem = player.inventory.getCurrentItem(); TileAnvil tile = (TileAnvil) world.getTileEntity(pos); if (tile != null) { + if ((pItem.getItem() instanceof Gallagher) || (pItem.getItem() == ModItems.forgehammer)) { + if(tile.getSlotStack(12).getItem().equals(ModItems.ironingotballhot) ){ + 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)); + world.playEvent(1031, pos, 0); + } + if(tile.getSlotStack(12).getItem().equals(ModItems.ironcleaningotballhot) ){ + 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); + } + if(tile.getSlotStack(12).getItem().equals(ModItems.steelingotballhot) ){ + 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)); + } + if(tile.getSlotStack(12).getItem().equals(ModItems.wootzingotballhot) ){ + //TODO Wootz chunks + } + } if ((pItem.getItem() instanceof Gallagher) || (pItem.getItem() == ModItems.forgehammer)) { String[] tempArray = new String[25]; for (int i = 0; i < 25; i++) { diff --git a/kfc/src/main/java/nmd/primal/forgecraft/blocks/BloomeryBase.java b/kfc/src/main/java/nmd/primal/forgecraft/blocks/BloomeryBase.java index 2bbea5fc..aef5f397 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/blocks/BloomeryBase.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/blocks/BloomeryBase.java @@ -23,8 +23,8 @@ import net.minecraft.world.World; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import nmd.primal.core.api.PrimalAPI; -import nmd.primal.core.common.recipes.FireSource; import nmd.primal.core.common.helper.PlayerHelper; +import nmd.primal.core.common.recipes.FireSource; import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.crafting.BloomeryCrafting; import nmd.primal.forgecraft.tiles.TileBloomery; @@ -174,17 +174,15 @@ public class BloomeryBase extends CustomContainerFacing implements ITileEntityPr return true; } } - if (player.isSneaking()) { - if (!tile.getSlotStack(0).isEmpty()) { - if(player.inventory.getCurrentItem().getItem() instanceof ItemSpade) { - ItemStack returnStack = tile.getSlotStack(0).copy(); - PlayerHelper.spawnItemOnPlayer(world, player, returnStack); - tile.clearSlot(0); - return true; - } + + if (!tile.getSlotStack(0).isEmpty()) { + if(player.inventory.getCurrentItem().getItem() instanceof ItemSpade) { + ItemStack returnStack = tile.getSlotStack(0).copy(); + PlayerHelper.spawnItemOnPlayer(world, player, returnStack); + tile.clearSlot(0); + return true; } } - } return false; } diff --git a/kfc/src/main/java/nmd/primal/forgecraft/blocks/Breaker.java b/kfc/src/main/java/nmd/primal/forgecraft/blocks/Breaker.java index 849bb415..22127ef7 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/blocks/Breaker.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/blocks/Breaker.java @@ -19,7 +19,6 @@ import net.minecraft.world.World; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import nmd.primal.core.api.PrimalAPI; -import nmd.primal.core.api.PrimalAPI.States; import nmd.primal.core.common.items.tools.Gallagher; import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.tiles.TileBreaker; diff --git a/kfc/src/main/java/nmd/primal/forgecraft/blocks/Forge.java b/kfc/src/main/java/nmd/primal/forgecraft/blocks/Forge.java index 14109c3a..d91ed880 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/blocks/Forge.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/blocks/Forge.java @@ -25,8 +25,8 @@ import net.minecraft.world.World; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import nmd.primal.core.api.PrimalAPI; -import nmd.primal.core.common.recipes.FireSource; import nmd.primal.core.common.helper.PlayerHelper; +import nmd.primal.core.common.recipes.FireSource; import nmd.primal.forgecraft.ModInfo; import nmd.primal.forgecraft.items.parts.ToolPart; import nmd.primal.forgecraft.tiles.TileForge; @@ -95,21 +95,15 @@ public class Forge extends CustomContainerFacing implements ITileEntityProvider{ ItemStack fuelItem = tile.getSlotStack(0); //System.out.println(pItem.getItem().getRegistryName().toString()); - - - /*********************** FUEL SLOT CODE ***********************/ - - if (player.isSneaking()) { - if (!tile.getSlotStack(0).isEmpty()) { - if(player.inventory.getCurrentItem().getItem() instanceof ItemSpade) { - ItemStack returnStack = tile.getSlotStack(0).copy(); - PlayerHelper.spawnItemOnPlayer(world, player, returnStack); - tile.clearSlot(0); - return true; - } + if (!tile.getSlotStack(0).isEmpty()) { + if(player.inventory.getCurrentItem().getItem() instanceof ItemSpade) { + ItemStack returnStack = tile.getSlotStack(0).copy(); + PlayerHelper.spawnItemOnPlayer(world, player, returnStack); + tile.clearSlot(0); + return true; } } if(pItem.isEmpty()) { diff --git a/kfc/src/main/java/nmd/primal/forgecraft/commands/CommandShowWiki.java b/kfc/src/main/java/nmd/primal/forgecraft/commands/CommandShowWiki.java new file mode 100644 index 00000000..4f418d60 --- /dev/null +++ b/kfc/src/main/java/nmd/primal/forgecraft/commands/CommandShowWiki.java @@ -0,0 +1,61 @@ +package nmd.primal.forgecraft.commands; + +import net.minecraft.command.CommandBase; +import net.minecraft.command.CommandException; +import net.minecraft.command.ICommandSender; +import net.minecraft.server.MinecraftServer; +import net.minecraft.util.text.ITextComponent; +import net.minecraft.util.text.Style; +import net.minecraft.util.text.TextComponentString; +import net.minecraft.util.text.TextFormatting; +import net.minecraft.util.text.event.ClickEvent; + +/** + * Created by mminaie on 11/5/17. + */ +public class CommandShowWiki extends CommandBase { + + /** + * Check if the given ICommandSender has permission to execute this command + */ + public boolean checkPermission(MinecraftServer server, ICommandSender sender) + { + return server.isSinglePlayer() || super.checkPermission(server, sender); + } + + /** + * Gets the name of the command + */ + public String getName() + { + return "ForgeCraftWiki"; + } + + /** + * Return the required permission level for this command. + */ + public int getRequiredPermissionLevel() + { + return 0; + } + + /** + * Gets the usage string for the command. + */ + public String getUsage(ICommandSender sender) + { + return "OpenUrl"; + } + + /** + * Callback for when the command is executed + */ + public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException + { + String str = "https://sites.google.com/view/forgecraft/home/wiki"; + ClickEvent event = new ClickEvent(ClickEvent.Action.OPEN_URL, str); + ITextComponent link = new TextComponentString("Wiki").setStyle(new Style().setClickEvent(event).setColor(TextFormatting.BLUE)); + sender.sendMessage(link); + } + +} diff --git a/kfc/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java b/kfc/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java index 4259c488..9eb4e688 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/init/ModCrafting.java @@ -6,8 +6,8 @@ import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraftforge.oredict.OreDictionary; import nmd.primal.core.api.PrimalAPI; -import nmd.primal.core.common.recipes.RecipeHandler; import nmd.primal.core.common.helper.CommonUtils; +import nmd.primal.core.common.recipes.RecipeHandler; import nmd.primal.forgecraft.crafting.AnvilCrafting; import nmd.primal.forgecraft.crafting.BloomeryCrafting; import nmd.primal.forgecraft.crafting.CastingformCrafting; @@ -59,7 +59,6 @@ public class ModCrafting { ('A'), ModItems.unstrunglongbow }); - /***Forge***/ RecipeHandler.addShapedOreRecipe(new ItemStack(ModBlocks.forge_brick), "X X", "XYX", "X X", 'X', Items.BRICK, 'Y', Blocks.FURNACE); @@ -908,6 +907,8 @@ public class ModCrafting { diamond = 2 */ + + /*** ForgeHammer ***/ AnvilCrafting.addRecipe( new String [] { diff --git a/kfc/src/main/java/nmd/primal/forgecraft/proxy/ClientProxy.java b/kfc/src/main/java/nmd/primal/forgecraft/proxy/ClientProxy.java index 74b99543..e8e880ae 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/proxy/ClientProxy.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/proxy/ClientProxy.java @@ -60,4 +60,6 @@ public class ClientProxy implements CommonProxy { // new ResourceLocation(ModInfo.MOD_ID, "stonetongs_emptyhot")); } + + } diff --git a/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TileAnvilRender.java b/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TileAnvilRender.java index a6f36124..e47d412f 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TileAnvilRender.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TileAnvilRender.java @@ -13,7 +13,6 @@ import net.minecraft.item.EnumDyeColor; import net.minecraft.item.Item; import net.minecraft.util.EnumFacing; import net.minecraft.util.math.BlockPos; - import nmd.primal.core.api.PrimalAPI; import nmd.primal.forgecraft.blocks.Anvil.AnvilBase; import nmd.primal.forgecraft.blocks.Anvil.AnvilStone; @@ -168,7 +167,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer GL11.glPushMatrix(); double scale = 1.0D; GL11.glScaled(scale, scale, scale); - GL11.glTranslated(tile.getNormalX(a), -0.50D, tile.getNormalZ(i)); + GL11.glTranslated(tile.getNormalX(a), -0.55D, tile.getNormalZ(i)); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); GL11.glPopMatrix(); } @@ -261,7 +260,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer GL11.glPushMatrix(); double scale = 1.0D; GL11.glScaled(scale, scale, scale); - GL11.glTranslated(tile.getReverseX(a), -0.44D, tile.getReverseZ(i)); + GL11.glTranslated(tile.getReverseX(a), -0.55D, tile.getReverseZ(i)); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); GL11.glPopMatrix(); } @@ -352,7 +351,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer GL11.glPushMatrix(); double scale = 1.0D; GL11.glScaled(scale, scale, scale); - GL11.glTranslated(tile.getNormalX(a), -0.44D, tile.getReverseZ(i)); + GL11.glTranslated(tile.getNormalX(a), -0.55D, tile.getReverseZ(i)); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); GL11.glPopMatrix(); } @@ -443,7 +442,7 @@ public class TileAnvilRender extends TileEntitySpecialRenderer GL11.glPushMatrix(); double scale = 1.0D; GL11.glScaled(scale, scale, scale); - GL11.glTranslated(tile.getReverseX(a), -0.455D, tile.getNormalZ(i)); + GL11.glTranslated(tile.getReverseX(a), -0.55D, tile.getNormalZ(i)); renderItem.renderItem(tile.getSlotStack(counter), ItemCameraTransforms.TransformType.FIXED); GL11.glPopMatrix(); } diff --git a/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TilePistonBellowsRender.java b/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TilePistonBellowsRender.java index c9bd4127..c5605c6a 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TilePistonBellowsRender.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/renders/blocks/TilePistonBellowsRender.java @@ -10,7 +10,6 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.EnumFacing; import net.minecraft.util.math.BlockPos; import nmd.primal.core.api.PrimalAPI; -import nmd.primal.core.api.PrimalAPI.States; import nmd.primal.forgecraft.blocks.PistonBellows; import nmd.primal.forgecraft.init.ModItems; import nmd.primal.forgecraft.tiles.TilePistonBellows; diff --git a/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileBloomery.java b/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileBloomery.java index 2950b6fe..67c3cb18 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileBloomery.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/tiles/TileBloomery.java @@ -10,7 +10,6 @@ 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.api.PrimalAPI; import nmd.primal.core.common.helper.CommonUtils; import nmd.primal.core.common.helper.RecipeHelper; diff --git a/kfc/src/main/java/nmd/primal/forgecraft/util/AnvilHandler.java b/kfc/src/main/java/nmd/primal/forgecraft/util/AnvilHandler.java index c373b905..45cf4623 100644 --- a/kfc/src/main/java/nmd/primal/forgecraft/util/AnvilHandler.java +++ b/kfc/src/main/java/nmd/primal/forgecraft/util/AnvilHandler.java @@ -12,7 +12,6 @@ import net.minecraft.util.EnumFacing; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; import nmd.primal.core.api.PrimalAPI; -import nmd.primal.core.common.items.PrimalItem; import nmd.primal.core.common.items.tools.Gallagher; import nmd.primal.forgecraft.CommonUtils; import nmd.primal.forgecraft.blocks.IngotBall; diff --git a/kfc/src/main/resources/mcmod.info b/kfc/src/main/resources/mcmod.info index ef543e1b..3ecb047d 100644 --- a/kfc/src/main/resources/mcmod.info +++ b/kfc/src/main/resources/mcmod.info @@ -2,7 +2,7 @@ "modid": "forgecraft", "name": "Kitsu's Forgecraft", "description": "Forged with sweat and blood", - "version": "1.4.1", + "version": "1.4.01", "mcversion": "1.12.1", "url": "", "updateUrl": "",