{"action":"created","comment":{"url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls/comments/72887116","id":72887116,"diff_hunk":"@@ -0,0 +1,562 @@\n+package slimeknights.tconstruct.smeltery.tileentity;\n+\n+import java.util.List;\n+\n+import javax.annotation.Nonnull;\n+import com.google.common.collect.ImmutableList;\n+import com.google.common.collect.Lists;\n+import net.minecraft.block.state.IBlockState;\n+import net.minecraft.client.gui.inventory.GuiContainer;\n+import net.minecraft.entity.item.EntityItem;\n+import net.minecraft.entity.player.InventoryPlayer;\n+import net.minecraft.inventory.Container;\n+import net.minecraft.item.ItemStack;\n+import net.minecraft.item.crafting.FurnaceRecipes;\n+import net.minecraft.nbt.NBTTagCompound;\n+import net.minecraft.nbt.NBTTagList;\n+import net.minecraft.network.NetworkManager;\n+import net.minecraft.network.play.server.SPacketUpdateTileEntity;\n+import net.minecraft.tileentity.TileEntity;\n+import net.minecraft.util.EnumFacing;\n+import net.minecraft.util.ITickable;\n+import net.minecraft.util.math.BlockPos;\n+import net.minecraft.world.World;\n+import net.minecraftforge.fluids.FluidStack;\n+import net.minecraftforge.fluids.IFluidTank;\n+import net.minecraftforge.fml.relauncher.Side;\n+import net.minecraftforge.fml.relauncher.SideOnly;\n+import org.apache.logging.log4j.Logger;\n+import slimeknights.mantle.common.IInventoryGui;\n+import slimeknights.mantle.multiblock.IMasterLogic;\n+import slimeknights.mantle.multiblock.IServantLogic;\n+import slimeknights.tconstruct.common.TinkerNetwork;\n+import slimeknights.tconstruct.library.TinkerRegistry;\n+import slimeknights.tconstruct.library.Util;\n+import slimeknights.tconstruct.library.utils.TagUtil;\n+import slimeknights.tconstruct.smeltery.TinkerSmeltery;\n+import slimeknights.tconstruct.smeltery.block.BlockSearedFurnaceController;\n+import slimeknights.tconstruct.smeltery.client.GuiSearedFurnace;\n+import slimeknights.tconstruct.smeltery.inventory.ContainerSearedFurnace;\n+import slimeknights.tconstruct.smeltery.multiblock.MultiblockDetection;\n+import slimeknights.tconstruct.smeltery.multiblock.MultiblockSearedFurnace;\n+import slimeknights.tconstruct.smeltery.network.SmelteryFuelUpdatePacket;\n+import slimeknights.tconstruct.smeltery.tileentity.TileSmeltery.FuelInfo;\n+\n+public class TileSearedFurnace extends TileHeatingStructure implements IMasterLogic, ITickable, IInventoryGui {\n+\n+  public static final Logger log = Util.getLogger(\"Furnace\");\n+  \n+  public int fuelQuality; // amount of fuel gotten from a single consumption of the fluid, used for the GUI mainly\n+\n+  protected static final int MAX_SIZE = 9; // because the smeltery max is 9x9, duh\n+  \n+  // Info about the furnace structure/multiblock\n+  public boolean active;\n+  public MultiblockDetection.MultiblockStructure info;\n+  public List<BlockPos> tanks;\n+  public BlockPos currentTank;\n+  public FluidStack currentFuel; // the fuel that was last consumed\n+\n+  protected MultiblockSearedFurnace multiblock;\n+  protected int tick;\n+  \n+  public TileSearedFurnace() {\n+    super(\"gui.searedfurnace.name\", 0, 64);\n+\n+    multiblock = new MultiblockSearedFurnace(this);\n+    tanks = Lists.newLinkedList();\n+    \n+  }\n+  \n+  @Override\n+  public void update() {\n+    if(worldObj.isRemote) {\n+      return;\n+    }\n+    \n+    // are we fully formed?\n+    if(!isActive()) {\n+      // check for furnace once per second\n+      if(tick == 0) {\n+        checkFurnaceStructure();\n+      }\n+    }\n+    else {\n+      // we have a lot less to do than a smeltery since the inside is unreachable and we have no liquids\n+      // basically just heating and fuel consumption\n+      \n+      if(tick % 4 == 0) {\n+        heatItems();\n+      }\n+\n+      if(needsFuel) {\n+        consumeFuel();\n+      }\n+      \n+      // we don't check the inside for obstructions since it should not be possible unless the outside was modified\n+    }\n+    \n+    tick = (tick + 1) % 20;\n+  }\n+  \n+  /* Furnace processing logic */\n+  \n+  @Override\n+  protected void updateHeatRequired(int index) {\n+    ItemStack stack = getStackInSlot(index);\n+    if(stack != null) {\n+      ItemStack result = FurnaceRecipes.instance().getSmeltingResult(stack);\n+      if(result != null) {\n+        int newSize = stack.stackSize * result.stackSize;\n+        if(newSize <= stack.getMaxStackSize() && newSize <= getInventoryStackLimit()) {\n+          // we like our steaks medium rare :)\n+          setHeatRequiredForSlot(index, 130 + (10 * stack.stackSize));\n+        }\n+        else {\n+          // if its too big, set the error state\n+          itemTemperatures[index] = -1;\n+        }\n+\n+        // instantly consume fuel if required\n+        if(!hasFuel()) {\n+          consumeFuel();\n+        }\n+\n+        return;\n+      }\n+    }\n+    \n+    setHeatRequiredForSlot(index, 0);\n+  }\n+\n+  // melt stuff\n+  @Override\n+  protected boolean onItemFinishedHeating(ItemStack stack, int slot) {\n+    ItemStack result = FurnaceRecipes.instance().getSmeltingResult(stack);\n+\n+    if(result == null) {\n+      return false;\n+    }\n+    \n+    // rememeber, we can smelt a whole stack at once\n+    result = result.copy();\n+    result.stackSize *= stack.stackSize;\n+    \n+    setInventorySlotContents(slot, result);\n+    // we set to 1 so we get positive infinity instead of NaN for progress, since NaN is already defined as no recipe\n+    itemTemperatures[slot] = 1;\n+    itemTempRequired[slot] = 0;\n+\n+    // we return false since the itemstack does not leave the slot, otherwise any data we set here is lost (which really would just be the temp)\n+    return false;\n+  }\n+\n+  @Override\n+  protected void consumeFuel() {\n+    // no need to consume fuel\n+    if(hasFuel()) {\n+      return;\n+    }\n+\n+    // get current tank\n+    searchForFuel();\n+\n+    // got a tank?\n+    if(currentTank != null) {\n+      // consume fuel!\n+      TileEntity te = worldObj.getTileEntity(currentTank);\n+      if(te instanceof TileTank) {\n+        IFluidTank tank = ((TileTank) te).getInternalTank();\n+\n+        FluidStack liquid = tank.getFluid();\n+        if(liquid != null) {\n+          FluidStack in = liquid.copy();\n+          int bonusFuel = TinkerRegistry.consumeSmelteryFuel(in);\n+          int amount = liquid.amount - in.amount;\n+          FluidStack drained = tank.drain(amount, false);\n+\n+          // we can drain. actually drain and add the fuel\n+          if(drained != null && drained.amount == amount) {\n+            tank.drain(amount, true);\n+            fuelQuality = bonusFuel;\n+            currentFuel = drained.copy();\n+            addFuel(bonusFuel, drained.getFluid().getTemperature(drained) - 300); // convert to degree celcius\n+\n+            // notify client of fuel/temperature changes\n+            if(worldObj != null && !worldObj.isRemote) {\n+              TinkerNetwork.sendToAll(new SmelteryFuelUpdatePacket(pos, currentTank, temperature, currentFuel));\n+            }\n+            \n+            return;\n+          }\n+        }\n+        \n+        fuelQuality = 0;\n+      }\n+    }\n+  }\n+\n+  /**\n+   * Locates a tank containing fuel, if one exists\n+   * @return true if successful\n+   */\n+  private void searchForFuel() {\n+    // is the current tank still up to date?\n+    if(currentTank != null && hasFuel(currentTank, currentFuel)) {\n+      return;\n+    }\n+\n+    // nope, current tank is empty, check others for same fuel\n+    for(BlockPos pos : tanks) {\n+      if(hasFuel(pos, currentFuel)) {\n+        currentTank = pos;\n+        return;\n+      }\n+    }\n+\n+    // nothing found, try again with new fuel\n+    for(BlockPos pos : tanks) {\n+      if(hasFuel(pos, null)) {\n+        currentTank = pos;\n+        return;\n+      }\n+    }\n+\n+    currentTank = null;\n+  }\n+\n+  // checks if the given location has a fluid tank that contains fuel\n+  private boolean hasFuel(BlockPos pos, FluidStack preference) {","path":"src/main/java/slimeknights/tconstruct/smeltery/tileentity/TileSearedFurnace.java","position":229,"original_position":229,"commit_id":"8a0c45898928ce54f7a4db9b2379ae4d6fc38ee1","original_commit_id":"8a0c45898928ce54f7a4db9b2379ae4d6fc38ee1","user":{"login":"KnightMiner","id":12155288,"avatar_url":"https://avatars.githubusercontent.com/u/12155288?v=3","gravatar_id":"","url":"https://api.github.com/users/KnightMiner","html_url":"https://github.com/KnightMiner","followers_url":"https://api.github.com/users/KnightMiner/followers","following_url":"https://api.github.com/users/KnightMiner/following{/other_user}","gists_url":"https://api.github.com/users/KnightMiner/gists{/gist_id}","starred_url":"https://api.github.com/users/KnightMiner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KnightMiner/subscriptions","organizations_url":"https://api.github.com/users/KnightMiner/orgs","repos_url":"https://api.github.com/users/KnightMiner/repos","events_url":"https://api.github.com/users/KnightMiner/events{/privacy}","received_events_url":"https://api.github.com/users/KnightMiner/received_events","type":"User","site_admin":false},"body":"Okay, can do that. Is there an issue with renaming the fuel packet to match that?","created_at":"2016-07-30T13:03:56Z","updated_at":"2016-07-30T13:03:56Z","html_url":"https://github.com/SlimeKnights/TinkersConstruct/pull/2252#discussion_r72887116","pull_request_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls/2252","_links":{"self":{"href":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls/comments/72887116"},"html":{"href":"https://github.com/SlimeKnights/TinkersConstruct/pull/2252#discussion_r72887116"},"pull_request":{"href":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls/2252"}}},"pull_request":{"url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls/2252","id":77757122,"html_url":"https://github.com/SlimeKnights/TinkersConstruct/pull/2252","diff_url":"https://github.com/SlimeKnights/TinkersConstruct/pull/2252.diff","patch_url":"https://github.com/SlimeKnights/TinkersConstruct/pull/2252.patch","issue_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/issues/2252","number":2252,"state":"open","locked":false,"title":"Add seared furnaces","user":{"login":"KnightMiner","id":12155288,"avatar_url":"https://avatars.githubusercontent.com/u/12155288?v=3","gravatar_id":"","url":"https://api.github.com/users/KnightMiner","html_url":"https://github.com/KnightMiner","followers_url":"https://api.github.com/users/KnightMiner/followers","following_url":"https://api.github.com/users/KnightMiner/following{/other_user}","gists_url":"https://api.github.com/users/KnightMiner/gists{/gist_id}","starred_url":"https://api.github.com/users/KnightMiner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KnightMiner/subscriptions","organizations_url":"https://api.github.com/users/KnightMiner/orgs","repos_url":"https://api.github.com/users/KnightMiner/repos","events_url":"https://api.github.com/users/KnightMiner/events{/privacy}","received_events_url":"https://api.github.com/users/KnightMiner/received_events","type":"User","site_admin":false},"body":"Seared furnaces are basically furnaces that run off a smeltery tank, giving them convenience of use (as you don't need to consume a full solid fuel to cook a single item) and allow other smeltery fuels from the integration to work. To use, simply place a seared tank on any side of the seared furnace.\r\n\r\nI do have a few stylistic questions that I am unsure of which way to go, as stated below:\r\n\r\n* First off, the furnace currently shows its burning texture when the structure is valid, basically the same as the smeltery. My alternate idea here is to set it instead to having fuel, which while it makes more sense logically, you would lose the indication that the furnace structure \"works\" (outside of the GUI just not opening) and it would be a bit more complicated to implement with rendering block updates.\r\n* Secondly, the furnace is currently balanced to be exactly the same as a vanilla bucket of lava, basically 1000mb does 100 items smelted at the same speed. Should this be tweaked to maybe be faster or in some other way better than a vanilla furnace? (as we are limiting the fuel choices)\r\n* Third, the way I've implemented temperature does not affect fuel consumption, so a higher temperature liquid will consume less fluid as it takes less time. This seems to be the same as the smeltery, but it could still be concidered imbalanced as it uses overall less fuel then\r\n* Lastly, should the seared furnace reset the smelting progress when it runs out of fuel? Smelteries don't, but vanilla furnaces do (I could also go with a winding down instead)","created_at":"2016-07-18T03:41:32Z","updated_at":"2016-07-30T13:03:56Z","closed_at":null,"merged_at":null,"merge_commit_sha":"7869c5f11eead7cba4314be0d73b51d9711aa8da","assignee":null,"assignees":[],"milestone":null,"commits_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls/2252/commits","review_comments_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls/2252/comments","review_comment_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls/comments{/number}","comments_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/issues/2252/comments","statuses_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/statuses/8a0c45898928ce54f7a4db9b2379ae4d6fc38ee1","head":{"label":"KnightMiner:add-seared-furnace","ref":"add-seared-furnace","sha":"8a0c45898928ce54f7a4db9b2379ae4d6fc38ee1","user":{"login":"KnightMiner","id":12155288,"avatar_url":"https://avatars.githubusercontent.com/u/12155288?v=3","gravatar_id":"","url":"https://api.github.com/users/KnightMiner","html_url":"https://github.com/KnightMiner","followers_url":"https://api.github.com/users/KnightMiner/followers","following_url":"https://api.github.com/users/KnightMiner/following{/other_user}","gists_url":"https://api.github.com/users/KnightMiner/gists{/gist_id}","starred_url":"https://api.github.com/users/KnightMiner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KnightMiner/subscriptions","organizations_url":"https://api.github.com/users/KnightMiner/orgs","repos_url":"https://api.github.com/users/KnightMiner/repos","events_url":"https://api.github.com/users/KnightMiner/events{/privacy}","received_events_url":"https://api.github.com/users/KnightMiner/received_events","type":"User","site_admin":false},"repo":{"id":54932825,"name":"TinkersConstruct","full_name":"KnightMiner/TinkersConstruct","owner":{"login":"KnightMiner","id":12155288,"avatar_url":"https://avatars.githubusercontent.com/u/12155288?v=3","gravatar_id":"","url":"https://api.github.com/users/KnightMiner","html_url":"https://github.com/KnightMiner","followers_url":"https://api.github.com/users/KnightMiner/followers","following_url":"https://api.github.com/users/KnightMiner/following{/other_user}","gists_url":"https://api.github.com/users/KnightMiner/gists{/gist_id}","starred_url":"https://api.github.com/users/KnightMiner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KnightMiner/subscriptions","organizations_url":"https://api.github.com/users/KnightMiner/orgs","repos_url":"https://api.github.com/users/KnightMiner/repos","events_url":"https://api.github.com/users/KnightMiner/events{/privacy}","received_events_url":"https://api.github.com/users/KnightMiner/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/KnightMiner/TinkersConstruct","description":"Tinker a little, build a little, tinker a little more...","fork":true,"url":"https://api.github.com/repos/KnightMiner/TinkersConstruct","forks_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/forks","keys_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/keys{/key_id}","collaborators_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/teams","hooks_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/hooks","issue_events_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/issues/events{/number}","events_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/events","assignees_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/assignees{/user}","branches_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/branches{/branch}","tags_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/tags","blobs_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/git/refs{/sha}","trees_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/git/trees{/sha}","statuses_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/statuses/{sha}","languages_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/languages","stargazers_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/stargazers","contributors_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/contributors","subscribers_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/subscribers","subscription_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/subscription","commits_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/commits{/sha}","git_commits_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/git/commits{/sha}","comments_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/comments{/number}","issue_comment_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/issues/comments{/number}","contents_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/contents/{+path}","compare_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/compare/{base}...{head}","merges_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/merges","archive_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/downloads","issues_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/issues{/number}","pulls_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/pulls{/number}","milestones_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/milestones{/number}","notifications_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/labels{/name}","releases_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/releases{/id}","deployments_url":"https://api.github.com/repos/KnightMiner/TinkersConstruct/deployments","created_at":"2016-03-29T00:19:37Z","updated_at":"2016-03-29T00:19:40Z","pushed_at":"2016-07-27T14:18:42Z","git_url":"git://github.com/KnightMiner/TinkersConstruct.git","ssh_url":"git@github.com:KnightMiner/TinkersConstruct.git","clone_url":"https://github.com/KnightMiner/TinkersConstruct.git","svn_url":"https://github.com/KnightMiner/TinkersConstruct","homepage":null,"size":27913,"stargazers_count":0,"watchers_count":0,"language":"Java","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"SlimeKnights:master","ref":"master","sha":"22217096ddcc017301a90cd8b5d0b6421eaa3934","user":{"login":"SlimeKnights","id":5725061,"avatar_url":"https://avatars.githubusercontent.com/u/5725061?v=3","gravatar_id":"","url":"https://api.github.com/users/SlimeKnights","html_url":"https://github.com/SlimeKnights","followers_url":"https://api.github.com/users/SlimeKnights/followers","following_url":"https://api.github.com/users/SlimeKnights/following{/other_user}","gists_url":"https://api.github.com/users/SlimeKnights/gists{/gist_id}","starred_url":"https://api.github.com/users/SlimeKnights/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SlimeKnights/subscriptions","organizations_url":"https://api.github.com/users/SlimeKnights/orgs","repos_url":"https://api.github.com/users/SlimeKnights/repos","events_url":"https://api.github.com/users/SlimeKnights/events{/privacy}","received_events_url":"https://api.github.com/users/SlimeKnights/received_events","type":"Organization","site_admin":false},"repo":{"id":7760890,"name":"TinkersConstruct","full_name":"SlimeKnights/TinkersConstruct","owner":{"login":"SlimeKnights","id":5725061,"avatar_url":"https://avatars.githubusercontent.com/u/5725061?v=3","gravatar_id":"","url":"https://api.github.com/users/SlimeKnights","html_url":"https://github.com/SlimeKnights","followers_url":"https://api.github.com/users/SlimeKnights/followers","following_url":"https://api.github.com/users/SlimeKnights/following{/other_user}","gists_url":"https://api.github.com/users/SlimeKnights/gists{/gist_id}","starred_url":"https://api.github.com/users/SlimeKnights/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/SlimeKnights/subscriptions","organizations_url":"https://api.github.com/users/SlimeKnights/orgs","repos_url":"https://api.github.com/users/SlimeKnights/repos","events_url":"https://api.github.com/users/SlimeKnights/events{/privacy}","received_events_url":"https://api.github.com/users/SlimeKnights/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/SlimeKnights/TinkersConstruct","description":"Tinker a little, build a little, tinker a little more...","fork":false,"url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct","forks_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/forks","keys_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/keys{/key_id}","collaborators_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/teams","hooks_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/hooks","issue_events_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/issues/events{/number}","events_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/events","assignees_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/assignees{/user}","branches_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/branches{/branch}","tags_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/tags","blobs_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/git/refs{/sha}","trees_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/git/trees{/sha}","statuses_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/statuses/{sha}","languages_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/languages","stargazers_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/stargazers","contributors_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/contributors","subscribers_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/subscribers","subscription_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/subscription","commits_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/commits{/sha}","git_commits_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/git/commits{/sha}","comments_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/comments{/number}","issue_comment_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/issues/comments{/number}","contents_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/contents/{+path}","compare_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/compare/{base}...{head}","merges_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/merges","archive_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/downloads","issues_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/issues{/number}","pulls_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls{/number}","milestones_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/milestones{/number}","notifications_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/labels{/name}","releases_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/releases{/id}","deployments_url":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/deployments","created_at":"2013-01-22T20:46:32Z","updated_at":"2016-07-29T15:14:35Z","pushed_at":"2016-07-29T07:58:31Z","git_url":"git://github.com/SlimeKnights/TinkersConstruct.git","ssh_url":"git@github.com:SlimeKnights/TinkersConstruct.git","clone_url":"https://github.com/SlimeKnights/TinkersConstruct.git","svn_url":"https://github.com/SlimeKnights/TinkersConstruct","homepage":null,"size":32938,"stargazers_count":438,"watchers_count":438,"language":"Java","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":308,"mirror_url":null,"open_issues_count":63,"forks":308,"open_issues":63,"watchers":438,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls/2252"},"html":{"href":"https://github.com/SlimeKnights/TinkersConstruct/pull/2252"},"issue":{"href":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/issues/2252"},"comments":{"href":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/issues/2252/comments"},"review_comments":{"href":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls/2252/comments"},"review_comment":{"href":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/pulls/2252/commits"},"statuses":{"href":"https://api.github.com/repos/SlimeKnights/TinkersConstruct/statuses/8a0c45898928ce54f7a4db9b2379ae4d6fc38ee1"}}}}
{"actor":{"display_login":"KnightMiner"}}