Commit graph

1616 commits

Author SHA1 Message Date
CovertJaguar
fedb4d5a42 Merge branch 'nightly' into marmot 2013-12-28 00:43:25 -08:00
CovertJaguar
d77ee030c2 Modify Pipe RayTrace to better reflect EyeHeight 2013-12-28 00:41:05 -08:00
CovertJaguar
5150d01672 Add Redstone Fader Exp + major cleanup 2013-12-27 08:40:44 -08:00
Speiger Bär
d3a178375e Added gate changing on FluidPipes 2013-12-26 01:14:26 +01:00
CovertJaguar
4e3f4c1e94 Rewrite Timer Trigger so it actually works...
...and add Clock Timer Gate Expansion.
2013-12-24 00:22:17 -08:00
CovertJaguar
b3aa1aaafd Missed a line 2013-12-23 23:29:36 -08:00
CovertJaguar
f353d04feb Merge branch 'nightly' into marmot 2013-12-23 17:07:14 -08:00
CovertJaguar
46612e4e3c Desert Oil Biome should decorate
Closes #1374
2013-12-23 17:02:03 -08:00
CovertJaguar
f67d1a29b8 InventoryIterator should support Double Chests
Closes #1363
2013-12-23 16:58:46 -08:00
CovertJaguar
b64a8977c6 Modify Trigger API slightly to support Expansions
Unfortunately, this will break existing mods. But its a simple fix, just
implement the ITileTrigger interface.
2013-12-23 16:49:04 -08:00
CovertJaguar
1cb20ea59d Kill Gate Icon Provider, and cleanup unused icons 2013-12-21 19:49:20 -08:00
CovertJaguar
a0c2e5807c Serialize and Sync Gate Expansions
Expansions are synced in a similar manner to fluid ids. A packet is sent
on login with a String<->Byte mapping for each Expansion. The Pipe uses
this lookup table construct the Gate on the client side.

Remaining Todo List:
-Add Integration Table for adding Expansions to Gates
-Add Deconstruction Table for dismantling Gates
-Adapt Clock Timer Expansion to new framework
-Add Redstone Fader Expansion (name not final)
2013-12-21 19:11:51 -08:00
CovertJaguar
88c320a56b Move Pipe API into transport for now 2013-12-20 17:01:05 -08:00
CovertJaguar
c1cd0fa02b Remove IPipe, cleanup IPipeTile 2013-12-20 16:55:47 -08:00
CovertJaguar
0c438361e5 Code clean up 2013-12-20 16:27:01 -08:00
CovertJaguar
ae3a89bfe9 Clean up Fluid Update Packet
It was sending a ton of unused bytes, whoever did the Liquid->Fluid API
update left a bunch of old metadata related stuff in.

Also checking for valid fluids is necessary because its possible for
FluidStack.getFluid() to return null.
2013-12-19 20:36:58 -08:00
CovertJaguar
547c5d28ea Slow Item Pipe max speed so the code can keep up 2013-12-19 05:36:29 -08:00
CovertJaguar
986f407af6 Merge nightly into marmot 2013-12-19 05:35:40 -08:00
CovertJaguar
10daf6f202 Remove any possibility for CCMEs in Item pipes
Fixes
http://forum.feed-the-beast.com/threads/direwolf-20-1-6-4-public-beta.35476/page-18#post-500244

I should note that I still can't see how that could have happened, this
commit just made it utterly impossible.
2013-12-19 04:41:57 -08:00
CovertJaguar
c9acef05ca Improve perf of ACT by caching OreDict info 2013-12-19 03:33:22 -08:00
CovertJaguar
2936d76b95 Add a null check in dropItems() 2013-12-13 15:27:10 -08:00
CovertJaguar
35611e0bf7 ACT needs to support recipes with variable outputs
For example, ChristmasCraft Gifts that use input item NBT to determine
the output item.
2013-12-13 15:22:21 -08:00
CovertJaguar
70822c0178 Add additional support for Gate Expansions
Things left to do:
-Sync expansions on the pipe to the client
-Rewrite Assembly table to support modifying Item NBT so you can add
expansions to Gates
2013-12-10 02:02:35 -08:00
CovertJaguar
acef0b4d60 Fix Gate Rendering
Layers!
2013-12-10 01:02:21 -08:00
CovertJaguar
4a21f4ce24 Notify player of inv changes when filling 2013-12-08 21:03:29 -08:00
CovertJaguar
d7575d74ea Wrenches shouldn't stack 2013-12-08 21:02:46 -08:00
CovertJaguar
a4032762bc Merge branch 'marmot' of https://github.com/BuildCraft/BuildCraft into marmot 2013-12-08 16:57:03 -08:00
CovertJaguar
5be3a5c6a0 Fix Engine dupe
Closes #1361
2013-12-08 16:56:40 -08:00
Charles Comstock
ef71c35ad2 Extract GL.color(int color) for unpacking hex RGB
Centralizes all the unpacking of hex RGB values from an integer to a
single call to GL11.glColor4f.
2013-12-08 02:42:14 -06:00
CovertJaguar
0a4193b72e Some more minor optimizations 2013-12-05 18:05:32 -08:00
CovertJaguar
10015f8ffb Remove Fluid Motion Event, they cost too much CPU
And I'm told they are going away in the future.
2013-12-05 17:01:09 -08:00
CovertJaguar
7ee74d56a1 First Iteration of Gate Rewrite
GateKind enum is gone, replaced with two enums: GateMaterial and
GateLogic.

Pulsars and Timers are abstracted into GateExpansions that can be
applied to "upgrade" a gate. (Incomplete)

GateExpansions will eventually be moved to the API so that other can
define new expansions easily.

GateExpansions are not currently serialized or synced to the client.
This remains to be done.

Legacy migration support is included, but untested.

Currently only the base logic texture layer (white/black) are being
rendered. Eventually the material and expansions will each render an
additional texture layer onto the gate.
2013-12-05 13:38:00 -08:00
CovertJaguar
f41cc82eca Allow water springs to be disable independently of everything else 2013-12-05 09:56:03 -08:00
CovertJaguar
5f9e171de9 Merge pull request #1353 from ItsMeElConquistador/marmot
Added colorRenderCache to refinery filter slots
2013-12-03 00:13:43 -08:00
CovertJaguar
1acf4ba5b5 Cache Traveling Items
There existed a race condition where either the client could pass an
item from one pipe to another (with intact ItemStack NBT data) or a
packet could arrive from the server to inject the item into the pipe
(without NBT data). This resulted in incorrect Icons being occasionally
displayed for a moment for Items that use NBT to determine the Icon
(Forestry Bees/Trees).

To eliminate this race condition, all Traveling Items are now cached
(weakly) and ItemStacks are no longer sent as part of the Traveler
Packet. The client must instead request the ItemStack from the server.
The bonus being that the ItemStack (NBT and all) needs only be requested
when it first enters the network.

This also has the affect of further reducing bandwidth usage by Item
pipes, though it should be noted that Item pipes where already the least
bandwidth intensive pipe.

Additionally I rewrote the Item Grouping code. I'd never looked at it
before, but I figured I should make sure it properly maintains the pipe
state after grouping. What I found was 200 lines of wtf code that was
horribly outdated and broken. I replaced it with 20 lines of code that
are less dependent on implementation details of how pipes work. -.-
2013-12-02 17:45:08 -08:00
ElConquistador
76c35e28af Added colorRenderCache to refinery filter slots 2013-12-02 21:09:22 +01:00
CovertJaguar
4b80435f3d Merge Timer into Marmot 2013-12-01 22:27:42 -08:00
CovertJaguar
a6a4d46b29 Merge branch 'master' into marmot 2013-12-01 22:21:38 -08:00
CovertJaguar
c802c45c93 Random Pipe API musings 2013-12-01 22:15:03 -08:00
CovertJaguar
cc0298ce5b Clean up Recipe API 2013-12-01 21:57:31 -08:00
ElConquistador
3776286e2e Combustion Engine also now uses the colorRenderCache 2013-12-01 19:48:08 +01:00
ElConquistador
fb52387094 Added colorRenderCache to Tank and Refinery 2013-12-01 08:18:19 +01:00
ElConquistador
4a0d2d2478 Merge remote-tracking branch 'upstream/master' 2013-12-01 07:40:08 +01:00
CovertJaguar
b9b2f1a238 Add some API failsafes 2013-11-30 14:08:38 -08:00
CovertJaguar
1f65388c80 Another perf tweak 2013-11-30 13:57:25 -08:00
ElConquistador
5aab6ecf88 Merge remote-tracking branch 'upstream/master' 2013-11-30 18:20:03 +01:00
CovertJaguar
0dd0c6c885 Various minor performance tweaks 2013-11-30 08:49:10 -08:00
ElConquistador
6c770a90a1 Added a fluid color render cache so fluids that use colors will get properly renderered in pipes 2013-11-30 17:14:43 +01:00
SandGrainOne
ae67ae3a2c Corrected method names in gold and void pipe. 2013-11-30 13:41:49 +01:00
CovertJaguar
5dd82d7a95 Don't render fluid in disconnected pipes 2013-11-29 19:32:45 -08:00
CovertJaguar
0cbc63e919 Version 4.2.0 2013-11-29 17:08:49 -08:00
ganymedes01
17e7cb9a11 Fix for Gates with ItemStacks with NBT data
Closes #1344
2013-11-29 06:56:52 -08:00
CovertJaguar
8fb3197276 Allow placement of Facades over Plugs 2013-11-29 06:50:07 -08:00
taelnia
3c51073653 Add call to onInventoryChanged to extraction pipes 2013-11-29 06:50:06 -08:00
CovertJaguar
38a6c81ab3 Pipe Block shouldn't appear in creative 2013-11-27 06:21:53 -08:00
CovertJaguar
ff227f9de9 Fix texture fighting on tank bottom 2013-11-27 06:21:52 -08:00
Yopu
25ee549253 Added quartz gates and chipsets.
Quartz gates act like gold gates with 2 exceptions:
They can connect to all pipe wire types.
There are 3 additional gate triggers that function as timers.

The timers have a short, medium, and long mode which can be set via config.
2013-11-25 20:29:36 -05:00
CovertJaguar
d9980fe99c Merge pull request #1336 from viliml/patch-1
Add possible simpler way to send IMC facade requests
2013-11-25 17:26:39 -08:00
CovertJaguar
6b8ec69b37 Store owner information in the Tile 2013-11-25 12:44:01 -08:00
CovertJaguar
5c10517acb Merge branch 'emzuli' 2013-11-25 12:27:32 -08:00
CovertJaguar
1b2f2ae730 Merge branch 'master' of https://github.com/BuildCraft/BuildCraft 2013-11-25 12:27:23 -08:00
viliml
1e24cf4d85 Add possible simpler way to send IMC facade requests
IMC has a built-in way of sending ItemStacks through it, and it would be simpler if mods could simply use that, instead of encoding the ID and metadata a string. Decoding is a lot simpler too, just one line.
2013-11-25 21:12:14 +01:00
CovertJaguar
65bff981e5 Fix block placement sync
Closes #1334
Closes #1335
2013-11-25 05:59:05 -08:00
CovertJaguar
52ce3ac8c3 Fix full inv item bounce client animation 2013-11-24 07:09:01 -08:00
CovertJaguar
0f63603bd6 Rework Diazuli Pipe routing to handle overflow 2013-11-24 06:50:23 -08:00
CovertJaguar
023a5d51fb Some cleanup 2013-11-24 06:31:40 -08:00
CovertJaguar
6f57b4a80d Logemerald->Emzuli Rework + PipeEvents
Modified Logemerald:
-Added ability to paint items as they are extracted
-Renamed to Emzuli, texture and recipe changed accordingly

PipeEvents:
-Added PipeEvents a replacement for Hook interfaces, precursor to 1.7
Pipe API
-Implement methods with signature "eventHandler(PipeEventClass event)"
to receive events

Widgets:
-General improvements for use as a button
2013-11-24 06:23:37 -08:00
CovertJaguar
14dc0014c9 Prevent NPE in Coolant API 2013-11-23 23:23:38 -08:00
CovertJaguar
5d5d5a2706 Merge branch 'SandGrainOne-master' 2013-11-23 12:25:57 -08:00
CovertJaguar
25d411ce1a Merge Filler into Master 2013-11-23 12:25:15 -08:00
CovertJaguar
b5fc98ad2c Merge branch 'master' of git://github.com/SandGrainOne/BuildCraft into SandGrainOne-master 2013-11-23 11:49:39 -08:00
Taelnia
71ebc1fb69 Fix for creative mode pick block on gates for re-loaded worlds.
Also fixes Highlight Overlays such as NEI and Waila
2013-11-23 02:21:40 -05:00
CovertJaguar
5971a75e42 Allow Draining of Fuel in Iron Engine 2013-11-22 15:18:43 -08:00
SandGrainOne
ec4ed4df99 Adding Logemerald pipe
This is an action sensitive extraction pipe. The pipe can be configured
with 4 different items and actions will decide which one to extract from
the connected inventory.
2013-11-21 20:57:18 +01:00
CovertJaguar
7ee48c9cbd Fix Fluid Localization 2013-11-20 20:32:11 -08:00
CovertJaguar
b89e5718db Merge branch 'master' into filler 2013-11-20 20:21:54 -08:00
CovertJaguar
e7c5090e1e Pumps can now be disabled with redstone 2013-11-20 20:13:38 -08:00
CovertJaguar
9d4b1b9782 Move ILaserTarget to the power API 2013-11-20 17:27:28 -08:00
DemoXin
9631ef5de6 * BlockUtil.getItemStackFromBlock() now properly posts HarvestDropsEvent and loads its results for compatibility.
* BlockUtil.breakBlock() now utilizes BlockUtil.getItemStackFromBlock() to get its drop list.
2013-11-19 21:02:30 -05:00
CovertJaguar
d870fcb182 Fix Emerald Pipe Button Tooltip
Closes #1322
2013-11-19 06:11:20 -08:00
CovertJaguar
f1bec62b90 Rewrite previous Assembly Table commit
Yeah...there were better ways to do that...
2013-11-19 05:26:30 -08:00
CovertJaguar
0f5a47f31f Fairly Major Filler Rework
Changes:
-The "crafting grid" is gone.
-API completely reworked
-Patterns can be "stateful", this could bring major improvements to the
scanning algorithms if utilized
-You can change the pattern via Gate Actions
-Various peripherally related GUI framework changes
2013-11-19 03:54:37 -08:00
Taelnia
26572907bc Changes to AssemblyRecipe to support OreDict
- Moved AssemblyRecipes to Init phase in BuildCraftTransport so that the

OreDictionary is completed by then
- Added new AssemblyRecipe constructor that can take ore tag strings
paired with a desired stack size
- Changed pipe wires over to new constructor
2013-11-16 20:19:54 -05:00
CovertJaguar
b37f33c104 Merge pull request #1320 from taelnia/IronPipeFacingFix
Prevent Iron Pipes from switching to plugged output
2013-11-16 16:22:58 -08:00
taelnia
372941c32f simplify code for iron pipe facing check 2013-11-16 11:23:37 -05:00
CovertJaguar
05fedb059e Buff Oil Spring output
It should now produce 4x time amount of Oil, resulting in the same
energy output from before the Oil nerf.
2013-11-15 21:20:46 -08:00
taelnia
91e5648903 Prevent Iron Pipes from switching to a plugged side 2013-11-15 22:32:30 -05:00
Taelnia
e825066fd0 Revert "Add Ore Dictionary support for Assembly Recipes"
This reverts commit 3d1815595b.
2013-11-15 22:27:30 -05:00
taelnia
3d1815595b Add Ore Dictionary support for Assembly Recipes 2013-11-15 21:07:15 -05:00
CovertJaguar
696c206792 Register all items with FML so they survive 1.7 2013-11-13 17:23:41 -08:00
Scott M. Barbour
7073a10fc5 CraftingHelper - Properly name the variables 2013-11-13 10:37:24 -06:00
CovertJaguar
1e00cf012b Possible fix for Pipe placement sync issue
Theoretically this should send an update on placement to all watching
players so everyone can see the pipe.
2013-11-05 16:28:21 -08:00
bdew
9a8f9606cf Workaround for scala compiler derp 2013-11-02 11:25:22 +02:00
CovertJaguar
643545b271 Split API into individual sections
Yes, I know this fails.  Don't use it. It needs to be fixed on FML's
side.
2013-10-30 23:16:03 -07:00
Christian
0aad0c785b Add in API markers for all the BC API packages. They come under the umbrella "BuildCraftAPI", expect warnings from now on if you don't include these in your BC dependent mods. 2013-10-30 23:09:35 -04:00
taelnia
17ff442867 Adjusted FluidContainerTrigger to pass through the side being checked 2013-10-30 15:54:31 -04:00
CovertJaguar
7f73cc2691 Clean up Gate GUIs a bit
Size them appropriately and align the slots properly.
2013-10-29 03:08:22 -07:00
CovertJaguar
6969d43d4b Tweak Engines a bit to restore some old behavior 2013-10-28 16:35:00 -07:00
CovertJaguar
206f2fe712 Do it right this time 2013-10-27 08:19:59 -07:00
CovertJaguar
a5de67f4f0 Allow regex version matching in version file 2013-10-27 08:16:03 -07:00
CovertJaguar
bfbd2ef55d Clean plug matrix after rerender
Should fix constant chunk refreshes.
2013-10-27 07:07:55 -07:00
Player
36da365ccb pipes: improve render performance 2013-10-27 12:14:14 +01:00
CovertJaguar
bdf93e12ba Register chipset stacks with FML for good measure 2013-10-26 03:14:23 -07:00
CovertJaguar
9074f10c1d Register chipsets with FML 2013-10-26 03:03:19 -07:00
CovertJaguar
d7739cc8cb Triggers can now require a parameter..
...and will not be show on gates that don't support parameters.

Also moved logger to own class and added a API error function.
2013-10-25 18:11:10 -07:00
CovertJaguar
4bdf0f22d5 Buffer Triggers now apply to all Inventories
Also adjusted inventory triggers to account for whether an item can be
put in a slot when calculating if there is space in the inventory.
2013-10-24 18:31:42 -07:00
CovertJaguar
f593cf7a20 Version 4.1.1 2013-10-23 21:57:26 -07:00
CovertJaguar
12552b3b04 Increase Gate respond time 2013-10-23 13:30:15 -07:00
CovertJaguar
c16a0266e8 Allow Facades and Plugs to be placed over Gates 2013-10-23 13:21:24 -07:00
CovertJaguar
8166cb0bd8 Fix slot click issue with Phantom Slots 2013-10-22 21:44:43 -07:00
CovertJaguar
ce2efe13bb Remove some dead code 2013-10-20 11:50:40 -07:00
CovertJaguar
aa67b6dd5a More Facade Rendering tweaks
No, this does not fix #1287, sorry.
2013-10-20 11:49:38 -07:00
CovertJaguar
93f9dceb90 Improve Facade Rendering + Interaction 2013-10-20 00:37:04 -07:00
CovertJaguar
d6e0277b7d Wood Item Pipes shouldn't never explode themselves 2013-10-20 00:37:03 -07:00
CovertJaguar
4d845eb5c5 Merge branch 'master' of https://github.com/BuildCraft/BuildCraft 2013-10-19 04:23:26 -07:00
CovertJaguar
29e5657b0a Fix pumplist case confusion 2013-10-19 04:22:50 -07:00
CovertJaguar
1e224ba4ef Add some commented out debug statements to PowerHandlers 2013-10-15 16:40:09 -07:00
CovertJaguar
4a9eb69b91 Attempt to make pickBlock supports Gate/Plugs
Whether a Gate is an Autoarchic Gate or not is not sync to the client unfortunately.
2013-10-15 16:38:30 -07:00
CovertJaguar
6fdbd8c525 Move Facades to own tab 2013-10-15 16:37:17 -07:00
CovertJaguar
e4cad84af6 Fix Gate removal 2013-10-15 14:33:11 -07:00
CovertJaguar
8e92d0494c Fuel/Oil should explode when placed in the nether 2013-10-15 10:41:04 -07:00
CovertJaguar
3438566406 Fix marker rendering 2013-10-15 10:09:23 -07:00
CovertJaguar
8b2093b7ea Fix painted Item rendering 2013-10-15 09:53:20 -07:00
CovertJaguar
068066d9bd Allows bouncing on Diazuli Pipe 2013-10-15 09:15:28 -07:00
CovertJaguar
4ee2d8bd07 Remove depreciated addCreativeItems() function 2013-10-14 12:33:26 -07:00
CovertJaguar
e4af7d00f6 Cleanup last commit 2013-10-13 08:22:31 -07:00
Eragonn1490
bab1e30d6c Added Gears to Ore Dictionary
Added Imports for OreDictionary
Added all the gears to the OreDictionary
2013-10-13 00:49:37 -04:00
CovertJaguar
ef2eace03c Add Tank tiles 2013-10-12 17:13:40 -07:00
CovertJaguar
99fca02856 Fix Pipe Raytracing + Improve Pipe interactions
Closes #1246

Its now much easier and more consistent to remove specific addons from a
pipe. Sneak-click with a gate to remove a gate, sneak-click with a
Yellow Wire to remove a Yellow Wire, etc...

Plugs can now be placed easily and simply on any side of the pipe in any
configuration.

Selection Box now highlights the part of the pipe you are pointing at.
2013-10-11 19:16:57 -07:00
CovertJaguar
9cb53f9405 Fix NPE in ACT
Closes #1270
2013-10-11 06:06:11 -07:00
CovertJaguar
54b2e5de88 Revert "Fixed missing import"
This reverts commit 62f2ac032c.
2013-10-11 06:02:57 -07:00
CovertJaguar
eb0f10e098 Merge branch 'master' of https://github.com/BuildCraft/BuildCraft 2013-10-11 06:02:45 -07:00
CovertJaguar
7daea136ea Revert "Fix Forge ore dictionary support for the Assembly Table"
This reverts commit 11c96949ec.
2013-10-11 06:02:22 -07:00
Matthew Prenger
62f2ac032c Fixed missing import 2013-10-10 18:48:32 -05:00
CovertJaguar
16a6d768db Revert "Bugfix for non-world liquids"
This reverts commit 16a577e1eb.
2013-10-10 03:45:00 -07:00
Reika
16a577e1eb Bugfix for non-world liquids 2013-10-10 00:37:31 -04:00
viliml
11c96949ec Fix Forge ore dictionary support for the Assembly Table
Fixes https://github.com/BuildCraft/BuildCraft/issues/531 .
Don't worry, I checked it and it has no errors and works as intended :D
2013-10-09 19:19:39 +02:00
CovertJaguar
3a39b289a2 Moved Pipe Gate/Wire rendering to the TESR
Should greatly improve performance of wire/gate switching.
2013-10-08 11:13:40 -07:00
CovertJaguar
fb0ee91183 Fix issues with Wooden Engine
Closes #1253
2013-10-08 11:02:14 -07:00
CovertJaguar
0a004e4383 Add configs for fuel values 2013-10-07 09:14:51 -07:00
Player
2a38a58fbb energy: nerf oil and fuel from 60k/600k to 15k/150k MJ/bucket. The power (3/6 MJ/t) is unchanged.
This change reduces the mismatch between the liquid and solid fuel energy value.
2013-10-07 17:01:50 +02:00
CovertJaguar
6eb39da66f Prevent Spring block updates on chunk gen 2013-10-06 15:26:35 -07:00
CovertJaguar
7bbb853aae Expand PowerHandler Javadocs some more 2013-10-05 07:46:47 -07:00
CovertJaguar
782002b458 Fix some texture fighting on Kinesis Pipes 2013-10-05 07:24:54 -07:00
CovertJaguar
f76c684162 Closes #1250
Don't know how it happened, but whatever.
2013-10-05 06:19:54 -07:00
CovertJaguar
de8da4c008 Some minor cleanup 2013-10-05 06:18:01 -07:00
CovertJaguar
b6cb556274 Fix version check 2013-09-27 22:13:26 -07:00
CovertJaguar
1a639f7afb Remove some unneeded imports 2013-09-27 22:13:25 -07:00
Christian
f35ea290e5 Fix single pulse : account for the baked in energy loss.. 2013-09-26 00:01:12 -04:00
CovertJaguar
68b5c5267d Added Iron Kinesis Pipe
The Iron Kinesis Pipe allows you select its throughput limiter via
Wrench or Gate Action.

The possible values are: 2, 4, 8, 16, 32 , 64, and 128 MJ/t
2013-09-25 18:16:59 -07:00