Commit Graph

69 Commits

Author SHA1 Message Date
Sebastian Hartte 739277ab64 Removed unused tunnel types and files.
Added more tags, moved ender pearl dust to convention tag.
Added compatibility with TechReborn's chargers.
2020-08-17 19:00:32 +02:00
Sebastian Hartte cf656e1540 Added initial TechReborn compatibility to the EnergyAcceptor. 2020-08-16 18:14:57 +02:00
Sebastian Hartte 6c544f2211 Reformatted, and ported back some enhancements from the Forge version. 2020-08-15 02:51:03 +02:00
Sebastian Hartte 780f68952b Added spotless back and reformatted 2020-07-27 20:07:27 +02:00
Sebastian Hartte 5982f094ec ME Chest 2020-07-02 22:34:21 +02:00
Sebastian Hartte 2642ced86b Moving to source sets 2020-07-01 23:36:51 +02:00
Sebastian Hartte f2e3d81fd7 Working in part placement 2020-07-01 21:27:37 +02:00
Sebastian Hartte b79cd732b2 Fabric port in progress 2020-06-27 23:25:38 +02:00
Sebastian Hartte 80fbb58d4f API compiles 2020-06-27 18:09:44 +02:00
Sebastian Hartte ba71a82288 Migrations 2020-06-27 16:18:20 +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
yueh fe215f0a91 Code Cleanup 2020-06-19 16:09:06 +02:00
yueh 5225ea426b pick 97420a31d The big reformat of 2020 2020-06-16 21:45:35 +02:00
Sebastian Hartte 237463dd94 Lots of compile fixes 2020-06-04 03:02:48 +02:00
Sebastian Hartte 077ff17078 More stuff ingame and showing up. 2020-06-01 01:01:32 +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 a2091d10fe Code cleanup
Added missing this, annotations, etc.
2018-08-30 20:33:08 +02:00
fscan 548af3c6cc Use standard inheritance to propagage NBT events (#3058)
* Remove the old annotation system
* Use TileEntity#onLoad instead of onChunkLoad event
* Do not call invalidate in onChunkUnload and validate in onLoad
2017-08-28 09:34:09 +02:00
yueh 1513ba3f6a Performance improvements for the energygrid (#3051)
* Performance improvements for the energygrid

Reworked the old recursive approach to a queue based loop.
Extract will try to prefer the next grid with the hightest amount of
stored energy.
Inject will try to prefer the grid with the lowest percentage stored.
Other operations are first come, first serve.

* Added a local buffer storage to EnergyGrid

This replaces the old not really working buffer with a special
IAEPowerStorage acting as buffer/proxy for the local energy demand as
well as temporary overflow should something provide more energy than
requested.

Currently it set to hold a maximum of 200 AE (+ optional overflow until
consumed). It will only be used locally, no other grid can use it to
avoid starving the neighbor grids before finding a energy cell.

* Fixes IExternalPowerSink

All implementations currently depend on the network demand being a valid
source, which might not be true.

Further it can cause the sink to iterate the network twice (demand and
inject) and both again for simulate and modulate.

Also it did not return the actual leftover amount instead of relying on
the demand matching it.

* Minor fixes related to removing nodes from a grid.

The grid did remove IStackWatcherHost not IEnergyWatcherHost, this was
fine for AE2 as only level emitters use it and they implement both.
But not for potential addons.

Also they would potentually not being removed as the are indexed by the
gridnodes not the machine.

Fixes #1004
2017-08-24 11:06:31 +02:00
yueh c4fa21c193 Removes coremod (#3038)
From now on every integration must not rely on method stripping through
a coremod or @Optional. Notable example for a very good solution is IC2.

As consequence this drops all support for RF and mods must support on of
our supported energy types. At the time of writing, ForgeEnergy and
IC2/EU.
2017-08-17 21:16:57 +02:00
fscan 52d28fabe3 Use IItemHandler instead of IInventory internally (#2971)
* Use IItemHandler instead of IInventory internally
2017-07-28 22:04:32 +02:00
yueh a4c468b9cf Updated caps to be manually disabled via config
Moved the cap injection to a method, allows them to be configurable.
This is not possible for Forge Energy as it is injected before even the
configuration are lodaed, thus violating their own capability contract
to use the method injection to explicitly make it configurable.

Updated the ratio key for forge energy to "ForgeEnergy" without a space
2017-07-22 13:29:14 +02:00
yueh 15582fd1df Always use qualified access for fields and methods 2017-07-20 21:27:22 +02:00
yueh 621910df91 Format sourcecode 2017-07-20 21:17:10 +02:00
Gunther De Wachter 588579d67f Updated CoFH RF API. Removed the old API from thirdparty/.
Those files are available from their maven server now.
2017-07-09 10:34:34 +02:00
yueh 1cde7bc933 Changed to Null ItemStack instead of null. 2016-12-21 20:38:37 +01:00
yueh a14cf2204d Fixes anchor rendering (#2698)
* Fixes #2680: Use a shorter cable anchor model when blocked by a facade.
* Fixes #2664: Prevent anchors from creating intersection.

Replaced the simple List<ResourceLocation> for the static models with a
new container also indicating a solid part, which can be used to prevent
the creation of an intersection.
2016-12-14 22:37:10 +01:00
yueh 887339f7b8 Removed ASMTweaker and replaced it with AT. (#2636)
Added appeng_at.cfg and updated build.gradle to correctly include the AT when building.
Deleted the now useless ASMTweaker.
Moved the coremod from package transformer to coremod as a better matching name.
Updated the old 1.7.10 code using reflection to drop it where forge or vanilla now exposes that functionality directly.
2016-11-26 14:08:10 +01:00
Sebastian Hartte 6df311c11a AE now accepts power via the legacy RF API (i.e. from Immersive Engineering). 2016-11-06 23:02:22 +01:00
shartte 0e7981d717 Cleaning Up Mod Integrations (#2581)
* Cleaned up unused Mod integrations other than for mods that are likely to be integrated soon.
* Introduced an easier Facade class to access mod integration abstractions (called Integrations).
* Removed the link between IntegrationType and integration abstraction. Integrations are now explicitly instantiated inside of IntegrationNode.
2016-11-06 20:23:14 +01:00
Sebastian Hartte 53c32cc296 #2527: Implements charging of tools via RF (Forge Energy) and Tesla. Tested with Tesla Essentials and EnderIO. 2016-10-30 02:38:20 +02:00
Sebastian Hartte 6e6e51dc20 Separated TileEntity and External Power Sink arguments to IC2 to emphasize that they don't necessarily need to be the same, and that a tile entity is required for IC2. 2016-10-28 22:58:19 +02:00
Sebastian Hartte 344958aefb Added IC2 integration. 2016-10-28 22:58:19 +02:00
Sebastian Hartte ec4bc86266 #2438: Added Tesla support with same conversion ratio as RF. 2016-10-20 00:13:45 +02:00
Sebastian Hartte a72c97e666 #2438: Implemented forge energy capabilities. Removed other disabled energy units for the time being. 2016-10-19 20:57:59 +02:00
yueh 99215e1701 Organized imports 2015-12-24 02:07:03 +01:00
yueh c9e8a6e939 Formatted code 2015-12-24 02:03:16 +01:00
yueh e94a0cfccf Reduces visibility of internal fields/methods
Reduces the visibility of all fields to private and create setters/getters
when necessary. Exceptions are fields with GuiSync as these need to be
public.

Reduces the visibility of internal methods to private/protected/default when possible.
2015-12-24 01:59:13 +01:00
thatsIch 8b3a954f73 final variables and parameters 2015-09-30 14:24:44 +02:00
yueh 0d25b76b77 First iteration of making integrations typesafe 2015-09-30 13:51:47 +02:00
thatsIch a95b9962b9 make it runnable 2015-06-17 19:39:18 +02:00
AlgorithmX2 38afde724b Most of the 1.8 Port. 2015-06-15 19:44:59 -05:00
Jeremiah Winsley 020740bf43 Fixes #1384 - implement AdvancedShaftPowerReceiver for RotaryCraft powersink 2015-05-18 14:38:38 -04:00
thatsIch 192848e383 Uses an instance factory access for AE2
Removes the improper way to set itself into a public static non-final variable.
Removes the direct access to the IntegrationRegistry from AppEng. Will be added at some later point somewhere else for non-singleton access.
Constructor is set to package private to enable possible construction from unit tests. Are current not runnable sind it is currently tied to the FML Loader instance.
2015-05-16 20:48:32 +02:00
thatsIch f193c2adc4 Replaces all method parameter regarding their naming conventions 2015-05-08 23:25:19 +02:00
thatsIch 64ed05a1b4 Puts everywhere brackets 2015-04-29 18:38:24 +02:00
yueh eaf57bedf6 Modifier are now using a consistent order based on the java conventions 2015-04-06 00:35:42 +02:00
thatsIch d34c988c88 Basic reformat, hit once, hope never again 2015-04-03 15:07:13 +02:00