From d9da8bddc53fffedbb26536b034f9f19cd8374c0 Mon Sep 17 00:00:00 2001 From: Dylan Miller Date: Sun, 16 Jun 2013 14:20:25 -0700 Subject: [PATCH 01/48] Fixed pipes rendering in hand as flat texture --- common/buildcraft/transport/render/PipeItemRenderer.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/common/buildcraft/transport/render/PipeItemRenderer.java b/common/buildcraft/transport/render/PipeItemRenderer.java index 50fae0a8..6abb0d85 100644 --- a/common/buildcraft/transport/render/PipeItemRenderer.java +++ b/common/buildcraft/transport/render/PipeItemRenderer.java @@ -69,6 +69,8 @@ public class PipeItemRenderer implements IItemRenderer { return true; case EQUIPPED: return true; + case EQUIPPED_FIRST_PERSON: + return true; case INVENTORY: return true; default: @@ -90,6 +92,9 @@ public class PipeItemRenderer implements IItemRenderer { case EQUIPPED: renderPipeItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f); break; + case EQUIPPED_FIRST_PERSON: + renderPipeItem((RenderBlocks) data[0], item, -0.4f, 0.50f, 0.35f); + break; case INVENTORY: renderPipeItem((RenderBlocks) data[0], item, -0.5f, -0.5f, -0.5f); break; From 700fc14b8585368bfbaae7b995e4ed1cde56849c Mon Sep 17 00:00:00 2001 From: Zero Date: Sat, 29 Jun 2013 09:25:39 -0400 Subject: [PATCH 02/48] Optimized image files. Saved 72.80 KB (47.86%) --- .../blocks/advworkbenchtable_bottom.png | Bin 627 -> 348 bytes .../blocks/advworkbenchtable_side.png | Bin 633 -> 357 bytes .../textures/blocks/advworkbenchtable_top.png | Bin 890 -> 603 bytes .../textures/blocks/architect_front.png | Bin 478 -> 206 bytes .../textures/blocks/architect_sides.png | Bin 510 -> 238 bytes .../textures/blocks/architect_top.png | Bin 414 -> 142 bytes .../textures/blocks/architect_top_neg.png | Bin 394 -> 121 bytes .../textures/blocks/architect_top_pos.png | Bin 395 -> 122 bytes .../textures/blocks/assemblytable_bottom.png | Bin 627 -> 348 bytes .../textures/blocks/assemblytable_side.png | Bin 565 -> 287 bytes .../textures/blocks/assemblytable_top.png | Bin 713 -> 438 bytes .../textures/blocks/autoWorkbench_side.png | Bin 804 -> 506 bytes .../textures/blocks/autoWorkbench_top.png | Bin 541 -> 263 bytes .../textures/blocks/blockBlueLaser.png | Bin 843 -> 571 bytes .../textures/blocks/blockDrillHeadTexture.png | Bin 709 -> 418 bytes .../textures/blocks/blockDrillTexture.png | Bin 384 -> 112 bytes .../textures/blocks/blockFillerSides.png | Bin 660 -> 384 bytes .../textures/blocks/blockFillerTopOff.png | Bin 684 -> 412 bytes .../textures/blocks/blockFillerTopOn.png | Bin 688 -> 416 bytes .../buildcraft/textures/blocks/blockFrame.png | Bin 402 -> 130 bytes .../textures/blocks/blockMarker.png | Bin 406 -> 134 bytes .../textures/blocks/blockPathMarker.png | Bin 398 -> 125 bytes .../textures/blocks/blockPathMarkerActive.png | Bin 407 -> 134 bytes .../textures/blocks/blockPlainPipe.png | Bin 407 -> 135 bytes .../textures/blocks/blockRedLaser.png | Bin 829 -> 556 bytes .../textures/blocks/blockStripesLaser.png | Bin 728 -> 448 bytes .../textures/blocks/blockTransparentLaser.png | Bin 356 -> 83 bytes .../textures/blocks/block_12_13.png | Bin 344 -> 69 bytes .../textures/blocks/block_12_14.png | Bin 344 -> 69 bytes .../textures/blocks/block_12_15.png | Bin 344 -> 69 bytes .../textures/blocks/block_13_14.png | Bin 344 -> 69 bytes .../textures/blocks/block_13_15.png | Bin 344 -> 69 bytes .../buildcraft/textures/blocks/block_15_0.png | Bin 370 -> 89 bytes .../buildcraft/textures/blocks/block_15_1.png | Bin 391 -> 104 bytes .../buildcraft/textures/blocks/block_15_2.png | Bin 411 -> 113 bytes .../buildcraft/textures/blocks/block_15_3.png | Bin 432 -> 134 bytes .../buildcraft/textures/blocks/block_15_4.png | Bin 443 -> 143 bytes .../buildcraft/textures/blocks/block_15_5.png | Bin 461 -> 156 bytes .../buildcraft/textures/blocks/block_15_6.png | Bin 473 -> 163 bytes .../buildcraft/textures/blocks/block_15_7.png | Bin 490 -> 171 bytes .../buildcraft/textures/blocks/block_15_8.png | Bin 505 -> 187 bytes .../buildcraft/textures/blocks/block_15_9.png | Bin 505 -> 192 bytes .../buildcraft/textures/blocks/block_1_4.png | Bin 423 -> 144 bytes .../buildcraft/textures/blocks/block_5_0.png | Bin 378 -> 105 bytes .../buildcraft/textures/blocks/block_5_1.png | Bin 396 -> 123 bytes .../buildcraft/textures/blocks/block_5_10.png | Bin 450 -> 172 bytes .../buildcraft/textures/blocks/block_5_11.png | Bin 447 -> 170 bytes .../buildcraft/textures/blocks/block_5_12.png | Bin 460 -> 185 bytes .../buildcraft/textures/blocks/block_5_13.png | Bin 463 -> 189 bytes .../buildcraft/textures/blocks/block_5_14.png | Bin 463 -> 189 bytes .../buildcraft/textures/blocks/block_5_15.png | Bin 449 -> 174 bytes .../buildcraft/textures/blocks/block_5_2.png | Bin 408 -> 133 bytes .../buildcraft/textures/blocks/block_5_3.png | Bin 417 -> 139 bytes .../buildcraft/textures/blocks/block_5_4.png | Bin 428 -> 150 bytes .../buildcraft/textures/blocks/block_5_5.png | Bin 433 -> 157 bytes .../buildcraft/textures/blocks/block_5_6.png | Bin 437 -> 163 bytes .../buildcraft/textures/blocks/block_5_7.png | Bin 438 -> 157 bytes .../buildcraft/textures/blocks/block_5_8.png | Bin 447 -> 167 bytes .../buildcraft/textures/blocks/block_5_9.png | Bin 449 -> 171 bytes .../buildcraft/textures/blocks/block_7_11.png | Bin 405 -> 132 bytes .../buildcraft/textures/blocks/block_7_12.png | Bin 402 -> 129 bytes .../buildcraft/textures/blocks/block_7_15.png | Bin 420 -> 138 bytes .../buildcraft/textures/blocks/block_7_5.png | Bin 413 -> 141 bytes .../buildcraft/textures/blocks/block_7_7.png | Bin 404 -> 132 bytes .../buildcraft/textures/blocks/block_7_9.png | Bin 423 -> 150 bytes .../buildcraft/textures/blocks/block_8_0.png | Bin 539 -> 265 bytes .../buildcraft/textures/blocks/block_8_1.png | Bin 538 -> 262 bytes .../buildcraft/textures/blocks/block_8_2.png | Bin 544 -> 264 bytes .../buildcraft/textures/blocks/block_8_3.png | Bin 541 -> 262 bytes .../textures/blocks/builder_front.png | Bin 646 -> 372 bytes .../textures/blocks/builder_side.png | Bin 683 -> 410 bytes .../textures/blocks/builder_top.png | Bin 587 -> 314 bytes .../textures/blocks/engineIronBottom.png | Bin 448 -> 353 bytes .../textures/blocks/engineIronSide.png | Bin 349 -> 257 bytes .../textures/blocks/engineIronTop.png | Bin 457 -> 358 bytes .../textures/blocks/engineStoneBottom.png | Bin 340 -> 234 bytes .../textures/blocks/engineStoneSide.png | Bin 284 -> 192 bytes .../textures/blocks/engineStoneTop.png | Bin 355 -> 252 bytes .../textures/blocks/engineWoodBottom.png | Bin 434 -> 335 bytes .../textures/blocks/engineWoodSide.png | Bin 306 -> 214 bytes .../textures/blocks/engineWoodTop.png | Bin 442 -> 348 bytes .../textures/blocks/fillerPatterns/clear.png | Bin 631 -> 359 bytes .../blocks/fillerPatterns/fillAll.png | Bin 634 -> 362 bytes .../blocks/fillerPatterns/flatten.png | Bin 453 -> 330 bytes .../blocks/fillerPatterns/horizon.png | Bin 453 -> 332 bytes .../blocks/fillerPatterns/pyramid.png | Bin 646 -> 374 bytes .../textures/blocks/fillerPatterns/stairs.png | Bin 647 -> 375 bytes .../textures/blocks/fillerPatterns/walls.png | Bin 641 -> 369 bytes .../textures/blocks/gate_autarchic_dark.png | Bin 442 -> 169 bytes .../gate_autarchic_diamond_and_dark.png | Bin 449 -> 177 bytes .../blocks/gate_autarchic_diamond_and_lit.png | Bin 418 -> 146 bytes .../blocks/gate_autarchic_diamond_or_dark.png | Bin 447 -> 174 bytes .../blocks/gate_autarchic_diamond_or_lit.png | Bin 416 -> 143 bytes .../blocks/gate_autarchic_gold_and_dark.png | Bin 449 -> 177 bytes .../blocks/gate_autarchic_gold_and_lit.png | Bin 418 -> 146 bytes .../blocks/gate_autarchic_gold_or_dark.png | Bin 446 -> 174 bytes .../blocks/gate_autarchic_gold_or_lit.png | Bin 415 -> 143 bytes .../blocks/gate_autarchic_iron_and_dark.png | Bin 449 -> 177 bytes .../blocks/gate_autarchic_iron_and_lit.png | Bin 418 -> 146 bytes .../blocks/gate_autarchic_iron_or_dark.png | Bin 446 -> 174 bytes .../blocks/gate_autarchic_iron_or_lit.png | Bin 415 -> 143 bytes .../textures/blocks/gate_autarchic_lit.png | Bin 412 -> 139 bytes .../buildcraft/textures/blocks/gate_dark.png | Bin 432 -> 158 bytes .../textures/blocks/gate_diamond_and_dark.png | Bin 440 -> 166 bytes .../textures/blocks/gate_diamond_and_lit.png | Bin 412 -> 140 bytes .../textures/blocks/gate_diamond_or_dark.png | Bin 438 -> 163 bytes .../textures/blocks/gate_diamond_or_lit.png | Bin 410 -> 137 bytes .../textures/blocks/gate_gold_and_dark.png | Bin 440 -> 166 bytes .../textures/blocks/gate_gold_and_lit.png | Bin 412 -> 140 bytes .../textures/blocks/gate_gold_or_dark.png | Bin 437 -> 163 bytes .../textures/blocks/gate_gold_or_lit.png | Bin 409 -> 137 bytes .../textures/blocks/gate_iron_and_dark.png | Bin 440 -> 166 bytes .../textures/blocks/gate_iron_and_lit.png | Bin 412 -> 140 bytes .../textures/blocks/gate_iron_or_dark.png | Bin 437 -> 163 bytes .../textures/blocks/gate_iron_or_lit.png | Bin 410 -> 137 bytes .../buildcraft/textures/blocks/gate_lit.png | Bin 402 -> 129 bytes .../textures/blocks/hopperBottom.png | Bin 459 -> 360 bytes .../buildcraft/textures/blocks/hopperSide.png | Bin 519 -> 428 bytes .../buildcraft/textures/blocks/hopperTop.png | Bin 493 -> 379 bytes .../textures/blocks/laser_bottom.png | Bin 627 -> 348 bytes .../buildcraft/textures/blocks/laser_side.png | Bin 472 -> 199 bytes .../buildcraft/textures/blocks/laser_top.png | Bin 668 -> 395 bytes .../textures/blocks/library_side.png | Bin 626 -> 354 bytes .../textures/blocks/library_topbottom.png | Bin 683 -> 410 bytes .../textures/blocks/miningwell_back.png | Bin 507 -> 229 bytes .../textures/blocks/miningwell_front.png | Bin 723 -> 445 bytes .../textures/blocks/miningwell_side.png | Bin 552 -> 279 bytes .../textures/blocks/miningwell_top.png | Bin 504 -> 232 bytes .../mods/buildcraft/textures/blocks/oil.png | Bin 4827 -> 3729 bytes .../buildcraft/textures/blocks/oil_flow.png | Bin 7253 -> 5543 bytes .../textures/blocks/pipeAllEmerald_solid.png | Bin 457 -> 184 bytes .../textures/blocks/pipeAllIron_solid.png | Bin 282 -> 157 bytes .../textures/blocks/pipeAllWood_solid.png | Bin 457 -> 184 bytes .../textures/blocks/pipeItemsCobblestone.png | Bin 269 -> 141 bytes .../blocks/pipeItemsDiamond_center.png | Bin 423 -> 144 bytes .../textures/blocks/pipeItemsDiamond_down.png | Bin 430 -> 158 bytes .../textures/blocks/pipeItemsDiamond_east.png | Bin 431 -> 158 bytes .../blocks/pipeItemsDiamond_north.png | Bin 430 -> 158 bytes .../blocks/pipeItemsDiamond_south.png | Bin 430 -> 158 bytes .../textures/blocks/pipeItemsDiamond_up.png | Bin 430 -> 158 bytes .../textures/blocks/pipeItemsDiamond_west.png | Bin 431 -> 158 bytes .../blocks/pipeItemsEmerald_standard.png | Bin 424 -> 144 bytes .../textures/blocks/pipeItemsGold.png | Bin 282 -> 141 bytes .../blocks/pipeItemsIron_standard.png | Bin 269 -> 141 bytes .../textures/blocks/pipeItemsObsidian.png | Bin 424 -> 144 bytes .../textures/blocks/pipeItemsQuartz.png | Bin 366 -> 252 bytes .../textures/blocks/pipeItemsSandstone.png | Bin 582 -> 309 bytes .../textures/blocks/pipeItemsStone.png | Bin 269 -> 141 bytes .../textures/blocks/pipeItemsVoid.png | Bin 449 -> 176 bytes .../blocks/pipeItemsWood_standard.png | Bin 423 -> 144 bytes .../blocks/pipeLiquidsCobblestone.png | Bin 265 -> 136 bytes .../blocks/pipeLiquidsEmerald_standard.png | Bin 414 -> 141 bytes .../textures/blocks/pipeLiquidsGold.png | Bin 266 -> 137 bytes .../blocks/pipeLiquidsIron_standard.png | Bin 266 -> 137 bytes .../textures/blocks/pipeLiquidsSandstone.png | Bin 627 -> 353 bytes .../textures/blocks/pipeLiquidsStone.png | Bin 266 -> 137 bytes .../textures/blocks/pipeLiquidsVoid.png | Bin 443 -> 168 bytes .../blocks/pipeLiquidsWood_standard.png | Bin 413 -> 141 bytes .../textures/blocks/pipePowerCobblestone.png | Bin 250 -> 146 bytes .../textures/blocks/pipePowerDiamond.png | Bin 250 -> 147 bytes .../textures/blocks/pipePowerGold.png | Bin 251 -> 125 bytes .../textures/blocks/pipePowerQuartz.png | Bin 351 -> 221 bytes .../textures/blocks/pipePowerStone.png | Bin 250 -> 146 bytes .../blocks/pipePowerWood_standard.png | Bin 404 -> 132 bytes .../textures/blocks/pipeStripes.png | Bin 877 -> 602 bytes .../blocks/pipeStructureCobblestone.png | Bin 702 -> 577 bytes .../textures/blocks/pump_bottom.png | Bin 445 -> 165 bytes .../buildcraft/textures/blocks/pump_side.png | Bin 592 -> 293 bytes .../buildcraft/textures/blocks/pump_top.png | Bin 504 -> 232 bytes .../buildcraft/textures/blocks/pump_tube.png | Bin 567 -> 295 bytes .../textures/blocks/quarry_front.png | Bin 643 -> 364 bytes .../textures/blocks/quarry_side.png | Bin 503 -> 223 bytes .../buildcraft/textures/blocks/quarry_top.png | Bin 541 -> 269 bytes .../textures/blocks/refineryBack.png | Bin 267 -> 138 bytes .../textures/blocks/refineryBottom.png | Bin 236 -> 129 bytes .../textures/blocks/refineryEast.png | Bin 288 -> 182 bytes .../textures/blocks/refineryFront.png | Bin 274 -> 156 bytes .../textures/blocks/refineryTop.png | Bin 237 -> 130 bytes .../textures/blocks/refineryWest.png | Bin 293 -> 184 bytes .../textures/blocks/tank_bottom_side.png | Bin 407 -> 135 bytes .../textures/blocks/tank_stacked_side.png | Bin 403 -> 131 bytes .../buildcraft/textures/blocks/tank_top.png | Bin 389 -> 117 bytes .../textures/blocks/texture_blue_dark.png | Bin 984 -> 702 bytes .../textures/blocks/texture_blue_lit.png | Bin 748 -> 451 bytes .../textures/blocks/texture_cyan.png | Bin 810 -> 526 bytes .../textures/blocks/texture_green_dark.png | Bin 970 -> 693 bytes .../textures/blocks/texture_green_lit.png | Bin 769 -> 474 bytes .../textures/blocks/texture_red_dark.png | Bin 903 -> 631 bytes .../textures/blocks/texture_red_lit.png | Bin 760 -> 462 bytes .../textures/blocks/texture_yellow_dark.png | Bin 1075 -> 752 bytes .../textures/blocks/texture_yellow_lit.png | Bin 803 -> 507 bytes .../textures/items/autarchic_gate.png | Bin 581 -> 339 bytes .../items/autarchic_gate_diamond_and.png | Bin 592 -> 352 bytes .../items/autarchic_gate_diamond_or.png | Bin 592 -> 352 bytes .../items/autarchic_gate_gold_and.png | Bin 591 -> 352 bytes .../textures/items/autarchic_gate_gold_or.png | Bin 592 -> 352 bytes .../items/autarchic_gate_iron_and.png | Bin 591 -> 352 bytes .../textures/items/autarchic_gate_iron_or.png | Bin 591 -> 352 bytes .../buildcraft/textures/items/block_0_0.png | Bin 334 -> 100 bytes .../textures/items/bluePipeWire.png | Bin 416 -> 175 bytes .../textures/items/blueprint_clean.png | Bin 406 -> 161 bytes .../textures/items/blueprint_used.png | Bin 420 -> 186 bytes .../buildcraft/textures/items/bucketFuel.png | Bin 444 -> 210 bytes .../textures/items/diamondGearItem.png | Bin 895 -> 639 bytes .../mods/buildcraft/textures/items/fuel.png | Bin 13744 -> 7925 bytes .../mods/buildcraft/textures/items/gate.png | Bin 567 -> 326 bytes .../textures/items/gate_diamond_and.png | Bin 581 -> 340 bytes .../textures/items/gate_diamond_or.png | Bin 581 -> 340 bytes .../textures/items/gate_gold_and.png | Bin 580 -> 340 bytes .../textures/items/gate_gold_or.png | Bin 581 -> 340 bytes .../textures/items/gate_iron_and.png | Bin 580 -> 340 bytes .../textures/items/gate_iron_or.png | Bin 580 -> 340 bytes .../textures/items/goldGearItem.png | Bin 845 -> 576 bytes .../textures/items/greenPipeWire.png | Bin 416 -> 175 bytes .../textures/items/icons/energy.png | Bin 393 -> 159 bytes .../textures/items/icons/guiicons_0_1.png | Bin 401 -> 167 bytes .../textures/items/icons/guiicons_0_2.png | Bin 587 -> 352 bytes .../textures/items/icons/guiicons_0_3.png | Bin 572 -> 338 bytes .../textures/items/icons/guiicons_0_4.png | Bin 578 -> 337 bytes .../textures/items/ironGearItem.png | Bin 717 -> 483 bytes .../buildcraft/textures/items/oil_bucket.png | Bin 817 -> 578 bytes .../textures/items/pipeWaterproof.png | Bin 552 -> 268 bytes .../buildcraft/textures/items/redPipeWire.png | Bin 419 -> 177 bytes .../items/redstone_diamond_chipset.png | Bin 514 -> 278 bytes .../textures/items/redstone_gold_chipset.png | Bin 524 -> 289 bytes .../textures/items/redstone_iron_chipset.png | Bin 522 -> 286 bytes .../items/redstone_pulsating_chipset.png | Bin 426 -> 192 bytes .../textures/items/redstone_red_chipset.png | Bin 516 -> 280 bytes .../textures/items/stoneGearItem.png | Bin 944 -> 661 bytes .../textures/items/template_clean.png | Bin 406 -> 161 bytes .../textures/items/template_used.png | Bin 420 -> 186 bytes .../triggers/action_machinecontrol_loop.png | Bin 371 -> 135 bytes .../triggers/action_machinecontrol_off.png | Bin 360 -> 126 bytes .../triggers/action_machinecontrol_on.png | Bin 348 -> 114 bytes .../items/triggers/guitriggers_3_4.png | Bin 347 -> 113 bytes .../items/triggers/guitriggers_5_0.png | Bin 439 -> 205 bytes .../items/triggers/guitriggers_5_1.png | Bin 441 -> 206 bytes .../items/triggers/guitriggers_5_2.png | Bin 441 -> 207 bytes .../items/triggers/guitriggers_5_3.png | Bin 439 -> 205 bytes .../items/triggers/guitriggers_5_4.png | Bin 440 -> 206 bytes .../items/triggers/guitriggers_5_5.png | Bin 445 -> 211 bytes .../triggers/trigger_engineheat_blue.png | Bin 351 -> 117 bytes .../triggers/trigger_engineheat_green.png | Bin 351 -> 117 bytes .../items/triggers/trigger_engineheat_red.png | Bin 351 -> 117 bytes .../triggers/trigger_engineheat_yellow.png | Bin 351 -> 117 bytes .../triggers/trigger_inventory_contains.png | Bin 499 -> 264 bytes .../triggers/trigger_inventory_empty.png | Bin 494 -> 260 bytes .../items/triggers/trigger_inventory_full.png | Bin 497 -> 263 bytes .../triggers/trigger_inventory_space.png | Bin 499 -> 264 bytes .../trigger_liquidcontainer_contains.png | Bin 351 -> 117 bytes .../trigger_liquidcontainer_empty.png | Bin 340 -> 106 bytes .../triggers/trigger_liquidcontainer_full.png | Bin 343 -> 109 bytes .../trigger_liquidcontainer_space.png | Bin 360 -> 126 bytes .../items/triggers/trigger_machine_active.png | Bin 364 -> 130 bytes .../triggers/trigger_machine_inactive.png | Bin 350 -> 116 bytes .../trigger_pipecontents_containsenergy.png | Bin 358 -> 124 bytes .../trigger_pipecontents_containsitems.png | Bin 343 -> 109 bytes .../trigger_pipecontents_containsliquid.png | Bin 352 -> 118 bytes .../triggers/trigger_pipecontents_empty.png | Bin 340 -> 106 bytes .../trigger_pipecontents_requestsenergy.png | Bin 250 -> 116 bytes .../trigger_pipecontents_toomuchenergy.png | Bin 249 -> 114 bytes .../trigger_pipesignal_blue_active.png | Bin 421 -> 187 bytes .../trigger_pipesignal_blue_inactive.png | Bin 403 -> 162 bytes .../trigger_pipesignal_green_active.png | Bin 426 -> 191 bytes .../trigger_pipesignal_green_inactive.png | Bin 403 -> 162 bytes .../trigger_pipesignal_red_active.png | Bin 426 -> 192 bytes .../trigger_pipesignal_red_inactive.png | Bin 406 -> 164 bytes .../trigger_pipesignal_yellow_active.png | Bin 421 -> 187 bytes .../trigger_pipesignal_yellow_inactive.png | Bin 400 -> 161 bytes .../triggers/trigger_redstoneinput_active.png | Bin 417 -> 183 bytes .../trigger_redstoneinput_inactive.png | Bin 410 -> 168 bytes .../textures/items/woodenGearItem.png | Bin 707 -> 446 bytes .../buildcraft/textures/items/wrenchItem.png | Bin 935 -> 699 bytes .../textures/items/yellowPipeWire.png | Bin 413 -> 174 bytes 274 files changed, 0 insertions(+), 0 deletions(-) diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/advworkbenchtable_bottom.png b/buildcraft_resources/mods/buildcraft/textures/blocks/advworkbenchtable_bottom.png index 4722beb1a03f1713b81d629d8995370a703a6228..e162d025647e5b45b7df5fd97346a0e073d94db4 100644 GIT binary patch delta 182 zcmV;n07?Jz1l$6UB#~{6f0ju^K~xyiWzS1i!cYJN(dH5o0(n6|BOpQi>;598=rzz&+ay76^Pt`;OG%U+dpD9iJ`H6W&xgY?iP`Bz zIghNnxhXrA(P@9CGD$C1>sQB{!(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#R>I{N#5=*TEY9S%mXUpEbxddW?ML`*^Re5|Gi+rjslor09dwg;Aw4&g{-1o|k zNWAp7_ux32m32q*w9Kyke_n9MeqeWb`E>DrphHzlTq8yj5nVEbqIm1NXyJg%}dNp zwJHHJ7>wc#O?gVc%K~MkK(fL4X(i=}MX3w{iJ5sNdVa1U3T4K6rh0}3249L60#z}1 My85}Sb4q9e0C+y2ng9R* diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/advworkbenchtable_side.png b/buildcraft_resources/mods/buildcraft/textures/blocks/advworkbenchtable_side.png index 90920c1122a90bb0c06fb0db3449c710cb9067a2..4a0974533061b7ed4f0097dd31dbd2230fc34b66 100644 GIT binary patch delta 148 zcmV;F0BisG1myydB#~{ne{@MiK~xyi#f~uw!ax)S-|SERW;dusde0zu|6?e40Sggf zV(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#ohIcN#5=*CM!3-{0mgZS>O>_%)r1c z1j3A$?$-SQ3YL4iIEF}EPEL@JIMBf+Au)5t%*cqy88>fO&X{RAvyth{nKLnG?%3=( zQ{y1!(Gc$t;1S{C5aJW#6yznPp`fg-zJ9?9m6dChmaSUGCn9kD!jvmQm#$qD6}m9_ z0{hJR!~}*b*%?Q8mRRsAv^BZRnAyA2VrHbI;T=YX&&SxqNM3*G@`r9iU5`DrEPiAAXl0g0J;C3=3YAqr*2 ZdZv1Y1_ob>76Mf-sGR zfz?0(_Q2~}EB!Vx2n(7pGA;v|5%Z0k@wwD(HLy9efLc-+Kd{}^IcdqbFm_4&RGNpELB8wRq zxP?HN@zUM8KS04-o-U3d5|@(`4lwli_?+?a(OKi;lk>($#(~jKFHbJcu8z@BF;P%2 zZ~?>Q89Q2*Oxe<-vwzN>CM6FC&&XEKz^R?Sy`FQYbE+&*JhWux(zT0MA77HsAY|~w zRLIn<-q6%|`-Ux>wlS{Uuyu2}L19TzSz&20`^tnb0$;v-`u6eb=X4=)mf4D$(gGQ; z-n?0JTI2|?7>8NXB~H$(oR?F}`Pn%)xW8~WVl^=AT;=L|yy0vIZ(n!0_Xa;7FF#LT z=1kA?9UYtf%uk$obnd}PHckV>RO3bmKL+l}8q1zDCf2jdD?QNM^d0C=)e_f;l9a@f zRIB8oR3OD*WMF8lYhb8rWDsI#WMyDvWdh`yS{WF;jY*6^(U6;;l9^VCTf-d2n@@lm zgg`c=W#**jCFZ7Dl>iwGR>tv$rdv)tN;K2 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/architect_front.png b/buildcraft_resources/mods/buildcraft/textures/blocks/architect_front.png index 1b38b2768eb1f107459adc7ec1f014a5c9978297..1fe009e072ad0696ba556d99c2b806940701f1f2 100644 GIT binary patch delta 22 ecmcb|e2#H~%EVl!i5KHJ89ZJ6T-G@yGywo)(g(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMOS&oByV>Y#{W#Z_khYc3p^r=85p>Q zK$!8;-MT*$lauOIOI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7hk3kd~Q~nwOZHYE=ScFc`<1?A1FBbS{Iw6i7BW sKdq!Zu_%=xATcwqM9KLZC7RPgg&ebxsLQ07^zvDgXcg diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/architect_sides.png b/buildcraft_resources/mods/buildcraft/textures/blocks/architect_sides.png index 3c1284d22065ae1b4628dbf15270b5a1390d12df..4008864ff49989ea9e0f3d257c15e17039730a6c 100644 GIT binary patch delta 22 ecmeyz{El&g%Ea8XiC?2R89ZJ6T-G@yGywo@jtJ!d delta 291 zcmaFI_>XyliW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#Y}m|ByV>Y#{W#Z_khYc3p^r=85p>Q zK$!8;-MT*$+vDn0OI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7hk3kd~Q~nwOZHYE=ScFc`-h>~iL>1WM{lfnH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qO?3?lDE4H<9{aIdq8EJ1s;*b3=G^t zAk28_Zrz`WmOk~WC9V-ADTyViR>?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3))iNXyJg%}dNpwJHHJ7>whMmA&E)110sPK(fL4 sX(i=}MX3w{iJ5sNdVa1U3T4K6rh0}3249L60+lg%y85}Sb4q9e08A=Tw*UYD diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/architect_top_neg.png b/buildcraft_resources/mods/buildcraft/textures/blocks/architect_top_neg.png index eb0d4f7b5746759d3089ff7296d97c48ca6f8e89..b1cb4bfc699c8b10e6968052c9fc680a18ba19ae 100644 GIT binary patch delta 18 ZcmeBTuAHDUae@yggQu&X%Q~loCIC6V1|t9f delta 290 zcmb>IVxFLq$&&8q>&U>cv7h@-A}a#}17mTJyA#8@b22Z19ED_$AYTTCDm4a%h86~f zUqGRT7Yq!g1`G_Z5*Qe)W-u^_7tGleXakgBO7eDhVc@qivRe$~aTa()7Bet#3xP1> zrMq>1CMx>ZtCqM%l%yn<}luT0@NS~vLP)qCp9lIH`S^H$Y3yzH$3ZN{~jo*F9nhf&QB{T pPb^Ah2uRG#E79|F4N)jF)-%;JG%)y5v=FF_!PC{xWt~$(695X9P_6&~ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/architect_top_pos.png b/buildcraft_resources/mods/buildcraft/textures/blocks/architect_top_pos.png index 8a55e3abae4ddf9c5ca4dee2f74786e3a8a2a5fd..7c5f545e7f9f546b2c56d01f46c70de5c27eef5a 100644 GIT binary patch delta 18 ZcmeBXu9~1Sae^-=gQu&X%Q~loCIC6?1||Ri delta 290 zcmb>GW}cvu$&&8q>&U>cv7h@-A}a#}17mTJyA#8@b22Z19ED_$AYTTCDm4a%h86~f zUqGRT7Yq!g1`G_Z5*Qe)W-u^_7tGleXakgBO7eDhVff$Pe`Y_B$64SJS;598=rzz&+ay76^Pt`;OG%U+dpD9iJ`H6W&xgY?iP`Bz zIghNnxhXrA(P@9CGD$C1>sQB{!(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#R>I{N#5=*TEY9S%mXUpEbxddW?ML`*^Re5|Gi+rjslor09dwg;Aw4&g{-1o|k zNWAp7_ux32m32q*w9Kyke_n9MeqeWb`E>DrphHzlTq8yj5nVEbqIm1NXyJg%}dNp zwJHHJ7>wc#O?gVc%K~MkK(fL4X(i=}MX3w{iJ5sNdVa1U3T4K6rh0}3249L60#z}1 My85}Sb4q9e0C+y2ng9R* diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/assemblytable_side.png b/buildcraft_resources/mods/buildcraft/textures/blocks/assemblytable_side.png index 24f9473cbfbe73a7b8f0f274ceb10bf264f1872e..c061d9cc68477ccffdeeef033f8a05ed009fd8b7 100644 GIT binary patch delta 128 zcmV-`0Du3r1fK$sB#~`}c40|GK~xyi#m>nUf>00u!5IovK*4=qzUCjK2X7jH6+pj^ z_>cS&Sy4B&$#h05Bhl&S3j<`Nk>v{O&6bSZ*!4P^aeo+OWOY29FRpIxJTg)#c)k?c i@`)C(>{?C!e7pe{KLipAHC$f+0000(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#g2N$ByV>YWv!$fE1)vY0*}aI1_o{+ z5N5n|x9$&6FwN7&F+}3>(LPV1W&;7{Tq)->^ERliY5Q+K$?(o0<_oDIu~Ji~RJr}~ z_hJ{AH9@1U(UoDsgfz?69l}!r_8zT&^^C_$B^aW&hg~ z8{gGyeRb&)>b|&LmR;PQMQEF-)gGXgswJ)wB`Jv|saDBFsX&Us$iUE8*T7KM$RNbf z$jZRT$^^(YwK6bx8zV2q8W?;jS_o9d;OXk;vd$@? F2>_z*g3$l~ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/assemblytable_top.png b/buildcraft_resources/mods/buildcraft/textures/blocks/assemblytable_top.png index 843cef29dcc55dfa4266d4492adb1186a7a18bbf..07814802c23685f1cfeaa1b30fc97b9c777e3e16 100644 GIT binary patch delta 206 zcmV;<05Si`1-1i_B#~{;f38VHK~xyiWzXAMf=~cN;bDm&hmE2M<@QjaWvHc*XUq40 zD=+BId4PYuCEd+|2DnY|d|HwMLZUbT3>Zly_y7rbv?T!v?G9dwX(0*IrT5U!@<#wk zPXlX)qw(bV<+UiLl5l2k@1yxgxrpKh_3d)?`L*7BgG-H8KjX42MDu@x6te9u+volP zB>6N$Dlln$oFd6N73TzxE*JQfgtb8MhXvQxs0H9!xtRO-8>PhzE6q1s$^ZZW07*qo IM6N<$f@z*(kN^Mx delta 481 zcmdnSe3Es7iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#Y^>!N#5=*4*zb(+yE-$EbxddW?RH7K=(2wl+BT<|GK^6tTN3mak=My=i*=lqp3V_VJc zyDz`h|7uPY=m~MJvYAVCKerG*ssJ7XeetyT1 z0}8X%C(V|5ZPjI(cW|$Ud1%Ff;NBnm&dkzR$*5CW#j!_O_utdwc1w@)Xh#&zm0Xkxq!^4042^XS40VkRLJWAm(`*P4&BNyX%Fv@Zq&I4OK0kTjEZQYL1{+ z&p{ut$HzUubx$%Dom1boEI=c{;U&xO&25&ah=&77ewX_!YShP;)YvRn<#Z@f%BsH` ahRr_+i8j*UZJx^j0000(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*CMOMao#w2fdm%u5RHCjM*oCO|{#S9GG zLLkg|>2BR0px_Np7sn8Z%d+Qhh8=R?VSBK|ih0FlrMW9Y3Y%B0INBPvy5}hCmaDt= z{J%Wo%kGnw|BudRVVJr7(4NqxA`BXLvtF7V_H#EsC>5P9?Zfn#ebMfl+=nj|HQ01+ z+a?{=R6lp0|HXIr5*~d2F8JWVhZhwdCQ?TW-^`yg?_fnuU7=^-B%gI^*Lm9Bw7s}C zd)Z~3-MgRn*__v`s+hAh@7odC1>Kd7AtHLEdJ}Y?{Zw6iB2{RQ)Xp!t8&$aO9c_>4 z+NKj4S{t@YC(ufyZsDr^ucb;q=O(@FH{5?_mVNT1`sj-?^)}Y~uI>Q(Qnkc2q9i4; zB-JXpC>2OC7#SEE>lzs98X1Hb8d(__S(yO2rd9?9Z(|Z8P&DM`r(~v8;?^*S@#Yht z1|g6QX_+~xd5O8HRwY0NgHgPNq0uD4qzopr0CL90{{R30 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/autoWorkbench_top.png b/buildcraft_resources/mods/buildcraft/textures/blocks/autoWorkbench_top.png index a174d496bc14f2b2d65a0fc4f4027c0f7cbc213e..321e5ecdca109a4f070b2cc3b24919c0da9e9972 100644 GIT binary patch delta 145 zcmV;C0B--C1cw5UB#~`he{o4fK~xyiZH`F}0x=K+%cMy|prMB~{QsjIU=~LB=2FQr zAlOI(6-oiyR{v(Vw}uYKv3s1(K%IL=6@%xP$Z*hK;OXfZ8LqW)fnS3USZ=hnvD~H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5VnRJ*lDE5yRB8GXBcL+Q0*}aI1_o{+ z5N5n|x9$&6u*}oNF+}2W?u1UhW&<8)St+4DQ7f}`|Nmc{*&AKF)T?rn%ytHr6D}3r z4jc{7o~`Z*()Rd!Bdy<;`#_(itFVo2u2O;8U)F!N+!J;$W?skl=YZwnUDoF$*T2Zg zdRedV@0r-!@2l*3a#rn{ZXTM)S@YGzUu2s94~EwPoWJU=rt<)upjzS@QIe8al4_M) zlnSI6j0_Bobqx%4jSNBzjjRletW1DhQ!4|5w=szkC>nC}Q!>*kacT%Pn8SGU2~dX+ z$cnVgoYcI;+*GR)AcMgu-q4U+!k7gpD+Q7b&QB{TPb^Ah2uRG#E79|F4N)jF)-%;J VG%)y5v=FF@!PC{xWt~$(695{-iA?|i diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/blockBlueLaser.png b/buildcraft_resources/mods/buildcraft/textures/blocks/blockBlueLaser.png index e048b52dd5e30a62f66305668fd4698b536a74ab..e736c2df707ce5a87595e1116445935d3b4acdaa 100644 GIT binary patch delta 25 hcmX@jwwq;w%Env{#?8|i*%&z)JYD@<);T3K0RU+-2e|+M delta 294 zcmdnZa++;|iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*CMQ%oU#w2fdm*A>&SvH_L&H|6fVg?3o zArNM~bhqx$W=%#;#(LEf*NBpo#FA92iwG2JwdHnHskNCH191 vvcdUjCFO}lsSE*$nRz98ey$-3WyX4@dWHrDUy2q2l`(j_`njxgN@xNAgYHqd diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/blockDrillHeadTexture.png b/buildcraft_resources/mods/buildcraft/textures/blocks/blockDrillHeadTexture.png index e424b8178981456c66b036c8cb585c6fe2a4664e..abb3827319a2a6c943d73e5f4b404054fe2d9b42 100644 GIT binary patch delta 216 zcmV;}04M*&1)>9xB#~{gf4E6RK~xyiEycl3!!Qs<(fjO4>ktYHga8!@B>w-S*s(#P zEtJG#XIPZ8IYR%sT`pTB1&Ng;9qmS-0B7SGgbketnN%xLA-7$Zm$s67Qc^KO+I}NY zgvds#fwd4J=#ybl3kJW#y5{Q-?NdJ7E?gAJ#$}+J4-n{FcSg~DPI$p-)_fgx^$b9G z(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#Vz%WN#5=*X72ktE&`Qt7I;J!Gca%q zfiUBxyLEqnf~P!P977~7>-N7cYIfjod#Nh5cIBq&8=}RXg|5e4x)yi;|J5$P^9T6% zSsE}Oxcc?%+hrQtXRq3qUG{xL?rlEaMO$y3o4!GP(SlqaNpX3v7tMW&g%P^ZPDe#} z*i&!Tf2dv&)FF6rO~mShkAA6M+;n#VTVl+MJ+Ac^7VBtyod5VGk8*kn-@g|jmivn3Q*|_F9)9^Ul38$S%gMba)5Cd<*aPR^x&1qDp8Xe%$l7ze-W9*= ze#rf0;rsc^3H6H+BCmnoQY~?fC`qYLEJ?LWE=mPb3`Pcq#<~WE zx<&>ehDKHfMph<3uBnxQ!P}U`2)GWAhTQy=%(P0}8s;$Gd;-)U1hOJ6Gbc4KF*nt! z1jt}8iZ?WY6a(~m6RtIr7{F0X6BXX`MHKDlo{)p>KPgsd?{K8RL0=x L>gTe~DWM4f#m>Ga diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/blockDrillTexture.png b/buildcraft_resources/mods/buildcraft/textures/blocks/blockDrillTexture.png index f867a585774328ee1b484270c10aeb8f3ac1b58f..c63ac5aa35a3368cdabe33a468a61dbf6e2962ea 100644 GIT binary patch delta 37 tcmZo*E|{Pq#2Mfd;`+aV!^g+x|NsB&U>cv7h@-A}a#}17mTJyA#8@b22Z19ED_$AYTTCDm4a%h86~f zUqGRT7Yq!g1`G_Z5*Qe)W-u^_7tGleXfsh!LY^_n+uemJjk_iVsEo6~BeIx*fm;ZK z886+f`!mtZuwJ#qHKHUXu_VKYk@7#dj_7+IMBxu#YI25(~$ zBY?&rH00)|WTsW()-Z?h<`bX>L68k;nK`L>iMgp(B|rv)QM}=qw$K|uNqs4hY;b;B qNqJ&XDnmeGW?qS&pKFLhnX#U!o}q!km!gG0WelFKelF{r5}E*xmr;!X diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/blockFillerSides.png b/buildcraft_resources/mods/buildcraft/textures/blocks/blockFillerSides.png index a870fa6f793c9788278ec236272416778a42d60d..6e46e859ea32e898224c3cdbbea00dbbd1274471 100644 GIT binary patch delta 176 zcmV;h08jsv1%LyPB#~{me~?K;K~xyiZO_S4!Tj_A~3Ojn9}G2J~y@y*nL5=U;Pdqz;PeKshd_GCir}T#dW&Qb2k`g e-!c6BzkUauhX^pI3b4%p0000H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5;;wqeByV>Yiv{dUuK|^D7I;J!Gca%q zfiUBxyLEqnf>S(Q977~7Cnp?Wl9)Lo(!oSq+M2!N*^@`l7%#rrQ}ah5s=+^i!-d

{YWTv+V}YwnLBR2qY>e3#?30TFw`m&Q&&j zk>m~gXEWm18RoWg7|8B#tOPnxwZt`|BqgyV)hf9t6-Y4{85kPt8W`#t8H5-bSs55v znE<(_Rt5%dV-h1!G~^cLr(~v8;?^;T@#Yht4ndF=X_+~xd5O8HRwY0NgGszmAXCK! yprjN?GB`i2q&%@Gl_4N8Gp|I?&oxA$%vjG<&(Of&OVL80Dh5wiKbLh*2~7ZInv@d& diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/blockFillerTopOff.png b/buildcraft_resources/mods/buildcraft/textures/blocks/blockFillerTopOff.png index e9edaf8bd3b6e99531452b9db9271d5afa3cfdba..58016ad6672d87cf33b712c9208299309663d370 100644 GIT binary patch delta 23 fcmZ3(I){0J%Ea8mlY(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#bfe}N#5=*Hp{aT&jXcl7I;J!Gca%q zfiUBxyLEpiK3QL{TH+c}l9E`GYL#4+3Zxi}3=EBR4GeXS3_=WztPG5-On_WdD+7bK zF^LgCV-Om0^HVa@DsgL=!+7%vP=g@IhP2F_)V##pRI3sogTW-;@C3JJ7En@O3M3nx spH@mdKI;Vst01G!$*8l(j diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/blockFillerTopOn.png b/buildcraft_resources/mods/buildcraft/textures/blocks/blockFillerTopOn.png index d3d7889803938c69d91c2c7dd8120a09338f9150..62d6a1b826ab4ad12f8aceccb8ed462f01df5be7 100644 GIT binary patch delta 23 fcmdnMx`26t%Ea7blS3KTax!?j`njxgN@xNAXEz99 delta 291 zcmZ3$yn%IsiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#gp=kN#5=*wij{(BZ0~|3p^r=85p>Q zK$!8;-MT*$pKqvFEpd$~Nl7e8wMs5Z1yT$~28PDE28Oyu1|fzmdKI;Vst0PJ>D1^@s6 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/blockFrame.png b/buildcraft_resources/mods/buildcraft/textures/blocks/blockFrame.png index ca76680bbaca0178c12fbb85166b73a87afc5248..e7e4b821240c2acf786f378838d53316d3c02519 100644 GIT binary patch delta 22 dcmbQl+{8FRWn!+<#Er(B44$rjF6*2UngCNa2VDRF delta 291 zcmZo-oWwjq#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qN+S&lDE4HQyORdP`(kYX@0Ff`URFw`|N2r)FWGBC0-0dh^P3=H1J zBt`&@L1@U$PsvQH#I0ctW^AdAYtxA9l2BUbR(0-OAprpPONH#b> rt)x7$D3u`~F*C13&(AePq0Cs%RL{`B;7id$pfUzeS3j3^P6H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qMkfslDE4H>yP}G$AQW?3p^r=85p>Q zK$!8;-MT*$eGKbWOI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7hk3kd~Q~nwOZHYE=ScFc`;M9-hDbE>Kcm3M3nx spH@mdKI;Vst0B8$TF8}}l diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/blockPathMarker.png b/buildcraft_resources/mods/buildcraft/textures/blocks/blockPathMarker.png index 65d971867c22454eb6b4f516e4bfc9764f464eed..003dd75f34827fd9066ace30d7566d00f75f3341 100644 GIT binary patch delta 21 ccmeBUuAQJVF;`>ab`4GjPgg&ebxsLQ08x7fQ~&?~ delta 291 zcmb>JW1gVm#**&n>&U>cv7h@-A}a#}17mTJyA#8@b22Z19ED_$AYTTCDm4a%h86~f zUqGRT7Yq!g1`G_Z5*Qe)W-u^_7tGleXfsh!Tb?n=+uenwKjUT~P#I@|M`SSr1Gf+e zGhVt|_h+J~cD-teYeY#(Vo9o1a#1RfVlXl=G}bjR)HN~)F*LF=FtRcMa!sua4Bo~h zMgWaLXvob^$xN%ntzi!1%_l$&LLeK`GILV%5_40nN`MRo<9I`ZBa2hMGcXu1NP(n- t^V3So6N^$A0unRxO7#3(Llnx4^-T2)4Gg{%Ed(0E;OXk;vd$@?2>`~qQxE_E diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/blockPathMarkerActive.png b/buildcraft_resources/mods/buildcraft/textures/blocks/blockPathMarkerActive.png index 2f5e8cbb9a714a0a930e00c0782fa8adcc626767..43d6ed284e27a99a1b3eb37e57cbeb081748dca1 100644 GIT binary patch delta 22 dcmbQv+{QRTWn!-O#9exv44$rjF6*2UngCR%2Xg=b delta 292 zcmZo;oX$K!#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qMkfslDE4H>yP}G$AQW?3p^r=85p>Q zK$!8;-MT*$eGKbWOI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7he1kd~Q~nwOZHYE=ScFc`-h8g5<^lE}bdz#s*Z u4$e<2DNig)We7;j%q!9Ja}7}_GuAWJGc+*xQnV0g2!p4qpUXO@geCxlbWn!-M#8vj344$rjF6*2UngCPQ2W0>N delta 291 zcmZo?oX$K!#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qMSTqlDE4HOMk}AK%g?t0*}aI1_o{+ z5N5n|x9-nG8>f2J64!{5l*E!$tK_0oAjM#0U}&ssV5nUHx3vIVCg!0AdkR8UO$Q diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/blockRedLaser.png b/buildcraft_resources/mods/buildcraft/textures/blocks/blockRedLaser.png index 98da7c67215f640bf095d0bc296476d647cf8dcf..3b01d64b7025a44139e226426923eb20959e0082 100644 GIT binary patch delta 280 zcmV+z0q6d`2CM{-B#~|WfA>j5K~xyi1;GhpLSPsG;MWn!5$P)yxxX&8rgFt}piQ;^ z|8w>{00c?VJ%;Ub1HLDS5)5T!q>hm?nQDao0W&bnxh2_-+ZR2>9|tZ>UDBpGjFCqz z=q0-XtgO8ay9~E@_i69HFbH9EV2-DKXj(Cuq#0+4-V$yG-* elT7qc_zw=fBO_x_4p=7u0000(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#sBq;N#5=*{&{JRo>1m#cl>{Qo~Ecl!Ce z%nlPo?k3*QJO16ONy9NdEX3FS)Byv|*Su{B*2>|Z{w&aL^IFo+Y`}DB@lFdjMbm}L zbC~KkPHHnQn|1c_(cRnsbU2;}%TC)Io7T5m`Fp$aj8`%@GuA&@_;_yDCYI-y^)6pp z`(ktb!u3~p-|e{c=jvUvJdwVNNlo^$DST6{=WT4!kvjNfVp^(w$9(?(*=zcIC-@zF zxLfSg^gFAiHXe64_%vE`Kbv*7<2H{Z$A6i9hrh-AO)ss_jb*sUVf;N&Xve+loQK3> zW_|moGa;}pUuK7;1@MFMdvtwENyJJ7B7F5#*_7{VyO9)aSfgkUi4!Nhb1 z*}Q!V)jRjFSUx<$Q0E3H<)aU|6*J(4Ou70pmgsrq@yhGynhq07*qoM6N<$f?`@- AdH?_b delta 478 zcmX@We1mm@iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#V7TQN#5=*ZsNOsz6C1dEbxddW?}`an@JWRY*6%2KCkT#=jp{oj9N=jTthXXX^Y zH~411)#`df&E~6ZPRnmMFH-rw&`4rcz_pTH<|V}}x(DSBcRu!ecxLu_h0o%Q89Ns8 zPS@$G*PK2>d)DSO=^1(D)fE$Xx>6^3?cJ#nY-hqX^VP0{6RS2|p7~8nUr?sfl6Adi z`QplQ|E8%=wL(tV*KDX&W4&^7^^)?Jv;TemX>`iJ_H1KX%wLAbPW;QVcuvg&I$gEI zHKHUXu_VKYk@7#dj_7+KYu0Qsg?1_p0q5+hJ_|lIprjN?GB`i2q&%@Gl_4N8Gp|I? f&oxA$%vjG<&(Of&OA+rvpfUzeS3j3^P6cbJ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/blockTransparentLaser.png b/buildcraft_resources/mods/buildcraft/textures/blocks/blockTransparentLaser.png index 3840bdcb3f29e76bcf23592f6212e510855407b7..8a8f4f10c00cfbb8df4e7f8c15f12dba7fc0ce72 100644 GIT binary patch delta 30 mcmaFD6g)wNo2ewoFPMR$Z1P!)iL<3S89ZJ6T-G@yGywpT=?Ss` literal 356 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx?BpA#)4xIr~Ea{HEjtmSN`?>!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=cu> z$S;_Ip=|P53lJ~K+uenM@oty!5+IMWz$3Dlfq`2Hgc&d0t@{HM<}luT0@NS~vLP)qCp9lIH`S^H$Y3ytH`u|tQ2{6^1(FQTPb(=; oEJ|evNX*PD(erZ+Q7ALkGu1ORF!)lm5U7g5)78&qol`;+0GMH0UH||9 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_12_13.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_12_13.png index 2fe0cec354b1fd99ad3eff7ea3d1937be314b85c..5e7071a0c9574c9e859a4367c2109f7c78c0bb49 100644 GIT binary patch delta 18 Zcmcb?!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=YDR z+uenM@oty!5+IMWz$3Dlfq`2Hgc&d0t@{HM z<}luT0@NT3vLP)qCp9lIH`S^H$Y3xuiZ?V~CirkFP+AHk9h{$5Ql40p$`Fv4nOCCc e=Nh6=W~^tbXJ}yXrD!2g6@#a%pUXO@geCybu~_c_ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_12_14.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_12_14.png index 0e3f7355190717b93cb866f895ab2dcec184a4b9..5e7071a0c9574c9e859a4367c2109f7c78c0bb49 100644 GIT binary patch delta 18 Zcmcb?!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=YDR z+uenM@oty!5+IMWz$3Dlfq`2Hgc&d0t@{HM z<}luT0@NT3vLP)qCp9lIH`S^H$Y3xuiZ?W|C@nDqN=t#HgY(l$$`gxH83GbB^Gfvm eTtgJfjP*?Q3=Isv6fFd*V(@hJb6Mw<&;$UaS6CVV diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_12_15.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_12_15.png index a5bce43935b763494e4541744c9da42b5a27b0d3..5e7071a0c9574c9e859a4367c2109f7c78c0bb49 100644 GIT binary patch delta 18 Zcmcb?!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=YDR z+uenM@oty!5+IMWz$3Dlfq`2Hgc&d0t@{HM z<}luT0@NT3vLP)qCp9lIH`S^H$Y3xuiZ?X%FLGG`l$HWX2j{1ilqVLYG6W=M=9TFA exrQi|8S9zq85$UTDOw0r#o+1c=d#Wzp$P!ACs=6! diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_13_14.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_13_14.png index a6099c2870ecf6787d778fe1d7a75a5202ac89a2..5e7071a0c9574c9e859a4367c2109f7c78c0bb49 100644 GIT binary patch delta 18 Zcmcb?!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=YDR z+uenM@oty!5+IMWz$3Dlfq`2Hgc&d0t@{HM z<}luT0@NT3vLP)qCp9lIH`S^H$Y3xujyE)EI4K+ql$HWX2j{1ilqVLYG6W=M=9TFA exrQi|8S9zq85$UTDOw0r#o+1c=d#Wzp$P!DI9PK4 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_13_15.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_13_15.png index 3ebb90355d83fd2a042291a36a430fb53a423739..5e7071a0c9574c9e859a4367c2109f7c78c0bb49 100644 GIT binary patch delta 18 Zcmcb?!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=YDR z+uenM@oty!5+IMWz$3Dlfq`2Hgc&d0t@{HM z<}luT0@NT3vLP)qCp9lIH`S^H$Y3xujyE*@eopx)P+AHk9h{$5Ql40p$`Fv4nOCCc e=Nh6=W~^tbXJ}yXrD!2g6@#a%pUXO@geCy%h*@#~ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_0.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_0.png index c09260fc65cc21d5408d26d678d895ca7ccc0536..f069049e1689314c076001a71d186e76208ad1b6 100644 GIT binary patch delta 59 zcmeyw6gfe~RKe55F+}5h@{jW!@p0*}aI1_o{+5N5n|x9$&6P~FqTF+}5h@}Ki38pI6@4S4KX_x$J3 z_;4WP(|keEwmj5;>Q(uQ3LwMYY5=q9i4;B-JXpC>2OC7#SEE>lzs9 z8X1Hb8d(__S(yO2rd9?9Z(|Z8P&DM`r(~v8;?^*S@#Yht1|g6QX_+~xd5O8HRwY0N zgQ01>!G$SH76WCaK(fL4X(i=}MX3w{iJ5sNdVa1U3T4K6rh0}3249L60#z}1y85}S Ib4q9e0ND3wr~m)} diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_1.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_1.png index daddc6cdf96d859b4f9773a7a0f3972f3ae58c9f..534af52e7747fd9548dc95e911064ca4ce4d441e 100644 GIT binary patch delta 74 zcmZo?&X}O$qVMVA7@~1L`N#PVc_SV(R-6Btp#q=em#~CN&XRWUa{BkURArZ`1eeo4 d{!bH*uradfGtQe5p%lXa1fH&bF6*2UngG|P8ASj9 literal 391 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^xl_H+M9WCijWi-X*q z7}lMWc?skwBzpw;GB8xBF)%c=FfjZA3N^f7U???UV0e|lz+g3lfkC`r&aOZkpafHr zx4R3&|Mvbf`++>p0*}aI1_o{+5N5n|x9$&6(8klnF+}5h@}Ki38pI6@4S4ie_x#r| zJ=om%UB1oozvRTk6ZP}{EB>G8Dshpy>-+t5wK-u9YaCg7oE29v?q4ifckcBK9iTa? zC9V-ADTyViR>?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`>lNf=bAvZrIGp!Q0 zhB=Hkp8z!ofow?2%t_5l%uTf_0Wug2P2&xhPo825l$8R>2Ir@hlqVLYG6W=M=9TFA exrQi|8S9zq85$UTDOw0r#o+1c=d#Wzp$P!X6?BCF diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_2.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_2.png index 3b4dfd95b3b0b4f2b3a55b08afe22f1de8b11fd8..6835c185886045cd44ef9ec238489960c00f3c1d 100644 GIT binary patch delta 83 zcmbQuTsT3+*TU1qF+}5h@{jW!@p0*}aI1_o{+5N5n|x9$&6Fu>ErF+}5h@}Ki38pI6@4K9Q-zPHbc zJouYGQH*<23p?}s{pWr5{I{9F`rlaT@Pz+1|DFFScN;8X7XeCWT$}XD!{qnIos3ia zkMdsO)JS1qD9+W>_w(+(0W@2+#5JNMC9x#cD!C{XNHG{07#iyu80s1sgcurG85mia z0J)}C1_p0q5+hJFIjMPxxv5qqKn8=MX}po$tfT!v xSt*cgaDG}zd16s2LqK9?UWuNcYluRbv7V`(p@G4dqJ=p0*}aI1_o{+5N5n|x9$&6FxAt=F+}71*1(gz2Mjoj1Lq~`vz?e0 zyP*1M|L@GH!7rDa3h}4(q_#BaGJVi>to07q9@!M6UHE2-#cAm)jqa-zB^bU6`AIY= z>-Ys22^-(;>~UN<{oIdizK!?SJ)72Y?hfzI|B>PoObtzUJ+#>iv{1FgHKHUXu_VKYk@7#dj_7+IMBxu#YI25(~$BTzKt=BH$)RpQn#hwzopr0D@nJCIA2c diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_4.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_4.png index db398e8331825036f849e0690a77ca4cb1f88b15..35dd8052f0ede797b95ba9819cdfc304812ac6d5 100644 GIT binary patch delta 114 zcmV-&0FD2<1CIfaBx_blL_t(2&!v%33cw%?L+gKz*ZW^3(n%1z5s(qkppP_SaCpTv z09pV{2dryltUccGTJr?JQn`GbM#T;sKmY&$ literal 443 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^xl_H+M9WCijWi-X*q z7}lMWc?skwBzpw;GB8xBF)%c=FfjZA3N^f7U???UV0e|lz+g3lfkC`r&aOZkpafHr zx4R3&|Mvbf`++>p0*}aI1_o{+5N5n|x9$&6u)x#BF+}71)QN#y42m2sroXmSmont< z6n_!-*ZQ~M#;21eI0<|{l9^=CI<-TuF-b9C%`eUm*O^!&4Du5;FkcHUcTkX+unTU?Q2q|WbZKCLRE_os} zwPW{&fc}YI2L-6>cxOmhK9G~agmA||VI(PTp0*}aI1_o{+5N5n|x9$&6u*uWKF+}71)WCy+hYdJ{?d%iv`6uY^ zcKCKm{;Ok*@ViMdYx@}$H|U7i%wzlGXuy8vZ1KA12?uIII8QYdDZ5%Kt1i|5xtMYO zwnv4b0dDN6i;cEu*tecEx4+fbxMXYE`FEB43YRJ`#@KQ04B-@)KhyZidHwlY?|V*V z-+L3VlCkplJN=Z}c8Ns>aa)0|Q7v(eC`m~yNwrEYN(E93Mh1q)x(0^2Mg}2p%kc90Cj|c8z6TWQOhjID<*#fl4nf(1@LGZ8NeNd+ungO o4|m9z4e*cYHXq=!R4Tx}ZrFtjf-kxZ{{R3007*qoM6N<$f&#%fz5oCK literal 473 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^xl_H+M9WCijWi-X*q z7}lMWc?skwBzpw;GB8xBF)%c=FfjZA3N^f7U???UV0e|lz+g3lfkC`r&aOZkpafHr zx4R3&|Mvbf`++>p0*}aI1_o{+5N5n|x9$&6u+P)QF+}5hYrsLl!wNi`Ybp=L@i;6? zX?!zv|J8QpHkI7B{fvU*e1H;=#7%?IZyo@E7XNLr`rAWRob}r zgV{crn1c_bT~Zen3$olvJ1$?8wN0sgj#VZ{&EB%#Gbad0Bs~xFU$FcG50Bth`zc3H zi(Jw9thypJ&D^JF!KnqgyXr50h?AfFrpPk?arQZ&%T!BTBT7;dOH!?pi&B9UgOP!u zv95uku8~2Ap^=q=k(CLMYiea+@HQqf0!2e^eoAIqC2kFK7;ioSY7he1kd~Q~nwOZH zYE=ScFc_M~n^}HmoCcJY0?7vFrFVdQ&MBb@06k5b*#H0l diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_7.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_7.png index 1702bfc836cb10aad4ed3241570b8f241610b4fb..715faea52615bffc9317cf6cfc12d17045dd0610 100644 GIT binary patch delta 143 zcmV;A0C4~61FHd$B!6;AL_t(2&wY_g4gettLzz9tWNGcng?KYh(^tl0X4v?>rmM@-Tl x3Nb6mWx?hUlaI9kZ40{=GNdt8YM=E#54=4Pynsk^TmS$700>D%PDHLkV1m^zIrIPk literal 490 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!60wlNoGJgf6SkfJR9T^xl_H+M9WCijWi-X*q z7}lMWc?skwBzpw;GB8xBF)%c=FfjZA3N^f7U???UV0e|lz+g3lfkC`r&aOZkpafHr zx4R3&|Mvbf`++>p0*}aI1_o{+5N5n|x9$&6aK5LDV~EE2+5ktPBMKbebL76p+co^# z`u~&PHwVqU^z^R`NewC@AHQ$$Y2*LTYGE{!p>4gHOvGE(6OUdVR?m8t#o%%=<(1HG zpQP~VGX#_FFu0_d-?*}sant21q6!y}OqjV_e~nqqBdtZhFTB{6KC_}&qv>a=*NL@@ zypF0c=&U|`lJkMn%+e)_)@O^&|3-)H>r!!jP-1iFn`i%-xmT>~7zD1aw~zmOB^BsY z)e_f;l9a@fRIB8oR3OD*WMF8lYhb8rWDsI#WMyDvWdh`yS{WF;jY*6^(U6;;l9^VC zTf-d2n@@lmgg`c=W#**jCFZ7Dl>iwGhNki6ejf~hk_=KH+2H)NlJdl&REB`W%)Amk eKi3e2GGjecJwpS7FGUMM$~;~DT-G@yGywqgs-}Jb diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_8.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_8.png index 38cf1b329b26ab6d0b89f25f1003126ebcfef39e..47fca57781a988aab152d4883d656a1c0f6f0552 100644 GIT binary patch delta 159 zcmV;Q0AT<51G@o`B!7ZQL_t(2&uvga4!|%7viClZ|9{2JDpHrli$(;&e5tnkf@_Z6 zxQgO3fV+C*T~sa-n9~8^Tqor|K=BlVu2CG6ErzK}Se}_2+(LX9-YzhNcAK@ElyAyp z0|?@ZTrYs>Vf-#GlOEG#E>{lUH&I!RB$;1MKQ5FXE|~(LX&7aYau0E$6p0*}aI1_o{+5N5n|x9$&6aGj@%V~EE2*og-Pk1BAu$ouu(3g=P? zUDo*J>D|BVhZ6Snv9nA+-nFJ|`kBy;-fqiw?J~M4>aJ#;u;!*8gIt1+MdRd+Y0N3> z)~zTn{ps%BrlaS4P4w-iwLM2x?TZvUzk>6d8|ND%$paCcmbW9+`8Nw@i~F9D`t)@n zgYnc0Mwe{=ZUO_QmvAUQh^kMk%6JHu7RPhkwJ)|k(Ggwl?jk* zYGq*XHYPCwMMG|WN@iLmZVhu7Z$1HP5CYkdmYI{9mzbMsRRUx%7@Edg-1FC&2$Yoq v$p+`Am6RtIr7{F0X6BXX`MHKDlo{)p>KPgsd?{K8RK?)w>gTe~DWM4f@58J! diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_9.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_15_9.png index b560449dd671e2ed45dcef5b1dcb14fe0dd12622..9271e07aca0f2b93b90d2a41ed8760462dffd9ce 100644 GIT binary patch delta 164 zcmV;V09*h01Hb{0B!7oVL_t(2Q&o`54Zt7_L&Kf%*ngF@iFp`=RG{&f$dO}aeYLOD z&N*tZa`vhp03ij~S{ewbTLZ*Lsesn`0b;;b0*$l>4Eq8TtwVyh5rJ2>1$Z0LVOtz_A)b4`mD|E{uIx_xCEu8;F5r1d-cL7d79o+nl^u=+1@9KR*ZBhkz8AYZ S^8X9~0000p0*}aI1_o{+5N5n|x9$&6aGj@%V~EE2(1`~nk1B99*Z--yvR9_T z?E)H}Q`}!WE^_jiuwjE-qNJ^eu&~&(i;La)>s8Y(GA6Gt%WII9kXAF0tTt76 zJ^7@)P2!j5L0f_rs2@#c3K!lwA*yGs>_yG}QcDx~Uo)=Olz+#5e@)x8U%&5HCVmXs zXX{nnsiyu+{_Rm$yCptb*F?&NPd>Qa=WOYzU)RI_c5i5JUHOYGtlIcx&51W(FI+P@ zzc&95W75NG+mE_Eo(FWfYKdz^NlIc#s#S7PDv)9@GB7mOH89jQG6*p=vNABTG68Z; ztqcs_#w13dXvob^$xN%ntzi!1%_l$&LLeK`GILV%5_40nN`MRoL(_Q6l^!zeKv^k} uY;b;BNqJ&XDnmeGW?qS&pKFLhnX#U!o}q!km!gG0RScf4elF{r5}E*7P_2Cc diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_1_4.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_1_4.png index ee8479a0213809070bb29a1dca42fbc53bce5e9d..e786b70d73210ebefa94bb5da65e9459c208a443 100644 GIT binary patch delta 84 zcmV-a0IUC}1CRlbB#~_*N;OGDK~xAG1;IfPz#tF=uFKArr7zwd6ZGM%Jl=l_ypHa$JsFe0000(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMb&!7ByV>YrZn!F6reKB0*}aI1_o{+ z5N5n|x9$&6(8klnF@)o~?wO6e42nF?7xOu*@|2Yg8F+uMZ(6K;bTYT~15TgT&^HA| zCp_0mOxtkvfK=;$u6L0?wC_#l)~ROiW}T8G12jjq#5JNMC9x#cD!C{XNHG{07#i2> z8W`#t8H5-bSs55vnHcLDm|7Vayp2hWK+%z#pOTqY3D$vC!yLw&Pkso+aJU*O7r?V?XzwL{mdK II;Vst07Ktb9RL6T diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_1.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_1.png index a3abf5ae0f1cd18302bad5bc918d3ff60e0afa26..a2ae29e9c00783f4a71214c9e95dfd5dfe2925d8 100644 GIT binary patch delta 30 lcmeBSuAZR6%~TTP7tFv=HuKVV&U>cv7h@-A}a#}17mTJyA#8@b22Z19ED_$AYTTCDm4a%h86~f zUqGRT7Yq!g1`G_Z5*Qe)W-u^_7tGleXakgBDhcunW?(3reAWWQOY(MiVc@qivRe$~ zaTa()7Bet#3xP1>rMq>1fPyBTE{-7+&8_QIOI#yLQW8s2t&)pUffR$0fuXUkfuXLE zL5QJ|m4T6!36N`QWnl0&CNTo26QLnDKP5A*61Rpqj5nVEH3))iNXyJg%}dNpwJHHJ z7);|0Po8v+1xo5mfnQQchC<0CtnjH~;_uWl2OqR0!7v!Lb#@FbG7!51|r3p`(3- zu3Ap7I#~_)W*GkH(SX%GR$Jl|Y^q>>M{gJG!Z{bb(=Kf=ZX3(MxLsvn>cAY!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=cu> z$S;_Ip=|P53lJ~K+uenM-^$2tF_6bu;1OBOz`!j8!i<;h*8KqrW_r3fhHzY$J!8ms z*nr15&}*@nx0JDo=IjdcwSb&U){42`S|jI2z6TvICpgSRn>5hxmR z^HVa@DsgL=!+7%vP=gT2hP2F_)V##pRI3sogTXZ3(BR<-Yi*#c6i7BWKdq!Zu_%=x kATcwqM9KLZB)JPgg&ebxsLQ06r9lY5)KL diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_11.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_11.png index e15be7618382b5369cfeca147d69fcc1bee83921..7550a2c37496313130e4b2777c713d36fda2dab6 100644 GIT binary patch delta 142 zcmV;90CE4n1F8X#B!2>QQchC<0CtnjH~;_uV@X6oR0!7v!LbnoAPfY-lR^>@p`)J< zsTw-OG+^)2^603+w%c|La+01Zm_O_5f@_lZf#+DdN#u&PBMGfkg$cPUQf!~Da-+NE w7`k+u=MMeZiYw@<8YN;_UMcoyRlD&A(oh!$H<24w00000Ne4wvM6N<$f>_Zz%m4rY literal 447 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx+BpCi@`0fExEa{HEjtmSN`?>!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=cu> z$S;_Ip=|P53lJ~K+uenM-^$2tF_6bu;1OBOz`!j8!i<;h*8Kqrrg^$JhHzXLJ)IjMPxxv5qqKn8*ARs=V?9$nLj!{^MGJwd7(8A5T-G@yGywq3p@qBv diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_12.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_12.png index bb9c6801f8704d36828e8bf09429cf8d6750f39a..e70fabfdfdbd610ede81cbf9375eb43cdda91fd3 100644 GIT binary patch delta 157 zcmV;O0Al~l1Gxc^B!2>QQchC<0CtnjH~;_ua!Eu%R0!7v!66RAFc1X5y+e`7`GTsV z)gsHUOoH+Z=ZCIQSv!N`4<8m_NM*<>e24310{gGsA0;q#IMy3j%{r&UyjdTo!`Pg8 z3PuGtCx)KjO9i3a>%obTu&w~&dx!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=cu> z$S;_Ip=|P53lJ~K+uenM-^$2tF_6bu;1OBOz`!j8!i<;h*8Kqr7JIrlhHzXLJ)_8X z*g(ML;>SfNj@(?Sw@22v9<=baxOG*UEd5La2RC2NL>+N;h znS$?r*we6l>Dzl*Xs6W#<|`%wg4-AM7)E;k&rG9$N!{ z?_YKLq4Hz)KcA#qT&5mm23oIL;u=wsl30>zm0Xkxq!^4042^XS40VkRLJW-L15RjOeSEA?V8lq5UtY@lcXkhTAXdzG)gQu&X%Q~loCICWzls*6e diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_13.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_13.png index 2cdf33f158befc43d70a6cc32777d332ac41f486..80ae47118d632f8a52da0dd5e66ba72f01d0550d 100644 GIT binary patch delta 31 ncmX@lyq9r;3O7?pkY6wZL)qlB787T;ax!?j`njxgN@xNAqGAej delta 314 zcmdnXc%FHJN(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10f~h3PFPMR$Z1PzP5HHEw-GzbQ%E)dp zkjGiz5n0T@z%2yAjF;}#{Q(M=dAc};Of;{pS1oakC`m~yNwrEYN(E93Mh1q)x(0^2 zMg}2<}luT0@NS`vLP)qCp9lIH`S^H z$Y3yyH#Dv|m^G1s!GJ*uBpsZeR#Ki=l*$m0n3-3i=jR%tP-d)Ws%L0m@TF)W&=3Ys LS3j3^P6(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD+10f~h3PFPMR$Z1PzP5HHEw-GzbQ%E)dp zkjGiz5n0T@z%2yAjF;}#{Q(M=dAc};Of;{pS1oakC`m~yNwrEYN(E93Mh1q)x(0^2 zMg}2<}luT0@NS`vLP)qCp9lIH`S^H z$Y3yyH#B*+^uG}Ug8_pSNIEz_t)x7$D3u`~F*C13&(AePq0Cs%RL{`B;7id$pdk#N Lu6{1-oD!M@$xI%INcm##~ z?_su^k{QOqbGR1Rrs85k+eJMt#N$!oZHSM#^D(3`_g@xFzN=$2Q;yUA*)k~Nrx&cJ01E&B07*qoM6N<$f}YDo ASO5S3 literal 449 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx+BpCi@`0fExEa{HEjtmSN`?>!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=YDR z+uenM-^$2tF_6bu;1OBOz`!j8!i<;h*8KqrmU+53hHzZxJ*FtsYQV#KAYkf2k$|al zSD4Q+a@>2cp!Lzek5(&A-4E4Xy-y)@Y3z>Kg~GNodN>|_Y`Cj&@9gAy*BS-ClBpMF z#;Zg&a91ZBlglW|te79Q!E2jESM~gzf0D&cHisoA^jUA8yD4Wy*(NXTQyJU;G2S%N zc;u7S+z)htYKdz^NlIc#s#S7PDv)9@GB7mOH89jQG6*p=vNABTG68Z;tqcs_#w13d zXvob^$xN%ntzi!1%_l$&LLeK`GILV%5_40nN`MRo(|AMEiHpuJ0m@2&WP|h5O3D+9 nQW*jgGxJLH{9Hp6%8d0)^$ZORz7#D4s$%eT^>bP0l+XkKq7;vN diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_2.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_2.png index 22db373ee218b1cd967ae6b90ecf3adb403f05b3..c705dfe3b8b3639eef6b7b492d7610a8f35de647 100644 GIT binary patch delta 104 zcmV-u0GI!m1BC&QBw+${QchC<0CtnjH~;_uK1oDDR0!8qjj;^?FbKmucgg=-XRhM| zIs~dV19Bt-00hq3d{HF@kTVj(ZH*mZ*y^<~$bL2mbnlqPf8HOH*%M*Gda{840000< KMNUMnLSTYf#3pP2 literal 408 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx+BpCi@`0fExEa{HEjtmSN`?>!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=cu> z$S;_Ip=|P53lJ~K+uenM-^$2tF_6bu;1OBOz`!j8!i<;h*8KqrI(WJ`hHzXD?KR|M zP~c#;-u&Tz@678TnOV8rtWDgD7$y`NB>h;Vy@4x9%gb(Z&)m~2m*a|?F7>zN>@D|r zZ2#VT@=f8yqYMqqK(ka!Tq8FVdQ&MBb@0Mk!%fB*mh diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_3.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_3.png index 750b51934662259c760a63acc064bc708d1ffe03..cd01cdc45ece1ac432f146aef55b1f09f8232c63 100644 GIT binary patch delta 110 zcmV-!0FnQp1B(HWBxeG2QchC<0CtnjH~;_uL`g(JR0tgf!66a@F%SbVO`ysCzSuag zTNHYg#C65_<>gU;9`mga7B&Yi50P@H2Xx?6&={<)!QNpO7PA21s!G%N1HyzFqyXGP Qn*aa+07*qoM6N<$f{}(QDF6Tf literal 417 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx+BpCi@`0fExEa{HEjtmSN`?>!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=cu> z$S;_Ip=|P53lJ~K+uenM-^$2tF_6bu;1OBOz`!j8!i<;h*8KqrdV0DzhHzXr?cFHI zpuoYre_7)HbF*IFa1ai3`dFYMFhyj8lha?X3A=B$eOvU{>8!~AE$>$H{;ZkmcQ|=- z)q&Go6f!6*k$zvb-Y6VssA`F8L`h0wNvc(HQ7VvPFfuSS)-^EHH8Kb> zG_o=W^AdAYtxA9l2Ge+B z_2Wu~KuIZ(WN?03NqJ&XDnmeGW?qS&pKFLhnX#U!o}q!km!gG0RScf4elF{r5}E+n C$$NMJ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_4.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_4.png index 56beb2d6ae9f48a090a9ba61f4aa00253c1a4383..a866be868339bb14b9589703bfd7bd01a53b6a99 100644 GIT binary patch delta 121 zcmV-<0EYjp1C{}hBys|DQchC<0CtnjH~;_uPf0{UR0tgf!Jz@eFbn`N#n8m*hr4QY z#<|WYw3DRcNb${^mj>ui?|5MzOosJ3T%_zJXcy>$Xo*gR(W4e~ikgkt)Zk(5oBFOyNBo00000NkvXXu0mjfCe=1D literal 428 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx+BpCi@`0fExEa{HEjtmSN`?>!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=cu> z$S;_Ip=|P53lJ~K+uenM-^$2tF_6bu;1OBOz`!j8!i<;h*8KqrhIqO-hHzZh?KKoT zV8G#Y^3UO_QmvAUQh^kM zk%6JHu7RPhkwJ)|k(Ggwl?jk*YGq*XHYPCwMMG|WN@iLmZVhu7Z$1HP5CqwfmYI{9 zmzbMsRRUx%n8uszT)h1fP*Msc8JwS1Ql40p$`Fv4nOCCc=Nh6=W~^tbXJ}yXrD!2g O6@#a%pUXO@geCw}W`NlM diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_5.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_5_5.png index 5079c4239816024fd6055a72ef22ca5703f54d88..4f7fd4c47be94523e25d2490e9a3c221cf8ef510 100644 GIT binary patch delta 128 zcmV-`0Du3n1DyeoBzXdKQchC<0CtnjH~;_uR!KxbR0!7v!Jz>IAq)V(3o-_E{Q%(K*BuFD^2&!k}EBCX5o6N>l8m+6?+kW-s(& iHa4-6qsEuYo9{nC{v1PXYpc}&0000 literal 433 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx+BpCi@`0fExEa{HEjtmSN`?>!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=cu> z$S;_Ip=|P53lJ~K+uenM-^$2tF_6bu;1OBOz`!j8!i<;h*8KqrMtZt9hHzY0?cFJQ zz<}eZoi6W=vtO2cEvaa7QE^y!T=B`RCEib$tl*4hdXzc0G49K(rIX86rXN0gnr++5 z_OAC^O5Brz6Bwfo?l8anLdKtu(L;A)UY^$Ty{}pCu}Oo=IjdcwSb&U){42`S|jI2z6TvICpgSRn>5hxmR^HVa@DsgL=!+7%vP=g@I zhP2F_)V##pRI3sogTXZ3^xTqm7oemRNHRD-t)x7$D3u`~F*C13&(AePq0Cs%RL{`B T;7id$pehDWS3j3^P6QQchC<0CtnjH~;_uTuDShR0!7v!J%QqKnwsd`Jh41raxUb zi%TrIkm!!YCC6k>ahbG!AKks?};WSPz@y3To$jAwc@j#dj>#9&D?dUFZ?BLv+ oeTq26KHb$sCAV1@lTZGB0l@MbhW=@11^@s607*qoM6N<$f?l6FZU6uP literal 437 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx+BpCi@`0fExEa{HEjtmSN`?>!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=cu> z$S;_Ip=|P53lJ~K+uenM-^$2tF_6bu;1OBOz`!j8!i<;h*8Kqr#(KIqhHzY0?KKo) z4P;@7)^hwcdG9XY`!C;ce(R5#^2&&Ljx|5u+o!!;iD_bi`NJ9OP{{qvNyt-APf?Gyej0@7@k!VawfTBKUy8c~vx zSdwa$T$Bo=7>o=IjdcwSb&U){42`S|jI2z6TvICpgSRn>5hxmR^HVa@DsgL=!+7%v zP=g@IhP2F_)V##pRI3sogTXZ3EPU;?e?UnokYsRvT1k0gQ7S_~VrE{6o}X)oLYc9i Xsh**M!Iz?iKvfK$u6{1-oD!M!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=cu> z$S;_Ip=|P53lJ~K+uenM-^$2tF_6bu;1OBOz`!j8!i<;h*8Kqr#(BCphHzY$?KR|M zcI04gpT>4MZu0ugZ};_8J2GiX^rqZ=AR}uzW%+cU2?;y@)XXkl`uqiZ+)ZcyzS+~) z#wh;}GMphhH(;9ZG|kX{pPy_l=XdEYQon6qRCsZV&Gs+M7da#teZ-QQchC<0CtnjH~;_uU`a$lR0!84#vvAiPz*%T7i3IkDlz>B z*;NP2>H-^RMX$Ofr%okwI$I$ygfYCo&$=;;*_a*fSL|yb_(XR6g9C!2hz(k2$t$U_ tr8QK*a}?AFVgxm|451VkqLp?hKWCg3<*n$gS^xk507*qoL!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=cu> z$S;_Ip=|P53lJ~K+uenM-^$2tF_6bu;1OBOz`!j8!i<;h*8KqrrhB?LhHzY0?KR{( zY{0|pFS)hj)eKd)QQchC<0CtnjH~;_uWJyFpR0!7v!66pIFbqV&FGCS&14F83 z=u<1Sr*nLPb_O3$KIPC$-qVsHu&V^0->G*Bwiuin-plUVU@Y@CFxDs;7&EW|olm67 x36nBw69di+h?8JDAxcVt{@D$@&Et;00>D%PDHLkV1hkYH~Iho literal 449 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx+BpCi@`0fExEa{HEjtmSN`?>!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=cu> z$S;_Ip=|P53lJ~K+uenM-^$2tF_6bu;1OBOz`!j8!i<;h*8KqrW_r3fhHzY$?KKo@ zFyL@zR_1>2LTUZt<$2-$;nj@2dX@htPB>6cptHiBg4&%)yKn;Q*8`3g!Qu7jXQ>{vX33PWn!-C#4Sdg44$rjF6*2UngCPd2WJ2P delta 292 zcmZo+oXR{w#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qJ}(UlDE4HvmlSpC!jLU0*}aI1_o{+ z5N5n|x9-nGH`99664!{5l*E!$tK_0oAjM#0U}&ssV5nH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qJ}(UlDE4HvmlSpC!jLU0*}aI1_o{+ z5N5n|x9-nGH=}yh64!{5l*E!$tK_0oAjM#0U}&ssV5nS16oV2}by u2j{1ilqVLYG6W=M=9TFAxrQi|8S9zq85$UTDOw0Lgu&C*&t;ucLK6Tfv{ESm diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_7_15.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_7_15.png index 22eaf31ea43bd7334bb13d373e703adcceadef0e..c37d3a0ded1b9573ee6dab4f45af1e7637578778 100644 GIT binary patch delta 53 zcmZ3&+{HLSWn!+iwwR}jV+hCf6!v delta 334 zcmeBTT*5p-#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qFp^>lDE4HN87!rRX}B&1s;*b3=G^t zAk28_ZrvZCpuDGxV+hCfH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qJ}(UlDE4HvmlSpC!jLU0*}aI1_o{+ z5N5n|x9-nGH@kY(64!{5l*E!$tK_0oAjM#0U}&ssV5nUHx3vIVCg!0K=$I^Z)<= diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_7_7.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_7_7.png index 4674a6918e410192f5a8707388986713813a41f7..7ba4b2295dcd50580f852467e02b45bdacb226ee 100644 GIT binary patch delta 22 dcmbQj+`>3PWn!-C#4Sdg44$rjF6*2UngCPH2W9{O delta 291 zcmZo+oWeXo#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qJ}(UlDE4HvmlSpC!jLU0*}aI1_o{+ z5N5n|x9-nGH`99664!{5l*E!$tK_0oAjM#0U}&ssV5n% rT1k0gQ7S_~VrE{6o}X)oLYc9ish**M!Iz?iKxGV`u6{1-oD!MN;OGDK~xCWea*2Az#tF(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMeTaVByV>Ymi~;Jfk0)P1s;*b3=G^t zAk28_ZrvZCpqZzOV+hCfQ!4|5w=szkC^~ZUQ!>*kk#wMGn8SDzWQ8EeinPp})V##pRI3sogTXxB z^2juKMxdk=NHRD-t)x7$D3u`~F*C13&(AePq0CrM#8l7Fz~D>KLZC7RPgg&ebxsLQ E05mRTP5=M^ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_8_0.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_8_0.png index a811102f4ff56283caf6ef3edd800d35021dee1a..3db5ff48282539097993bea62b812fbb8d18181e 100644 GIT binary patch delta 168 zcmV;Z09XH;1c?HWB#~`Me~3v$K~xyiMUO#l#4rp4sj(Y18^>Dn|Bvm#LCV_@-~f~Y zTK_pBe-lDV08XAXecYqND8(JsZ}@)Hw!+?yrvQ6Pq$pTr+dZK# zwF%RH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qIW%GlDE5yFwgFoX+UM11s;*b3=G^t zAk28_ZrvZCV3((hV~E6M*Zzk>hZQ)Qol{a*hb?>me*^RF;-3#sma7RloLIEp`AzN; zhQc&AW1sWQ}UxCB;q875Frmx<$WFl(zh}-#a$;mR{K8?H^pGD?YlndEY;V zC=s?NbL5L8fzDDbag8WRNi0dVN-jzTQVd20hQ_)EhPp-uA%;d)21ZsUK(48kfx+9D z#0V4(x%nxXX_a6N8CZ49VZ8YSs6!BBMOtP~YF=V)s#OV)!C(<@uubd%Fa#N-K$5}v sX(i=}MX3w{iJ5sNdVa1U3T4K6rh0}3249L60#z}1y85}Sb4q9e0IL0#n*aa+ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_8_1.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_8_1.png index 4d529437653ad9f43264f81e31e8b6a6ac8f8c2a..e2257f5c7fca981c150a7419c4fc070644879ba4 100644 GIT binary patch delta 165 zcmV;W09yZ=1cm~TB#~`Me}zdzK~xyiJ&(&0!!QT~#bW%3agz4`Keh*VtP|Q95RweM zM3~hEUFrBD}nw4c@tLFo25zw>qa7fGZ9B8{_tVdxGf)>tF?h T|A^T{00000NkvXXu0mjf!W%|$ delta 440 zcmZo;n#D3f#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qIW%GlDE5yFwgFoX+UM11s;*b3=G^t zAk28_ZrvZCV5g^xV~E6MTYpC(W5^$pa2IriKYoXI!$BWedta zJ#u?~;KBUws-i6u7td<-QhaFe_;rJl!#UY|nHn~y_Hde9KPL8REz1?-cK^JoCXRQt zzqi-R#4S6W%FcNwf74D+;WI7~O*5ytEAO^Ru3qyodtUi8>!WHShOg^G=B+<|<}35- z1lE?TRSnTVSE-h`MwFx^mZVxG7o`Fz1|tJQV_gG7T_b}KLnA8#BP$ai*VM|u;B8D| z1d4{-{FKbJN{EJZY&zyJ-h2YoAqcV}Ei)%IFEKaOsszYju!uK2D0qPnC@BS!49-t0 qDNig)We7;j%q!9Ja}7}_GuAWJGc+*xQnV1Liow&>&t;ucLK6Tg(w3tD diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/block_8_2.png b/buildcraft_resources/mods/buildcraft/textures/blocks/block_8_2.png index 93e420da16eb01c69e17c0fc99b04093f514bb69..5e20912aa03880c6f866432556e21cb4dc6418c9 100644 GIT binary patch delta 167 zcmV;Y09gN^1c(BVB#~`Me}_p#K~xyiRgXD>!!QuTC}~C>ShSqY{~xmHnGge>PY7wW9hvG?TgS1-{03eb V2x_G9|FZx9002ovPDHLkV1iJzOPK%w delta 446 zcmeBRTEH?v#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qIW%GlDE5yFwgFoX+UM11s;*b3=G^t zAk28_ZrvZCV85q}V~E7%P=7|D!wNi3y_qY*w*ULT@$kCaxp!7_x;QF4O}cvL&ctmD zT%5|qs+awwZk))zd*Ifu<&ztnAMZ8h-?XZ1#Rk0)vmYrJn{~w&W{c(YKYj4G*ICax zB|N|W(5Fp*g{&4EPEbGo$~$@D50?V9lX6cKmHsuyde$e!x8$sL^PO*V{%O;sJxcC8 zIkz?bF~v!8WNl^a{tI-QYKdz^NlIc#s#S7PDv)9@GB7mOH89jQG6*p=vNABTG68Z; ztqcs_#w13dXvob^$xN%v#jRrwW^AdAYtxA9l28(#32#LlmKuIZ( uWN?03NqJ&XDnmeGW?qS&pKFLhnX#U!o}q!km!gG0RScf4elF{r5}E*SEt;U!Y~j+Q76r0GM~7m-2bp_kN_{AWa&$- zAIInsbEH-qDtJ7g6=Xt*ziocO01C(xLfGpf^n`5eX4{=>D%g==+fGOo%(B05!+m~0 zPeAW|FGX|*r?!MkP~V^(}-gY8>v)TZLaYK(H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qIW%GlDE5yFwgFoX+UM11s;*b3=G^t zAk28_ZrvZCV2`JZV~E7%Q2&cUhZT5~%mSUa#(w`VZ++)$UaXvpAPb}R?Pscss+`T; zC;j%DwZYWr;C{&(p<-PQPky5VmcKP?It}<{&pNc(%h0KR?Prl~Q-g}n$rnz%UML)~ z@qPWl6Ssw&TRyh%Z*zUI$YGQ7y&%<9x01L1*8aBU?^?b4S4Gt;ciD0FueF|VVp`bl zdWOpyoLc7|Z7u{lOtr){q9i4;B-JXpC>2OC7#SEE>lzs98X1Hb8d(__S(yO2rd9?9 zZ(|Z8P&DM`r(~v80ySje&@qSc<`bX}L68+`nK`L>iMgp(B|rv)MZB@T{6;09q!dUp tI6tkVJh3R1As{g`uSCz!HAJDzSkF|?(7@nJ(L$gq22WQ%mvv4FO#sJ{mB|1A diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/builder_front.png b/buildcraft_resources/mods/buildcraft/textures/blocks/builder_front.png index aa7c1c2a09d8465b396027268133499b3641f031..11cc56bd1196256adb2925b6561a4313d267dfe8 100644 GIT binary patch delta 173 zcmV;e08;;k1@r=tB#~{de~n2*K~xx5ZH&hf!Y~X(MTvtW0*D$QkkEUF|Nk|-G6x@6 z&-kt0XhifUm1?aHMka26HVEd#GIKN4r=n$Da|Th-wy1tbMMuzCH>3+A+8I`i3V+d^ zP9;_mqzBO-3`by;jVItVpC#bDC>J0tb3?23X1m)Tbf)8p=zO`}Bkm7BQ-<$Zyx!pF bCxd(elDGH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5;>LQ$ByV>YZu#p+4gi&L7I;J!Gca%q zfiUBxyLEqng8iN@jv*44bNf5_njCmsR=;=@6sRq?LgU_p+W-I8?+o@)xtO`h`1d6f z-HY;}tKxX$%Sx5Osymz8x)dpkj|BO@)qkgKaRuS8>C z)1-Q(hPZlzD|;VZl(6$$##l4$ocOLEMuuCW^0!6q)7HBw-_f`H^V6!|bHpC+T;8w# z=WF#Z=}9}dI{&W^AdAYtxA9l2IF{h74=!SfRa)m v$>997lJdl&REB`W%)AmkKi3e2GGjecJwpS7FGUN1su(<7{an^LB{Ts5VJVzP diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/builder_side.png b/buildcraft_resources/mods/buildcraft/textures/blocks/builder_side.png index 0b061d1fd65ae5f7fcf9b02bd56e2583245335cd..9ff70ec5a34f750c6965e97a030bfafba766d0f4 100644 GIT binary patch delta 187 zcmV;s07U<*1)2kpB#~{#f161}K~xyiZO_YEf&c(S;ol5MBSSPv%v)jQrSjIr^8KI7 z1?+5gXBKC^;h)ql>X#6N(G@hB*D*vlty@T1?G!q-?j7i5_t4J={nGF-gi$u`R>}z^ z)Al1gRb?@Ieu3Apg@>ccm9pMR_&*lc%@=8FXOF~#Q>_|8N4>12)4 pcv!*gce<=5H!v#xVmO{(KLL^63RN(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#gp}nN#5=*wij{(BZ0~|3p^r=85p>Q zK$!8;-MT+O!8x8Tjv*44bNg=!H5u@@Ixgu@n&zsl!4wrDCVpr8|NnZ=+3s!OxAaYa zm$^uzzVFt>T?@|j$Yp$E7t7#zD|jOJIIHbd`QQYlWex)8nvNOt2Z$?ui%xagc_p%G z^|$)KwAZ{lQhnzeckgM<3y}XjNpGsy+XJq-s1`_OMS=#bf{{HYeY#(Vo9o1a#1RfVlXl=G}bjR z)HN~)F*LF=FtRcMa!sua4Bo~hMnE)FL3QNjr(~v8;?^;T@#Yht4ndF=X_+~xd5O8H zRwY0NgK@m+Db3&CfRa)m$>997lJdl&REB`W%)AmkKi3e2GGjecJwpS7FGUN1su(<7 L{an^LB{Ts5e4(V* diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/builder_top.png b/buildcraft_resources/mods/buildcraft/textures/blocks/builder_top.png index 223bdee53be91fc14e3777b7610abcc48cd2116f..8dd490cec42f222aae2841fb7742a296ba6ea477 100644 GIT binary patch delta 157 zcmV;O0Al~k1iAu{B#~`|e|01d(T4#H*aj>uBWCx%LkAyZpf$YR zrvv;+*6R-dhIugp7*D1pKrxFsz+$`}zmR6X6Tc|JHEz00000 LNkvXXu0mjfA`?UV delta 429 zcmdnRbed&?iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#rAr}ByV>YiP@R0azJIA1s;*b3=G^t zAk28_ZrvZCV4bInV~E7%-2RtBO$IzImMx1MT(eE?bg;kw-?k&u`pr%y?lkLp>Nt!pCXU%xZWTLPw*HNpX{$ZJh zbz}Xc)J0zzj_aFBUtqGjWvAr#i?MRfyv>`xIaSr~dz5}NI-c?PL+%UDd8hXPouXRe z8c~vxSdwa$T$Bo=7>o=IjdcwSb&U){42`S|jI2z6TvICpgSRn>5hxmR^HVa@Dls&~ zz;(=Fy!iyELl9&|T4qjaUSe*lRSA&6U>t82tgy-lC@BS!49-t0DNig)We7;j%q!9J ea}7}_GuAWJGc+*xQnV1Liow&>&t;ucLK6V?!I47% diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/engineIronBottom.png b/buildcraft_resources/mods/buildcraft/textures/blocks/engineIronBottom.png index 3740cf458c1b92100a39374ee7fa3a82a6748f06..8d333bb645e18c2c407f7c4257907cbc77203a52 100644 GIT binary patch delta 327 zcmV-N0l5Ca1K|RYBYy!XNkl zwccN#-^`zgC2gPw3BNhtnK|khrfHr|C(E*I+jdKE;C*VfZQJ+#Fbuucm)1551FQnWRpU4gzp3jw87_fQ>woQdcs)LFedvK(xnveb z1!y@<6Y2NoN7;efaVIKa2?MMG^E_j`JRKS>>AkOnC5#HBX(|h|jG#2$XJiLqfYmdQ z=7yqp%}?>_$YTkko*@iF`Yp@Cz62PW8(|3ptSapTlNJT0t5|yrs7gT)FsA^1BYyw^b5ch_0Itp)=>Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi z!vFvd!vV){sAK>D02*{fSaefwW^{L9a%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0003m zNkl0gBczd*m^SV>!2=pZu3 z`9^<_T8`t`w(Yv^;c)OgFOK6Z%TA|Lk|g-^`JCr@Q52WUr7X*;sw}eCMRi@bZQFGn zXY{^k^J0Ka0Z8imesy2fG>yz!fJ0CF-Q)g-<7F`{b;ye`1*RN^f%fzLEtfDX6-$gn zBnH?N#&INgxPRNdEz;a(f=>~NF@-cuaa`p#LYY`bG-i7^uz3gCEEtqb581@l(I*mP z-XV%2=9{L8=Tg9|?3IYb0GpAn3wXo;GKhO`1v63@hPZj2xyl*;O)6kWfvq42aEL)= zq>V;f1iTi=*oxmi9FZ7P@O>Z0h=2b}Vt}pV@rZ*%+92$oVrRtw|MT~*st=RmV!}sT RG-Ut)002ovPDHLkV1g5uySe}X diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/engineIronSide.png b/buildcraft_resources/mods/buildcraft/textures/blocks/engineIronSide.png index 9bd93ee3113e313048d05d3220f3cba21781d141..383e4bc59079e36d9b15b9a852f5e224f6183578 100644 GIT binary patch delta 229 zcmV#YaTG~}hDYVz|VqFUZ9>4>*S5Xkr zl?(s%2(L{#LMw8^o~nMaaGCPOre!*+wqaVPM7tZ6Q|knR8(Pe`M+{$g&K?MMY5vRaK#FTXbC~C(|^I@UH8+7PwaoxM860`wu;a8_Tjp fp64%v{}b>4$_pfew~{ez00000NkvXXu0mjf5FcmY delta 322 zcmV-I0lof#0^I_TB!2;OQb$4nuFf3k00004XF*Lt006O%3;baP00009a7bBm000id z000id0mpBsWB>pF8gxZibW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE-^4L^m3s9007KM zL_t(IPvwzK3WG2Zg>#YaTG~~m6x!?bVqFUX50C@6S5XkrReu)#nBiyFlp5Vt47Vm;TE#7z{Y&^W;QuLfM4`3<{!S{UxL4Y`p5k(QgFl3)33DPu0mSxEE97Rz; zYYjn7RaG%f(>tK=dkn+CC((5s^X}WWWhl!7C@^A-`S4RHSl2bmvV0Br`(My_0Llv_ Ug8;@l%>V!Z07*qoM6N<$f}j9_f&c&j diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/engineIronTop.png b/buildcraft_resources/mods/buildcraft/textures/blocks/engineIronTop.png index f83fe8b6a589fff7b430d81f2c66e7d8277a0aa6..1ea68e7292c121526c82bf94d5a438fe528ed2e5 100644 GIT binary patch delta 332 zcmV-S0ki(e1LgvdBYy!cNkl9bodhpBV;XgcP-S-Sxe;%5GtrrePSCW!bjvx^5IjS(YV962~!gp65kT zlx0~}RbAIj(+Jc)b+m2U_q~*|*YTy}qR9YO2Kf`iFvzXwx_^#hH4HjlkB67z9r9fZ zESc0~lmT6i;|TZL)BVHk&GX{{3307aA_G_%rfGtkW$|$qr?U_`wdOtYMF zIBAXst+9y`8Ng}=xUoQ^`1*=oB{oqaqh<)h5dF>b%yu^oD3JlITDll^W+0` delta 432 zcmV;h0Z;zs0?7lABYyw^b5ch_0Itp)=>Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi z!vFvd!vV){sAK>D02*{fSaefwW^{L9a%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0003v zNklRmx~q?K2PT3WQzFOo${V(biQn$lm_b?h`|pd<#^wsbbwmPTd}V_Qm+1l9LFtMqz3gJu&0 zY~naZ5t>2!Aucr~F~Ea?4cKYy$59ev4N(-KXz}m6Bq;{i%w{tb9HEbW9o!``!2i77 aMezgq!0AR|F}TqH0000zxf8xo9({FaWQy zU%nt0jluxA)1&pmd{uBUCNfAa6$>W}xRub*C6>pSiUGXXeMcYd09_RWZ%+%rk*<>9 zE90M}M+|XrfP{vrvAie=Kr4O?P9rLkkbU`pF8gxZibW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE-^4L^m3s9006^D zL_t(IPnD5N4#F@D1-VRNM}-idbL12`0Q(*xS7w?CPN-nfQGZq0@7cAJ9@0+MhNY5o zHh6tN;jJjGp_D>mk!YibWzZTdy3f;XKJq+kKJ1v90)hLOVp-D~ zRAW(5G{!P*4KmaLSMl%1#V=|Nes5e_+)5F)6Gox}2$~ubc97B=QjRzh;8IcJ00000 LNkvXXu0mjf02g|v diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/engineStoneSide.png b/buildcraft_resources/mods/buildcraft/textures/blocks/engineStoneSide.png index 4a0dd99d9a858086c51de7ae31f7c4d848010215..aada86086a223356dd5063f2343e9012ce07a201 100644 GIT binary patch delta 164 zcmV;V09*f@0>A-~B!7oVL_t(I%VS_b0~#u_|Bdxj!5G9w=Q9ujAcYKb|Nm!50AdCx zhVsF3L>Z6()dVvD$|uSIGkx4H0Lu{q=7#DxT>zG&c^FXa0+PcZC@APZB^Yc#NlD57 z{{H^|85tS>>+9>m7$gS6AaM{4lLM&*VYmV48ekY*1F||08y#){#aGZx^prw85kH?(j9#r85lP9bN@+X1@buyJR*x382Ao@Fyrz3 z6)8YLsS?+SlHmNblJdl&REB`W%)AmkKi3e2GGjecJwpS7FGUN1s=7U0978PplO5Ql zv^M?k{Tgym;)vUG=cy0b6k2(T|Nl?-U`S%qXsi5mu&9M0LeRt5L--7X#(WLtGhYgK zGw8T;%#dF7xP&pHPhf!sk472e$wUDWkuURwc+3_oS@NX5zW)FJo}QlnU%!4$;1Oz0 zoM6$>cCztGlffN^5?+Izb&Qd+9lYiZLN-!tj{g}~M$M=>{HXIU&|M6ku6{1-oD!M< DpTb@J diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/engineStoneTop.png b/buildcraft_resources/mods/buildcraft/textures/blocks/engineStoneTop.png index 860a14d7d60142faaf77bd25bea78b471c6a8680..5e67b269945c8b59d649ea992fdea86dd45ee5bd 100644 GIT binary patch delta 224 zcmV<603ZM30{j7xB!9z6L_t(2&y|wP5yCJGMBNBC0-VS&44*ovAV(L#JtepTY7Gyq z!5>VR>?oOywaQAi-EAQp&uH-8i`?H}h4+{t7K9LT-A5D*N{Pe*iOzj@>NmvI2%idZ zX_5oD9Jagl>bUO+NX|(~lN@MQY4@1iFga&oTD9wUJ z%~0$TP`k|nQniB$=4VI++I98%J%eVe4-ROC=C+cmTLS#)*TIo04oJB aun12=L=(cJwyRzM0000pF8gxZibW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE-^4L^m3s9007cS zL_t(IPnD9(4Z<)GMBNBC0-Qhy@u?#fa7+Q*DZv#`Yk2W9v40haP)4h0vODAPDhcgE z42EYy*L9M|2XuJa6xk4CXrzvmRwCq0N3Mow_ct04F#z= zBQ+&~>pBjvKHU2dQYCI*%`{;!phl-5ahg98Scr>~o~2dMbceFEZcdsrFj7+zGz?do z-=P@D0(80S_dyQsrY0LwT671`gVdannrt8raMIj|W27b<$in^iUz#S=7!?4LyJNxv awCx*0L=(cu6{Mg50000Vv zBQmP^4d-R+Fpmw_brsw0pdH*k-`v0 zRTWV~%CkftTtOnbuz^{KnK5GmOUxkqWIzNl-%fz!v6|fl)vw=(m_b9cagh z$dZJXKBuG%h-B1sp{rsB;#-+8fJN7NAoClr#XV5wX9ht_$i6Z_{#_hPYPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi z!vFvd!vV){sAK>D02*{fSaefwW^{L9a%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0003Y zNklm9;N3Q++N{cSZ6()dVvD$|uSIGkx4H0Lu{q=7#DxT>zG&c^FXa0*b?cf@FE_h-t&@#;!lFov;V;>+{o|1T+02Q%XdXGZx^prw85kH?(j9#r85lP9bN@+X1@buyJR*x382Ao@Fyrz3 z6)8YLsS?+SlHmNblJdl&REB`W%)AmkKi3e2GGjecJwpS7FGUN1sup^>IEGmGCp)l9 zX>I!7`!(dC#1XgW&Ql+t?bS{IZtDnm{r-UW|6J2B8 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/engineWoodTop.png b/buildcraft_resources/mods/buildcraft/textures/blocks/engineWoodTop.png index 553b6ad5e5f408bdc97da1750120f6cd2f7622b9..df6e4a95c91ee84bca6f41479859e39af1a97fe9 100644 GIT binary patch delta 322 zcmV-I0logZ1Ka|TBYy!SNkl%hw>mO!stEPn#nfpOk69**XJFZ37?Ua1|MT4;R(*W&W~F z_=4T}!5G@%OBlDfgx8z$=_(5NxXZxTeIdX(0k1!E?1s9$W=v zAx<7#*GxYFn^O;}Ai1*%91UHP2PFQ(1NLcxwEp!VZ|aguKo;*nm*io#t@1$FFAtEV zhvSGFf4Wp#y*opg1%P4=1qdTU7{UAD3!}z0U`&uMPME8Zr;$px%d>P`SRG;M8zL*( UsJ%v8M*si-07*qoM6N<$g8z1p>Hq)$ delta 417 zcmV;S0bc&x0=ff`BYyw^b5ch_0Itp)=>Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi z!vFvd!vV){sAK>D02*{fSaefwW^{L9a%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0003g zNklgTbuB&dku74u9bR$9+{gLszIT)u^ zp>Q0}+~>J>;`%-wuf{$@4ge;tdQN%T!IL%;NQ)mE;e`in!D&0%K zb=eX>4GppTe`a8OmcYd%Ud@0Jm$qaH$l@K?l4igJAR*Tbg#DTUa_`}AQSrQ`((4__ zX@Fu*WB|B87{S(ouZoL684wbrixXxYdWlH{QgTz$V;W|5Fvyb=A}iXcybQKW00000 LNkvXXu0mjf4WY0O diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/fillerPatterns/clear.png b/buildcraft_resources/mods/buildcraft/textures/blocks/fillerPatterns/clear.png index 69296678191ffdbfdc5dd019dee78ca782fa997e..bab2e6c94a8819fd12dbf2d67c5d35b738f0ddbb 100644 GIT binary patch delta 23 fcmey)@|(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#dY$GN#5=*(o6|gmH?G;7I;J!Gca%q zfiUBxyLEpio|#myTH+c}l9E`GYL#4+3Zxi}3=EBR4GeXS3_=WztPG5-On_WdD+7bK zF^LgCV-Om0^HVa@DsgL=!+7%vP=g@IhP2F_)V##pRI3sogTW-;WJluNr$9-4DUfV% sep*R+Vo@qXKw@TIiJqTph(ejMo~fRpfx(xeg+OHtp00i_>zopr09yoA4gdfE diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/fillerPatterns/fillAll.png b/buildcraft_resources/mods/buildcraft/textures/blocks/fillerPatterns/fillAll.png index 128fb518e417b513d616c2c1de8f6eee41d5dc69..a55d864fe1b71405a0a5c6ea75e492d20ea40103 100644 GIT binary patch delta 23 fcmeyx@``DK%Ea7tlWiIMIT<`%{an^LB{Ts5Z`%l_ delta 291 zcmaFG^owPJiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#f|ceN#5=*ruVkp%mymsEbxddW?mdKI;Vst0Mo=&4*&oF diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/fillerPatterns/flatten.png b/buildcraft_resources/mods/buildcraft/textures/blocks/fillerPatterns/flatten.png index c1245b0e7aacb79c300135bd537eae0b76ed3f76..2efa32b3b1e61ce0521a0d6aa8d9284f3c7c85dd 100644 GIT binary patch delta 304 zcmV-00nh%$1IhxBBYy!ANklYHARAmcB7bhb)T7I~*N-b9i(fu0_u+x{*JqA* z&T1e;ub)spvq${xU5ghtjFD9X)jhdt@c6RcrNeRv(Vs6}fI=^CnchFIg{=Da8Fiqw zr*?~7JS2nSm`{)G-rO<2drpH`*Z+9w^8C6Hg#8}_V9{`PpMM0LjYq?iEBaV88)E>7 z_>B|Fz_21#!;70Hz`zBD7>d$!`y_E`07eeblc#r!Ayj{R?)31I4lWI^Z=1bGb`LQ4 zpItWu+KVd~&+nH);h)|k4%C3=rwuN6BYyw{XF*Lt006O%3;baP0000WV@Og>004R>004l5008;`004mK z004C`008P>0026e000+ooVrmw00009a7bBm000XS000XS0e@s)kpKVy8gxZibW?9; zba!ELWdKlNX>N2bPDNB8b~7$DE-^4L^m3s9009+AL_t(IPk&=zARAmcB7bhb)T7I~ z*N-b98*=%u+=mC&U!OVNIjeyXzkWjb%pUQ#cP(DrFh*7lRQKen!Q;z%mk!Gz#DBhY z0SdjmWqSX-7P9KwXVih#p4u&T@sJFP!#_Q?dvnM9?l~kI@q6sYOPA-@jUa0NV*o6A z&+e0ei{jDnYHARAmcB7bhb)T7I~*N-b9i(fu0_u+x{*JqA* z&T1e;ub)spvq${xU5ghtjFD9X)jhdt@c6RcrNeRv(Vs6}fI=^CnchFIg{=Da8Fiqw zr*?~7JS2nSm`{)G-rO<2drpH`*Z+9w^8C6Hg#8}_V9{`PpMM0LjYq?iEBaV8^bsQYie>d&Gen(ERk_p$#zNfbj!N1n36bzo7lFU7+ZE_Md0CauLa?&tTZvX%Q07*qoM6N<$ Ef?~0sjsO4v delta 428 zcmV;d0aO0W0>uN6BYyw{XF*Lt006O%3;baP0000WV@Og>004R>004l5008;`004mK z004C`008P>0026e000+ooVrmw00009a7bBm000XS000XS0e@s)kpKVy8gxZibW?9; zba!ELWdKlNX>N2bPDNB8b~7$DE-^4L^m3s9009+AL_t(IPk&=zARAmcB7bhb)T7I~ z*N-b98*=%u+=mC&U!OVNIjeyXzkWjb%pUQ#cP(DrFh*7lRQKen!Q;z%mk!Gz#DBhY z0SdjmWqSX-7P9KwXVih#p4u&T@sJFP!#_Q?dvnM9?l~kI@q6sYOPA-@jUa0NV*o6A z&+e0ei{jDnyvpy|@DN{C+7EsndJJff~^K^x>fmFyesm155B>9H*qYcCy=MHc delta 291 zcmeyy)W$kN#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5;ud+vByV>YGxz-+7lFz+3p^r=85p>Q zK$!8;-MT*$FU_u3Epd$~Nl7e8wMs5Z1yT$~28PDE28Oyu1|fzFVdQ&MBb@05Sek{r~^~ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/fillerPatterns/stairs.png b/buildcraft_resources/mods/buildcraft/textures/blocks/fillerPatterns/stairs.png index 7df07d486dc6dd23bb5056608d2bd176237327da..a964597c72f92817d02bb26665951afb32cea685 100644 GIT binary patch delta 23 fcmZo?{mwK&Wn%8e$qtM&IT<`%{an^LB{Ts5XKx5m delta 291 zcmey))Xq9V#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5;ud+vByV>YGxz-+7lFz+3p^r=85p>Q zK$!8;-MT*$FU_e}Epd$~Nl7e8wMs5Z1yT$~28PDE28Oyu1|fzzopr0D~G;bpQYW diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/fillerPatterns/walls.png b/buildcraft_resources/mods/buildcraft/textures/blocks/fillerPatterns/walls.png index 5856e02f79e09608670f5d30b6d9b7fac89e25bf..d717bb8b608d02cba3456166e72e27b8b7e2307a 100644 GIT binary patch delta 23 fcmZo<{m3*yWn%8e$qtN@IT<`%{an^LB{Ts5W+eze delta 291 zcmey!)W|wP#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5;ud+vByV>YGxz-+7lFz+3p^r=85p>Q zK$!8;-MT*$FHNggEpd$~Nl7e8wMs5Z1yT$~28PDE28Oyu1|fzmdKI;Vst08dg>!~g&Q diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_dark.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_dark.png index 4cdf433948cf09c2c061acd694165dd372bfa9fa..53479dc22ac6d4dcb8e47818670064dd6c0039c4 100644 GIT binary patch delta 22 ecmdnRypnN(%EVmPiC4@y89ZJ6T-G@yGywozYzOuL delta 292 zcmZ3(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMGtw#ByV>Yq3S(3KvfK!1s;*b3=G^t zAk28_Zrz`WX;$^BC9V-ADTyViR>?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3)%hNXyJg%}dNpwJHHJ7%bxrja&tu?q^^yV2}by t2j{1ilqVLYG6W=M=9TFAxrQi|8S9zq85$UTDOw0}y{D_6%Q~loCII2(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMQ?e=ByV>YVV>PF(}2o23p^r=85p>Q zK$!8;-MT*$GwthDOI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7hk3kd~Q~nwOZHYE=ScFj&T0?Br*f3zXEC0?7vF srFVdQ&MBb@0HYXD^8f$< diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_diamond_and_lit.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_diamond_and_lit.png index abc89033c7f23eb6cd0263905979492885df8cb7..1284b3c78e9cdfd1801b541bda87363d320f931e 100644 GIT binary patch delta 22 ecmZ3)Jc)6F%EVmbiHD3h89ZJ6T-G@yGywotg$JGh delta 291 zcmbQlxQKaziW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMKgKEByV>Yp2p3A$v|bC1s;*b3=G^t zAk28_Zrz`WA*S`JC9V-ADTyViR>?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3))iNXyJg%}dNpwJHHJ7%by0&v6)W110sPK(fL4 sX(i=}MX3w{iJ5sNdVa1U3T4K6rh0}3249L60+lg%y85}Sb4q9e07eZ_RsaA1 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_diamond_or_dark.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_diamond_or_dark.png index fc44df7135d0bcc203903fa91efee6275ef036f2..9ed7b89c0f5deca7b2193b94c315245ffa094504 100644 GIT binary patch delta 22 ecmdnbypC~#%EVmPiC1hm89ZJ6T-G@yGywo!bqECj delta 292 zcmZ3-xSx4~iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMGtw#ByV>Yh7ML)51=y60*}aI1_o{+ z5N5n|x9-oxH2Zqh64!{5l*E!$tK_0oAjM#0U}&ssV5nH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qOm+RdP`(kYX@0Ff`URFw`|N2r)FWGBC0-0dh^P3=H1J zBt`&@L1@U$PsvQH#I0ctW^AdAYtxA9l2FrLu!#k2&fSxm8kOD~u t=ckpFCl;kL1SDqWmFW4ohA5O7>zV2q8W?;jS_m|R!PC{xWt~$(69CziQ4atB diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_gold_and_dark.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_gold_and_dark.png index c9bcdf3c4e5851b502662c2b18b0e6789dcd999b..651467d762c18132f46617e4a04c1a0e32d6b5e3 100644 GIT binary patch delta 22 ecmX@eypeH&%EVlciPvp789ZJ6T-G@yGywo#D+mw( delta 291 zcmdnUc#wI5iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMQ?e=ByV>YVV>PF(}2o23p^r=85p>Q zK$!8;-MT*$GwthDOI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7hk3kd~Q~nwOZHYE=ScFj&T$Y}o0y4JfHE1(FTU sPb(=;EJ|evNX*PD(erZ+Q7ALkGu1ORF!)lm5U7m7)78&qol`;+0NC|X^#A|> diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_gold_and_lit.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_gold_and_lit.png index 5a2103989e3d52b02e68f2d55e2658816199c8fc..21102bf7c2f4163a63ffa77be016d6932f9ef77b 100644 GIT binary patch delta 22 ecmZ3)Jc)6F%EVmbiHD3h89ZJ6T-G@yGywotg$JGh delta 291 zcmbQlxQKaziW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMKgKEByV>Yp2p3A$v|bC1s;*b3=G^t zAk28_Zrz`WA*S`JC9V-ADTyViR>?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3))iNXyJg%}dNpwJHHJ7%byWkMFBf07~jhfn(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMGtw#ByV>Yh7ML)51=y60*}aI1_o{+ z5N5n|x9-oxH2Zqh64!{5l*E!$tK_0oAjM#0U}&ssV5nH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qOm+RdP`(kYX@0Ff`URFw`|N2r)FWGBC0-0dh^P3=H1J zBt`&@L1@U$PsvQH#I0ctW^AdAYtxA9l2FrMJ%?% rT1k0gQ7S_~VrE{6o}X)oLYc9ish**M!Iz?iKxGV`u6{1-oD!M(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMQ?e=ByV>YVV>PF(}2o23p^r=85p>Q zK$!8;-MT*$GwthDOI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7hk3kd~Q~nwOZHYE=ScFj&SLY`@aA9w@0V1(FTU sPb(=;EJ|evNX*PD(erZ+Q7ALkGu1ORF!)lm5U7m7)78&qol`;+0P09nNB{r; diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_iron_and_lit.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_iron_and_lit.png index dbef7d129fe4c7410f614c860ff4d76a20aa1cf5..534e5dc891354c34b4602b91aa7e83c422410187 100644 GIT binary patch delta 22 ecmZ3)Jc)6F%EVmbiHD3h89ZJ6T-G@yGywotg$JGh delta 291 zcmbQlxQKaziW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMKgKEByV>Yp2p3A$v|bC1s;*b3=G^t zAk28_Zrz`WA*S`JC9V-ADTyViR>?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3))iNXyJg%}dNpwJHHJ7%bxr4_w}536#{A0?7vF srFVdQ&MBb@0Fj+i!2kdN diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_iron_or_dark.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_iron_or_dark.png index 3ea10f6028bae3fb8a3f349e490d8ce45c034e86..1ac4617871e89a7edaaf814e975600e1294c3509 100644 GIT binary patch delta 22 ecmdnTypC~#%EVmPiC1hm89ZJ6T-G@yGywo!UkC&M delta 291 zcmZ3-xQ}^)iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMGtw#ByV>Yh7ML)51=y60*}aI1_o{+ z5N5n|x9-oxH2Zqh64!{5l*E!$tK_0oAjM#0U}&ssV5nz>% diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_iron_or_lit.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_iron_or_lit.png index 452a33f4632f84aaa910d2322612f275fd9ef34a..2fe908a52e113bde02210c6ddcdc0528434cd79f 100644 GIT binary patch delta 22 dcmbQw+|M{cWn!+u#QjE`44$rjF6*2UngCY02a*5) delta 291 zcmeBYoXH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qOm+RdP`(kYX@0Ff`URFw`|N2r)FWGBC0-0dh^P3=H1J zBt`&@L1@U$PsvQH#I0ctW^AdAYtxA9l2FrM3y}P$Xfs*=CAlcyj sw370~qEv=}#LT=BJwMkFg)(D3Q$0figD*u3fyx*>UHx3vIVCg!0Gy^#DgXcg diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_lit.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_autarchic_lit.png index 0e75217246201e52d8e04ab40ee7e32a6b1ee822..e5ed5ba60ee3c1b0fadca9b5b8e0fbbb3e199a78 100644 GIT binary patch delta 22 dcmbQk+|4*aWn!+u#Ql1l44$rjF6*2UngCV%2ZsOv delta 292 zcmeBXoWndp#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qOm+Q zK$!8;-MT*$0}bm{OI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7he1kd~Q~nwOZHYE=ScFj&SL8XJjU)ns5WV2}by u2j{1ilqVLYG6W=M=9TFAxrQi|8S9zq85$UTDOw0Lgu&C*&t;ucLK6V?pi(ga diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_dark.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_dark.png index e3d1ae006f2a0e81e269836a992e4407558017b9..8a293eaad863d7e4cd2c03e066cac082f1bee1d1 100644 GIT binary patch delta 66 zcmdnMJdbgL%EVkJ3uR9i#}J9j$q5VC6Iz0LdV1<5Kp;YaN#_QO#0KsQ>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMb~=9ByV>Y!ADzdcL9}g7I;J!Gca%q zfiUBxyLEqnf-0Uajv*44lM@ywC!{2$ISMAECO>x&eDLJaGe^M(PalgfST4-y{Dz^E z;pwDzK=rC6t`Q|Ei6yC4$wjF^iowXh&{)^NP}j&H#L&pfz{tu3$ThVxFnAl2SRa9+ zBR4-KGp!Q0jya4sp8z!ofviZ&%t_5l%uTf_0WugY;th@du4%djl$8R>2Ir@hlqVLY nG6W=M=9TFAxrQi|8S9zq85$UTDOw0r#o+1c=dzC3DWM4fvm$3| diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_diamond_and_dark.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_diamond_and_dark.png index 78e412aa2d437bf97c5cb2be258a2fb49c666605..a3e9c7dd7c4af9404cd01f8e997281d61e97a005 100644 GIT binary patch delta 71 zcmdnNyo_;z%EVk(TMbVa#}J9j$q5T26Iz4=CN*|WocPh483edp8dzsDFqbj%IA=03 X*o!bJ>D&D~%K!wPu6{1-oD!M(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMUQ&MByV>Yq3S(3KvfK!1s;*b3=G^t zAk28_ZrvZCpq8hLV~E7%T-fYKdz^NlIc#s#S7PDv)9@GB7mOH89jQG6*p=vNABTG68Z;>#Yn7 z-o_+Gpy76Mf}Q?; diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_diamond_and_lit.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_diamond_and_lit.png index c3b5ef0a394ad4e6940a09ac87152ce79211cf91..933809d3f03774d7b56c1201fdc493d0ec1035a8 100644 GIT binary patch delta 22 dcmbQk+`~9QWn!+u#Qpl544$rjF6*2UngCWB2Z;ax delta 291 zcmeBSoWndp#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qOm+Q zK$!8;-MT*$1C8ocOI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7hk3kd~Q~nwOZHYE=ScFj&M}o<9{~1C-R40?7vF srFVdQ&MBb@0NwRc>i_@% diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_diamond_or_dark.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_diamond_or_dark.png index e078185377a6ddab39dec90a4fb90836b822273c..1d29b093b366d4088079657130589342f03df488 100644 GIT binary patch delta 71 zcmdnSyqIx<%EVkJTMbVa#}J9j$q5T26Iz4=CN*|WocPh483edp8dzsDFqbj%IA=03 X*o!bJ>D&D~%K!wPu6{1-oD!M(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMb~=9ByV>Yh7ML)51=y60*}aI1_o{+ z5N5n|x9$&6P|MTBF+}2Wa>4@1gcf0g14qsr>RQy&JGWWbwV``*ARs=V?9$nLj!{^MGJwdI2k-${an^LB{Ts5S^{SE diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_diamond_or_lit.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_diamond_or_lit.png index d04b1f525d80c3a0b089e38f05cb77d8d4b2d42b..c5ad7637fb36e0a00646410f0bc7788eb845a87f 100644 GIT binary patch delta 22 dcmbQm+{rjWWn!-G#69|)44$rjF6*2UngCT~2Yvtm delta 292 zcmeBVoW(pr#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qJcbPlDE4HLkFv@2T&Pjfk$L90|U1Z z2s2)~TlZ(8pHaPPiEBhjN@7W>RdP`(kYX@0Ff`URFw`|N2r)FWGBC0-0dh^P3=H1J zBt`&@L1@U$PsvQH#I0ctW^AdAYtxA9l28(z@!<40$f$lY6kOD~u t=ckpFCl;kL1SDqWmFW4ohA5O7>zV2q8W?;jS_m|R!PC{xWt~$(69D0^QHKBk diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_gold_and_dark.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_gold_and_dark.png index e5116bc94b1645cda91e3806c1eda9bec7ec33a3..a69dcc29ec36be502c143bb7dbe0b7cee8b8d047 100644 GIT binary patch delta 71 zcmdnNyo_;z%EVk(TMbVa#}J9j$q5T26Iz4=CN*|WocPh483edp8dzsDFqbj%IA=03 X*o!bJ>D&D~%K!wPu6{1-oD!M(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMUQ&MByV>Yq3S(3KvfK!1s;*b3=G^t zAk28_ZrvZCpq8hLV~E7%T-fYKdz^NlIc#s#S7PDv)9@GB7mOH89jQG6*p=vNABTG68Z;>#Yn7 z-o_+GpyH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qOm+Q zK$!8;-MT*$1C8ocOI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7hk3kd~Q~nwOZHYE=ScFj&N!9;*=%2TJNofnD&D~%K!wPu6{1-oD!M(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMb~=9ByV>Yh7ML)51=y60*}aI1_o{+ z5N5n|x9$&6P|MTBF+}2Wa>4@1gcf0g14qsr>RQy&JGWWbwV``sp|s6i6~S tKdq!Zu_%=xATcwqM9KLZB)J4o_Dv#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qJcbPlDE4HLkFv@2T&Pjfk$L90|U1Z z2s2)~TlZ(8pHaPPiEBhjN@7W>RdP`(kYX@0Ff`URFw`|N2r)FWGBC0-0dh^P3=H1J zBt`&@L1@U$PsvQH#I0ctW^AdAYtxA9l28(!ejiOR(prpPONH#b> rt)x7$D3u`~F*C13&(AePq0Cs%RL{`B;7id$pfUzeS3j3^P6D&D~%K!wPu6{1-oD!M(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMUQ&MByV>Yq3S(3KvfK!1s;*b3=G^t zAk28_ZrvZCpq8hLV~E7%T-fYKdz^NlIc#s#S7PDv)9@GB7mOH89jQG6*p=vNABTG68Z;>#Yn7 z-o_+GpyH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qOm+Q zK$!8;-MT*$1C8ocOI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7hk3kd~Q~nwOZHYE=ScFqp+#YzlT=0F>010?7vF srFVdQ&MBb@0M1oXr2qf` diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/gate_iron_or_dark.png b/buildcraft_resources/mods/buildcraft/textures/blocks/gate_iron_or_dark.png index 13d1b3e6bebc32fc7f36dee3b6e3aedbf45c89fb..d12e5d653deb1dbbe9c2d56bb289e8956ff36316 100644 GIT binary patch delta 71 zcmdnWyqIx<%EVkJTMbVa#}J9j$q5T26Iz4=CN*|WocPh483edp8dzsDFqbj%IA=03 X*o!bJ>D&D~%K!wPu6{1-oD!M(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMb~=9ByV>Yh7ML)51=y60*}aI1_o{+ z5N5n|x9$&6P|MTBF+}2Wa>4@1gcf0g14qsr>RQy&JGWWbwV``KLZB)J4o_DH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qJcbPlDE4HLkFv@2T&Pjfk$L90|U1Z z2s2)~TlZ(8pHaPPiEBhjN@7W>RdP`(kYX@0Ff`URFw`|N2r)FWGBC0-0dh^P3=H1J zBt`&@L1@U$PsvQH#I0ctW^AdAYtxA9l2D5lWgU_{7jxsP9Fi3%< ugY(l$$`gxH83GbB^GfvmTtgJfjP*?Q3=Isv6fFcA!rH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qJcbPlDE4HSH^`eVL)Y^1s;*b3=G^t zAk28_Zrz`Wep>aaC9V-ADTyViR>?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3)%hNXyJg%}dNpwJHHJ7%buqjk{KF@?l^wV2}by u2j{1ilqVLYG6W=M=9TFAxrQi|8S9zq85$UTDOw0Lgu&C*&t;ucLK6TEzEc7K diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/hopperBottom.png b/buildcraft_resources/mods/buildcraft/textures/blocks/hopperBottom.png index 0730336268fc0544ba545c19b0857ab00a405692..9f63faa9faac04bfa0316377f359e0c4ee5d1053 100644 GIT binary patch delta 334 zcmV-U0kQte1Ly*fBYy!eNkl$?$&Q0C5JdgonG?4l!6=aVC{FDAB9-i=)sX}iuAUGUG0XAB{s!z?0KH= z`^<1uVp#&81F)G!M-LZ-!QH>#er^nKC=HNSH?{Yz(*B2<5ilMh<&~P49w^OSfMAkU(LlI8Q`JAVnBbD{c7JcpkQ?{V12vz gBZEz>4A!@cUlqW6Q+0^qod5s;07*qoM6N<$f^cb}xc~qF delta 434 zcmV;j0Zsns0?PxCBYyw^b5ch_0Itp)=>Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi z!vFvd!vV){sAK>D02*{fSaefwW^{L9a%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0003x zNklMxWOyS5<^kxFUw*D@Km(8g8_h=Wf_<}q5@>-@mC~TFgPlbD~?cI z(+Xf~FiMW^zkhcahH($+0$~w4>0i?o* zsTwRLn5Xc$0~);mMlgvx`cUHA)aqL8|-CC_s?9*bi-l>7ZIr_)Ir05fpzNs`ERyOlIeHAmd7*K0*4L4SZV3={wiBh6WsX^eXA z#KSNYce~w`5q1*T;c!r9Vw?fS07fZfyWLJ}97R@4FplFv1)j$7+yL4bkPQl$j{pob zm~>=gCL0eK0N3kP+~e_3CSxTDAZ86H<4g`P?kJ(xP1m^J?-hvkjn{|=6e8m0-_}Ub z*Yt^WalQ9PT^#1DK4R)KiFr|&bZ x`y1e6Cacet1VJE6Z}~p}m{GCt7QX^~0ZhDGOrNGWQw#tA002ovPDHLkV1mKUxf=ig delta 494 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi z!vFvd!vV){sAK>D02*{fSaefwW^{L9a%BKeVQFr3E>1;MAa*k@H7+qQF!XYv0004Y zNklb}p`tpp(9M_yV6>*#~MQ5TOiiqzN ziv0#Wm$;g6olYl-`M9|JjP`ny0EkaW0uAQ1w%hGAGiMOwDn;&l2!J^$i|r#R1knlR zkNVv6A^`pagg_d}fT;7&`jvp^>SaC3Mj5qwEq$M#b?}RTB=A;=#%CkSvW$<~ k$NvO4OHr*={}71c3rxIQOxx%i6951J07*qoM6N<$f)gCvqW}N^ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/hopperTop.png b/buildcraft_resources/mods/buildcraft/textures/blocks/hopperTop.png index 627aad390574d521f6d0914ccdf24b558289ac26..c2de3e27cef86091638657caa7a0b7e3cce1704f 100644 GIT binary patch delta 353 zcmV-n0iOQt1N#DyBYy!xNklF|P0lJY49j2JDYsyS#Qjgg0v2!xBqY@7BY6>2x9yc|M=2 zI>s1d06-M(?(W;ReZSw&=ktEQU#}M;3N!cK0igFTBFyaW!GAJK5Js?1D8V~k%cF*u}$o|FLk-_gDCuj0W$LmXhggxL@O4@ z-6eQt=I-G;I9k(pXfrbrad%PGbzP_Fc~4itZ>??H1^}e0*Xxyta?X)`AW}-T)>>;R z1re8Jxm+#)fVbO?nRCuL=fisU-Xot_u+a7ov9%u$&M4^X00000NkvXXu0mjf?~|i^ delta 468 zcmV;_0W1Fd0__8kBYyw^b5ch_0Itp)=>Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi z!vFvd!vV){sAK>D02*{fSaefwW^{L9a%BKeVQFr3E>1;MAa*k@H7+qQF!XYv00048 zNkl1|Q>3lvnO*4+8;?MVe%d#BD z5f4wmQb4Zlc8exSlBq)1b*wR%rb&QQ6oBAuhUa;497j<^Z;GFYY}Eu47nRMfPoAO@&1}tAVCz^g}>} zzXrfA99hL9>7@eopBShs20(6612!p+=a*q^i5?KWJV4AQlyt?#F9y~en%vN&oO+re zHKFieU@X)y3`E?3&;U+u4G^FP>?339RNJ;JWEY!A;Z49g7d$x?>}05_D$6pdD45=W z>mCjV#_o7LGJoPs({wWAd0rF+r(s4o&rdK2q@!FB&rvn@@QF0000< KMNUMnLSTYJD9H-| diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/laser_bottom.png b/buildcraft_resources/mods/buildcraft/textures/blocks/laser_bottom.png index 4722beb1a03f1713b81d629d8995370a703a6228..e162d025647e5b45b7df5fd97346a0e073d94db4 100644 GIT binary patch delta 182 zcmV;n07?Jz1l$6UB#~{6f0ju^K~xyiWzS1i!cYJN(dH5o0(n6|BOpQi>;598=rzz&+ay76^Pt`;OG%U+dpD9iJ`H6W&xgY?iP`Bz zIghNnxhXrA(P@9CGD$C1>sQB{!(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#R>I{N#5=*TEY9S%mXUpEbxddW?ML`*^Re5|Gi+rjslor09dwg;Aw4&g{-1o|k zNWAp7_ux32m32q*w9Kyke_n9MeqeWb`E>DrphHzlTq8yj5nVEbqIm1NXyJg%}dNp zwJHHJ7>wc#O?gVc%K~MkK(fL4X(i=}MX3w{iJ5sNdVa1U3T4K6rh0}3249L60#z}1 My85}Sb4q9e0C+y2ng9R* diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/laser_side.png b/buildcraft_resources/mods/buildcraft/textures/blocks/laser_side.png index 6c48787ece52e27b40e919f62a040b0ed9679656..b1fa7e1384b487d7dfa6d818f70e5890e74e1a63 100644 GIT binary patch delta 22 ecmcb?e4KHD%EVm%iTAuY89ZJ6T-G@yGywo)I0#w* delta 292 zcmX@kc!PO@iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#UOdcByV>Y!ADzdcL9}g7I;J!Gca%q zfiUBxyLEpi7WmbxmbgZgq$HN4S|t~y0x1R~14Cn714CUSgAhX_D+41d6Cl^r%D~`l zOkxDk7=(u0{FKbJO57UeFy4Fu)F1@1AuTf}H7_wY)v5%@U@(d|G=3@;q`|;oz#s*Z u4$e<2DNig)We7;j%q!9Ja}7}_GuAWJGc+*xQnV0g2!p4qpUXO@geCyuB2z^G diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/laser_top.png b/buildcraft_resources/mods/buildcraft/textures/blocks/laser_top.png index a5d1ee0b35013961c656fc41549e362e3efb6d19..be8f911f9fb29fc8a6a484f8c90740c218a35a7d 100644 GIT binary patch delta 23 fcmbQk+RZ#cWn%8e$qtNbIT<`%{an^LB{Ts5VP*&q delta 292 zcmeBXp2Ipp#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5;ud+vByV>YGxz-+7lFz+3p^r=85p>Q zK$!8;-MT*$FKwt-Epd$~Nl7e8wMs5Z1yT$~28PDE28Oyu1|fzIA0 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/library_side.png b/buildcraft_resources/mods/buildcraft/textures/blocks/library_side.png index 53a88c757e1117f01ff8c31f516ccf0e0d8b3112..d0b89b0ed27cf6c21858e17a9cdcf16b2e915456 100644 GIT binary patch delta 23 fcmeyw@`!1I%Ea6ilg$}>IT<`%{an^LB{Ts5ZM_JH delta 291 zcmaFF^oeDHiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#ntkRN#5=*#^zUR;(*FH3p^r=85p>Q zK$!8;-MT*$Pfn;;Epd$~Nl7e8wMs5Z1yT$~28PDE28Oyu1|fzmdKI;Vst072hWW&i*H diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/library_topbottom.png b/buildcraft_resources/mods/buildcraft/textures/blocks/library_topbottom.png index 0b061d1fd65ae5f7fcf9b02bd56e2583245335cd..9ff70ec5a34f750c6965e97a030bfafba766d0f4 100644 GIT binary patch delta 187 zcmV;s07U<*1)2kpB#~{#f161}K~xyiZO_YEf&c(S;ol5MBSSPv%v)jQrSjIr^8KI7 z1?+5gXBKC^;h)ql>X#6N(G@hB*D*vlty@T1?G!q-?j7i5_t4J={nGF-gi$u`R>}z^ z)Al1gRb?@Ieu3Apg@>ccm9pMR_&*lc%@=8FXOF~#Q>_|8N4>12)4 pcv!*gce<=5H!v#xVmO{(KLL^63RN(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#gp}nN#5=*wij{(BZ0~|3p^r=85p>Q zK$!8;-MT+O!8x8Tjv*44bNg=!H5u@@Ixgu@n&zsl!4wrDCVpr8|NnZ=+3s!OxAaYa zm$^uzzVFt>T?@|j$Yp$E7t7#zD|jOJIIHbd`QQYlWex)8nvNOt2Z$?ui%xagc_p%G z^|$)KwAZ{lQhnzeckgM<3y}XjNpGsy+XJq-s1`_OMS=#bf{{HYeY#(Vo9o1a#1RfVlXl=G}bjR z)HN~)F*LF=FtRcMa!sua4Bo~hMnE)FL3QNjr(~v8;?^;T@#Yht4ndF=X_+~xd5O8H zRwY0NgK@m+Db3&CfRa)m$>997lJdl&REB`W%)AmkKi3e2GGjecJwpS7FGUN1su(<7 L{an^LB{Ts5e4(V* diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/miningwell_back.png b/buildcraft_resources/mods/buildcraft/textures/blocks/miningwell_back.png index 37a5c0ee9770e87c189c38af6e9a48e86df3cb24..6d240be0329d349246d3039153f001fccfedae4f 100644 GIT binary patch delta 201 zcmV;)05<>o1LXmbB!8?)L_t&-(*?m%Y6MXT1VE1;$afA9b`ViSnx=7B!eg0}rOJYG z)#osuoM2dji05t{^zZAEU0;m%uKub+KV8=6zE^oBfqlQ+qR)-s61B+JW%}H)r>do{ zp3C%*3MkuajXv*NI(m|GJ{}z8CK$|EBJ&(^|Xkv&_+} zjAwptJyXu~T)?v9dg3ns`P!S8oO&f|vqYvV>Sk14%ez+7K*^m&Gk+z1zt%K|=W$5y z^#x7``3{%e$xdRcx^=?evV1R7Q}nNS2^My;>z#^U@A3pXUbVzEq9i4;B-JXpC>2OC7#SEE>lzs98X1Hb8d(__S(yO2 zrd9?9Z(|Z8P&DM`r(~v8;?^*S@#Yht20@SwX_+~xd5O8HRwY0NgHgO$(4zy@KuIZ( uWN?03NqJ&XDnmeGW?qS&pKFLhnX#U!o}q!km!gG0RScf4elF{r5}E*+ey>;n diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/miningwell_front.png b/buildcraft_resources/mods/buildcraft/textures/blocks/miningwell_front.png index e81cb6437562e32eef879c7f864e76d919792806..73e6156840f2dd664c7c0cdc277de63be4a0374b 100644 GIT binary patch delta 234 zcmVtWm-{( z^%(%r0rYoaHq-1}U9)qSlpSK7o@kx^;E8iA{eQ?6Q}c2>j!{3xue%e!MVgLnv#nsx kyxy{+tkwc65tsx_zeprnT925+k^lez07*qoM6N<$g6+?5CjbBd delta 512 zcmdnXe3^BEiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#l7{6N#5=*me(1kIslb%7I;J!Gca%q zfiUBxyLEqnf)_kp977~7yY`B_mrO<3n?Pn($4uOCFPbcY}d>UGM z_4T?eh9#2i8Y@noImx*n?HB| z+O)5J6*v33qFwuT#+sI&epWY;H_6nWzyIvz&##_-eQRsw;{Gecx__s>wb8t3?RsnM z-G9E?yuD$;P4nCD@BS-z)WNazEI<5c5Mnw15;h_0I&(*7zxJHzuB$lLFB^RXvDF!10 zLt|Y7LtP_-5JMv?10yRFAlKB&z~F66VgyhJLPKtTN@iLmZVhu7Z$1HP5CqwfmYI{9 zmzbMsRRUx%7{wbab(nksO6p62WP|h5O3D+9QW*jgGxJLH{9Hp6%8d0)^$ZORz7#D4 PDr4|;^>bP0l+XkKr%J#N diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/miningwell_side.png b/buildcraft_resources/mods/buildcraft/textures/blocks/miningwell_side.png index d2db884af394884dfe4eef44d2a329b17455eb53..61a49c5f7b46dbb174e61127473c24e3c6331217 100644 GIT binary patch delta 176 zcmV;h08js@1eXGkB#~`Se~?K;K~xyiO^rcr12GW8s98&s-8gle_Wy6~p$M7_0fG<& zqK+C)IUz<;->9mBqMIs@!<{-)K>@{sP(z9iNIE%NHVJ)0>iCk%8U#??=e*B3=X^}% zFG3dp0000(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#lU*TByV>Y(Wf_lE(R*&EbxddW?0B(z8Q6=a+mej|NBG57Eff*T=#d6Op z>x$}?E#&Y2syxT?<@)@~vcJ~zt8TgAe{_YeY3=_!LB;%K*H&(P7kAGzVUygsgGny+ zSLZ+3mT^UTQapQ$tjN(&pzBmiTq8-L15RjOeSEA?V8lq5UtY@lcXkhTAXdzG)gQu&X%Q~loCIB?{nz#S} diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/miningwell_top.png b/buildcraft_resources/mods/buildcraft/textures/blocks/miningwell_top.png index 1df0cf360a549b3ff081c4f2d610973380b6ee54..d877e22e7eee0a45e984f73a3ca30eba77eec4c3 100644 GIT binary patch delta 22 ecmeyt{DN_U%EVlciPwuc89ZJ6T-G@yGywo=jtI2? delta 291 zcmaFC_=9(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMQ?e=ByV>YVV>PF(}2o23p^r=85p>Q zK$!8;-MT*$Gt25#OI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7hk3kd~Q~nwOZHYE=ScFc`&~?0K^=94M(T1(FTU sPb(=;EJ|evNX*PD(erZ+Q7ALkGu1ORF!)lm5U7m7)78&qol`;+0EJ3Z#sB~S diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/oil.png b/buildcraft_resources/mods/buildcraft/textures/blocks/oil.png index a28cc7dd199c0585044b9ea86d2d83f3073ce97f..035daa1f68d44ab3ee36a767151d118c25c632e5 100644 GIT binary patch literal 3729 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 literal 4827 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 Bea!#> diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/oil_flow.png b/buildcraft_resources/mods/buildcraft/textures/blocks/oil_flow.png index da43d1a7e730b39edd99982f63b3d2c634a0e2d5..95154559466833920edfdc9989dd235bb6ca8940 100644 GIT binary patch literal 5543 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 WwP0_d5fj{ig&eZBv!YshUHLy_BVg44 literal 7253 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 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeAllIron_solid.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeAllIron_solid.png index 888637e3dc674fd7cc8812e421c3ed66fbe039ff..b5cd9c2423def9db066ed052c666fbe179c279db 100644 GIT binary patch delta 128 zcmV-`0Du3Q0-XVnBza^>L_t(I%VS_b151}K{l96`COAgsgV+p&0J;Wr!-zHjT{B4r zVAG7#0GI}HF$1~{_?(H&Wen&6MwS7@MitgrAtkD?MKJ>@QH3pvNj3o8#gs=QF(FM% i6yr63m?$2&+z0>(d(}vv%yCWt0000GZx^prw85kH?(j9#r85lP9bN@+X1@buyJR*x37`O#Nn6W-3 zej-qiy~NYkmHjTWl$ePzo1$tYP)Mr8HKHUqKdq!Zu_%=xATcwqM9KLZGTLPZ!4!3;(5)xVab%LH4lI1CNF?J2zopr06~{n A&j0`b diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeAllWood_solid.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeAllWood_solid.png index 9af263b39c87a148bd2ef9a10be1f0a630949a67..776a7b6ab7bcd4bdc4387701e7cf4b73b4652d6b 100644 GIT binary patch delta 22 ecmX@fyn}Iq%EVmliMtXw89ZJ6T-G@yGywo#0SE~I delta 292 zcmdnNc#?U7iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMLl`OByV>Y)*tyVj{}u)7I;J!Gca%q zfiUBxyLEpi`Xtw@mbgZgq$HN4S|t~y0x1R~14Cn714CUSgAhX_D+41d6Cl^r%D~`l zOkxDk7=(u0{FKbJO57UeFy4Fu)F1@1AuTf}H7_wY)v5%@U@(j~G?hCL@tJ|afI$i* u9h{$5Ql40p$`Fv4nOCCc=Nh6=W~^tbXJ}yXrD!405C%_IKbLh*2~7YVFH|M~ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsCobblestone.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsCobblestone.png index a4ace87c602605dca61b478295ac7fa4ea55de7c..0402b74b8f345f85211d5e2ba6f54fce58107d36 100644 GIT binary patch delta 112 zcmV-$0FVET0*wKXBxzJhL_t(I%VS_b1FWp9|8eor<*)*L8b~q#n_{93z@-qYI7|b% zm}uJxdI6u`2^v6bRAG%3Qlg3|i-<9RsIVY9im4in_*_6Jit!pil-~y|Hv#}}dQd68 Se6+^^0000}8suQqNc%KLZGTlPZ!4!3;(^rr@0suI9@;cUtbiM6)@#oDhI1<4e#wR%~u^BcY~|fWLK3P z$$7xZVA{^O$8E;@lV@xzW;jfcIokhn=If2+ySALcajD>dX nb1=H65@&qoP@;DI-(KGQssK%=l~>wFKArr7zwd6ZGM%Jl=l_ypHa$JsFe0000(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMb&!7ByV>YrZn!F6reKB0*}aI1_o{+ z5N5n|x9$&6(8klnF@)o~?wO6e42nF?7xOu*@|2Yg8F+uMZ(6K;bTYT~15TgT&^HA| zCp_0mOxtkvfK=;$u6L0?wC_#l)~ROiW}T8G12jjq#5JNMC9x#cD!C{XNHG{07#i2> z8W`#t8H5-bSs55vnHcLDm|7Vayp2hWK+%z#pOTqY3D$vC!yLw&PkI1#ZAO(^P&QB{TPb^Ah2uRG#E79|lat%=^GuAWJGc+*xQnV1L OjKR~@&t;ucLK6W07Htmz diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsDiamond_down.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsDiamond_down.png index 00895f697df1f42be787b3dbc323bd6918537d83..f57c51f7fade6b16c7fce6aafc3cc03731b7d4ff 100644 GIT binary patch delta 22 ecmZ3-JdbgL%EVmNiCcU)89ZJ6T-G@yGywovF9);$ delta 291 zcmbQoxQ=;(iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMGbkzByV>YW?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3))iNXyJg%}dNpwJHHJ7!2dh0+!S%0VVaNK(fL4 sX(i=}MX3w{iJ5sNdVa1U3T4K6rh0}3249L60+lg%y85}Sb4q9e0R0V7OaK4? diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsDiamond_east.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsDiamond_east.png index 4215bd4f428dc2f9de5953687230718118f7f5ea..5a4f0d702138851e05e553254ee44be334f14c9c 100644 GIT binary patch delta 22 ecmZ3_JdbgL%EVmNiCcU)89ZJ6T-G@yGywovMF+J2 delta 292 zcmbQoxSn}}iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMGbkzByV>YW?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3)%hNXyJg%}dNpwJHHJ7!2bL4JFskdBwnBz#s*Z u4$e<2DNig)We7;j%q!9Ja}7}_GuAWJGc+*xQnV0g2!p4qpUXO@geCxP98xm? diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsDiamond_north.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsDiamond_north.png index 6c2fcadd36771a6e0feba7adc4a513875d75791c..f6072bccc8bf6b4ed2ce950254298b8b91b5b660 100644 GIT binary patch delta 22 ecmZ3-JdbgL%EVmNiCcU)89ZJ6T-G@yGywovF9);$ delta 291 zcmbQoxQ=;(iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMGbkzByV>YW?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3))iNXyJg%}dNpwJHHJ7!2brw#x*o0wwjOK(fL4 sX(i=}MX3w{iJ5sNdVa1U3T4K6rh0}3249L60+lg%y85}Sb4q9e0Pdqv1poj5 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsDiamond_south.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsDiamond_south.png index f543830420da2e9d88d9703f01ac11c219b89087..c2467ea99ba81c7719c81a7e20b8ac097f3eade5 100644 GIT binary patch delta 22 ecmZ3-JdbgL%EVmNiCcU)89ZJ6T-G@yGywovF9);$ delta 291 zcmbQoxQ=;(iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMGbkzByV>YW?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3))iNXyJg%}dNpwJHHJ7!2br4@f6(21@Enfn(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMGbkzByV>YW?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3))iNXyJg%}dNpwJHHJ7!2dh)ffA10ZQsifn(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMGbkzByV>YW?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3)%hNXyJg%}dNpwJHHJ7!2bL4f0m4sbOF+V2}by u2j{1ilqVLYG6W=M=9TFAxrQi|8S9zq85$UTDOw0Lgu&C*&t;ucLK6UNeNrX> diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsEmerald_standard.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsEmerald_standard.png index 6a412f8e86a1b68ac6b088e5fbf746a79802d1f3..bed75b409a0c10fcf0b95caa3b7ebb7b5c34eb08 100644 GIT binary patch delta 84 zcmV-a0IUC~1CRlbB#~_*N;OGDK~xAG1;IfPz#tF=uFKArr7zwd6ZGM%Jl=l_ypHa$JsFe0000(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMb&!7ByV>YrZn!F6reKB0*}aI1_o{+ z5N5n|x9$&6(8klnF@)o~?wO6e42nF?7xOu*@|2Yg8F+uMZ(6K;bTYT~15TgT&^HA| zCp_0mOxtkvfK=;$u6L0?wC_#l)~ROiW}T8G12jjq#5JNMC9x#cD!C{XNHG{07#i2> z8W`#t8H5-bSs55vnHcLDm|7Vayp2hWK+%z#pOTqY3D$vC!yLw&Pk=A`B& z=B8Se02vHs@rK4(B}eOlvQi+~;QX|b^2DN4hJeJ(yb?WWKi3e2GGjecJwpS7FGUN1 P${0Ld{an^LB{Ts5VU%qv diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsGold.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsGold.png index 5f4e4409f862d6907290a4937969251050369ba8..cea942e37d6124a2cdcaabb5d3849851de0d3c35 100644 GIT binary patch delta 112 zcmV-$0FVEg0*wKXBxzJhL_t(I%VS_b1FtSx{l~>em%|G1X&}h}Y>J6C0GC3n;xG;5 zVxny)=mmU!Cujh%QH3>DNQo+k04(LhAK4%hK3dfhF?ITh8GMBr3MTP zuM!v-tY$DUh!@P+6=(yL;4JWnEM{Qf76f6&`jq&IKtZVz*NBqf{Irtt#G+J&fW*wa z5hJyShH1A{L`3xTS#JY5_^Ec}zp6C9Y=>qY%_7jt^H`1Hcpte-z-Dx74< z>FP9NnC`UZk%FU_ftSSrou`hpMI~vQ>hrX2fcny zi4BVWo+6KY#BVH`7$9=^>jUpYF6ybfp1CpbM?5I3-mWkcXf1=MtDnm{r-UW|)vZQB2in#ODG+QH<9BqWnH!xe)+6xZbJI S*^yHK0000}8suQqNc%C?r+l8c`CQpH@FKArr7zwd6ZGM%Jl=l_ypHa$JsFe0000(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMb&!7ByV>YrZn!F6reKB0*}aI1_o{+ z5N5n|x9$&6(8klnF@)o~?wO6e42nF?7xOu*@|2Yg8F+uMZ(6K;bTYT~15TgT&^HA| zCp_0mOxtkvfK=;$u6L0?wC_#l)~ROiW}T8G12jjq#5JNMC9x#cD!C{XNHG{07#i2> z8W`#t8H5-bSs55vnHcLDm|7Vayp2hWK+%z#pOTqY3D$vC!yLw&Pk=A`B& z=B8Se02vI1@rFhXOU?!WWu-u}!TD(=<%vb93;~Imc_n(%ey$-3WyX4@dWHrDUy2q2 Pl`(j_`njxgN@xNAXDe+) diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsQuartz.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsQuartz.png index adff5bfdd64347a584bb6c91f221b26332e5e800..8b6a91b562d8f350da2e14726d5f36dc66f4c8e6 100644 GIT binary patch delta 224 zcmV<603ZME0{j7xB!9z6L_t(I%av1$4#FS|1zg}BZ>Ccj8ZBa#nxbY9cx|4h{IDd&CzFAvTq&BAqRpo3E{PYDI zz)A|vu&+FPlhLq5J{->aXd$t@sHfI|Au-Tg_lif@PM_^ns739#d7Ky6Z8i$GIrg ao=ZPPK^CYmM+{s50000 delta 339 zcmV-Z0j&P~0qz2jB!2{FK}|sb0I`n?{9y$E000SaNLh0L01FTR01FTSts}j400007 zbV*G`2i*f27Ap>u6KB={000_vMObuGZ)S9NVRB^vP+@6qbS_RsR3LUUE;TMOFfjCT zp#T5?*GWV{R5(wSQ-KbGAQ1Kcf3D5dDv}IALep=c9tpz}$ba0}IF9$cd+(?!^7Z0k z<0CCuh+B48j-$yVnB(%gN0eaSoS%Ca9np-Wd zVF8Hc^VkDN^{Q~8Bvh`luXsz@C84qeapE5WrwJ7X{U`k;E@T}k_31%HJAV;u@`Be^ zcg&ief2?YqRZQ5!MsFY5GU^s=#CXg0WIKM`wwo)@&p=L}aGoNV#?JkzI0v5LshU+; lCW?1GCiyrA0$NRKO5a667O3DDtbzal002ovPDHLkV1me)iU?e?te88poWRyVg?cy z^r}<+@+u8L03sxSgb+7!k@#&#B7Lc$2A1J->|Sj18sDm**IPxCYJlk(fxQFn8fqe` zflkd8bovm~zJkG7MQ{UPEX#@3stvog`Q|MG935f(dyc%e;18E}5){7IZF$K60000< KMNUMnLSTaQ??od3 delta 428 zcmdnWbc|(!iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#pZg(ByV>Y#UnYqVnAh_1s;*b3=G^t zAk28_ZrvZCV2!7XV~E7%(*B!5O$I!!#oR%WF0NBtBme!^_AS=b=b3r(%ek2*%SA61 z-Rktv3S-c7Sk`{Mtx@~agl^d#MlK<2d0+p2%!zxu`%eUqaBM!a#5Qf^eJu7(p5+2d z66@zyWI4W-*}9;tGpgy-{7lES(%+`fD(k(K>+Yn>xBoA5$r+aOr+d7sfeukEag8WR zNi0dVN-jzTQVd20hQ_)EhPp-uA%;d)21ZsUK(48kfx+9D#0V4(x%nxXX_Z(sL_>AV zVZ8YSs6z;3MOtP~YF=V)s#OV)!C(<@XqtRNyb>rY1(FTUPb(=;EJ|evNX*PD(erZ+ cQ7ALkGu1ORF!)lm5U7g5)78&qol`;+09_1?KmY&$ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsStone.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsStone.png index 7fc616745127bd4fe82b29e7bc600dd1f223d57c..895a5280e3922ba6fbfe9f4e82c07c9a6c3bb4fe 100644 GIT binary patch delta 112 zcmV-$0FVET0*wKXBxzJhL_t(I%VS_b0|^NU|8eor<*)*L8b~q#n_{93z@-qYI7|b% zm}uJxdI6u`2^v6bRAG%3Qlg3|i-<9RsIVY9im4in_*_6Jit!pil-~y|Hv#}c3!ybG SMh!Ip0000}8suQqNc%n(f$5--!i?uDi%8YN4Cwla9S`njxgN@xNANjg-u diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsVoid.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeItemsVoid.png index 88cd89ab4d00be3ca1f6a0d0c49003d5075a41c3..9e40a29ed5996e22e284dc5151aa2daec52f8248 100644 GIT binary patch delta 22 ecmX@eyn%6o%EVmFi94b=89ZJ6T-G@yGywozI|uIo delta 292 zcmdnMc#wI5iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMICv@ByV>Ymi~;Jfk0)P1s;*b3=G^t zAk28_Zrz`WUa|G6C9V-ADTyViR>?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`> zlNbRs2B9H0KP5A*61Rpqj5nVEH3)%hNXyJg%}dNpwJHHJ7%buqO+?PCzh_`DV2}by u2j{1ilqVLYG6W=M=9TFAxrQi|8S9zq85$UTDOw0Lgu&C*&t;ucLK6TtFKArr7zwd6ZGM%Jl=l_ypHa$JsFe0000(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMb&!7ByV>YrZn!F6reKB0*}aI1_o{+ z5N5n|x9$&6(8klnF@)o~?wO6e42nF?7xOu*@|2Yg8F+uMZ(6K;bTYT~15TgT&^HA| zCp_0mOxtkvfK=;$u6L0?wC_#l)~ROiW}T8G12jjq#5JNMC9x#cD!C{XNHG{07#i2> z8W`#t8H5-bSs55vnHcLDm|7Vayp2hWK+%z#pOTqY3D$vC!yLw&PkSBxFxXL_t(I%VS_b1FWp9|CLN37$yeegX9S zDZy~lk!``}0(A8Z=n4si0lIpuUcwhXL|~mtQqPj^=LqiJ#!!Mvv!wUw6QUeBt zR|yOZRx=nF#0%!^3bX-Aa29w(7Bet#3xY6XeMK_mjSa*!vtooc!fo)*`*s~ZnZE8#@b$sI3OD8a-7MNE#M7n7xTnP h8b_qmlnwM57>raW%=I{QE)-}BgQu&X%Q~loCIJ2hN0H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qJ}(UlDE4HvmlSpC!jLU0*}aI1_o{+ z5N5n|x9-nGH@kY(64!{5l*E!$tK_0oAjM#0U}&ssV5n*ARs=V?9$nLj!{^MGJw3FnGH9xvX|&arQqPj^=LqiJ#!!Mvv!wUw6QUeBt zR|yOZRx=nF#0%!^3bX-Aa29w(7Bet#3xY6XeMO-)&k*V1pX40gf3RJ$ zL66a>WgnZsThP?lRo(qW^x2A_-9 hB7y7~JqPwMFfbZ2O=;1XFcoMGgQu&X%Q~loCIC#pM2r9c diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeLiquidsIron_standard.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeLiquidsIron_standard.png index ca8fa99dba171786d90a7a9db174339f4ec3c207..01561cd6eb2c684840b79ae7ca12387e46e8ec39 100644 GIT binary patch delta 108 zcmV-y0F(cU0*L{TBxO)ZL_t(I%VS_b14oV=`LATk3dS%o7#}3ZKnTDLKo_UK0YrNN zBuEK{n~rP?J{O>?XFyj-C=AfmWAzfg@F6M?Ns^=33ls+;#nCvL7Z?CfsuuVmZL;hD O0000|&arQqPj^=LqiJ#!!Mvv!wUw6QUeBt zR|yOZRx=nF#0%!^3bX-Aa29w(7Bet#3xY6XeM*YXMh!{&0Wuv^ hTokVvNH$h7GWf3&`(b_jQZ&#S22WQ%mvv4FO#ox6M*{!= diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeLiquidsSandstone.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeLiquidsSandstone.png index 788e7fc68ac813547128ccdc977255a365d73c71..1a72a56f4985c9f19a5f088966abb9326e839a56 100644 GIT binary patch delta 176 zcmV;h08jt(1mOaZB#~{He~?K;K~xyiWsgU015p&iL_g=J4`Nq0t&`1fKH(OdYJ?l?bkTWaAq~b?BvA)&H}ps!JEUCeEfefp_nJ)M0_+ e3?^M-fBOr9j|!CfeC_H00000(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#o6_YN#5=*s)rd*@&lD|7I;J!Gca%q zfiUBxyLEqnf)hPm977~7r}lI59ai9B*{is;T&(Cz-sL4f|4V20v}j#*Iw58FO=;29 z2`f%0gq_>zafKl|cWz^!w#Ex?53Umj54^0|dGB5S^X!^v?JKi9-k-Gm>a^x(pz~bS z&L-aa3l$Z%jxWQ?s*dwSCGdNm-?iq8&5B8Erj;)eoc~{2mJrNmHhsyqZzrCrTLm;O zZ1A|Y>PG(lrhcv|(;ea~fUZ+5ag8WRNi0dVN-jzTQVd20hQ_)EhPp-uA%;d)21ZsU zK(48kfx+9D#0V4(x%nxX1!&t;ucLK6T<;GXXQ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeLiquidsStone.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeLiquidsStone.png index d52e8e77fd4ac2b3c59f98a68a4f0b5e042682f8..b04d1a2f4e92cf3ef56e306943961890332296fc 100644 GIT binary patch delta 108 zcmV-y0F(cU0*L{TBxO)ZL_t(I%VS_b0|^NU|CLNx!5Ah6f#N`|&arQqPj^=LqiJ#!!Mvv!wUw6QUeBt zR|yOZRx=nF#0%!^3bX-Aa29w(7Bet#3xY6XeMsb+kl<7L3C(=dUVD_&vIYIf-cnOiMPg0Z&OA`Xa#x*TWnWD9u1+QmF^ flEx7!HDv>R28O_e7iNk9-3tPqu6{1-oD!MLzB#~__SVKufK~xCWb&a_VfItufhZ430`zr8K!O?$DBxn%rBr<&P8E7Yx6dox#Fi2xt+luG!dMfY`V9Vm-L+*9_xF`6YybcN07*qoM6N<$ Ef|0c-j{pDw delta 373 zcmZ3%xSM%`iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMg4llByV>Y)*tyVj{}u)7I;J!Gca%q zfiUBxyLEqng07w}jv*Y^OM4G;9x&ixzACtb5)WTKnd&Qdrk>Bdf)aA2tUXs9NG0QIe8al4_M) zRG$i@8H@}JjdcwSb&U){42`S|jI2z6TvICpgSRn>5hyxx^HVa@DsgL=!+7%vP=gT2 zinPp})V##pRI3sogTXT1&}2=qLl;n13M3nxpH@55RjOeSEA?V8lq5UtY@lc VXkhTAXdzG;gQu&X%Q~loCIEtHbu<6~ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeLiquidsWood_standard.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeLiquidsWood_standard.png index 70564fb2c0a46a8464d576737f7676fb8c623b8c..a3c0a60de22e7a33070042c70b953086af4cf1de 100644 GIT binary patch delta 22 dcmbQs+{-vYWn!-C#4XmG44$rjF6*2UngCU*2Y~

H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qJ}(UlDE4HvmlSpC!jLU0*}aI1_o{+ z5N5n|x9-nGH@kY(64!{5l*E!$tK_0oAjM#0U}&ssV5n*Z=?k diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipePowerCobblestone.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipePowerCobblestone.png index 99b8e7d03bcd63d9d78b66b2c4d7a52e6ec6a967..43099210c1c5b7ef1f1413641b0825b50abb5bc2 100644 GIT binary patch delta 117 zcmV-*0E++m0g?fbByL$rL_t(I%k7h~3cxT3M4u(s|Nq`Pn5jdJfkK8tiQ`k`yhBJO zDFPz%fRHrsgT?xOL96b%y?6lkl3QgMfPrNbUrCxNn)QB=!m^3&lm>XYmoZke>|dY* XGMgcp8#?P*00000NkvXXu0mjfyNNYt delta 222 zcmbQl_=|CZNax zfnmbri-u?RpLlfR$bm$rNe9|CvML$AlK9YSa&cpW_A0iOj3VqxM=x5;5|?1Gx!l*- T&}eoQXe@)LtDnm{r-UW|iEl~5 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipePowerDiamond.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipePowerDiamond.png index dce4a65868cf7c833b3d23df72db43c3e30b7aa7..80d490943f3f4531ce783d67e9dc7fc696b952c9 100644 GIT binary patch delta 118 zcmV-+0Ez$l0h0lcByUVnz2BHCw{Q0_Zzfougi;D+(*f+G7P}Ll8KMBnrM;xz!kPlY!;rN`Y6v>)$;!W YCsBMZ9FC~3umAu607*qoM6N<$g6eiRPXGV_ delta 222 zcmbQt_=|CZN76MgydAc};SokN0CpfVG-v00Z`2!3tD;RXxrW_8im*HXf z$<2HCZ?{UHFV7l&l}6rVZkMDhh7Wi%lad+JLwNm|HTYe;78hEmq;hRGW|+u#oz>Dj R;~CIc22WQ%mvv4FO#uIKL0|v? diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipePowerGold.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipePowerGold.png index 35e1d51b3d580115bd91920176bd56db59364708..b6f57e64d1ddfa7e8055af555942e5fb134c136b 100644 GIT binary patch delta 95 zcmey(SUW)_(#6xoF~s6@a)JZ%dcCN>|IZ)zARjBE!Zs;cfu(H$qk>}zPq2>%PmY2I zlk~A?Oi5P^AADB7m}qc>XMu%)X5X=kdk!!#D3^V-yf5ik$^ZnOu6{1-oD!M<-+Lp) delta 222 zcmb>Z%{W1&o+aJU*O7r?V?XzwL{EgN+> R#ewEBc)I$ztaD0e0su1eLWckV diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipePowerQuartz.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipePowerQuartz.png index e4a516eff0e846723a2253b9eaffb60cbe7600bd..fad03aaa4e83be196117ca528421f8f8f14a08fa 100644 GIT binary patch delta 193 zcmV;y06zcU0^I?SB!8qyL_t(I%e7PO3c@f9%=^EbFch_{)~;QgiqCL*!bG=LJBoq( z(Q9(~A|ey({SFYplqcuRYR1p(b_rPl-!=sT*O(PJ>){Uq>{+7$14qzV{r&|8k{kc| zW*qTUP9ar6iJyEM6tn-FLAAi3HtSTpg+&6@L-e+Rb_PRlA3E!CA8TYrf^EI8QG-En v8+3M!WSO}NiiTJ%aEfi+F@@uH(K+7%tg#i^)fh~M00000NkvXXu0mjf`mk8y delta 324 zcmV-K0lWU)0p9|UB!2{FK}|sb0I`n?{9y$E001CkNK#Dz0D2|>0Dy!50Qvv`0D$NK z0Cg|`0P0`>06Lfe02gqax=}m;000SaNLh0L01FTR01FTSts}j40000QbVXQnQ*UN; zcVTj608n9RZgehAMN}YmGcGkQF)%Rna-jeK0Ix|zK~y+TwSQCX4#FS|?EAl*$)Zuo z5E-m)nmt3^Ex{-s216v=4_dg=yObzeqdkcbt^0E!X4Ec;$M8H(dbg3C5@!xF=zZF5@H}T@l?%-TH{Z7nle->&8s{gh Wu@%}BSCR<;000000000NkvXXu0mjf>{2gK delta 222 zcmbQl_=|CZN76MgydAc};SokN0Cpa*3a&rFvZ*0IIsKwCP_~gP-!ynEU z7$!`i4UzN7dJL&uVP!tD8jCE^rFQqaR~;dGe^Ic T9^su2G?u~B)z4*}Q$iB}*8xZG diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipePowerWood_standard.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipePowerWood_standard.png index 83557735dcdb9952f93b6365208286150d9fe4c2..9c0188567802de31b62396743223dbfd25de6c6f 100644 GIT binary patch delta 22 dcmbQj+`>3PWn!-C#4Sdg44$rjF6*2UngCPH2W9{O delta 291 zcmZo+oWeXo#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qJ}(UlDE4HvmlSpC!jLU0*}aI1_o{+ z5N5n|x9-nGH`99664!{5l*E!$tK_0oAjM#0U}&ssV5nA(~7RfRg%BAlcyj sw370~qEv=}#LT=BJwMkFg)(D3Q$0figD*u3fyx*>UHx3vIVCg!0F@n3e*gdg diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pipeStripes.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pipeStripes.png index 2af4334c06a70877e2ef19f36841e9fe2bcb4db3..b3c21147460a85b8495e81be9a5c224e2c261530 100644 GIT binary patch delta 226 zcmV<803HAB2HFIWBe85@0e`_sL_t&-(4nJ za0`Jja-|jHrFk;E$5%L@LheWWdA5>XO!`Qvt`?#TUHcs z%Q>w-UoYRF@HtsSrZcEprn|X9W!i+vOsdQM3i{MKD=$ml%WKHdi(jy0QP8f8*N#zP0v#+8Wolx#=$aT$yU_kKNzSbrD}8 zxA9+l<{5j5e~d~Kq<8V%KeYwuAJr1qh?11Vl2ohYqSSgI&0u6;Xsl~ssB2^pVrXP# zU}R+iMBIVjVr}aa4GHGcnjTwxD;=yp7^hzz{UT*r*q!n6E2tQ`T1F?ROa(}xm+Fy1ZuU~ z)6-M0*L!<=TP~M??RL9TspN9GkB<+r*=)MqZZesaxNJ6CEPodDdVM$?9u9|-$pmmV zoB4dc!{J~s7(^nGh{a;ipP!#_I-SmBGDRX04zfj|Pylj&yWQU1-7zUbp^#dw)@rpk zH#cx9m8x7WUtCgoy*mQjTK{QL;{fBv{HoK7baIofD6fH0@gXs)lX*_}$I zkOBDe@=~o`F?)Uq6JWevC4Crt;R;$%`Jnr}VA{Y!Jz-qNF77J+^dGqP>5n}4Ix2(1(hm&s(ffL!t|6bgI- z@){_V8UFu&vHodh4c^HLF;Yi72Xf@o>-9<(E-x=hi8nzcf^#P)C*)wUSm02%oj{r&w5EkA{3004R>004l5008;`004mK z004C`008P>0026e000+ooVrmw00009a7bBm000XS000XS0e@s)kpKVy8gxZibW?9; zba!ELWdKlNX>N2bPDNB8b~7$DE-^4L^m3s900It4L_t(IPk)t?%SyUY6vdC1(!78d zl*-h+-|~XDB+N?=G!Y}gl+=-kMiWPglHf3$JMk5K2Wcq1l>Op+f&c%5Z*bPyXYaMv zKH~cNx>BiVG@4?ucye+Q3WXYtMyXU93%Cqty>D-Ckpb9jHtY2|N&K0%T7RudrBW`J;}s6|KR-WTUtbsi z#1Ehl!sT*ZU0wP8ev!-NaE1ZN-*`Nx^!xieolcVsDFZqjj@4@Q{{B81jYK#cMu5#` z`~3Wrnvpk0x7$sKk|abb6pBu#!$JfcAwWDmJ;B-S_EajBNF;*6ARz0LjA0ir9*>Kc zmzTG8Pe9PrBM?hW!3#Eqp{}=0@X4>GLtPmsZi043#96cV7G~w** zjFfm2L?Rd`lgY^8^70ant)u7k^pt&*5*YyU8dwX7RjXA&>BYsxe!r&y97d^Q8?(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMa6o?ByV>Y)*tyVj{}u)7I;J!Gca%q zfiUBxyLEqnf?=L6jv*Y^LwgT0HW=_QMJm2!5faZRXu9<`-RNT7lTv;Q29u+WUd6c! zj&aY8OSsm2nCHsYYqBk`eHJ)RG|=o|)nnOgEV>{(a!qAb(Y!-nYSIep|K69c@!|h? z?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`>lNf=b zAvZrIGp!Q0hB=Hkp8z!of^103%t_5l%uTf_0WuiO;!SoxHR0?A%1VJ`gY(l$$`gxH m83GbB^GfvmTtgJfjP*?Q3=Isv6fFd*V(@hJb6Mw<&;$Sw^L=gr diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pump_side.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pump_side.png index 2167f78a3391a953cf4f3a550c500ef184316abf..6f28c92ff0bb9a73a469b9c6e7a011c5e0bd460e 100644 GIT binary patch delta 126 zcmV-^0D=F|1f>FyB#~{6bYDqCK~xyim5)IRfG`XMXSG4`8UFuG{zI*-hqfx>#T-I1 z3}FMmOQlQL21o$(5_WFJplWz6M(9YwIW>?Jd$5f*4Ja~`pFn|c5ZBR`W3FKN%25G= g0=nx1m#KU0ob2=~NzS>Q-T(jq07*qoM6N<$f^|(dF8}}l delta 425 zcmZ3=bb)1piW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#R>I{N#5=*!aTcUrU8|47I;J!Gca%q zfiUBxyLEqnf>oX_jv*44=brTxb1)Eb39RK%bh+PccJn`zY>nTstZ(m@n7n;na@d47 zmhp6%%y-iMzztvh{YfBe3;$2aD4aVRbo(TZ7n=q~@9U=6Mvg?0AdfX+}Yag8WR zNi0dVN-jzTQVd20hQ_)EhPp-uA%;d)21ZsUK(48kfx+9D#0V4(x%nxXX_Z(tM1Xb7 zVZ8YSs6!BBMOtP~YF=V)s#OV)!C)3|tlBt711Kp4k_^sID=AMbN@WO0%*-p%^K%VR bC^ObG)iX3O_)@eGsEWbU)z4*}Q$iB}+R=|~ diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pump_top.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pump_top.png index 495426b65e504881330f9f053ae97cb7f2788603..d877e22e7eee0a45e984f73a3ca30eba77eec4c3 100644 GIT binary patch delta 22 ecmeyt{DN_U%EVlciPwuc89ZJ6T-G@yGywo=jtI2? delta 291 zcmaFC_=9(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMQ?e=ByV>YVV>PF(}2o23p^r=85p>Q zK$!8;-MT*$Gt25#OI#yLQW8s2t&)pUffR$0fuXUkfuXLEL5QJ|m4T6!36N`QWnl0& zCNTnN3_?S0eoAIqC2kFK7;ioSY7hk3kd~Q~nwOZHYE=ScFqp-go_S;`3zXEC0?7vF srFVdQ&MBb@0A_AeF8}}l diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/pump_tube.png b/buildcraft_resources/mods/buildcraft/textures/blocks/pump_tube.png index da048389710af932933a3da82e25134ec8d13cc3..d2f544d78fcbdc5f3e77e7f52d5966bcf5749f27 100644 GIT binary patch delta 23 fcmdnavYcsx%Ea7RlQkI=I2k-${an^LB{Ts5U?K;} delta 291 zcmZ3^w4G&wiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#kul~N#5=*TEY9S%mXUpEbxddW?KLZC7RPgg&ebxsLQ00rz+Z2$lO diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/quarry_front.png b/buildcraft_resources/mods/buildcraft/textures/blocks/quarry_front.png index cbbebb58d6609207f0e6698fadc31bfb9ce76651..140735da8b6b4d77f7055cf80c0621de7ffa4644 100644 GIT binary patch delta 201 zcmV;)05<=F1?&QlB#~{3f2m1CK~xyiMa?@>!$1^7(Y`&;mW)k6Lcso4M->JYAD5-k zG@;K14g!crYV>Kyl+*MuYV;Bkgpd*YB4HAQ(A?UpWIc{mKo zWhsi{k%3Y=-*kAip~M)Mn}?Y1Yip%v;Cp}Bj;tr|TY2XC)T1*@Kd}7O+753^+-88S zy16gMSDJo5>izoJO<7a>F{dvb*|j%&+q;7k_UiltDS=W!O3%Vv00000NkvXXu0mjf DMJQmn delta 480 zcmaFE)XX|T#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5VsAZTlDE4H=f|5%-vE_y7I;J!Gca%q zfiUBxyLEqnf*U+t977~7`}W-SV>T3Uww)Qx)S?m{B&H#9YU}_1%_`j!URBOWK5gXC z*gCbDGv=z|vX4$}44s-wSHFI{$SF^SPwHgInF|LBlYZs@SUc@xX0`~k;i+Sp%aj9L ze@55Ox$L^|>giS%rBhRm9y`xw<`G?1?zi{d``dMIMZbNJ5O=G$ve_>aKbx_A`(?eB zuYVtZe*OCj^9p_Y^lPQL&u>LbFHYOpRmpnBmE)1gnyRo#4@Bx1*~__}w0yZN19ZG< ziEBhjN@7W>RdP`(kYX@0Ff`URFw`|N2r)FWGN?DQG6C{Utqcs_#w13d=*Z1a$xN$6 z*MZP5hwK{d1uHLyV;EDhM002ovPDHLkV1kv3V9)>n literal 503 zcmeAS@N?(olHy`uVBq!ia0vp^0wBx*Bp9q_EZ7UASkfJR9T^xl_H+M9WCijWi-X*q z7}lMWc?skwBzpw;GB8xBF)%c=FfjZA3N^f7U???UV0e`PGJ=6YykO3*KpUV0Q^~+c93R<|6-t4;b&yvfwY~r^&Cf9y5X?q1FP*++p6S1oakC`m~yNwrEYN(E93Mh1q)x(0^2Mg}2H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5VxT-@lDE5y=+hfN7Xy`X7I;J!Gca%q zfiUBxyLEpi=1;9xEpd$~Nl7e8wMs5Z1yT$~28PDE28Oyu1|fzmdKI;Vst02^^sy8r+H diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/refineryBack.png b/buildcraft_resources/mods/buildcraft/textures/blocks/refineryBack.png index 87bada3762e7b86923da59f38499db08e66e7207..2b92456171822d0504fe8c14312291aa884986cd 100644 GIT binary patch delta 109 zcmV-z0FwWU0*V2UBxX@bL_t(I%VVf#VE9i7W`Hsnknn#r_J16541>!6Y?^Rk6m_Fv zFucNm0g4HxeKd7o1CB5=|NoPpk1T=H1q?{);Rb*>AVFdcfT>51MzSyf0l60%jiCI_ P00000NkvXXu0mjfT)8T} delta 239 zcmeBT>}HyvQqNc%M1 zMG8<*s>C&-Bsf26GZ;Kw{an^LB{Ts5xI|qf diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/refineryBottom.png b/buildcraft_resources/mods/buildcraft/textures/blocks/refineryBottom.png index 9a92af19351008c884233e92540d9f78e5539665..b69d62f07fac3dd04b1b8489e8e1414f25333322 100644 GIT binary patch delta 100 zcmaFE*vL3RCDy~!#WBR5jgR3=A9lx&I`x0{NT;9+AZi419+{nDKc2 ziWH!rREcXuNpOBzNqJ&XDnmeGW?qS&pKFLhnX#U!o}q!km!gG0RneX&zJ9FlYZ^n!Q614^RCIH60=5B=B!7KLL_t(I%VVf#VE9i7W`HsnaNz%hT!2j;r!(PxB!mfuG7ukOX8!*tKmUIaBO{pochaQ) zQ<<1h4FK8v^yyPLMm7MX8KiLs6k7ttUI1wZG%sM!t^_auN)sUx_tv@k=>Px#07*qo IM6N<$g8XJbyZ`_I delta 260 zcmdnSxPWPbNGZx^prw85kH?(j9#r85lP9bN@+X1@buyJR*x382Ao@Fyrz3 z6)8YLsS?+SlHmNblJdl&REB`W%)AmkKi3e2GGjecJwpS7FGUN1s`@=$978Pp?@l<# z+n~VX8n~>8SGzopr02>BlO8@`> diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/refineryFront.png b/buildcraft_resources/mods/buildcraft/textures/blocks/refineryFront.png index 2a0992e3b029d34951f62e043ce97fb2e6f62bc8..392cd3e4783328de5e23a6d6f0b46cf4282da0f8 100644 GIT binary patch delta 127 zcmV-_0D%9J0-OPmBzR*GZx^prw85kH?(j9#r85lP9bN@+X1@buyJR*x382Ao@Fyrz3 z6)8YLsS?+SlHmNblJdl&REB`W%)AmkKi3e2GGjecJwpS7FGUN1sv13A978Pp_x2`o zwHoj=b6bDtd+^j|n!)W|9?_fPAIa66S5XV)o0$KRRc3>Fhn(xTbGE$Q_lg^O!tpHtotjrN=qBF?*{Gx<7WGj8^|9T9~}>rPYdiRvXvbC~_!! dy*s^walJmjmiK;*5}<1sJYD@<);T3K0RRcrU|;|M diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/refineryTop.png b/buildcraft_resources/mods/buildcraft/textures/blocks/refineryTop.png index 9c52f56632b41d0bf4930524a817d5ca0abf9ba7..0b086233f2bf05316cea3f60ae5afbf1eb8a293d 100644 GIT binary patch delta 101 zcmaFM*u*$NCC<~+#WBR5jgR3=A9lx&I`x0{NT;9+AZi419+{nDKc2 ziWH!rREcXuNpOBzNqJ&XDnmeGW?qS&pKFLhnX#U!o}q!km!gG0RWY6}jv*HQZzno( z9WdZv`QG?%rT_MIR}$9dD(+M>kb1O%;~?V;Eo+Dp_U6Z%11)0kboFyt I=akR{03QHQDgXcg diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/refineryWest.png b/buildcraft_resources/mods/buildcraft/textures/blocks/refineryWest.png index af11bb37d9dc9f9ed1c546d7f1ca2d0ed79dd8a5..a852b90b44c8eb83b369d73bcbf154e33d9f4df2 100644 GIT binary patch delta 156 zcmV;N0Av590=NN?B!7QNL_t(I%VVf#VE9i7W`HsnaNz%hT!2lUfdN9`#JIcx4+D_c5oYH9fAaJH2Qe~&*?%WZ z`ahM43E2SLu>ev8(hSnL1BxwyVlRL+16mk7efkuR$?*bK3>5%V0TTB&4WtSH0000< KMNUMnLSTaGNI)pF8gxZibW?9;ba!ELWdKlNX>N2bPDNB8b~7$DE-^4L^m3s9005Lp zL_t(IPu-Bq4S+BVLjz338Z5#H?102B48SUt7y=aP5+gosFMnJRhu5UB<4ToIMBl&w z)EG3zH1MH-n2GbO&gL$X)H3bWn!+<#Ell544$rjF6*2UngCQk2W$WU delta 291 zcmZo?oX$K!#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qN+S&lDE4HQyORdP`(kYX@0Ff`URFw`|N2r)FWGBC0-0dh^P3=H1J zBt`&@L1@U$PsvQH#I0ctW^AdAYtxA9l2D5mBJsoE!0VVaNK(fL4 sX(i=}MX3w{iJ5sNdVa1U3T4K6rh0}3249L60+lg%y85}Sb4q9e0Ov|l2LJ#7 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/tank_stacked_side.png b/buildcraft_resources/mods/buildcraft/textures/blocks/tank_stacked_side.png index 9393f2c27aca7b3fed4b13512a85d5140bbdf108..21be4ac9e16890b57ae5bed6f9d0e599d4afe404 100644 GIT binary patch delta 22 dcmbQt+{`#ZWn!+<#EmAL44$rjF6*2UngCO42VejI delta 291 zcmZo>oXk8y#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qN+S&lDE4HQyORdP`(kYX@0Ff`URFw`|N2r)FWGBC0-0dh^P3=H1J zBt`&@L1@U$PsvQH#I0ctW^AdAYtxA9l2D5m>)BS&0fRg%BAlcyj sw370~qEv=}#LT=BJwMkFg)(D3Q$0figD*u3fyx*>UHx3vIVCg!0L^((v;Y7A diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/tank_top.png b/buildcraft_resources/mods/buildcraft/textures/blocks/tank_top.png index 6cf5925aba7a818a320fcb644f68386870b365f0..ad1a84af5c690489476d4e3c87d379bd6b463d26 100644 GIT binary patch delta 21 ccmZo=E}ft&U>cv7h@-A}a#}17mTJyA#8@b22Z19ED_$AYTTCDm4a%h86~f zUqGRT7Yq!g1`G_Z5*Qe)W-u^_7tGleXfsh!Rh}`)+uemJjk_iVsEo6~BeIx*fm;ZK z886+f`!ms5vtG5tHKHUXu_VKYk@7#dj_7+IMBxu#YI25(~$ zBY?&rH00)|WTsW()-Z?h<`bX>L68k;nK`L>iMgp(B|rv)S-eqD+nRkqNqs4hY;b;B qNqJ&XDnmeGW?qS&pKFLhnX#U!o}q!km!gG0WelFKelF{r5}E*;(NS># diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/texture_blue_dark.png b/buildcraft_resources/mods/buildcraft/textures/blocks/texture_blue_dark.png index c3b97fe0da324873118501b6a4d55c70d9d42699..fab53b422740c5a63da554c72924e2aec2777aa8 100644 GIT binary patch delta 293 zcmV+=0owl92fhW6Be86Q0e=AkNklK6l}44Cowp8}A4 z^iz$Ik%?82@ge^&K2Ao)hYGj(m>KmLZ}Ui9;QFa|(Ey^^g7L1(F@7CJMu_Rx8J(}{ zJbr3vKqhpA+k@%=%|1JqaWk13(o@>Pk+8+b!EIIvps|{ z^zLtYt~>8^?&@8U=lcY7mGje=A0t7={eLHN;cmz&M!t}T*Sr}2TzUR9^^B~<%{z?g zjGO%!7u(A-&QD_8%q8`TF`H$swC6SLiwE^2xPGd=Wnz?kClqzze$ek3LNQBT`+U-2 rbiSN$*5v;Mql4U6Z5mV#+c5$Ft65veNH?3Z00000NkvXXu0mjfv>%dQ delta 575 zcmdnTdV_s}vO5Dyx}&cn1H;CC?mvmF3=9m6#X;^)4C~IxyaaL-l0AZa85pY67#JE_ z7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG%jM#WafdIrWMZ+DlPi`x|9feJYbJR*x3 z7`TN%nDNrxx<5d}c|2VlLnJP<9_(~J7$C#&Ab#_$S++va^Hi55UlxkC>Nt@+bJ~=W z=P&eJm#?ee_nui|k<6D59Ebag{Nyg`74%mg+iTY-tp3MBfs@IHZMjq8%w%u684K}x$E!dW{JFsI{n(d)$zn4Pa!QtQthKwL0aGVz>hy|Q-Hiouy zlEwuCT#^A-(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#aH!=N#5=*9v_&lyaFoYEbxddW?H>fA3WYH?)FK#IZ0z_8v}*T7KM$RNbf$jZRT$^^(YwK6bx z8ckG8hcvEwN{-5sg+jSP;-mW+$S1x zzx)6H#q)qysZv{5T&g#~iG$@8KhRa2TC+u{SQ}J2*cx4;ULUZyn~>`IhOs#qA{kqB z*xu)Si_!6#&2KBR;) lfp5k?IzpSM{Qjww`~&~b71vX5W)c7Z002ovPDHLkV1nMDa^nC1 delta 519 zcmeBUS;aO%#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@6A|GQtW0JSKOUM)Ej-^0#oCO|{#S9GG zLLkg|>2BR0px`x67sn8Z%d-71!s<8M3f7D`r&d_&GxqLQ+sVmpSLlk z@p1Prl-nu%{-U62p!_50hc5GyO!+@QMT0-F|35E!-Kf4I@D0$9swJ)wB`Jv|saDBF zsX&Us$iUE8*T7KM$RNbf$jZRT$^^(YwK6bx8Exz^vbFe_5b{GC&Mf^@Ee~ zr351vx5%sS3XE?BSgvdR;Cv>{Xz-7j@e}_!neVLMR2hGAFfv-a5@-CzeVoIH@s;>L z=HrHp;+luVITY?GGcun1X?Mhyk&)eDkL4|+uRQPBx!(&OvS(yu=6|!<><6@Bs}JMt zhgN_18TD?6Su(!3CarPClyR@ki<^v5jK7XJKUBCVCiwN7!ey`HjDnUTjErkSpWG9B zB6TYes8{kOzX!+sRK^n@Rh1d9+*W5)x8PtpZN|7`^b&)jw8h(ejKVfw*>r0Q-%Zh=D`8i+ zmRh^ro_LO}#avVSa_+aDZOK+|u9*d#Xq|g^Z|$!7hMjTG1q^hn-F5d>&9VPz{MU`k z@4U^&J(Z2Q=LLIKs52Mov4_9eFxgyGHunCVCJ&{0j`I5N5nG$twQo0FQm9yCZ>!E5 zTNdv$l|y2EzM9ATf9+1?_N8yRW0buj?|g{%V`q+lT4@JbqnC3m9IiC9V-A zDTyViR>?)FK#IZ0z|dINz);u7AjHtf%D~9V1jseDGB9`>lNf=bAvZrIGp#Zgw~jfC zH=h7?2!gCg%gjm5OUzBRDgiPW4B{;h-sA+vErS$DGB`i2q&%@Gl_4N8Gp|I?&oxA$ a%vjG<&(Of&OVL80Dh5wiKbLh*2~7Z~r_dn) diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/texture_green_lit.png b/buildcraft_resources/mods/buildcraft/textures/blocks/texture_green_lit.png index a9ba3b94af594a37ce18437745161cbea09c611b..7be1e93dd5b7fe8ba2d5f0c55244ce4a2874f8e4 100644 GIT binary patch delta 206 zcmV;<05Si82HFFVB#~|Nf38VHK~xyiMa|nH!T`|_e&B#$#p+sEV7*vkqiho@)vdrb?AWdCMf-J)_yC#-tr{FA6gk52iPUMx8ED6- z(8++3ZbSWC6TQ9^ih~PDyUHcQkt^5vjn=rVhRE%m9D;$#7=8C1M27jJ!qYT*p5bNg zb;?Za?XL-yb!35e-484zq0jMTz9eKs4~E%t5l8-g;oDF83twyzTz?4o5dZ)H07*qo IM6N<$f*Pk}tpET3 delta 501 zcmcb`+{iXT#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5;YpYQnspMlCa3p^r=85p>Q zK$!8;-MT+O!6Tk7jv*44UHfhZ9b({d^`Gdpu_;HCi*@SSHDYUAr^K>G{`+6=@!_EL zNHLE540A8xvvF5cz4Tz=?vwR76U zCyeqnY!BxgNqV{FTF}j$pHYXTroZ2BtY#)#(=5Ns`eU`tzm0VPx3Zxl~3=EBR4GeXS3_=WztPG5- zOn_WdD+7bKF^Lfzopr0B(B-9{>OV delta 296 zcmey)(#}3X*`0wU-O<;Pfnj4m_n$;o1_lPk;vjb?hIQv;UIIA^$sR$z3=CCj3=9n| z3=F@3LJcn%7)lKo7+xhXFj&oCU=S~uvn$YMqoOUN0s~``x4TQqp<6pRfeJYbJR*x3 z7`TN%nDNrxx<8v^7=;+?RZCnWN>UO_QmvAUQh^kMk%6JHu7RPhkwJ)|k(Ggwl?jk* zYGq*XHYPCwXb?g}ZhlH;S|x4`a~N+v0csEg*^ri*lbV;9n`%`8WH1=So1VybT@RGh xmjcNK=ckpFCl;kL1SDqWmFW4ohA5O7>zV2q8W?;jS_o9e;OXk;vd$@?2>=u^Q?UR5 diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/texture_red_lit.png b/buildcraft_resources/mods/buildcraft/textures/blocks/texture_red_lit.png index 247b67ff34f356221cb4937150039ef15fba6df1..74a8e8528d1e9649dc803bded0934ccdf13afa28 100644 GIT binary patch delta 209 zcmV;?051Rd1|NkU2 z5y=)xTjdJdszSO`vTG0f2W5hqL-hvDJqU>wN6?1Y?xe>$C*7>A*X$DpLnEio1mpZX zkjO6bY*M)F5<@D}*;UqSPjD^F-6$j6_7RKvoh6L2YQcTLL!LbrN18L9p5r8Y!7D|{ za%C3QZ#E=T#5-a0@wxh<$9FCH5o^X2Y5uG7V~_@EG_)+t|2i4}O1=?C_zJ8l00000 LNkvXXu0mjfF92g) delta 507 zcmX@d{DXCZiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#pm^mN#5=*?g@KORs)rB7I;J!Gca%q zfiUBxyLEqnf~P%Q977~7%l5yHI%FWg8oW%GMX)7Hd&!+GP78~KMW=Rmz4&cEY4;z` zPrm17`u2SEYKZ4@(g;47u-Z=iN=w`|W|j*Ny3)9nTA6ItJ#;(&QF4lKwfCiWJ7$=? z%34%^J^jE0>)iY4{F}T^_8OU=n^~fAvArP5W|xWF>AOBf#bPY!e>bhZz3S(YsISc7 zCm%-2?n!xPs;-srIqlZF*bD4W>|X1(CT@SOFnQUn{~=c&zOJrr5vh~9$GLg(bB}vz z`&-nj!j@dy^2A#ES$$`7z1KcLcaOPu`GNjYEpd$~sZU8PNwrEYN(E93Mh1q)x(0^2 zMg}2<}luT0@NS~vLY=rCp9lIH`S^H z$Y3ytHw#P?5d}(0fh4tp^V3So6N^$A0unRxO7#3(Llnx4^-T2)4Gg{%Ed(lK@O1Ta JS?83{1OPCNyfXj* diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/texture_yellow_dark.png b/buildcraft_resources/mods/buildcraft/textures/blocks/texture_yellow_dark.png index 48a98f40c8df24c5551e721d81eb5c815253cc69..3b248c3c708c0c5199625e711ded4ca62bf8dcc9 100644 GIT binary patch delta 263 zcmV+i0r>v22=E1vBe87K0e|L6L_t&-(_>^{1cP7f|CvDaPexuwG$0G5zrR$3Ftnip zKkw*#;br{6$*6W;laukCFhYy-Uls`ClsV&mC&q1z?1pTo+#y2yoUbW!Fp4<=?Y#6b z1gP-*gP$CMj7GZ4Wtcwrfb98l!|v>7#?+%WK&^~tE+sQANCatA_k6so!gy1I@ek`k z2S&zK0*qzMjEpxnRCZQ8x#ReU^$#m!<8L;`hT@m1^Pko-bZER`V@x|7%Xs{=BO7CT zswmK~cZ|8S{MUy);<^#IKdw$OX<`B6gq0DcJ@b+o89PO0PlnU*?|}dS N002ovPDHLkV1m%$fC~Ts delta 587 zcmeysx|w5wvO5Dyx}&cn1H;CC?mvmF3=9m6#X;^)4C~IxyaaL-l0AZa85pY67#JE_ z7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG%jM#U?P^^8g0?k>|NW@=jk)o~VhL>4nJ za0`JjS#Q0h_mM+O~1) z=JJA)r22xgg2K|`?;pMhef;+D+t=j8gzXz1f8gif;o{>I<-7cmKV6`^qlYUnxxcTY z^XkLIr@hGrUFpF=f}S2eUVWc}y$wSWJ+68M`<_2xl6wBsvvViUo=y+Y|Ddb$Nl#Bx z!&F;)eSlGt#_Bbz_|n!TuJzrrcJ-?Dc?lV7GPBb3y7TJ;pJn7eH4P0(_qd#s{k=Hn z)e8}gx1Zj;TbXnsl|Q+6Tj_ND3-6y^dpY@i`iun2iMf*wKG6(*+GE*W`7@efwS@!I z<>}j20)tMq#5JNMC9x#cD!C{XNHG{07#iyu80s1sgcurG85mia0J)}C1_p0q5+mRm zDnL4N^HVa@Dsk(W!+7%vP=^r6inPp})V##pRI3sogTWx)&~TyP?|z`H6i7BWKdq!Z ou_%=xATcwqM9KLZB)JPgg&ebxsLQ0Dm9h>i_@% diff --git a/buildcraft_resources/mods/buildcraft/textures/blocks/texture_yellow_lit.png b/buildcraft_resources/mods/buildcraft/textures/blocks/texture_yellow_lit.png index 7e1814f3deda5eab192e08a7c76cc387c8211bf3..b85371dc0ff730a1ee4aa89b9fce73e39ff58523 100644 GIT binary patch delta 213 zcmV;`04o2Z2Kxh$Be84`0e`efL_t&-(A_4&b0Ki#mDQPQgHY!QEa_7jATSRXE z|1BPx9~gp(kjZGuv`mm?CI`&sqnHAUrFf3{cp)h-rj;e}a#gJ^TA{Jp46Cr#0(E8W zbsOO(*s9nLy_mWl9fM`qwuax6ser zLB_p@fX3r^f6~;52G8WY486XM25ILVhQ$ODAD?_t_Wc80C8WQlk-s+o(e@IwS1L~d P00000NkvXXu0mjfOVVOx delta 510 zcmey(yqIl*vO5Dyx}&cn1H;CC?mvmF3=9m6#X;^)4C~IxyaaL-l0AZa85pY67#JE_ z7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG%jMnyr!dd4JgcbCw~EIW*W>NpELB8wRq zxP?HN@zUM8KS06Lo-U3d5|>r`IKvqeMcU?PO1Vj>T};TxQ52oH^g`18s3ZUX>)y@3 zQ~d7Vz0WZh&Xri0GqD(M6^Lp1s4HZu)8Q$)eXX}gMEJ=oTPL4ONR2J3?2-P!<$5>t zRnSfQ`csn^6?uoQ|CwuhcCK5|d-d^+O#d%_6WTJ1tzjC_U#cap5he90i6yC4$wjF^iowXh&{)^N zP}j&H#L&pfz{tu3$ThVxFnAl27y;7(){vW@l9^VCTf-d2n@@lmgg{oLW#**jCFZ7D zl>iwG2JwbQ780vWfwEFSS?!YG{Irtt#G+J&fW*wa5hJyShH1A{L`3xUcQ NJYD@<);T3K0RZ2wx6%Lr diff --git a/buildcraft_resources/mods/buildcraft/textures/items/autarchic_gate.png b/buildcraft_resources/mods/buildcraft/textures/items/autarchic_gate.png index 386551a7f1b7b0c10564caf4032a21532a3316b3..fb2ea831e13a44a57a8e4e281244bac9931d1e7a 100644 GIT binary patch delta 137 zcmV;40CxYy1k(bLB#~{fe`-lYK~xyiV`M-Bj6jGkfGqMKF2D$6BLtWjA>cbqfD0<{ z9ws2f$oTg=125w%r~soFSpE&?hyPFkncwgJNdf5xPyq%dAm=M1H{(s18SGrlA|Opy rU;>KoW&bgM;$*vs(_v^%C*WHE0#YI%S^n+z00000NkvXXu0mjf(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#m)7MN#5=*I=k)`t_CXOEbxddW?M#jv*44lM@aw^sHdeIMBi(z;x!!2_~I2Id5d<#M~)hl#8>gV{}wZ z+|kgnVupeE^c^fd4Us`!QEp*<-ZLcC6!ecCT()4v5+31%puo`J=@YMBXqkObQ)k)I zwTtUlvx^6aUAk@>aLMe*TLY8j$rXH}3=9Qa?9TlTi|m2ctCqM%l%ynV5~gc%wCerMoid;r#FqDj@Uw-9IUy&;zIdgEElwm64nA z2Fwf&E@lysrpqt^rT4P`m_Ko{UBKxuG^Z2rEdU<8CLk>2T|NK+3IG5}MNUMnLSTZl ChCZ+W delta 387 zcmaFBbb)1piW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#clPBN#5=*x@T`W+5(kv7I;J!Gca%q zgD@k*tT_@u!AegT#}J9j$q5G-dR8!K9B5%tU^?R<#?3t;p^eL6%Oe+En!Ej*^Z6BWtE#nX785=nRI*t7h$LTQg^w z*qwSFJ;B0U*;w1!9SvO@8s{zC)F+tNzR*(kaPbNTh8bDx{n86h9|F2UwZt`|BqgyV z)hf9t6-Y4{85kPr8XD*tnS>Y_S{ayH8JOrAm{=JYxIOz`gQ6ifKP5A*61xT?kPh?R s{s(|Mgg{oLW#**jCFZ7Dl>iwG#_@)Ro0o(n0%aLIUHx3vIVCg!0As*<{r~^~ diff --git a/buildcraft_resources/mods/buildcraft/textures/items/autarchic_gate_diamond_or.png b/buildcraft_resources/mods/buildcraft/textures/items/autarchic_gate_diamond_or.png index 35fbe2f356fa7e2abf8e3b4b2563285e9f5ad2c8..09b8608628e460a19d1b928cfa06583c43aa0597 100644 GIT binary patch delta 148 zcmV;F0Biry1mFUYB#~{ie{@MiK~xyiV`M-Bj6jGkfGqMKEWr4mfq{wPA5iu`M1X;r z5dywJRWNWv1>V5~gc%wCerMoid;r#FqDj@Uw-9IUy&;zIdgEElwm64nA z2Fwf&E@lysrpqt^rT4P`m_Ko{UBKxuG^Z2rEdU<8CLk>2T|NK+3IG5}MNUMnLSTZl ChCZ+W delta 387 zcmaFBbb)1piW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#clPBN#5=*x@T`W+5(kv7I;J!Gca%q zgD@k*tT_@u!AegT#}J9j$q5G-dR8!K9B5%tU^?R<#?3t;p^eL6%Oe+En!Ej*^Z6BWtE#nX785=nRI*t7h$LTQg^w z*qwSFJ;B0U*;w1!9SvO@8s{zC)F+tNzR*(kaPbNTh8bDx{n86h9|F2UwZt`|BqgyV z)hf9t6-Y4{85kPr8XD*tnS>Y_S{ayH8JOrAm{=JYxIOz`gQ6ifKP5A*61xT?kPh?R s{s(|Mgg{oLW#**jCFZ7Dl>iwG#_@(mT5DNv17#UJUHx3vIVCg!09~khssI20 diff --git a/buildcraft_resources/mods/buildcraft/textures/items/autarchic_gate_gold_and.png b/buildcraft_resources/mods/buildcraft/textures/items/autarchic_gate_gold_and.png index e1fdf8e3da5c08f3b314513078f4a33ed78c2db8..5cd9059aec2016c6fe58699fc7cfae5aaa6149fb 100644 GIT binary patch delta 148 zcmV;F0Birx1mFUYB#~{ie{@MiK~xyiV`M-Bj6jGkfGqMKEWr4mfq{wPA5iu`M1X;r z5dywJRWNWv1>V5~gc%wCerMoid;r#FqDj@Uw-9IUy&;zIdgEElwm64nA z2Fwf&E@lysrpqt^rT4P`m_Ko{UBKxuG^Z2rEdU<8CLk>2T|NK+3IG5}MNUMnLSTZk C@;(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#clPBN#5=*x@T`W+5(kv7I;J!Gca%q zgD@k*tT_@u!AegT#}J9j$q5G-dR8!K9B5%tU^?R<#?3t;p^eL6%Oe+En!Ej*^Z6BWtE#nX785=nRI*t7h$LTQg^w z*qwSFJ;B0U*;w1!9SvO@8s{zC)F+tNzR*(kaPbNTh8bDx{n86h9|F2UwZt`|BqgyV z)hf9t6-Y4{85kPr8XD*tnS>Y_S{ayH8JOrAm{=JYxIOz`gQ6ifKP5A*61xUNkPh?R r{s(|M1VL7$W#**jCFZ7Dl>iwG#_^Vi=Wo9Ylw|O9^>bP0l+XkK^}Kt$ diff --git a/buildcraft_resources/mods/buildcraft/textures/items/autarchic_gate_gold_or.png b/buildcraft_resources/mods/buildcraft/textures/items/autarchic_gate_gold_or.png index 5cf69082e36e25e430ce0d1c6e107ef868c3877c..abae23055e13dfd9ee6d749323920f00da4dd485 100644 GIT binary patch delta 148 zcmV;F0Biry1mFUYB#~{ie{@MiK~xyiV`M-Bj6jGkfGqMKEWr4mfq{wPA5iu`M1X;r z5dywJRWNWv1>V5~gc%wCerMoid;r#FqDj@Uw-9IUy&;zIdgEElwm64nA z2Fwf&E@lysrpqt^rT4P`m_Ko{UBKxuG^Z2rEdU<8CLk>2T|NK+3IG5}MNUMnLSTZl ChCZ+W delta 387 zcmaFBbb)1piW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#clPBN#5=*x@T`W+5(kv7I;J!Gca%q zgD@k*tT_@u!AegT#}J9j$q5G-dR8!K9B5%tU^?R<#?3t;p^eL6%Oe+En!Ej*^Z6BWtE#nX785=nRI*t7h$LTQg^w z*qwSFJ;B0U*;w1!9SvO@8s{zC)F+tNzR*(kaPbNTh8bDx{n86h9|F2UwZt`|BqgyV z)hf9t6-Y4{85kPr8XD*tnS>Y_S{ayH8JOrAm{=JYxIOz`gQ6ifKP5A*61xT?kPh?R s{s(|Mgg{oLW#**jCFZ7Dl>iwG#_@&*M;51i2g)*dy85}Sb4q9e0BtUNvj6}9 diff --git a/buildcraft_resources/mods/buildcraft/textures/items/autarchic_gate_iron_and.png b/buildcraft_resources/mods/buildcraft/textures/items/autarchic_gate_iron_and.png index 43a87079361a209c613b29735b630f12598a50a0..70bf2a7ccab6c6965a70fa0d1eb73395e0a8fba0 100644 GIT binary patch delta 148 zcmV;F0Birx1mFUYB#~{ie{@MiK~xyiV`M-Bj6jGkfGqMKEWr4mfq{wPA5iu`M1X;r z5dywJRWNWv1>V5~gc%wCerMoid;r#FqDj@Uw-9IUy&;zIdgEElwm64nA z2Fwf&E@lysrpqt^rT4P`m_Ko{UBKxuG^Z2rEdU<8CLk>2T|NK+3IG5}MNUMnLSTZk C@;(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#clPBN#5=*x@T`W+5(kv7I;J!Gca%q zgD@k*tT_@u!AegT#}J9j$q5G-dR8!K9B5%tU^?R<#?3t;p^eL6%Oe+En!Ej*^Z6BWtE#nX785=nRI*t7h$LTQg^w z*qwSFJ;B0U*;w1!9SvO@8s{zC)F+tNzR*(kaPbNTh8bDx{n86h9|F2UwZt`|BqgyV z)hf9t6-Y4{85kPr8XD*tnS>Y_S{ayH8JOrAm{=JYxIOz`gQ6ifKP5A*61xUNkPh?R r{s(|M1VL7$W#**jCFZ7Dl>iwG#_{GV>a%VEB^f+j{an^LB{Ts5;^lgS diff --git a/buildcraft_resources/mods/buildcraft/textures/items/autarchic_gate_iron_or.png b/buildcraft_resources/mods/buildcraft/textures/items/autarchic_gate_iron_or.png index 217eddb7b42f2e6a828368e99067fe6e7be6c2b9..5249964a5cb961d732c5902c29d51549b27da505 100644 GIT binary patch delta 148 zcmV;F0Birx1mFUYB#~{ie{@MiK~xyiV`M-Bj6jGkfGqMKEWr4mfq{wPA5iu`M1X;r z5dywJRWNWv1>V5~gc%wCerMoid;r#FqDj@Uw-9IUy&;zIdgEElwm64nA z2Fwf&E@lysrpqt^rT4P`m_Ko{UBKxuG^Z2rEdU<8CLk>2T|NK+3IG5}MNUMnLSTZk C@;(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#clPBN#5=*x@T`W+5(kv7I;J!Gca%q zgD@k*tT_@u!AegT#}J9j$q5G-dR8!K9B5%tU^?R<#?3t;p^eL6%Oe+En!Ej*^Z6BWtE#nX785=nRI*t7h$LTQg^w z*qwSFJ;B0U*;w1!9SvO@8s{zC)F+tNzR*(kaPbNTh8bDx{n86h9|F2UwZt`|BqgyV z)hf9t6-Y4{85kPr8XD*tnS>Y_S{ayH8JOrAm{=JYxIOz`gQ6ifKP5A*61xUNkPh?R r{s(|M1VL7$W#**jCFZ7Dl>iwG#_<+gX0&?)B^f+j{an^LB{Ts5>PULy diff --git a/buildcraft_resources/mods/buildcraft/textures/items/block_0_0.png b/buildcraft_resources/mods/buildcraft/textures/items/block_0_0.png index 69a55126ec174a0f74f59def18cfff09eb1e1d81..dcaa55e85027ddd4a1ea3de17520fbd978e13002 100644 GIT binary patch delta 21 ccmX@dlrlkOVy^tebrPHmp00i_>zopr08=stSO5S3 delta 252 zcmYc}$2393jV0aD*O7r?V?XzwL{JR<>3Y=?*NBpo#FA92|ouf0F>lp@O1Ta JS?83{1ON>!L+$_o diff --git a/buildcraft_resources/mods/buildcraft/textures/items/bluePipeWire.png b/buildcraft_resources/mods/buildcraft/textures/items/bluePipeWire.png index 9e0d084576c9da96a988ad38cea7a58bb03359d5..a674e5d8d87a2ba1757abf8de7df046ce82fcd7a 100644 GIT binary patch delta 61 zcmZ3$yqwS3#}J9j$te!ZJte{kEzS7?jA?u`4n$Y&VrFGv;D5m+nE2}Y Q5e6XeboFyt=akR{0C8#*1poj5 delta 301 zcmZ3_xPW(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#prs*ByV>YkxBPYngW$^7I;J!Gca%q zgD@k*tT_@uK~+x|#}J9j$q5n$2TmM0bLiBua|chdiY7dJ_VDRraRCt_ISY42h7=)& zL%%mzX@fMBxJHzuB$lLFB^RXvDF!10LnB>716?DN5F(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMV)%aByV>Ymi~;Jfk0)P1s;*b3=G`D zAk4@xYmNj^(96@sF@)oKXzy*_1_K^u*%=LGO*1$Ze!q8{Bck%BSY4a{L9guGNe{hG zOmp0&GE;Po$MIu)-_j1`eLOQ$bLW<+p;zW=UOV`s?(Y-EvoE=}ia4IA0-CB?;u=ws zl2~7oYL#4+npl#`U}Ruuq-$uPYh)5)WN2kzYGq)eYhYq!VBq%bdksPdP(yBhN@iLm wZVl$U{SN>&2!gCg%gjm5OUzBRDgiPWOyi9L4hTI5N-}u5`njxgVoGQN0EPl=FaQ7m diff --git a/buildcraft_resources/mods/buildcraft/textures/items/blueprint_used.png b/buildcraft_resources/mods/buildcraft/textures/items/blueprint_used.png index 049ca7fcf13d2b71cfcc606fc8b9fe7b0e597bf8..6ffcce74263be4ed613c16e1544ab8a31b411a26 100644 GIT binary patch delta 22 ecmZ3&yo+&y%EVlqiMtay89ZJ6T-G@yGywoyAP4CH delta 253 zcmdnRxP*CviW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMSXe3ByV>Y)*tyVj{}u)7I;J!Gca%q zgD@k*tT_@BeN*aHOI#yLQW8s2t&)pUffR$0fuWJEp@FWENr;i5m4T_1fr+kxiIstY z+q3UAKw}UZa`RI%(<*UmFyHNe0H{F_WJ6kJPHJ9aZmLxYkilRYZ>)Y?sSxBS22WQ% Jmvv4FO#mQ3MTr0a diff --git a/buildcraft_resources/mods/buildcraft/textures/items/bucketFuel.png b/buildcraft_resources/mods/buildcraft/textures/items/bucketFuel.png index 2edaa96f0500a063df5db62f469989ae658605ed..5623e059c2bcabd3e989600b1245c5ef753778aa 100644 GIT binary patch delta 22 ecmdnPe2H;_%EVmjiKntS89ZJ6T-G@yGywo%`3OJ& delta 253 zcmcb_xQBUyiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMLT)MByV>Yu8a#`!hp&+3p^r=85p>Q zL70(Y)*Ok6F}d}sC9V-ADTyViR>?)FK#IZ0z|ct7&_LJ7B*e(j%D~jhz(m);#LB?H z?b-JlpfLyyx%nxXX_dG&nD6#K0MsA|vLP)qCp9lIH`S^H$Y3ytH&*0%Fbm`;22WQ% Jmvv4FO#llpMR5QC diff --git a/buildcraft_resources/mods/buildcraft/textures/items/diamondGearItem.png b/buildcraft_resources/mods/buildcraft/textures/items/diamondGearItem.png index 7d1dcbd86148bcdde54ea1d7bb0b2030dda317e1..4ae071496d1942d64c3dfa4ad53c60da17233fe1 100644 GIT binary patch delta 233 zcmV@+0~SU`#-CsoBM`DP{$OWfWccE>XnQ0tjK5j> j;JyWdOiqUH)4>7&>0vVu83#}+00000NkvXXu0mjfII3t4 delta 490 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 literal 13744 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 AXaE2J diff --git a/buildcraft_resources/mods/buildcraft/textures/items/gate.png b/buildcraft_resources/mods/buildcraft/textures/items/gate.png index 74a2793247fdb550a38ebf41b9abbf5e71050159..2aa9ee8a727f7383afc4b3ab2902920db3de8b4f 100644 GIT binary patch delta 127 zcmV-_0D%9u1jYi8B#~{cbzn(EK~xyiV`M-Bj6jGkfGqMKhX5lK{D28?LIpm+1Oyow z|9)rSWqb`25ChA<;e@M@`Tg#n6j0~^Oh6IH`O3)6cnc=L#>FfG(sUIjpzvPyAM+

(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#SQh0N#5=*+A2GrZ~&EY7I;J!Gca%q zgD@k*tT_@u!E{d-#}J9jrRUwn92^8(17}X#Iw#Ze_WxHBQ%m+dv^D+V8aV$&y1K#k ze+^G79H&g+S+HVO-V8Ce4YK0OPku5uN*wj3@^g;{r$eZD?wk_ahL*dDbDps_ zM7*xwGxhO5`!}rfpU;!^JjM2#v2R)}&`#A7*NBpo#FA92_jUHL|7OQlL>NfQf)w t!S(GJpi;<(Y_mttDL;ojrvH4q0}M_gAkohpDgXcg07*qoM6N<$0fHLJJSqSH delta 379 zcmcb@bd+U+iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#m)7MN#5=*I=k)`t_CXOEbxddW?dikValXw6Q@3QS}|ezqlDmqkf1j16)RS)JbfZ7;}EMw>(MP+ zN=xd$K43cK^lKNJ*R8f4vTe^wc+M|mV#s~PZlCLQXC=^f)e_f;l9a@fRIB8oR3OD* zWMF8dYiOWrWD;UzXk}n(WniLfU}9xp;P&i$4T^@`{FKbJO57UEcl#gE0_qR~S&^2R ilbV;9n`%`8WH1=T8ya#;7_$In89ZJ6T-G@yGywo%C3>>} diff --git a/buildcraft_resources/mods/buildcraft/textures/items/gate_diamond_or.png b/buildcraft_resources/mods/buildcraft/textures/items/gate_diamond_or.png index f1dfdd59d97b00e2629ed0d86d9eb54d29bc15f1..ca11adeb3f3541c06afa775fbcfa479c65dbd0a2 100644 GIT binary patch delta 139 zcmV;60CfMw1k?hMB#~{fe``rZK~xyih0ieyKwuPw;rmjAEK*7t`2T-KSxk0`QZk6o zz?DeO_}nv`i#&qxg1Z<&0HarPfLI)v&xZIX3_jUHL|7OQlL>NfQf)w t!S(GJpi;<(Y_mttDL;ojrvH4q0}M_gAkohpDgXcg07*qoM6N<$0fHLJJSqSH delta 379 zcmcb@bd+U+iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#m)7MN#5=*I=k)`t_CXOEbxddW?dikValXw6Q@3QS}|ezqlDmqkf1j16)RS)JbfZ7;}EMw>(MP+ zN=xd$K43cK^lKNJ*R8f4vTe^wc+M|mV#s~PZlCLQXC=^f)e_f;l9a@fRIB8oR3OD* zWMF8dYiOWrWD;UzXk}n(WniLfU}9xp;P&i$4T^@`{FKbJO57UEcl#gE0_qR~S&^2R ilbV;9n`%`8WH1=T8yZa#Oxg#OW$<+Mb6Mw<&;$T=L3|wm diff --git a/buildcraft_resources/mods/buildcraft/textures/items/gate_gold_and.png b/buildcraft_resources/mods/buildcraft/textures/items/gate_gold_and.png index 201df0f4b61b9fa9750a741a164afd642ca14102..392ccd786c0109d6960a541b185d3d002055a830 100644 GIT binary patch delta 139 zcmV;60CfMv1k?hMB#~{fe``rZK~xyih0ieyKwuPw;rmjAEK*7t`2T-KSxk0`QZk6o zz?DeO_}nv`i#&qxg1Z<&0HarPfLI)v&xZIX3_jUHL|7OQlL>NfQf)w t!S(GJpi;<(Y_mttDL;ojrvH4q0}M_gAkohpDgXcg07*qoM6N<$0fHJoJShMG delta 378 zcmcb@bcAJsiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#m)7MN#5=*I=k)`t_CXOEbxddW?dikValXw6Q@3QS}|ezqlDmqkf1j16)RS)JbfZ7;}EMw>(MP+ zN=xd$K43cK^lKNJ*R8f4vTe^wc+M|mV#s~PZlCLQXC=^f)e_f;l9a@fRIB8oR3OD* zWMF8dYiOWrWD;UzXk}n(WniLfU}9xp;P&i$4T^@`{FKbJO57UEcl#gE1nLk3S&^2R hlbV;9n`%`8WH1=TTONwN`wA$@;OXk;vd$@?2>=P>eG>ox diff --git a/buildcraft_resources/mods/buildcraft/textures/items/gate_gold_or.png b/buildcraft_resources/mods/buildcraft/textures/items/gate_gold_or.png index a6b9765984cba6638cc9afc8ff6c99c072d5432b..24ea397665449269c801f5a3d7dbf5b7b0a692b5 100644 GIT binary patch delta 139 zcmV;60CfMw1k?hMB#~{fe``rZK~xyih0ieyKwuPw;rmjAEK*7t`2T-KSxk0`QZk6o zz?DeO_}nv`i#&qxg1Z<&0HarPfLI)v&xZIX3_jUHL|7OQlL>NfQf)w t!S(GJpi;<(Y_mttDL;ojrvH4q0}M_gAkohpDgXcg07*qoM6N<$0fHLJJSqSH delta 379 zcmcb@bd+U+iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#m)7MN#5=*I=k)`t_CXOEbxddW?dikValXw6Q@3QS}|ezqlDmqkf1j16)RS)JbfZ7;}EMw>(MP+ zN=xd$K43cK^lKNJ*R8f4vTe^wc+M|mV#s~PZlCLQXC=^f)e_f;l9a@fRIB8oR3OD* zWMF8dYiOWrWD;UzXk}n(WniLfU}9xp;P&i$4T^@`{FKbJO57UEcl#gE0_qR~S&^2R ilbV;9n`%`8WH1=T8yeKeGfx7_GI+ZBxvX_jUHL|7OQlL>NfQf)w t!S(GJpi;<(Y_mttDL;ojrvH4q0}M_gAkohpDgXcg07*qoM6N<$0fHJoJShMG delta 378 zcmcb@bcAJsiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#m)7MN#5=*I=k)`t_CXOEbxddW?dikValXw6Q@3QS}|ezqlDmqkf1j16)RS)JbfZ7;}EMw>(MP+ zN=xd$K43cK^lKNJ*R8f4vTe^wc+M|mV#s~PZlCLQXC=^f)e_f;l9a@fRIB8oR3OD* zWMF8dYiOWrWD;UzXk}n(WniLfU}9xp;P&i$4T^@`{FKbJO57UEcl#gE1nLk3S&^2R hlbV;9n`%`8WH1=To2x$k@D?b^;OXk;vd$@?2>=NieG&iw diff --git a/buildcraft_resources/mods/buildcraft/textures/items/gate_iron_or.png b/buildcraft_resources/mods/buildcraft/textures/items/gate_iron_or.png index 51601dc7e9fa3c0f1f86f9f3e215fa8842bf2844..a90217d72f1b36838a74c825acd7db8cfc9bca89 100644 GIT binary patch delta 139 zcmV;60CfMv1k?hMB#~{fe``rZK~xyih0ieyKwuPw;rmjAEK*7t`2T-KSxk0`QZk6o zz?DeO_}nv`i#&qxg1Z<&0HarPfLI)v&xZIX3_jUHL|7OQlL>NfQf)w t!S(GJpi;<(Y_mttDL;ojrvH4q0}M_gAkohpDgXcg07*qoM6N<$0fHJoJShMG delta 378 zcmcb@bcAJsiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#m)7MN#5=*I=k)`t_CXOEbxddW?dikValXw6Q@3QS}|ezqlDmqkf1j16)RS)JbfZ7;}EMw>(MP+ zN=xd$K43cK^lKNJ*R8f4vTe^wc+M|mV#s~PZlCLQXC=^f)e_f;l9a@fRIB8oR3OD* zWMF8dYiOWrWD;UzXk}n(WniLfU}9xp;P&i$4T^@`{FKbJO57UEcl#gE1nLk3S&^2R glbV;9n`%`8WH1=TTWpPb3o?$u)78&qol`;+00bX=qyPW_ diff --git a/buildcraft_resources/mods/buildcraft/textures/items/goldGearItem.png b/buildcraft_resources/mods/buildcraft/textures/items/goldGearItem.png index c06dc4779e509c08ae9ad059f51978f4bee980b5..07fda6bbc41965d4b275c159cd4069b54c8b8c49 100644 GIT binary patch delta 216 zcmV;}04M*=2EYW6Be85z0e`niL_t&-83n;VO2c3rfZ_K|e&o*=hbnX^cz`;2g>Hh2 zqd0mnFJX_+!BOZG&tMc3zS=}=d>#RyR3`uesT?aAO{XJ>ovNNn^__suOwt(&A)uC= zFH{r)8e4LUs^GPn&kj9YCC0{}hI0?V;%m`hOw&?b_0Xo@O2r#R-A#YGaXX853hFNF zHwCqev>NpELB8wRq zxP?KOkzv*x383IDPZ!4!iOb0e49sa_VPwS3#}J9j$te!ZJte{kEsg)}6_{cQCT{;y!p_COF#9dDVDi*` Qw-|uH)78&qol`;+0GH|&NdN!< delta 301 zcmZ3_xPW(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#prs*ByV>YkxBPYngW$^7I;J!Gca%q zgD@k*tT_@uK~+x|#}J9j$q5n$2TmM0bLiBua|cf{iavPs?BUbL;sPQH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qP{$1lDE4H>yP}G$AQW?3p^r=85p>Q zK$!8;-MT*$eLd?{OI#yLQW8s2t&)pUffR$0fuWJEp@FWENr;i5m4T_1fr+kxiIstY z+q3UAKw}UZa`RI%(<*UmFyHNe0H{F_WJ6kJPHJ9aZmLxYkilROZ?J=PqXJNplfl!~ K&t;ucLK6VycSjZg diff --git a/buildcraft_resources/mods/buildcraft/textures/items/icons/guiicons_0_1.png b/buildcraft_resources/mods/buildcraft/textures/items/icons/guiicons_0_1.png index ffa02e5ee35e2501028052b28c3a7fa2ffd3fd8a..9ad1934e940bcaacd6ed6e0cdc5a3e93de02fe9f 100644 GIT binary patch delta 22 ecmbQpyqs}@%EVlwi3dG689ZJ6T-G@yGywouiwCv< delta 253 zcmZ3^IFWgRiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMN@gkByV>YcCo~c*Fa^Q1s;*b3=G^t zAk28_Zrz`W!QS<%C9V-ADTyViR>?)FK#IZ0z|ct7&_LJ7B*e(j%D~jhz(m);#LB?H z?b-JlpfLyyx%nxXX_dG&nD6#K0MsA|vLP)qCp9lIH`S^H$Y3ytH$2bOxDDhe22WQ% Jmvv4FO#nmsMuY$W diff --git a/buildcraft_resources/mods/buildcraft/textures/items/icons/guiicons_0_2.png b/buildcraft_resources/mods/buildcraft/textures/items/icons/guiicons_0_2.png index d96162140a405ff2ba9b8f6b59bcb22250c9f2f0..58f8c3ae186704e1267748b2afedba3451d7a150 100644 GIT binary patch delta 167 zcmV;Y09gOa1mFUYB#~{Pe}_p#K~xx5Wslhs!XOMqtA!E}m!eitV{2Wo{{IIWB#d@E zdAesZS&HJ1$ruvTACeGKib@J0R2HBOp<$MVwe!VtRo9M%RO`*Q*(tTp9o`>~&B=R* zNu1m6()ZWyhKM{A41k81KcX^sGMaM9Gaim+( V2<-go+y(#u002ovPDHLkV1mA~O-%p* delta 401 zcmaFBbed&?iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#l`iEN#5=*+A2GrZ~&EY7I;J!Gca%q zfiUBxyLEqnf*qbNjv*44Q~PfUH5u@@3I@%(wktq%t(0So*1!MkQaRQqDn6B*zjIP0 z^4swouI@kW3Jx3^tPCeq0y5nm+HfX|oxZwjRgQ>L-nQLU`cD;2=UC5swYhj&(+-oj zTVL1by`9_fDCkNDSNk8)rF9zu=XCFQoLOOUTVv1n_4A7VpF4iJy-v`d|H6+uQ~1CC z=Xhg&;^|zVqf|>=BT7;dOH!?pi&B9UgOP!uk*=YEu8~QIk)f4=sg;3=u7Qb_fq~nz z?=>hIa`RI%(<-4F9I)sx-|c?@s6!BBMOtP~YF=V)s#OV)!C(+?6vlml2Pnzl>FVdQ I&MBb@0JHax4gdfE diff --git a/buildcraft_resources/mods/buildcraft/textures/items/icons/guiicons_0_3.png b/buildcraft_resources/mods/buildcraft/textures/items/icons/guiicons_0_3.png index 6803aec836eeef7a38095c44e3b7e535b48fbc94..8c349025ee2fcce87497006fa9e5201235df7fc6 100644 GIT binary patch delta 23 fcmdnPa*1hz%Ea6mlhqk}IT<`%{an^LB{Ts5Wzz^E delta 253 zcmcb_w1;JaiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#o6+VN#5=*ny0q6ssNR77I;J!Gca%q zfiUBxyLEpi?wnAsTH+c}l9E`GYL#4+3Zxi}3=EBQ4GnaSOhSwdtqe@93`}$lOsotH z+@5`}0UCqQkei>9nO2EggZXa%13(ReARE#$b5ipXb5pHKfD8tMcw##Fns!D%Mv>&U!y&xGUwLjh6o;S(4O80qVOU5)F zS|>IGW4u2GC$0=U&R>^tdF2<$2ld0TPZD_JYJsZiTva6i;2#VP5*@(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#rgG&N#5=*TEY9S%mXUpEbxddW?OzbNy-edEP1#eZ28SW=i6Qdm})ct12^N)CH{*6e&PgOk|qO}D%&J2;>BEr0c9&QkLoF|VU9 z-+5inF4!7$rGrcTKhw;-nHt|RU%cRvua<83zEA!J|M~vw%WJG|JN-Y_yXq}Rl;=m0 z$3XX}mbgZgq$HN4S|t~y0x1R~14AQSLjzqSlMo|AD+5z20~1{X6DtD)w`bpLP&DM` zr(~v8B5SZl)nUHd{{T>jAjpce%$(G`#N1S?5+H-YAl_tuMyVxGlEKr}&t;ucLK6U@ CU5Wny diff --git a/buildcraft_resources/mods/buildcraft/textures/items/ironGearItem.png b/buildcraft_resources/mods/buildcraft/textures/items/ironGearItem.png index 2429dbde4761b1d86167df0040b6f533f4355624..68408dcf0c095ee5136fb4f8bb1585561031a118 100644 GIT binary patch delta 23 fcmX@h`j~lw%Ea6^ldBm|aWZ(i`njxgN@xNAbhrsC delta 254 zcmaFNe3o^BiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#rN`zN#5=*EO>_%)r1c z48n{Iv*t)l=4CuvuUg_7QIe8al4_M)lnSI6j0_BobPWx3jZ8v}46O`Itqe?b4NR;I z4BVc5uK}8a(2$#-l9^VCTZ8#-{{uh`f*>2xGILV%5_40nN`MRo!+4|cle?@zu43?X L^>bP0l+XkKRe(o` diff --git a/buildcraft_resources/mods/buildcraft/textures/items/oil_bucket.png b/buildcraft_resources/mods/buildcraft/textures/items/oil_bucket.png index 97378976e6594b42001de6d8407fb59c74e5b4c7..ff6da6d26ce05596d4e50e9983415538385379ce 100644 GIT binary patch delta 239 zcmV=#cOF~f;hSBHU`&>~kdZDD~i;8O4z>)ud z(y)l4Nufa#gT6z_^z73>Xw8<8!nL+CmwM8?76>%2rPP&-AqcKIZ>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*CMLWiN#w2fd7cV)Ut;c}sI14-?iy0WW zg+Z8+Vb&Z8px|Xs7sn8Z%eFl?!wxwJu=@hS(!SB~xKdxXgeNxAa$d#+4lO$%$luei> z&JBV(xGFw_EX)Cfgjb?A$3+EjtY-?GyaHMx$%ZnU`S;s>{z; ztzUaWlPlO~neprwi%cBT_c<8H%C%~SWy{ZAJNd@;Wec8udnmYd`Ns20uPqfkfA}by z{`$Hp7aA|-eY21P?|eoAIqC2kGoyZsLUH3))i lNXyJg%}dNpwJHHJ7!2YK&oeb{;{nPtc)I$ztaD0e0ssSfwG;pV diff --git a/buildcraft_resources/mods/buildcraft/textures/items/pipeWaterproof.png b/buildcraft_resources/mods/buildcraft/textures/items/pipeWaterproof.png index 43ae39a65e92476f051ee9af08de98a30ccbbfdd..9d199faec18917a413461561d73842bdc92f1cbc 100644 GIT binary patch delta 240 zcmVhQT)Vq?w;>{?6f;>lPf)^I=&pnqNQ(jO^^4Oi#&)mbiQwL{8r+%g9k1F zl)T=rvfdHg1vo^BnhP=mP&SE-(d~6j><*}jkEReLDH#a@sA+2=y=v|B7#cYUFB%g` zrZh@M0Pv!=;{Z$q=5i0**xCX?0x(wTwBw)|0QpWNM1xtYfcV>D$u2zdarYoa4`TAy qlgK<)6Hnt$cfqUp>n`|pj(`tYrj^u|fAt>#0000aejb*eF z1=DCD7D5_HZQ(y~7BS_!QXV8=K)g=STI@};7COsjqv8(^mYtd3&3wBn$ySW3{_Yt` zrvfgDrnqxpmXW0K^Vzg5{?-!rhlzb+NiMqHk2`lTKsr^EdVp-$+(}- zqFs)SJw{cxHj;=Qan+bFfPI>XbZaAN^I=fZOX9lbS${#=sIauTEvR6FZfW~cMmx7hmX|bFj%lu**raH+N78BW z`ut#g1Gl(a8_5JjA1J^^Z`zKPdc{8)xJDb@~00>D%PDHLkV1hd<<9z@C diff --git a/buildcraft_resources/mods/buildcraft/textures/items/redPipeWire.png b/buildcraft_resources/mods/buildcraft/textures/items/redPipeWire.png index efef1d90a06a94889322d93ef1c25d06dfbeef56..6964f064f4363bd0d7a471904b6727810fddc634 100644 GIT binary patch delta 60 zcmZ3?ypeH&%Ea7gBUw)u#}J9j$te!ZJte{kEzS7?jCnf_NLTG*W@TXD|H&lSE}JF6 O00f?{elF{r5}E)_y%IJ6 delta 301 zcmdnUxR`l@iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#khLLByV>Y(Wf_lE(R*&EbxddW?zm0Xkxq!^4042^UR4Rno6LW~Tp3{0&IOmq!QtPBj?p2d8x zLD7+$pOTqYiCc&HZvO*74T2ym(lT>W^AdAYtxA9l29tP${XCL?fRYTJu6{1-oD!M< Dj$B#T diff --git a/buildcraft_resources/mods/buildcraft/textures/items/redstone_diamond_chipset.png b/buildcraft_resources/mods/buildcraft/textures/items/redstone_diamond_chipset.png index 1b85b70ea86bf8d576400dbcd763ff06ccda5ad6..8eb36844827a1e95735d8bed3ed05b1176c8c98b 100644 GIT binary patch delta 118 zcmV-+0Ez#C1eOAjB#~`~Y*$G{K~xx5oy*A*Krj$R(L6MQ5L3+a|NkSaG-adQ<*B+t zyu!1O;J}3kV(<|lgk*@~L=mN#1?apeD^eC}U0h;#Y1*zI#%bn7VZn-xL1Kr&!Eoyb YoXhzG$!1pzYybcN07*qoM6N<$f?#Jfz5oCK delta 354 zcmbQn)WkAD#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5VrM;LlDE5y!scw-2B0#|0*}aI1_o|n z5N2eUHAey{80qQa7$R|b>bcW=4hAAD7x?tLf?W6B|Np;#&7BUH8BaaajGSzms_mMX z#pOBFF8i34Hu9z@T$g-*%O-tML!#K?gEdnbx>;xPKG){tB aKi~r7{saY*G&>^z0000H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5;-q@UByV>YWv!$fE1)vY0*}aI1_o|n z5N2eUHAey{80G2W7$R|b>baYI4hAAD7x=msg{pM7eI5ls!1US*Pdo&T{(uxrx6u3m?P_JbcEzto=d z?)FK#IZ0z|ct7&_LJ7B*e(j%D~jhz(m);#LB?H z?b-Jl6b-rgDVb@NxHXvX_CEmBAPBM{Ei)%IFEKaOsszYjFcXS53Tj)k4=Bsv>FVdQ I&MBb@07Qv!>i_@% diff --git a/buildcraft_resources/mods/buildcraft/textures/items/redstone_iron_chipset.png b/buildcraft_resources/mods/buildcraft/textures/items/redstone_iron_chipset.png index a8f31b54144548c8ea0c703323d5e24dc0ddbc55..7634840d7ec58a6ec88fafff5f578394287fed3d 100644 GIT binary patch delta 120 zcmV-;0EhpI1fBwrB#~{5Zdpl0K~xx5oy$iKfFKk_QJ#t&1+if7``@B7zQ&314o`9! zdxd8o!GQ}8oWMtb5D`I~q=NG-w*aXMU2H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5Vt+kjlDE5yQfz9>8lW=H0*}aI1_o|n z5N2eUHAey{813oe7$R|b>baYI4hAAD7x=msZOK|$`~QFZmuGG&hivAhs2#qcyyLmD zMZv>H;U63VP6954N|ye{w*supS*MFnS#@da#*oZg>*SARF6%ndBr4r_fUo=U@yp>B zjCbl?m_Kk={GST6N43N?q9i4;B-JXpC>2OC7#SEE=^7g78kvL`8Cn^bS{az=8kkra z7`Q$AUW1|`H$NpatrE8e^WFXjfEolrHl$_dq~;~&rdpK%84SW^@rI}S|FQsO89ZJ6 KT-G@yGywpzC318C diff --git a/buildcraft_resources/mods/buildcraft/textures/items/redstone_pulsating_chipset.png b/buildcraft_resources/mods/buildcraft/textures/items/redstone_pulsating_chipset.png index fe903b7cdc750bdbfa97b2dda33c6b4c05e2173e..1f5c690f86446ef2e074148871c8b35293be51ce 100644 GIT binary patch delta 22 ecmZ3*e1LI+%EVmviPwBM89ZJ6T-G@yGywo!^9U9I delta 253 zcmX@WxQcm#iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMK5{AByV>YzWlug{y=4%1s;*b3=G`D zAk4@xYmUUk4F7u764!{5l*E!$tK_0oAjM#0U}&UkXrOCk5@KX%WngM$V4`baVr5|9 z_UwBN&=`b<-29Zxv`X9>%y;`A0BR5f*^ri*lbV;9n`%`8WH6Y;o9uqd*$r|OgQu&X J%Q~loCID&bMF;=@ diff --git a/buildcraft_resources/mods/buildcraft/textures/items/redstone_red_chipset.png b/buildcraft_resources/mods/buildcraft/textures/items/redstone_red_chipset.png index 4a47b828ce3f879d45c45119c7f0b1ea274ba4dd..7436c200b1520cc05e79f9d102c65a271ce3d1b5 100644 GIT binary patch delta 120 zcmV-;0EhpC1egMlB#~`~Zdpl0K~xx5oy$oQKrj?V(L6~Igh({ecl+O?nNOK0cX+BU zW3TY+BLv_OkOUzj#83oDnrSKX;sTh`x=QK`Y9n~ldRn@E7_FOTS~M1{*a#GMcpL<` ae!vO8Km)IM?zSTU0000H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5VrM;LlDE5y!scw-2B0#|0*}aI1_o|n z5N2eUHAey{813oe7$R|b>N!uo1_cr30Ida!7IE-d_4USc1uuQwesNdkvaVxIqSB3r`1&6ozZ`DC zxWC?kdA-)g4R3(05AWr2bBeoBe86*0e`PaL_t&-83n`2HxX1(Bns+?h9#Jb z28o6>DA*u1Bc#j(Q9^^0$k_0n0I(3Q00g?=+URV@IFqoXIogz3xN#()GpmkEbs(VV zPp`%AWjPTs6|Kr&Q@ntWs-Ac7q&h@ZwFmlh(IKj;0^IqvM%rgpk43kt9|XTu)!zMs zLcrl(RW~XGP*qhG8rbfJ_ndQn>$+D6U<-$p6E6S_0IbvW2>}1=EF{+zI8?#_0000< KMNUMnLSTa4r(Nm* delta 492 zcmbQrx`BOyvO5Dyx}&cn1H;CC?mvmF3=9m6#X;^)4C~IxyaaL-l0AZa85pY67#JE_ z7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG%jM#T+`^^8g0?k+7!7orM*>NpELB8wRq zxP?KOkzv*x383HuPZ!4!iOb0e49sR_Wo2v{2`P^rBs_WWgh@!|OizykW1buzUz}YX zBOjk*-iC$=8#-3Z*wM0K$&@Vu5e{x)ei3nwfu4~OuA&+T4y{({T6 z5)ps@Ff%nb$vQh7KBRnLn~R(4@gv8Ms^3smQ*CCA2@bk^$=GP~rsAT{3QRv)TV0Q; zE=_$ZIyHgO?YhaaRj+169otpq*1;gK#MIo=IjdTqSbd5|xj0~*|Osxz|bPY_b3=G_!eXl{$kei>9nO2Eg vgZXa%13(ReARE#$b5ipXb5kX)N`Nc|!+67U2VOS(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMV)%aByV>Ymi~;Jfk0)P1s;*b3=G`D zAk4@xYmNj^(96@sF@)oKXzy*_1_K^u*%=LGO*1$Ze!q8{Bck%BSY4a{L9guGNe{hG zOmp0&GE;Po$MIu)-_j1`eLOQ$bLW<+p;zW=UOV`s?(Y-EvoE=}ia4IA0-CB?;u=ws zl2~7oYL#4+npl#`U}Ruuq-$uPYh)5)WN2kzYGq)eYhYq!VBq%bdksPdP(yBhN@iLm wZVl$U{SN>&2!gCg%gjm5OUzBRDgiPWOydpqohv>Klw|O9^>bP0#FWqk0FpCo?*IS* diff --git a/buildcraft_resources/mods/buildcraft/textures/items/template_used.png b/buildcraft_resources/mods/buildcraft/textures/items/template_used.png index 9320aa9e09150f916c039f6fc36071b80093ce7d..12d5243af704165eef53deb2bba689fe583d348e 100644 GIT binary patch delta 22 ecmZ3&yo+&y%EVlqiMtay89ZJ6T-G@yGywoyAP4CH delta 253 zcmdnRxP*CviW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMSXe3ByV>Y)*tyVj{}u)7I;J!Gca%q zgD@k*tT_@BeN*aHOI#yLQW8s2t&)pUffR$0fuWJEp@FWENr;i5m4T_1fr+kxiIstY z+q3UAKw}UZa`RI%(<*UmFyHNe0H{F_WJ6kJPHJ9aZmLxYkilRYZ+P;gb1cYF44$rj JF6*2UngA=+MmPWf diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/action_machinecontrol_loop.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/action_machinecontrol_loop.png index 728760bbb438039f8b67ece667872a5de786e5d1..33d3b92b04e9ad2d0849c16c253f0ed0b11ce72b 100644 GIT binary patch delta 106 zcmey&)Xq3TC7Cn8C&ab8yIV==KLZ298Rxz_AZ6+4;uyjq%X-jIw84Rgb;Fnao5~OH zGOIsgQ4(aIkg%}hp4ZpVQt6{h7MGSNO!(B3loa{%+~cP=4)FI$urlr0Uvv{_2!p4q KpUXO@geCy=yeP;3 literal 371 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!93?!50ihlx9Ea{HEjtmSN`?>!lvI6;x#X;^) z4C~IxyaaL-l0AZa85pY67#JE_7#My5g&JNkFq9fFFuY1&V6d9Oz#v{QXIG#NP=YhS zC&ab8yIV==Kah9ExvvgLF(!GtyD#QQ#3-%)r1c48n{Iv*t(u1+6_@978y+ z`*s_0F(~jbuRr>Z&rZX?;01H-DqTG`A*Vx(Oly2nwhO4eou~Ftr_FdDhyCllYGx^d z{kpO9OIW;>g=NnIjZrOejVMV;EJ?LWE=mPb3`PcqM!JRux<)1;Mut`fra+`?U}9xp z@L=Mf6DS&T^HVa@DsgL=c*dm!s6h~9Lt17|YF=V)s#OV)!C(?^vLo^CQ=lY+r>mdK II;Vst0I(Be82|tP diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/action_machinecontrol_off.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/action_machinecontrol_off.png index 3ee463b966eddbef24b30f3927e5b5028f40a177..cdf54fd4c79026ca44d128d4addabf3e89c7c531 100644 GIT binary patch delta 21 ccmaFCR5w9oVy?u*<(8Zbp00i_>zopr09W@1p8x;= delta 252 zcmb<>!8Ad|jV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRolXzn_Ru4CjqZmA0{an^L HB{Ts528u&u diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/action_machinecontrol_on.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/action_machinecontrol_on.png index a76ff88b1cbdc705bae3d725c5727a9757d88177..1a276ef91cdf2990a7856a2c3113d908f40b0805 100644 GIT binary patch delta 21 ccmcb^R5U?lVy?u*<+_{zopr09BI*djJ3c delta 252 zcmXTA!!$v~jV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRolX#;*riu$7M=^N1`njxg HN@xNA^;kq9 diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/guitriggers_3_4.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/guitriggers_3_4.png index 55f45e0e008fdd368bac523fae998c89feef47a0..e9fe9ee524c4afcace91695df07555242712a2fe 100644 GIT binary patch delta 21 ccmcc3R5(FpVy?u*zopr099ZIcmMzZ delta 252 zcmXTC%``#9jV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRo<9L(3dZ&TTW#DA+boFyt I=akR{0Q-+bng9R* diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/guitriggers_5_0.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/guitriggers_5_0.png index 551b96db37de8eb10cdd95c5f6cd8a5645d3b4da..c91b346ab78cc25630eff7d221384246dfe5bf48 100644 GIT binary patch delta 22 ecmdnae3o&7%EVlQiTevU89ZJ6T-G@yGywo$O9&(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMPqr!ByV>YZu#p+4gi&L7I;J!Gca%q zgD@k*tT_@B1B>fbOI#yLQW8s2t&)pUffR$0fuWJEp@FWENr;i5m4PV`=^B_=85lg6 z_~!)B7=(u0{FKbJO57SIo^dGwY7hk3kd~Q~nwOZHYE=ScFqp<0>^oO{8ssPjPgg&e IbxsLQ06^hKApigX diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/guitriggers_5_1.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/guitriggers_5_1.png index 49f9ebb4df30fdab89fdac02d95a4ce2c2d7163b..a1354b01ec73f47577137fc152fb0588e380787c 100644 GIT binary patch delta 132 zcmV-~0DJ$r1I_`EB#~_}dSyvOK~xCWO^C4#gHRB~oQ8rb7bvKIBnIF_CU^>>W&x@j zCAu-FnUdy9!Hq2gm>B@}b~oTrB+XBFNs>O$ON;cq#UL%x54zN<9HHAXvy9Me?o-); maGwI&lZXHgD(%0j&w4KR>lDGcv7=f50000(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMdNzLByV>YZu#p+4gi&L7I;J!Gca%q zgD@k*tT_@u!8A`7#}JO|$q5Mw0wN+Q42+Jc$;krUfhUh1JsQ%`=y-ya<&1=cOH9n2 z*qA#LB!m*&q?wxw+Pjx~w@XbBymRs5LY9;btkTlbnyL)EUd%?9BqVl(87^7MnAyh4 zQy*}kHNo*^Xn-KY_tzo^YkYlVfL5xOxJHzuB$lLFB^RXvDF!10LnB>716?DN5F(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMPqr!ByV>YZu#p+4gi&L7I;J!Gca%q zgD@k*tT_@B154{wOI#yLQW8s2t&)pUffR$0fuWJEp@FWENr;i5m4PV`=^B_=85lg6 z_~!)B7=(u0{FKbJO57SIo^dGwY7hk3kd~Q~nwOZHYE=ScFqp<01so814ssNOr>mdK II;Vst06DfsXaE2J diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/guitriggers_5_3.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/guitriggers_5_3.png index d3cac204b754714797fe56457dfe9baa7a0034e5..178cb47f4d7d961071c6c41b2ba52be8bdf43998 100644 GIT binary patch delta 22 ecmdnae3o&7%EVlQiTevU89ZJ6T-G@yGywo$O9&(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMPqr!ByV>YZu#p+4gi&L7I;J!Gca%q zgD@k*tT_@B1B>fbOI#yLQW8s2t&)pUffR$0fuWJEp@FWENr;i5m4PV`=^B_=85lg6 z_~!)B7=(u0{FKbJO57SIo^dGwY7hk3kd~Q~nwOZHYE=ScFqp<0s~=Y?1UZVq)78&q Iol`;+04()I+W-In diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/guitriggers_5_4.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/guitriggers_5_4.png index 9cf99cc4e59e91c6b0a5d0ee99b800b59527ae47..c02ac740953ab1689e4ad389665974460d5bdceb 100644 GIT binary patch delta 22 ecmdnNe2#H~%EVmViF-;o89ZJ6T-G@yGywo$QwSyi delta 253 zcmX@dxPy6uiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMFV-pByV>Yu8a#`!hp&+3p^r=85p>Q zL70(Y)*Ok6e&zM5C9V-ADTyViR>?)FK#IZ0z|ct7&_LJ7B*e(j%D@zebPY_b3=AGj z{Br_m3_?S0eoAIqC2kE9&$yHTH3))iNXyJg%}dNpwJHHJ7);|$b}rt23FIgSPgg&e IbxsLQ07zy>M*si- diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/guitriggers_5_5.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/guitriggers_5_5.png index 5faea9541d608609163dd336a3d4d6d89310e1fb..fc20ace4941baa22927ffc073ae3462249ad6b60 100644 GIT binary patch delta 22 ecmdnXe3@~A%EVmViF+zJ89ZJ6T-G@yGywo%TnIG) delta 253 zcmcc2xR-f?iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMFV-pByV>Yu8a#`!hp&+3p^r=85p>Q zL70(Y)*Ok6el_)~C9V-ADTyViR>?)FK#IZ0z|ct7&_LJ7B*e(j%D@zebPY_b3=AGj z{Br_m3_?S0eoAIqC2kE9&$yHTH3))iNXyJg%}dNpwJHHJ7);|$&n;zopr09IKChX4Qo delta 252 zcmXTD&on{BjV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRo!+3+8$8U>+9L3=2>gTe~ HDWM4fj`>B# diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_engineheat_green.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_engineheat_green.png index b9ffd8cf24975d1e9ccbcf029c7efca4ca79f89b..a3495d9d433c1de5c7307a8306e752b26c699667 100644 GIT binary patch delta 21 ccmcc5R60RrVy^VWRl1xEp00i_>zopr09IKChX4Qo delta 252 zcmXTD&on{BjV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRo!+67U2VOUV9L3=2>gTe~ HDWM4fmb^w! diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_engineheat_red.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_engineheat_red.png index bc8871620537c9fc5af9735ebfa801e77543bd7b..600f26865a50c5c1a258175319a168a413dc3575 100644 GIT binary patch delta 21 ccmcc5R60RrVy^VWRl1xEp00i_>zopr09IKChX4Qo delta 252 zcmXTD&on{BjV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRo!+2wbb6smej$-h1^>bP0 Hl+XkKi0egs diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_engineheat_yellow.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_engineheat_yellow.png index be5701de9f0d7c9378d0e6c01beacc74f327a2ac..f161a6ba9ae32d9a6eae21e44e670c1aaa70f35e 100644 GIT binary patch delta 21 ccmcc5R60RrVy^VWRl1xEp00i_>zopr09IKChX4Qo delta 252 zcmXTD&on{BjV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRo!+4|cle?@zj$-h1^>bP0 Hl+XkKh{Q!} diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_inventory_contains.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_inventory_contains.png index d76d5097328fca23af18aa4c208b57896e21e486..a08d6f147778f9d8535c3b445c96ca490ccd2226 100644 GIT binary patch delta 57 zcmey&+`%+KWnyjxWB6naMkmegH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5Vzn}3lDE5yvQ|=#6;K&xfk$L90|U1( z2s1Lwnj--ejF>prss40>w1xwtlS5!2=ZWA$x(irXBhE52IJvP!PMK_W52#AD#5JNM zC9x#cD!C{XNHG{07#iss8t59CgcuoG8JGf*u7Qb_fx&}`e@>ui$jwj5OsmALVd5DV rtrDOPL68+`nK`L>iMgp(B|rv)QM~Et*Aou{B^f+j{an^LB{Ts5K_*cG diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_inventory_empty.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_inventory_empty.png index ebcc50eb56b3ddfd00f6805f9afec0ac3bd59a04..9abd88867595d135c45492c8e97923e902264e5d 100644 GIT binary patch delta 54 zcmaFI+`=?LWnymWWEMtejqc;JTmcON2?+r#iFcT~0vfK`FsLT5o)q(bW6A&op00i_ I>zopr0P|iEfB*mh delta 284 zcmZo+ddECL#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5Vud_olDE5yQfz9>8lW=H0*}aI1_o|n z5N2eUHAiCNG`ITG4bmD8j7|-Wj)ECeUt$RJYD@< J);T3K0RaCn5@rAZ delta 284 zcmZo?`p7&%#f>H1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5VzoSDlDE5yvQ|=#6;K&xfk$L90|U1( z2s1LwnjH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5Vzn}3lDE5yvQ|=#6;K&xfk$L90|U1( z2s1Lwnj--ejF>prss40>w1xwtlS5!2=ZWA$x(irXBhE52IJvP!PMK_W52#AD#5JNM zC9x#cD!C{XNHG{07#iss8t59CgcuoG8JGf*u7Qb_fx&}`e@>ui$jwj5OsmALVd5DV qtrDOPL68+`nK`L>iMgp(B|rv)QM_5uqXX4INd`|>KbLh*2~7YvBv5Jq diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_liquidcontainer_contains.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_liquidcontainer_contains.png index c5c32c18bc20c6fe42c378f7f94a8c7b64949913..1cda0ab584691b5909ea2abb63e18a849ea7abc9 100644 GIT binary patch delta 21 ccmcc5R60RrVy?u*zopr09Gsqga7~l delta 252 zcmXTD&on{BjV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRoqjbP0 Hl+XkK3xP!o diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_liquidcontainer_empty.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_liquidcontainer_empty.png index d72090b6593305cbbbf0f252918b7233b1f78ec7..f96ac92ccd716ad60e774854977ba1f7b12fae3a 100644 GIT binary patch delta 37 tcmcb@lr=#`h%>+^#I?J-yPknTN$LLzy(4T}H( delta 252 zcmd10!Zbm}jV0aD*O7r?V?XzwL{iMgp(B|rv)QM|$K##BF$qZmA0{an^L HB{Ts5-`GS; diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_liquidcontainer_full.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_liquidcontainer_full.png index 91fa97ce32f3b95b77dac07035d27b97e011002a..b64772e61efc133721f0cef8aa46e6abca483187 100644 GIT binary patch delta 21 ccmcc4lsiFXVy?u*zopr092F*YybcN delta 252 zcmd13&NM;AjV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRoqj+Pb4wEk+M=^N1`njxg HN@xNA>-9uP diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_liquidcontainer_space.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_liquidcontainer_space.png index 0dbf49617c81ac7cdbf5c2926c71acb1393e974c..9ad0659d06218031413e2daa669381e26440879d 100644 GIT binary patch delta 21 ccmaFCR5w9oVy^VWRc4$Fp00i_>zopr09Ygkq5uE@ delta 252 zcmb<>!8Ad|jV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRoqj;mxewHMVqZmA0{an^L HB{Ts5lOROA diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_machine_active.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_machine_active.png index cb1057741bb70748088a739ed3f1499e4aab6990..707d4d4523ed3842421d00d03b0125063dbabb8d 100644 GIT binary patch delta 22 dcmaFE)WkSJWn!-M#8pH1(btiIVPik{pF~y$1_s9BAa^H*b?0PW0yzrF9znhg3{`3j3=J&| z48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6`@5qMSTqlDE4HOMk}AK%g?t0*}aI1_o|n z5N2eUHAiBijcvVZiEBhjN@7W>RdP`(kYX@0Ff`ING|)9N2{AIXGB5=qT>}#<1A_+> z|C|6CgV2zhpOTqYiCe?OGcF}S4T2yW(lT>W^AdAYtxA9l29tP${XCL?K#pSYboFyt I=akR{0H-WPUjP6A diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_machine_inactive.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_machine_inactive.png index 8ad4791869eb24cffdcb92fcbb49dc201d94d114..1c9feb81cc915622e8175c68d7d24956c1b40bc6 100644 GIT binary patch delta 21 ccmcb|R5C$jVy^VWRXUsup00i_>zopr09Gakga7~l delta 252 zcmXT9$2393jV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRolX$}u+?rV+M=^N1`njxg HN@xNAd>}-- diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipecontents_containsenergy.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipecontents_containsenergy.png index 99758ff38469ec1911493ecf113a7732acd57bcd..ecfc42367c9277535a86107d5695e5032009e707 100644 GIT binary patch delta 21 ccmaFHR5L+kVy@!E4SJjmp00i_>zopr09Y6Yq5uE@ delta 252 zcmb<<#xz02jV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRo<9K6bueie?M=^N1`njxg HN@xNAeqKc1 diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipecontents_containsitems.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipecontents_containsitems.png index 696b3db808b94776a6fe71014f107ca424a1031c..75b83bbd8570e60c9a7bacf76755c759b5c7d943 100644 GIT binary patch delta 21 ccmcc4lsiFXVy?u*zopr092F*YybcN delta 252 zcmd13&NM;AjV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRo<9NffF81$1j$-h1^>bP0 Hl+XkK^It@? diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipecontents_containsliquid.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipecontents_containsliquid.png index 1fb023b8dd3d015dcc4b1f7ecb6b838ca62a8434..1f1a12058aa3e37a29173828de8f256a61d1479d 100644 GIT binary patch delta 21 ccmaFBR5n3nVy^VWReGEZp00i_>zopr09K3#iU0rr delta 252 zcmXSWz%)U{jV0aD*O7r?V?XzwL{f*>2xGILV%5_40nN`MRo<9MSG-@H(eqZmA0{an^L HB{Ts5fOAB@ diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipecontents_empty.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipecontents_empty.png index 91d03ca2f388de09457ef02c66e56a9ed9ca993f..71ddbc77777ed7cfd39b70865f377c219ce3872d 100644 GIT binary patch delta 37 tcmcb@lr=#`h%>+^#I?J-TTM+(N$I~w`SKYP7ix1dc)I$ztaD0e0s!zn4DkQ} delta 252 zcmd10!Zbm}jV0aD*O7r?V?XzwL{iMgp(B|rv)alFAUXZ}i%qZmA0{an^L HB{Ts5*-Jy> diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipecontents_requestsenergy.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipecontents_requestsenergy.png index 11beb7d9b6b0ad0b325db38ae8bdb2d6cf2e1ef6..c82903b29c2be5a0598f69ccbb84da2f84260f45 100644 GIT binary patch delta 86 zcmeyxSTaE+z}nNrF+}5h@(VRVgPtsfxMnGyKj{ep&P*p_bj%K@{@b5iQQ6I^#H4=F qRN?gBigOHCnsZpD&M^s6;$yI!UzeblbRnAo2s~Z=T-G@yGywpJ6(5@b delta 221 zcmXT<#W+Ewo+aJU*O7r?V?XzwL{iU^%}o!Mu_; Q6lg4ir>mdKI;Vst0C7x3hyVZp diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipecontents_toomuchenergy.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipecontents_toomuchenergy.png index 5627dd5f9d0596c43d61c853fa36c6d8a2e389d5..06d3705d1de4898718a8a4e8de3410e6cc6a0c21 100644 GIT binary patch delta 84 zcmey#STsS!&(hPyF+}5h@(VRVgPtsfxMnGyKj{ep&P*p_bj%K@HoS`4w86pUfyyqn ol%4WCJPx)e+yYK|Dyu$X$hcE={F>PG-wZ(D>FVdQ&MBb@08|(^b delta 220 zcmXT=$v8o!o+aJU*O7r?V?XzwL{vgQS37i_7%}o$t+!j4Rj|iA0(nVl$fS;(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMGtw#ByV>YrZn!F6reKB0*}aI1_o|n z5N2eUHAiA%noa#KE+Gbn716?DN z5FwS3#}J9j$te!ZJte{kEzS7?jA?u`4n$Y&VrFGv;D5m+nE2}Y Q5e6XeboFyt=akR{0BE5T-T(jq delta 301 zcmZ3)IGK5ZiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMZbE+ByV>YkxBPYngW$^7I;J!Gca%q zgD@k*tT_@uK~+x|#}J9j$q5n$2TmM0bLiBua|chdiY7dJ_VDRraRCt_ISY42h7=)& zL%%mzX@fMBxJHzuB$lLFB^RXvDF!10LnB>716?DN5F2 diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipesignal_green_active.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipesignal_green_active.png index 770fca6c01d0862e9eb04dd156a9d0c434cfdbea..a6a8bb82b25d997465868ad49c00a9697db2e488 100644 GIT binary patch delta 40 vcmZ3*yq|G`%EVkhMvIB}j3pCQ?gulJ)G>UxX={0v0SG)@{an^LB{Ts5D98>G delta 274 zcmdnbxQcm#iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#Xx1oByV>Y(Wf_lE(R*&EbxddW?7 z16?DN5FwS3#}J9j$te!ZJte{kEsg)}6_{cQCT{;y!p_COF#9dDVDi*` Qw-|uH)78&qol`;+0FNORA^-pY delta 301 zcmZ3)IGK5ZiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMZbE+ByV>YkxBPYngW$^7I;J!Gca%q zgD@k*tT_@uK~+x|#}J9j$q5n$2TmM0bLiBua|cf{iavPs?BUbL;sPQiMgp(B|rv)LA+UDnusV+lEKr}&t;ucLK6T? C0a-)< diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipesignal_red_active.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipesignal_red_active.png index d8282638b07e8924a5a8e84b5eac01e1b87ed207..88ff07008f5b7a133f13180c74bb3982195b7321 100644 GIT binary patch delta 22 ecmZ3*e1LI+%EVm1iFaK&89ZJ6T-G@yGywo#TnHTi delta 253 zcmX@WxQcm#iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#Xxz+ByV>Y(Wf_lE(R*&EbxddW?(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#lU*TByV>Y(Wf_lE(R*&EbxddW?zm0Xkxq!^4042^UR4Rno6LW~Tp3`~JY*TBTez~I5em_H{_ zbmZozWTsW()-mynO9@beAjpce%$(G`#N1S?5+H-YAl@j9`vMP8lEKr}&t;ucLK6U& CZdteh diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipesignal_yellow_active.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipesignal_yellow_active.png index c17e566cabdeebdb860f9dc4c167815a5c429a78..2c7d3c01df98656cf7c79874f7dc97c529e5f66f 100644 GIT binary patch delta 22 ecmZ3=yqj@?%EVlciPzmY89ZJ6T-G@yGywoz`3MLA delta 253 zcmdnZxRiN(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMQ?e=ByV>YVV>PF(}2o23p^r=85p>Q zL70(Y)*Ok6nV$8kC9V-ADTyViR>?)FK#IZ0z|ct7&_LJ7B*e(j%D@zebPY_b3=AGj z{Br_m3_?S0eoAIqC2kE9&$yHTH3))iNXyJg%}dNpwJHHJ7!2Yq58mViI-h})!PC{x JWt~$(69A-%MXLY+ diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipesignal_yellow_inactive.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_pipesignal_yellow_inactive.png index ea4d30f0b10451c72c65e68f37d9db8d856a75cc..a41ad891881b9e514f8ffc4076aa22c7873b62cd 100644 GIT binary patch delta 63 zcmbQhypVB%%EVj`Qw2{K#}J9j$te!ZJte{kEzS7?jCmaIn;#tC|D}YTi-CdtDU0C4 S4@ve6K;Y@>=d#Wzp$P!I+!ewA delta 301 zcmZ3;IDvVBiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMelmXByV>YVV>PF(}2o23p^r=85p>Q zL70(Y)*K0-psJ^fV~E7%EH-I#hxJHzuB$lLFB^RXvDF!10LnB>716?DN5F8bg=d#Wzp$PzP Cz*z+V diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_redstoneinput_active.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_redstoneinput_active.png index 3e45ecb48e62a494ce2d911ae805eec1c6181f57..43f061f9d045350daf9b5e3a3a16a3e00e17e2e5 100644 GIT binary patch delta 22 ecmZ3;yq$4^%EVlciPxPt89ZJ6T-G@yGywozB?tTf delta 253 zcmdnaxR7~*iW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMQ?e=ByV>YVV>PF(}2o23p^r=85p>Q zL70(Y)*Ok6nXdJ!C9V-ADTyViR>?)FK#IZ0z|ct7&_LJ7B*e(j%D@zebPY_b3=AGj z{Br_m3_?S0eoAIqC2kE9&$yHTH3))iNXyJg%}dNpwJHHJ7!2YKcCc<#06B`m)78&q Iol`;+0FYut{Qv*} diff --git a/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_redstoneinput_inactive.png b/buildcraft_resources/mods/buildcraft/textures/items/triggers/trigger_redstoneinput_inactive.png index 0cfff2daaa5df54307c90bf3bbb3c653362a4111..515008c0bf998fcb197ff87d625bd8cd071a49d2 100644 GIT binary patch delta 73 zcmbQmyn=Cp%EVk(do52F#}J9j$q5V86H=Ot5=@kpXE6x(9ApwsP>Ev5J0@QeeSFVdQ&MBb@0ArUHk^lez delta 314 zcmZ3%IE#6LiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*AMUQ&MByV>Yq3S(3KvfK!1s;*b3=G`D zAk4@xYmNj^(8$xpF+}2Wa>4@jgcK*?gd{iNghW^2gk*Q&2M=6?A3Smse&Bfh(CK!y z1Nsf?oCHoWFlYudY_L!L^a-e2wZt`|BqgyV)hf9t6-Y4{85kPr8XD*tnS>Y_T4frT zS{az?8kkra7(AHx=LCw5-29Zxv`RD`NE#-daVY_65CmC~mYI{9mzbMsRRUx%7{nW% TXKLIAlw|O9^>bP0l+XkK=}cSB diff --git a/buildcraft_resources/mods/buildcraft/textures/items/woodenGearItem.png b/buildcraft_resources/mods/buildcraft/textures/items/woodenGearItem.png index 133351ce878f729efe21ab6bf75e36f2151299d0..3fc0e0e437a71fc2a3731579c7af7b0d246555a7 100644 GIT binary patch delta 180 zcmV;l089VF1-=82B#~|Lf0Ri?K~xwS1;H^&LqQk@!1;FnB(m>;je>ysibw!O<d&n` iQP|URi9Hn11n>{*cN_#4hD!hd0000(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#V_@YN#5=*ZsNOsz6C1dEbxddW?z13~=QVlNFIje5H6X1&NE#7-wo@b}oA%l57 z>Bs8t94X#)P~5xw=C`c37JO{w$_C7p^TJsSYVY5F_rXnoWmDd+Wuk40vc2CX76{A_ zwwPC=*mr)qcI)lGjrsl$T^T2_T>3J%YbN`Y+D$#v>VGV<`NQx)QncjwIv-F_sFt`! zl%yn}#<0|U2b-)m5GI+(^Z0FXpd^E*tDnm{r-UW|OG29k diff --git a/buildcraft_resources/mods/buildcraft/textures/items/wrenchItem.png b/buildcraft_resources/mods/buildcraft/textures/items/wrenchItem.png index edfd003e9a37e70a273454ecd141fd33ef003f1d..054050a7871dc6f12646195c34de023761310a18 100644 GIT binary patch delta 269 zcmV+o0rLK*2fGE3Be86l0e|aBL_t&-(*?mjPr^U|2H^L-58LzvMWy%^9gUU65W`{| z{NqecGDsvc!KA^Ef?|(rfztDN2-17WQj=sJIRY?bRwwV-^JoYFfz6~YI0T&Mx3}Ann1-ujkG>Hw#^7?P)#gG?Bs1G=k~IrtKx}8xF1bGL!Qa z|BY6K`1;m#-VFzIWfgbt$?NF-ZQ!7g60##`t*e>*t7t7}hkmnJ{r+py)2-R`xC?(j z-FmmOSjgHjW4FVm80}K)>Xm=LG%`KBIPdd4c^NrLVI8l&*zyCOyvi^6_SN zn$7`}nP*O$xjp`O-E!*dOG}x=55J#(Unlgq-NItwg{ST7pP%Z__T}&?EuQTxx9RL^ z{vYhx1#(%lKR7f3y{=l~8c~vxSdwa$T$Bo=7>o=IjdTqSbd5|xj0~*|Osxz|bPY_b z3=G_!eXl{$kei>9nO2EggZXa%13(RGf*>o>GILV%5_40nN`MRogLtDb?h8CXSq4v6 KKbLh*2~7aNRl5BE diff --git a/buildcraft_resources/mods/buildcraft/textures/items/yellowPipeWire.png b/buildcraft_resources/mods/buildcraft/textures/items/yellowPipeWire.png index af8657308449bb7fbd6cb8933aea8cefe9758a92..3459a7063b6ac559350e4c0f525617900a6956e2 100644 GIT binary patch delta 63 zcmbQsypC~#%Ea7IQw2{K#}J9j$te!ZJte{kEzS7?jCmaIn;#tC|D}YTi-CdtDU0C4 S4@ve6K;Y@>=d#Wzp$P!R^A+g; delta 301 zcmZ3-IG1^XiW^J1qpu?a!^VE@KZ&di3=E9LLGDfr>(0r%1acITJ%W507^>757#dm_ z7=8hT8eT9klo~KFyh>nTu$sZZAYL$MSD?*A#fW;wByV>YVV>PF(}2o23p^r=85p>Q zL70(Y)*K0-psJ^fV~E7%EH-I#hxJHzuB$lLFB^RXvDF!10LnB>716?DN5FTjn%^qD9PaI>gTe~DWM4f DN^MtJ From 0cd627ce0d45686fa4c5ee9c92a042d4d9fa5e81 Mon Sep 17 00:00:00 2001 From: SirSengir Date: Sat, 6 Jul 2013 09:41:47 +0200 Subject: [PATCH 03/48] Unused imports must die. Some formatting. --- common/buildcraft/BuildCraftSilicon.java | 1 - common/buildcraft/builders/BlockBuilder.java | 1 - common/buildcraft/builders/BlockMarker.java | 1 - .../core/inventory/InventoryIterator.java | 1 - .../energy/render/RenderEngine.java | 1 + .../energy/worldgen/SimplexNoise.java | 512 +++++++----------- .../silicon/gui/GuiAssemblyTable.java | 2 - .../silicon/network/PacketHandlerSilicon.java | 1 - .../transport/BlockGenericPipe.java | 1 + common/buildcraft/transport/EnergyPulser.java | 4 - .../buildcraft/transport/FallbackWrapper.java | 1 - common/buildcraft/transport/ItemFacade.java | 174 +++--- common/buildcraft/transport/ItemPipe.java | 1 - .../transport/gui/GuiGateInterface.java | 1 - .../transport/pipes/PipePowerWood.java | 3 - .../transport/render/TileEntityPickupFX.java | 1 - .../triggers/TriggerPipeContents.java | 1 + 17 files changed, 270 insertions(+), 437 deletions(-) diff --git a/common/buildcraft/BuildCraftSilicon.java b/common/buildcraft/BuildCraftSilicon.java index 00e15c8d..c9a7686c 100644 --- a/common/buildcraft/BuildCraftSilicon.java +++ b/common/buildcraft/BuildCraftSilicon.java @@ -36,7 +36,6 @@ import cpw.mods.fml.common.event.FMLInitializationEvent; import cpw.mods.fml.common.event.FMLPreInitializationEvent; import cpw.mods.fml.common.network.NetworkMod; import cpw.mods.fml.common.network.NetworkRegistry; -import cpw.mods.fml.common.registry.GameRegistry; import cpw.mods.fml.common.registry.LanguageRegistry; @Mod(name = "BuildCraft Silicon", version = Version.VERSION, useMetadata = false, modid = "BuildCraft|Silicon", dependencies = DefaultProps.DEPENDENCY_TRANSPORT) diff --git a/common/buildcraft/builders/BlockBuilder.java b/common/buildcraft/builders/BlockBuilder.java index 66e50894..5a728eb1 100644 --- a/common/buildcraft/builders/BlockBuilder.java +++ b/common/buildcraft/builders/BlockBuilder.java @@ -25,7 +25,6 @@ import net.minecraftforge.common.ForgeDirection; import buildcraft.BuildCraftBuilders; import buildcraft.api.core.Position; import buildcraft.api.tools.IToolWrench; -import buildcraft.core.CreativeTabBuildCraft; import buildcraft.core.GuiIds; import buildcraft.core.proxy.CoreProxy; import buildcraft.core.utils.Utils; diff --git a/common/buildcraft/builders/BlockMarker.java b/common/buildcraft/builders/BlockMarker.java index 3243420c..b93e18ec 100644 --- a/common/buildcraft/builders/BlockMarker.java +++ b/common/buildcraft/builders/BlockMarker.java @@ -25,7 +25,6 @@ import buildcraft.core.utils.Utils; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraftforge.common.ForgeDirection; -import static net.minecraftforge.common.ForgeDirection.*; public class BlockMarker extends BlockContainer { diff --git a/common/buildcraft/core/inventory/InventoryIterator.java b/common/buildcraft/core/inventory/InventoryIterator.java index d0ff6935..124a682e 100644 --- a/common/buildcraft/core/inventory/InventoryIterator.java +++ b/common/buildcraft/core/inventory/InventoryIterator.java @@ -1,6 +1,5 @@ package buildcraft.core.inventory; -import buildcraft.core.inventory.InventoryIterator.IInvSlot; import net.minecraft.inventory.IInventory; import net.minecraft.inventory.ISidedInventory; import net.minecraft.item.ItemStack; diff --git a/common/buildcraft/energy/render/RenderEngine.java b/common/buildcraft/energy/render/RenderEngine.java index 973bc21d..bb6fc3a1 100644 --- a/common/buildcraft/energy/render/RenderEngine.java +++ b/common/buildcraft/energy/render/RenderEngine.java @@ -135,6 +135,7 @@ public class RenderEngine extends TileEntitySpecialRenderer implements IInventor break; case SOUTH: case NORTH: + default: angle[0] = angleMap[orientation.ordinal()]; break; } diff --git a/common/buildcraft/energy/worldgen/SimplexNoise.java b/common/buildcraft/energy/worldgen/SimplexNoise.java index 7e5cc713..f4196c0a 100644 --- a/common/buildcraft/energy/worldgen/SimplexNoise.java +++ b/common/buildcraft/energy/worldgen/SimplexNoise.java @@ -17,345 +17,199 @@ package buildcraft.energy.worldgen; * */ -public class SimplexNoise { // Simplex noise in 2D, 3D and 4D - private static Grad grad3[] = {new Grad(1,1,0),new Grad(-1,1,0),new Grad(1,-1,0),new Grad(-1,-1,0), - new Grad(1,0,1),new Grad(-1,0,1),new Grad(1,0,-1),new Grad(-1,0,-1), - new Grad(0,1,1),new Grad(0,-1,1),new Grad(0,1,-1),new Grad(0,-1,-1)}; +public class SimplexNoise { // Simplex noise in 2D, 3D and 4D + private static Grad grad3[] = { new Grad(1, 1, 0), new Grad(-1, 1, 0), new Grad(1, -1, 0), new Grad(-1, -1, 0), new Grad(1, 0, 1), new Grad(-1, 0, 1), + new Grad(1, 0, -1), new Grad(-1, 0, -1), new Grad(0, 1, 1), new Grad(0, -1, 1), new Grad(0, 1, -1), new Grad(0, -1, -1) }; -// private static Grad grad4[]= {new Grad(0,1,1,1),new Grad(0,1,1,-1),new Grad(0,1,-1,1),new Grad(0,1,-1,-1), -// new Grad(0,-1,1,1),new Grad(0,-1,1,-1),new Grad(0,-1,-1,1),new Grad(0,-1,-1,-1), -// new Grad(1,0,1,1),new Grad(1,0,1,-1),new Grad(1,0,-1,1),new Grad(1,0,-1,-1), -// new Grad(-1,0,1,1),new Grad(-1,0,1,-1),new Grad(-1,0,-1,1),new Grad(-1,0,-1,-1), -// new Grad(1,1,0,1),new Grad(1,1,0,-1),new Grad(1,-1,0,1),new Grad(1,-1,0,-1), -// new Grad(-1,1,0,1),new Grad(-1,1,0,-1),new Grad(-1,-1,0,1),new Grad(-1,-1,0,-1), -// new Grad(1,1,1,0),new Grad(1,1,-1,0),new Grad(1,-1,1,0),new Grad(1,-1,-1,0), -// new Grad(-1,1,1,0),new Grad(-1,1,-1,0),new Grad(-1,-1,1,0),new Grad(-1,-1,-1,0)}; + // private static Grad grad4[]= {new Grad(0,1,1,1),new Grad(0,1,1,-1),new Grad(0,1,-1,1),new Grad(0,1,-1,-1), + // new Grad(0,-1,1,1),new Grad(0,-1,1,-1),new Grad(0,-1,-1,1),new Grad(0,-1,-1,-1), + // new Grad(1,0,1,1),new Grad(1,0,1,-1),new Grad(1,0,-1,1),new Grad(1,0,-1,-1), + // new Grad(-1,0,1,1),new Grad(-1,0,1,-1),new Grad(-1,0,-1,1),new Grad(-1,0,-1,-1), + // new Grad(1,1,0,1),new Grad(1,1,0,-1),new Grad(1,-1,0,1),new Grad(1,-1,0,-1), + // new Grad(-1,1,0,1),new Grad(-1,1,0,-1),new Grad(-1,-1,0,1),new Grad(-1,-1,0,-1), + // new Grad(1,1,1,0),new Grad(1,1,-1,0),new Grad(1,-1,1,0),new Grad(1,-1,-1,0), + // new Grad(-1,1,1,0),new Grad(-1,1,-1,0),new Grad(-1,-1,1,0),new Grad(-1,-1,-1,0)}; - private static short p[] = {151,160,137,91,90,15, - 131,13,201,95,96,53,194,233,7,225,140,36,103,30,69,142,8,99,37,240,21,10,23, - 190, 6,148,247,120,234,75,0,26,197,62,94,252,219,203,117,35,11,32,57,177,33, - 88,237,149,56,87,174,20,125,136,171,168, 68,175,74,165,71,134,139,48,27,166, - 77,146,158,231,83,111,229,122,60,211,133,230,220,105,92,41,55,46,245,40,244, - 102,143,54, 65,25,63,161, 1,216,80,73,209,76,132,187,208, 89,18,169,200,196, - 135,130,116,188,159,86,164,100,109,198,173,186, 3,64,52,217,226,250,124,123, - 5,202,38,147,118,126,255,82,85,212,207,206,59,227,47,16,58,17,182,189,28,42, - 223,183,170,213,119,248,152, 2,44,154,163, 70,221,153,101,155,167, 43,172,9, - 129,22,39,253, 19,98,108,110,79,113,224,232,178,185, 112,104,218,246,97,228, - 251,34,242,193,238,210,144,12,191,179,162,241, 81,51,145,235,249,14,239,107, - 49,192,214, 31,181,199,106,157,184, 84,204,176,115,121,50,45,127, 4,150,254, - 138,236,205,93,222,114,67,29,24,72,243,141,128,195,78,66,215,61,156,180}; - // To remove the need for index wrapping, double the permutation table length - private static short perm[] = new short[512]; - private static short permMod12[] = new short[512]; - static { - for(int i=0; i<512; i++) - { - perm[i]=p[i & 255]; - permMod12[i] = (short)(perm[i] % 12); - } - } + private static short p[] = { 151, 160, 137, 91, 90, 15, 131, 13, 201, 95, 96, 53, 194, 233, 7, 225, 140, 36, 103, 30, 69, 142, 8, 99, 37, 240, 21, 10, 23, + 190, 6, 148, 247, 120, 234, 75, 0, 26, 197, 62, 94, 252, 219, 203, 117, 35, 11, 32, 57, 177, 33, 88, 237, 149, 56, 87, 174, 20, 125, 136, 171, 168, + 68, 175, 74, 165, 71, 134, 139, 48, 27, 166, 77, 146, 158, 231, 83, 111, 229, 122, 60, 211, 133, 230, 220, 105, 92, 41, 55, 46, 245, 40, 244, 102, + 143, 54, 65, 25, 63, 161, 1, 216, 80, 73, 209, 76, 132, 187, 208, 89, 18, 169, 200, 196, 135, 130, 116, 188, 159, 86, 164, 100, 109, 198, 173, 186, + 3, 64, 52, 217, 226, 250, 124, 123, 5, 202, 38, 147, 118, 126, 255, 82, 85, 212, 207, 206, 59, 227, 47, 16, 58, 17, 182, 189, 28, 42, 223, 183, + 170, 213, 119, 248, 152, 2, 44, 154, 163, 70, 221, 153, 101, 155, 167, 43, 172, 9, 129, 22, 39, 253, 19, 98, 108, 110, 79, 113, 224, 232, 178, 185, + 112, 104, 218, 246, 97, 228, 251, 34, 242, 193, 238, 210, 144, 12, 191, 179, 162, 241, 81, 51, 145, 235, 249, 14, 239, 107, 49, 192, 214, 31, 181, + 199, 106, 157, 184, 84, 204, 176, 115, 121, 50, 45, 127, 4, 150, 254, 138, 236, 205, 93, 222, 114, 67, 29, 24, 72, 243, 141, 128, 195, 78, 66, 215, + 61, 156, 180 }; + // To remove the need for index wrapping, double the permutation table length + private static short perm[] = new short[512]; + private static short permMod12[] = new short[512]; + static { + for (int i = 0; i < 512; i++) { + perm[i] = p[i & 255]; + permMod12[i] = (short) (perm[i] % 12); + } + } - // Skewing and unskewing factors for 2, 3, and 4 dimensions - private static final double F2 = 0.5*(Math.sqrt(3.0)-1.0); - private static final double G2 = (3.0-Math.sqrt(3.0))/6.0; -// private static final double F3 = 1.0/3.0; -// private static final double G3 = 1.0/6.0; -// private static final double F4 = (Math.sqrt(5.0)-1.0)/4.0; -// private static final double G4 = (5.0-Math.sqrt(5.0))/20.0; + // Skewing and unskewing factors for 2, 3, and 4 dimensions + private static final double F2 = 0.5 * (Math.sqrt(3.0) - 1.0); + private static final double G2 = (3.0 - Math.sqrt(3.0)) / 6.0; - // This method is a *lot* faster than using (int)Math.floor(x) - private static int fastfloor(double x) { - int xi = (int)x; - return xy0) {i1=1; j1=0;} // lower triangle, XY order: (0,0)->(1,0)->(1,1) - else {i1=0; j1=1;} // upper triangle, YX order: (0,0)->(0,1)->(1,1) - // A step of (1,0) in (i,j) means a step of (1-c,-c) in (x,y), and - // a step of (0,1) in (i,j) means a step of (-c,1-c) in (x,y), where - // c = (3-sqrt(3))/6 - double x1 = x0 - i1 + G2; // Offsets for middle corner in (x,y) unskewed coords - double y1 = y0 - j1 + G2; - double x2 = x0 - 1.0 + 2.0 * G2; // Offsets for last corner in (x,y) unskewed coords - double y2 = y0 - 1.0 + 2.0 * G2; - // Work out the hashed gradient indices of the three simplex corners - int ii = i & 255; - int jj = j & 255; - int gi0 = permMod12[ii+perm[jj]]; - int gi1 = permMod12[ii+i1+perm[jj+j1]]; - int gi2 = permMod12[ii+1+perm[jj+1]]; - // Calculate the contribution from the three corners - double t0 = 0.5 - x0*x0-y0*y0; - if(t0<0) n0 = 0.0; - else { - t0 *= t0; - n0 = t0 * t0 * dot(grad3[gi0], x0, y0); // (x,y) of grad3 used for 2D gradient - } - double t1 = 0.5 - x1*x1-y1*y1; - if(t1<0) n1 = 0.0; - else { - t1 *= t1; - n1 = t1 * t1 * dot(grad3[gi1], x1, y1); - } - double t2 = 0.5 - x2*x2-y2*y2; - if(t2<0) n2 = 0.0; - else { - t2 *= t2; - n2 = t2 * t2 * dot(grad3[gi2], x2, y2); - } - // Add contributions from each corner to get the final noise value. - // The result is scaled to return values in the interval [-1,1]. - return 70.0 * (n0 + n1 + n2); - } + // 2D simplex noise + public static double noise(double xin, double yin) { + double n0, n1, n2; // Noise contributions from the three corners + // Skew the input space to determine which simplex cell we're in + double s = (xin + yin) * F2; // Hairy factor for 2D + int i = fastfloor(xin + s); + int j = fastfloor(yin + s); + double t = (i + j) * G2; + double X0 = i - t; // Unskew the cell origin back to (x,y) space + double Y0 = j - t; + double x0 = xin - X0; // The x,y distances from the cell origin + double y0 = yin - Y0; + // For the 2D case, the simplex shape is an equilateral triangle. + // Determine which simplex we are in. + int i1, j1; // Offsets for second (middle) corner of simplex in (i,j) coords + if (x0 > y0) { + i1 = 1; + j1 = 0; + } // lower triangle, XY order: (0,0)->(1,0)->(1,1) + else { + i1 = 0; + j1 = 1; + } // upper triangle, YX order: (0,0)->(0,1)->(1,1) + // A step of (1,0) in (i,j) means a step of (1-c,-c) in (x,y), and + // a step of (0,1) in (i,j) means a step of (-c,1-c) in (x,y), where + // c = (3-sqrt(3))/6 + double x1 = x0 - i1 + G2; // Offsets for middle corner in (x,y) unskewed coords + double y1 = y0 - j1 + G2; + double x2 = x0 - 1.0 + 2.0 * G2; // Offsets for last corner in (x,y) unskewed coords + double y2 = y0 - 1.0 + 2.0 * G2; + // Work out the hashed gradient indices of the three simplex corners + int ii = i & 255; + int jj = j & 255; + int gi0 = permMod12[ii + perm[jj]]; + int gi1 = permMod12[ii + i1 + perm[jj + j1]]; + int gi2 = permMod12[ii + 1 + perm[jj + 1]]; + // Calculate the contribution from the three corners + double t0 = 0.5 - x0 * x0 - y0 * y0; + if (t0 < 0) + n0 = 0.0; + else { + t0 *= t0; + n0 = t0 * t0 * dot(grad3[gi0], x0, y0); // (x,y) of grad3 used for 2D gradient + } + double t1 = 0.5 - x1 * x1 - y1 * y1; + if (t1 < 0) + n1 = 0.0; + else { + t1 *= t1; + n1 = t1 * t1 * dot(grad3[gi1], x1, y1); + } + double t2 = 0.5 - x2 * x2 - y2 * y2; + if (t2 < 0) + n2 = 0.0; + else { + t2 *= t2; + n2 = t2 * t2 * dot(grad3[gi2], x2, y2); + } + // Add contributions from each corner to get the final noise value. + // The result is scaled to return values in the interval [-1,1]. + return 70.0 * (n0 + n1 + n2); + } - /* + /* + * + * // 3D simplex noise public static double noise(double xin, double yin, double zin) { double n0, n1, n2, n3; // Noise contributions from the four corners + * // Skew the input space to determine which simplex cell we're in double s = (xin+yin+zin)*F3; // Very nice and simple skew factor for 3D int i = + * fastfloor(xin+s); int j = fastfloor(yin+s); int k = fastfloor(zin+s); double t = (i+j+k)*G3; double X0 = i-t; // Unskew the cell origin back to (x,y,z) + * space double Y0 = j-t; double Z0 = k-t; double x0 = xin-X0; // The x,y,z distances from the cell origin double y0 = yin-Y0; double z0 = zin-Z0; // For + * the 3D case, the simplex shape is a slightly irregular tetrahedron. // Determine which simplex we are in. int i1, j1, k1; // Offsets for second corner of + * simplex in (i,j,k) coords int i2, j2, k2; // Offsets for third corner of simplex in (i,j,k) coords if(x0>=y0) { if(y0>=z0) { i1=1; j1=0; k1=0; i2=1; + * j2=1; k2=0; } // X Y Z order else if(x0>=z0) { i1=1; j1=0; k1=0; i2=1; j2=0; k2=1; } // X Z Y order else { i1=0; j1=0; k1=1; i2=1; j2=0; k2=1; } // Z X Y + * order } else { // x0 y0) rankx++; + * else ranky++; if(x0 > z0) rankx++; else rankz++; if(x0 > w0) rankx++; else rankw++; if(y0 > z0) ranky++; else rankz++; if(y0 > w0) ranky++; else rankw++; + * if(z0 > w0) rankz++; else rankw++; int i1, j1, k1, l1; // The integer offsets for the second simplex corner int i2, j2, k2, l2; // The integer offsets + * for the third simplex corner int i3, j3, k3, l3; // The integer offsets for the fourth simplex corner // simplex[c] is a 4-vector with the numbers 0, 1, + * 2 and 3 in some order. // Many values of c will never occur, since e.g. x>y>z>w makes x= 3 ? 1 : 0; j1 = ranky >= 3 ? 1 : 0; k1 = rankz >= 3 ? 1 : 0; l1 = rankw >= 3 ? 1 : 0; // Rank 2 denotes the second largest + * coordinate. i2 = rankx >= 2 ? 1 : 0; j2 = ranky >= 2 ? 1 : 0; k2 = rankz >= 2 ? 1 : 0; l2 = rankw >= 2 ? 1 : 0; // Rank 1 denotes the second smallest + * coordinate. i3 = rankx >= 1 ? 1 : 0; j3 = ranky >= 1 ? 1 : 0; k3 = rankz >= 1 ? 1 : 0; l3 = rankw >= 1 ? 1 : 0; // The fifth corner has all coordinate + * offsets = 1, so no need to compute that. double x1 = x0 - i1 + G4; // Offsets for second corner in (x,y,z,w) coords double y1 = y0 - j1 + G4; double z1 = + * z0 - k1 + G4; double w1 = w0 - l1 + G4; double x2 = x0 - i2 + 2.0*G4; // Offsets for third corner in (x,y,z,w) coords double y2 = y0 - j2 + 2.0*G4; + * double z2 = z0 - k2 + 2.0*G4; double w2 = w0 - l2 + 2.0*G4; double x3 = x0 - i3 + 3.0*G4; // Offsets for fourth corner in (x,y,z,w) coords double y3 = y0 + * - j3 + 3.0*G4; double z3 = z0 - k3 + 3.0*G4; double w3 = w0 - l3 + 3.0*G4; double x4 = x0 - 1.0 + 4.0*G4; // Offsets for last corner in (x,y,z,w) coords + * double y4 = y0 - 1.0 + 4.0*G4; double z4 = z0 - 1.0 + 4.0*G4; double w4 = w0 - 1.0 + 4.0*G4; // Work out the hashed gradient indices of the five simplex + * corners int ii = i & 255; int jj = j & 255; int kk = k & 255; int ll = l & 255; int gi0 = perm[ii+perm[jj+perm[kk+perm[ll]]]] % 32; int gi1 = + * perm[ii+i1+perm[jj+j1+perm[kk+k1+perm[ll+l1]]]] % 32; int gi2 = perm[ii+i2+perm[jj+j2+perm[kk+k2+perm[ll+l2]]]] % 32; int gi3 = + * perm[ii+i3+perm[jj+j3+perm[kk+k3+perm[ll+l3]]]] % 32; int gi4 = perm[ii+1+perm[jj+1+perm[kk+1+perm[ll+1]]]] % 32; // Calculate the contribution from the + * five corners double t0 = 0.6 - x0*x0 - y0*y0 - z0*z0 - w0*w0; if(t0<0) n0 = 0.0; else { t0 *= t0; n0 = t0 * t0 * dot(grad4[gi0], x0, y0, z0, w0); } + * double t1 = 0.6 - x1*x1 - y1*y1 - z1*z1 - w1*w1; if(t1<0) n1 = 0.0; else { t1 *= t1; n1 = t1 * t1 * dot(grad4[gi1], x1, y1, z1, w1); } double t2 = 0.6 - + * x2*x2 - y2*y2 - z2*z2 - w2*w2; if(t2<0) n2 = 0.0; else { t2 *= t2; n2 = t2 * t2 * dot(grad4[gi2], x2, y2, z2, w2); } double t3 = 0.6 - x3*x3 - y3*y3 - + * z3*z3 - w3*w3; if(t3<0) n3 = 0.0; else { t3 *= t3; n3 = t3 * t3 * dot(grad4[gi3], x3, y3, z3, w3); } double t4 = 0.6 - x4*x4 - y4*y4 - z4*z4 - w4*w4; + * if(t4<0) n4 = 0.0; else { t4 *= t4; n4 = t4 * t4 * dot(grad4[gi4], x4, y4, z4, w4); } // Sum up and scale the result to cover the range [-1,1] return + * 27.0 * (n0 + n1 + n2 + n3 + n4); } + */ - // 3D simplex noise - public static double noise(double xin, double yin, double zin) { - double n0, n1, n2, n3; // Noise contributions from the four corners - // Skew the input space to determine which simplex cell we're in - double s = (xin+yin+zin)*F3; // Very nice and simple skew factor for 3D - int i = fastfloor(xin+s); - int j = fastfloor(yin+s); - int k = fastfloor(zin+s); - double t = (i+j+k)*G3; - double X0 = i-t; // Unskew the cell origin back to (x,y,z) space - double Y0 = j-t; - double Z0 = k-t; - double x0 = xin-X0; // The x,y,z distances from the cell origin - double y0 = yin-Y0; - double z0 = zin-Z0; - // For the 3D case, the simplex shape is a slightly irregular tetrahedron. - // Determine which simplex we are in. - int i1, j1, k1; // Offsets for second corner of simplex in (i,j,k) coords - int i2, j2, k2; // Offsets for third corner of simplex in (i,j,k) coords - if(x0>=y0) { - if(y0>=z0) - { i1=1; j1=0; k1=0; i2=1; j2=1; k2=0; } // X Y Z order - else if(x0>=z0) { i1=1; j1=0; k1=0; i2=1; j2=0; k2=1; } // X Z Y order - else { i1=0; j1=0; k1=1; i2=1; j2=0; k2=1; } // Z X Y order - } - else { // x0 y0) rankx++; else ranky++; - if(x0 > z0) rankx++; else rankz++; - if(x0 > w0) rankx++; else rankw++; - if(y0 > z0) ranky++; else rankz++; - if(y0 > w0) ranky++; else rankw++; - if(z0 > w0) rankz++; else rankw++; - int i1, j1, k1, l1; // The integer offsets for the second simplex corner - int i2, j2, k2, l2; // The integer offsets for the third simplex corner - int i3, j3, k3, l3; // The integer offsets for the fourth simplex corner - // simplex[c] is a 4-vector with the numbers 0, 1, 2 and 3 in some order. - // Many values of c will never occur, since e.g. x>y>z>w makes x= 3 ? 1 : 0; - j1 = ranky >= 3 ? 1 : 0; - k1 = rankz >= 3 ? 1 : 0; - l1 = rankw >= 3 ? 1 : 0; - // Rank 2 denotes the second largest coordinate. - i2 = rankx >= 2 ? 1 : 0; - j2 = ranky >= 2 ? 1 : 0; - k2 = rankz >= 2 ? 1 : 0; - l2 = rankw >= 2 ? 1 : 0; - // Rank 1 denotes the second smallest coordinate. - i3 = rankx >= 1 ? 1 : 0; - j3 = ranky >= 1 ? 1 : 0; - k3 = rankz >= 1 ? 1 : 0; - l3 = rankw >= 1 ? 1 : 0; - // The fifth corner has all coordinate offsets = 1, so no need to compute that. - double x1 = x0 - i1 + G4; // Offsets for second corner in (x,y,z,w) coords - double y1 = y0 - j1 + G4; - double z1 = z0 - k1 + G4; - double w1 = w0 - l1 + G4; - double x2 = x0 - i2 + 2.0*G4; // Offsets for third corner in (x,y,z,w) coords - double y2 = y0 - j2 + 2.0*G4; - double z2 = z0 - k2 + 2.0*G4; - double w2 = w0 - l2 + 2.0*G4; - double x3 = x0 - i3 + 3.0*G4; // Offsets for fourth corner in (x,y,z,w) coords - double y3 = y0 - j3 + 3.0*G4; - double z3 = z0 - k3 + 3.0*G4; - double w3 = w0 - l3 + 3.0*G4; - double x4 = x0 - 1.0 + 4.0*G4; // Offsets for last corner in (x,y,z,w) coords - double y4 = y0 - 1.0 + 4.0*G4; - double z4 = z0 - 1.0 + 4.0*G4; - double w4 = w0 - 1.0 + 4.0*G4; - // Work out the hashed gradient indices of the five simplex corners - int ii = i & 255; - int jj = j & 255; - int kk = k & 255; - int ll = l & 255; - int gi0 = perm[ii+perm[jj+perm[kk+perm[ll]]]] % 32; - int gi1 = perm[ii+i1+perm[jj+j1+perm[kk+k1+perm[ll+l1]]]] % 32; - int gi2 = perm[ii+i2+perm[jj+j2+perm[kk+k2+perm[ll+l2]]]] % 32; - int gi3 = perm[ii+i3+perm[jj+j3+perm[kk+k3+perm[ll+l3]]]] % 32; - int gi4 = perm[ii+1+perm[jj+1+perm[kk+1+perm[ll+1]]]] % 32; - // Calculate the contribution from the five corners - double t0 = 0.6 - x0*x0 - y0*y0 - z0*z0 - w0*w0; - if(t0<0) n0 = 0.0; - else { - t0 *= t0; - n0 = t0 * t0 * dot(grad4[gi0], x0, y0, z0, w0); - } - double t1 = 0.6 - x1*x1 - y1*y1 - z1*z1 - w1*w1; - if(t1<0) n1 = 0.0; - else { - t1 *= t1; - n1 = t1 * t1 * dot(grad4[gi1], x1, y1, z1, w1); - } - double t2 = 0.6 - x2*x2 - y2*y2 - z2*z2 - w2*w2; - if(t2<0) n2 = 0.0; - else { - t2 *= t2; - n2 = t2 * t2 * dot(grad4[gi2], x2, y2, z2, w2); - } - double t3 = 0.6 - x3*x3 - y3*y3 - z3*z3 - w3*w3; - if(t3<0) n3 = 0.0; - else { - t3 *= t3; - n3 = t3 * t3 * dot(grad4[gi3], x3, y3, z3, w3); - } - double t4 = 0.6 - x4*x4 - y4*y4 - z4*z4 - w4*w4; - if(t4<0) n4 = 0.0; - else { - t4 *= t4; - n4 = t4 * t4 * dot(grad4[gi4], x4, y4, z4, w4); - } - // Sum up and scale the result to cover the range [-1,1] - return 27.0 * (n0 + n1 + n2 + n3 + n4); - } - -*/ - - // Inner class to speed upp gradient computations - // (array access is a lot slower than member access) - private static class Grad - { - double x, y, z, w; - - Grad(double x, double y, double z) - { - this.x = x; - this.y = y; - this.z = z; - } - - Grad(double x, double y, double z, double w) - { - this.x = x; - this.y = y; - this.z = z; - this.w = w; - } - } + Grad(double x, double y, double z, double w) { + this.x = x; + this.y = y; + this.z = z; + this.w = w; + } + } } diff --git a/common/buildcraft/silicon/gui/GuiAssemblyTable.java b/common/buildcraft/silicon/gui/GuiAssemblyTable.java index 09765cba..a6f05d92 100644 --- a/common/buildcraft/silicon/gui/GuiAssemblyTable.java +++ b/common/buildcraft/silicon/gui/GuiAssemblyTable.java @@ -26,8 +26,6 @@ import buildcraft.core.gui.GuiAdvancedInterface; import buildcraft.core.network.PacketCoordinates; import buildcraft.core.network.PacketIds; import buildcraft.core.network.PacketNBT; -import buildcraft.core.network.PacketPayload; -import buildcraft.core.network.PacketUpdate; import buildcraft.core.proxy.CoreProxy; import buildcraft.core.utils.StringUtils; import buildcraft.silicon.TileAssemblyTable; diff --git a/common/buildcraft/silicon/network/PacketHandlerSilicon.java b/common/buildcraft/silicon/network/PacketHandlerSilicon.java index c4a3e3d6..3124a3a3 100644 --- a/common/buildcraft/silicon/network/PacketHandlerSilicon.java +++ b/common/buildcraft/silicon/network/PacketHandlerSilicon.java @@ -13,7 +13,6 @@ import buildcraft.core.network.PacketCoordinates; import buildcraft.core.network.PacketIds; import buildcraft.core.network.PacketNBT; import buildcraft.core.network.PacketSlotChange; -import buildcraft.core.network.PacketUpdate; import buildcraft.silicon.TileAdvancedCraftingTable; import buildcraft.silicon.TileAssemblyTable; import buildcraft.silicon.TileAssemblyTable.SelectionMessage; diff --git a/common/buildcraft/transport/BlockGenericPipe.java b/common/buildcraft/transport/BlockGenericPipe.java index d4d61e0a..964c73d3 100644 --- a/common/buildcraft/transport/BlockGenericPipe.java +++ b/common/buildcraft/transport/BlockGenericPipe.java @@ -438,6 +438,7 @@ public class BlockGenericPipe extends BlockContainer { case WEST: setBlockBounds(Utils.pipeMinPos - 0.10F, min, min, Utils.pipeMinPos, max, max); break; + default: case EAST: setBlockBounds(Utils.pipeMaxPos, min, min, Utils.pipeMaxPos + 0.10F, max, max); break; diff --git a/common/buildcraft/transport/EnergyPulser.java b/common/buildcraft/transport/EnergyPulser.java index 5f034c2c..8a1d4771 100644 --- a/common/buildcraft/transport/EnergyPulser.java +++ b/common/buildcraft/transport/EnergyPulser.java @@ -55,10 +55,6 @@ public class EnergyPulser { return isActive; } - private float getPulseSpeed() { - return 0.1F; - } - public void writeToNBT(NBTTagCompound nbttagcompound) { nbttagcompound.setBoolean("SinglePulse", singlePulse); nbttagcompound.setBoolean("IsActive", isActive); diff --git a/common/buildcraft/transport/FallbackWrapper.java b/common/buildcraft/transport/FallbackWrapper.java index 4d23c505..8b997120 100644 --- a/common/buildcraft/transport/FallbackWrapper.java +++ b/common/buildcraft/transport/FallbackWrapper.java @@ -1,6 +1,5 @@ package buildcraft.transport; -import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import com.google.common.base.Throwables; diff --git a/common/buildcraft/transport/ItemFacade.java b/common/buildcraft/transport/ItemFacade.java index 1fbf6c0e..51594f6a 100644 --- a/common/buildcraft/transport/ItemFacade.java +++ b/common/buildcraft/transport/ItemFacade.java @@ -18,7 +18,6 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import net.minecraftforge.common.ForgeDirection; -import buildcraft.BuildCraftCore; import buildcraft.BuildCraftTransport; import buildcraft.api.recipes.AssemblyRecipe; import buildcraft.core.CreativeTabBuildCraft; @@ -49,8 +48,8 @@ public class ItemFacade extends ItemBuildCraft { int decodedBlockId = ItemFacade.getBlockId(itemstack); int decodedMeta = ItemFacade.getMetaData(itemstack); if (decodedBlockId < Block.blocksList.length && Block.blocksList[decodedBlockId] != null && Block.blocksList[decodedBlockId].getRenderType() == 31) { - decodedMeta &= 0x3; - } + decodedMeta &= 0x3; + } ItemStack newStack = new ItemStack(decodedBlockId, 1, decodedMeta); if (Item.itemsList[decodedBlockId] != null) { name += ": " + CoreProxy.proxy.getItemDisplayName(newStack); @@ -90,8 +89,7 @@ public class ItemFacade extends ItemBuildCraft { pipeTile.dropFacade(ForgeDirection.VALID_DIRECTIONS[side]); return true; } else { - if (((TileGenericPipe) tile).addFacade(ForgeDirection.values()[side], ItemFacade.getBlockId(stack), - ItemFacade.getMetaData(stack))) { + if (((TileGenericPipe) tile).addFacade(ForgeDirection.values()[side], ItemFacade.getBlockId(stack), ItemFacade.getMetaData(stack))) { if (!player.capabilities.isCreativeMode) { stack.stackSize--; } @@ -111,12 +109,12 @@ public class ItemFacade extends ItemBuildCraft { continue; } - if (!(b.blockID == 20)){ //Explicitly allow glass - if (b.blockID == 7 //Bedrock - || b.blockID == 2 //Grass block - || b.blockID == 18 //Oak leaves - || b.blockID == 19 //Sponge - || b.blockID == 95 //Locked chest + if (!(b.blockID == 20)) { // Explicitly allow glass + if (b.blockID == 7 // Bedrock + || b.blockID == 2 // Grass block + || b.blockID == 18 // Oak leaves + || b.blockID == 19 // Sponge + || b.blockID == 95 // Locked chest ) { continue; } @@ -141,19 +139,19 @@ public class ItemFacade extends ItemBuildCraft { } public static int getMetaData(ItemStack stack) { - if(stack.hasTagCompound() && stack.getTagCompound().hasKey("meta")) + if (stack.hasTagCompound() && stack.getTagCompound().hasKey("meta")) return stack.getTagCompound().getInteger("meta"); return stack.getItemDamage() & 0x0000F; } public static int getBlockId(ItemStack stack) { - if(stack.hasTagCompound() && stack.getTagCompound().hasKey("id")) + if (stack.hasTagCompound() && stack.getTagCompound().hasKey("id")) return stack.getTagCompound().getInteger("id"); return ((stack.getItemDamage() & 0xFFF0) >>> 4); } @Override - public boolean shouldPassSneakingClickToBlock(World worldObj, int x, int y, int z ) { + public boolean shouldPassSneakingClickToBlock(World worldObj, int x, int y, int z) { // Simply send shift click to the pipe / mod block. return true; } @@ -169,98 +167,94 @@ public class ItemFacade extends ItemBuildCraft { AssemblyRecipe.assemblyRecipes.add(new AssemblyRecipe(new ItemStack[] { new ItemStack(BuildCraftTransport.pipeStructureCobblestone, 3), itemStack }, 8000, facade6)); if (itemStack.itemID < Block.blocksList.length && Block.blocksList[itemStack.itemID] != null) { - Block bl = Block.blocksList[itemStack.itemID]; + Block bl = Block.blocksList[itemStack.itemID]; - // Special handling for logs - if (bl.getRenderType() == 31) { - ItemStack mainLog = getStack(itemStack.itemID, itemStack.getItemDamage()); - ItemStack rotLog1 = getStack(itemStack.itemID, itemStack.getItemDamage() | 4); - ItemStack rotLog2 = getStack(itemStack.itemID, itemStack.getItemDamage() | 8); - allFacades.add(rotLog1); - allFacades.add(rotLog2); - } + // Special handling for logs + if (bl.getRenderType() == 31) { + ItemStack rotLog1 = getStack(itemStack.itemID, itemStack.getItemDamage() | 4); + ItemStack rotLog2 = getStack(itemStack.itemID, itemStack.getItemDamage() | 8); + allFacades.add(rotLog1); + allFacades.add(rotLog2); + } } } - private static final ItemStack NO_MATCH = new ItemStack(0,0,0); + private static final ItemStack NO_MATCH = new ItemStack(0, 0, 0); + public class FacadeRecipe implements IRecipe { - @Override - public boolean matches(InventoryCrafting inventorycrafting, World world) - { - ItemStack slotmatch = null; - for (int i = 0; i < inventorycrafting.getSizeInventory(); i++) { - ItemStack slot = inventorycrafting.getStackInSlot(i); - if (slot != null && slot.itemID == ItemFacade.this.itemID && slotmatch == null) { - slotmatch = slot; - } else if (slot != null) { - slotmatch = NO_MATCH; - } - } - if (slotmatch != null && slotmatch != NO_MATCH) { - int blockId = ItemFacade.getBlockId(slotmatch); - return blockId < Block.blocksList.length && Block.blocksList[blockId] != null && Block.blocksList[blockId].getRenderType() == 31; - } + + @Override + public boolean matches(InventoryCrafting inventorycrafting, World world) { + ItemStack slotmatch = null; + for (int i = 0; i < inventorycrafting.getSizeInventory(); i++) { + ItemStack slot = inventorycrafting.getStackInSlot(i); + if (slot != null && slot.itemID == ItemFacade.this.itemID && slotmatch == null) { + slotmatch = slot; + } else if (slot != null) { + slotmatch = NO_MATCH; + } + } + if (slotmatch != null && slotmatch != NO_MATCH) { + int blockId = ItemFacade.getBlockId(slotmatch); + return blockId < Block.blocksList.length && Block.blocksList[blockId] != null && Block.blocksList[blockId].getRenderType() == 31; + } - return false; - } + return false; + } - @Override - public ItemStack getCraftingResult(InventoryCrafting inventorycrafting) - { - ItemStack slotmatch = null; - for (int i = 0; i < inventorycrafting.getSizeInventory(); i++) { - ItemStack slot = inventorycrafting.getStackInSlot(i); - if (slot != null && slot.itemID == ItemFacade.this.itemID && slotmatch == null) { - slotmatch = slot; - } else if (slot != null) { - slotmatch = NO_MATCH; - } - } - if (slotmatch != null && slotmatch != NO_MATCH) { - int blockId = ItemFacade.getBlockId(slotmatch); - int blockMeta = ItemFacade.getMetaData(slotmatch); - if (blockId >= Block.blocksList.length) - return null; - Block bl = Block.blocksList[blockId]; - // No Meta - if (bl != null && bl.getRenderType() == 31 && (blockMeta & 0xC) == 0) - return getStack(blockId, (blockMeta & 0x3) | 4); - // Meta | 4 = true - if (bl != null && bl.getRenderType() == 31 && (blockMeta & 0x8) == 0) - return getStack(blockId, (blockMeta & 0x3) | 8); - // Meta | 8 = true - if (bl != null && bl.getRenderType() == 31 && (blockMeta & 0x4) == 0) - return getStack(blockId, (blockMeta & 0x3)); - } - return null; - } + @Override + public ItemStack getCraftingResult(InventoryCrafting inventorycrafting) { + ItemStack slotmatch = null; + for (int i = 0; i < inventorycrafting.getSizeInventory(); i++) { + ItemStack slot = inventorycrafting.getStackInSlot(i); + if (slot != null && slot.itemID == ItemFacade.this.itemID && slotmatch == null) { + slotmatch = slot; + } else if (slot != null) { + slotmatch = NO_MATCH; + } + } + if (slotmatch != null && slotmatch != NO_MATCH) { + int blockId = ItemFacade.getBlockId(slotmatch); + int blockMeta = ItemFacade.getMetaData(slotmatch); + if (blockId >= Block.blocksList.length) + return null; + Block bl = Block.blocksList[blockId]; + // No Meta + if (bl != null && bl.getRenderType() == 31 && (blockMeta & 0xC) == 0) + return getStack(blockId, (blockMeta & 0x3) | 4); + // Meta | 4 = true + if (bl != null && bl.getRenderType() == 31 && (blockMeta & 0x8) == 0) + return getStack(blockId, (blockMeta & 0x3) | 8); + // Meta | 8 = true + if (bl != null && bl.getRenderType() == 31 && (blockMeta & 0x4) == 0) + return getStack(blockId, (blockMeta & 0x3)); + } + return null; + } - @Override - public int getRecipeSize() - { - return 1; - } + @Override + public int getRecipeSize() { + return 1; + } - @Override - public ItemStack getRecipeOutput() - { - return null; - } + @Override + public ItemStack getRecipeOutput() { + return null; + } } + @Override @SideOnly(Side.CLIENT) - public void registerIcons(IconRegister par1IconRegister) - { - // NOOP + public void registerIcons(IconRegister par1IconRegister) { + // NOOP } @Override - @SideOnly(Side.CLIENT) - public int getSpriteNumber() - { - return 0; - } + @SideOnly(Side.CLIENT) + public int getSpriteNumber() { + return 0; + } public static ItemStack getStack(int blockID, int metadata) { ItemStack stack = new ItemStack(BuildCraftTransport.facadeItem, 1, 0); diff --git a/common/buildcraft/transport/ItemPipe.java b/common/buildcraft/transport/ItemPipe.java index 6955ec49..e64e1dd0 100644 --- a/common/buildcraft/transport/ItemPipe.java +++ b/common/buildcraft/transport/ItemPipe.java @@ -21,7 +21,6 @@ import buildcraft.api.core.IIconProvider; import buildcraft.core.CreativeTabBuildCraft; import buildcraft.core.IItemPipe; import buildcraft.core.ItemBuildCraft; -import buildcraft.transport.pipes.PipePowerCobblestone; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import java.util.List; diff --git a/common/buildcraft/transport/gui/GuiGateInterface.java b/common/buildcraft/transport/gui/GuiGateInterface.java index 70f69c47..c13e3d8d 100644 --- a/common/buildcraft/transport/gui/GuiGateInterface.java +++ b/common/buildcraft/transport/gui/GuiGateInterface.java @@ -17,7 +17,6 @@ import net.minecraft.util.Icon; import org.lwjgl.opengl.GL11; -import buildcraft.BuildCraftCore; import buildcraft.api.gates.IAction; import buildcraft.api.gates.ITrigger; import buildcraft.api.gates.ITriggerParameter; diff --git a/common/buildcraft/transport/pipes/PipePowerWood.java b/common/buildcraft/transport/pipes/PipePowerWood.java index a75465c6..c2fbe0ac 100644 --- a/common/buildcraft/transport/pipes/PipePowerWood.java +++ b/common/buildcraft/transport/pipes/PipePowerWood.java @@ -13,15 +13,12 @@ import buildcraft.api.core.IIconProvider; import buildcraft.api.power.IPowerProvider; import buildcraft.api.power.IPowerReceptor; import buildcraft.api.power.PowerFramework; -import buildcraft.core.utils.Utils; import buildcraft.transport.Pipe; import buildcraft.transport.PipeIconProvider; import buildcraft.transport.PipeTransportPower; -import buildcraft.transport.TileGenericPipe; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.tileentity.TileEntity; public class PipePowerWood extends Pipe implements IPowerReceptor { diff --git a/common/buildcraft/transport/render/TileEntityPickupFX.java b/common/buildcraft/transport/render/TileEntityPickupFX.java index a891d059..a31a3690 100644 --- a/common/buildcraft/transport/render/TileEntityPickupFX.java +++ b/common/buildcraft/transport/render/TileEntityPickupFX.java @@ -12,7 +12,6 @@ package buildcraft.transport.render; import net.minecraft.client.particle.EntityFX; -import net.minecraft.client.particle.EntityPickupFX; import net.minecraft.client.renderer.OpenGlHelper; import net.minecraft.client.renderer.Tessellator; import net.minecraft.client.renderer.entity.RenderManager; diff --git a/common/buildcraft/transport/triggers/TriggerPipeContents.java b/common/buildcraft/transport/triggers/TriggerPipeContents.java index d039f2f1..059beb69 100644 --- a/common/buildcraft/transport/triggers/TriggerPipeContents.java +++ b/common/buildcraft/transport/triggers/TriggerPipeContents.java @@ -130,6 +130,7 @@ public class TriggerPipeContents extends BCTrigger implements ITriggerPipe { case RequestsEnergy: PipePowerWood wood = (PipePowerWood) pipe; return wood.requestsPower(); + default: case TooMuchEnergy: return transportPower.isOverloaded(); } From f074c0ad6a3f2dfe1ebde43f2835f044637dbc98 Mon Sep 17 00:00:00 2001 From: SirSengir Date: Wed, 10 Jul 2013 20:39:48 +0200 Subject: [PATCH 04/48] Fix incorrect casts in gui code. Caused by removed IInventory implementations. --- common/buildcraft/core/inventory/SimpleInventory.java | 2 +- common/buildcraft/transport/GuiHandler.java | 4 ++-- common/buildcraft/transport/gui/GuiDiamondPipe.java | 2 +- common/buildcraft/transport/gui/GuiEmeraldPipe.java | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/common/buildcraft/core/inventory/SimpleInventory.java b/common/buildcraft/core/inventory/SimpleInventory.java index e88e0a60..11384ed8 100644 --- a/common/buildcraft/core/inventory/SimpleInventory.java +++ b/common/buildcraft/core/inventory/SimpleInventory.java @@ -87,7 +87,7 @@ public class SimpleInventory implements IInventory, INBTTagable { @Override public boolean isUseableByPlayer(EntityPlayer entityplayer) { - return false; + return true; } @Override diff --git a/common/buildcraft/transport/GuiHandler.java b/common/buildcraft/transport/GuiHandler.java index a3eb898d..a1e2eebd 100644 --- a/common/buildcraft/transport/GuiHandler.java +++ b/common/buildcraft/transport/GuiHandler.java @@ -1,7 +1,6 @@ package buildcraft.transport; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.inventory.IInventory; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; import buildcraft.core.GuiIds; @@ -13,6 +12,7 @@ import buildcraft.transport.gui.GuiDiamondPipe; import buildcraft.transport.gui.GuiEmeraldPipe; import buildcraft.transport.gui.GuiFilteredBuffer; import buildcraft.transport.gui.GuiGateInterface; +import buildcraft.transport.pipes.PipeItemsEmerald; import buildcraft.transport.pipes.PipeLogicDiamond; import cpw.mods.fml.common.network.IGuiHandler; @@ -43,7 +43,7 @@ public class GuiHandler implements IGuiHandler { return new ContainerDiamondPipe(player.inventory, ((PipeLogicDiamond) pipe.pipe.logic).getFilters()); case GuiIds.PIPE_EMERALD_ITEM: - return new ContainerEmeraldPipe(player.inventory, (IInventory) pipe.pipe); + return new ContainerEmeraldPipe(player.inventory, ((PipeItemsEmerald) pipe.pipe).getFilters()); case GuiIds.GATES: return new ContainerGateInterface(player.inventory, pipe.pipe); diff --git a/common/buildcraft/transport/gui/GuiDiamondPipe.java b/common/buildcraft/transport/gui/GuiDiamondPipe.java index 32a88a58..08c09a52 100644 --- a/common/buildcraft/transport/gui/GuiDiamondPipe.java +++ b/common/buildcraft/transport/gui/GuiDiamondPipe.java @@ -23,7 +23,7 @@ public class GuiDiamondPipe extends GuiBuildCraft { PipeLogicDiamond filterInventory; public GuiDiamondPipe(IInventory playerInventory, TileGenericPipe tile) { - super(new ContainerDiamondPipe(playerInventory, (IInventory) tile.pipe.logic), (IInventory) tile.pipe.logic); + super(new ContainerDiamondPipe(playerInventory, ((PipeLogicDiamond)tile.pipe.logic).getFilters()), ((PipeLogicDiamond)tile.pipe.logic).getFilters()); this.playerInventory = playerInventory; this.filterInventory = (PipeLogicDiamond) tile.pipe.logic; xSize = 175; diff --git a/common/buildcraft/transport/gui/GuiEmeraldPipe.java b/common/buildcraft/transport/gui/GuiEmeraldPipe.java index 65fddd01..91265724 100644 --- a/common/buildcraft/transport/gui/GuiEmeraldPipe.java +++ b/common/buildcraft/transport/gui/GuiEmeraldPipe.java @@ -23,7 +23,7 @@ public class GuiEmeraldPipe extends GuiBuildCraft { PipeItemsEmerald filterInventory; public GuiEmeraldPipe(IInventory playerInventory, TileGenericPipe tile) { - super(new ContainerEmeraldPipe(playerInventory, (IInventory) tile.pipe), (IInventory) tile.pipe); + super(new ContainerEmeraldPipe(playerInventory, ((PipeItemsEmerald) tile.pipe).getFilters()), ((PipeItemsEmerald) tile.pipe).getFilters()); this.playerInventory = playerInventory; this.filterInventory = (PipeItemsEmerald) tile.pipe; xSize = 175; From 1b186df3f8b8797db2fcf87a27cbdbc999ea6644 Mon Sep 17 00:00:00 2001 From: SirSengir Date: Fri, 12 Jul 2013 09:33:15 +0200 Subject: [PATCH 05/48] Changes for 3.7.2 build. --- buildcraft_resources/build.number | 4 ++-- buildcraft_resources/build.xml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/buildcraft_resources/build.number b/buildcraft_resources/build.number index f793c6ee..b2bb5644 100644 --- a/buildcraft_resources/build.number +++ b/buildcraft_resources/build.number @@ -1,3 +1,3 @@ #Build Number for ANT. Do not edit! -#Sat Jun 22 09:37:58 CEST 2013 -build.number=35 +#Wed Jul 10 20:46:39 CEST 2013 +build.number=36 diff --git a/buildcraft_resources/build.xml b/buildcraft_resources/build.xml index 59abbc3b..e0e33e3f 100644 --- a/buildcraft_resources/build.xml +++ b/buildcraft_resources/build.xml @@ -17,7 +17,7 @@ - + From f6e7617ee9e0582a375b9622e5bc773c4178e757 Mon Sep 17 00:00:00 2001 From: denoflions Date: Fri, 26 Jul 2013 21:35:28 -0400 Subject: [PATCH 06/48] Update Forge to last 1.5.2 version in build script. --- build.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.xml b/build.xml index 992c735e..a2365c4a 100644 --- a/build.xml +++ b/build.xml @@ -19,7 +19,7 @@ - + From 73fa5865c70df9a4993b70245f967f42d204d061 Mon Sep 17 00:00:00 2001 From: oitsjustjose Date: Sun, 28 Jul 2013 09:15:33 -0500 Subject: [PATCH 07/48] Little tweak to make 3rd person held wrench item look better Just threw in isFull3D so that way the wrench is held outward instead of sideways. Looks significantly better --- common/buildcraft/core/ItemWrench.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/common/buildcraft/core/ItemWrench.java b/common/buildcraft/core/ItemWrench.java index 4bb3cb7e..97418cc9 100644 --- a/common/buildcraft/core/ItemWrench.java +++ b/common/buildcraft/core/ItemWrench.java @@ -37,4 +37,11 @@ public class ItemWrench extends ItemBuildCraft implements IToolWrench { public boolean shouldPassSneakingClickToBlock(World par2World, int par4, int par5, int par6) { return true; } + + @Override + @SideOnly(Side.CLIENT) + public boolean isFull3D() + { + return true; + } } From 31d1e522e844f1f011b4b4dfbee8784424b76b35 Mon Sep 17 00:00:00 2001 From: tommy1019 Date: Sun, 28 Jul 2013 17:56:11 -0500 Subject: [PATCH 08/48] Fixed Texture fighting issues with Gates/Plugs --- .../transport/render/PipeWorldRenderer.java | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/common/buildcraft/transport/render/PipeWorldRenderer.java b/common/buildcraft/transport/render/PipeWorldRenderer.java index 5e013b77..973fa6e1 100644 --- a/common/buildcraft/transport/render/PipeWorldRenderer.java +++ b/common/buildcraft/transport/render/PipeWorldRenderer.java @@ -361,7 +361,7 @@ public class PipeWorldRenderer implements ISimpleBlockRenderingHandler { zeroState[0][1] = 0.75F - zFightOffset; // Y START - END zeroState[1][0] = 0.125F; - zeroState[1][1] = 0.25F; + zeroState[1][1] = 0.251F; // Z START - END zeroState[2][0] = 0.25F + zFightOffset; zeroState[2][1] = 0.75F - zFightOffset; @@ -537,37 +537,37 @@ public class PipeWorldRenderer implements ISimpleBlockRenderingHandler { float max = Utils.pipeMaxPos - 0.05F; if (shouldRenderNormalPipeSide(state, ForgeDirection.WEST)) { - block.setBlockBounds(Utils.pipeMinPos - 0.10F, min, min, Utils.pipeMinPos, max, max); + block.setBlockBounds(Utils.pipeMinPos - 0.10F, min, min, Utils.pipeMinPos + 0.001F, max, max); renderblocks.setRenderBoundsFromBlock(block); renderblocks.renderStandardBlock(block, x, y, z); } if (shouldRenderNormalPipeSide(state, ForgeDirection.EAST)) { - block.setBlockBounds(Utils.pipeMaxPos, min, min, Utils.pipeMaxPos + 0.10F, max, max); + block.setBlockBounds(Utils.pipeMaxPos + 0.001F, min, min, Utils.pipeMaxPos + 0.10F, max, max); renderblocks.setRenderBoundsFromBlock(block); renderblocks.renderStandardBlock(block, x, y, z); } if (shouldRenderNormalPipeSide(state, ForgeDirection.DOWN)) { - block.setBlockBounds(min, Utils.pipeMinPos - 0.10F, min, max, Utils.pipeMinPos, max); + block.setBlockBounds(min, Utils.pipeMinPos - 0.10F, min, max, Utils.pipeMinPos + 0.001F, max); renderblocks.setRenderBoundsFromBlock(block); renderblocks.renderStandardBlock(block, x, y, z); } if (shouldRenderNormalPipeSide(state, ForgeDirection.UP)) { - block.setBlockBounds(min, Utils.pipeMaxPos, min, max, Utils.pipeMaxPos + 0.10F, max); + block.setBlockBounds(min, Utils.pipeMaxPos + 0.001F, min, max, Utils.pipeMaxPos + 0.10F, max); renderblocks.setRenderBoundsFromBlock(block); renderblocks.renderStandardBlock(block, x, y, z); } if (shouldRenderNormalPipeSide(state, ForgeDirection.NORTH)) { - block.setBlockBounds(min, min, Utils.pipeMinPos - 0.10F, max, max, Utils.pipeMinPos); + block.setBlockBounds(min, min, Utils.pipeMinPos - 0.10F, max, max, Utils.pipeMinPos + 0.001F); renderblocks.setRenderBoundsFromBlock(block); renderblocks.renderStandardBlock(block, x, y, z); } if (shouldRenderNormalPipeSide(state, ForgeDirection.SOUTH)) { - block.setBlockBounds(min, min, Utils.pipeMaxPos, max, max, Utils.pipeMaxPos + 0.10F); + block.setBlockBounds(min, min, Utils.pipeMaxPos + 0.001F, max, max, Utils.pipeMaxPos + 0.10F); renderblocks.setRenderBoundsFromBlock(block); renderblocks.renderStandardBlock(block, x, y, z); } From de39b79ea0f1ba7969cff3040de7fe6898620af4 Mon Sep 17 00:00:00 2001 From: tommy1019 Date: Sun, 28 Jul 2013 20:21:47 -0500 Subject: [PATCH 09/48] Added "smart" refinery gui Shift-left clicking clears the filter Right clicking sets the filter to the current fluid in the corresponding tank --- .../buildcraft/factory/gui/GuiRefinery.java | 23 +++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/common/buildcraft/factory/gui/GuiRefinery.java b/common/buildcraft/factory/gui/GuiRefinery.java index 40bfc0f9..5a0ed979 100644 --- a/common/buildcraft/factory/gui/GuiRefinery.java +++ b/common/buildcraft/factory/gui/GuiRefinery.java @@ -75,12 +75,27 @@ public class GuiRefinery extends GuiAdvancedInterface { int position = getSlotAtLocation(i - cornerX, j - cornerY); if (position >= 0 && position < 2) { - FluidStack liquid = FluidContainerRegistry.getFluidForFilledItem(mc.thePlayer.inventory.getItemStack()); + if (k == 0) { + if (!this.isShiftKeyDown()) { + FluidStack liquid = FluidContainerRegistry.getFluidForFilledItem(mc.thePlayer.inventory.getItemStack()); - if (liquid == null) - return; + if (liquid == null) { + return; + } - container.setFilter(position, liquid.getFluid()); + container.setFilter(position, liquid.getFluid()); + return; + } else { + container.setFilter(position, null); + } + } else { + TileRefinery ref = (TileRefinery) this.tile; + + if (position == 0) + container.setFilter(position, ref.tank1.getFluidType()); + else if (position == 1) + container.setFilter(position, ref.tank2.getFluidType()); + } } } From 2d50a239cccb3dcfc34c0bead5f431ff4ca83db3 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Mon, 29 Jul 2013 12:17:07 -0700 Subject: [PATCH 10/48] Revert "Little tweak to make 3rd person held wrench item look better" This reverts commit 73fa5865c70df9a4993b70245f967f42d204d061. --- common/buildcraft/core/ItemWrench.java | 7 ------- 1 file changed, 7 deletions(-) diff --git a/common/buildcraft/core/ItemWrench.java b/common/buildcraft/core/ItemWrench.java index 97418cc9..4bb3cb7e 100644 --- a/common/buildcraft/core/ItemWrench.java +++ b/common/buildcraft/core/ItemWrench.java @@ -37,11 +37,4 @@ public class ItemWrench extends ItemBuildCraft implements IToolWrench { public boolean shouldPassSneakingClickToBlock(World par2World, int par4, int par5, int par6) { return true; } - - @Override - @SideOnly(Side.CLIENT) - public boolean isFull3D() - { - return true; - } } From 422f9855a47855e8e767ca023aa31e0297213ca9 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Mon, 29 Jul 2013 12:19:16 -0700 Subject: [PATCH 11/48] Make Wrench full 3D --- common/buildcraft/core/ItemWrench.java | 1 + 1 file changed, 1 insertion(+) diff --git a/common/buildcraft/core/ItemWrench.java b/common/buildcraft/core/ItemWrench.java index a796367f..49fd0919 100644 --- a/common/buildcraft/core/ItemWrench.java +++ b/common/buildcraft/core/ItemWrench.java @@ -11,6 +11,7 @@ public class ItemWrench extends ItemBuildCraft implements IToolWrench { public ItemWrench(int i) { super(i); + setFull3D(); } @Override From cf87c4229dabd1f9986eb54974e48a4be175ce21 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Mon, 29 Jul 2013 20:35:42 -0700 Subject: [PATCH 12/48] Added disconnects to the version check --- common/buildcraft/core/Version.java | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/common/buildcraft/core/Version.java b/common/buildcraft/core/Version.java index 35f75fd9..20150603 100644 --- a/common/buildcraft/core/Version.java +++ b/common/buildcraft/core/Version.java @@ -68,14 +68,22 @@ public class Version implements Runnable { HttpURLConnection conn = null; while (location != null && !location.isEmpty()) { URL url = new URL(location); + + if(conn != null) + conn.disconnect(); + conn = (HttpURLConnection) url.openConnection(); conn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.0.11) Gecko/2009060215 Firefox/3.0.11 (.NET CLR 3.5.30729)"); conn.connect(); location = conn.getHeaderField("Location"); } + + if(conn == null) + throw new NullPointerException(); BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream())); + conn.disconnect(); String line = null; String mcVersion = CoreProxy.proxy.getMinecraftVersion(); @@ -122,16 +130,24 @@ public class Version implements Runnable { HttpURLConnection conn = null; while (location != null && !location.isEmpty()) { URL url = new URL(location); + + if(conn != null) + conn.disconnect(); + conn = (HttpURLConnection) url.openConnection(); conn.setRequestProperty("User-Agent", "Mozilla/5.0 (Windows; U; Windows NT 6.0; ru; rv:1.9.0.11) Gecko/2009060215 Firefox/3.0.11 (.NET CLR 3.5.30729)"); conn.connect(); location = conn.getHeaderField("Location"); } - + + if(conn == null) + throw new NullPointerException(); + BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream())); + conn.disconnect(); - String line = null; + String line; ArrayList changelog = new ArrayList(); while ((line = reader.readLine()) != null) { if (line.startsWith("#")) { From ce3e10814a586815afa6c597412ad216eac26019 Mon Sep 17 00:00:00 2001 From: Krapht Date: Tue, 30 Jul 2013 11:51:06 +0200 Subject: [PATCH 13/48] Update README.md Added NoSuchMethodException --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index fee81d35..1ee09437 100644 --- a/README.md +++ b/README.md @@ -14,6 +14,7 @@ less time coding and more time doing stuff that makes them less grumpy. #### Frequently reported * java.lang.AbstractMethodError - Incompatibility between BC/Forge/Mod using BC API. Usually not a BC issue +* java.lang.NoSuchMethodException - Same as above * Render issue (Quarry causes flickering) - Try without optifine, if it still flickers, report it ### Compiling and packaging Buildcraft From d1205129340507b8e0e04ba23c04cea414f81c82 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Wed, 31 Jul 2013 01:56:53 -0700 Subject: [PATCH 14/48] Some minor Pipe content render improvements --- .../transport/render/RenderPipe.java | 54 ++++++++++--------- 1 file changed, 30 insertions(+), 24 deletions(-) diff --git a/common/buildcraft/transport/render/RenderPipe.java b/common/buildcraft/transport/render/RenderPipe.java index c3ed5625..f1bf27c5 100644 --- a/common/buildcraft/transport/render/RenderPipe.java +++ b/common/buildcraft/transport/render/RenderPipe.java @@ -244,24 +244,27 @@ public class RenderPipe extends TileEntitySpecialRenderer { if (BuildCraftCore.render == RenderMode.NoDynamic) return; - initializeDisplayPowerList(tileentity.worldObj); - - TileGenericPipe pipe = ((TileGenericPipe) tileentity); + TileGenericPipe pipe = (TileGenericPipe) tileentity; if (pipe.pipe == null) return; - if (pipe.pipe.transport instanceof PipeTransportItems) { - renderSolids(pipe.pipe, x, y, z); - } else if (pipe.pipe.transport instanceof PipeTransportFluids) { - renderFluids(pipe.pipe, x, y, z); - } else if (pipe.pipe.transport instanceof PipeTransportPower) { - renderPower(pipe.pipe, x, y, z); + switch (pipe.getPipeType()) { + case ITEM: + renderSolids(pipe.pipe, x, y, z); + break; + case FLUID: + renderFluids(pipe.pipe, x, y, z); + break; + case POWER: + renderPower(pipe.pipe, x, y, z); + break; } - } private void renderPower(Pipe pipe, double x, double y, double z) { + initializeDisplayPowerList(pipe.container.worldObj); + PipeTransportPower pow = pipe.transport; GL11.glPushMatrix(); @@ -299,7 +302,19 @@ public class RenderPipe extends TileEntitySpecialRenderer { } private void renderFluids(Pipe pipe, double x, double y, double z) { - PipeTransportFluids liq = pipe.transport; + PipeTransportFluids trans = pipe.transport; + + boolean needsRender = false; + for (int i = 0; i < 7; ++i) { + FluidStack liquid = trans.renderCache[i]; + if (liquid != null && liquid.amount > 0) { + needsRender = true; + break; + } + } + + if (!needsRender) + return; GL11.glPushMatrix(); GL11.glPushAttrib(GL11.GL_ENABLE_BIT); @@ -315,11 +330,7 @@ public class RenderPipe extends TileEntitySpecialRenderer { boolean sides = false, above = false; for (int i = 0; i < 6; ++i) { - // IFluidTank tank = liq.getTanks()[i]; - // FluidStack liquid = tank.getFluid(); - FluidStack liquid = liq.renderCache[i]; - // int amount = liquid != null ? liquid.amount : 0; - // int amount = liquid != null ? liq.renderAmmount[i] : 0; + FluidStack liquid = trans.renderCache[i]; if (liquid != null && liquid.amount > 0) { DisplayFluidList d = getListFromBuffer(liquid, pipe.container.worldObj); @@ -328,7 +339,7 @@ public class RenderPipe extends TileEntitySpecialRenderer { continue; } - int stage = (int) ((float) liquid.amount / (float) (liq.getCapacity()) * (LIQUID_STAGES - 1)); + int stage = (int) ((float) liquid.amount / (float) (trans.getCapacity()) * (LIQUID_STAGES - 1)); GL11.glPushMatrix(); int list = 0; @@ -362,18 +373,13 @@ public class RenderPipe extends TileEntitySpecialRenderer { } } // CENTER - // IFluidTank tank = liq.getTanks()[ForgeDirection.Unknown.ordinal()]; - // FluidStack liquid = tank.getFluid(); - FluidStack liquid = liq.renderCache[ForgeDirection.UNKNOWN.ordinal()]; + FluidStack liquid = trans.renderCache[ForgeDirection.UNKNOWN.ordinal()]; - // int amount = liquid != null ? liquid.amount : 0; - // int amount = liquid != null ? liq.renderAmmount[ForgeDirection.Unknown.ordinal()] : 0; if (liquid != null && liquid.amount > 0) { - // DisplayFluidList d = getListFromBuffer(liq.getTanks()[ForgeDirection.Unknown.ordinal()].getFluid(), pipe.worldObj); DisplayFluidList d = getListFromBuffer(liquid, pipe.container.worldObj); if (d != null) { - int stage = (int) ((float) liquid.amount / (float) (liq.getCapacity()) * (LIQUID_STAGES - 1)); + int stage = (int) ((float) liquid.amount / (float) (trans.getCapacity()) * (LIQUID_STAGES - 1)); func_110628_a(TextureMap.field_110575_b); From 658718e3ac807ffae52f1a959c302fb39d12f37d Mon Sep 17 00:00:00 2001 From: SirSengir Date: Wed, 31 Jul 2013 11:58:39 +0200 Subject: [PATCH 15/48] Remove SideOnly in PacketPayload SideOnly should only ever be a last resort. --- common/buildcraft/core/network/PacketPayload.java | 1 - 1 file changed, 1 deletion(-) diff --git a/common/buildcraft/core/network/PacketPayload.java b/common/buildcraft/core/network/PacketPayload.java index 5f1074ef..98eaa9df 100644 --- a/common/buildcraft/core/network/PacketPayload.java +++ b/common/buildcraft/core/network/PacketPayload.java @@ -23,7 +23,6 @@ public abstract class PacketPayload { public abstract void writeData(DataOutputStream data) throws IOException; - @SideOnly(Side.CLIENT) public abstract void readData(DataInputStream data) throws IOException; public abstract Type getType(); From a2d30930dea7c63f660ed5db4d6daeb7f6546a3b Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Wed, 31 Jul 2013 03:23:17 -0700 Subject: [PATCH 16/48] Fix Iron Fluid Pipe rotation --- common/buildcraft/transport/pipes/PipeFluidsIron.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/common/buildcraft/transport/pipes/PipeFluidsIron.java b/common/buildcraft/transport/pipes/PipeFluidsIron.java index f861a0e5..0dc917ea 100644 --- a/common/buildcraft/transport/pipes/PipeFluidsIron.java +++ b/common/buildcraft/transport/pipes/PipeFluidsIron.java @@ -15,6 +15,7 @@ import buildcraft.transport.PipeTransportFluids; import buildcraft.transport.TileGenericPipe; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.ForgeDirection; import net.minecraftforge.fluids.IFluidHandler; @@ -45,6 +46,11 @@ public class PipeFluidsIron extends Pipe { super(new PipeTransportFluids(), itemID); } + @Override + public boolean blockActivated(EntityPlayer entityplayer) { + return logic.blockActivated(entityplayer); + } + @Override public void onNeighborBlockChange(int blockId) { logic.switchOnRedstone(); From 10d9d2bb10a2ce70eea5055f150d2afa5dfedbd9 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Wed, 31 Jul 2013 14:10:53 -0700 Subject: [PATCH 17/48] Fix some minor isAir checks that were missed --- common/buildcraft/builders/TileArchitect.java | 2 +- common/buildcraft/core/utils/BlockUtil.java | 5 ++--- common/buildcraft/factory/TileMiningWell.java | 4 ++-- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/common/buildcraft/builders/TileArchitect.java b/common/buildcraft/builders/TileArchitect.java index 9cb8e51a..6ab31506 100644 --- a/common/buildcraft/builders/TileArchitect.java +++ b/common/buildcraft/builders/TileArchitect.java @@ -141,7 +141,7 @@ public class TileArchitect extends TileBuildCraft implements IInventory { for (int x = box.xMin; x <= box.xMax; ++x) { for (int y = box.yMin; y <= box.yMax; ++y) { for (int z = box.zMin; z <= box.zMax; ++z) { - if (worldObj.getBlockId(x, y, z) != 0) { + if (!worldObj.isAirBlock(x, y, z)) { result.setBlockId(x - box.xMin, y - box.yMin, z - box.zMin, mask1); } else { result.setBlockId(x - box.xMin, y - box.yMin, z - box.zMin, mask0); diff --git a/common/buildcraft/core/utils/BlockUtil.java b/common/buildcraft/core/utils/BlockUtil.java index 463d69ff..d1ddfac7 100644 --- a/common/buildcraft/core/utils/BlockUtil.java +++ b/common/buildcraft/core/utils/BlockUtil.java @@ -49,9 +49,8 @@ public class BlockUtil { } public static void breakBlock(World world, int x, int y, int z, int forcedLifespan) { - int blockId = world.getBlockId(x, y, z); - - if (blockId != 0 && BuildCraftCore.dropBrokenBlocks && !world.isRemote && world.getGameRules().getGameRuleBooleanValue("doTileDrops")) { + if (!world.isAirBlock(x, y, z) && BuildCraftCore.dropBrokenBlocks && !world.isRemote && world.getGameRules().getGameRuleBooleanValue("doTileDrops")) { + int blockId = world.getBlockId(x, y, z); List items = Block.blocksList[blockId].getBlockDropped(world, x, y, z, world.getBlockMetadata(x, y, z), 0); for (ItemStack item : items) { diff --git a/common/buildcraft/factory/TileMiningWell.java b/common/buildcraft/factory/TileMiningWell.java index 4654f416..ba4d5257 100644 --- a/common/buildcraft/factory/TileMiningWell.java +++ b/common/buildcraft/factory/TileMiningWell.java @@ -57,13 +57,13 @@ public class TileMiningWell extends TileBuildCraft implements IMachine, IPowerRe return; } - int blockId = world.getBlockId(xCoord, depth, zCoord); + boolean wasAir = world.isAirBlock(xCoord, depth, zCoord); List stacks = BlockUtil.getItemStackFromBlock(worldObj, xCoord, depth, zCoord); world.setBlock(xCoord, depth, zCoord, BuildCraftFactory.plainPipeBlock.blockID); - if (blockId == 0) + if (wasAir) return; if (stacks == null || stacks.isEmpty()) From 4c056e989c9ac15861a394a3f1ac544979f4e559 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Wed, 31 Jul 2013 14:28:22 -0700 Subject: [PATCH 18/48] Power spikes mess with Request triggers --- common/buildcraft/transport/pipes/PipePowerWood.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/buildcraft/transport/pipes/PipePowerWood.java b/common/buildcraft/transport/pipes/PipePowerWood.java index 12ffe3e0..49c2264c 100644 --- a/common/buildcraft/transport/pipes/PipePowerWood.java +++ b/common/buildcraft/transport/pipes/PipePowerWood.java @@ -38,7 +38,7 @@ public class PipePowerWood extends Pipe implements IPowerRec } private void initPowerProvider() { - powerHandler.configure(2, 1000, 1, 1500); + powerHandler.configure(2, 250, 1, 1500); powerHandler.configurePowerPerdition(1, 10); } From fad6b9f4699a7d71dfc18bce4f9c62bac1951cd4 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Wed, 31 Jul 2013 15:16:18 -0700 Subject: [PATCH 19/48] Adjust Iron Fluid Pipe Texture to match Item Pipe --- .../textures/blocks/pipeFluidsIron_standard.png | Bin 266 -> 305 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/buildcraft_resources/assets/buildcraft/textures/blocks/pipeFluidsIron_standard.png b/buildcraft_resources/assets/buildcraft/textures/blocks/pipeFluidsIron_standard.png index ca8fa99dba171786d90a7a9db174339f4ec3c207..93a1765461ad443054eb7970c98a4a7ec2c6b708 100644 GIT binary patch delta 172 zcmV;d08{^p0@kXeGMSm3m|7vf*D`|gd9-#0ufz3*Z}0vCKQP1>aoTGuBak97DzIH mVlPk}h?GPj)-V}?c>w@VsuuV=$I@E>0000 Date: Wed, 31 Jul 2013 15:41:35 -0700 Subject: [PATCH 20/48] Fix pump output --- common/buildcraft/factory/TilePump.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/common/buildcraft/factory/TilePump.java b/common/buildcraft/factory/TilePump.java index ff2e34f9..ddc07a5c 100644 --- a/common/buildcraft/factory/TilePump.java +++ b/common/buildcraft/factory/TilePump.java @@ -80,7 +80,9 @@ public class TilePump extends TileBuildCraft implements IMachine, IPowerReceptor if (CoreProxy.proxy.isRenderWorld(worldObj)) - return; + return; + + pushToConsumers(); if (tube.posY - aimY > 0.01) { tubeY = tube.posY - 0.01; @@ -127,9 +129,11 @@ public class TilePump extends TileBuildCraft implements IMachine, IPowerReceptor } } } + } + private void pushToConsumers() { FluidStack fluidStack = tank.getFluid(); - if (fluidStack != null && fluidStack.amount >= 0) { + if (fluidStack != null && fluidStack.amount > 0) { for (ForgeDirection side : ForgeDirection.VALID_DIRECTIONS) { TileEntity tile = getTile(side); @@ -276,7 +280,7 @@ public class TilePump extends TileBuildCraft implements IMachine, IPowerReceptor return false; FluidStack fluidStack = BlockUtil.drainBlock(blockId, worldObj, x, y, z, false); - if (fluidStack == null) + if (fluidStack == null || fluidStack.amount <= 0) return false; return fluidStack.getFluid() == fluid; From 617d06c3b067996a0907d03e1351d3baa63fde1a Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Wed, 31 Jul 2013 15:42:00 -0700 Subject: [PATCH 21/48] Flood Gate now shuts off on redstone signal --- common/buildcraft/factory/BlockFloodGate.java | 9 +++++++++ common/buildcraft/factory/TileFloodGate.java | 15 +++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/common/buildcraft/factory/BlockFloodGate.java b/common/buildcraft/factory/BlockFloodGate.java index 5177ca8a..cd123bd4 100644 --- a/common/buildcraft/factory/BlockFloodGate.java +++ b/common/buildcraft/factory/BlockFloodGate.java @@ -82,6 +82,15 @@ public class BlockFloodGate extends BlockContainer { return false; } + @Override + public void onNeighborBlockChange(World world, int x, int y, int z, int id) { + super.onNeighborBlockChange(world, x, y, z, id); + TileEntity tile = world.getBlockTileEntity(x, y, z); + if (tile instanceof TileFloodGate) { + ((TileFloodGate) tile).onNeighborBlockChange(id); + } + } + @SuppressWarnings({"unchecked", "rawtypes"}) @Override public void addCreativeItems(ArrayList itemList) { diff --git a/common/buildcraft/factory/TileFloodGate.java b/common/buildcraft/factory/TileFloodGate.java index 854be302..f9cd8223 100644 --- a/common/buildcraft/factory/TileFloodGate.java +++ b/common/buildcraft/factory/TileFloodGate.java @@ -38,6 +38,7 @@ public class TileFloodGate extends TileBuildCraft implements IFluidHandler { private final Tank tank; private int rebuildDelay; private int tick = Utils.RANDOM.nextInt(); + private boolean powered = false; static { REBUILD_DELAY[0] = 128; @@ -61,6 +62,9 @@ public class TileFloodGate extends TileBuildCraft implements IFluidHandler { if (CoreProxy.proxy.isRenderWorld(worldObj)) return; + if (powered) + return; + tick++; if (tick % 16 == 0) { FluidStack fluidtoFill = tank.drain(FluidContainerRegistry.BUCKET_VOLUME, false); @@ -179,11 +183,21 @@ public class TileFloodGate extends TileBuildCraft implements IFluidHandler { return BlockUtil.isSoftBlock(blockId, worldObj, x, y, z) && !BlockUtil.isFullFluidBlock(blockId, worldObj, x, y, z); } + public void onNeighborBlockChange(int id) { + boolean p = worldObj.isBlockIndirectlyGettingPowered(xCoord, yCoord, zCoord); + if (powered != p) { + powered = p; + if (!p) + rebuildQueue(); + } + } + @Override public void readFromNBT(NBTTagCompound data) { super.readFromNBT(data); tank.readFromNBT(data); rebuildDelay = data.getByte("rebuildDelay"); + powered = data.getBoolean("powered"); } @Override @@ -191,6 +205,7 @@ public class TileFloodGate extends TileBuildCraft implements IFluidHandler { super.writeToNBT(data); tank.writeToNBT(data); data.setByte("rebuildDelay", (byte) rebuildDelay); + data.setBoolean("powered", powered); } @Override From 3985e589704be3b9c7ad2881e00aa9786a9f236d Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Wed, 31 Jul 2013 23:22:01 -0700 Subject: [PATCH 22/48] endReached should control further processing --- common/buildcraft/transport/IItemTravelingHook.java | 10 +++++++++- common/buildcraft/transport/PipeTransportItems.java | 5 +++-- common/buildcraft/transport/pipes/PipeItemsLapis.java | 3 ++- common/buildcraft/transport/pipes/PipeItemsVoid.java | 3 ++- 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/common/buildcraft/transport/IItemTravelingHook.java b/common/buildcraft/transport/IItemTravelingHook.java index dbc400f9..a72b73a5 100644 --- a/common/buildcraft/transport/IItemTravelingHook.java +++ b/common/buildcraft/transport/IItemTravelingHook.java @@ -8,6 +8,14 @@ public interface IItemTravelingHook { public void centerReached(PipeTransportItems transport, TravelingItem item); - public void endReached(PipeTransportItems transport, TravelingItem item, TileEntity tile); + /** + * Overrides default handling of what occurs when an Item reaches the end of the time pipe. + * + * @param transport + * @param item + * @param tile + * @return false if the transport code should handle the item normally, true if its been handled + */ + public boolean endReached(PipeTransportItems transport, TravelingItem item, TileEntity tile); } diff --git a/common/buildcraft/transport/PipeTransportItems.java b/common/buildcraft/transport/PipeTransportItems.java index 185b3be8..d08190c8 100644 --- a/common/buildcraft/transport/PipeTransportItems.java +++ b/common/buildcraft/transport/PipeTransportItems.java @@ -363,12 +363,13 @@ public class PipeTransportItems extends PipeTransport { } else if (!item.toCenter && endReached(item)) { TileEntity tile = container.getTile(item.output); + boolean handleItem = true; if (travelHook != null) { - travelHook.endReached(this, item, tile); + handleItem = !travelHook.endReached(this, item, tile); } // If the item has not been scheduled to removal by the hook - if (items.scheduleRemoval(item)) { + if (handleItem && items.scheduleRemoval(item)) { handleTileReached(item, tile); } diff --git a/common/buildcraft/transport/pipes/PipeItemsLapis.java b/common/buildcraft/transport/pipes/PipeItemsLapis.java index 5e7d282d..10d83ff8 100644 --- a/common/buildcraft/transport/pipes/PipeItemsLapis.java +++ b/common/buildcraft/transport/pipes/PipeItemsLapis.java @@ -91,7 +91,8 @@ public class PipeItemsLapis extends Pipe implements IItemTra } @Override - public void endReached(PipeTransportItems pipe, TravelingItem item, TileEntity tile) { + public boolean endReached(PipeTransportItems pipe, TravelingItem item, TileEntity tile) { + return false; } @Override diff --git a/common/buildcraft/transport/pipes/PipeItemsVoid.java b/common/buildcraft/transport/pipes/PipeItemsVoid.java index 6605fb24..002f1f9c 100644 --- a/common/buildcraft/transport/pipes/PipeItemsVoid.java +++ b/common/buildcraft/transport/pipes/PipeItemsVoid.java @@ -50,6 +50,7 @@ public class PipeItemsVoid extends Pipe implements IItemTrav } @Override - public void endReached(PipeTransportItems pipe, TravelingItem item, TileEntity tile) { + public boolean endReached(PipeTransportItems pipe, TravelingItem item, TileEntity tile) { + return false; } } From 5b45375870f2999bf2698850ae3824a9b73bdd72 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Wed, 31 Jul 2013 23:23:31 -0700 Subject: [PATCH 23/48] Typo boo! --- common/buildcraft/transport/IItemTravelingHook.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/buildcraft/transport/IItemTravelingHook.java b/common/buildcraft/transport/IItemTravelingHook.java index a72b73a5..f329947f 100644 --- a/common/buildcraft/transport/IItemTravelingHook.java +++ b/common/buildcraft/transport/IItemTravelingHook.java @@ -9,7 +9,7 @@ public interface IItemTravelingHook { public void centerReached(PipeTransportItems transport, TravelingItem item); /** - * Overrides default handling of what occurs when an Item reaches the end of the time pipe. + * Overrides default handling of what occurs when an Item reaches the end of the pipe. * * @param transport * @param item From f3602d2205ade6032d045f0d5cee9ba9a04424d9 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Wed, 31 Jul 2013 23:57:09 -0700 Subject: [PATCH 24/48] Let Items decide if they like an Inventory --- .../transport/PipeTransportItems.java | 7 ++++--- .../buildcraft/transport/TravelingItem.java | 20 +++++++++++++++++++ 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/common/buildcraft/transport/PipeTransportItems.java b/common/buildcraft/transport/PipeTransportItems.java index d08190c8..eb823734 100644 --- a/common/buildcraft/transport/PipeTransportItems.java +++ b/common/buildcraft/transport/PipeTransportItems.java @@ -395,9 +395,10 @@ public class PipeTransportItems extends PipeTransport { // NOOP } else if (tile instanceof IInventory) { if (!CoreProxy.proxy.isRenderWorld(container.worldObj)) { - ItemStack added = Transactor.getTransactorFor(tile).add(item.getItemStack(), item.output.getOpposite(), true); - - item.getItemStack().stackSize -= added.stackSize; + if (item.getInsertionHandler().canInsertItem(item, (IInventory) tile)) { + ItemStack added = Transactor.getTransactorFor(tile).add(item.getItemStack(), item.output.getOpposite(), true); + item.getItemStack().stackSize -= added.stackSize; + } if (item.getItemStack().stackSize > 0) { reverseItem(item); diff --git a/common/buildcraft/transport/TravelingItem.java b/common/buildcraft/transport/TravelingItem.java index 6830b564..589c10a1 100644 --- a/common/buildcraft/transport/TravelingItem.java +++ b/common/buildcraft/transport/TravelingItem.java @@ -13,6 +13,7 @@ import buildcraft.core.proxy.CoreProxy; import buildcraft.core.utils.EnumColor; import java.util.EnumSet; import net.minecraft.entity.item.EntityItem; +import net.minecraft.inventory.IInventory; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; @@ -22,6 +23,7 @@ import net.minecraftforge.common.ForgeDirection; public class TravelingItem { + public static final InsertionHandler DEFAULT_INSERTION_HANDLER = new InsertionHandler(); private static int maxId = 0; protected float speed = 0.01F; protected ItemStack item; @@ -34,6 +36,7 @@ public class TravelingItem { public ForgeDirection output = ForgeDirection.UNKNOWN; public final EnumSet blacklist = EnumSet.noneOf(ForgeDirection.class); private NBTTagCompound extraData; + private InsertionHandler insertionHandler = DEFAULT_INSERTION_HANDLER; /* CONSTRUCTORS */ public TravelingItem() { @@ -99,6 +102,16 @@ public class TravelingItem { return extraData != null; } + public void setInsetionHandler(InsertionHandler handler) { + if (handler == null) + return; + this.insertionHandler = handler; + } + + public InsertionHandler getInsertionHandler() { + return insertionHandler; + } + public void reset() { toCenter = true; blacklist.clear(); @@ -208,4 +221,11 @@ public class TravelingItem { return false; return true; } + + public static class InsertionHandler { + + public boolean canInsertItem(TravelingItem item, IInventory inv) { + return true; + } + } } From 67a9f6389e3d99ad13e9978f8e63099d6a49afe5 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Thu, 1 Aug 2013 00:00:23 -0700 Subject: [PATCH 25/48] Forgot some bits --- common/buildcraft/transport/PipeTransportItems.java | 2 +- common/buildcraft/transport/TravelingItem.java | 10 +--------- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/common/buildcraft/transport/PipeTransportItems.java b/common/buildcraft/transport/PipeTransportItems.java index eb823734..900332b2 100644 --- a/common/buildcraft/transport/PipeTransportItems.java +++ b/common/buildcraft/transport/PipeTransportItems.java @@ -302,7 +302,7 @@ public class PipeTransportItems extends PipeTransport { TileGenericPipe pipe = (TileGenericPipe) entity; return pipe.pipe.transport instanceof PipeTransportItems; - } else if (entity instanceof IInventory && item.canSinkTo(entity)) + } else if (entity instanceof IInventory && item.getInsertionHandler().canInsertItem(item, (IInventory) entity)) if (Transactor.getTransactorFor(entity).add(item.getItemStack(), o.getOpposite(), false).stackSize > 0) return true; diff --git a/common/buildcraft/transport/TravelingItem.java b/common/buildcraft/transport/TravelingItem.java index 589c10a1..84f7444c 100644 --- a/common/buildcraft/transport/TravelingItem.java +++ b/common/buildcraft/transport/TravelingItem.java @@ -194,15 +194,7 @@ public class TravelingItem { public boolean isCorrupted() { return getItemStack() == null || getItemStack().stackSize <= 0 || Item.itemsList[getItemStack().itemID] == null; } - - /** - * @return the can this item be moved into this specific inventory type. - * (basic BuildCraft PipedItems always return true) - */ - public boolean canSinkTo(TileEntity entity) { - return true; - } - + @Override public int hashCode() { int hash = 7; From b0f72a94ab97195c9c453b283c70dd902d0f4d5e Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Thu, 1 Aug 2013 00:13:52 -0700 Subject: [PATCH 26/48] Add container null check --- common/buildcraft/transport/TravelingItem.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/common/buildcraft/transport/TravelingItem.java b/common/buildcraft/transport/TravelingItem.java index 84f7444c..4fde1ba4 100644 --- a/common/buildcraft/transport/TravelingItem.java +++ b/common/buildcraft/transport/TravelingItem.java @@ -183,7 +183,7 @@ public class TravelingItem { public float getEntityBrightness(float f) { int i = MathHelper.floor_double(xCoord); int j = MathHelper.floor_double(zCoord); - if (container.worldObj.blockExists(i, 128 / 2, j)) { + if (container != null && container.worldObj.blockExists(i, 128 / 2, j)) { double d = 0.66000000000000003D; int k = MathHelper.floor_double(yCoord + d); return container.worldObj.getLightBrightness(i, k, j); From 95fa1078607f66eb3616abd1feefeef893a787fd Mon Sep 17 00:00:00 2001 From: Soaryn Date: Sat, 3 Aug 2013 21:38:57 -0400 Subject: [PATCH 27/48] Adds colorFluid Helper to FluidRenderer --- common/buildcraft/core/render/FluidRenderer.java | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/common/buildcraft/core/render/FluidRenderer.java b/common/buildcraft/core/render/FluidRenderer.java index d3232918..0fc65143 100644 --- a/common/buildcraft/core/render/FluidRenderer.java +++ b/common/buildcraft/core/render/FluidRenderer.java @@ -75,6 +75,15 @@ public class FluidRenderer { public static ResourceLocation getFluidSheet(Fluid liquid) { return BLOCK_TEXTURE; } + + public static void colorFluid(FluidStack fluidstack){ + if(fluidstack== null) return; + int color = fluidstack.getFluid().getColor(fluidstack); + float red = (float) (color >> 16 & 255) / 255.0F; + float green = (float) (color >> 8 & 255) / 255.0F; + float blue = (float) (color & 255) / 255.0F; + GL11.glColor4f(red, green, blue, 1); + } public static int[] getFluidDisplayLists(FluidStack fluidStack, World world, boolean flowing) { if (fluidStack == null) { From 333e38d5b20a5475c37b8756cd3e4c7a23051f74 Mon Sep 17 00:00:00 2001 From: Soaryn Date: Sat, 3 Aug 2013 21:40:57 -0400 Subject: [PATCH 28/48] Adds color to Refinery Fluids Note, this needs a FluidStack to be complete. This only covers basic Fluid Colors --- common/buildcraft/core/gui/GuiAdvancedInterface.java | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/common/buildcraft/core/gui/GuiAdvancedInterface.java b/common/buildcraft/core/gui/GuiAdvancedInterface.java index b62747bd..e0a4e6ac 100644 --- a/common/buildcraft/core/gui/GuiAdvancedInterface.java +++ b/common/buildcraft/core/gui/GuiAdvancedInterface.java @@ -182,6 +182,13 @@ public abstract class GuiAdvancedInterface extends GuiBuildCraft { super(x, y); } + @Override + public void drawSprite(int cornerX, int cornerY) { + if(fluid != null) + FluidRenderer.colorFluid(new FluidStack(fluid,100)); // Lacks FluidStack to properly function Please revise. + super.drawSprite(cornerX, cornerY); + } + @Override public Icon getIcon() { return FluidRenderer.getFluidTexture(fluid, false); From fee9c44fe72929826c9cec238cdef759d1c75483 Mon Sep 17 00:00:00 2001 From: Soaryn Date: Sat, 3 Aug 2013 21:42:29 -0400 Subject: [PATCH 29/48] Adds FluidStack color to refinery Render --- common/buildcraft/factory/render/RenderRefinery.java | 1 + 1 file changed, 1 insertion(+) diff --git a/common/buildcraft/factory/render/RenderRefinery.java b/common/buildcraft/factory/render/RenderRefinery.java index 53148d19..59db91b6 100644 --- a/common/buildcraft/factory/render/RenderRefinery.java +++ b/common/buildcraft/factory/render/RenderRefinery.java @@ -182,6 +182,7 @@ public class RenderRefinery extends TileEntitySpecialRenderer implements IInvent if (list1 != null) { func_110628_a(FluidRenderer.getFluidSheet(liquid1)); + FluidRenderer.colorFluid(liquid1); GL11.glCallList(list1[(int) ((float) liquid1.amount / (float) TileRefinery.LIQUID_PER_SLOT * (FluidRenderer.DISPLAY_STAGES - 1))]); } } From cb8a139f01d35e6bc09c2cc7a7be8b5696da5c87 Mon Sep 17 00:00:00 2001 From: Soaryn Date: Sat, 3 Aug 2013 21:43:15 -0400 Subject: [PATCH 30/48] Adds FluidStack color to tank Render --- common/buildcraft/factory/render/RenderTank.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/common/buildcraft/factory/render/RenderTank.java b/common/buildcraft/factory/render/RenderTank.java index 38bc65bb..73729872 100644 --- a/common/buildcraft/factory/render/RenderTank.java +++ b/common/buildcraft/factory/render/RenderTank.java @@ -39,7 +39,8 @@ public class RenderTank extends TileEntitySpecialRenderer { GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); func_110628_a(FluidRenderer.getFluidSheet(liquid)); - + FluidRenderer.colorFluid(liquid); + GL11.glTranslatef((float) x + 0.125F, (float) y, (float) z + 0.125F); GL11.glScalef(0.75F, 0.999F, 0.75F); From 89980dceb2668d853b7c50295d78ccb53814d7fb Mon Sep 17 00:00:00 2001 From: Soaryn Date: Sat, 3 Aug 2013 22:02:40 -0400 Subject: [PATCH 31/48] Adds FluidStack color to pipes Render --- common/buildcraft/transport/render/RenderPipe.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/common/buildcraft/transport/render/RenderPipe.java b/common/buildcraft/transport/render/RenderPipe.java index f1bf27c5..17fafbb6 100644 --- a/common/buildcraft/transport/render/RenderPipe.java +++ b/common/buildcraft/transport/render/RenderPipe.java @@ -368,6 +368,7 @@ public class RenderPipe extends TileEntitySpecialRenderer { default: } func_110628_a(TextureMap.field_110575_b); + FluidRenderer.colorFluid(liquid); GL11.glCallList(list); GL11.glPopMatrix(); } @@ -382,7 +383,8 @@ public class RenderPipe extends TileEntitySpecialRenderer { int stage = (int) ((float) liquid.amount / (float) (trans.getCapacity()) * (LIQUID_STAGES - 1)); func_110628_a(TextureMap.field_110575_b); - + FluidRenderer.colorFluid(liquid); + if (above) { GL11.glCallList(d.centerVertical[stage]); } From 1dd3c3a58fc82d74da2937a0c4dd13fdc3daf5fb Mon Sep 17 00:00:00 2001 From: Soaryn Date: Sat, 3 Aug 2013 22:11:41 -0400 Subject: [PATCH 32/48] Adds Missed call for color --- common/buildcraft/factory/render/RenderRefinery.java | 1 + 1 file changed, 1 insertion(+) diff --git a/common/buildcraft/factory/render/RenderRefinery.java b/common/buildcraft/factory/render/RenderRefinery.java index 59db91b6..3a182ed0 100644 --- a/common/buildcraft/factory/render/RenderRefinery.java +++ b/common/buildcraft/factory/render/RenderRefinery.java @@ -207,6 +207,7 @@ public class RenderRefinery extends TileEntitySpecialRenderer implements IInvent GL11.glPushMatrix(); GL11.glTranslatef(1, 0, 0.5F); func_110628_a(FluidRenderer.getFluidSheet(liquidResult)); + FluidRenderer.colorFluid(liquidResult); GL11.glCallList(list3[(int) ((float) liquidResult.amount / (float) TileRefinery.LIQUID_PER_SLOT * (FluidRenderer.DISPLAY_STAGES - 1))]); GL11.glPopMatrix(); } From fff440836b10f520fc0169e58c966acbaf7bab07 Mon Sep 17 00:00:00 2001 From: Soaryn Date: Sat, 3 Aug 2013 22:22:24 -0400 Subject: [PATCH 33/48] Adds Missed call for color --- common/buildcraft/factory/render/RenderRefinery.java | 1 + 1 file changed, 1 insertion(+) diff --git a/common/buildcraft/factory/render/RenderRefinery.java b/common/buildcraft/factory/render/RenderRefinery.java index 3a182ed0..f466974a 100644 --- a/common/buildcraft/factory/render/RenderRefinery.java +++ b/common/buildcraft/factory/render/RenderRefinery.java @@ -194,6 +194,7 @@ public class RenderRefinery extends TileEntitySpecialRenderer implements IInvent GL11.glPushMatrix(); GL11.glTranslatef(0, 0, 1); func_110628_a(FluidRenderer.getFluidSheet(liquid2)); + FluidRenderer.colorFluid(liquid2); GL11.glCallList(list2[(int) ((float) liquid2.amount / (float) TileRefinery.LIQUID_PER_SLOT * (FluidRenderer.DISPLAY_STAGES - 1))]); GL11.glPopMatrix(); } From c62c33c11ecec6bd7c5b7f5a1107af4dfbf83b03 Mon Sep 17 00:00:00 2001 From: Soaryn Date: Sat, 3 Aug 2013 22:42:06 -0400 Subject: [PATCH 34/48] Fixed spacing --- common/buildcraft/core/gui/GuiAdvancedInterface.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/common/buildcraft/core/gui/GuiAdvancedInterface.java b/common/buildcraft/core/gui/GuiAdvancedInterface.java index e0a4e6ac..ca41c473 100644 --- a/common/buildcraft/core/gui/GuiAdvancedInterface.java +++ b/common/buildcraft/core/gui/GuiAdvancedInterface.java @@ -184,8 +184,8 @@ public abstract class GuiAdvancedInterface extends GuiBuildCraft { @Override public void drawSprite(int cornerX, int cornerY) { - if(fluid != null) - FluidRenderer.colorFluid(new FluidStack(fluid,100)); // Lacks FluidStack to properly function Please revise. + if(fluid != null) + FluidRenderer.colorFluid(new FluidStack(fluid,100)); // Lacks FluidStack to properly function Please revise. super.drawSprite(cornerX, cornerY); } From 3b90e2ed35361bbb8fa749c17fd659f143439050 Mon Sep 17 00:00:00 2001 From: Emil Lauridsen Date: Sun, 4 Aug 2013 16:33:38 +0200 Subject: [PATCH 35/48] Add missing imports --- common/buildcraft/core/gui/GuiAdvancedInterface.java | 1 + common/buildcraft/transport/render/RenderPipe.java | 1 + 2 files changed, 2 insertions(+) diff --git a/common/buildcraft/core/gui/GuiAdvancedInterface.java b/common/buildcraft/core/gui/GuiAdvancedInterface.java index ca41c473..171f4985 100644 --- a/common/buildcraft/core/gui/GuiAdvancedInterface.java +++ b/common/buildcraft/core/gui/GuiAdvancedInterface.java @@ -9,6 +9,7 @@ import net.minecraft.item.ItemStack; import net.minecraft.util.Icon; import net.minecraft.util.ResourceLocation; import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidStack; import org.lwjgl.opengl.GL11; diff --git a/common/buildcraft/transport/render/RenderPipe.java b/common/buildcraft/transport/render/RenderPipe.java index 17fafbb6..a005062d 100644 --- a/common/buildcraft/transport/render/RenderPipe.java +++ b/common/buildcraft/transport/render/RenderPipe.java @@ -10,6 +10,7 @@ package buildcraft.transport.render; import buildcraft.BuildCraftCore; import buildcraft.BuildCraftCore.RenderMode; import buildcraft.BuildCraftTransport; +import buildcraft.core.render.FluidRenderer; import buildcraft.core.render.RenderEntityBlock; import buildcraft.core.render.RenderEntityBlock.BlockInterface; import buildcraft.core.utils.EnumColor; From 321d8d1f2be3c7b3bfe28af93b1ac338ee882cf3 Mon Sep 17 00:00:00 2001 From: viliml Date: Sun, 4 Aug 2013 22:23:23 +0200 Subject: [PATCH 36/48] Update BuildCraftEnergy.java Fixes https://github.com/BuildCraft/BuildCraft/issues/1091. --- common/buildcraft/BuildCraftEnergy.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/common/buildcraft/BuildCraftEnergy.java b/common/buildcraft/BuildCraftEnergy.java index 04a6c5fb..bc6e3b6f 100644 --- a/common/buildcraft/BuildCraftEnergy.java +++ b/common/buildcraft/BuildCraftEnergy.java @@ -180,7 +180,6 @@ public class BuildCraftEnergy { } // Buckets - MinecraftForge.EVENT_BUS.register(BucketHandler.INSTANCE); if (blockOil != null && bucketOilId > 0) { bucketOil = new ItemBucketBuildcraft(bucketOilId, blockOil.blockID); @@ -195,6 +194,10 @@ public class BuildCraftEnergy { LanguageRegistry.addName(bucketFuel, "Fuel Bucket"); FluidContainerRegistry.registerFluidContainer(FluidRegistry.getFluidStack("fuel", FluidContainerRegistry.BUCKET_VOLUME), new ItemStack(bucketFuel), new ItemStack(Item.bucketEmpty)); } + + BucketHandler.INSTANCE.buckets.put(blockOil, bucketOil); + BucketHandler.INSTANCE.buckets.put(blockFuel, bucketFuel); + MinecraftForge.EVENT_BUS.register(BucketHandler.INSTANCE); RefineryRecipes.addRecipe(new FluidStack(fluidOil, 1), new FluidStack(fluidFuel, 1), 12, 1); From ee1a89f1c3f4ae342f1b904b88f414c2106a4d1a Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Sun, 4 Aug 2013 16:02:31 -0700 Subject: [PATCH 37/48] Add NPE check Fixes #1090 --- common/buildcraft/transport/pipes/PipeItemsWood.java | 3 +++ 1 file changed, 3 insertions(+) diff --git a/common/buildcraft/transport/pipes/PipeItemsWood.java b/common/buildcraft/transport/pipes/PipeItemsWood.java index 8d80cf26..d28a14d4 100644 --- a/common/buildcraft/transport/pipes/PipeItemsWood.java +++ b/common/buildcraft/transport/pipes/PipeItemsWood.java @@ -179,6 +179,9 @@ public class PipeItemsWood extends Pipe implements IPowerRec } public ItemStack checkExtractGeneric(ISidedInventory inventory, boolean doRemove, ForgeDirection from) { + if(inventory == null) + return null; + for (int k : inventory.getAccessibleSlotsFromSide(from.ordinal())) { ItemStack slot = inventory.getStackInSlot(k); From 66481d5b62163882b193454943109f5c4d267b5d Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Sun, 4 Aug 2013 16:02:53 -0700 Subject: [PATCH 38/48] Fix Soaryn's broken stuff --- .../core/gui/GuiAdvancedInterface.java | 6 ++--- .../buildcraft/core/render/FluidRenderer.java | 25 ++++++++----------- .../factory/render/RenderRefinery.java | 6 ++--- .../buildcraft/factory/render/RenderTank.java | 2 +- .../transport/render/RenderPipe.java | 4 +-- 5 files changed, 20 insertions(+), 23 deletions(-) diff --git a/common/buildcraft/core/gui/GuiAdvancedInterface.java b/common/buildcraft/core/gui/GuiAdvancedInterface.java index 171f4985..d9108443 100644 --- a/common/buildcraft/core/gui/GuiAdvancedInterface.java +++ b/common/buildcraft/core/gui/GuiAdvancedInterface.java @@ -185,9 +185,9 @@ public abstract class GuiAdvancedInterface extends GuiBuildCraft { @Override public void drawSprite(int cornerX, int cornerY) { - if(fluid != null) - FluidRenderer.colorFluid(new FluidStack(fluid,100)); // Lacks FluidStack to properly function Please revise. - super.drawSprite(cornerX, cornerY); + if (fluid != null) + FluidRenderer.setColorForFluidStack(new FluidStack(fluid, 100)); + super.drawSprite(cornerX, cornerY); } @Override diff --git a/common/buildcraft/core/render/FluidRenderer.java b/common/buildcraft/core/render/FluidRenderer.java index 0fc65143..eaa3f1b9 100644 --- a/common/buildcraft/core/render/FluidRenderer.java +++ b/common/buildcraft/core/render/FluidRenderer.java @@ -17,7 +17,6 @@ import net.minecraft.util.Icon; import net.minecraft.util.ResourceLocation; import net.minecraft.world.World; import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidRegistry; import net.minecraftforge.fluids.FluidStack; import org.lwjgl.opengl.GL11; @@ -75,14 +74,16 @@ public class FluidRenderer { public static ResourceLocation getFluidSheet(Fluid liquid) { return BLOCK_TEXTURE; } - - public static void colorFluid(FluidStack fluidstack){ - if(fluidstack== null) return; - int color = fluidstack.getFluid().getColor(fluidstack); - float red = (float) (color >> 16 & 255) / 255.0F; - float green = (float) (color >> 8 & 255) / 255.0F; - float blue = (float) (color & 255) / 255.0F; - GL11.glColor4f(red, green, blue, 1); + + public static void setColorForFluidStack(FluidStack fluidstack) { + if (fluidstack == null) + return; + + int color = fluidstack.getFluid().getColor(fluidstack); + float red = (float) (color >> 16 & 255) / 255.0F; + float green = (float) (color >> 8 & 255) / 255.0F; + float blue = (float) (color & 255) / 255.0F; + GL11.glColor4f(red, green, blue, 1); } public static int[] getFluidDisplayLists(FluidStack fluidStack, World world, boolean flowing) { @@ -114,11 +115,7 @@ public class FluidRenderer { GL11.glDisable(GL11.GL_LIGHTING); GL11.glDisable(GL11.GL_BLEND); GL11.glDisable(GL11.GL_CULL_FACE); - int color = fluid.getColor(fluidStack); - float c1 = (float) (color >> 16 & 255) / 255.0F; - float c2 = (float) (color >> 8 & 255) / 255.0F; - float c3 = (float) (color & 255) / 255.0F; - GL11.glColor4f(c1, c2, c3, 1); + for (int s = 0; s < DISPLAY_STAGES; ++s) { diplayLists[s] = GLAllocation.generateDisplayLists(1); GL11.glNewList(diplayLists[s], 4864 /*GL_COMPILE*/); diff --git a/common/buildcraft/factory/render/RenderRefinery.java b/common/buildcraft/factory/render/RenderRefinery.java index f466974a..0070669c 100644 --- a/common/buildcraft/factory/render/RenderRefinery.java +++ b/common/buildcraft/factory/render/RenderRefinery.java @@ -182,7 +182,7 @@ public class RenderRefinery extends TileEntitySpecialRenderer implements IInvent if (list1 != null) { func_110628_a(FluidRenderer.getFluidSheet(liquid1)); - FluidRenderer.colorFluid(liquid1); + FluidRenderer.setColorForFluidStack(liquid1); GL11.glCallList(list1[(int) ((float) liquid1.amount / (float) TileRefinery.LIQUID_PER_SLOT * (FluidRenderer.DISPLAY_STAGES - 1))]); } } @@ -194,7 +194,7 @@ public class RenderRefinery extends TileEntitySpecialRenderer implements IInvent GL11.glPushMatrix(); GL11.glTranslatef(0, 0, 1); func_110628_a(FluidRenderer.getFluidSheet(liquid2)); - FluidRenderer.colorFluid(liquid2); + FluidRenderer.setColorForFluidStack(liquid2); GL11.glCallList(list2[(int) ((float) liquid2.amount / (float) TileRefinery.LIQUID_PER_SLOT * (FluidRenderer.DISPLAY_STAGES - 1))]); GL11.glPopMatrix(); } @@ -208,7 +208,7 @@ public class RenderRefinery extends TileEntitySpecialRenderer implements IInvent GL11.glPushMatrix(); GL11.glTranslatef(1, 0, 0.5F); func_110628_a(FluidRenderer.getFluidSheet(liquidResult)); - FluidRenderer.colorFluid(liquidResult); + FluidRenderer.setColorForFluidStack(liquidResult); GL11.glCallList(list3[(int) ((float) liquidResult.amount / (float) TileRefinery.LIQUID_PER_SLOT * (FluidRenderer.DISPLAY_STAGES - 1))]); GL11.glPopMatrix(); } diff --git a/common/buildcraft/factory/render/RenderTank.java b/common/buildcraft/factory/render/RenderTank.java index 73729872..579c961a 100644 --- a/common/buildcraft/factory/render/RenderTank.java +++ b/common/buildcraft/factory/render/RenderTank.java @@ -39,7 +39,7 @@ public class RenderTank extends TileEntitySpecialRenderer { GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA); func_110628_a(FluidRenderer.getFluidSheet(liquid)); - FluidRenderer.colorFluid(liquid); + FluidRenderer.setColorForFluidStack(liquid); GL11.glTranslatef((float) x + 0.125F, (float) y, (float) z + 0.125F); GL11.glScalef(0.75F, 0.999F, 0.75F); diff --git a/common/buildcraft/transport/render/RenderPipe.java b/common/buildcraft/transport/render/RenderPipe.java index a005062d..16754c69 100644 --- a/common/buildcraft/transport/render/RenderPipe.java +++ b/common/buildcraft/transport/render/RenderPipe.java @@ -369,7 +369,7 @@ public class RenderPipe extends TileEntitySpecialRenderer { default: } func_110628_a(TextureMap.field_110575_b); - FluidRenderer.colorFluid(liquid); + FluidRenderer.setColorForFluidStack(liquid); GL11.glCallList(list); GL11.glPopMatrix(); } @@ -384,7 +384,7 @@ public class RenderPipe extends TileEntitySpecialRenderer { int stage = (int) ((float) liquid.amount / (float) (trans.getCapacity()) * (LIQUID_STAGES - 1)); func_110628_a(TextureMap.field_110575_b); - FluidRenderer.colorFluid(liquid); + FluidRenderer.setColorForFluidStack(liquid); if (above) { GL11.glCallList(d.centerVertical[stage]); From defc41f5d166c80b47f795f7f0aa5188d2005da3 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Sun, 4 Aug 2013 17:16:40 -0700 Subject: [PATCH 39/48] More stuff for Soaryn --- .../buildcraft/core/render/FluidRenderer.java | 20 +++------------- .../transport/render/RenderPipe.java | 24 +++++++++---------- 2 files changed, 15 insertions(+), 29 deletions(-) diff --git a/common/buildcraft/core/render/FluidRenderer.java b/common/buildcraft/core/render/FluidRenderer.java index eaa3f1b9..dd76870a 100644 --- a/common/buildcraft/core/render/FluidRenderer.java +++ b/common/buildcraft/core/render/FluidRenderer.java @@ -11,6 +11,7 @@ import buildcraft.core.render.RenderEntityBlock.BlockInterface; import java.util.HashMap; import java.util.Map; import net.minecraft.block.Block; +import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.GLAllocation; import net.minecraft.client.renderer.texture.TextureMap; import net.minecraft.util.Icon; @@ -32,21 +33,6 @@ public class FluidRenderer { public static final int DISPLAY_STAGES = 100; private static final BlockInterface liquidBlock = new BlockInterface(); - public static class MissingFluidTextureException extends RuntimeException { - - private final Fluid fluid; - - public MissingFluidTextureException(Fluid fluid) { - super(); - this.fluid = fluid; - } - - @Override - public String getMessage() { - return String.format("Fluid %s has no icon. Please contact the author of the mod the fluid came from.", fluid.getName()); - } - } - public static Icon getFluidTexture(FluidStack fluidStack, boolean flowing) { if (fluidStack == null) { return null; @@ -60,7 +46,7 @@ public class FluidRenderer { } Icon icon = flowing ? fluid.getFlowingIcon() : fluid.getStillIcon(); if (icon == null) { - throw new MissingFluidTextureException(fluid); + icon = ((TextureMap) Minecraft.getMinecraft().func_110434_K().func_110581_b(TextureMap.field_110575_b)).func_110572_b("missingno"); } return icon; } @@ -78,7 +64,7 @@ public class FluidRenderer { public static void setColorForFluidStack(FluidStack fluidstack) { if (fluidstack == null) return; - + int color = fluidstack.getFluid().getColor(fluidstack); float red = (float) (color >> 16 & 255) / 255.0F; float green = (float) (color >> 8 & 255) / 255.0F; diff --git a/common/buildcraft/transport/render/RenderPipe.java b/common/buildcraft/transport/render/RenderPipe.java index 16754c69..2319f511 100644 --- a/common/buildcraft/transport/render/RenderPipe.java +++ b/common/buildcraft/transport/render/RenderPipe.java @@ -307,8 +307,8 @@ public class RenderPipe extends TileEntitySpecialRenderer { boolean needsRender = false; for (int i = 0; i < 7; ++i) { - FluidStack liquid = trans.renderCache[i]; - if (liquid != null && liquid.amount > 0) { + FluidStack fluidStack = trans.renderCache[i]; + if (fluidStack != null && fluidStack.amount > 0) { needsRender = true; break; } @@ -331,16 +331,16 @@ public class RenderPipe extends TileEntitySpecialRenderer { boolean sides = false, above = false; for (int i = 0; i < 6; ++i) { - FluidStack liquid = trans.renderCache[i]; + FluidStack fluidStack = trans.renderCache[i]; - if (liquid != null && liquid.amount > 0) { - DisplayFluidList d = getListFromBuffer(liquid, pipe.container.worldObj); + if (fluidStack != null && fluidStack.amount > 0) { + DisplayFluidList d = getListFromBuffer(fluidStack, pipe.container.worldObj); if (d == null) { continue; } - int stage = (int) ((float) liquid.amount / (float) (trans.getCapacity()) * (LIQUID_STAGES - 1)); + int stage = (int) ((float) fluidStack.amount / (float) (trans.getCapacity()) * (LIQUID_STAGES - 1)); GL11.glPushMatrix(); int list = 0; @@ -369,22 +369,22 @@ public class RenderPipe extends TileEntitySpecialRenderer { default: } func_110628_a(TextureMap.field_110575_b); - FluidRenderer.setColorForFluidStack(liquid); + FluidRenderer.setColorForFluidStack(fluidStack); GL11.glCallList(list); GL11.glPopMatrix(); } } // CENTER - FluidStack liquid = trans.renderCache[ForgeDirection.UNKNOWN.ordinal()]; + FluidStack fluidStack = trans.renderCache[ForgeDirection.UNKNOWN.ordinal()]; - if (liquid != null && liquid.amount > 0) { - DisplayFluidList d = getListFromBuffer(liquid, pipe.container.worldObj); + if (fluidStack != null && fluidStack.amount > 0) { + DisplayFluidList d = getListFromBuffer(fluidStack, pipe.container.worldObj); if (d != null) { - int stage = (int) ((float) liquid.amount / (float) (trans.getCapacity()) * (LIQUID_STAGES - 1)); + int stage = (int) ((float) fluidStack.amount / (float) (trans.getCapacity()) * (LIQUID_STAGES - 1)); func_110628_a(TextureMap.field_110575_b); - FluidRenderer.setColorForFluidStack(liquid); + FluidRenderer.setColorForFluidStack(fluidStack); if (above) { GL11.glCallList(d.centerVertical[stage]); From 671caa458df3888b512afe2cecac7ed5d5158407 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Tue, 6 Aug 2013 03:55:08 -0700 Subject: [PATCH 40/48] Fix Utils.checkPipeConnections() --- common/buildcraft/core/utils/Utils.java | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/common/buildcraft/core/utils/Utils.java b/common/buildcraft/core/utils/Utils.java index 528b00cc..0a3fd314 100644 --- a/common/buildcraft/core/utils/Utils.java +++ b/common/buildcraft/core/utils/Utils.java @@ -11,6 +11,7 @@ import buildcraft.BuildCraftCore; import buildcraft.api.core.IAreaProvider; import buildcraft.api.core.LaserKind; import buildcraft.api.core.Position; +import buildcraft.api.transport.IPipeConnection; import buildcraft.api.transport.IPipeTile; import buildcraft.api.transport.IPipeTile.PipeType; import buildcraft.core.BlockIndex; @@ -377,7 +378,7 @@ public class Utils { return false; } - if (!(tile1 instanceof IPipeTile) && !(tile2 instanceof IPipeTile)) { + if (!(tile1 instanceof IPipeConnection) && !(tile2 instanceof IPipeConnection)) { return false; } @@ -397,11 +398,11 @@ public class Utils { o = ForgeDirection.SOUTH; } - if (tile1 instanceof IPipeTile && !((IPipeTile) tile1).isPipeConnected(o)) { + if (tile1 instanceof IPipeConnection && !((IPipeConnection) tile1).isPipeConnected(o)) { return false; } - if (tile2 instanceof IPipeTile && !((IPipeTile) tile2).isPipeConnected(o.getOpposite())) { + if (tile2 instanceof IPipeConnection && !((IPipeConnection) tile2).isPipeConnected(o.getOpposite())) { return false; } From 447b914fb5edc21c81502238a43dc301d164e0f9 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Tue, 6 Aug 2013 04:58:35 -0700 Subject: [PATCH 41/48] Rework Pipe connection rules (again) --- .../api/transport/IPipeConnection.java | 15 +++--- .../buildcraft/api/transport/IPipeTile.java | 4 +- common/buildcraft/core/utils/Utils.java | 31 ++++------- common/buildcraft/energy/TileEngine.java | 3 +- common/buildcraft/energy/TileEngineWood.java | 3 +- .../transport/BlockGenericPipe.java | 51 +++++++++++-------- common/buildcraft/transport/Pipe.java | 7 ++- .../transport/PipeTransportFluids.java | 4 +- .../transport/PipeTransportItems.java | 2 +- .../transport/PipeTransportPower.java | 16 +++--- .../buildcraft/transport/TileGenericPipe.java | 25 ++++----- 11 files changed, 80 insertions(+), 81 deletions(-) diff --git a/common/buildcraft/api/transport/IPipeConnection.java b/common/buildcraft/api/transport/IPipeConnection.java index 1e78ea26..b0af9966 100644 --- a/common/buildcraft/api/transport/IPipeConnection.java +++ b/common/buildcraft/api/transport/IPipeConnection.java @@ -1,17 +1,16 @@ -/** - * Copyright (c) SpaceToad, 2011 - * http://www.mod-buildcraft.com - * - * BuildCraft is distributed under the terms of the Minecraft Mod Public - * License 1.0, or MMPL. Please check the contents of the license located in +/** + * Copyright (c) SpaceToad, 2011 http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public License + * 1.0, or MMPL. Please check the contents of the license located in * http://www.mod-buildcraft.com/MMPL-1.0.txt */ - package buildcraft.api.transport; +import buildcraft.api.transport.IPipeTile.PipeType; import net.minecraftforge.common.ForgeDirection; public interface IPipeConnection { - public boolean isPipeConnected(ForgeDirection with); + public boolean overridePipeConnection(PipeType type, ForgeDirection with); } diff --git a/common/buildcraft/api/transport/IPipeTile.java b/common/buildcraft/api/transport/IPipeTile.java index 86eb9551..13aa8d76 100644 --- a/common/buildcraft/api/transport/IPipeTile.java +++ b/common/buildcraft/api/transport/IPipeTile.java @@ -11,7 +11,7 @@ import net.minecraft.item.ItemStack; import net.minecraftforge.common.ForgeDirection; import net.minecraftforge.fluids.IFluidHandler; -public interface IPipeTile extends ISolidSideTile, IPipeConnection, IFluidHandler { +public interface IPipeTile extends ISolidSideTile, IFluidHandler { public enum PipeType { @@ -34,4 +34,6 @@ public interface IPipeTile extends ISolidSideTile, IPipeConnection, IFluidHandle * @return Amount of items used from the passed stack. */ int injectItem(ItemStack stack, boolean doAdd, ForgeDirection from); + + boolean isPipeConnected(ForgeDirection with); } diff --git a/common/buildcraft/core/utils/Utils.java b/common/buildcraft/core/utils/Utils.java index 0a3fd314..cc6dc224 100644 --- a/common/buildcraft/core/utils/Utils.java +++ b/common/buildcraft/core/utils/Utils.java @@ -374,47 +374,36 @@ public class Utils { } public static boolean checkPipesConnections(TileEntity tile1, TileEntity tile2) { - if (tile1 == null || tile2 == null) { + if (tile1 == null || tile2 == null) return false; - } - if (!(tile1 instanceof IPipeConnection) && !(tile2 instanceof IPipeConnection)) { + if (!(tile1 instanceof IPipeTile) && !(tile2 instanceof IPipeTile)) return false; - } ForgeDirection o = ForgeDirection.UNKNOWN; - if (tile1.xCoord - 1 == tile2.xCoord) { + if (tile1.xCoord - 1 == tile2.xCoord) o = ForgeDirection.WEST; - } else if (tile1.xCoord + 1 == tile2.xCoord) { + else if (tile1.xCoord + 1 == tile2.xCoord) o = ForgeDirection.EAST; - } else if (tile1.yCoord - 1 == tile2.yCoord) { + else if (tile1.yCoord - 1 == tile2.yCoord) o = ForgeDirection.DOWN; - } else if (tile1.yCoord + 1 == tile2.yCoord) { + else if (tile1.yCoord + 1 == tile2.yCoord) o = ForgeDirection.UP; - } else if (tile1.zCoord - 1 == tile2.zCoord) { + else if (tile1.zCoord - 1 == tile2.zCoord) o = ForgeDirection.NORTH; - } else if (tile1.zCoord + 1 == tile2.zCoord) { + else if (tile1.zCoord + 1 == tile2.zCoord) o = ForgeDirection.SOUTH; - } - if (tile1 instanceof IPipeConnection && !((IPipeConnection) tile1).isPipeConnected(o)) { + if (tile1 instanceof IPipeTile && !((IPipeTile) tile1).isPipeConnected(o)) return false; - } - if (tile2 instanceof IPipeConnection && !((IPipeConnection) tile2).isPipeConnected(o.getOpposite())) { + if (tile2 instanceof IPipeTile && !((IPipeTile) tile2).isPipeConnected(o.getOpposite())) return false; - } return true; } - public static boolean checkPipesConnections(IBlockAccess blockAccess, TileEntity tile1, int x2, int y2, int z2) { - TileEntity tile2 = blockAccess.getBlockTileEntity(x2, y2, z2); - - return checkPipesConnections(tile1, tile2); - } - public static boolean checkLegacyPipesConnections(IBlockAccess blockAccess, int x1, int y1, int z1, int x2, int y2, int z2) { Block b1 = Block.blocksList[blockAccess.getBlockId(x1, y1, z1)]; diff --git a/common/buildcraft/energy/TileEngine.java b/common/buildcraft/energy/TileEngine.java index e83c2769..71117dcb 100644 --- a/common/buildcraft/energy/TileEngine.java +++ b/common/buildcraft/energy/TileEngine.java @@ -17,6 +17,7 @@ import buildcraft.api.power.PowerHandler; import buildcraft.api.power.PowerHandler.PowerReceiver; import buildcraft.api.power.PowerHandler.Type; import buildcraft.api.transport.IPipeConnection; +import buildcraft.api.transport.IPipeTile.PipeType; import buildcraft.core.DefaultProps; import buildcraft.core.TileBuffer; import buildcraft.core.TileBuildCraft; @@ -498,7 +499,7 @@ public abstract class TileEngine extends TileBuildCraft implements IPowerRecepto } @Override - public boolean isPipeConnected(ForgeDirection with) { + public boolean overridePipeConnection(PipeType type, ForgeDirection with) { return with != orientation; } diff --git a/common/buildcraft/energy/TileEngineWood.java b/common/buildcraft/energy/TileEngineWood.java index b13d116d..3438851b 100644 --- a/common/buildcraft/energy/TileEngineWood.java +++ b/common/buildcraft/energy/TileEngineWood.java @@ -7,6 +7,7 @@ */ package buildcraft.energy; +import buildcraft.api.transport.IPipeTile.PipeType; import buildcraft.core.proxy.CoreProxy; import net.minecraft.util.ResourceLocation; import net.minecraftforge.common.ForgeDirection; @@ -84,7 +85,7 @@ public class TileEngineWood extends TileEngine { } @Override - public boolean isPipeConnected(ForgeDirection with) { + public boolean overridePipeConnection(PipeType type, ForgeDirection with) { return false; } diff --git a/common/buildcraft/transport/BlockGenericPipe.java b/common/buildcraft/transport/BlockGenericPipe.java index aa16de94..32af5b44 100644 --- a/common/buildcraft/transport/BlockGenericPipe.java +++ b/common/buildcraft/transport/BlockGenericPipe.java @@ -118,32 +118,32 @@ public class BlockGenericPipe extends BlockContainer { TileEntity tile1 = world.getBlockTileEntity(i, j, k); TileGenericPipe tileG = (TileGenericPipe) tile1; - if (Utils.checkPipesConnections(world, tile1, i - 1, j, k)) { + if (tileG.isPipeConnected(ForgeDirection.WEST)) { setBlockBounds(0.0F, Utils.pipeMinPos, Utils.pipeMinPos, Utils.pipeMaxPos, Utils.pipeMaxPos, Utils.pipeMaxPos); super.addCollisionBoxesToList(world, i, j, k, axisalignedbb, arraylist, par7Entity); } - if (Utils.checkPipesConnections(world, tile1, i + 1, j, k)) { + if (tileG.isPipeConnected(ForgeDirection.EAST)) { setBlockBounds(Utils.pipeMinPos, Utils.pipeMinPos, Utils.pipeMinPos, 1.0F, Utils.pipeMaxPos, Utils.pipeMaxPos); super.addCollisionBoxesToList(world, i, j, k, axisalignedbb, arraylist, par7Entity); } - if (Utils.checkPipesConnections(world, tile1, i, j - 1, k)) { + if (tileG.isPipeConnected(ForgeDirection.DOWN)) { setBlockBounds(Utils.pipeMinPos, 0.0F, Utils.pipeMinPos, Utils.pipeMaxPos, Utils.pipeMaxPos, Utils.pipeMaxPos); super.addCollisionBoxesToList(world, i, j, k, axisalignedbb, arraylist, par7Entity); } - if (Utils.checkPipesConnections(world, tile1, i, j + 1, k)) { + if (tileG.isPipeConnected(ForgeDirection.UP)) { setBlockBounds(Utils.pipeMinPos, Utils.pipeMinPos, Utils.pipeMinPos, Utils.pipeMaxPos, 1.0F, Utils.pipeMaxPos); super.addCollisionBoxesToList(world, i, j, k, axisalignedbb, arraylist, par7Entity); } - if (Utils.checkPipesConnections(world, tile1, i, j, k - 1)) { + if (tileG.isPipeConnected(ForgeDirection.NORTH)) { setBlockBounds(Utils.pipeMinPos, Utils.pipeMinPos, 0.0F, Utils.pipeMaxPos, Utils.pipeMaxPos, Utils.pipeMaxPos); super.addCollisionBoxesToList(world, i, j, k, axisalignedbb, arraylist, par7Entity); } - if (Utils.checkPipesConnections(world, tile1, i, j, k + 1)) { + if (tileG.isPipeConnected(ForgeDirection.SOUTH)) { setBlockBounds(Utils.pipeMinPos, Utils.pipeMinPos, Utils.pipeMinPos, Utils.pipeMaxPos, Utils.pipeMaxPos, 1.0F); super.addCollisionBoxesToList(world, i, j, k, axisalignedbb, arraylist, par7Entity); } @@ -193,27 +193,27 @@ public class BlockGenericPipe extends BlockContainer { if (tile1 instanceof TileGenericPipe) { TileGenericPipe tileG = (TileGenericPipe) tile1; - if (Utils.checkPipesConnections(world, tile1, i - 1, j, k) || tileG.hasFacade(ForgeDirection.WEST)) { + if (tileG.isPipeConnected(ForgeDirection.WEST) || tileG.hasFacade(ForgeDirection.WEST)) { xMin = 0.0F; } - if (Utils.checkPipesConnections(world, tile1, i + 1, j, k) || tileG.hasFacade(ForgeDirection.EAST)) { + if (tileG.isPipeConnected(ForgeDirection.EAST) || tileG.hasFacade(ForgeDirection.EAST)) { xMax = 1.0F; } - if (Utils.checkPipesConnections(world, tile1, i, j - 1, k) || tileG.hasFacade(ForgeDirection.DOWN)) { + if (tileG.isPipeConnected(ForgeDirection.DOWN) || tileG.hasFacade(ForgeDirection.DOWN)) { yMin = 0.0F; } - if (Utils.checkPipesConnections(world, tile1, i, j + 1, k) || tileG.hasFacade(ForgeDirection.UP)) { + if (tileG.isPipeConnected(ForgeDirection.UP) || tileG.hasFacade(ForgeDirection.UP)) { yMax = 1.0F; } - if (Utils.checkPipesConnections(world, tile1, i, j, k - 1) || tileG.hasFacade(ForgeDirection.NORTH)) { + if (tileG.isPipeConnected(ForgeDirection.NORTH) || tileG.hasFacade(ForgeDirection.NORTH)) { zMin = 0.0F; } - if (Utils.checkPipesConnections(world, tile1, i, j, k + 1) || tileG.hasFacade(ForgeDirection.SOUTH)) { + if (tileG.isPipeConnected(ForgeDirection.SOUTH) || tileG.hasFacade(ForgeDirection.SOUTH)) { zMax = 1.0F; } @@ -277,11 +277,18 @@ public class BlockGenericPipe extends BlockContainer { float xMin = Utils.pipeMinPos, xMax = Utils.pipeMaxPos, yMin = Utils.pipeMinPos, yMax = Utils.pipeMaxPos, zMin = Utils.pipeMinPos, zMax = Utils.pipeMaxPos; TileEntity pipeTileEntity = world.getBlockTileEntity(x, y, z); - Pipe pipe = getPipe(world, x, y, z); - - if (pipeTileEntity == null || !isValid(pipe)) { + + TileGenericPipe tileG = null; + if(pipeTileEntity instanceof TileGenericPipe) + tileG = (TileGenericPipe)pipeTileEntity; + + if(tileG == null) return null; - } + + Pipe pipe = tileG.pipe; + + if (!isValid(pipe)) + return null; /** * pipe hits along x, y, and z axis, gate (all 6 sides) [and @@ -294,12 +301,12 @@ public class BlockGenericPipe extends BlockContainer { // check along the x axis - if (Utils.checkPipesConnections(world, pipeTileEntity, x - 1, y, z)) { + if (tileG.isPipeConnected(ForgeDirection.WEST)) { xMin = 0.0F; needAxisCheck = true; } - if (Utils.checkPipesConnections(world, pipeTileEntity, x + 1, y, z)) { + if (tileG.isPipeConnected(ForgeDirection.WEST)) { xMax = 1.0F; needAxisCheck = true; } @@ -316,12 +323,12 @@ public class BlockGenericPipe extends BlockContainer { // check along the y axis - if (Utils.checkPipesConnections(world, pipeTileEntity, x, y - 1, z)) { + if (tileG.isPipeConnected(ForgeDirection.DOWN)) { yMin = 0.0F; needAxisCheck = true; } - if (Utils.checkPipesConnections(world, pipeTileEntity, x, y + 1, z)) { + if (tileG.isPipeConnected(ForgeDirection.UP)) { yMax = 1.0F; needAxisCheck = true; } @@ -338,12 +345,12 @@ public class BlockGenericPipe extends BlockContainer { // check along the z axis - if (Utils.checkPipesConnections(world, pipeTileEntity, x, y, z - 1)) { + if (tileG.isPipeConnected(ForgeDirection.NORTH)) { zMin = 0.0F; needAxisCheck = true; } - if (Utils.checkPipesConnections(world, pipeTileEntity, x, y, z + 1)) { + if (tileG.isPipeConnected(ForgeDirection.SOUTH)) { zMax = 1.0F; needAxisCheck = true; } diff --git a/common/buildcraft/transport/Pipe.java b/common/buildcraft/transport/Pipe.java index 87941047..f66f70a5 100644 --- a/common/buildcraft/transport/Pipe.java +++ b/common/buildcraft/transport/Pipe.java @@ -325,7 +325,7 @@ public abstract class Pipe implements IPipe, IDropContr ForgeDirection o = ForgeDirection.getOrientation(side).getOpposite(); TileEntity tile = container.getTile(o); - if (tile instanceof TileGenericPipe && Utils.checkPipesConnections(this.container, tile)) + if (tile instanceof TileGenericPipe && container.isPipeConnected(o)) return 0; return 15; @@ -477,13 +477,12 @@ public abstract class Pipe implements IPipe, IDropContr ForgeDirection target_orientation = ForgeDirection.UNKNOWN; for (ForgeDirection o : ForgeDirection.VALID_DIRECTIONS) { - if (Utils.checkPipesConnections(container.getTile(o), container)) { + if (container.isPipeConnected(o)) { Connections_num++; - if (Connections_num == 1) { + if (Connections_num == 1) target_orientation = o; - } } } diff --git a/common/buildcraft/transport/PipeTransportFluids.java b/common/buildcraft/transport/PipeTransportFluids.java index 9cf4a35a..51b523e8 100644 --- a/common/buildcraft/transport/PipeTransportFluids.java +++ b/common/buildcraft/transport/PipeTransportFluids.java @@ -171,7 +171,7 @@ public class PipeTransportFluids extends PipeTransport implements IFluidHandler public boolean canReceiveFluid(ForgeDirection o) { TileEntity entity = container.getTile(o); - if (!Utils.checkPipesConnections(container, entity)) + if (!container.isPipeConnected(o)) return false; if (entity instanceof TileGenericPipe) { @@ -481,7 +481,7 @@ public class PipeTransportFluids extends PipeTransport implements IFluidHandler super.onNeighborBlockChange(blockId); for (ForgeDirection direction : directions) { - if (!Utils.checkPipesConnections(container.getTile(orientations[direction.ordinal()]), container)) { + if (!container.isPipeConnected(direction)) { internalTanks[direction.ordinal()].reset(); transferState[direction.ordinal()] = TransferState.None; renderCache[direction.ordinal()] = null; diff --git a/common/buildcraft/transport/PipeTransportItems.java b/common/buildcraft/transport/PipeTransportItems.java index 900332b2..ad6c405f 100644 --- a/common/buildcraft/transport/PipeTransportItems.java +++ b/common/buildcraft/transport/PipeTransportItems.java @@ -295,7 +295,7 @@ public class PipeTransportItems extends PipeTransport { public boolean canReceivePipeObjects(ForgeDirection o, TravelingItem item) { TileEntity entity = container.getTile(o); - if (!Utils.checkPipesConnections(entity, container)) + if (!container.isPipeConnected(o)) return false; if (entity instanceof TileGenericPipe) { diff --git a/common/buildcraft/transport/PipeTransportPower.java b/common/buildcraft/transport/PipeTransportPower.java index 53887fef..5ea91248 100644 --- a/common/buildcraft/transport/PipeTransportPower.java +++ b/common/buildcraft/transport/PipeTransportPower.java @@ -108,15 +108,15 @@ public class PipeTransportPower extends PipeTransport { } private void updateTiles() { - for (int i = 0; i < 6; ++i) { - TileEntity tile = container.getTile(ForgeDirection.VALID_DIRECTIONS[i]); - if (Utils.checkPipesConnections(tile, container)) { - tiles[i] = tile; + for (ForgeDirection side : ForgeDirection.VALID_DIRECTIONS) { + TileEntity tile = container.getTile(side); + if (container.isPipeConnected(side)) { + tiles[side.ordinal()] = tile; } else { - tiles[i] = null; - internalPower[i] = 0; - internalNextPower[i] = 0; - displayPower[i] = 0; + tiles[side.ordinal()] = null; + internalPower[side.ordinal()] = 0; + internalNextPower[side.ordinal()] = 0; + displayPower[side.ordinal()] = 0; } } } diff --git a/common/buildcraft/transport/TileGenericPipe.java b/common/buildcraft/transport/TileGenericPipe.java index dc03881b..ece283e6 100644 --- a/common/buildcraft/transport/TileGenericPipe.java +++ b/common/buildcraft/transport/TileGenericPipe.java @@ -18,6 +18,7 @@ import buildcraft.api.power.IPowerReceptor; import buildcraft.api.power.PowerHandler; import buildcraft.api.power.PowerHandler.PowerReceiver; import buildcraft.api.transport.IPipe; +import buildcraft.api.transport.IPipeConnection; import buildcraft.api.transport.IPipeTile; import buildcraft.api.transport.ISolidSideTile; import buildcraft.core.DefaultProps; @@ -435,34 +436,35 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui } /** - * Checks if this tile is connected to another tile + * Checks if this tile can connect to another tile * * @param with - The other Tile * @param side - The orientation to get to the other tile ('with') * @return true if pipes are considered connected */ - protected boolean arePipesConnected(TileEntity with, ForgeDirection side) { - Pipe pipe1 = pipe; - + protected boolean canPipeConnect(TileEntity with, ForgeDirection side) { if (hasPlug(side)) return false; - if (!BlockGenericPipe.isValid(pipe1)) + if (!BlockGenericPipe.isValid(pipe)) return false; + + if(with instanceof IPipeConnection) + return ((IPipeConnection)with).overridePipeConnection(pipe.transport.getPipeType(), side.getOpposite()); if (with instanceof TileGenericPipe) { if (((TileGenericPipe) with).hasPlug(side.getOpposite())) return false; - Pipe pipe2 = ((TileGenericPipe) with).pipe; + Pipe otherPipe = ((TileGenericPipe) with).pipe; - if (!BlockGenericPipe.isValid(pipe2)) + if (!BlockGenericPipe.isValid(otherPipe)) return false; - if (!pipe2.canPipeConnect(this, side.getOpposite())) + if (!otherPipe.canPipeConnect(this, side.getOpposite())) return false; } - return pipe1 != null ? pipe1.canPipeConnect(with, side) : false; + return pipe.canPipeConnect(with, side); } private void computeConnections() { @@ -474,9 +476,8 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui TileBuffer t = cache[side.ordinal()]; t.refresh(); - if (t.getTile() != null) { - pipeConnectionsBuffer[side.ordinal()] = arePipesConnected(t.getTile(), side); - } + if (t.getTile() != null) + pipeConnectionsBuffer[side.ordinal()] = canPipeConnect(t.getTile(), side); } } } From 91a84f2062a83151acf753b87963a5717cb7be6d Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Tue, 6 Aug 2013 14:47:45 -0700 Subject: [PATCH 42/48] Changed IPipeConnection to return three states And fix engines connecting to pipes. This is why I shouldn't code at 5 AM. --- .../api/transport/IPipeConnection.java | 15 +++- common/buildcraft/energy/TileEngine.java | 70 +++++++---------- common/buildcraft/energy/TileEngineStone.java | 1 - common/buildcraft/energy/TileEngineWood.java | 22 +++--- .../buildcraft/transport/TileGenericPipe.java | 75 +++++++------------ 5 files changed, 81 insertions(+), 102 deletions(-) diff --git a/common/buildcraft/api/transport/IPipeConnection.java b/common/buildcraft/api/transport/IPipeConnection.java index b0af9966..cbb1d003 100644 --- a/common/buildcraft/api/transport/IPipeConnection.java +++ b/common/buildcraft/api/transport/IPipeConnection.java @@ -12,5 +12,18 @@ import net.minecraftforge.common.ForgeDirection; public interface IPipeConnection { - public boolean overridePipeConnection(PipeType type, ForgeDirection with); + enum ConnectOverride { + + CONNECT, DISCONNECT, DEFAULT + }; + + /** + * Allows you to override pipe connection logic. + * + * @param type + * @param with + * @return CONNECT to force a connection, DISCONNECT to force no connection, + * and DEFAULT to let the pipe decide. + */ + public ConnectOverride overridePipeConnection(PipeType type, ForgeDirection with); } diff --git a/common/buildcraft/energy/TileEngine.java b/common/buildcraft/energy/TileEngine.java index 71117dcb..93cd5e42 100644 --- a/common/buildcraft/energy/TileEngine.java +++ b/common/buildcraft/energy/TileEngine.java @@ -97,24 +97,22 @@ public abstract class TileEngine extends TileBuildCraft implements IPowerRecepto protected EnergyStage computeEnergyStage() { float energyLevel = getHeatLevel(); - if (energyLevel < 0.25f) { + if (energyLevel < 0.25f) return EnergyStage.BLUE; - } else if (energyLevel < 0.5f) { + else if (energyLevel < 0.5f) return EnergyStage.GREEN; - } else if (energyLevel < 0.75f) { + else if (energyLevel < 0.75f) return EnergyStage.YELLOW; - } else if (energyLevel < 1f) { + else if (energyLevel < 1f) return EnergyStage.RED; - } else { + else return EnergyStage.OVERHEAT; - } } public final EnergyStage getEnergyStage() { if (CoreProxy.proxy.isSimulating(worldObj)) { - if (energyStage == EnergyStage.OVERHEAT) { + if (energyStage == EnergyStage.OVERHEAT) return energyStage; - } EnergyStage newStage = computeEnergyStage(); if (energyStage != newStage) { @@ -143,9 +141,8 @@ public abstract class TileEngine extends TileBuildCraft implements IPowerRecepto } public float getPistonSpeed() { - if (CoreProxy.proxy.isSimulating(worldObj)) { + if (CoreProxy.proxy.isSimulating(worldObj)) return Math.max(0.16f * getHeatLevel(), 0.01f); - } switch (getEnergyStage()) { case BLUE: return 0.02F; @@ -172,9 +169,8 @@ public abstract class TileEngine extends TileBuildCraft implements IPowerRecepto progressPart = 0; progress = 0; } - } else if (this.isPumping) { + } else if (this.isPumping) progressPart = 1; - } return; } @@ -194,21 +190,17 @@ public abstract class TileEngine extends TileBuildCraft implements IPowerRecepto progress = 0; progressPart = 0; } - } else if (isRedstonePowered && isActive()) { - if (isPoweredTile(tile, orientation)) { + } else if (isRedstonePowered && isActive()) + if (isPoweredTile(tile, orientation)) if (getPowerToExtract() > 0) { progressPart = 1; setPumping(true); - } else { + } else setPumping(false); - } - } else { + else setPumping(false); - } - - } else { + else setPumping(false); - } // Uncomment for constant power // if (isRedstonePowered && isActive()) { @@ -248,13 +240,11 @@ public abstract class TileEngine extends TileBuildCraft implements IPowerRecepto } protected void engineUpdate() { - if (!isRedstonePowered) { - if (energy >= 1) { + if (!isRedstonePowered) + if (energy >= 1) energy -= 1; - } else if (energy < 1) { + else if (energy < 1) energy = 0; - } - } } public boolean isActive() { @@ -295,9 +285,8 @@ public abstract class TileEngine extends TileBuildCraft implements IPowerRecepto progress = data.getFloat("progress"); energy = data.getFloat("energyF"); NBTBase tag = data.getTag("heat"); - if (tag instanceof NBTTagFloat) { + if (tag instanceof NBTTagFloat) heat = data.getFloat("heat"); - } inv.readFromNBT(data); } @@ -415,9 +404,8 @@ public abstract class TileEngine extends TileBuildCraft implements IPowerRecepto worldObj.setBlockToAir(xCoord, yCoord, zCoord); } - if (energy > getMaxEnergy()) { + if (energy > getMaxEnergy()) energy = getMaxEnergy(); - } } public float extractEnergy(float min, float max, boolean doExtract) { @@ -426,11 +414,10 @@ public abstract class TileEngine extends TileBuildCraft implements IPowerRecepto float actualMax; - if (max > maxEnergyExtracted()) { + if (max > maxEnergyExtracted()) actualMax = maxEnergyExtracted(); - } else { + else actualMax = max; - } if (actualMax < min) return 0; @@ -439,23 +426,20 @@ public abstract class TileEngine extends TileBuildCraft implements IPowerRecepto if (energy >= actualMax) { extracted = actualMax; - if (doExtract) { + if (doExtract) energy -= actualMax; - } } else { extracted = energy; - if (doExtract) { + if (doExtract) energy = 0; - } } return extracted; } public boolean isPoweredTile(TileEntity tile, ForgeDirection side) { - if (tile instanceof IPowerReceptor) { + if (tile instanceof IPowerReceptor) return ((IPowerReceptor) tile).getPowerReceiver(side.getOpposite()) != null; - } return false; } @@ -499,8 +483,12 @@ public abstract class TileEngine extends TileBuildCraft implements IPowerRecepto } @Override - public boolean overridePipeConnection(PipeType type, ForgeDirection with) { - return with != orientation; + public ConnectOverride overridePipeConnection(PipeType type, ForgeDirection with) { + if (type == PipeType.POWER) + return ConnectOverride.DEFAULT; + if (with == orientation) + return ConnectOverride.DISCONNECT; + return ConnectOverride.DEFAULT; } @Override diff --git a/common/buildcraft/energy/TileEngineStone.java b/common/buildcraft/energy/TileEngineStone.java index 31340777..e5d53c1f 100644 --- a/common/buildcraft/energy/TileEngineStone.java +++ b/common/buildcraft/energy/TileEngineStone.java @@ -10,7 +10,6 @@ package buildcraft.energy; import buildcraft.BuildCraftCore; import buildcraft.BuildCraftEnergy; import buildcraft.api.gates.ITrigger; -import buildcraft.core.DefaultProps; import buildcraft.core.GuiIds; import buildcraft.core.proxy.CoreProxy; import buildcraft.core.utils.Utils; diff --git a/common/buildcraft/energy/TileEngineWood.java b/common/buildcraft/energy/TileEngineWood.java index 3438851b..f1c0f9da 100644 --- a/common/buildcraft/energy/TileEngineWood.java +++ b/common/buildcraft/energy/TileEngineWood.java @@ -43,22 +43,20 @@ public class TileEngineWood extends TileEngine { @Override protected EnergyStage computeEnergyStage() { float energyLevel = getEnergyLevel(); - if (energyLevel < 0.25f) { + if (energyLevel < 0.25f) return EnergyStage.BLUE; - } else if (energyLevel < 0.5f) { + else if (energyLevel < 0.5f) return EnergyStage.GREEN; - } else if (energyLevel < 0.75f) { + else if (energyLevel < 0.75f) return EnergyStage.YELLOW; - } else { + else return EnergyStage.RED; - } } @Override public float getPistonSpeed() { - if (CoreProxy.proxy.isSimulating(worldObj)) { + if (CoreProxy.proxy.isSimulating(worldObj)) return Math.max(0.8f * getHeatLevel(), 0.01f); - } switch (getEnergyStage()) { case BLUE: return 0.01F; @@ -77,16 +75,14 @@ public class TileEngineWood extends TileEngine { public void engineUpdate() { super.engineUpdate(); - if (isRedstonePowered) { - if (worldObj.getWorldTime() % 20 == 0) { + if (isRedstonePowered) + if (worldObj.getWorldTime() % 20 == 0) addEnergy(1); - } - } } @Override - public boolean overridePipeConnection(PipeType type, ForgeDirection with) { - return false; + public ConnectOverride overridePipeConnection(PipeType type, ForgeDirection with) { + return ConnectOverride.DISCONNECT; } @Override diff --git a/common/buildcraft/transport/TileGenericPipe.java b/common/buildcraft/transport/TileGenericPipe.java index ece283e6..65a3a047 100644 --- a/common/buildcraft/transport/TileGenericPipe.java +++ b/common/buildcraft/transport/TileGenericPipe.java @@ -95,9 +95,8 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui if (pipe != null) { nbt.setInteger("pipeId", pipe.itemID); pipe.writeToNBT(nbt); - } else { + } else nbt.setInteger("pipeId", coreState.pipeId); - } for (int i = 0; i < ForgeDirection.VALID_DIRECTIONS.length; i++) { nbt.setInteger("facadeBlocks[" + i + "]", facadeBlocks[i]); @@ -114,9 +113,9 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui coreState.pipeId = nbt.getInteger("pipeId"); pipe = BlockGenericPipe.createPipe(coreState.pipeId); - if (pipe != null) { + if (pipe != null) pipe.readFromNBT(nbt); - } else { + else { BuildCraftCore.bcLog.log(Level.WARNING, "Pipe failed to load from NBT at {0},{1},{2}", new Object[]{xCoord, yCoord, zCoord}); deletePipe = true; } @@ -133,9 +132,8 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui public void invalidate() { initialized = false; tileBuffer = null; - if (pipe != null) { + if (pipe != null) pipe.invalidate(); - } super.invalidate(); } @@ -144,25 +142,22 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui super.validate(); tileBuffer = null; bindPipe(); - if (pipe != null) { + if (pipe != null) pipe.validate(); - } } public boolean initialized = false; @Override public void updateEntity() { - if (deletePipe) { + if (deletePipe) worldObj.setBlockToAir(xCoord, yCoord, zCoord); - } if (pipe == null) return; - if (!initialized) { + if (!initialized) initialize(pipe); - } if (!BlockGenericPipe.isValid(pipe)) return; @@ -182,13 +177,11 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui PowerReceiver provider = getPowerReceiver(null); - if (provider != null) { + if (provider != null) provider.update(); - } - if (pipe != null) { + if (pipe != null) pipe.updateEntity(); - } } // PRECONDITION: worldObj must not be null @@ -272,12 +265,10 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui for (ForgeDirection o : ForgeDirection.VALID_DIRECTIONS) { TileEntity tile = getTile(o); - if (tile instanceof ITileBufferHolder) { + if (tile instanceof ITileBufferHolder) ((ITileBufferHolder) tile).blockCreated(o, BuildCraftTransport.genericPipeBlock.blockID, this); - } - if (tile instanceof TileGenericPipe) { + if (tile instanceof TileGenericPipe) ((TileGenericPipe) tile).scheduleNeighborChange(); - } } bindPipe(); @@ -321,9 +312,8 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui @Override public void doWork(PowerHandler workProvider) { - if (BlockGenericPipe.isValid(pipe) && pipe instanceof IPowerReceptor) { + if (BlockGenericPipe.isValid(pipe) && pipe instanceof IPowerReceptor) ((IPowerReceptor) pipe).doWork(workProvider); - } } public void scheduleNeighborChange() { @@ -356,9 +346,8 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui /* SMP */ public void handleDescriptionPacket(PipeRenderStatePacket packet) { if (worldObj.isRemote) { - if (pipe == null && packet.getPipeId() != 0) { + if (pipe == null && packet.getPipeId() != 0) initialize(BlockGenericPipe.createPipe(packet.getPipeId())); - } renderState = packet.getRenderState(); worldObj.markBlockForRenderUpdate(xCoord, yCoord, zCoord); } @@ -369,21 +358,18 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui bindPipe(); PacketTileState packet = new PacketTileState(this.xCoord, this.yCoord, this.zCoord); - if (pipe != null && pipe.gate != null) { + if (pipe != null && pipe.gate != null) coreState.gateKind = pipe.gate.kind.ordinal(); - } else { + else coreState.gateKind = 0; - } - if (pipe != null && pipe.transport != null) { + if (pipe != null && pipe.transport != null) pipe.transport.sendDescriptionPacket(); - } packet.addStateForSerialization((byte) 0, coreState); packet.addStateForSerialization((byte) 1, renderState); - if (pipe instanceof IClientState) { + if (pipe instanceof IClientState) packet.addStateForSerialization((byte) 2, (IClientState) pipe); - } return packet.getPacket(); } @@ -448,9 +434,12 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui if (!BlockGenericPipe.isValid(pipe)) return false; - - if(with instanceof IPipeConnection) - return ((IPipeConnection)with).overridePipeConnection(pipe.transport.getPipeType(), side.getOpposite()); + + if (with instanceof IPipeConnection) { + IPipeConnection.ConnectOverride override = ((IPipeConnection) with).overridePipeConnection(pipe.transport.getPipeType(), side.getOpposite()); + if (override != IPipeConnection.ConnectOverride.DEFAULT) + return override == IPipeConnection.ConnectOverride.CONNECT ? true : false; + } if (with instanceof TileGenericPipe) { if (((TileGenericPipe) with).hasPlug(side.getOpposite())) @@ -497,9 +486,8 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui @Override public void onChunkUnload() { - if (pipe != null) { + if (pipe != null) pipe.onChunkUnload(); - } } /** @@ -560,9 +548,8 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui if (this.facadeBlocks[direction.ordinal()] == blockid) return false; - if (hasFacade(direction)) { + if (hasFacade(direction)) dropFacadeItem(direction); - } this.facadeBlocks[direction.ordinal()] = blockid; this.facadeMeta[direction.ordinal()] = meta; @@ -629,13 +616,11 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui switch (stateId) { case 0: - if (pipe == null && coreState.pipeId != 0) { + if (pipe == null && coreState.pipeId != 0) initialize(BlockGenericPipe.createPipe(coreState.pipeId)); - } if (pipe != null && coreState.gateKind != GateKind.None.ordinal()) { - if (pipe.gate == null) { + if (pipe.gate == null) pipe.gate = new GateVanilla(pipe); - } pipe.gate.kind = GateKind.values()[coreState.gateKind]; } break; @@ -659,10 +644,9 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui if (hasFacade(side)) return true; - if (BlockGenericPipe.isValid(pipe) && pipe instanceof ISolidSideTile) { + if (BlockGenericPipe.isValid(pipe) && pipe instanceof ISolidSideTile) if (((ISolidSideTile) pipe).isSolidOnSide(side)) return true; - } return false; } @@ -698,9 +682,8 @@ public class TileGenericPipe extends TileEntity implements IPowerReceptor, IFlui public int getBlockId() { Block block = getBlockType(); - if (block != null) { + if (block != null) return block.blockID; - } return 0; } From fc3e3d19cba10ea5b6f2e056effff2d08d2674d4 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Tue, 6 Aug 2013 21:22:44 -0700 Subject: [PATCH 43/48] Some performance improvements related to STT --- common/buildcraft/BuildCraftCore.java | 4 +- common/buildcraft/BuildCraftSilicon.java | 3 +- .../buildcraft/api/core/SafeTimeTracker.java | 58 ++++++++--------- common/buildcraft/api/power/PowerHandler.java | 64 +++++++------------ .../core/TickHandlerTimeTracker.java | 29 +++++++++ common/buildcraft/core/TileBuffer.java | 12 ++-- common/buildcraft/energy/TilePollution.java | 4 +- common/buildcraft/factory/TilePump.java | 2 +- common/buildcraft/factory/TileRefinery.java | 6 +- common/buildcraft/factory/TileTank.java | 2 +- common/buildcraft/silicon/BlockLaser.java | 42 ++++++------ common/buildcraft/silicon/TileLaser.java | 43 ++++++------- .../buildcraft/silicon/TileLaserStandard.java | 21 ++++++ common/buildcraft/transport/Pipe.java | 2 +- .../transport/PipeTransportFluids.java | 2 +- .../transport/PipeTransportPower.java | 2 +- 16 files changed, 161 insertions(+), 135 deletions(-) create mode 100644 common/buildcraft/core/TickHandlerTimeTracker.java create mode 100644 common/buildcraft/silicon/TileLaserStandard.java diff --git a/common/buildcraft/BuildCraftCore.java b/common/buildcraft/BuildCraftCore.java index fef829af..8d7c3e4b 100644 --- a/common/buildcraft/BuildCraftCore.java +++ b/common/buildcraft/BuildCraftCore.java @@ -26,6 +26,7 @@ import buildcraft.core.ItemSpring; import buildcraft.core.ItemWrench; import buildcraft.core.SpringPopulate; import buildcraft.core.TickHandlerCoreClient; +import buildcraft.core.TickHandlerTimeTracker; import buildcraft.core.Version; import buildcraft.core.blueprints.BptItem; import buildcraft.core.network.EntityIds; @@ -299,7 +300,8 @@ public class BuildCraftCore { BuildCraftAPI.softBlocks[Block.vine.blockID] = true; BuildCraftAPI.softBlocks[Block.fire.blockID] = true; TickRegistry.registerTickHandler(new TickHandlerCoreClient(), Side.CLIENT); - + TickRegistry.registerTickHandler(new TickHandlerTimeTracker(), Side.CLIENT); + TickRegistry.registerTickHandler(new TickHandlerTimeTracker(), Side.SERVER); } @EventHandler diff --git a/common/buildcraft/BuildCraftSilicon.java b/common/buildcraft/BuildCraftSilicon.java index 39e0d326..23a76d47 100644 --- a/common/buildcraft/BuildCraftSilicon.java +++ b/common/buildcraft/BuildCraftSilicon.java @@ -22,6 +22,7 @@ import buildcraft.silicon.SiliconProxy; import buildcraft.silicon.TileAdvancedCraftingTable; import buildcraft.silicon.TileAssemblyTable; import buildcraft.silicon.TileLaser; +import buildcraft.silicon.TileLaserStandard; import buildcraft.silicon.network.PacketHandlerSilicon; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; @@ -74,7 +75,7 @@ public class BuildCraftSilicon { @EventHandler public void init(FMLInitializationEvent evt) { NetworkRegistry.instance().registerGuiHandler(instance, new GuiHandler()); - CoreProxy.proxy.registerTileEntity(TileLaser.class, "net.minecraft.src.buildcraft.factory.TileLaser"); + CoreProxy.proxy.registerTileEntity(TileLaserStandard.class, "net.minecraft.src.buildcraft.factory.TileLaser"); CoreProxy.proxy.registerTileEntity(TileAssemblyTable.class, "net.minecraft.src.buildcraft.factory.TileAssemblyTable"); CoreProxy.proxy.registerTileEntity(TileAdvancedCraftingTable.class, "net.minecraft.src.buildcraft.factory.TileAssemblyAdvancedWorkbench"); diff --git a/common/buildcraft/api/core/SafeTimeTracker.java b/common/buildcraft/api/core/SafeTimeTracker.java index 30df49b7..c10e61f5 100644 --- a/common/buildcraft/api/core/SafeTimeTracker.java +++ b/common/buildcraft/api/core/SafeTimeTracker.java @@ -1,49 +1,41 @@ -/** - * Copyright (c) SpaceToad, 2011 - * http://www.mod-buildcraft.com - * - * BuildCraft is distributed under the terms of the Minecraft Mod Public - * License 1.0, or MMPL. Please check the contents of the license located in +/** + * Copyright (c) SpaceToad, 2011 http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public License + * 1.0, or MMPL. Please check the contents of the license located in * http://www.mod-buildcraft.com/MMPL-1.0.txt */ - package buildcraft.api.core; -import net.minecraft.world.World; - public class SafeTimeTracker { - private long lastMark = Long.MIN_VALUE; - private long duration = 0; - private boolean marked; - + public static long worldTime; + private long lastMark = worldTime; + private long duration = -1; /** - * Return true if a given delay has passed since last time marked was called successfully. + * Return true if a given delay has passed since last time marked was called + * successfully. */ - public boolean markTimeIfDelay(World world, long delay) { - if (world == null) - return false; - - long currentTime = world.getWorldTime(); - - if (currentTime < lastMark) { - lastMark = currentTime; - return false; - } else if (lastMark + delay <= currentTime) { - duration = currentTime - lastMark; - lastMark = world.getWorldTime(); - marked = true; + public boolean markTimeIfDelay(long delay) { + long timePassed = worldTime - lastMark; + if (timePassed >= delay) { + duration = timePassed; + lastMark = worldTime; return true; - } else + } + if (worldTime < lastMark) { + lastMark = worldTime; return false; + } + return false; } - - public long durationOfLastDelay(){ - return marked ? duration : 0; + + public long durationOfLastDelay() { + return duration > 0 ? duration : 0; } - public void markTime(World world) { - lastMark = world.getWorldTime(); + public void markTime() { + lastMark = worldTime; } } diff --git a/common/buildcraft/api/power/PowerHandler.java b/common/buildcraft/api/power/PowerHandler.java index 308aecf3..763a0fe4 100644 --- a/common/buildcraft/api/power/PowerHandler.java +++ b/common/buildcraft/api/power/PowerHandler.java @@ -23,7 +23,7 @@ public final class PowerHandler { case STORAGE: return true; default: - return false; + return false; } } @@ -33,7 +33,7 @@ public final class PowerHandler { case STORAGE: return true; default: - return false; + return false; } } } @@ -49,9 +49,8 @@ public final class PowerHandler { } public PerditionCalculator(float powerLoss) { - if (powerLoss < MIN_POWERLOSS) { + if (powerLoss < MIN_POWERLOSS) powerLoss = MIN_POWERLOSS; - } this.powerLoss = powerLoss; } @@ -67,9 +66,8 @@ public final class PowerHandler { */ public float applyPerdition(PowerHandler powerHandler, float current, long ticksPassed) { current -= powerLoss * ticksPassed; - if (current < 0) { + if (current < 0) current = 0; - } return current; } } @@ -137,9 +135,8 @@ public final class PowerHandler { * being common. */ public void configure(float minEnergyReceived, float maxEnergyReceived, float activationEnergy, float maxStoredEnergy) { - if (minEnergyReceived > maxEnergyReceived) { + if (minEnergyReceived > maxEnergyReceived) maxEnergyReceived = minEnergyReceived; - } this.minEnergyReceived = minEnergyReceived; this.maxEnergyReceived = maxEnergyReceived; this.maxEnergyStored = maxStoredEnergy; @@ -164,12 +161,12 @@ public final class PowerHandler { * @param perdition */ public void setPerdition(PerditionCalculator perdition) { + if (perdition == null) + perdition = DEFUALT_PERDITION; this.perdition = perdition; } public PerditionCalculator getPerdition() { - if (perdition == null) - return DEFUALT_PERDITION; return perdition; } @@ -189,34 +186,29 @@ public final class PowerHandler { } private void applyPerdition() { - if (perditionTracker.markTimeIfDelay(receptor.getWorld(), 1) && energyStored > 0) { - float newEnergy = getPerdition().applyPerdition(this, energyStored, perditionTracker.durationOfLastDelay()); - if (newEnergy == 0 || newEnergy < energyStored) { + if (perditionTracker.markTimeIfDelay(1) && energyStored > 0) { + float newEnergy = perdition.applyPerdition(this, energyStored, perditionTracker.durationOfLastDelay()); + if (newEnergy == 0 || newEnergy < energyStored) energyStored = newEnergy; - } else { + else energyStored = DEFUALT_PERDITION.applyPerdition(this, energyStored, perditionTracker.durationOfLastDelay()); - } validateEnergy(); } } private void applyWork() { - if (energyStored >= activationEnergy) { - if (doWorkTracker.markTimeIfDelay(receptor.getWorld(), 1)) { + if (energyStored >= activationEnergy) + if (doWorkTracker.markTimeIfDelay(1)) receptor.doWork(this); - } - } } private void updateSources(ForgeDirection source) { - if (sourcesTracker.markTimeIfDelay(receptor.getWorld(), 1)) { + if (sourcesTracker.markTimeIfDelay(1)) for (int i = 0; i < 6; ++i) { powerSources[i] -= sourcesTracker.durationOfLastDelay(); - if (powerSources[i] < 0) { + if (powerSources[i] < 0) powerSources[i] = 0; - } } - } if (source != null) powerSources[source.ordinal()] = 10; @@ -236,19 +228,16 @@ public final class PowerHandler { float result = 0; - if (energyStored >= min) { + if (energyStored >= min) if (energyStored <= max) { result = energyStored; - if (doUse) { + if (doUse) energyStored = 0; - } } else { result = max; - if (doUse) { + if (doUse) energyStored -= max; - } } - } validateEnergy(); @@ -325,13 +314,11 @@ public final class PowerHandler { */ public float receiveEnergy(Type source, final float quantity, ForgeDirection from) { float used = quantity; - if (source == Type.ENGINE) { - if (used < minEnergyReceived) { + if (source == Type.ENGINE) + if (used < minEnergyReceived) return 0; - } else if (used > maxEnergyReceived) { + else if (used > maxEnergyReceived) used = maxEnergyReceived; - } - } updateSources(from); @@ -339,9 +326,8 @@ public final class PowerHandler { applyWork(); - if (source == Type.ENGINE && type.eatsEngineExcess()) { + if (source == Type.ENGINE && type.eatsEngineExcess()) return Math.min(quantity, maxEnergyReceived); - } return used; } @@ -377,11 +363,9 @@ public final class PowerHandler { } private void validateEnergy() { - if (energyStored < 0) { + if (energyStored < 0) energyStored = 0; - } - if (energyStored > maxEnergyStored) { + if (energyStored > maxEnergyStored) energyStored = maxEnergyStored; - } } } diff --git a/common/buildcraft/core/TickHandlerTimeTracker.java b/common/buildcraft/core/TickHandlerTimeTracker.java new file mode 100644 index 00000000..6dac28ce --- /dev/null +++ b/common/buildcraft/core/TickHandlerTimeTracker.java @@ -0,0 +1,29 @@ +package buildcraft.core; + +import buildcraft.api.core.SafeTimeTracker; +import cpw.mods.fml.common.ITickHandler; +import cpw.mods.fml.common.TickType; +import java.util.EnumSet; +import net.minecraft.world.World; + +public class TickHandlerTimeTracker implements ITickHandler { + + @Override + public void tickStart(EnumSet type, Object... tickData) { + SafeTimeTracker.worldTime = ((World) tickData[0]).getWorldTime(); + } + + @Override + public void tickEnd(EnumSet type, Object... tickData) { + } + + @Override + public EnumSet ticks() { + return EnumSet.of(TickType.WORLD); + } + + @Override + public String getLabel() { + return "BuildCraft - World update tick"; + } +} diff --git a/common/buildcraft/core/TileBuffer.java b/common/buildcraft/core/TileBuffer.java index cd5a78a8..c7f3f3e6 100644 --- a/common/buildcraft/core/TileBuffer.java +++ b/common/buildcraft/core/TileBuffer.java @@ -35,28 +35,26 @@ public final class TileBuffer { public final void refresh() { tile = null; blockID = 0; - if (!loadUnloaded && !world.blockExists(x, y, z)) { + if (!loadUnloaded && !world.blockExists(x, y, z)) return; - } blockID = world.getBlockId(this.x, this.y, this.z); Block block = Block.blocksList[blockID]; - if (block != null && block.hasTileEntity(world.getBlockMetadata(this.x, this.y, this.z))) { + if (block != null && block.hasTileEntity(world.getBlockMetadata(this.x, this.y, this.z))) tile = world.getBlockTileEntity(this.x, this.y, this.z); - } } public void set(int blockID, TileEntity tile) { this.blockID = blockID; this.tile = tile; - tracker.markTime(world); + tracker.markTime(); } public int getBlockID() { if (tile != null && !tile.isInvalid()) return blockID; - if (tracker.markTimeIfDelay(world, 20)) { + if (tracker.markTimeIfDelay(20)) { refresh(); if (tile != null && !tile.isInvalid()) @@ -70,7 +68,7 @@ public final class TileBuffer { if (tile != null && !tile.isInvalid()) return tile; - if (tracker.markTimeIfDelay(world, 20)) { + if (tracker.markTimeIfDelay(20)) { refresh(); if (tile != null && !tile.isInvalid()) diff --git a/common/buildcraft/energy/TilePollution.java b/common/buildcraft/energy/TilePollution.java index ac0f3dfe..94799a1b 100644 --- a/common/buildcraft/energy/TilePollution.java +++ b/common/buildcraft/energy/TilePollution.java @@ -24,7 +24,7 @@ public class TilePollution extends TileEntity { public void updateEntity() { if (!init) { init = true; - timeTracker.markTime(worldObj); + timeTracker.markTime(); BlockIndex index = new BlockIndex(xCoord, yCoord, zCoord); if (BuildCraftEnergy.saturationStored.containsKey(index)) { @@ -33,7 +33,7 @@ public class TilePollution extends TileEntity { saturation = 1; } } else { - if (timeTracker.markTimeIfDelay(worldObj, 20)) { + if (timeTracker.markTimeIfDelay(20)) { // int remaining = BuildCraftEnergy.createPollution(worldObj, // xCoord, yCoord, zCoord, saturation); // diff --git a/common/buildcraft/factory/TilePump.java b/common/buildcraft/factory/TilePump.java index ddc07a5c..d51be61d 100644 --- a/common/buildcraft/factory/TilePump.java +++ b/common/buildcraft/factory/TilePump.java @@ -184,7 +184,7 @@ public class TilePump extends TileBuildCraft implements IMachine, IPowerReceptor private BlockIndex getNextIndexToPump(boolean remove) { if (pumpLayerQueues.isEmpty()) { - if (timer.markTimeIfDelay(worldObj, REBUID_DELAY)) { + if (timer.markTimeIfDelay(REBUID_DELAY)) { rebuildQueue(); } return null; diff --git a/common/buildcraft/factory/TileRefinery.java b/common/buildcraft/factory/TileRefinery.java index 15682e19..32e8c645 100644 --- a/common/buildcraft/factory/TileRefinery.java +++ b/common/buildcraft/factory/TileRefinery.java @@ -125,7 +125,7 @@ public class TileRefinery extends TileBuildCraft implements IFluidHandler, IPowe simpleAnimationIterate(); return; - } else if (CoreProxy.proxy.isSimulating(worldObj) && updateNetworkTime.markTimeIfDelay(worldObj, 2 * BuildCraftCore.updateFactor)) { + } else if (CoreProxy.proxy.isSimulating(worldObj) && updateNetworkTime.markTimeIfDelay(2 * BuildCraftCore.updateFactor)) { sendNetworkUpdate(); } @@ -156,7 +156,7 @@ public class TileRefinery extends TileBuildCraft implements IFluidHandler, IPowe decreaseAnimation(); } - if (!time.markTimeIfDelay(worldObj, currentRecipe.delay)) + if (!time.markTimeIfDelay(currentRecipe.delay)) return; float energyUsed = powerHandler.useEnergy(currentRecipe.energy, currentRecipe.energy, true); @@ -350,7 +350,7 @@ public class TileRefinery extends TileBuildCraft implements IFluidHandler, IPowe } if (doFill && used > 0) { - updateNetworkTime.markTime(worldObj); + updateNetworkTime.markTime(); sendNetworkUpdate(); } diff --git a/common/buildcraft/factory/TileTank.java b/common/buildcraft/factory/TileTank.java index 125e2b3e..2808e963 100644 --- a/common/buildcraft/factory/TileTank.java +++ b/common/buildcraft/factory/TileTank.java @@ -47,7 +47,7 @@ public class TileTank extends TileBuildCraft implements IFluidHandler { moveFluidBelow(); } - if (hasUpdate && tracker.markTimeIfDelay(worldObj, 2 * BuildCraftCore.updateFactor)) { + if (hasUpdate && tracker.markTimeIfDelay(2 * BuildCraftCore.updateFactor)) { sendNetworkUpdate(); hasUpdate = false; } diff --git a/common/buildcraft/silicon/BlockLaser.java b/common/buildcraft/silicon/BlockLaser.java index 0d9acc62..be119f75 100644 --- a/common/buildcraft/silicon/BlockLaser.java +++ b/common/buildcraft/silicon/BlockLaser.java @@ -1,12 +1,10 @@ /** - * Copyright (c) SpaceToad, 2011 - * http://www.mod-buildcraft.com + * Copyright (c) SpaceToad, 2011 http://www.mod-buildcraft.com * - * BuildCraft is distributed under the terms of the Minecraft Mod Public - * License 1.0, or MMPL. Please check the contents of the license located in + * BuildCraft is distributed under the terms of the Minecraft Mod Public License + * 1.0, or MMPL. Please check the contents of the license located in * http://www.mod-buildcraft.com/MMPL-1.0.txt */ - package buildcraft.silicon; import buildcraft.core.CreativeTabBuildCraft; @@ -24,8 +22,8 @@ import net.minecraftforge.common.ForgeDirection; public class BlockLaser extends BlockContainer { - @SideOnly(Side.CLIENT) - private Icon textureTop, textureBottom, textureSide; + @SideOnly(Side.CLIENT) + private Icon textureTop, textureBottom, textureSide; public BlockLaser(int i) { super(i, Material.iron); @@ -53,33 +51,36 @@ public class BlockLaser extends BlockContainer { } @Override - public TileEntity createNewTileEntity(World var1) { - return new TileLaser(); + public TileEntity createTileEntity(World world, int meta) { + return new TileLaserStandard(); } @Override - public Icon getIcon(int i, int j) { - if (i == ForgeDirection.values()[j].getOpposite().ordinal()) + public TileEntity createNewTileEntity(World world) { + return null; + } + + @Override + public Icon getIcon(int side, int meta) { + if (side == ForgeDirection.getOrientation(meta).getOpposite().ordinal()) return textureBottom; - else if (i == j) + else if (side == meta) return textureTop; else return textureSide; - } @Override public int onBlockPlaced(World world, int x, int y, int z, int side, float par6, float par7, float par8, int meta) { super.onBlockPlaced(world, x, y, z, side, par6, par7, par8, meta); - if (side <= 6) { + if (side <= 6) meta = side; - } return meta; } - @SuppressWarnings({ "unchecked", "rawtypes" }) + @SuppressWarnings({"unchecked", "rawtypes"}) @Override public void addCreativeItems(ArrayList itemList) { itemList.add(new ItemStack(this)); @@ -87,10 +88,9 @@ public class BlockLaser extends BlockContainer { @Override @SideOnly(Side.CLIENT) - public void registerIcons(IconRegister par1IconRegister) - { - textureTop = par1IconRegister.registerIcon("buildcraft:laser_top"); - textureBottom = par1IconRegister.registerIcon("buildcraft:laser_bottom"); - textureSide = par1IconRegister.registerIcon("buildcraft:laser_side"); + public void registerIcons(IconRegister par1IconRegister) { + textureTop = par1IconRegister.registerIcon("buildcraft:laser_top"); + textureBottom = par1IconRegister.registerIcon("buildcraft:laser_bottom"); + textureSide = par1IconRegister.registerIcon("buildcraft:laser_side"); } } diff --git a/common/buildcraft/silicon/TileLaser.java b/common/buildcraft/silicon/TileLaser.java index 1ed51bf7..84f7ab73 100644 --- a/common/buildcraft/silicon/TileLaser.java +++ b/common/buildcraft/silicon/TileLaser.java @@ -27,14 +27,14 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.ForgeDirection; -public class TileLaser extends TileBuildCraft implements IPowerReceptor, IActionReceptor, IMachine { +public abstract class TileLaser extends TileBuildCraft implements IPowerReceptor, IActionReceptor, IMachine { private EntityEnergyLaser laser = null; private final SafeTimeTracker laserTickTracker = new SafeTimeTracker(); private final SafeTimeTracker searchTracker = new SafeTimeTracker(); private final SafeTimeTracker networkTracker = new SafeTimeTracker(); private ILaserTarget laserTarget; - private PowerHandler powerHandler; + protected PowerHandler powerHandler; private int nextNetworkUpdate = 3; private int nextLaserUpdate = 10; private int nextLaserSearch = 100; @@ -71,9 +71,8 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction // Check for available tables if none is linked to this laser. if (!isValidTable()) - if (canFindTable()) { + if (canFindTable()) findTable(); - } // If we still don't have a valid table or the existing has // become invalid, we disable the laser and do nothing. @@ -84,32 +83,36 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction // We have a table and can work, so we create a laser if // necessary. - if (laser == null) { + if (laser == null) createLaser(); - } // We have a laser and may update it - if (laser != null && canUpdateLaser()) { + if (laser != null && canUpdateLaser()) updateLaser(); - } // Consume power and transfer it to the table. - float power = powerHandler.useEnergy(0, 4, true); + float power = powerHandler.useEnergy(0, getMaxPowerSent(), true); laserTarget.receiveLaserEnergy(power); - if (laser != null) { + if (laser != null) laser.pushPower(power); - } + + onPowerSent(power); sendNetworkUpdate(); } + protected abstract float getMaxPowerSent(); + + protected void onPowerSent(float power) { + } + protected boolean canFindTable() { - return searchTracker.markTimeIfDelay(worldObj, nextLaserSearch); + return searchTracker.markTimeIfDelay(nextLaserSearch); } protected boolean canUpdateLaser() { - return laserTickTracker.markTimeIfDelay(worldObj, nextLaserUpdate); + return laserTickTracker.markTimeIfDelay(nextLaserUpdate); } protected boolean isValidTable() { @@ -162,9 +165,8 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction if (tile instanceof ILaserTarget) { ILaserTarget table = (ILaserTarget) tile; - if (table.hasCurrentWork()) { + if (table.hasCurrentWork()) targets.add(new BlockIndex(x, y, z)); - } } } @@ -218,9 +220,8 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction laser.setPositions(head, tail); - if (!laser.isVisible()) { + if (!laser.isVisible()) laser.show(); - } } protected void removeLaser() { @@ -242,9 +243,8 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction @Override public void sendNetworkUpdate() { - if (networkTracker.markTimeIfDelay(worldObj, nextNetworkUpdate)) { + if (networkTracker.markTimeIfDelay(nextNetworkUpdate)) super.sendNetworkUpdate(); - } } @Override @@ -290,10 +290,9 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction @Override public void actionActivated(IAction action) { - if (action == BuildCraftCore.actionOn) { + if (action == BuildCraftCore.actionOn) lastMode = ActionMachineControl.Mode.On; - } else if (action == BuildCraftCore.actionOff) { + else if (action == BuildCraftCore.actionOff) lastMode = ActionMachineControl.Mode.Off; - } } } diff --git a/common/buildcraft/silicon/TileLaserStandard.java b/common/buildcraft/silicon/TileLaserStandard.java new file mode 100644 index 00000000..3fffdaaa --- /dev/null +++ b/common/buildcraft/silicon/TileLaserStandard.java @@ -0,0 +1,21 @@ +/* + * Copyright (c) SpaceToad, 2011-2012 + * http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public + * License 1.0, or MMPL. Please check the contents of the license located in + * http://www.mod-buildcraft.com/MMPL-1.0.txt + */ +package buildcraft.silicon; + +/** + * + * @author CovertJaguar + */ +public class TileLaserStandard extends TileLaser { + + @Override + protected float getMaxPowerSent() { + return 8; + } +} diff --git a/common/buildcraft/transport/Pipe.java b/common/buildcraft/transport/Pipe.java index f66f70a5..8aa94754 100644 --- a/common/buildcraft/transport/Pipe.java +++ b/common/buildcraft/transport/Pipe.java @@ -134,7 +134,7 @@ public abstract class Pipe implements IPipe, IDropContr if (container.worldObj.isRemote) return; - if (actionTracker.markTimeIfDelay(container.worldObj, 10)) { + if (actionTracker.markTimeIfDelay(10)) { resolveActions(); } diff --git a/common/buildcraft/transport/PipeTransportFluids.java b/common/buildcraft/transport/PipeTransportFluids.java index 51b523e8..2769c40a 100644 --- a/common/buildcraft/transport/PipeTransportFluids.java +++ b/common/buildcraft/transport/PipeTransportFluids.java @@ -194,7 +194,7 @@ public class PipeTransportFluids extends PipeTransport implements IFluidHandler moveFluids(); - if (tracker.markTimeIfDelay(container.worldObj, BuildCraftCore.updateFactor)) { + if (tracker.markTimeIfDelay(BuildCraftCore.updateFactor)) { boolean init = false; if (++clientSyncCounter > BuildCraftCore.longUpdateFactor) { diff --git a/common/buildcraft/transport/PipeTransportPower.java b/common/buildcraft/transport/PipeTransportPower.java index 5ea91248..8dbc644d 100644 --- a/common/buildcraft/transport/PipeTransportPower.java +++ b/common/buildcraft/transport/PipeTransportPower.java @@ -245,7 +245,7 @@ public class PipeTransportPower extends PipeTransport { } } - if (tracker.markTimeIfDelay(container.worldObj, 2 * BuildCraftCore.updateFactor)) { + if (tracker.markTimeIfDelay(2 * BuildCraftCore.updateFactor)) { PacketPowerUpdate packet = new PacketPowerUpdate(container.xCoord, container.yCoord, container.zCoord); double displayFactor = MAX_DISPLAY / 1024.0; From e85d99b04729ea5351924dd9cea6f64faee47850 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Tue, 6 Aug 2013 21:50:42 -0700 Subject: [PATCH 44/48] An attempt to improve PowerHandler cpu usage --- common/buildcraft/api/core/TickLimiter.java | 32 +++++++++++++++++++ common/buildcraft/api/power/PowerHandler.java | 27 ++++++++-------- .../core/TickHandlerTimeTracker.java | 5 ++- 3 files changed, 50 insertions(+), 14 deletions(-) create mode 100644 common/buildcraft/api/core/TickLimiter.java diff --git a/common/buildcraft/api/core/TickLimiter.java b/common/buildcraft/api/core/TickLimiter.java new file mode 100644 index 00000000..41436183 --- /dev/null +++ b/common/buildcraft/api/core/TickLimiter.java @@ -0,0 +1,32 @@ +/* + * Copyright (c) SpaceToad, 2011-2012 + * http://www.mod-buildcraft.com + * + * BuildCraft is distributed under the terms of the Minecraft Mod Public + * License 1.0, or MMPL. Please check the contents of the license located in + * http://www.mod-buildcraft.com/MMPL-1.0.txt + */ +package buildcraft.api.core; + +/** + * + * @author CovertJaguar + */ +public class TickLimiter { + + public static long worldTime; + private long lastTick = worldTime; + private long timeSinceLastTick = -1; + + public boolean canTick() { + if (lastTick == worldTime) + return false; + timeSinceLastTick = worldTime - lastTick; + lastTick = worldTime; + return true; + } + + public long timeSinceLastTick() { + return timeSinceLastTick > 0 ? timeSinceLastTick : 0; + } +} diff --git a/common/buildcraft/api/power/PowerHandler.java b/common/buildcraft/api/power/PowerHandler.java index 763a0fe4..2e1ed194 100644 --- a/common/buildcraft/api/power/PowerHandler.java +++ b/common/buildcraft/api/power/PowerHandler.java @@ -7,7 +7,7 @@ */ package buildcraft.api.power; -import buildcraft.api.core.SafeTimeTracker; +import buildcraft.api.core.TickLimiter; import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.common.ForgeDirection; @@ -77,9 +77,9 @@ public final class PowerHandler { private float maxEnergyStored; private float activationEnergy; private float energyStored = 0; - private final SafeTimeTracker doWorkTracker = new SafeTimeTracker(); - private final SafeTimeTracker sourcesTracker = new SafeTimeTracker(); - private final SafeTimeTracker perditionTracker = new SafeTimeTracker(); + private final TickLimiter doWorkLimiter = new TickLimiter(); + private final TickLimiter sourcesLimiter = new TickLimiter(); + private final TickLimiter perditionLimiter = new TickLimiter(); public final int[] powerSources = new int[6]; public final IPowerReceptor receptor; private PerditionCalculator perdition; @@ -180,32 +180,33 @@ public final class PowerHandler { * design around this though if you are aware of the limitations. */ public void update() { + if (receptor.getWorld().isRemote) + return; applyPerdition(); applyWork(); validateEnergy(); } private void applyPerdition() { - if (perditionTracker.markTimeIfDelay(1) && energyStored > 0) { - float newEnergy = perdition.applyPerdition(this, energyStored, perditionTracker.durationOfLastDelay()); - if (newEnergy == 0 || newEnergy < energyStored) + if (energyStored > 0 && perditionLimiter.canTick()) { + float newEnergy = perdition.applyPerdition(this, energyStored, perditionLimiter.timeSinceLastTick()); + if (newEnergy < energyStored || newEnergy == 0) energyStored = newEnergy; else - energyStored = DEFUALT_PERDITION.applyPerdition(this, energyStored, perditionTracker.durationOfLastDelay()); + energyStored = DEFUALT_PERDITION.applyPerdition(this, energyStored, perditionLimiter.timeSinceLastTick()); validateEnergy(); } } private void applyWork() { - if (energyStored >= activationEnergy) - if (doWorkTracker.markTimeIfDelay(1)) - receptor.doWork(this); + if (energyStored >= activationEnergy && doWorkLimiter.canTick()) + receptor.doWork(this); } private void updateSources(ForgeDirection source) { - if (sourcesTracker.markTimeIfDelay(1)) + if (sourcesLimiter.canTick()) for (int i = 0; i < 6; ++i) { - powerSources[i] -= sourcesTracker.durationOfLastDelay(); + powerSources[i] -= sourcesLimiter.timeSinceLastTick(); if (powerSources[i] < 0) powerSources[i] = 0; } diff --git a/common/buildcraft/core/TickHandlerTimeTracker.java b/common/buildcraft/core/TickHandlerTimeTracker.java index 6dac28ce..5410d0d0 100644 --- a/common/buildcraft/core/TickHandlerTimeTracker.java +++ b/common/buildcraft/core/TickHandlerTimeTracker.java @@ -1,6 +1,7 @@ package buildcraft.core; import buildcraft.api.core.SafeTimeTracker; +import buildcraft.api.core.TickLimiter; import cpw.mods.fml.common.ITickHandler; import cpw.mods.fml.common.TickType; import java.util.EnumSet; @@ -10,7 +11,9 @@ public class TickHandlerTimeTracker implements ITickHandler { @Override public void tickStart(EnumSet type, Object... tickData) { - SafeTimeTracker.worldTime = ((World) tickData[0]).getWorldTime(); + long worldTime = ((World) tickData[0]).getWorldTime(); + SafeTimeTracker.worldTime = worldTime; + TickLimiter.worldTime = worldTime; } @Override From 9472dea734d88666c17cdef59a754f459b5b774e Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Tue, 6 Aug 2013 22:48:07 -0700 Subject: [PATCH 45/48] Revert "An attempt to improve PowerHandler cpu usage" This reverts commit e85d99b04729ea5351924dd9cea6f64faee47850. --- common/buildcraft/api/core/TickLimiter.java | 32 ------------------- common/buildcraft/api/power/PowerHandler.java | 27 ++++++++-------- .../core/TickHandlerTimeTracker.java | 5 +-- 3 files changed, 14 insertions(+), 50 deletions(-) delete mode 100644 common/buildcraft/api/core/TickLimiter.java diff --git a/common/buildcraft/api/core/TickLimiter.java b/common/buildcraft/api/core/TickLimiter.java deleted file mode 100644 index 41436183..00000000 --- a/common/buildcraft/api/core/TickLimiter.java +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) SpaceToad, 2011-2012 - * http://www.mod-buildcraft.com - * - * BuildCraft is distributed under the terms of the Minecraft Mod Public - * License 1.0, or MMPL. Please check the contents of the license located in - * http://www.mod-buildcraft.com/MMPL-1.0.txt - */ -package buildcraft.api.core; - -/** - * - * @author CovertJaguar - */ -public class TickLimiter { - - public static long worldTime; - private long lastTick = worldTime; - private long timeSinceLastTick = -1; - - public boolean canTick() { - if (lastTick == worldTime) - return false; - timeSinceLastTick = worldTime - lastTick; - lastTick = worldTime; - return true; - } - - public long timeSinceLastTick() { - return timeSinceLastTick > 0 ? timeSinceLastTick : 0; - } -} diff --git a/common/buildcraft/api/power/PowerHandler.java b/common/buildcraft/api/power/PowerHandler.java index 2e1ed194..763a0fe4 100644 --- a/common/buildcraft/api/power/PowerHandler.java +++ b/common/buildcraft/api/power/PowerHandler.java @@ -7,7 +7,7 @@ */ package buildcraft.api.power; -import buildcraft.api.core.TickLimiter; +import buildcraft.api.core.SafeTimeTracker; import net.minecraft.nbt.NBTTagCompound; import net.minecraftforge.common.ForgeDirection; @@ -77,9 +77,9 @@ public final class PowerHandler { private float maxEnergyStored; private float activationEnergy; private float energyStored = 0; - private final TickLimiter doWorkLimiter = new TickLimiter(); - private final TickLimiter sourcesLimiter = new TickLimiter(); - private final TickLimiter perditionLimiter = new TickLimiter(); + private final SafeTimeTracker doWorkTracker = new SafeTimeTracker(); + private final SafeTimeTracker sourcesTracker = new SafeTimeTracker(); + private final SafeTimeTracker perditionTracker = new SafeTimeTracker(); public final int[] powerSources = new int[6]; public final IPowerReceptor receptor; private PerditionCalculator perdition; @@ -180,33 +180,32 @@ public final class PowerHandler { * design around this though if you are aware of the limitations. */ public void update() { - if (receptor.getWorld().isRemote) - return; applyPerdition(); applyWork(); validateEnergy(); } private void applyPerdition() { - if (energyStored > 0 && perditionLimiter.canTick()) { - float newEnergy = perdition.applyPerdition(this, energyStored, perditionLimiter.timeSinceLastTick()); - if (newEnergy < energyStored || newEnergy == 0) + if (perditionTracker.markTimeIfDelay(1) && energyStored > 0) { + float newEnergy = perdition.applyPerdition(this, energyStored, perditionTracker.durationOfLastDelay()); + if (newEnergy == 0 || newEnergy < energyStored) energyStored = newEnergy; else - energyStored = DEFUALT_PERDITION.applyPerdition(this, energyStored, perditionLimiter.timeSinceLastTick()); + energyStored = DEFUALT_PERDITION.applyPerdition(this, energyStored, perditionTracker.durationOfLastDelay()); validateEnergy(); } } private void applyWork() { - if (energyStored >= activationEnergy && doWorkLimiter.canTick()) - receptor.doWork(this); + if (energyStored >= activationEnergy) + if (doWorkTracker.markTimeIfDelay(1)) + receptor.doWork(this); } private void updateSources(ForgeDirection source) { - if (sourcesLimiter.canTick()) + if (sourcesTracker.markTimeIfDelay(1)) for (int i = 0; i < 6; ++i) { - powerSources[i] -= sourcesLimiter.timeSinceLastTick(); + powerSources[i] -= sourcesTracker.durationOfLastDelay(); if (powerSources[i] < 0) powerSources[i] = 0; } diff --git a/common/buildcraft/core/TickHandlerTimeTracker.java b/common/buildcraft/core/TickHandlerTimeTracker.java index 5410d0d0..6dac28ce 100644 --- a/common/buildcraft/core/TickHandlerTimeTracker.java +++ b/common/buildcraft/core/TickHandlerTimeTracker.java @@ -1,7 +1,6 @@ package buildcraft.core; import buildcraft.api.core.SafeTimeTracker; -import buildcraft.api.core.TickLimiter; import cpw.mods.fml.common.ITickHandler; import cpw.mods.fml.common.TickType; import java.util.EnumSet; @@ -11,9 +10,7 @@ public class TickHandlerTimeTracker implements ITickHandler { @Override public void tickStart(EnumSet type, Object... tickData) { - long worldTime = ((World) tickData[0]).getWorldTime(); - SafeTimeTracker.worldTime = worldTime; - TickLimiter.worldTime = worldTime; + SafeTimeTracker.worldTime = ((World) tickData[0]).getWorldTime(); } @Override From d6b8fd6f15a6e250f38d2281cd117698a7c39ed9 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Wed, 7 Aug 2013 02:01:46 -0700 Subject: [PATCH 46/48] Oops that wasn't supposed to make it in --- common/buildcraft/BuildCraftSilicon.java | 3 +-- common/buildcraft/silicon/BlockLaser.java | 2 +- common/buildcraft/silicon/TileLaser.java | 6 ++++-- .../buildcraft/silicon/TileLaserStandard.java | 21 ------------------- 4 files changed, 6 insertions(+), 26 deletions(-) delete mode 100644 common/buildcraft/silicon/TileLaserStandard.java diff --git a/common/buildcraft/BuildCraftSilicon.java b/common/buildcraft/BuildCraftSilicon.java index 23a76d47..39e0d326 100644 --- a/common/buildcraft/BuildCraftSilicon.java +++ b/common/buildcraft/BuildCraftSilicon.java @@ -22,7 +22,6 @@ import buildcraft.silicon.SiliconProxy; import buildcraft.silicon.TileAdvancedCraftingTable; import buildcraft.silicon.TileAssemblyTable; import buildcraft.silicon.TileLaser; -import buildcraft.silicon.TileLaserStandard; import buildcraft.silicon.network.PacketHandlerSilicon; import cpw.mods.fml.common.Mod; import cpw.mods.fml.common.Mod.EventHandler; @@ -75,7 +74,7 @@ public class BuildCraftSilicon { @EventHandler public void init(FMLInitializationEvent evt) { NetworkRegistry.instance().registerGuiHandler(instance, new GuiHandler()); - CoreProxy.proxy.registerTileEntity(TileLaserStandard.class, "net.minecraft.src.buildcraft.factory.TileLaser"); + CoreProxy.proxy.registerTileEntity(TileLaser.class, "net.minecraft.src.buildcraft.factory.TileLaser"); CoreProxy.proxy.registerTileEntity(TileAssemblyTable.class, "net.minecraft.src.buildcraft.factory.TileAssemblyTable"); CoreProxy.proxy.registerTileEntity(TileAdvancedCraftingTable.class, "net.minecraft.src.buildcraft.factory.TileAssemblyAdvancedWorkbench"); diff --git a/common/buildcraft/silicon/BlockLaser.java b/common/buildcraft/silicon/BlockLaser.java index be119f75..06a664ff 100644 --- a/common/buildcraft/silicon/BlockLaser.java +++ b/common/buildcraft/silicon/BlockLaser.java @@ -52,7 +52,7 @@ public class BlockLaser extends BlockContainer { @Override public TileEntity createTileEntity(World world, int meta) { - return new TileLaserStandard(); + return new TileLaser(); } @Override diff --git a/common/buildcraft/silicon/TileLaser.java b/common/buildcraft/silicon/TileLaser.java index 84f7ab73..70f4b219 100644 --- a/common/buildcraft/silicon/TileLaser.java +++ b/common/buildcraft/silicon/TileLaser.java @@ -27,7 +27,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraftforge.common.ForgeDirection; -public abstract class TileLaser extends TileBuildCraft implements IPowerReceptor, IActionReceptor, IMachine { +public class TileLaser extends TileBuildCraft implements IPowerReceptor, IActionReceptor, IMachine { private EntityEnergyLaser laser = null; private final SafeTimeTracker laserTickTracker = new SafeTimeTracker(); @@ -102,7 +102,9 @@ public abstract class TileLaser extends TileBuildCraft implements IPowerReceptor sendNetworkUpdate(); } - protected abstract float getMaxPowerSent(); + protected float getMaxPowerSent(){ + return 4; + } protected void onPowerSent(float power) { } diff --git a/common/buildcraft/silicon/TileLaserStandard.java b/common/buildcraft/silicon/TileLaserStandard.java deleted file mode 100644 index 3fffdaaa..00000000 --- a/common/buildcraft/silicon/TileLaserStandard.java +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright (c) SpaceToad, 2011-2012 - * http://www.mod-buildcraft.com - * - * BuildCraft is distributed under the terms of the Minecraft Mod Public - * License 1.0, or MMPL. Please check the contents of the license located in - * http://www.mod-buildcraft.com/MMPL-1.0.txt - */ -package buildcraft.silicon; - -/** - * - * @author CovertJaguar - */ -public class TileLaserStandard extends TileLaser { - - @Override - protected float getMaxPowerSent() { - return 8; - } -} From 358b58321a5faeead704189e1a9d322ca5a96e3a Mon Sep 17 00:00:00 2001 From: SirSengir Date: Wed, 7 Aug 2013 16:05:04 +0200 Subject: [PATCH 47/48] Fix missing default perdition calculator. --- buildcraft_resources/build.number | 4 ++-- buildcraft_resources/build.xml | 6 +++--- common/buildcraft/api/power/PowerHandler.java | 7 ++++--- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/buildcraft_resources/build.number b/buildcraft_resources/build.number index f793c6ee..adfc8b25 100644 --- a/buildcraft_resources/build.number +++ b/buildcraft_resources/build.number @@ -1,3 +1,3 @@ #Build Number for ANT. Do not edit! -#Sat Jun 22 09:37:58 CEST 2013 -build.number=35 +#Thu Aug 01 17:24:24 CEST 2013 +build.number=37 diff --git a/buildcraft_resources/build.xml b/buildcraft_resources/build.xml index 59abbc3b..34fa3586 100644 --- a/buildcraft_resources/build.xml +++ b/buildcraft_resources/build.xml @@ -15,9 +15,9 @@ - - - + + + diff --git a/common/buildcraft/api/power/PowerHandler.java b/common/buildcraft/api/power/PowerHandler.java index 763a0fe4..9095938a 100644 --- a/common/buildcraft/api/power/PowerHandler.java +++ b/common/buildcraft/api/power/PowerHandler.java @@ -71,7 +71,7 @@ public final class PowerHandler { return current; } } - public static final PerditionCalculator DEFUALT_PERDITION = new PerditionCalculator(); + public static final PerditionCalculator DEFAULT_PERDITION = new PerditionCalculator(); private float minEnergyReceived; private float maxEnergyReceived; private float maxEnergyStored; @@ -90,6 +90,7 @@ public final class PowerHandler { this.receptor = receptor; this.type = type; this.receiver = new PowerReceiver(); + this.perdition = DEFAULT_PERDITION; } public PowerReceiver getPowerReceiver() { @@ -162,7 +163,7 @@ public final class PowerHandler { */ public void setPerdition(PerditionCalculator perdition) { if (perdition == null) - perdition = DEFUALT_PERDITION; + perdition = DEFAULT_PERDITION; this.perdition = perdition; } @@ -191,7 +192,7 @@ public final class PowerHandler { if (newEnergy == 0 || newEnergy < energyStored) energyStored = newEnergy; else - energyStored = DEFUALT_PERDITION.applyPerdition(this, energyStored, perditionTracker.durationOfLastDelay()); + energyStored = DEFAULT_PERDITION.applyPerdition(this, energyStored, perditionTracker.durationOfLastDelay()); validateEnergy(); } } From a53a724b4157877abaa9f4d663368752f6dfae57 Mon Sep 17 00:00:00 2001 From: CovertJaguar Date: Wed, 7 Aug 2013 14:42:55 -0700 Subject: [PATCH 48/48] Revert STT changes They were broken if you have more than one world. --- common/buildcraft/BuildCraftCore.java | 4 +- .../buildcraft/api/core/SafeTimeTracker.java | 35 +++++++----- common/buildcraft/api/power/PowerHandler.java | 57 ++++++++++++------- .../core/TickHandlerTimeTracker.java | 29 ---------- common/buildcraft/core/TileBuffer.java | 12 ++-- common/buildcraft/energy/TilePollution.java | 4 +- common/buildcraft/factory/TilePump.java | 2 +- common/buildcraft/factory/TileRefinery.java | 6 +- common/buildcraft/factory/TileTank.java | 2 +- common/buildcraft/silicon/BlockLaser.java | 17 +++--- common/buildcraft/silicon/TileLaser.java | 34 ++++++----- common/buildcraft/transport/Pipe.java | 2 +- .../transport/PipeTransportFluids.java | 2 +- .../transport/PipeTransportPower.java | 2 +- 14 files changed, 103 insertions(+), 105 deletions(-) delete mode 100644 common/buildcraft/core/TickHandlerTimeTracker.java diff --git a/common/buildcraft/BuildCraftCore.java b/common/buildcraft/BuildCraftCore.java index 8d7c3e4b..fef829af 100644 --- a/common/buildcraft/BuildCraftCore.java +++ b/common/buildcraft/BuildCraftCore.java @@ -26,7 +26,6 @@ import buildcraft.core.ItemSpring; import buildcraft.core.ItemWrench; import buildcraft.core.SpringPopulate; import buildcraft.core.TickHandlerCoreClient; -import buildcraft.core.TickHandlerTimeTracker; import buildcraft.core.Version; import buildcraft.core.blueprints.BptItem; import buildcraft.core.network.EntityIds; @@ -300,8 +299,7 @@ public class BuildCraftCore { BuildCraftAPI.softBlocks[Block.vine.blockID] = true; BuildCraftAPI.softBlocks[Block.fire.blockID] = true; TickRegistry.registerTickHandler(new TickHandlerCoreClient(), Side.CLIENT); - TickRegistry.registerTickHandler(new TickHandlerTimeTracker(), Side.CLIENT); - TickRegistry.registerTickHandler(new TickHandlerTimeTracker(), Side.SERVER); + } @EventHandler diff --git a/common/buildcraft/api/core/SafeTimeTracker.java b/common/buildcraft/api/core/SafeTimeTracker.java index c10e61f5..b1487800 100644 --- a/common/buildcraft/api/core/SafeTimeTracker.java +++ b/common/buildcraft/api/core/SafeTimeTracker.java @@ -7,27 +7,32 @@ */ package buildcraft.api.core; +import net.minecraft.world.World; + public class SafeTimeTracker { - public static long worldTime; - private long lastMark = worldTime; + private long lastMark = Long.MIN_VALUE; private long duration = -1; + /** * Return true if a given delay has passed since last time marked was called * successfully. */ - public boolean markTimeIfDelay(long delay) { - long timePassed = worldTime - lastMark; - if (timePassed >= delay) { - duration = timePassed; - lastMark = worldTime; - return true; - } - if (worldTime < lastMark) { - lastMark = worldTime; + public boolean markTimeIfDelay(World world, long delay) { + if (world == null) + return false; + + long currentTime = world.getWorldTime(); + + if (currentTime < lastMark) { + lastMark = currentTime; + return false; + } else if (lastMark + delay <= currentTime) { + duration = currentTime - lastMark; + lastMark = currentTime; + return true; + } else return false; - } - return false; } @@ -35,7 +40,7 @@ public class SafeTimeTracker { return duration > 0 ? duration : 0; } - public void markTime() { - lastMark = worldTime; + public void markTime(World world) { + lastMark = world.getWorldTime(); } } diff --git a/common/buildcraft/api/power/PowerHandler.java b/common/buildcraft/api/power/PowerHandler.java index 9095938a..0751065b 100644 --- a/common/buildcraft/api/power/PowerHandler.java +++ b/common/buildcraft/api/power/PowerHandler.java @@ -23,7 +23,7 @@ public final class PowerHandler { case STORAGE: return true; default: - return false; + return false; } } @@ -33,7 +33,7 @@ public final class PowerHandler { case STORAGE: return true; default: - return false; + return false; } } } @@ -49,8 +49,9 @@ public final class PowerHandler { } public PerditionCalculator(float powerLoss) { - if (powerLoss < MIN_POWERLOSS) + if (powerLoss < MIN_POWERLOSS) { powerLoss = MIN_POWERLOSS; + } this.powerLoss = powerLoss; } @@ -66,8 +67,9 @@ public final class PowerHandler { */ public float applyPerdition(PowerHandler powerHandler, float current, long ticksPassed) { current -= powerLoss * ticksPassed; - if (current < 0) + if (current < 0) { current = 0; + } return current; } } @@ -136,8 +138,9 @@ public final class PowerHandler { * being common. */ public void configure(float minEnergyReceived, float maxEnergyReceived, float activationEnergy, float maxStoredEnergy) { - if (minEnergyReceived > maxEnergyReceived) + if (minEnergyReceived > maxEnergyReceived) { maxEnergyReceived = minEnergyReceived; + } this.minEnergyReceived = minEnergyReceived; this.maxEnergyReceived = maxEnergyReceived; this.maxEnergyStored = maxStoredEnergy; @@ -168,6 +171,8 @@ public final class PowerHandler { } public PerditionCalculator getPerdition() { + if (perdition == null) + return DEFAULT_PERDITION; return perdition; } @@ -187,8 +192,8 @@ public final class PowerHandler { } private void applyPerdition() { - if (perditionTracker.markTimeIfDelay(1) && energyStored > 0) { - float newEnergy = perdition.applyPerdition(this, energyStored, perditionTracker.durationOfLastDelay()); + if (perditionTracker.markTimeIfDelay(receptor.getWorld(), 1) && energyStored > 0) { + float newEnergy = getPerdition().applyPerdition(this, energyStored, perditionTracker.durationOfLastDelay()); if (newEnergy == 0 || newEnergy < energyStored) energyStored = newEnergy; else @@ -198,18 +203,22 @@ public final class PowerHandler { } private void applyWork() { - if (energyStored >= activationEnergy) - if (doWorkTracker.markTimeIfDelay(1)) + if (energyStored >= activationEnergy) { + if (doWorkTracker.markTimeIfDelay(receptor.getWorld(), 1)) { receptor.doWork(this); + } + } } private void updateSources(ForgeDirection source) { - if (sourcesTracker.markTimeIfDelay(1)) + if (sourcesTracker.markTimeIfDelay(receptor.getWorld(), 1)) { for (int i = 0; i < 6; ++i) { powerSources[i] -= sourcesTracker.durationOfLastDelay(); - if (powerSources[i] < 0) + if (powerSources[i] < 0) { powerSources[i] = 0; + } } + } if (source != null) powerSources[source.ordinal()] = 10; @@ -229,16 +238,19 @@ public final class PowerHandler { float result = 0; - if (energyStored >= min) + if (energyStored >= min) { if (energyStored <= max) { result = energyStored; - if (doUse) + if (doUse) { energyStored = 0; + } } else { result = max; - if (doUse) + if (doUse) { energyStored -= max; + } } + } validateEnergy(); @@ -315,11 +327,13 @@ public final class PowerHandler { */ public float receiveEnergy(Type source, final float quantity, ForgeDirection from) { float used = quantity; - if (source == Type.ENGINE) - if (used < minEnergyReceived) + if (source == Type.ENGINE) { + if (used < minEnergyReceived) { return 0; - else if (used > maxEnergyReceived) + } else if (used > maxEnergyReceived) { used = maxEnergyReceived; + } + } updateSources(from); @@ -327,8 +341,9 @@ public final class PowerHandler { applyWork(); - if (source == Type.ENGINE && type.eatsEngineExcess()) + if (source == Type.ENGINE && type.eatsEngineExcess()) { return Math.min(quantity, maxEnergyReceived); + } return used; } @@ -364,9 +379,11 @@ public final class PowerHandler { } private void validateEnergy() { - if (energyStored < 0) + if (energyStored < 0) { energyStored = 0; - if (energyStored > maxEnergyStored) + } + if (energyStored > maxEnergyStored) { energyStored = maxEnergyStored; + } } } diff --git a/common/buildcraft/core/TickHandlerTimeTracker.java b/common/buildcraft/core/TickHandlerTimeTracker.java deleted file mode 100644 index 6dac28ce..00000000 --- a/common/buildcraft/core/TickHandlerTimeTracker.java +++ /dev/null @@ -1,29 +0,0 @@ -package buildcraft.core; - -import buildcraft.api.core.SafeTimeTracker; -import cpw.mods.fml.common.ITickHandler; -import cpw.mods.fml.common.TickType; -import java.util.EnumSet; -import net.minecraft.world.World; - -public class TickHandlerTimeTracker implements ITickHandler { - - @Override - public void tickStart(EnumSet type, Object... tickData) { - SafeTimeTracker.worldTime = ((World) tickData[0]).getWorldTime(); - } - - @Override - public void tickEnd(EnumSet type, Object... tickData) { - } - - @Override - public EnumSet ticks() { - return EnumSet.of(TickType.WORLD); - } - - @Override - public String getLabel() { - return "BuildCraft - World update tick"; - } -} diff --git a/common/buildcraft/core/TileBuffer.java b/common/buildcraft/core/TileBuffer.java index c7f3f3e6..cd5a78a8 100644 --- a/common/buildcraft/core/TileBuffer.java +++ b/common/buildcraft/core/TileBuffer.java @@ -35,26 +35,28 @@ public final class TileBuffer { public final void refresh() { tile = null; blockID = 0; - if (!loadUnloaded && !world.blockExists(x, y, z)) + if (!loadUnloaded && !world.blockExists(x, y, z)) { return; + } blockID = world.getBlockId(this.x, this.y, this.z); Block block = Block.blocksList[blockID]; - if (block != null && block.hasTileEntity(world.getBlockMetadata(this.x, this.y, this.z))) + if (block != null && block.hasTileEntity(world.getBlockMetadata(this.x, this.y, this.z))) { tile = world.getBlockTileEntity(this.x, this.y, this.z); + } } public void set(int blockID, TileEntity tile) { this.blockID = blockID; this.tile = tile; - tracker.markTime(); + tracker.markTime(world); } public int getBlockID() { if (tile != null && !tile.isInvalid()) return blockID; - if (tracker.markTimeIfDelay(20)) { + if (tracker.markTimeIfDelay(world, 20)) { refresh(); if (tile != null && !tile.isInvalid()) @@ -68,7 +70,7 @@ public final class TileBuffer { if (tile != null && !tile.isInvalid()) return tile; - if (tracker.markTimeIfDelay(20)) { + if (tracker.markTimeIfDelay(world, 20)) { refresh(); if (tile != null && !tile.isInvalid()) diff --git a/common/buildcraft/energy/TilePollution.java b/common/buildcraft/energy/TilePollution.java index 94799a1b..ac0f3dfe 100644 --- a/common/buildcraft/energy/TilePollution.java +++ b/common/buildcraft/energy/TilePollution.java @@ -24,7 +24,7 @@ public class TilePollution extends TileEntity { public void updateEntity() { if (!init) { init = true; - timeTracker.markTime(); + timeTracker.markTime(worldObj); BlockIndex index = new BlockIndex(xCoord, yCoord, zCoord); if (BuildCraftEnergy.saturationStored.containsKey(index)) { @@ -33,7 +33,7 @@ public class TilePollution extends TileEntity { saturation = 1; } } else { - if (timeTracker.markTimeIfDelay(20)) { + if (timeTracker.markTimeIfDelay(worldObj, 20)) { // int remaining = BuildCraftEnergy.createPollution(worldObj, // xCoord, yCoord, zCoord, saturation); // diff --git a/common/buildcraft/factory/TilePump.java b/common/buildcraft/factory/TilePump.java index d51be61d..ddc07a5c 100644 --- a/common/buildcraft/factory/TilePump.java +++ b/common/buildcraft/factory/TilePump.java @@ -184,7 +184,7 @@ public class TilePump extends TileBuildCraft implements IMachine, IPowerReceptor private BlockIndex getNextIndexToPump(boolean remove) { if (pumpLayerQueues.isEmpty()) { - if (timer.markTimeIfDelay(REBUID_DELAY)) { + if (timer.markTimeIfDelay(worldObj, REBUID_DELAY)) { rebuildQueue(); } return null; diff --git a/common/buildcraft/factory/TileRefinery.java b/common/buildcraft/factory/TileRefinery.java index 32e8c645..15682e19 100644 --- a/common/buildcraft/factory/TileRefinery.java +++ b/common/buildcraft/factory/TileRefinery.java @@ -125,7 +125,7 @@ public class TileRefinery extends TileBuildCraft implements IFluidHandler, IPowe simpleAnimationIterate(); return; - } else if (CoreProxy.proxy.isSimulating(worldObj) && updateNetworkTime.markTimeIfDelay(2 * BuildCraftCore.updateFactor)) { + } else if (CoreProxy.proxy.isSimulating(worldObj) && updateNetworkTime.markTimeIfDelay(worldObj, 2 * BuildCraftCore.updateFactor)) { sendNetworkUpdate(); } @@ -156,7 +156,7 @@ public class TileRefinery extends TileBuildCraft implements IFluidHandler, IPowe decreaseAnimation(); } - if (!time.markTimeIfDelay(currentRecipe.delay)) + if (!time.markTimeIfDelay(worldObj, currentRecipe.delay)) return; float energyUsed = powerHandler.useEnergy(currentRecipe.energy, currentRecipe.energy, true); @@ -350,7 +350,7 @@ public class TileRefinery extends TileBuildCraft implements IFluidHandler, IPowe } if (doFill && used > 0) { - updateNetworkTime.markTime(); + updateNetworkTime.markTime(worldObj); sendNetworkUpdate(); } diff --git a/common/buildcraft/factory/TileTank.java b/common/buildcraft/factory/TileTank.java index 2808e963..125e2b3e 100644 --- a/common/buildcraft/factory/TileTank.java +++ b/common/buildcraft/factory/TileTank.java @@ -47,7 +47,7 @@ public class TileTank extends TileBuildCraft implements IFluidHandler { moveFluidBelow(); } - if (hasUpdate && tracker.markTimeIfDelay(2 * BuildCraftCore.updateFactor)) { + if (hasUpdate && tracker.markTimeIfDelay(worldObj, 2 * BuildCraftCore.updateFactor)) { sendNetworkUpdate(); hasUpdate = false; } diff --git a/common/buildcraft/silicon/BlockLaser.java b/common/buildcraft/silicon/BlockLaser.java index 06a664ff..0d25f117 100644 --- a/common/buildcraft/silicon/BlockLaser.java +++ b/common/buildcraft/silicon/BlockLaser.java @@ -51,31 +51,28 @@ public class BlockLaser extends BlockContainer { } @Override - public TileEntity createTileEntity(World world, int meta) { + public TileEntity createNewTileEntity(World world) { return new TileLaser(); } @Override - public TileEntity createNewTileEntity(World world) { - return null; - } - - @Override - public Icon getIcon(int side, int meta) { - if (side == ForgeDirection.getOrientation(meta).getOpposite().ordinal()) + public Icon getIcon(int i, int j) { + if (i == ForgeDirection.values()[j].getOpposite().ordinal()) return textureBottom; - else if (side == meta) + else if (i == j) return textureTop; else return textureSide; + } @Override public int onBlockPlaced(World world, int x, int y, int z, int side, float par6, float par7, float par8, int meta) { super.onBlockPlaced(world, x, y, z, side, par6, par7, par8, meta); - if (side <= 6) + if (side <= 6) { meta = side; + } return meta; } diff --git a/common/buildcraft/silicon/TileLaser.java b/common/buildcraft/silicon/TileLaser.java index 70f4b219..fd73b00c 100644 --- a/common/buildcraft/silicon/TileLaser.java +++ b/common/buildcraft/silicon/TileLaser.java @@ -71,8 +71,9 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction // Check for available tables if none is linked to this laser. if (!isValidTable()) - if (canFindTable()) + if (canFindTable()) { findTable(); + } // If we still don't have a valid table or the existing has // become invalid, we disable the laser and do nothing. @@ -83,20 +84,23 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction // We have a table and can work, so we create a laser if // necessary. - if (laser == null) + if (laser == null) { createLaser(); + } // We have a laser and may update it - if (laser != null && canUpdateLaser()) + if (laser != null && canUpdateLaser()) { updateLaser(); + } // Consume power and transfer it to the table. float power = powerHandler.useEnergy(0, getMaxPowerSent(), true); laserTarget.receiveLaserEnergy(power); - if (laser != null) + if (laser != null) { laser.pushPower(power); - + } + onPowerSent(power); sendNetworkUpdate(); @@ -108,13 +112,13 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction protected void onPowerSent(float power) { } - + protected boolean canFindTable() { - return searchTracker.markTimeIfDelay(nextLaserSearch); + return searchTracker.markTimeIfDelay(worldObj, nextLaserSearch); } protected boolean canUpdateLaser() { - return laserTickTracker.markTimeIfDelay(nextLaserUpdate); + return laserTickTracker.markTimeIfDelay(worldObj, nextLaserUpdate); } protected boolean isValidTable() { @@ -167,8 +171,9 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction if (tile instanceof ILaserTarget) { ILaserTarget table = (ILaserTarget) tile; - if (table.hasCurrentWork()) + if (table.hasCurrentWork()) { targets.add(new BlockIndex(x, y, z)); + } } } @@ -222,8 +227,9 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction laser.setPositions(head, tail); - if (!laser.isVisible()) + if (!laser.isVisible()) { laser.show(); + } } protected void removeLaser() { @@ -245,8 +251,9 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction @Override public void sendNetworkUpdate() { - if (networkTracker.markTimeIfDelay(nextNetworkUpdate)) + if (networkTracker.markTimeIfDelay(worldObj, nextNetworkUpdate)) { super.sendNetworkUpdate(); + } } @Override @@ -292,9 +299,10 @@ public class TileLaser extends TileBuildCraft implements IPowerReceptor, IAction @Override public void actionActivated(IAction action) { - if (action == BuildCraftCore.actionOn) + if (action == BuildCraftCore.actionOn) { lastMode = ActionMachineControl.Mode.On; - else if (action == BuildCraftCore.actionOff) + } else if (action == BuildCraftCore.actionOff) { lastMode = ActionMachineControl.Mode.Off; + } } } diff --git a/common/buildcraft/transport/Pipe.java b/common/buildcraft/transport/Pipe.java index 8aa94754..f66f70a5 100644 --- a/common/buildcraft/transport/Pipe.java +++ b/common/buildcraft/transport/Pipe.java @@ -134,7 +134,7 @@ public abstract class Pipe implements IPipe, IDropContr if (container.worldObj.isRemote) return; - if (actionTracker.markTimeIfDelay(10)) { + if (actionTracker.markTimeIfDelay(container.worldObj, 10)) { resolveActions(); } diff --git a/common/buildcraft/transport/PipeTransportFluids.java b/common/buildcraft/transport/PipeTransportFluids.java index 2769c40a..51b523e8 100644 --- a/common/buildcraft/transport/PipeTransportFluids.java +++ b/common/buildcraft/transport/PipeTransportFluids.java @@ -194,7 +194,7 @@ public class PipeTransportFluids extends PipeTransport implements IFluidHandler moveFluids(); - if (tracker.markTimeIfDelay(BuildCraftCore.updateFactor)) { + if (tracker.markTimeIfDelay(container.worldObj, BuildCraftCore.updateFactor)) { boolean init = false; if (++clientSyncCounter > BuildCraftCore.longUpdateFactor) { diff --git a/common/buildcraft/transport/PipeTransportPower.java b/common/buildcraft/transport/PipeTransportPower.java index 8dbc644d..5ea91248 100644 --- a/common/buildcraft/transport/PipeTransportPower.java +++ b/common/buildcraft/transport/PipeTransportPower.java @@ -245,7 +245,7 @@ public class PipeTransportPower extends PipeTransport { } } - if (tracker.markTimeIfDelay(2 * BuildCraftCore.updateFactor)) { + if (tracker.markTimeIfDelay(container.worldObj, 2 * BuildCraftCore.updateFactor)) { PacketPowerUpdate packet = new PacketPowerUpdate(container.xCoord, container.yCoord, container.zCoord); double displayFactor = MAX_DISPLAY / 1024.0;