Commit graph

1951 commits

Author SHA1 Message Date
Stephen Barnes
cff90d6211 Fix hose pulley particle position bug 2021-09-18 17:12:22 -05:00
Stephen Barnes
f9791243f8 Add config option to prevent placing fluid source blocks 2021-09-18 17:11:02 -05:00
Stephen Barnes
85d64010bd Config option to make mounted storage output-only 2021-09-18 16:14:40 -05:00
Stephen Barnes
576a5922b4 Add config options for harvesters 2021-09-18 15:22:44 -05:00
simibubi
4dc3629f5d Packing Up, Part II
- Toolboxes keep nbt on pickup
- Toolbox radial menu supports mouse wheel
- Added Dispose-all buttons
- Synced slots detach when moving stacks back into the toolbox
- Fixed missing data on client on login
2021-09-16 20:14:38 +02:00
simibubi
896ab01644 Packing Up
- Added the Toolbox
2021-09-16 04:10:34 +02:00
Jozufozu
092b16f80b Merge remote-tracking branch 'origin/mc1.16/dev' into flw/next 2021-09-14 13:18:05 -07:00
Jozufozu
0a11539961 LightPacking utility class 2021-09-14 13:17:14 -07:00
simibubi
1ec299deff Post-PR Datagen 2021-09-13 18:11:04 +02:00
simibubi
86b0d80c1b
Merge pull request #2178 from StephenBarnes/mc1.16/dev
Add config option for windmill sails per RPM
2021-09-13 17:46:11 +02:00
khj xiaogu
2d3b1e36f9
Added Option to fill infinite resources (#2071)
- Added fill infinite config option 
- Option to make hose pulley fill infinite sources
2021-09-13 17:30:31 +02:00
Tooster
72a8e24cf7
Extract CClient strings to constants (#2042)
Making it uniform with other config classes using static string holders.
2021-09-13 17:28:29 +02:00
Jozufozu
069506ae09 Initial data/struct format refactor
- Inspired by jellysquid3's vertex sinks
 - More robust/extensible solution for data writes
2021-09-12 14:49:01 -07:00
Jozufozu
2eef57204c Instancer interface
- Entire material/model system finally cleaned up
2021-09-12 09:40:37 -07:00
Jozufozu
6fcc960189 Separate LightVolume and GPULightVolume
- LightVolumes now can act as a light cache with configurable size
 - More GridAlignedBB changes
 - Remove ILightUpdateListeners
 - Simplify pulley rendering using LightVolume
2021-09-08 15:49:34 -07:00
PepperBell
6800c24c58 Fix command permission requirements
- Commands glue, highlight, and replaceInCommandBlocks now require OP
level 2 instead of 0
2021-09-05 21:14:41 -07:00
Jozufozu
d13bf42c22 Immutable view of GridAlignedBB 2021-09-04 19:57:32 -07:00
Jozufozu
e826b31a99 Moving light updates
- Better system for moving objects that want to receive light updates
 - LightProvider interface to better abstract light lookups
 - All light listeners use GridAlignedBBs
 - More utility in GridAlignedBB
2021-09-04 16:40:41 -07:00
Jozufozu
b0aba2d24a Merge branch 'mc1.16/dev' into flw/next 2021-09-02 20:23:04 -07:00
simibubi
aa3d656445 Hot belt replace
- The Wrench can now be used to shorten or divide Mechanical Belts
- Belt Connectors can now be used to extend or merge Mechanical Belts
2021-09-03 05:12:44 +02:00
simibubi
b05506ad46 Mechanicalacinahcem
- Added the option to prevent a Mechanical Crafting recipe from matching a vertically flipped arrangement
2021-09-02 23:58:38 +02:00
simibubi
31c951be65 Streamline Chromatics
- Crafters no longer display item sprites vertically flipped
- Crafters now arrange overlapping items less randomly
- Chromatic Compound can now absorb light emitting blocks from belts & depots
2021-09-02 23:08:03 +02:00
simibubi
aecd988384 Foliage Machine
- Mechanical Harvesters can now be used to gather Leaves
- Mechanical Harvesters can now be used to gather Weeping and Twisting Vines
- Fixed JEI integration of Basin recipes with multiple and/or stochastic outputs
2021-08-31 13:46:28 +02:00
Stephen Barnes
35e4956c02 Add config option for windmill sails per RPM 2021-08-29 21:56:28 -05:00
Jozufozu
c9789169b3 Light update convergence
- Move light update logic for all instances to use LightUpdater
 - Begin refactor of LightUpdater to account for moving listeners
2021-08-29 14:40:47 -07:00
grimmauld
42fac69721 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev 2021-08-29 12:27:42 +02:00
grimmauld
b734f73db3 made armor stands in ponder scenes less likely to break to null worlds 2021-08-29 12:27:33 +02:00
reidbhuntley
53774d64af Fix infinite source blacklist being ignored 2021-08-28 20:07:57 -04:00
Jozufozu
68a4478b38 Merge branch 'mc1.16/dev' into flw/next 2021-08-28 15:44:45 -07:00
PepperCode1
8a68911335
Merge pull request #2121 from Ovionyx/mc1.16/dev
custom namespace support of CustomRenderedItemModels
2021-08-28 11:58:20 -07:00
PepperBell
20b2ec4b63 Add CreateCustomRenderedItemModel
- Allows Create's classes to not have to pass the namespace every time
2021-08-28 11:53:45 -07:00
PepperBell
2b9c48b215 Add cake to upright tag
- Add missing override annotation
2021-08-28 11:20:02 -07:00
simibubi
dc0bdd055e Move to api package, also datagen 2021-08-25 17:49:01 +02:00
simibubi
fece0e39e2 Add-ons, behave
- Fixed idle blaze burners sending packets every tick
- Fixed placement indicator rendering behind the crosshair
- Added an Event allowing additional tileentitybehaviour objects to be attached to STEs from outside
2021-08-25 17:21:12 +02:00
simibubi
925c98792f (Sp)out of order
- Added behavioural registry for Spout/Block interaction
- Fixed and Refactored TiCon Casting via Spout
- Fixed fluid pipes getting stuck trying to waterlog non-solid blocks with fluid handling capabilities
- Fixed modlist lookup for non-english locales
2021-08-25 13:46:53 +02:00
grimmauld
f0736bdc41 Simplify the event to not include a te aware inventory 2021-08-24 17:15:43 +02:00
grimmauld
df0b9c3a17 getter for deployer fake player 2021-08-24 15:04:26 +02:00
grimmauld
ce32284d39 DeployerRecipeSearchEvent
- added an event to add custom deploying recipes for addons(that partly need more data and therefore can't use the existing deploying recipe json format)
- made deploying recipe scanning cancelable by event
- added a safety check to tile entity behaviours to prevent concurrent modification exceptions when loading old worlds (0.2 time, dev 0.3)
2021-08-24 11:17:47 +02:00
Jozufozu
6de4b92ad0 Interfaces and less log lines
- MateralManager, MaterialGroup, and InstanceMaterial are all interfaces
 - Separate (T)EI facing API from implementation
 - Comment out debug log in ModelPool
2021-08-23 22:34:29 -07:00
Talrey
b1bcb55838 okay now it works for real 2021-08-19 23:39:32 -07:00
Talrey
afca03de0b deployers work on the move now 2021-08-19 21:13:07 -07:00
Talrey
501e0fcf19 Deployer interactor partially implemented, can't swap items yet but can be wrenched 2021-08-16 00:44:34 -07:00
kotakotik22
30cef7025e Contraption movement setting API
- Renamed SpawnerMovementSetting to ContraptionMovementSetting and moved it to its own class
- Added a contraption movement setting registry
- Made checks previously checking only spawner movement setting and the block being a spawner to check using ContraptionMovementSetting.get(block)
2021-08-16 07:57:10 +03:00
QubicQuantum
80100ff504 fixed some stuff
a
2021-08-15 21:14:26 -07:00
QubicQuantum
7ddf11004b custom namespace support of CustomRenderedItemModels 2021-08-15 20:54:00 -07:00
Talrey
6c3337ae75 interaction behaviour doesn't invalidate _every_ renderer now 2021-08-15 16:00:04 -07:00
Mark Talrey
c6db66876a
Merge branch 'Creators-of-Create:mc1.16/dev' into mc1.16/interaction 2021-08-15 15:49:36 -07:00
Jozufozu
f1701ae784 Method to invalidate contraption renderers
- Call ContraptionRenderDispatcher#invalidate, at some point during a tick, and the structure will be reset.
 - Move contraption compartment to SBBContraptionManager
 - Contraption compartment uses custom pair with better hash function instead of apache commons pair
2021-08-15 15:10:58 -07:00
Jozufozu
5cb2eef157 Method to invalidate contraption renderers
- Call ContraptionRenderDispatcher#invalidate, at some point during a tick, and the structure will be reset.
 - Move contraption compartment to SBBContraptionManager
 - Contraption compartment uses custom pair with better hash function instead of apache commons pair
2021-08-15 15:10:35 -07:00
Jozufozu
322902d056 Some decoupling
- New Loader class in charge of loading and compiling everything
 - ShaderSources now only loads sources
 - ShaderSources is immutable now
 - Resolver singleton in charge of managing name resolutions
 - ProgramSpecs go through Resolver
 - WorldShaderPipeline no longer needs reference to ShaderSources
2021-08-10 15:20:52 -07:00
Jozufozu
208c6eff89 A heck of a lot
- Reorganize everything
 - Isolate SourceFile related things
 - Should consider decoupling ShaderLoader from resource loading
 - Document a lot of newer things
 - Index functions
 - Awkward WorldContext builder
 - Template responsible for providing shader inputs
 - Template is now an abstract class
 - Template provides GLSL version
 - ProgramSpecs now only accept one file
2021-08-10 02:06:23 -07:00
Jozufozu
cb47ca8452 Reload
- Redo shader loading
 - Now loads an immutable SourceFile containing some metadata
 - Replace legacy compilation pipeline with improved new one using new api
 - Builtins are defined in one file, now "header"
 - New ErrorReporter/ErrorBuilder methods
 - Fancier shader loading errors
2021-08-08 22:35:27 -07:00
Talrey
1539f30a3d First stab at interactors on contraptions 2021-08-08 22:21:48 -07:00
simibubi
5555f9e6bb Those don't mix
- Fixed 3x3 compacting recipes marked as Shapeless able to be processed by a mixer
2021-08-08 19:37:04 +02:00
simibubi
62f65e832a Give Widget 2021-08-08 16:26:44 +02:00
simibubi
45de01ff9e Attack of the remap, Part III
- Fixed Chute Particles not moving
2021-08-08 14:41:41 +02:00
PepperBell
019a61c444 Expose ponder instruction addition 2021-08-07 21:10:38 -07:00
PepperBell
67a7726f1c Ponder registration refactor
- Remove utility methods from PonderRegistry and only leave the one
essential method
- Move utility registration methods to PonderRegistrationHelper
- Move entry builder methods to entry class, PonderStoryBoardEntry
- Move listed tags list to tag registry
- Make ponder chapters namespaced
- Add localization and language datagen support for ponder chapters
2021-08-07 20:18:45 -07:00
simibubi
8edb9121cc Outstanding Performance
- Fixed Chutes pulling from inventories causing major framerate drops
- Fixed Chutes sending update packets when idling
- Added a max range for filter slot rendering of blocks
- Synced TEs are no longer able to cause side-effects by calling sendData on the Render Thread
2021-08-07 16:24:57 +02:00
zelophed
cc575a70c8 flash mich nochmal
- fix ponder buttons not flashing correctly
2021-08-07 02:46:16 +02:00
zelophed
370c813287 lost in the depths
- add a search box to config screens
- add a new screen that gives easier access to other mod's configs
- add a couple more config annotations
2021-08-07 02:09:12 +02:00
zelophed
ca02ac038f Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev
# Conflicts:
#	src/main/java/com/simibubi/create/foundation/ponder/SceneBuilder.java
2021-08-07 01:23:43 +02:00
Jozufozu
085ab2d7bc Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev 2021-08-06 12:14:13 -07:00
Jozufozu
0349d57929 Fix CI
- Javadoc doesn't like angle brackets
 - Add jar to artifacts
2021-08-06 12:13:51 -07:00
PepperBell
b19d92f6c2 Remove legacy TER light code
- TERs now pass in the light, so no need to recalculate it
- Make ContraptionRenderInfo.matrices final
2021-08-05 22:35:24 -07:00
PepperBell
333ef9ecbb Reuse contraption matrices
- Optimize memory usage by reusing ContraptionMatrices instances
2021-08-05 17:48:35 -07:00
MRH0
6173f9600c Integration support for Furnace Engine speed modifiers
+ FurnaceEngineModifiers which hold a Block -> float map of modifiers
~ Changed FurnaceEngineTileEntity to use the FurnaceEngineModifiers map instead of hardcoded modifier fro the Blast Furnace.
This will allow addon modders to change the speed modifier of a Furnace block.
2021-08-06 01:27:14 +02:00
Jozufozu
26fbe97ae6 Fix contraption shadow rendering with optifine
- More conventional naming for fields of ContraptionMatrices
 - Encapsulate fields in ContraptionMatrices
 - Move creation to RenderLayerEvent
 - De-clutter RenderedContraption#beginFrame
 - Bump flywheel version
2021-08-05 15:09:00 -07:00
Jozufozu
3e6e8c406b Bump Flywheel version
- Small tweak to contraption layer creation
2021-08-05 15:09:00 -07:00
PepperBell
b81fc66145 Sandpaper tag improvements
- Use already created sandpaper tag
- Use previous recipe's namespace instead of Create's when converting
sandpaper recipes to deployer recipes
2021-08-05 10:23:59 -07:00
simibubi
9f558cf419 Not a magic mod
- Fixed Auto-Compacting picking up special gated recipes from the mod Occultism #2070
2021-08-05 19:11:13 +02:00
simibubi
a6f893da7e
Merge pull request #2080 from mrh0/mc1.16/dev
Added tag for improved integration in DeployerApplicationRecipe
2021-08-05 17:58:42 +02:00
simibubi
8dd2f1dbf6 Schematic Problematic
- Fixed ammo-specific fire damage not dropping cooked drops from killed entities
- Fixed Schematicannons not visually aiming toward current block trajectory
- Fixed placed Schematics using smaller boundaries than the original
- Added the option to enable/disable placing air blocks with instant creative schematic printing
- Added safety check for Missing/Migrated filter attributes #2065
- Added safety check for Crushing wheels near unloaded blocks
- Added safety check for instant printing an invalid Schematic
2021-08-05 17:05:13 +02:00
MRH0
e8a6500434 Added tag for improved integration in DeployerApplicationRecipe
+ Added create:sandpaper to AllRecipeTypes and datagen.
~ Changed hardcoded list of sandpaper items to Tag.
This would enable me to include the Diamond Grit Sandpaper from CC&A in the deployer recipe. Node: There might be more applications for this tag.
2021-08-04 02:20:40 +02:00
Jozufozu
468435e1a0 Fix nullpointer when contraptions stop 2021-08-02 00:22:50 -07:00
PepperBell
c674b5df8d Fix linked controller rendering
- Fix unequip animation
- Fix button progress not resetting on unequip
- Optimize code
2021-07-31 19:10:17 -07:00
PepperBell
99be93e8a6 Synchronization
- Make PonderRegistry use a ThreadLocal current namespace
- Add synchronized blocks to some methods that modify maps or lists
- Move some non-thread safe method calls to the event.enqueueWork
lambdas
2021-07-31 17:28:41 -07:00
zelophed
e26d7d61f2 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev 2021-07-31 14:25:09 +02:00
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
simibubi
296b302160 Attack of the remap, Part II
- Fixed Crafting Blueprints not able to be placed
2021-07-31 14:13:29 +02:00
simibubi
05d581c779 Blinding transparency
- Fixed goggle overlay fading into a solid colour when its custom alpha is 0
- Fixed crash rendering saws, addresses #2064
2021-07-31 12:24:28 +02:00
simibubi
2535ecb917 Attack of the remap
- Fixed two ObfucationHelper lookups
2021-07-30 21:51:05 +02:00
PepperBell
0d7f486107 Update fluids
- Update Registrate from 1.0.4 to 1.0.9
- Remove unnecessary manual bucket creation in fluid builders
- Set more realistic fluid viscosities; Fix #2010
2021-07-29 18:49:04 -07:00
Jozufozu
e1248e598a Model changes
- Buffered models directly consume IModels
 - Document IModel more
 - Move contraption world render spoofing to flywheel
 - Miscellaneous new RenderMaths
 - Added WorldModel, renders many blocks given a world instance
 - Fix broken transparency on contraptions when using Flywheel
2021-07-29 01:37:48 -07:00
Jozufozu
7c202ed491 DRY contraption rendering
- Different subclasses for flywheel rendering and sbb rendering
 - Select which to use on renderer reload, gather context, and when create buffers are invalidated
2021-07-28 19:25:25 -07:00
Jozufozu
cd9f18a8c9 WorldAttached contraption rendering
- ContraptionRenderDispatcher's meat was moved to WorldContraptions
 - Rename ContraptionWorldHolder to ContraptionRenderInfo
 - One ContraptionMatrices per contraption per frame
 - Cull contraptions
 - Bump flywheel version
2021-07-28 18:21:07 -07:00
Jozufozu
ce2e2be2c2 Less world holders when using Flywheel 2021-07-28 15:27:11 -07:00
Jozufozu
17421df5ce Contraptions have l a y e r s
- SBB contraption rendering is done through Flywheel's RenderLayerEvent
 - Fix instanced tile rendering on contraptions and in ponder worlds
 - Bump flywheel version
 - Some package-info.javas
2021-07-28 14:25:50 -07:00
PepperBell
b31f5f5d78 Default fallback
- Make stress value getters fallback to default value map if provider is
absent
- Rename StressConfigDefaults to BlockStressDefaults and move to block
package
- Rename StressConfigValues to BlockStressValues and move to block
package
2021-07-27 16:13:50 -07:00
PepperBell
0dea880665 Stress config value refactor
- Add StressConfigValues to allow registering stress value providers and
getting values by namespace
- Use correct namespace inside StressConfigDefaults builder transformers
- Expose StressConfigDefaults maps
- Add methods to manually register default stress values
- Only add stress configs for defaults that have the create namespace
- Clean up ItemDescription#getKineticStats
2021-07-27 13:25:16 -07:00
simibubi
85be4be395 OK Goggle
- Press/Spout placement offset no longer activates when clicking the side of a block
- Press/Spout placement offset no longer activates on invalid belt slopes
- Block-items without innate fluid handling no longer require sneaking to be placed next to item drains
- The Goggle overlay can now be activated by external add-ons
- The Goggle overlay default colour now has less opacity
- The Goggle overlay now fades in over a couple ticks
2021-07-27 15:25:25 +02:00
simibubi
eea9778840 Post-PR datagen 2021-07-27 13:43:58 +02:00
simibubi
e01a53b10e
Merge pull request #2037 from TheRamenChef/patch-2
Add milling recipes for beetroots and sea pickles
2021-07-27 13:30:43 +02:00
Jozufozu
cb8e6d92d5 Contraptions use flywheel for vanilla tiles
- Update more usage of glActiveTexture to the enum wrapper
 - Fix superglue rendering in the solid layer
 - Fix issue caused by states with different textures on contraptions
 - Bump flywheel version
2021-07-26 16:27:18 -07:00
PepperBell
1d6da03799 Copper armor fixes
- Add backtank layer to all player models
- Only add backtank layer if entity renderer returns BipedModel
- Make copper armor considered to be worn only when in the correct armor
slot
2021-07-25 14:08:46 -07:00
TheRamenChef
fc0e7a0a66
Add milling recipes for beetroots and sea pickles 2021-07-25 11:58:41 -05:00
zelophed
74d57f38fe Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev 2021-07-25 04:13:08 +02:00
zelophed
e944906519 overlayn't
- add config options that allow some more customization of the overlay renderer (addresses #2020)
- overlay position has been reset to its default position, because the config path changed

- allow integer config values to be entered and displayed as hex or binary (inside the config gui only)
- how integer values are displayed can be changed with a special comment
- minor changes to theme, that allow keys to refer to one another
2021-07-25 04:12:56 +02:00
reidbhuntley
87d630ca0a Little ones
- Fixed crash when simultaneously converting and destroying a Peculiar Bell (#2008)
- Fixed Stockpile Switch not updating its signal when the inventory it's watching is moved (#1980)
- Fixed Potato Cannon projectiles being able to move players in creative mode (#1950)
- Fixed Lectern Controller not rendering buttons when being used by a different player
2021-07-24 17:08:50 -04:00
simibubi
b6b6b32e96 SuperBustedBuffer
- Removed obsolete milk filling/draining code and recipes
- Fixed lack of transforms on cpu rendered stuff
- Move fluid remapper to RemapHelper
2021-07-24 22:32:27 +02:00