Commit graph

673 commits

Author SHA1 Message Date
NeverCast
7d8efe6296 Liquid Pipes do a full update periodically for client sync
Added config option in BuildCraftCore regarding long update period
Added to core as it may be used for other things in future too
2012-12-15 21:47:42 +13:00
NeverCast
f23ddb476a Liquid Packets should not send before chunks on client join 2012-12-15 21:04:25 +13:00
NeverCast
3dbc451f31 Redudent null check on instanceof 2012-12-15 19:27:31 +13:00
NeverCast
8073fed1d1 Fix some NPEs on TileEngine when it has not be initialized 2012-12-15 17:32:58 +13:00
gishicrafter
93f9c25ba8 Fixed EngineIron fuel acceptance problem. 2012-12-14 20:59:49 +09:00
CovertJaguar
9c0e9205cf Power Pipes now display power stored too
There is now a visual indicator that a pipe will soon explode.
2012-12-14 02:15:26 -08:00
SirSengir
c1089e5e8a Added update notice. Will only display once per update and not annoy the player on each startup. 2012-12-13 20:46:20 +01:00
CovertJaguar
9fbdd4040b Some more minor opts 2012-12-12 23:10:56 -08:00
CovertJaguar
2c888525d6 Minor opt to TileEngine.fill() 2012-12-12 22:51:54 -08:00
CovertJaguar
4773280c5b More Item Pipe opt to net and cpu
PipedItem IDs reduced to Short.MIN - Short.MAX to shave bytes off the
packet size. It could in theory be reduced to a byte and changed to a
per pipe ID, but that would require a larger rewrite.

The packet no longer send the pipe location and instead derives the pipe
location from the item location.

In total, 13 bytes were removed from the item packet size.

Also a number of cpu optimizations were performed, mainly by using more
appropriate collections and cleaning up some simple but often called
functions.
2012-12-12 22:28:22 -08:00
pahimar
4cec777807 ACTs now play the item break sound for all entities nearby them when they break a tool 2012-12-11 14:03:00 -05:00
pahimar
6ff25b24e4 Missed the case where an item could be used up when it reaches its max durability. Also made it throw a PlayerDestroyItemEvent with the Buildcraft user when a damageable item is used up in autocrafting. 2012-12-11 13:06:51 -05:00
pahimar
b0fc220cef Merge remote-tracking branch 'origin/master' 2012-12-11 12:29:06 -05:00
pahimar
2446d7a3d6 Updated ACT to properly handle container itemstacks 2012-12-11 12:28:45 -05:00
CovertJaguar
8478177503 Added Oil/Fuel to Liquid Dictionary 2012-12-10 11:31:07 -08:00
CovertJaguar
9a465cff69 Fixed liquid junction issue
Closes #336
2012-12-09 13:53:31 -08:00
CovertJaguar
5886faecc4 Power pipes shouldn't check connections every tick 2012-12-09 12:28:17 -08:00
CovertJaguar
965112a4d9 ForgeDirection optimizations in the Power pipes 2012-12-09 12:00:27 -08:00
SirSengir
be3ed84657 Imports! 2012-12-09 19:23:08 +01:00
SirSengir
3751149fe0 Fixed incorrect item rendering. Still failing to display correctly since the item stack contained in EntityPassiveItem seems to be missing the NBT data client side. 2012-12-09 17:09:46 +01:00
CovertJaguar
462f7e9226 Power packet optimization
By increasing the number of display stages to 100, I was able to easily
map internal power to display stage by sending a byte representing the
display stage rather that the amount of power in the pipe. This allows
me to reduce the packet size in half by converting from Shorts to Bytes.

Additionally, I created an alternative display list that uses a red
texture to indicate that pipe is nearing maximum capacity.
Unfortunately, this still gives no visual cue that a wooden pipe is
about to explode, becasue for some reason wooden pipes don't render the
power they contain when connected to an engine. This should probably be
rectified in the future.
2012-12-08 16:13:13 -08:00
Octav Sandulescu
ad341592dd Moved default oil block ID to 1520 and 1521 2012-12-07 08:54:57 +02:00
CovertJaguar
f5cd8053e4 Fixed decrStackSize bug on crafting table 2012-12-06 22:25:38 -08:00
CovertJaguar
729b69592e Fixed decrStackSize issue with engines
Closes #485
2012-12-06 10:13:32 -08:00
Christian
d91305cdb2 Refactor the quarry algorithm: it now stores the next few planned blocks, and only searches the direct
column above the target on each target hit. It forces the list to recompute only if it finds a block.

Behaviour is almost identical to before, but should be a lot more efficient in terms of computing resources.
2012-12-06 08:41:49 -05:00
Christian
3b53947381 Fix power provider 2012-12-06 07:46:02 -05:00
CovertJaguar
2d7f4f6a8a Fixed Autarchic Gate exploit
There is no reason for them to power Wooden Conductive Pipes.
2012-12-05 15:09:26 -08:00
CovertJaguar
b4e7451ad1 Moved default IDs to safer ranges 2012-12-05 15:07:37 -08:00
gishicrafter
57d2d78b0f Use liquid block metadata for rendering 2012-12-05 00:05:40 +09:00
aznhe21
e209377ee6 Fixed wire not updating. 2012-12-03 18:51:12 +09:00
CovertJaguar
2c1b0ffda8 Fixed Facade InterModComs
It was adding a zero size stack to the recipe list.

Also cleaned up some formatting.
2012-12-02 19:17:00 -08:00
CovertJaguar
97caa8f3ad Pipe capacity stuff + packet tweaks
Should completely fix addon pipes with different capacities.

Might also fix some issues people are seeing with pipes not renderering,
see #473
2012-12-02 18:47:33 -08:00
den
02caa137ba Fixed RenderPipe crash if pipe has a higher capacity than normal. (needed for Valve Pipe (and more!)'s Industrial Pipes) 2012-12-02 19:31:11 -05:00
NeverCast
c693948c49 Removed Redudent Server side check
Was not aware that it was only called server side so the check wasn't
required.
2012-12-02 14:03:46 +13:00
NeverCast
b0003a082c Gate GUI is now calculated server-side
Gate GUI gets it's state from the server
SuppressWarnings on ItemGate
failonerror for build.xml to prevent packaging bad jars
Gate GUI now uses boolean array for indicators which is updated via
progressBar
2012-12-02 13:47:07 +13:00
SirSengir
475719d2f3 Merge pull request #464 from nevercast/issue-280
Make RenderTank respect Block Metadata
2012-12-01 02:57:11 -08:00
CovertJaguar
198fa9b7ed Added a null check in PipeRender
Catches non-existant liquids, but I expect it will still crash elsewhere
if the liquid doesn't exist.
2012-11-30 15:00:58 -08:00
NeverCast
db37c2fc6c Make RenderTank accept Block Metadata 2012-12-01 10:25:46 +13:00
CovertJaguar
dd279689a8 TileTank - Fix Formatting and fix getTanks()
getTanks() capacity calculatios where ignoring empty tanks in the stack.
2012-11-30 07:19:47 -08:00
CovertJaguar
79fcad34fb Int to Shorts in Item Packet 2012-11-30 06:30:00 -08:00
NeverCast
23b7c933e6 Made pipes slightly harder to break
Configuration option added
Also updated build.xml ( Required, previous forge version didn't have
double support in Configuration )
2012-11-30 21:14:45 +13:00
SirSengir
4b9e56deab Merge pull request #461 from tcooc/patch-9
Fix AdvancedSlot rendering
2012-11-29 14:47:41 -08:00
tcooc
11fbbc0a85 Fix small rendering bug when item is hovering over AdvancedSlot. 2012-11-29 17:19:48 -05:00
CovertJaguar
14e3ed13af Minor fix to last commit
Faulty logic could potentially have resulted in odd results. I didn't
see any when I tested it, but logically it could have happened.
2012-11-29 09:15:33 -08:00
CovertJaguar
f951f6740d Inventory Triggers are now ISided bound
This may break some peoples factories, but in the end it will provide
you with more control.

Does not break the API, but it does add a new interface to the API. At
some point this interface should be merged with ITrigger.
2012-11-29 09:09:40 -08:00
SirSengir
edc62249bf Merge pull request #448 from gishicrafter/patch-2
Fixed some devices that couldn't handle meta sensitive liquids correctly.
2012-11-29 09:03:18 -08:00
psxlover
476a03d998 Change localization to allow mapping inheritance. Now a language like es_AR can use the mappings from a parent language (es_ES) instead of duplicating them, and only specify the ones that are different from the parent.
The child languages only need a field specifying the parent language e.g.:
language.parent=es_ES

Any mappings that are not specified in the file will be inherited from the father language.
2012-11-29 15:45:23 +02:00
SirSengir
ad111637ac Merge branch 'master' of github.com:SirSengir/BuildCraft 2012-11-28 22:17:07 +01:00
SirSengir
e911404459 Fixed pass-through of mouse coordinates for gui tooltips. Closes #449 2012-11-28 22:16:22 +01:00
gishicrafter
f7b77f589c Use LiquidTank
Revert RefineryRecipe
2012-11-29 00:30:45 +09:00
CovertJaguar
8a36fbda50 Replaced ints with shorts in liquid packet 2012-11-27 03:55:20 -08:00
CovertJaguar
4db1a27d4f Liquid Pipes network optimization
Pipes are much smarter about whether they need to send a liquid update
packet, additionally the packets themselves now describe a delta rather
than sending a complete set of information every update.
2012-11-26 09:51:20 -08:00
CovertJaguar
df33b905b8 Engines should have a block name 2012-11-26 05:48:58 -08:00
SirSengir
c531adea0d Merge pull request #446 from nevercast/issue-445
Fixed issue 445
2012-11-26 00:22:27 -08:00
psxlover
bae2be096a Use the correct function in place of updateBlockMetadata. Fixes Laser placement (#450).
Use the correct function in place of updateBlockMetadata. Fixes Laser placement (#450).
2012-11-26 02:06:44 +02:00
gishicrafter
df727f0bd1 Fixed some devices that couldn't handle meta sensitive liquids correctly. 2012-11-25 12:04:04 +09:00
NeverCast
8749de2f19 Fixed issue 445 2012-11-25 13:07:35 +13:00
CovertJaguar
02662975c1 Merge pull request #443 from tcooc/patch-8
Fix trees destroying pipes.
2012-11-24 15:16:00 -08:00
tcooc
369852639e Unnecessary import. 2012-11-24 17:17:08 -05:00
tcooc
560cee32b4 Fix trees destroying pipes. 2012-11-24 17:13:43 -05:00
CovertJaguar
81ab0bcc95 Merge pull request #402 from Runetinal/master
Fix blockActivated not being called on client
2012-11-24 10:21:19 -08:00
Octav Sandulescu
87bddae480 Guard against an NPE in the refinery GUI. 2012-11-24 09:44:21 +02:00
CovertJaguar
ecc3f98024 Reduced the range of Pipe update packets
They are only used for rendering, no need to send them to people who are
beyond the render distance.
2012-11-23 20:50:31 -08:00
CovertJaguar
1817ae6936 Rewrote the Pipe Contents packet
Probably cut the packet length in half, there was a lot of unneeded
bytes.

Also removed the chunkPacket marker. This is not a high priority packet.
2012-11-23 05:54:18 -08:00
AtomicStryker
a787a37fcb Fixed config BlockIDs and ItemIDs to use Forge autoassign
Because there is only like fifteen Forge contributors making this
2012-11-21 12:50:31 +01:00
Christian
ee6d0c801d Test directional tank behaviours for RP2 pipe interaction capability. 2012-11-18 18:00:34 -05:00
SirSengir
eace433066 Removed unneeded imports - set Eclipse to display a warning to remind you. 2012-11-18 22:34:57 +01:00
Runetinal
bae8444528 Use ordinal() instead of values() 2012-11-18 14:46:52 -06:00
CovertJaguar
f5d9bfa6c9 Fixed imports & updated build.xml 2012-11-17 08:04:57 -08:00
CovertJaguar
b1b950cc3e Fixed derp 2012-11-17 02:55:51 -08:00
CovertJaguar
379fa45a46 Adjusted Lifespan of Item drops
Added a config option for the lifespan of items dropped by pipes and
machines.

Its possible I missed some drop code, it seems to be scattered all over
the place.
2012-11-17 02:44:33 -08:00
NeverCast
6bc2ae8e14 Fixed game breaking power bug 2012-11-17 16:19:35 +13:00
Christian
fb1e41f4ba Clean up print statement spam 2012-11-16 21:00:11 -05:00
Christian
dc82c9ace6 It's openContainer, not inventoryContainer. Also fix network update stuff 2012-11-16 20:24:08 -05:00
Christian
42f90b109a Probably render not network updates needed 2012-11-16 18:58:43 -05:00
SirSengir
d79959f11e Merge branch 'master' of github.com:SirSengir/BuildCraft 2012-11-16 23:47:41 +01:00
SirSengir
b10e0822c6 MC 1.4.5 update. (MCP mappings only.) 2012-11-16 23:45:37 +01:00
CovertJaguar
94b60bfad4 Fixed liquid triggers to actually be useful
How filters were handled was completely stupid when more than one tank
was involved.

Evaulation is now done via the fill/drain functions to simulate actually
interacting with the tank.
2012-11-15 22:44:15 -08:00
Christian
3be0523c4d For latest forge 2012-11-15 06:43:55 -05:00
Christian
042067483d Fix refineries running constantly.
Power pipes dissipate stored energy if none is input.
2012-11-14 23:25:09 -05:00
Christian
15bcb22032 Fix for new Liquid API 2012-11-14 23:25:09 -05:00
SirSengir
26173cf35c Fixed accidental edit conflict. 2012-11-14 16:48:59 +01:00
SirSengir
8a6d6b0ffe Merge branch 'master' of github.com:SirSengir/BuildCraft 2012-11-14 16:47:23 +01:00
SirSengir
0fa4fd8bee Removed several unneeded imports/variables. 2012-11-14 16:47:08 +01:00
Christian
9dbd922ada Push for liquid API changes 2012-11-14 10:29:28 -05:00
Christian
98be088256 First draft handling sided tanks 2012-11-12 21:45:31 -05:00
gishicrafter
4a485a0d98 added @override 2012-11-12 06:43:24 +09:00
Runetinal
cc561d8fb1 Fixed gateKind variable 2012-11-11 14:20:47 -06:00
gishicrafter
8466e4458f Made RefineryRecipe sortable 2012-11-11 18:52:30 +09:00
Christian
f6e784422c Fix improper references to client specific classes with new 1.4 methods 2012-11-11 00:21:45 -05:00
Christian
63180af9fd Migrate liquid API to forge 2012-11-10 21:41:22 -05:00
NeverCast
4c6b184ded BUGFIX 406: Placing signs on Facades
Simple fix to get signs showing GUI on Pipes ( And inturn, Facades )
2012-11-10 23:15:18 +13:00
Christian
c1c6ff28c0 Nerf pipe explosion. It shouldn't be destroying other blocks. 2012-11-10 02:00:54 -05:00
Christian
cbc621550d Update to 1.4.4. Remove Orientations-> use ForgeDirection instead
Made the quarry much more scalable
Power pipes now have a risk of exploding if they don't have anywhere to dump their power to
Power pipe needs some work to seize rather than exploding
2012-11-10 01:43:12 -05:00
CovertJaguar
f1d16b975e Added null check to Power pipes. 2012-11-09 11:42:36 -08:00
CovertJaguar
b4a00eeedd Cached Orientation array in power pipes for perf. 2012-11-08 23:05:02 -08:00
CovertJaguar
d267a91e69 Merge pull request #399 from tcooc/patch-7
Override new addInformation method for 1.4.2.
2012-11-08 22:30:04 -08:00
CovertJaguar
7fb3f73d5f Fixed a bug with the Quarry.
It was exposed by the recent change to the softBlocks code.
2012-11-08 21:58:19 -08:00
CovertJaguar
1e5d6e0966 Merge pull request #408 from Deatrathias/master
Using an ItemStack-sensitive version of getContainerItem for consumeItem
2012-11-08 09:45:17 -08:00
CovertJaguar
a4f1e03745 Added isAirBlock() check to softBlocks.
Closes issue #401
2012-11-08 08:33:48 -08:00