Commit Graph

1533 Commits

Author SHA1 Message Date
Sebastian Hartte 6187e6a7bb Started refactoring number entry dialogs to use shared code. 2020-07-19 20:04:08 +02:00
shartte d5f113eb35 Merge pull request #4484 from AppliedEnergistics/energy-grid-failfast
Guard Against Concurrent EnergyGrid Modifications
2020-07-19 17:56:22 +02:00
shartte 9ad5bb21c0 Merge pull request #4480 from AppliedEnergistics/mb-fixes
Fix more MultiBlock issues
2020-07-19 17:31:06 +02:00
Sebastian Hartte 1c88ea7b78 Fail faster when something modifies the list of energy providers/requesters while an extract/inject operation is ongoing, since this would lead to ConcurrentModificationExceptions later, without a way of tracking down what caused the modification in the first place. 2020-07-19 16:39:37 +02:00
Sebastian Hartte b45669bb82 Removed several unchecked casts. 2020-07-19 16:01:19 +02:00
Sebastian Hartte 749ebeb91d Moved part textures from parts to part to be consistent with singular naming used in Minecraft (and for the model directory). 2020-07-19 14:14:18 +02:00
Sebastian Hartte 71a91e51fb Naming improvements 2020-07-19 13:16:50 +02:00
yueh 223163aa0a Fixes #4330: Avoid mutating the input stack (#4481) 2020-07-19 13:13:20 +02:00
Sebastian Hartte bdd22093c3 Account for empty messages when drawing tooltips. 2020-07-19 12:05:26 +02:00
Sebastian Hartte 0367b35ce0 Never return null from Widget#getMessage since the
narrator will always dereference it, leading to a crash.
2020-07-19 12:04:15 +02:00
yueh 755ac12b8a Fix SortedSet using compare for equals (#4479)
Fix SortedSet using compare for equals
2020-07-19 11:43:20 +02:00
Sebastian Hartte e1f9e01404 Force cluster-rebuilds on the first detected change, if their bounds do not match.
Also use a client-side method to update connected textures
for crafting cubes if two previously distinct clusters are connected.
Refactored MBCalculator to use generics for type checks and remove more casts.
2020-07-19 00:16:33 +02:00
Sebastian Hartte 7121426fc9 Disable AO for the Spatial Pylon due to artifacts. 2020-07-19 00:12:35 +02:00
yueh a94e8504f8 Correctly convert milliseconds to microseconds (#4478) 2020-07-18 20:51:30 +02:00
yueh 9275bfe001 Split TickHandler#onTick into more specific event handlers (#4477) 2020-07-18 19:35:33 +02:00
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
shartte e8b57c6dc5 Multiblocks sometimes can't be broken because during removal, (#4469)
they update their own block-state to display the disconnected
state, effectively reversing their own removal. This occurs
because the cached block state in the tile entity base class is
outdated and doesn't reflect the removal.
2020-07-17 22:35:49 +02:00
shartte 8142eb90a6 Added new Cell Rendering to ME Chest (#4464)
Moved cell models to origin 0,0,0.
Implemented a TER to render cell models/LED in the ME chest as they are rendered in the drive.
2020-07-17 20:37:07 +02:00
Sebastian Hartte 08abd4a770 Fixed formatting. 2020-07-17 20:26:17 +02:00
Sebastian Hartte b8722dbbc0 Do not rely on exceptions for control flow, when the
cell has no fuzzy mode.
2020-07-17 19:51:59 +02:00
Sebastian Hartte 1ac6d5d967 Fixes creation of entangled singularities. 2020-07-17 15:27:03 +02:00
Sebastian Hartte 5c290789e0 Fixes #4467: Private methods also need to be annotated with @OnlyIn(Dist.CLIENT)
if they use client-side classes.
2020-07-17 12:45:17 +02:00
Sebastian Hartte 4953509255 P2P Fluid Tunnel Fix 2020-07-13 17:45:40 +02:00
Sebastian Hartte 188f105730 Fix the alive check for the matter cannon. 2020-07-12 17:20:42 +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 06735f5c39 Rewrite drive model to support custom cell models (#4459)
* Rewrite driver model to support custom cell models

Each cell can now register a mapping Item -> ResourceLocation for a
custom cell model. Fallback will always be a 1k item cell.
2020-07-11 23:07:20 +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 d18eabe1fc Restored the old PluginLoader as AddonLoader
Introduce a new `IAEAddon` interface, which has to be implemented and
annotated wit `@AEAddon` to obtain access to our public API.
2020-07-11 18:40:51 +02:00
yueh d9d491d51c Removed deprecated API parts (#4457) 2020-07-10 19:35:29 +02:00
yueh 1eaddef694 Fixes #4453: Avoid using clientside methods serverside. 2020-07-07 18:13:32 +02:00
yueh 235fc2e81f Removed superfluous IAEStack methods 2020-07-07 12:12:48 +02:00
Sebastian Hartte eb0e4289b3 Unify the client/server-side shared itemstack registry to avoid over-dependence on the current thread
when this class is used. Otherwise if a thread is not correctly detected to be part of the server or client
thread groups, a shared item stack from the wrong domain is returned.
2020-07-05 12:23:16 +02:00
Sebastian Hartte ebbb5b1059 Removed unused storage dimension cap. 2020-07-05 12:22:06 +02:00
yueh d4a1590b51 Added a blocktag for movable tile entities with spatial IO. (#4448)
`#spatial/whitelist` needs to be explicitly enabled through a config
value.
`#spatial/blacklist` will always be consider on top of the normal
blacklist.
2020-07-03 20:34:53 +02:00
Sebastian Hartte b8aa810a5f Add equals(ItemStack) to IAEItemStack contract. 2020-07-03 14:32:48 +02:00
yueh 22facb9748 Don't tick debug energy tileentity clientside 2020-07-03 13:56:22 +02:00
yueh ef3cc8a0a0 Enables replicator card to place multiple instances at once. (#4447) 2020-07-03 13:04:12 +02:00
Sebastian Hartte 55b3dc0823 Removed unused class. 2020-07-02 23:22:40 +02:00
shartte 9445fad5a6 Merge pull request #4446 from AppliedEnergistics/removed-part-type
Part type's gone!
2020-07-02 13:49:46 +02:00
shartte 1a7bac1fcc Merge pull request #4438 from AppliedEnergistics/drive-state-sync
Refactored drive state sync
2020-07-02 12:18:40 +02:00
shartte 19dee8d339 Merge pull request #4443 from AppliedEnergistics/cable-bus-redstone-connections
Refactored CableBus to pass the direction directly.
2020-07-02 12:17:54 +02:00
shartte a4f66c5923 Merge pull request #4444 from AppliedEnergistics/update-mappings
Update MCP mappings
2020-07-02 12:17:21 +02:00
Sebastian Hartte fe439bfb23 Part type's gone! 2020-07-02 12:05:34 +02:00
yueh 25da0b7357 Removed unused code from DriveLedTER 2020-07-02 11:37:59 +02:00
shartte a2344f52e1 Merge pull request #4445 from AppliedEnergistics/materials-rework
Changed AEGlassMaterial to Materials
2020-07-02 10:55:32 +02:00
yueh bafc65d3a8 Changed AEGlassMaterial to Materials
Preparation in case we need more to support custom non solid, non
opaque, or similar blocks.
Removed custom fullSize/opaque blocks in favour of Material
2020-07-02 09:57:47 +02:00
shartte 4e8296d3e7 Merge pull request #4442 from AppliedEnergistics/cleanups
Reduce Importance of PartType and Fix Upgrade Card Tooltip Grouping
2020-07-02 09:41:00 +02:00
Sebastian Hartte 26eeeb4c75 Fix player id logging. 2020-07-02 09:25:38 +02:00