Commit graph

218 commits

Author SHA1 Message Date
Jozufozu
d28fd7e47b Touchups
- Bump flywheel version and remove #shouldReset
- Water wheels and belt tunnels now properly handle updates without
  resetting
- Fix flaps going crazy
2024-04-02 19:23:14 -07:00
Jozufozu
26074dc3df Cut it out
- Remove CutoutPartial
- Set render_type in models than need cutout
- Fix TrackVisual going invisible when renderers reload
- Fix TrackVisual not getting re-lit in some cases
- Bump flywheel version
2024-04-02 19:23:14 -07:00
Jozufozu
a38f01fae2 Relit
- Actually use light volume api stuffs
- Bit of a pain to try to iterate over sections based on an AABB
- Still need to handle when contraptions move
- Bump flywheel version
2024-04-02 19:23:14 -07:00
PepperCode1
605daed671 Update Flywheel
- Fix SBB model buffering passing empty instead of virtual model data,
resulting in blocks like shafts appearing invisible with Flywheel off
- Fix endAndCombine not null checking unshadedData before transferring
it
- Remove VirtualEmptyBlockGetter which already exists in Flywheel
2024-04-02 19:23:14 -07:00
Jozufozu
7613ebcb1e Embed and virtualize
- Use VisualEmbedding in ContraptionVisual
- Remove context shaders
- Directly use the model from the blockstate in VirtualRenderHelper
  - Fixes many bes trying to use empty meshes because they correctly
    identify as ENTITYBLOCK_ANIMATED
- Fix valves being unlit
- Fix bearing contraptions spinning way too fast
- Do not implement SimpleDynamicVisual in CarriageContraptionVisual,
  that's taken care of by the base ContraptionVisual now
2024-04-02 19:23:13 -07:00
Jozufozu
286d2a68ab As shrimple as that
- Update to SimpleDynamicVisuals
- Translate old context stuff to new api
- Add contraption visual, doesn't fully work yet
- Strip out more FlwContraption stuff
2024-04-02 19:23:13 -07:00
Jozufozu
633a7abc23 Exit stage right
- Update to implicit render stage API.
- Fix bounding sphere transformers.
- Bump flywheel version.
- Update flywheel mixin config jsons.
2024-04-02 19:23:13 -07:00
Jozufozu
5038d04ac4 Pretty rad
- Bump flywheel build.
- Fix all(?) places where radians methods were passed degrees
- Add DiffuseLightCalculator.
- Add overlay to belt and rotating types.
- Use joml quaternions in instance types.
2024-04-02 19:23:13 -07:00
Jozufozu
b6d1f02d6a Chugging along
- Fix compile errors with new flywheel light update system.
- Fix compile errors in instance shaders.
- Call Instance#setChanged where needed.
2024-04-02 19:23:13 -07:00
Jozufozu
5bac9e5224 Things on the screen again
- Use our own model cache that's aware of virtual data.
- Fix memory write issues with instance types.
- Indirect works too, though the cull shaders are still incorrect.
2024-04-02 19:23:13 -07:00
Jozufozu
e892003eb5 Throwing shade
- Actually register instance types.
- Update instance shaders to compile with new flywheel.
- Add cull shaders.
- Update flywheel dep in mods.toml.
- Bump flywheel build.
2024-04-02 19:23:13 -07:00
Jozufozu
8d54e9268a Top 50 errors of all time
- Down to 50 compile errors.
- Port over to new instance type builders.
- Move shaders and delete program specs.
- Switch #use to #include.
- Move content.kinetics.base.flwdata.* up a level.
- Move BeltInstance to the belt package.
- Make all instance fields public.
2024-04-02 19:23:13 -07:00
Jozufozu
458f63820b Starting to visualize it
- All visuals have their compile errors sorted out*
- I realize that flywheel flipped the semantics of rotate so that it now
  takes radians instead of degrees. I fixed everything I noticed but
  this will need follow up.
- Implement collectCrumblingInstances for every visual.

* Flywheel needs to re-implement stealInstance
2024-04-02 19:23:12 -07:00
Jozufozu
5451a9afc7 Less than 400 errors
- Lots of work on updating instances
- Pulled in some old utility classes from flywheel that were removed
2024-04-02 19:23:12 -07:00
Jozufozu
6d9587b463 Doesn't build script
- Update buildscript/gradlew and bump flywheel version
2024-04-02 19:23:12 -07:00
simibubi
1e666e400d Merge remote-tracking branch 'origin/mc1.19/dev' into mc1.20.1/dev 2023-11-02 12:20:29 +01:00
simibubi
aef8947e35 Merge branch 'mc1.18/dev' into mc1.19/dev 2023-11-02 11:55:11 +01:00
simibubi
fff2512a67 Bump version 2023-11-02 11:48:09 +01:00
simibubi
ef1851e1fb Port fixups II 2023-09-20 20:44:51 +02:00
simibubi
f181799185 Merge remote-tracking branch 'origin/mc1.19/dev' into mc1.20.1/dev 2023-09-20 19:23:56 +02:00
simibubi
1439a52a37 3D
- Trains can now travel through Aether Portals
2023-09-20 14:34:01 +02:00
PepperCode1
78cf451f6d Merge branch 'mc1.19/dev' into mc1.20.1/dev
Conflicts:
	gradle.properties
	src/main/java/com/simibubi/create/Create.java
	src/main/java/com/simibubi/create/content/kinetics/fan/FanProcessing.java
	src/main/java/com/simibubi/create/content/trains/bogey/BogeyRenderer.java
	src/main/java/com/simibubi/create/foundation/mixin/client/FixNormalScalingMixin.java
	src/main/java/com/simibubi/create/infrastructure/gametest/tests/TestItems.java
2023-08-24 22:28:32 -07:00
PepperCode1
3bafe6fe40 Merge branch 'mc1.18/dev' into mc1.19/dev
Conflicts:
	gradle.properties
	src/generated/resources/.cache/cache
	src/main/java/com/simibubi/create/Create.java
	src/main/java/com/simibubi/create/compat/storageDrawers/StorageDrawers.java
	src/main/java/com/simibubi/create/content/decoration/copycat/CopycatBarsModel.java
	src/main/java/com/simibubi/create/content/decoration/copycat/CopycatModel.java
	src/main/java/com/simibubi/create/content/equipment/armor/DivingHelmetItem.java
	src/main/java/com/simibubi/create/content/equipment/armor/RemainingAirOverlay.java
	src/main/java/com/simibubi/create/content/kinetics/fan/AirFlowParticle.java
2023-08-24 18:44:37 -07:00
PepperCode1
c5e7ad623f Update Flywheel
- Fix too many implementations of ProcessingRecipe#canSpecifyDuration
returning true
2023-08-23 15:36:19 -07:00
PepperCode1
c052807773 Fix copycat model modifying potentially immutable list
- Perform minor mod initialization clean up
- Bump version to patch E
- Organize imports
2023-08-16 17:03:07 -07:00
simibubi
104985d9ed Server-friendly Item Groups 2023-08-05 23:56:31 +02:00
simibubi
e6759d8ecc Can't touch this
- Fixed collision with belts causing a crash in recent forge versions
2023-07-05 12:38:10 +02:00
simibubi
193c905f24 The Magic Formula
- Re-enable the computercraft integration
- Some ponder oddities
- Update pack format
2023-07-04 23:14:05 +02:00
simibubi
82c5ad6e0f Merge remote-tracking branch 'origin/mc1.19/dev' into mc1.20.1/dev 2023-07-04 18:32:57 +02:00
simibubi
364ad6edf2 Honey Vision
- Moved fluid fog distance and colour handling to their fluid types
- Bumped Flywheel
2023-07-04 12:43:50 +02:00
PepperCode1
28bc839572 Merge branch 'mc1.18/dev' into mc1.19/dev
Conflicts:
	gradle.properties
	src/generated/resources/.cache/cache
	src/main/java/com/simibubi/create/content/contraptions/render/ContraptionRenderDispatcher.java
	src/main/java/com/simibubi/create/content/decoration/copycat/CopycatPanelModel.java
	src/main/java/com/simibubi/create/content/equipment/armor/RemainingAirOverlay.java
	src/main/java/com/simibubi/create/content/schematics/client/SchematicRenderer.java
	src/main/java/com/simibubi/create/foundation/ponder/element/WorldSectionElement.java
	src/main/java/com/simibubi/create/foundation/render/BakedModelRenderHelper.java
	src/main/java/com/simibubi/create/foundation/render/SuperByteBuffer.java
2023-07-03 15:08:50 -07:00
PepperCode1
246543c76b Fix memory leaks
- Fix CopycatPanelModel using wrong state during trapdoor special case
- Update Flywheel
2023-07-03 13:53:51 -07:00
PepperCode1
bd487ce243 Merge branch 'mc1.18/dev' into mc1.19/dev
Conflicts:
	gradle.properties
	src/main/java/com/simibubi/create/compat/computercraft/implementation/ComputerBehaviour.java
	src/main/java/com/simibubi/create/content/equipment/armor/DivingHelmetItem.java
2023-07-03 09:18:23 -07:00
PepperCode1
a947a06263 Fix diving helmet check
- Update Flywheel
- Update buildscipt and Gradle
- Bump version
2023-06-30 14:12:48 -07:00
simibubi
133756f571 Trails & Fails
- Update buildscript for 1.20.1
2023-06-27 04:15:44 +02:00
simibubi
d40476ea87 Merge 0.5.1 to 1.19.3 2023-06-27 03:32:58 +02:00
simibubi
1c30b235dd Merge branch 'mc1.18/dev' into mc1.19/dev 2023-05-24 18:03:43 +02:00
simibubi
5eea1cac70 Copycant
- Fixed Elevator Contraptions misaligning with their contacts after switching target floor mid-travel
- Fixed crash when placing a clipboard into replaceable blocks mid-air
- Fixed a typo in Smart Observer ponder scene
- Fixed funnel flaps being offset to the side when flywheel is disabled
- Fixed dyed valve handle using incorrect block particle textures
- Fixed copycat blocks able to take on invalid materials through the use of data commands
- Copycat blocks no longer retain nbt contents of their contained material's item when loaded from a schematic
- Fixed pipe connector attachments missing textures on some orientations
- Players can now sneak-pick to receive the copycat block itself, rather than its applied material
- Fixed value input screen not closing correctly when 'use' keybind is not on its default setting
- Deployers no longer fail to activate bearings and other components with value input slots
- Fixed an incompatibility between legacy copper pack and xycraft override
- Fixed netherite diving suit not protecting from fire damage when Quark is installed
- Attempt to fix lighting issues with elevator contacts
- Schematic and Quill no longer displays the full directory path in its confirmation message
- Fixed z-fighting on metal bars models
2023-05-23 21:26:59 +02:00
simibubi
f27f4b0f2e Merge remote-tracking branch 'origin/mc1.18/0.5.1' into mc1.19/0.5.1 2023-05-21 22:27:54 +02:00
simibubi
9c41acfb2a Backport of the century
- Flywheel is now included (jij) in Create jars on 1.18.2
2023-05-20 22:14:06 +02:00
PepperCode1
eaf71102a7 Update JEI Maven and FG 2023-05-20 08:37:56 -07:00
simibubi
150fc44d04 Merge remote-tracking branch 'origin/mc1.18/0.5.1' into mc1.19/0.5.1 2023-05-13 13:19:14 +02:00
simibubi
3f31353fea Start as Patch A 2023-05-13 01:58:14 +02:00
simibubi
b6003ea6a4 Port new Changes 2023-05-12 23:04:13 +02:00
simibubi
500019465a Merge remote-tracking branch 'origin/mc1.18/0.5.1' into mc1.19/0.5.1 2023-05-12 22:59:18 +02:00
simibubi
ab221b9d5b Merge branch 'mc1.18/dev' into mc1.18/0.5.1 2023-05-12 15:13:45 +02:00
simibubi
3ad4195dd6 Squashed commit of the following:
commit a162e18c9c4d91c4020e86cf718d59d3a33b2817
Merge: 374848f97 beb61708a
Author: simibubi <31564874+simibubi@users.noreply.github.com>
Date:   Fri May 12 13:40:58 2023 +0200

    Merge branch 'mc1.18/dev' into mc1.18/computercraft

commit 374848f978
Author: simibubi <31564874+simibubi@users.noreply.github.com>
Date:   Fri May 12 13:22:29 2023 +0200

    Compilation dependency toggle

commit b2cd60b619
Merge: 8e1e4e8bd ee3a079ba
Author: simibubi <31564874+simibubi@users.noreply.github.com>
Date:   Wed May 10 14:37:32 2023 +0200

    Merge pull request #4650 from ChristianLW/mc1.18/computercraft

    Small tweaks to the wiki pages for ComputerCraft integration

commit ee3a079bac
Author: Christian L.W <bebeu@bebeu.dk>
Date:   Thu Apr 13 00:55:20 2023 +0200

    Small tweaks to the wiki pages

commit 8e1e4e8bd3
Author: caelwarner <caelawarner@gmail.com>
Date:   Mon Mar 13 18:31:56 2023 -0700

    Added computer to display source ponder tag

    - Added advanced computer to display source ponder tag
    - Added missing lang entry for computer display source

commit 952941e5fc
Author: caelwarner <caelawarner@gmail.com>
Date:   Mon Mar 13 16:31:16 2023 -0700

    Added documentation for train station peripherals and train schedules

    - Added in depth documentation for working with train stations and train schedules in Lua
    - Fixed small formatting issues in Lua-Rotation-Speed-Controller.md and Lua-Sequenced-Gearshift.md

commit 7f3ca1cfa0
Author: caelwarner <caelawarner@gmail.com>
Date:   Mon Mar 13 16:29:05 2023 -0700

    Added isTrainEnroute to station peripheral API

    - isTrainEnroute checks if a train is currently navigating to the station
    - Reworded null station exception to "station is not connected to a track"
    - Refactored StationPeripheral#inAssemblyMode to StationPeripheral#isInAssemblyMode
    - Added a check to StationPeripheral#disassemble to make sure the station isn't in assembly mode

commit fac1ebcd3f
Author: caelwarner <caelawarner@gmail.com>
Date:   Sat Mar 11 16:12:58 2023 -0800

    Added documentation for most peripherals

    - Lua documentation has been added for all peripherals except the train station (not looking forward to writing that one)
    - This documentation will be added to the GitHub wiki pages

commit 3e21996984
Author: caelwarner <caelawarner@gmail.com>
Date:   Sat Mar 11 15:54:36 2023 -0800

    Updated DisplayLinkPeripheral#write to move cursor to the end of the text

    - This change was made to be more inline with ComputerCraft's builtin display API

commit 7141c10025
Author: caelwarner <caelawarner@gmail.com>
Date:   Sat Mar 11 11:45:43 2023 -0800

    Added isTrainImminent and hasSchedule to train station API

    - Added isTrainImminent to check if a train is incoming to the station and hasSchedule to check if the currently present train has a schedule
    - Added StationPeripheral#getTrainOrThrow to consolidate repetitive null checks

commit 909484ed5b
Author: caelwarner <caelawarner@gmail.com>
Date:   Sat Mar 11 11:15:58 2023 -0800

    Added getSchedule to train station lua API

    - Added getSchedule which serializes the currently present train's schedule into a lua table
    - Refactored StationPeripheral#setSchedule to use a more generic method of serializing NBT tags to lua tables
    - Moved schedule entry special data from root tag to "Data"
    - Added StringHelper#camelCaseToSnakeCase
    - Added variety of put methods to CreateLuaTable

commit 31ad3aa671
Author: caelwarner <caelawarner@gmail.com>
Date:   Wed Mar 8 18:22:23 2023 -0800

    Extended train station peripheral API

    - Train station peripherals can now assemble and disassemble trains, check if the station is in assembly mode, set the assembly mode of the station, get and change the station name, check if a train is present at the station and get and change the currently present train name.
    - Refactored StationEditPacket. Moved most of the logic that was previously in StationEditPacket to StationTileEntity. This allows us to call this logic without having to send a packet.
    - Made Train#owner nullable. This is needed so that computers can assemble trains. All Train#owner is currently used for is to display the train status to the correct play.

commit 574cd93a89
Author: caelwarner <caelawarner@gmail.com>
Date:   Wed Nov 30 00:37:47 2022 -0800

    Serialize hasAttachedComputer in ComputerBehaviour

    - This eliminates some edge cases were peripherals don't realize they're being controlled by a computer on a world save and load

commit 94e3ed44ad
Author: caelwarner <caelawarner@gmail.com>
Date:   Wed Oct 26 16:57:12 2022 -0700

    Added ComputerScreen

    - ComputerScreen shows that tile entity currently has computers attached and therefore cannot be controlled manually

commit 9afdcaded7
Author: caelwarner <caelawarner@gmail.com>
Date:   Thu Oct 20 10:18:37 2022 -0700

    Refactored PeripheralBase to SyncedPeripheral

commit 7d47fdcd06
Author: caelwarner <caelawarner@gmail.com>
Date:   Wed Oct 19 22:45:47 2022 -0700

    Made LuaFunction's final

commit 56a1210fff
Author: caelwarner <caelawarner@gmail.com>
Date:   Wed Oct 19 22:39:38 2022 -0700

    Created ComputerBehaviour behaviour

    - ComputerBehaviour replaces ComputerControllable and SyncedComputerControllable

commit 19d283b923
Author: caelwarner <caelawarner@gmail.com>
Date:   Wed Oct 19 16:05:48 2022 -0700

    Moved all peripheral classes to computercraft.peripherals package

commit ab18034b98
Author: caelwarner <caelawarner@gmail.com>
Date:   Wed Oct 19 15:58:56 2022 -0700

    Added Train Station as peripheral

    - Train station can set a new auto-schedule for the train currently at the station
    - Added CreateLuaTable to add helper functions for working with lua tables
    - Added StringHelper util class to convert snake case to camel case

commit 1091f3227c
Author: caelwarner <caelawarner@gmail.com>
Date:   Thu Oct 6 21:11:24 2022 -0700

    Changed Display Link Peripheral API

    - Changed the Display Link Peripheral API to be more in line with the Monitor API
    - Added write, setCursorPos, getCursorPos, getSize, isColor, isColour, clearLine
    - Removed void writeLine, setLine, writeLines, setLines

commit 18bfb216b1
Author: caelwarner <caelawarner@gmail.com>
Date:   Thu Oct 6 02:50:41 2022 -0700

    Changed method of checking if a computer attached

    - After talking with SquidDev from CC: Tweaked I've changed to monitoring IPeripheral#attach and IPeripheral#detach for changes in the number of computers connected to the network, then updating the client using AttachedComputerPacket
    - This works with wired full modems, wired cabled modems and directly connected computers
    - Added SyncedPeripheralBase and SyncedComputerControllable for TE's and peripherals that want to be aware of attached computers

commit 96dc4db6dc
Author: caelwarner <caelawarner@gmail.com>
Date:   Tue Oct 4 21:11:38 2022 -0700

    Sequenced Gearshift screen "greys out" when being controlled by a computer

    - This is to stop players from trying to using both the builtin sequencing and a computer to control the Sequenced Gearshift at the same time, leading to undefined behaviour
    - The "greyed out" screen should have a message added explaining why it's greyed out.
    - Added ComputerControllable#isComputerControlled to check if a tile entity is connected to a modem

commit 9a80781401
Author: caelwarner <caelawarner@gmail.com>
Date:   Tue Oct 4 19:36:08 2022 -0700

    Added PeripheralBase

commit d404f07319
Author: caelwarner <caelawarner@gmail.com>
Date:   Mon Oct 3 20:46:16 2022 -0700

    Added invalidateCaps

    - Changed setRemoved to invalidateCaps. I don't know why I wasn't just using invalidateCaps from the beginning

commit 654476d9f3
Author: caelwarner <caelawarner@gmail.com>
Date:   Mon Oct 3 20:05:25 2022 -0700

    Added Rotation Speed Controller and Sequenced Gearshift as peripherals

    - Rotation Speed Controller can get and set targetSpeed
    - Sequenced Gearshift can rotate by a certain angle and move a certain distance

commit 1420406ab7
Author: caelwarner <caelawarner@gmail.com>
Date:   Mon Oct 3 16:38:12 2022 -0700

    Added Speedometer and Stressometer as peripherals

    - Speedometer can get current speed
    - Stressometer can get current stress level as well as network stress capacity
    - Made GaugeTileEntity abstract

commit 47b8619d07
Author: caelwarner <caelawarner@gmail.com>
Date:   Mon Oct 3 16:17:05 2022 -0700

    Refactored peripheralHandler to peripheral

    - peripheralHandler was the wrong name. It's just a peripheral.
    - Changed peripheral type from "cdl" to "Create_DisplayLink"
    - Added equals function to DisplayLinkPeripheral

commit 6591c2d46e
Author: caelwarner <caelawarner@gmail.com>
Date:   Mon Oct 3 14:29:04 2022 -0700

    ComputerCraft integration for Display Links

    - CC computers can now control display links through a variety of functions
    - Added ComputerControllable interface to define a tile entity as controllable by CC computers
    - Added CC: Tweaked soft dependency
2023-05-12 13:41:28 +02:00
simibubi
c4ffe8dabd Merge and port new Changes 2023-05-08 18:02:35 +02:00
PepperCode1
5cf74212d9 Merge remote-tracking branch 'origin/mc1.19/dev' into mc1.19.3/dev
Conflicts:
	build.gradle
	gradle.properties
	src/main/java/com/simibubi/create/content/contraptions/relays/encased/EncasedCogwheelBlock.java
	src/main/java/com/simibubi/create/content/contraptions/relays/encased/EncasedShaftBlock.java
2023-03-08 17:55:59 -08:00
simibubi
e24d6449cc Merge branch 'mc1.18/dev' into mc1.19/dev 2023-03-08 14:32:50 +01:00