Commit Graph

1339 Commits

Author SHA1 Message Date
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
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
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
JozsefA
a1e10a5c3c Belt speed = item speed and secret wrench fix. 2021-03-12 16:33:01 -08:00
JozsefA
f14661fb6f Pondering: the beginning and the end.
- Special-case seeking to the end of a ponder scene.
 - Draw indicators for seeking to the beginning and end.
 - Fix pulleys not rendering correctly.
2021-03-12 14:03:21 -08:00
simibubi
841bba04bd Pondering too quickly
- Fixed idle instruction only idling for t-1
- Made keyframe skipping a little easier
- Added option to register keyframes as part of a text window builder
- PonderUI now stalls the scene briefly after skips
2021-03-12 20:42:37 +01:00
simibubi
678ddfa764 Spoutput blockage
- Fixed basin auto-output not working on stopped belts
- Basin auto-output can now share a space with funnels
- Linear chassis no longer allow sticky sides facing a directly attached linear chassis of the same type
2021-03-12 18:44:05 +01:00
Snownee
af9ed3e44b Merge branch 'mc1.15/dev' of https://github.com/Creators-of-Create/Create into mc1.15/dev 2021-03-12 23:51:20 +08:00
Snownee
6baa519973 Fix cart assembler duplication (closes #1058, #1150) 2021-03-12 23:46:26 +08:00
zelophed
438ac99b2d fix dist issues for dedicated server 2021-03-12 15:51:25 +01:00
zelophed
51c919e4d8 too much assist
- add a configurable range to placement helpers i.e. the pole helper specifically
2021-03-12 03:47:36 +01:00