Commit Graph

123 Commits

Author SHA1 Message Date
zelophed
0fe3230640 color me surprised
- move functionality of ColorHelper into a new Color class
- replace usage of java.awt.Color with our own color in most cases
2021-07-31 14:21:19 +02:00
Jozufozu
a52b6d766f MaterialGroups and massive refactors
- Move material stuff to its own package
 - The various render functions in the material tree now bind to specific render layers
 - Instancers can choose which layer to use
 - The layers are SOLID, CUTOUT, and TRANSPARENT
 - More layers are likely unnecessary, but we'll see
 - Deprecate functions in MaterialManager in favor of more builderesque ones using MaterialGroups
 - Catching up with Flywheel
 - Remove MatrixStacker in favor of Flywheel's TransformStack (thread safety too)
2021-07-21 20:30:35 -07:00
PepperBell
4bdd802170 Organize imports 2021-07-17 00:46:35 -07:00
a048285699 Bulk remap, compiles 2021-07-15 11:32:03 +02:00
simibubi
4a57b916ff Top ten hotswap engineering oversights
- Fixed reversed frequency display of Redstone Links
2021-07-11 01:28:28 +02:00
PepperBell
de929ef510 GUI cleanup and fixes part 2
- Change positions of more GUI elements
- Fix mistakes from last cleanup
- Add window offset to AbstractSimiScreen
- Implement container usability check properly and add
IInteractionChecker
- Render schematic and quill in schematic prompt screen
- Rename curiosities2.png to curiosities_2.png
- Various other tweaks, fixes, and improvements
- Resolves #1847
2021-06-25 22:16:17 -07:00
JozsefA
64c55c1205 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/chromatic-projector
# Conflicts:
#	README.md
#	src/generated/resources/.cache/cache
#	src/generated/resources/assets/create/lang/unfinished/de_de.json
#	src/generated/resources/assets/create/lang/unfinished/es_es.json
#	src/generated/resources/assets/create/lang/unfinished/es_mx.json
#	src/generated/resources/assets/create/lang/unfinished/fr_fr.json
#	src/generated/resources/assets/create/lang/unfinished/it_it.json
#	src/generated/resources/assets/create/lang/unfinished/ja_jp.json
#	src/generated/resources/assets/create/lang/unfinished/ko_kr.json
#	src/generated/resources/assets/create/lang/unfinished/nl_nl.json
#	src/generated/resources/assets/create/lang/unfinished/pl_pl.json
#	src/generated/resources/assets/create/lang/unfinished/pt_br.json
#	src/generated/resources/assets/create/lang/unfinished/ru_ru.json
#	src/generated/resources/assets/create/lang/unfinished/zh_cn.json
#	src/generated/resources/assets/create/lang/unfinished/zh_tw.json
#	src/main/java/com/simibubi/create/foundation/fluid/FluidRenderer.java
2021-06-22 21:13:34 -07:00
simibubi
0a376b719e Thinking with Pipes
- Implemented ponder scenes for Fluid Pipes and Copper Casing
- Adjusted Fluid transfer, containment and rendering behaviours to function in 'virtual' environments
2021-06-21 18:46:31 +02:00
PepperBell
e55ae22d7d Fix fluid tank render boxes
- Update render box on client TE initialization and update packet
- Resolves #1669
2021-06-17 14:43:40 -07:00
JozsefA
d612cfdd34 Merge remote-tracking branch 'origin/mc1.16/dev' into chromatic-projector 2021-06-11 10:31:18 -07:00
JozsefA
d47f898c76 Move away from a static backend class, add a registration event 2021-06-06 15:46:16 -07:00
reidbhuntley
dff459a75f Fix bad behavior with small-max-stack-sized items when extracting multiple items at once 2021-06-05 12:29:56 -04:00
JozsefA
59dd21b85a Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/chromatic-projector
# Conflicts:
#	src/main/java/com/simibubi/create/AllContainerTypes.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/AbstractContraptionEntity.java
2021-06-01 11:47:15 -07:00
simibubi
09691b4b40 Redstone gamepads
- Added the Linked Controller
2021-05-26 22:03:06 +02:00
JozsefA
7f9ff3b7ca Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/chromatic-projector 2021-05-25 12:23:55 -07:00
simibubi
4d51e6096b
Merge pull request #1650 from PepperCode1/mc1.16/cleanup
Cleanup and Refactoring
2021-05-25 14:14:12 +02:00
JozsefA
341a385628 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/chromatic-projector
# Conflicts:
#	src/generated/resources/assets/create/lang/en_us.json
#	src/main/java/com/simibubi/create/AllBlocks.java
#	src/main/java/com/simibubi/create/AllTileEntities.java
#	src/main/java/com/simibubi/create/content/contraptions/components/deployer/DeployerTileEntity.java
#	src/main/java/com/simibubi/create/foundation/gui/AllIcons.java
#	src/main/java/com/simibubi/create/foundation/networking/AllPackets.java
#	src/main/resources/assets/create/textures/gui/icons.png
#	src/main/resources/create.mixins.json
2021-05-23 14:11:40 -07:00
reidbhuntley
73895604c8 Fix filter dupe, allow Schematicannon to place brackets 2021-05-22 21:50:31 -04:00
PepperBell
6c390977d8 Init Cleanup
- Refactor AllContainerTypes to use Registrate
- Replace RegistryEntry in AllEntityTypes and AllFluids with EntityEntry and FluidEntry, respectively
- Make AllEntityTypes use Registrate to register entity renderers instead of a separate method
- Refactor AllColorHandlers
- Fix error when a POI block is moved by a contraption
- Rename some static final fields to be upper snake case
- Make static fields in Create and CreateClient final
- Add I prefix to Coordinate interface
- Fix typo (BracketedTileEntityBehaviour#isBacketPresent)
- Make mixins go in alphabetical order
- Make pack.mcmeta use 2 spaces for indents
2021-05-22 18:00:10 -07:00
reidbhuntley
c2cc124239 Better support for partially safe NBT writing 2021-05-21 20:33:28 -04:00
simibubi
ca5b9b4fb9 Bugs and things
- Recipes for the diving gear
- Idle Windmill Bearings now attach their structure when moved as part of another contraption
- Fixed pumps not updating transfer speed when directly between containers
- Fixed Multiblock Fluid tanks showing inconsistent information on their goggle overlay
- Creative Fluid tanks no longer show a goggle overlay
- Fixed Funnels and other interfaces not updating properly when affected chunks are unloaded and reloaded
- Fixed tooltips rendering behind item icon in the filter screens
2021-05-08 18:37:30 +02:00
JozsefA
55e3f50f64 MaterialSpecs act alone
- No more awkward MaterialType/MaterialSpec business
 - MaterialTypes are registered directly
 - FastRenderDispatcher merged with backend
2021-05-04 21:00:55 -07:00
JozsefA
67e75d747a Move backend 2021-05-01 16:32:09 -07:00
simibubi
559146ef04 SoundScapes, Part II
- Picking items off belts, depots, basins
- Arms collecting an item
- Mixing noises
- Cranking click noises
- Scroll-input noises
2021-04-20 17:26:46 +02:00
simibubi
939c640e14 Better address these
- Fixed Nixies rendering inconsistently
- Fixed belts not showing items under certain conditions
- Fixed vertical/sideways belts accepting items from other belts
- Spouts can now interact with belts/depots with a mounted funnel
2021-04-10 01:50:13 +02:00
simibubi
edb1b59f41 Housekeeping
- Added an .editorconfig
- Auto-Reformatted most .java files
- Auto-Organized Imports
2021-04-08 19:22:11 +02:00
9bc25db615 Keep everything up to date 2021-03-27 08:32:23 +01:00
JozsefA
d3d338e64b STE tick optimization.
- SmartTileEntity#tick down to 3.32% from 11.64% cpu time.
 - Measured by JFR over 2 sessions each >8min.
 - Test world was the deployer fields.
 - Iterating over HashMap values is slow.
 - Collect TileEntityBehaviours into a list when the contents of SmartTileEntity#behaviours changes.
2021-03-26 22:02:19 -07:00
35c62360be Merge & Port 2021-03-26 16:03:09 +01:00
JozsefA
1d2b51250c Instanced Ejectors and better hashing for BehaviourTypes. 2021-03-25 21:27:08 -07:00
simibubi
718142e26f Faith in your Depot
- Added Weighted Ejectors
- Fixed? some tunnel distribution inconsistencies
2021-03-26 00:15:38 +01:00
cbbf502003 port recent changes 2021-03-24 14:54:24 +01:00
simibubi
a356f8a91a Ponder and Polish
- Ponder scenes for depot, chute and smart chute
- Fixed saws and drains ejecting items when mounted funnel is backstuffed
- Fixed extracting funnels allowing items to be inserted by arms and belt input
- Vanilla items in ponder tags are marked purple instead of red
- Vertical funnels now block chutes
- Large cogs can no longer be placed right next to crafters or millstones
- Mechanical Arms now stall targeted belt items
2021-03-21 03:51:22 +01:00
JozsefA
f6cfd377a7 Ticking things.
- Differentiate tickable and dynamic instances.
 - Instanced repeaters.
2021-03-20 16:30:09 -07:00
7199068189 Fix some stuff, break othter stuff
- Ponder Scenes have misplaced icons
- placement helper arrows don't render
- Particles in ponders *should* work
-> added WrappedClientWorld to make that work
- fixed ponder crashingon 1.16
- moved gui stuff to matrix stacks
- remove BlockHalper#hasBlockStateProperty, as BlockState#contains is a thing
- ran runData
2021-03-20 17:33:35 +01:00
zelophed
d03ea3488a Merge branch 'mc1.15/dev' into mc1.16/dev
# Conflicts:
#	src/generated/resources/.cache/cache
#	src/generated/resources/assets/create/blockstates/andesite_funnel.json
#	src/generated/resources/assets/create/blockstates/brass_funnel.json
#	src/generated/resources/assets/create/lang/unfinished/de_de.json
#	src/generated/resources/assets/create/lang/unfinished/es_es.json
#	src/generated/resources/assets/create/lang/unfinished/fr_fr.json
#	src/generated/resources/assets/create/lang/unfinished/it_it.json
#	src/generated/resources/assets/create/lang/unfinished/ja_jp.json
#	src/generated/resources/assets/create/lang/unfinished/ko_kr.json
#	src/generated/resources/assets/create/lang/unfinished/nl_nl.json
#	src/generated/resources/assets/create/lang/unfinished/pt_br.json
#	src/main/java/com/simibubi/create/AllBlocks.java
#	src/main/java/com/simibubi/create/compat/jei/category/CreateRecipeCategory.java
#	src/main/java/com/simibubi/create/content/contraptions/components/actors/ContraptionActorData.java
#	src/main/java/com/simibubi/create/content/contraptions/components/actors/HarvesterRenderer.java
#	src/main/java/com/simibubi/create/content/contraptions/components/actors/HarvesterTileEntity.java
#	src/main/java/com/simibubi/create/content/contraptions/components/deployer/DeployerRenderer.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/AbstractContraptionEntity.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/AssemblyException.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/Contraption.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/IDisplayAssemblyExceptions.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/MovementBehaviour.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/OrientedContraptionEntity.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/chassis/LinearChassisBlock.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/gantry/GantryCarriageBlock.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/mounted/CartAssemblerBlock.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/render/ContraptionRenderDispatcher.java
#	src/main/java/com/simibubi/create/content/contraptions/fluids/actors/SpoutTileEntity.java
#	src/main/java/com/simibubi/create/content/contraptions/fluids/tank/FluidTankTileEntity.java
#	src/main/java/com/simibubi/create/content/contraptions/goggles/IHaveGoggleInformation.java
#	src/main/java/com/simibubi/create/content/contraptions/particle/RotationIndicatorParticle.java
#	src/main/java/com/simibubi/create/content/contraptions/relays/belt/transport/BeltMovementHandler.java
#	src/main/java/com/simibubi/create/content/curiosities/tools/ExtendoGripItem.java
#	src/main/java/com/simibubi/create/content/logistics/block/funnel/FunnelFilterSlotPositioning.java
#	src/main/java/com/simibubi/create/content/logistics/block/funnel/FunnelMovementBehaviour.java
#	src/main/java/com/simibubi/create/content/logistics/block/funnel/FunnelTileEntity.java
#	src/main/java/com/simibubi/create/content/logistics/block/mechanicalArm/ArmInteractionPoint.java
#	src/main/java/com/simibubi/create/content/logistics/item/filter/AbstractFilterScreen.java
#	src/main/java/com/simibubi/create/content/logistics/item/filter/AttributeFilterScreen.java
#	src/main/java/com/simibubi/create/content/schematics/SchematicWorld.java
#	src/main/java/com/simibubi/create/content/schematics/block/SchematicTableScreen.java
#	src/main/java/com/simibubi/create/content/schematics/block/SchematicannonRenderer.java
#	src/main/java/com/simibubi/create/events/ClientEvents.java
#	src/main/java/com/simibubi/create/foundation/block/connected/ConnectedTextureBehaviour.java
#	src/main/java/com/simibubi/create/foundation/collision/CollisionDebugger.java
#	src/main/java/com/simibubi/create/foundation/collision/OBBCollider.java
#	src/main/java/com/simibubi/create/foundation/data/BuilderTransformers.java
#	src/main/java/com/simibubi/create/foundation/gui/AbstractSimiContainerScreen.java
#	src/main/java/com/simibubi/create/foundation/gui/AbstractSimiScreen.java
#	src/main/java/com/simibubi/create/foundation/gui/AllGuiTextures.java
#	src/main/java/com/simibubi/create/foundation/gui/AllIcons.java
#	src/main/java/com/simibubi/create/foundation/gui/widgets/SelectionScrollInput.java
#	src/main/java/com/simibubi/create/foundation/item/TooltipHelper.java
#	src/main/java/com/simibubi/create/foundation/mixin/LightUpdateMixin.java
#	src/main/java/com/simibubi/create/foundation/mixin/RenderHooksMixin.java
#	src/main/java/com/simibubi/create/foundation/render/KineticRenderer.java
#	src/main/java/com/simibubi/create/foundation/render/SuperByteBuffer.java
#	src/main/java/com/simibubi/create/foundation/render/backend/Backend.java
#	src/main/java/com/simibubi/create/foundation/render/backend/instancing/InstancedTileRenderer.java
#	src/main/java/com/simibubi/create/foundation/utility/BlockHelper.java
#	src/main/java/com/simibubi/create/foundation/utility/ColorHelper.java
#	src/main/java/com/simibubi/create/foundation/utility/Lang.java
#	src/main/java/com/simibubi/create/foundation/utility/MatrixStacker.java
#	src/main/java/com/simibubi/create/foundation/utility/TreeCutter.java
#	src/main/java/com/simibubi/create/foundation/utility/VecHelper.java
#	src/main/java/com/simibubi/create/foundation/utility/placement/IPlacementHelper.java
#	src/main/java/com/simibubi/create/foundation/utility/placement/util/PoleHelper.java
2021-03-20 12:58:02 +01:00
JozsefA
cef93ab0a8 Merge remote-tracking branch 'upstream/mc1.15/dev' into mc1.15/dev 2021-03-18 14:37:03 -07:00
JozsefA
b7ec884b9c Includes, quaternions, and frames.
- Shaders can now reference other files with #flwinclude <"...">.
 - Shaders are now located in assets/flywheel/shaders.
 - Include paths are namespaced (a la ResourceLocation) and relative to the flywheel shaders root folder.
 - Optimized glsl rotations using quaternions (when applicable) and vectorized matrix construction.
 - Vectorize diffuse lighting calculations.
 - Micro optimization in SmartTileEntity.java
2021-03-18 14:36:37 -07:00
Snownee
d75793d036 Add extra item capability checks
Many mods does not invalidate their capabilities, so fix it on our end
2021-03-18 18:43:25 +08:00
JozsefA
b71c831a07 Lieutenant Scatterbrain.
- User no longer has to manually add instances, new hook instead.
 - Use registrate for InstanceFactories.
 - Instanced levers.
 - Instanced hand cranks.
 - Reorganize PhysicalFloat and LerpedFloat.
2021-03-13 20:45:24 -08:00
JozsefA
a1e10a5c3c Belt speed = item speed and secret wrench fix. 2021-03-12 16:33:01 -08:00
simibubi
1a315a11cf Merge branch 'mc1.15/ponder-ui' into mc1.15/dev 2021-03-08 17:29:06 +01:00
JozsefA
b511a20814 Flappy packets.
- Instead of sending the entire tile entity (and maybe even chunk), send just what we need to.
 - Avoids unnecessary chunk rebuilds when flaps flap.
 - Beginning of a larger process to replace calls to SyncedTileEntity#sendData
2021-03-04 15:34:17 -08:00
simibubi
31cb704894 Refactor comparator overrides
- Removed unnecessary level tracking
- Remove code duplicates
- Fixed smart fluid tank behaviours not triggering markDirty on deferred fluid update
2021-03-03 17:59:27 +01:00
simibubi
0a1be94cbb Funnel Fantasy VII
- Finished ponder entries about funnels
- Smart TEs can now enter "virtual mode" to run both client and server code (support for it needs individual adjustment)
- Removed obsolete quads from the andesite funnels' model
- Not enough ponder instructions
- Fixed upright belt items in ponder UI
2021-02-28 23:49:51 +01:00
simibubi
43f0ad1c78 Freeze and Identify
- Ponder scenes can now be paused and analysed, viewing tooltips for targeted blocks in the scene
- During editing, identify mode can be used to move targeted positions to the clipboard
- Ponder-compatible components can be pondered about in identify mode
2021-02-28 01:34:56 +01:00
simibubi
692c6deaaf More pondering
- First couple of funnel scenes
- More utility methods
- Scene progress bar
- An inspect mode that does nothing
2021-02-26 19:46:56 +01:00
simibubi
4ee9dd8a8a Merge branch 'mc1.15/dev' into mc1.16/dev 2021-02-19 00:49:39 +01:00
simibubi
d59fea1079 Bloat.
- Auto-Organize inputs
- runData after lang PRs
- change runWhenOn to non-deprecated unsafeRunWhenOn, now that late forge version is required
- Address a few warnings
2021-02-18 19:43:22 +01:00
JozsefA
15302495f5 Merge remote-tracking branch 'upstream/mc1.15/dev' into mc1.15/experimental-rendering-merge
# Conflicts:
#	src/main/java/com/simibubi/create/AllEntityTypes.java
#	src/main/java/com/simibubi/create/AllSpriteShifts.java
#	src/main/java/com/simibubi/create/content/contraptions/base/KineticTileEntity.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/Contraption.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/OrientedContraptionEntityRenderer.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/bearing/MechanicalBearingTileEntity.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/mounted/MountedContraption.java
#	src/main/java/com/simibubi/create/content/contraptions/relays/advanced/SpeedControllerRenderer.java
#	src/main/java/com/simibubi/create/content/contraptions/relays/belt/BeltRenderer.java
#	src/main/java/com/simibubi/create/content/contraptions/relays/belt/BeltTileEntity.java
#	src/main/java/com/simibubi/create/foundation/command/AllCommands.java
#	src/main/java/com/simibubi/create/foundation/utility/outliner/Outliner.java
2021-02-15 21:27:08 -08:00