Commit graph

1559 commits

Author SHA1 Message Date
JozsefA
4e7777a130 Fix more instancing nonsense.
OrientedData was still applying the origin position shift, so some
things (mechanical presses) wouldn't appear in the right spot.
2021-03-27 16:35:47 -07:00
1739e72af0 Merge remote-tracking branch 'origin/mc1.15/dev' into mc1.15/dev 2021-03-28 00:21:13 +01:00
1bffb82ae4 Cogwheel refactor Part III
- Removed the calls to the AllBlocks entries where necessary
- Made placement helpers call the same code as CogWheelBlock.isValidPosition
2021-03-28 00:19:27 +01:00
JozsefA
5f49698a94 Fix mixer weirdness.
- Mixer and Press instances now use the quaternion shader.
2021-03-27 15:06:56 -07:00
7b022cd302 Cogwheel refactor Part II
- Refactored getStateForPlacement to reduce doubled code
2021-03-27 23:05:59 +01:00
4ff20b4217 Cogwheel refactor Part I
- Moved hasIntegratedCogWheel and isSmallCog to ICogWheel
2021-03-27 22:42:27 +01:00
Kryppers
213711ce77 Merge branch 'mc1.15/dev' of https://github.com/Creators-of-Create/Create into mc1.15/dev 2021-03-27 21:09:19 +00:00
Kryppers
c239cec8b4 Update weighted_ejector_top.png 2021-03-27 21:09:17 +00:00
simibubi
3dd199e9d9 Merge branch 'mc1.15/dev' of https://github.com/Creators-of-Create/Create into mc1.15/dev 2021-03-27 20:15:13 +01:00
simibubi
497ea4bb66 Foolish not to avoid the lack of counteracting no-clip
- Ejectors now occasionally track launched items, scanning for any obstacles in their trajectory
- Fixed rendered items passing an Ejectors' target on clients ticking faster than their server
- Removed outdated warnings for 'transposer funnels'
2021-03-27 20:14:55 +01:00
Kryppers
25bc102e92 New contact, who dis?
updated redstone contact textures.
2021-03-27 19:13:26 +00:00
6e0e3d28fd Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev 2021-03-27 19:15:57 +01:00
bec6b1d414 Try to make terraforged less angry against Create world gen 2021-03-27 19:15:52 +01:00
zelophed
a5a9ea1b7f ponder particles, pog 2021-03-27 16:33:23 +01:00
zelophed
c9ba76a2d1 Assisted Placement, Part IV-c
- indicator renders again
- changed the config to allow the indicator to be disabled altogether
2021-03-27 16:01:05 +01:00
JozsefA
fd98bd4976 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev 2021-03-27 01:10:42 -07:00
JozsefA
a7d714f8ba Fix for ponder particles yeeting Flywheel rendering.
I need to isolate the world load/unload stuff for
Flywheel anyway, a more robust solution is needed.
2021-03-27 01:10:01 -07:00
5dad567766 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev 2021-03-27 08:32:32 +01:00
9bc25db615 Keep everything up to date 2021-03-27 08:32:23 +01:00
JozsefA
4675e0ad15 Stop relying on IDynamicInstance#beginFrame to setup instance state.
- Gantry carriages no longer update when not necessary.
2021-03-26 22:59:47 -07: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
JozsefA
cf5eea5a10 Merge remote-tracking branch 'origin/mc1.15/dev' into mc1.15/dev 2021-03-26 17:31:41 -07:00
JozsefA
0b25f662dc Frame rate and tick rate limiting with distance.
- Significant performance improvement when dealing with massive amounts of dynamic instances, otherwise marginal.
2021-03-26 16:47:37 -07:00
zelophed
7230489b19 placement helper oversight
- shout-out to d'arcy :P
2021-03-27 00:41:09 +01:00
zelophed
56b1170224 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev
# Conflicts:
#	src/main/java/com/simibubi/create/foundation/ponder/content/PonderTagScreen.java
2021-03-26 23:59:19 +01:00
zelophed
687743d18f ponder polish
- some more changes to z-levels in ponder screens
- should be equal to 1.15 ponder now, except for the particles
2021-03-26 23:57:53 +01:00
24c306df90 Merge branch 'mc1.15/dev' into mc1.16/dev 2021-03-26 23:26:22 +01:00
JozsefA
e91a15cf5f Ejectors wind up again. 2021-03-26 15:25:42 -07:00
60bc6102e2 Add Create stone to base_stone_overworld block tag (terraforged was complaining) 2021-03-26 23:21:44 +01:00
fe10c258c4 Merge & Port 2021-03-26 23:13:49 +01:00
5a176204a5 Merge & Port 2021-03-26 22:17:23 +01:00
simibubi
cb759e793e 3D Printing is cool again
- Fixed Schematicannon clearing blocks outside of a Schematics' bounding box
- Safety check for onBlockPlacedBy with null player
- Deployers with a positioned Schematic as their filter will place blocks accordingly, taking items from the contraption inventory
2021-03-26 22:05:16 +01:00
simibubi
0afb29f9a6 Simulate and Translocate
- Adjusted Brass Tunnels once again to better deal with non-complete item transferrals
- Brass tunnels now always output to their sides first
- Thrown chromatic products are now gravity-less
- Sneaking on Ejectors bypasses them triggering
- Fixed ponder tag item listing
- Ejectors now trigger observers
- Fixed negative bottom pull distance in chutes
- Fixed smart chutes deleting non-stackable items
- Fixed chutes not able to output partial stacks
- Ejectors can now be paused with redstone
- Deferred ejector launches by one tick to 'unground' entities more consistently
2021-03-26 18:41:03 +01:00
f28a3e87f3 No longer keep making new wrappers (but particles still don't work) 2021-03-26 16:50:06 +01:00
1675ee25b4 Fix ponder text being shy and hiding behind other things 2021-03-26 16:27:57 +01:00
35c62360be Merge & Port 2021-03-26 16:03:09 +01:00
9c8d035694 Dya see the dye? 2021-03-26 13:35:45 +01:00
b582b39ae4 Merge remote-tracking branch 'origin/mc1.15/dev' into mc1.15/dev 2021-03-26 09:11:48 +01:00
5fa8a0b808 Revert "Fix leave finding in saws so compatibility with other mods works"
This is necessary to make the distance gathering work. Sorry me dumb dumb
2021-03-26 09:11:25 +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
JozsefA
2e5d7a734f Fix ConcurrentModificationException preparing frame for rendering. 2021-03-25 15:10:40 -07:00
JozsefA
affb8abfbd Potentially fix weird crash. 2021-03-25 14:48:42 -07:00
JozsefA
a56514c308 Some housekeeping and documentation. 2021-03-25 14:29:52 -07:00
zelophed
8c79174904 fix pressing recipe inconsistency (closes #1296) 2021-03-25 03:58:24 +01:00
zelophed
e26191aaf7 GuiGameReposition
- adjust the position of the item renderer for gui elements
- include a warning when joining a world while fabulous graphics are enabled
2021-03-25 02:27:10 +01:00
JozsefA
b18993ed26 Little things.
- Quark magnets don't crash (already fixed).
 - Fix quark magnet leaving behind ghost instances.
 - Fix crash with belt lighting after being placed by contraptions.
 - Simplify tile add/remove mixins and avoid conflict with Performant.
 - Avoid FloatBuffer detour when uploading matrix uniforms.
 - InstancedTileRenderer no longer has to clean up.
 - Properly let go of tickable instances.
2021-03-24 15:48:15 -07:00
73f87ab44e Exotic smoking
- all blocks tagged as campfires that have the lit blockstate property set to true are now valid smoke sources
2021-03-24 23:42:42 +01:00
4d22b5e9b4 Merge branch 'mc1.15/dev' into mc1.16/dev 2021-03-24 15:07:51 +01:00
7eafbe5757 Merge remote-tracking branch 'origin/mc1.15/dev' into mc1.15/dev 2021-03-24 15:07:04 +01:00
16586747a6 Increase priority, less crashing with performant 2021-03-24 15:06:54 +01:00
cbbf502003 port recent changes 2021-03-24 14:54:24 +01:00
JozsefA
1233ecfe80 Fix belt lighting issues, again. 2021-03-23 14:13:32 -07:00
JozsefA
5eae3a53fc Keeps getting hotter.
- Belts now use the new system.
 - Remove ILightListener.java.
 - Listeners can choose to remove themselves.
 - Rename some static GridAlignedBB methods.
2021-03-23 02:12:09 -07:00
JozsefA
20189a86fc Spicy light update listening api.
- Round 1, no profiling done yet, not everything uses it.
 - WeakHashSet could be useful elsewhere, too.
2021-03-23 00:08:31 -07:00
JozsefA
1310b88828 Lieutenant Scatterbrain II.
- Swich to tabs. (not everything is tabs yet)
 - Refactor light and color attributes to their own Enum.
 - Quaternion/pivot/position attribute shader.
 - Always update an instance when the WorldRenderer checks if it should rerender a block.
 - Simplify some names.
 - Remove generics in InstanceData classes.
 - Deployer Tiles now use the oriented material.
 - Press heads now correctly orient themselves.
 - ModelData buffers things faster and is simpler.
2021-03-22 20:20:52 -07:00
simibubi
f7f7b67a7d Thinking Arms
- Ponder Scenes for the Mechanical Arm
- Fixed empty basins showing a fluid container tooltip
2021-03-22 02:05:47 +01:00
simibubi
140cd9a85a Sailing craft
- Front face of crafters now supports hoppers and co
- Scenes for Sails and Mechanical Crafters
- Fixed a couple strange quirks of Ponder text windows
2021-03-21 17:38:33 +01:00
c75a0f8aa7 Particular immersion 2021-03-21 17:16:17 +01:00
JozsefA
9a493b7977 Sticker fixer. 2021-03-20 23:35:13 -07:00
JozsefA
6a0ad77fe7 Refactor away TileEntityInstance#init
- Move it to the constructor.
 - An instance is now discarded and recreated if TileEntityInstance#shouldReset return true.
 - Mark a bunch of stuff final.
2021-03-20 22:33:24 -07: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
9df9a99185 We have SPONGE!
(and not only for mixins...)
2021-03-20 22:49:42 +01:00
JozsefA
3d0898c59b Smooth harvesters, step sounds v1. 2021-03-20 13:16:20 -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
simibubi
c0de8c4eb6 The grind continues
- Scenes for Millstone, Crushing wheels, blaze burners, basin, mixer, press, speedometer and stressometer
2021-03-19 20:05:55 +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
7954aed0fd Disassemble contraption when bearing block being rotated by wrench 2021-03-18 23:26:15 +08:00
Snownee
3b36526443 Merge branch 'mc1.15/dev' of https://github.com/Creators-of-Create/Create into mc1.15/dev 2021-03-18 18:49:43 +08: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
simibubi
f7f51d1988 Ponder on Tracks
- Ponder scenes for the Cart Assembler
2021-03-17 23:31:30 +01:00
simibubi
cddc4a40f5 Merge branch 'mc1.15/dev' of https://github.com/Creators-of-Create/Create into mc1.15/dev 2021-03-17 01:23:18 +01:00
simibubi
1d3e057dda Last kinetic relays and generators
- Fixed transparency depth sorting inside ponder UI
- Scenes for Seq. Gearshift, Furnace Engine/Flywheel and Rotation Speed Controllers
2021-03-17 01:23:16 +01:00
JozsefA
20da7c7761 Merge remote-tracking branch 'upstream/mc1.15/dev' into mc1.15/dev 2021-03-16 15:52:45 -07:00
JozsefA
018c177f1e Better contraption actor instancing.
- Promoted actor instance creation to the ActorInstance class.
 - Drills and Harvesters' rotational speed is based on their movement speed with Flywheel on.
 - Deployers now use Flywheel.
2021-03-16 15:52:37 -07:00
simibubi
a897b5e78b Scene machine
- Fix funnels not rendering filter slot items
- Ponder scenes for the Deployer, Harvester and Plough
- Fixed uvs on Deployer model
- Ploughs can now harvest snow layers
2021-03-16 21:04:42 +01:00
zelophed
13a4d0ca62 funnel extraction
- allow funnels to extract items when part of a contraption
- also include a little animation for the new backtrack button
2021-03-16 17:21:32 +01:00
Snownee
e3394a8907 Allow attribute filter screen to have space to show JEI bookmarks 2021-03-16 21:56:04 +08:00
Snownee
ddb5aa9a3d Human friendly schematic selection 2021-03-16 15:38:20 +08:00
Snownee
8b5d5abc06 Merge remote-tracking branch 'upstream/mc1.15/dev' into mc1.15/dev 2021-03-16 12:32:31 +08:00
simibubi
27eaf55b45 Another UI reshuffle
- 'Backstepping' is now a button
- Added little labels for hovered buttons at the bottom
- Moved ponder/transition-specific logic out of the generic screen class
2021-03-16 03:24:34 +01:00
JozsefA
9a545a09a4 Merge remote-tracking branch 'upstream/mc1.15/dev' into mc1.15/dev 2021-03-15 15:58:51 -07:00
JozsefA
e1c16d869d Some semblance of immersive portals compat.
- Each world gets its own KineticRenderer now.
2021-03-15 15:58:41 -07:00
simibubi
e38d85a633 Merge branch 'mc1.15/dev' of https://github.com/Creators-of-Create/Create into mc1.15/dev 2021-03-15 23:20:26 +01:00
simibubi
d9027c1d99 Logic Thinking
- Ponder scenes for various redstone components
2021-03-15 23:20:24 +01:00
JozsefA
52eed2bab3 Instanced Gauges and Valves, DRY lighting. 2021-03-15 14:20:13 -07:00
Snownee
a534d2230c Implement extra area for schematic table 2021-03-16 00:28:45 +08:00
Snownee
8281c5746a Fix ponder particles weirdness 2021-03-15 17:00:42 +08:00
Snownee
411925033e Merge remote-tracking branch 'upstream/mc1.15/dev' into mc1.15/dev 2021-03-15 13:02:05 +08:00
Snownee
0ca388141c Better line breaking 2021-03-15 13:00:55 +08:00
simibubi
f1b940ea18 Cutting imaginary trees
- Fixed TEs not ticking properly when wrap-around-skipping to a keyframe
- Added a block restoration instruction
- Scenes for the Saw
- runData catching up
2021-03-15 05:49:29 +01:00
simibubi
2bf9672d92 hotfix
- Oops. That didn't compile
2021-03-14 23:26:05 +01:00
simibubi
dac1cf0303 Merge branch 'mc1.15/dev' of https://github.com/Creators-of-Create/Create into mc1.15/dev 2021-03-14 21:12:04 +01:00
simibubi
a8dc4f3622 Broken Breaking
- Painful implementation of virtual block breaking overlay
- Scenes for the Mechanical Drill
2021-03-14 21:12:02 +01: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
simibubi
a40d0f58c2 Pondering about sticky stuff
- Scenes for chassis, super glue, stickers and redstone contact
- Added a warning when players try to use experimental rendering while shaders are active
2021-03-13 18:24:10 +01:00
JozsefA
d735d237ec Ghost blocks are less spooky. 2021-03-12 20:20:14 -08:00