Commit Graph

120 Commits

Author SHA1 Message Date
PepperBell
9870431db8 Miscellaneous refactors
- Refactor custom rendered items; The renderer now creates the model
instead of the other way around
- Only tick wrench cog rotation and linked controller renderer if client
is not paused
- Move all model swapping code from CreateClient to ModelSwapper
- Register client resource reload listener before initial resource
reload
- Use TextureStitchEvent.Post event instead of resource reload listener
for filling sprites of SpriteShiftEntries
- Reuse Random instance in PartialItemModelRenderer
- Make all config fields final
- Merge package foundation.renderState into foundation.render
- Move BreakProgressHook from package foundation to foundation.block
- Rename ResourceReloadHandler to ClientResourceReloadListener
- Rename ProperDirectionalBlock to WrenchableDirectionalBlock
2021-10-16 01:46:49 -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
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
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
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
PepperBell
4bdd802170 Organize imports 2021-07-17 00:46:35 -07:00
a048285699 Bulk remap, compiles 2021-07-15 11:32:03 +02:00
Jozufozu
2eb9c7b6eb PartialModel gets called from the right place 2021-07-09 13:39:56 -07:00
simibubi
7548d483fd Dist patch? 2021-06-29 23:00:27 +02:00
reidbhuntley
a8aa0beed9 Curses II
- Added (temporary) rendering to the bells
- Create soul pulse effects on players holding the Cursed Bell item
2021-06-27 11:46:56 -04:00
simibubi
fbcaa1b931 Fwoomp of Duty: Black Crops 4
- Introduced proper first-person rendering of Potato Cannons, inherited from blockzappers
- Introduced proper dual wield handling for Potato Cannons
- Potato cannons are no longer stackable
- Added a couple more attributes to ammo types
- potatoes and carrots now plant a crop when hitting farmland
- Added a couple particle effects
- Fwoomp sound now slightly randomizes its pitch
2021-06-26 16:32:56 +02:00
JozsefA
abf8bc8a4e Fix crash on resource reload
- Invalidate contraption renderers on context gathering
2021-06-24 01:21:33 -07:00
JozsefA
3ce4e2c5e8 Cleanup flywheel event listeners, fix crash on server startup 2021-06-23 13:19:03 -07:00
JozsefA
652111c233 Yeet 2021-06-19 00:29:18 -07:00
JozsefA
d612cfdd34 Merge remote-tracking branch 'origin/mc1.16/dev' into chromatic-projector 2021-06-11 10:31:18 -07:00
JozsefA
c1dadf3860 Instance managers are abstract 2021-06-10 14:34:16 -07:00
JozsefA
b4a1fbf2c7 Instanced entities are lit 2021-06-09 00:26:54 -07:00
JozsefA
d47f898c76 Move away from a static backend class, add a registration event 2021-06-06 15:46:16 -07:00
PepperBell
2bada365b3 Registrate colors and organized item rendering
- Use Registrate's block and item color registration instead of running
the events manually
- Move utility color handler methods to foundation.utility
- Move all item rendering classes to foundation.item.render
- Move IBlockVertexColor from foundation.block to
foundation.block.render
- Remove unnecessary raw cast in CreateRegistrate
2021-06-04 21:26:25 -07:00
JozsefA
9bac709dfd Event system, sort of untangle backend 2021-06-04 15:56:46 -07:00
JozsefA
bef6d77a59 Start working on instanced enti- oh wait I've got to do all this other stuff first
- Separate model-level instance management from object-level instance management
 - Separate material management from rendering
 - A few things here and there related to entity instancing
 - Add a rudimentary command to spawn superglue
2021-06-03 21:23:06 -07:00
JozsefA
2300ef2088 Organization, renaming, and fixing a dumb crash 2021-05-30 17:05:41 -07:00
JozsefA
7f9ff3b7ca Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/chromatic-projector 2021-05-25 12:23:55 -07:00
JozsefA
db53b7a3cf Fix gl error spam 2021-05-23 19:36:44 -07: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
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
JozsefA
9352ef9ede Json program specs, new extension/gamestate system.
- Program specs are now loaded from json instead of being defined in code and registered manually.
 - Within the json spec, a program can define a list of states.
 - A state consists of:
   - A "when" clause.
   - A list of strings to be #defined.
   - A list of extensions to apply at program link time.
 - Each frame, the first state whose "when" clause returns true will be used.
 - A when clause consists of:
  - A state provider defined by a resource location.
  - A value to match.
 - When the value returned by the provider matches the value defined in the when clause, the when clause is considered to be 'true'.
 - There is syntactic sugar for when a provider returns a boolean value.
 - This system is in its infancy, and there is plenty of room for improvement.
2021-05-22 17:45:01 -07:00
JozsefA
f6937ffb0c Only a few moves left
- flywheel stuff only barely depends on create
 - start drafting what multiple backends could look like
2021-05-11 11:02:43 -07:00
JozsefA
9736ba19b5 Things here and there
- Move CreateClient.kineticRenderer to Backend
 - InstancedTileRenderers keep track of their own queuedUpdates
 - Sort of a listener system for some render events
2021-05-04 23:56:50 -07: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
zelophed
3c4e504f61 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev
# Conflicts:
#	src/main/java/com/simibubi/create/events/ClientEvents.java
#	src/main/resources/create.mixins.json
2021-05-04 16:12:07 +02:00
JozsefA
bc5630e593 ShaderContexts
- A huge step towards more arbitrary shader usage
 - Need to work on registration of the different parts
 - Things are unorganized
2021-05-03 21:46:33 -07:00
simibubi
076783eb7e Subcreatica
- Added the Copper Backtank
- Added Diving helmet and boots
2021-05-04 03:50:17 +02:00
zelophed
fd62f2f8f4 Merge remote-tracking branch 'origin/mc1.16/dev' into mc1.16/dev
# Conflicts:
#	src/main/java/com/simibubi/create/CreateClient.java
#	src/main/java/com/simibubi/create/compat/jei/category/BlockzapperUpgradeCategory.java
#	src/main/java/com/simibubi/create/content/curiosities/symmetry/SymmetryWandScreen.java
#	src/main/java/com/simibubi/create/content/curiosities/zapper/ZapperScreen.java
2021-05-03 19:58:39 +02:00
zelophed
c36346b97d Merge branch 'mc1.16/config-ui' into mc1.16/dev
# Conflicts:
#	src/main/java/com/simibubi/create/content/contraptions/goggles/GoggleConfigScreen.java
#	src/main/java/com/simibubi/create/foundation/command/AllCommands.java
#	src/main/java/com/simibubi/create/foundation/command/FabulousWarningCommand.java
#	src/main/java/com/simibubi/create/foundation/command/OverlayConfigCommand.java
#	src/main/java/com/simibubi/create/foundation/command/PonderCommand.java
#	src/main/java/com/simibubi/create/foundation/command/ToggleDebugCommand.java
#	src/main/java/com/simibubi/create/foundation/command/ToggleExperimentalRenderingCommand.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/AllIcons.java
#	src/main/java/com/simibubi/create/foundation/gui/UIRenderHelper.java
#	src/main/java/com/simibubi/create/foundation/ponder/NavigatableSimiScreen.java
#	src/main/java/com/simibubi/create/foundation/ponder/PonderProgressBar.java
#	src/main/java/com/simibubi/create/foundation/ponder/PonderUI.java
#	src/main/java/com/simibubi/create/foundation/ponder/content/PonderIndexScreen.java
#	src/main/java/com/simibubi/create/foundation/ponder/content/PonderTagScreen.java
#	src/main/java/com/simibubi/create/foundation/ponder/ui/ChapterLabel.java
#	src/main/java/com/simibubi/create/foundation/ponder/ui/PonderButton.java
#	src/main/resources/create.mixins.json
2021-05-03 16:54:32 +02:00
JozsefA
67e75d747a Move backend 2021-05-01 16:32:09 -07:00
JozsefA
063e98983f Oh god the line endings
- Isolate AllBlockPartials to PartialModel
 - Further cleanup to PartialBufferer
2021-04-29 14:03:52 -07:00
simibubi
edb1b59f41 Housekeeping
- Added an .editorconfig
- Auto-Reformatted most .java files
- Auto-Organized Imports
2021-04-08 19:22:11 +02:00
zelophed
7ad0575618 fancy text 2021-04-07 02:17:55 +02:00
zelophed
d4994ddc8b entry point 2021-04-06 00:05:29 +02: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
e1c16d869d Some semblance of immersive portals compat.
- Each world gets its own KineticRenderer now.
2021-03-15 15:58:41 -07:00
zelophed
d590b23aa7 tagging along
- added tags and chapters to the ponder registry
- slightly changed how scenes are registered
- added a back stack to the screen opener and some animations to go along with it
- added a interface for icons drawn into screens
2021-03-04 12:58:26 +01:00
simibubi
b61dc0d562 Merge branch 'mc1.15/dev' into mc1.15/ponder-ui 2021-02-19 18:03:34 +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
24ab4e181f Merge remote-tracking branch 'upstream/mc1.15/dev' into mc1.15/experimental-rendering
# Conflicts:
#	src/main/java/com/simibubi/create/CreateClient.java
#	src/main/java/com/simibubi/create/content/contraptions/components/structureMovement/Contraption.java
#	src/main/java/com/simibubi/create/events/ClientEvents.java
#	src/main/resources/META-INF/accesstransformer.cfg
2021-02-17 14:06:13 -08:00
simibubi
18067e8d5c Ponder
- rebrand
- support for particles
- support for fluids
- support for outliner
- coloured text labels
- debug scenes
- proper UI stuff
- proper layered rendering
2021-02-16 19:35:26 +01:00
Zelophed
b9d1a586c1 Assisted Placement, Part IV
- added 👻-blocks as a placement preview
2021-02-16 00:48:13 +01:00
JozsefA
951a0c4769 contraption actors take into account self lighting 2021-02-13 13:10:14 -08:00
simibubi
8ab27904db More Instructions 2021-02-12 17:08:48 +01:00