Commit Graph

49 Commits

Author SHA1 Message Date
Whatstone
b5529ecf2b Batchable lathe jobs, editable lathe job order (#38624)
* batchable lathe jobs, editable order

* requested changes

* LatheComponent comment, menu strings
2025-08-24 17:02:47 +02:00
Tayrtahn
3a8974f574 Improve lathe queue performance (#38583)
* Use an actual Queue

* Store ProtoIds instead of prototypes

* Network as NetListAsArray

* Remove Serializable & NetSerializable from LatheRecipePrototype

* Convert CurrentlyProducing too

* No point using NetListAsArray<T> if you're going to .ToArray() it anyways.

---------

Co-authored-by: PJB3005 <pieterjan.briers+git@gmail.com>
2025-06-27 00:08:01 +02:00
Leon Friedrich
f46bb301fb Fix lathe arbitrage test (#34449)
* Fix lathe arbitrage test

* Add refinables

* nullable

* nullable2

* Fix merge

* Ignore failures
2025-04-17 21:07:51 +10:00
Tayrtahn
6f925dd610 Fix prototypes so they pass analyzer checks (#35435) 2025-02-24 15:21:59 +11:00
deltanedas
1f5fab5761 move lathe recipes into packs (easier for forks and maintaining) (#33095)
* add LatheRecipePackPrototype

* change Lathe and EmagLathe to use packs

* add AddRecipesFromPacks helper to SharedLatheSystem

* update lathe logic to work with packs and clean up some stuff

* migrate individual recipes to recipe packs

* update client

* remove node/artifact scanner from techs

* :trollface:

* fix test and make it include emag recipes

* add test that every dynamic recipe must be researched

* pro

* fix

* fix

* fix all tests, genuinely good test i wonder who made it

* add unused uranium and incendiary drozd mags to tech and lathe

* add recipes

* add incendiary prototype

* undo some changes

* troll

* :trollface:

* true

Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>

* shitmed real

Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>

* update funny test

* :trollface:

* :trollface:

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: pathetic meowmeow <uhhadd@gmail.com>
2025-02-07 19:22:49 +01:00
ScarKy0
253a9fbdf1 Seperate EMAG into EMAG and Authentication Disruptor (#34337) 2025-01-29 23:05:47 -05:00
deltanedas
3bdd2e3a87 reduce lathe recipe copy pasta (#31515)
* add inheritance to lathe recipes and make result an override

* add GetResult method to lathe system

* make other parts of the code use GetResult

* clean up the stock parts yml

* remove unused apu boards from dynamic recipes

* make inverse dictionary public so test doesnt have to copy paste

* revert result override stuff

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2024-08-29 15:36:29 -04:00
Nemanja
85b7d183bd Blueprints (#31138)
* Blueprints

* Update tables_loot.yml

* doink

* mark as required
2024-08-25 22:06:50 +10:00
Nemanja
ada6455b17 Make printing from ore procecssors slightly more bearable (#31074)
* Make printing from ore procecssors slightly more bearable

* Update sheet.yml
2024-08-17 15:12:55 +10:00
Nemanja
2c26be606f Add support for printing reagents in lathes (#30476)
* Add support for reagents in lathes

* missing locale
2024-08-01 14:15:05 +10:00
Nemanja
c4c4a934af fix lathe screen animations (#30479) 2024-07-30 14:03:46 +10:00
Nemanja
729e67af7f Machine-code cleanup (#28489) 2024-06-05 16:23:23 -04:00
Nemanja
bd46d7cc8a make lathe visuals not required (#24757) 2024-01-31 13:50:40 +11:00
Nemanja
73e94dfa92 Lathe Categories (#24247)
* Lathe Categories

* serilog my beloathed
2024-01-19 17:45:03 -07:00
Nemanja
1c11332fa4 Flatpacks and the Flatpacker 1001 (#23338)
* Flatpacker and flatpacks

* ok that's good enough

* convert solars/AME to flatpacks

* mats, mats, we are the mats

* basic mechanics are DONE

* thing

* final UI

* sloth

* rped jumpscare

* rename
2024-01-03 17:16:02 +11:00
Ilya246
49dbbc5721 fix emagged lathes (#23318)
* implement

* pass uid

* fix

* fix dementia

* event implementation

* fix
2024-01-02 02:11:13 -05:00
Hannah Giovanna Dawson
f850047341 Migrate Lathe Material Ejection Code to MaterialStorage (#23199)
* SS14-23184 Migrate Lathe Material Ejection Code to MaterialStorage

The lathe material ejection code acts as a do-nothing
man-in-the-middle system that does work that would be
reasonable for any MaterialStorage-using machine to
use. This has been fixed by migrating the ejection
code to MaterialStorage, allowing anything that uses
the system to eject mats it is storing.

* Fix some YAML references. Science!!
2023-12-30 20:08:33 -05:00
Nemanja
c3f81bfe03 Hyper convection lathes and industrial ore processor (#23202)
* Hyper-convection lathes and industrial ore processor

* balance

* gold... why not?

* review

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2023-12-31 03:18:58 +11:00
DrSmugleaf
f560f88eb5 Remove 700 usages of Component.Owner (#21100) 2023-10-19 12:34:31 -07:00
DrSmugleaf
a44fa86b68 Update trivial components to use auto comp states (#20539) 2023-09-28 16:20:29 -07:00
DrSmugleaf
a88e747a0b Refactor serialization copying to use source generators (#19412) 2023-08-22 18:14:33 -07:00
chromiumboy
a39fa80d58 Add lathe material ejection (#19218)
This completes PilgrimViis' (now closed) PR 16398. It addresses issue 10896, by allowing materials to be ejected from most lathes (except the ore processor and sheet-meister 2000)

* - Refinements to the material ejection UI
- Made the lathe UI default to a slightly larger size
- Fixed an offset issue with the label of the item currently being printed in the build queue UI

* Allow the materiel reclamation UI to pop if there is material left in the lathe, but not enough to print any sheets

---------

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
2023-08-17 09:22:01 -08:00
ubis1
e203423665 Emaggable protolathe (#18456) 2023-08-08 00:21:04 +10:00
Nemanja
8411739e00 Fix secfab being able to print protolathe items (#17443) 2023-06-18 16:35:19 -06:00
Nemanja
57f2a768a0 Material Reclaimer (#14969)
* Material Reclaimer

* Fix this test

* autostack output, tweak volume, add upgrade examine

* whitelist AND blacklist support

why not

* trying so hard to get this fucking test to work

* EmoGarbage delves into MaterialArbitrageTest, never to return

* VV and restore cloth to glory

* make the system more robust

* even more stuff has composition; add blacklist for important items

* fix test fails

* convert recycling

* forgor :sadge:

* lol

* simply a modiCUM of doc commentary
2023-04-09 23:38:20 -05:00
Leon Friedrich
cf509c1e38 Add material arbitrage tests (#13315) 2023-01-15 00:57:59 -08:00
Nemanja
26786b5839 decouple material insertion visualization from lathes (#13242) 2023-01-08 13:36:50 +11:00
Nemanja
4eee1ee9b2 clean up infinite researchsystem shitcode (#13136)
* clean up infinite researchsystem shitcode

* fml some more shit

* make syncing work logically

* naming naming naming
2022-12-25 15:22:23 -06:00
DrSmugleaf
7fbc2608e8 Remove redundant read-only VV from datafields (#12626) 2022-11-16 20:22:11 +01:00
Nemanja
ac838025f0 Infinite lathe fix again (#12384)
* lathe fix again

fuck me i need to test shit more

* Whitespace
2022-11-04 14:13:07 -05:00
Nemanja
6fd083af0b fix infinite lathe printing bug (#12343) 2022-11-01 18:05:00 -05:00
Nemanja
3ab98e320a lathe machine upgrading (#12032) 2022-10-30 18:12:11 +11:00
Nemanja
2e7dcb1ed8 Lathe Refactor and ECS (#11201)
* lathe and material storage refactor

* materialStorage ECS

it kinda sus tho

* beginning the lathe shitcode dive

* couple lathe visuals and lathe system

* lathe changes and such

* dynamic lathe databases

* rewrote internal logic

on to ui

* da newI

* material display clientside

* misc ui changes

* component state handling and various other things

* moar

* Update Content.Shared/Lathe/LatheComponent.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* first volley of sloth review

* more fixes

* losin' my mind

* all da changes

* test fix and other review

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-09-16 18:49:05 -05:00
Leon Friedrich
bbd6482420 Fix lathe unanchor interaction & general cleanup (#10156) 2022-08-03 17:38:56 -07:00
Nemanja
52d2cc1de2 Prevent erroneous materials from being placed in lathes. (#9454)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-07-07 13:44:31 +10:00
wrexbe
bc68ac96dd Cleanup the namespaces (#8132) 2022-05-13 17:59:03 +10:00
Rane
93cdca4f82 Partial lathe ECS, fix cursed lathe visualizer, a bit more audiovisual feedback for lathes (#7238)
* Prototype that's mostly borked rather than completely borked

* ECS inserting mats

* Partial ECS mostly done, needs cleanup and visualizer

* Replace timers

* Power visualizes at least

* First ""working"" version

* Clean up all lathes

* Colors

* Fix animation timing

* Fixes greyscale, adds a bunch of colors

* Give every (used) material a color

* Made most lathes take long enough you can at least see there's some sort of animation

* Insertion feedback popup

* Sound for circuit printer and uniform printer

* Fix queueing, optimize update

* Remove mono crash

* cleanup

* Fix test failure

* Techfab inserting sprite

* Cleanup and commenting

* Fix bug in CanProduce check

* Fix UI resolves

* Mirror review stuff
2022-04-17 17:34:14 +10:00
mirrorcult
ec4d4688c7 Seal/abstract/virtual everything (#6739) 2022-02-16 18:23:23 +11:00
wrexbe
17db0775c8 Auto comp (#6416) 2022-02-02 14:35:40 +11:00
wrexbe
5ceb2372bf Clean up some warnings (#6088)
* Clean up some warnings

* Remove nullable enable

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2022-01-09 22:10:36 -06:00
Leon Friedrich
2a7c84a8dd Fix some lathe recipes (#5941) 2021-12-30 01:19:49 +11:00
metalgearsloth
88bdf0ce61 Add some more prototype serializers (#5934) 2021-12-30 00:48:18 +11:00
Vera Aguilera Puerto
cdc8336695 Even more resolve removals. 2021-12-08 17:41:14 +01:00
Vera Aguilera Puerto
5cd42c9ad6 Inline UID 2021-12-03 15:53:09 +01:00
Vera Aguilera Puerto
2ff4ec65d5 Inline TryGetComponent completely 2021-12-03 14:05:27 +01:00
metalgearsloth
b68ca21480 Add typeserializer for lathe db 2021-12-01 12:38:50 +11:00
Visne
b7dc3c81ae Remove redundant #nullable enable (#4275) 2021-07-16 17:37:09 -07:00
Acruid
59e5cc5e3c Remove Static Component NetIds (#4247)
* Remove the unnecessary NetID property from ComponentState.

* Remove Component.NetworkSynchronizeExistence.

* Removed Component.NetID.

* Adds component netID automatic generation.

* Removed NetIdAttribute from serverside components with no corresponding clientside registration.

* Completely remove static NetIds.

* Renamed NetIDAttribute to NetworkedComponentAttribute.

* Add GenerateNetIds calls to client and server entry points.
Add test to make sure auto generated NetIds are identical.

* Component changes when rebasing that I am too lazy to rewrite into the branch.

Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2021-07-12 10:32:10 +02:00
DrSmugleaf
ff1a2d97ea Re-organize all projects (#4166) 2021-06-09 22:19:39 +02:00