Commit Graph

353 Commits

Author SHA1 Message Date
Sebastian Hartte 6c544f2211 Reformatted, and ported back some enhancements from the Forge version. 2020-08-15 02:51:03 +02:00
Sebastian Hartte ff0d38d56a Merge fixes 2020-08-11 01:36:51 +02:00
shartte d1ba26311b One Spatial Dimension (#4570)
* Ported the "one spatial dimension" concept from pre-1.15

* Apply lighting updates after moving chunks.
Mark world data as dirty when changing it.

* Consolidated naming of spatial storage world/dimension.
Use server light manager to update lighting info in chunk.

* Save last transition information,
and add ae2 spatial command to interact with spatial storage.

* Formatting fixes.

* Improved docs for the origin generation.

Inverted condition on when the x/z axis are flipped.
Also added a helper to map a plot to a region file

* Remove TransitionResult since it's only used in lieu of a boolean.
Rework transition to make the checks BEFORE allocating a new cell.

* Removed unused imports.

Co-authored-by: yueh <yueh@users.noreply.github.com>
2020-08-10 11:29:07 +02:00
shartte fe753c540b Fixes #4571: When not used for displaying localized text, specify Locale.ROOT for toLowerCase/toUpperCase to avoid issues with locale-specific non-ASCII lowercase conversions for ASCII uppercase characters (i.e. turkish lowercase i for uppercase I). (#4573) 2020-08-08 14:56:51 +02:00
Sebastian Hartte 414b01bddb Merge branch 'master' into fabric/master
# Conflicts:
#	src/main/java/appeng/block/storage/SkyChestBlock.java
#	src/main/java/appeng/client/render/tesr/SkyChestTESR.java
#	src/main/java/appeng/core/api/ApiPart.java
#	src/main/java/appeng/core/api/definitions/ApiItems.java
#	src/main/java/appeng/core/sync/packets/PartPlacementPacket.java
#	src/main/java/appeng/parts/PartPlacement.java
#	src/unported/java/appeng/client/ClientHelper.java
#	src/unported/java/appeng/core/CommonHelper.java
#	src/unported/java/appeng/server/ServerHelper.java
2020-08-03 15:15:14 +02:00
shartte 1801302d8f Fix SkyStone chest model issues that I had introduced back in 1.8. (#4542)
This makes the chest 1 pixel higher to restore the look it had in 1.7.
Since the skystone chest's texture is a grungy mess, only the most
obvious texture problems were fixed, while for the skystone block chest,
the look should be close to what it was now.
Also introduces caching for the skystone chest's block shape.
2020-08-03 14:46:23 +02:00
Sebastian Hartte d238f6e8e4 Post-Merge fixes 2020-08-02 22:31:20 +02:00
Sebastian Hartte a97ebaf40d Server can at least begin to launch now. 2020-08-02 15:45:59 +02:00
Sebastian Hartte 5fca946ef3 The lambda has to be replaced with an explicit method to annotate it with @OnlyIn. 2020-08-02 15:45:15 +02:00
Sebastian Hartte 80375c436d Merge remote-tracking branch 'origin/master' into fabric/master
# Conflicts:
#	src/main/java/appeng/core/api/definitions/ApiBlocks.java
2020-08-02 15:41:50 +02:00
Sebastian Hartte f8446209ce Move CraftingMonitor rendering customization out to its own class to circumvent issues with a client-side only lambda method being generated in a common-side class. 2020-08-02 15:40:50 +02:00
Sebastian Hartte 9ce4a65203 Merge remote-tracking branch 'origin/master' into fabric/master
# Conflicts:
#	src/main/java/appeng/block/misc/ChargerBlock.java
#	src/main/java/appeng/core/api/definitions/ApiBlocks.java
2020-08-02 15:15:39 +02:00
Sebastian Hartte 088627aedf Remove client-only methods from ChargerBlock which could potentially create synthetic lambda methods that reference client-only classes (and are not stripped). 2020-08-02 15:13:20 +02:00
Sebastian Hartte 2655620fd0 Merge remote-tracking branch 'origin/master' into fabric-1.16
# Conflicts:
#	src/api/java/appeng/api/parts/IPart.java
#	src/main/java/appeng/block/AEBaseBlockItemChargeable.java
#	src/main/java/appeng/block/qnb/QnbFormedModel.java
#	src/main/java/appeng/bootstrap/BlockDefinitionBuilder.java
#	src/main/java/appeng/bootstrap/ItemDefinitionBuilder.java
#	src/main/java/appeng/client/render/BakedModelUnwrapper.java
#	src/main/java/appeng/client/render/BasicUnbakedModel.java
#	src/main/java/appeng/client/render/FacadeItemModel.java
#	src/main/java/appeng/client/render/cablebus/CableBusModel.java
#	src/main/java/appeng/client/render/cablebus/P2PTunnelFrequencyModel.java
#	src/main/java/appeng/client/render/crafting/CraftingCubeModel.java
#	src/main/java/appeng/client/render/model/AutoRotatingBakedModel.java
#	src/main/java/appeng/client/render/model/BiometricCardModel.java
#	src/main/java/appeng/client/render/model/ColorApplicatorModel.java
#	src/main/java/appeng/client/render/model/DriveBakedModel.java
#	src/main/java/appeng/client/render/model/DriveModel.java
#	src/main/java/appeng/client/render/model/GlassModel.java
#	src/main/java/appeng/client/render/model/MemoryCardModel.java
#	src/main/java/appeng/client/render/model/SkyCompassModel.java
#	src/main/java/appeng/client/render/spatial/SpatialPylonModel.java
#	src/main/java/appeng/client/render/tesr/ChestTileEntityRenderer.java
#	src/main/java/appeng/core/AERecipeType.java
#	src/main/java/appeng/core/AppEng.java
#	src/main/java/appeng/core/Registration.java
#	src/main/java/appeng/core/api/client/ApiCellModelRegistry.java
#	src/main/java/appeng/core/api/definitions/ApiItems.java
#	src/main/java/appeng/fluids/helper/DualityFluidInterface.java
#	src/main/java/appeng/items/misc/CrystalSeedItem.java
#	src/main/java/appeng/items/tools/powered/ColorApplicatorItem.java
#	src/main/java/appeng/parts/automation/PlaneModel.java
#	src/main/java/appeng/recipes/handlers/GrinderRecipe.java
#	src/main/java/appeng/recipes/handlers/GrinderRecipeSerializer.java
#	src/main/java/appeng/recipes/handlers/InscriberRecipe.java
#	src/main/java/appeng/recipes/handlers/InscriberRecipeSerializer.java
#	src/main/java/appeng/spatial/SpatialDimensionManager.java
#	src/main/java/appeng/tile/networking/CableBusBlockEntity.java
#	src/main/java/appeng/tile/storage/SkyChestBlockEntity.java
2020-08-02 14:37:29 +02:00
shartte c8d08f9726 Fixes sidedness issues that cropped up with 1.16 (#4533) 2020-08-01 22:16:57 +02:00
Sebastian Hartte 1b31185cdb Ported to 1.16.2-pre 2020-08-01 17:14:12 +02:00
Sebastian Hartte 98e9faa262 Ported model dependency changes from Fabric 1.16.
Made IChestLid sided.
2020-07-30 22:08:19 +02:00
yueh b3b7547325 Updated mappings to 20200723-1.16.1 (#4514)
* Limit to 1 gradle worker
2020-07-28 18:33:28 +02:00
yueh 0beab559a6 Fix formatting 2020-07-28 11:44:57 +02:00
yueh a65be62cd1 Organize and clean imports 2020-07-28 10:29:57 +02:00
Sebastian Hartte 84e6aaa122 Compiles again. 2020-07-27 23:50:28 +02:00
Sebastian Hartte 780f68952b Added spotless back and reformatted 2020-07-27 20:07:27 +02:00
yueh 56ecda5173 1.16 port 2020-07-27 11:21:50 +02:00
Sebastian Hartte 9fcfbf31be Lots of fixes 2020-07-23 02:38:32 +02:00
Sebastian Hartte 1933b4b10d Merge remote-tracking branch 'origin/master' into fabric-1.16
# Conflicts:
#	src/main/java/appeng/block/crafting/AbstractCraftingUnitBlock.java
#	src/main/java/appeng/block/qnb/QnbFormedBakedModel.java
#	src/main/java/appeng/client/gui/AEBaseScreen.java
#	src/main/java/appeng/client/gui/implementations/CraftAmountScreen.java
#	src/main/java/appeng/client/gui/implementations/LevelEmitterScreen.java
#	src/main/java/appeng/client/gui/implementations/PriorityScreen.java
#	src/main/java/appeng/client/gui/widgets/NumberBox.java
#	src/main/java/appeng/client/render/cablebus/P2PTunnelFrequencyModel.java
#	src/main/java/appeng/client/render/cablebus/SmartCableTextures.java
#	src/main/java/appeng/container/implementations/CraftingCPUContainer.java
#	src/main/java/appeng/container/implementations/LevelEmitterContainer.java
#	src/main/java/appeng/container/implementations/PriorityContainer.java
#	src/main/java/appeng/core/AEConfig.java
#	src/main/java/appeng/fluids/client/gui/FluidLevelEmitterScreen.java
#	src/main/java/appeng/fluids/container/FluidLevelEmitterContainer.java
#	src/main/java/appeng/me/cluster/MBCalculator.java
#	src/main/java/appeng/me/cluster/implementations/CraftingCPUCalculator.java
#	src/main/java/appeng/me/cluster/implementations/QuantumCalculator.java
#	src/main/java/appeng/me/cluster/implementations/QuantumCluster.java
#	src/main/java/appeng/me/cluster/implementations/SpatialPylonCalculator.java
#	src/main/java/appeng/tile/crafting/CraftingBlockEntity.java
#	src/main/java/appeng/tile/qnb/QuantumBridgeBlockEntity.java
#	src/main/java/appeng/tile/spatial/SpatialPylonBlockEntity.java
2020-07-20 20:19:42 +02:00
Sebastian Hartte 019f570331 Pattern Rendering and other Rendering 2020-07-20 20:13:20 +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 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 be4fdfed85 Merge remote-tracking branch 'origin/master' into fabric-1.16
# Conflicts:
#	src/main/java/appeng/block/spatial/SpatialPylonBlock.java
#	src/main/java/appeng/client/render/spatial/SpatialPylonBakedModel.java
#	src/main/java/appeng/core/AppEng.java
#	src/main/java/appeng/hooks/TickHandler.java
#	src/main/java/appeng/me/cluster/MBCalculator.java
#	src/main/java/appeng/me/cluster/implementations/CraftingCPUCluster.java
#	src/main/java/appeng/me/cluster/implementations/QuantumCluster.java
#	src/main/java/appeng/me/cluster/implementations/SpatialPylonCluster.java
#	src/main/java/appeng/me/helpers/AENetworkProxy.java
#	src/main/java/appeng/tile/networking/CableBusBlockEntity.java
#	src/main/java/appeng/tile/networking/DenseEnergyCellBlockEntity.java
#	src/main/java/appeng/tile/qnb/QuantumBridgeBlockEntity.java
#	src/main/java/appeng/tile/spatial/SpatialPylonBlockEntity.java
#	src/main/java/appeng/util/Platform.java
2020-07-19 01:05:14 +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
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
Sebastian Hartte 1e20cd8c08 Merge remote-tracking branch 'origin/master' into fabric-1.16
# Conflicts:
#	build.gradle
#	gradle.properties
#	src/api/java/appeng/api/config/Upgrades.java
#	src/api/java/appeng/api/recipes/ResolverResult.java
#	src/main/java/appeng/block/AEBaseBlockItemChargeable.java
#	src/main/java/appeng/block/crafting/CraftingStorageItem.java
#	src/main/java/appeng/block/misc/ChargerBlock.java
#	src/main/java/appeng/block/networking/CableBusBlock.java
#	src/main/java/appeng/block/storage/ChestBlock.java
#	src/main/java/appeng/block/storage/DriveSlotCellType.java
#	src/main/java/appeng/capabilities/Capabilities.java
#	src/main/java/appeng/client/me/ItemRepo.java
#	src/main/java/appeng/client/render/cablebus/FacadeBuilder.java
#	src/main/java/appeng/client/render/effects/ChargedOreFX.java
#	src/main/java/appeng/client/render/effects/CraftingFx.java
#	src/main/java/appeng/client/render/effects/EnergyFx.java
#	src/main/java/appeng/client/render/effects/LightningArcFX.java
#	src/main/java/appeng/client/render/effects/LightningFX.java
#	src/main/java/appeng/client/render/effects/MatterCannonFX.java
#	src/main/java/appeng/client/render/effects/VibrantFX.java
#	src/main/java/appeng/client/render/spatial/SpatialPylonRendering.java
#	src/main/java/appeng/client/render/tesr/DriveLedTileEntityRenderer.java
#	src/main/java/appeng/container/AEBaseContainer.java
#	src/main/java/appeng/container/implementations/CellWorkbenchContainer.java
#	src/main/java/appeng/container/implementations/MolecularAssemblerContainer.java
#	src/main/java/appeng/container/implementations/PatternTermContainer.java
#	src/main/java/appeng/container/implementations/QuartzKnifeContainer.java
#	src/main/java/appeng/core/AEConfig.java
#	src/main/java/appeng/core/AEItemGroup.java
#	src/main/java/appeng/core/Api.java
#	src/main/java/appeng/core/AppEng.java
#	src/main/java/appeng/core/Registration.java
#	src/main/java/appeng/core/api/definitions/ApiBlocks.java
#	src/main/java/appeng/core/api/definitions/ApiParts.java
#	src/main/java/appeng/core/features/registries/MovableTileRegistry.java
#	src/main/java/appeng/core/features/registries/P2PTunnelRegistry.java
#	src/main/java/appeng/core/features/registries/WirelessRegistry.java
#	src/main/java/appeng/core/features/registries/WorldGenRegistry.java
#	src/main/java/appeng/core/features/registries/cell/BasicItemCellGuiHandler.java
#	src/main/java/appeng/core/sync/BasePacketHandler.java
#	src/main/java/appeng/core/sync/packets/ClickPacket.java
#	src/main/java/appeng/core/sync/packets/PatternSlotPacket.java
#	src/main/java/appeng/crafting/CraftingTreeProcess.java
#	src/main/java/appeng/debug/ReplicatorCardItem.java
#	src/main/java/appeng/entity/ChargedQuartzEntity.java
#	src/main/java/appeng/entity/SingularityEntity.java
#	src/main/java/appeng/entity/TinyTNTPrimedEntity.java
#	src/main/java/appeng/fluids/helper/DualityFluidInterface.java
#	src/main/java/appeng/fluids/helper/FluidCellConfig.java
#	src/main/java/appeng/fluids/parts/FluidFormationPlanePart.java
#	src/main/java/appeng/fluids/parts/FluidHandlerAdapter.java
#	src/main/java/appeng/forge/data/providers/IAE2DataProvider.java
#	src/main/java/appeng/forge/data/providers/recipes/SlabStairRecipes.java
#	src/main/java/appeng/helpers/CraftingPatternDetails.java
#	src/main/java/appeng/helpers/DualityInterface.java
#	src/main/java/appeng/helpers/WirelessTerminalGuiObject.java
#	src/main/java/appeng/hooks/IBlockTool.java
#	src/main/java/appeng/hooks/TickHandler.java
#	src/main/java/appeng/integration/modules/jei/CondenserCategory.java
#	src/main/java/appeng/integration/modules/jei/JEIPlugin.java
#	src/main/java/appeng/items/misc/EncodedPatternItem.java
#	src/main/java/appeng/items/parts/FacadeItem.java
#	src/main/java/appeng/items/parts/PartItem.java
#	src/main/java/appeng/items/storage/AbstractStorageCell.java
#	src/main/java/appeng/items/storage/CreativeStorageCellItem.java
#	src/main/java/appeng/items/tools/powered/ColorApplicatorItem.java
#	src/main/java/appeng/items/tools/powered/EntropyManipulatorItem.java
#	src/main/java/appeng/items/tools/powered/MatterCannonItem.java
#	src/main/java/appeng/items/tools/powered/WirelessTerminalItem.java
#	src/main/java/appeng/me/cluster/implementations/CraftingCPUCluster.java
#	src/main/java/appeng/me/storage/MEMonitorIFluidHandler.java
#	src/main/java/appeng/parts/PartPlacement.java
#	src/main/java/appeng/parts/automation/FormationPlanePart.java
#	src/main/java/appeng/parts/p2p/FluidP2PTunnelPart.java
#	src/main/java/appeng/parts/reporting/PatternTerminalPart.java
#	src/main/java/appeng/spatial/CachedPlane.java
#	src/main/java/appeng/spatial/StorageChunkGenerator.java
#	src/main/java/appeng/spatial/StorageHelper.java
#	src/main/java/appeng/tile/crafting/CraftingBlockEntity.java
#	src/main/java/appeng/tile/crafting/CraftingStorageBlockEntity.java
#	src/main/java/appeng/tile/crafting/MolecularAssemblerBlockEntity.java
#	src/main/java/appeng/tile/inventory/AppEngInternalAEInventory.java
#	src/main/java/appeng/tile/misc/ChargerBlockEntity.java
#	src/main/java/appeng/tile/misc/CondenserBlockEntity.java
#	src/main/java/appeng/tile/misc/InscriberBlockEntity.java
#	src/main/java/appeng/tile/misc/InscriberRecipes.java
#	src/main/java/appeng/tile/qnb/QuantumBridgeBlockEntity.java
#	src/main/java/appeng/tile/storage/ChestBlockEntity.java
#	src/main/java/appeng/tile/storage/DriveBlockEntity.java
#	src/main/java/appeng/util/Platform.java
#	src/main/java/team/chisel/ctm/api/IFacade.java
#	src/main/resources/assets/appliedenergistics2/models/block/chest/base.json
#	src/unported/java/appeng/client/render/FacadeItemModel.java
#	src/unported/java/appeng/client/render/model/DriveBakedModel.java
#	src/unported/java/appeng/client/render/model/DriveModel.java
#	src/unported/java/appeng/core/PluginLoader.java
2020-07-18 01:45:43 +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
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
Sebastian Hartte 2944873431 First Working Worldgen of Meteorites 2020-07-07 18:55:56 +02:00
Sebastian Hartte 5eece068ba Worldgen, Compass (temp) 2020-07-07 01:55:15 +02:00
Sebastian Hartte 9220ca0048 Added HWYLA 2020-07-05 16:50:39 +02:00
Sebastian Hartte 1478e4c378 Lots more moved 2020-07-04 21:03:30 +02:00
Sebastian Hartte 5982f094ec ME Chest 2020-07-02 22:34:21 +02:00
Sebastian Hartte fee1c18afe Merge remote-tracking branch 'origin/master' into fabric-1.16
# Conflicts:
#	gradle.properties
#	src/main/java/appeng/block/AEBaseBlock.java
#	src/main/java/appeng/block/misc/QuartzFixtureBlock.java
#	src/main/java/appeng/block/misc/TinyTNTBlock.java
#	src/main/java/appeng/block/networking/CableBusBlock.java
#	src/main/java/appeng/helpers/AEMaterials.java
#	src/unported/java/appeng/block/misc/ChargerBlock.java
#	src/unported/java/appeng/block/networking/CreativeEnergyCellBlock.java
#	src/unported/java/appeng/block/networking/EnergyCellBlock.java
#	src/unported/java/appeng/block/networking/WirelessBlock.java
#	src/unported/java/appeng/block/paint/PaintSplotchesBlock.java
#	src/unported/java/appeng/block/qnb/QuantumLinkChamberBlock.java
#	src/unported/java/appeng/block/spatial/SpatialPylonBlock.java
#	src/unported/java/appeng/client/render/tesr/DriveLedTileEntityRenderer.java
#	src/unported/java/appeng/tile/storage/ChestBlockEntity.java
2020-07-02 12:26:38 +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 a2344f52e1 Merge pull request #4445 from AppliedEnergistics/materials-rework
Changed AEGlassMaterial to Materials
2020-07-02 10:55:32 +02:00
Sebastian Hartte 75234415ac Cables work 2020-07-02 10:16:03 +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
Sebastian Hartte dd9346e53f Merge remote-tracking branch 'origin/master' into fabric-1.16
# Conflicts:
#	src/main/java/appeng/block/AEBaseBlockItem.java
#	src/main/java/appeng/core/AEConfig.java
#	src/main/java/appeng/parts/PartPlacement.java
2020-07-02 01:18:31 +02:00
Sebastian Hartte f573b52b1b Be more lenient with the return value of BlockItem.tryPlace (it might be CONSUME in future versions). 2020-07-02 01:12:53 +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