Commit Graph

214 Commits

Author SHA1 Message Date
shartte 5b3c4aef79 When blocks adjacent to multiblock-capable blocks are updated, (#4474)
do not always recalculate existing multiblocks. Only do so,
if the adjacent block is either part of the multiblock's bounding
box, or if the adjacent block would be a valid part of the multiblock.
2020-07-18 18:18:24 +02:00
yueh 4a289470e2 Added a priority to IAEPowerStorage (#4473)
Added a priority to IAEPowerStorage
2020-07-18 18:06:05 +02:00
shartte d79c0f642c Do not allow recursive creation of multiblocks. (#4472) 2020-07-18 18:00:40 +02:00
yueh 9bb23bcac8 Refactored crafting patterns (#4458)
* Deduplicate crafting patterns internals

This should save a bit memory for duplicate patterns as well as speed up
loading new patterns on reloading chunks.

* Encode recipe id in pattern
* Use the recipe id directly for looking it up
* Slightly refactored how patterns encode whether they are crafting patterns or not.
* Renamed PatternHelper.
* Added APIs to encode patterns. (#4463)
* Removed ICraftingPatternItem.
* Renamed isCrafting to isCraftable

Co-authored-by: shartte <shartte@users.noreply.github.com>
2020-07-12 16:21:30 +02:00
yueh 0d43ca15be Removed AEApi
Moved all internal access to the internal `Api` class using a new static
getter.
2020-07-11 19:40:34 +02:00
yueh d9d491d51c Removed deprecated API parts (#4457) 2020-07-10 19:35:29 +02:00
Sebastian Hartte 8d8d3dd2d7 Minor refactoring.
Replaced use of reflection with use of functional factory interface (API change).
2020-06-30 18:58:30 +02:00
Sebastian Hartte d17f8cec92 Removed unused fields. 2020-06-30 18:39:34 +02:00
Sebastian Hartte d0acc9ccf1 Removed reliance of TickTracker on implementation detail to generate additional crash information. 2020-06-30 18:34:36 +02:00
yueh 55d7ac82e5 Removed no channels pathing.
Also use default values for features without a config option
2020-06-28 19:19:05 +02:00
yueh cb62d3a706 Refactored how cell state is exposed (#4422)
Replaced fuzzy ints with a well defined enum
Moved API related cell interfaces to a new subpackage
Introduced a new client helper method to register a cell texture for a storage channel
Added a method to obtain the storage channel for a drive or chest slot
Added a new cell state for cells with stored items but neither types nor completely full
2020-06-22 22:18:41 +02:00
Sebastian Hartte 26bb08ddb5 Post-Rename Formatting Fixes 2020-06-22 13:25:38 +02:00
Sebastian Hartte b4471b1abb The Great Renamening of 2020 2020-06-22 13:21:23 +02:00
Sebastian Hartte 2f8cffdd93 Fix several bugs with fluids (null vs. EMPTY).
Fix IAEFluidStack NBT serialization.
Fix fluid export bus not exporting.
Fix fluid formation planes.
Fix fluid annihilation planes.
2020-06-20 00:45:47 +02:00
yueh 5225ea426b pick 97420a31d The big reformat of 2020 2020-06-16 21:45:35 +02:00
Sebastian Hartte 4759a6d204 Fixed several tooltips (i.e. Encoded Pattern) losing parts of the text due to TextComponent.shallowCopy not keeping attached siblings. 2020-06-16 17:38:10 +02:00
yueh 3cb9695026 Increase network energy buffer to 800 AE 2020-06-14 14:25:30 +02:00
yueh ae69ad6d8a Fixes #4388: Ensure correct ticking priority order (#4410) 2020-06-11 20:21:17 +02:00
yueh 23b6e195ac Revert using internal API 2020-06-07 17:21:20 +02:00
Sebastian Hartte c411a800f6 Work on server data and registries. 2020-06-05 19:03:29 +02:00
Sebastian Hartte d0b8a5f33f Working on Inscriber TESR 2020-06-05 00:58:11 +02:00
Sebastian Hartte c402390282 Compiles again. 2020-06-04 19:58:58 +02:00
Sebastian Hartte 237463dd94 Lots of compile fixes 2020-06-04 03:02:48 +02:00
Eutro 58afa6539f Add data generation. (#4399)
Recipe and other Data Generators
2020-06-02 23:13:49 +02:00
Sebastian Hartte 7747804385 More Container / GUI fixes 2020-06-02 11:40:36 +02:00
covers1624 3f5c299d09 More compile things 2020-06-02 15:12:30 +09:30
Sebastian Hartte d4c9e5c490 More Renames 2020-06-02 02:38:10 +02:00
Sebastian Hartte fc300745cd Container-Stuff 2020-06-02 02:33:05 +02:00
Sebastian Hartte 9f63859769 Work on GUIs (specifically to get SkyChest GUI) 2020-06-02 02:14:09 +02:00
Sebastian Hartte 5cdeff01be Custom Model Loader 2020-06-01 04:02:37 +02:00
Sebastian Hartte ec3b464655 Some additional fixes from other branch. 2020-05-31 16:13:07 +02:00
yueh 16d6d55d7f 1.15 port 2020-05-18 14:02:45 +02:00
yueh 41a4518c5b Fixes #4005: Persist cell after cleanup. (#4009) 2019-04-21 22:30:45 +02:00
yueh a847a01d8a Feature #3832: Made onRequestChange() less ambiguous (#3833) 2018-12-23 22:41:52 +01:00
yueh 7daad58607 Fixes #3742: Do not use storableInStorageCell() to identify generic c… (#3743)
Annotated IStorageCell with Nonnull where appropriate.
2018-09-28 17:38:08 +02:00
yueh fdcba13369 Power off a network in case it losses its local buffer. (#3703)
This better indicates power issue with dynamic consumption like
extracting/inserting items into a network. E.g. the terminals will
shutdown, no light/channel/etc indicators.

Due to the networks trying to extract from the largest possible energy
storage first, the network buffer will be used as last option after
energy cells or controllers.

Potentially needs evaluation in case of adhoc networks with a high
transfer rate locally. Increasing the local buffer might be an idea or
have it scale with the amount of local gridnodes. As long as it does not
invalidates energy cells.
2018-09-02 14:00:15 +02:00
yueh a2091d10fe Code cleanup
Added missing this, annotations, etc.
2018-08-30 20:33:08 +02:00
yueh 66c365d11f Code Formatting 2018-08-30 20:31:27 +02:00
fscan d7e2ae8fcb Fix ConcurrentModificatonException in NetworkEventBus (#3654)
Fixes #3653
2018-08-01 00:20:47 +02:00
fscan c1c7e94cf6 Generic ICellInventoryHandler (#3624)
Allows addons who register a custom IStorageChannel to use the IStorageCell interface without registering a cell handler. Also adds some helpers (poweredInsert/poweredExtract).
This breaks API!
2018-07-22 19:20:47 +02:00
fscan e809c688df Performance improvements for saveChanges() and ICellInventory (#3586)
API break!
Fixes #3553
2018-07-14 16:53:49 +02:00
Brock 7fe7f4b1c2 Fixed unnecessary cell saving when cell is full (#3611) 2018-07-14 16:30:33 +02:00
fscan 7cd8b72bb7 Add fluid level emitter (#3588)
Fixes #3571
2018-07-04 19:56:47 +02:00
fscan 2182b6e37c Add fluid GUI to me chest, fixed some warnings while at it. (#3579)
Fixes #3555
2018-07-04 19:14:34 +02:00
fscan c2d18ce013 Added ME Fluid Interface (#3564)
* Fixed fluid storage bus json recipe
* Added part version and recipes
* Added rudimentary gui
2018-06-27 20:04:30 +02:00
Florian Scandella edc0cef2bb Fixes #3449: Fix CellInventory to not mess with the item definition 2018-06-20 23:13:07 +02:00
Brock d16677224a Initial Fluid Integration (#3510)
* Added Fluid Storage Cells

* Added Fluid Import Bus

* Added Fluid Export Bus

* Added Fluid Storage Bus

* Added Fluid Terminal.
While holding a item with the FLUID_HANDLER_ITEM_CAPABILITY, such as a tank
Left click on a fluid to extract the fluid
Right click to insert the fluid
2018-06-11 19:55:33 +02:00
yueh 2894a7caa0 Replaces all custom number comparisons with java provided ones. (#3434) 2018-05-27 21:33:59 +02:00
yueh 044e639827 Updated Grid API (#3399)
* Updated Grid API

Added Nonull/Nullable/Nonnegative where applicable.
Deprecated unused methods
Changed concrete classes with interfaces (HashMap -> Map)
IGridTickable will no longer accept null as TickingRequest. Do not
implement it, if it should not tick.

* Renamed parameter to match conventions
2018-05-27 21:16:01 +02:00
yueh d7b97fa7b8 Replaced LinkedList with ArrayList or ArrayDeque when applicable. (#3392) 2018-05-27 21:15:50 +02:00