Commit graph

91 commits

Author SHA1 Message Date
Whatstone
a257d91f5f
Cleanup: Modernize MaterialReclaimerSystem (#46281)
* MaterialReclaimerSystem: cleanup

* more cleanup

---------

Co-authored-by: Pok245 <113675512+Pok27@users.noreply.github.com>
2026-10-05 01:54:56 +00:00
SlamBamActionman
64319b3719
Fix smelters deleting unintended non-physics entities (#46131)
Initial commit
2026-09-22 21:43:10 +00:00
SlamBamActionman
0cd76c7bac
Add industrial smelters (admin only) (#43651)
* Initial commit with shredder base functionality

* Fix items being deleted and make items continue moving after a grid tile gets deleted

* Make a bunch of previously unpullable/unrecyclable things work

* temp commit

* Fix the recycling hitbox to actually be good code

* Fix material spawning via tiles

* Finish up the prototype visuals for the shredder

* SHRED EVERYTHING

* Add reduced efficiency for recycling with shreder

* Fix miss in conflict merge

* Make more things pullable

* Update shredder textures to look different to recyclers

* Remove unused

* "fix" repairability and sprites

* Update sprites, set up TODO-s

* Fix switches, description

* Fix up some comments

* Add "Do Not Map" to the smelter

* Add to meta.json

* Review fixes

* Review changes

* Review changes

* Remove readonly in new system

* Aaaand partial class

* Fix the final test issues

* Update and resolve merge conflicts

* Update the impulse strength to match new mass values

* Fix issues after merge conflict

* Update size, fix physics resolve errors, prevent computers/circuitboards from being deleted

* Review comments

* Fix tiles giving steel

* Add a todo about tilestacking
2026-09-22 09:04:21 +00:00
Whatstone
a023e5784c
Cleanup: Remove byte order markers from most files (#45796) 2026-09-17 23:23:54 +10:00
deltanedas
cf7fde3d62
Big prototype and datafield cleanup (#45202)
* giant protoid cleanup

* yml changes

* !

---------

Co-authored-by: deltanedas <@deltanedas:goida.zip>
2026-08-12 02:07:22 +00:00
ScarKy0
3c0f62c006
Changeling Resilience (#44421)
* boom

TODO:
- actual organs

* silly! silly! silly! silly!

* consentual murder

* cleaning

* how woke

* fuck everything

* remove organ replacement, do metabolizer instead

* oops

* thank you, comment i left for myself!

* no ammonia immunity

* whitespace

* Handle a few small things myself

Signed-off-by: Connor Huffine <chuffine@gmail.com>

* some requested changes

* Remove TryGib and Friends

Signed-off-by: Connor Huffine <chuffine@gmail.com>

* Make changelings indestructible

Signed-off-by: Connor Huffine <chuffine@gmail.com>

* Recycler

Signed-off-by: Connor Huffine <chuffine@gmail.com>

* Fix recycler

* Add comments

* Opps!

* Remove metabolizer

* Opps metabolizer system and remove systems!

* Forgot to add them...

* typo

Co-authored-by: SnappingOpossum <snappingopossum@outlook.com>

* Renamed component, fix various systems

* stuff

---------

Signed-off-by: Connor Huffine <chuffine@gmail.com>
Co-authored-by: Connor Huffine <chuffine@gmail.com>
Co-authored-by: beck-thompson <beck314159@hotmail.com>
Co-authored-by: SnappingOpossum <snappingopossum@outlook.com>
2026-07-23 17:49:52 +00:00
Whatstone
a8453723d8
Cleanup: ProtoMan Part 1 - remove Shared EntitySystem IPrototypeManager instances (#44386)
* Remove Shared System IPrototypeManager instances

* Remove RecipeManager IPrototypeManager instance

* Fix ItemSystem IPrototypeManager refs, use TryComp

* SharedItemSystem changes, EntWhitelist CompName

* HasComponent->HasComp
2026-06-29 10:18:44 +00:00
InsoPL
1d3e8b3c30
Fix for mispredict when using tools on recycler. (#43766)
* predict

* fix
2026-05-28 18:35:54 +00:00
Pieter-Jan Briers
5168b5f3d4
IoC source gen compatibility (#43863)
* IoC source gen compatibility

Can be merged before or after https://github.com/space-wizards/RobustToolbox/pull/6549 doesn't really matter.

* Missed a spot
2026-05-09 03:29:58 +00:00
ArtisticRoomba
376f16504c
Content.Shared EntityQuery<T> dependency injection refactor (#43498)
* part 1

* second pass

* final fix

* last fix i swear

* an even bigger genius

* regex missed this

* should be all of em?

* oops

* yeah

* Revert "should be all of em?"

This reverts commit 4dd54d1b9a76977b4cf8d6008358e4dacdee6eb1.

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2026-04-11 21:30:36 +00:00
pathetic meowmeow
d0c2734dad
Nubody (#42419)
* Nubody

* fix test fails

* gibbing

* lung test returns

* doc comment

* hand organ test

* giblet test

* yaml formatting

* returning

* relocate

* trimming

* re-smite

* oops thusd tweak

* arachnids have slower metabolism i guess

* never mind the old behaviour is bad actually

* rider whyyy

* style changes and allat

* fix collision

---------

Co-authored-by: Princess Cheeseballs <66055347+Pronana@users.noreply.github.com>
2026-01-17 00:39:35 +00:00
slarticodefast
a428130d45
Remove blacklist methods in EntityWhitelistSystem (#40932)
* replace blacklist methods

* VS is trolling me
2025-11-24 00:38:08 +00:00
slarticodefast
85158a3d48
Fix industrial reagent grinder bug, second attempt (#39690)
* fix recycler 3

* Update Resources/Prototypes/Entities/Structures/Machines/reagent_grinder.yml
2025-08-16 21:54:15 +02:00
Nemanja
f04f19a7aa
Fix ore silo clients showing up when out of range (#36741) 2025-04-20 11:00:23 +10:00
Nemanja
f8ff7aee92
Local Material Silo (#36492)
* Material Silo

* fix board, fix copyright

* a bit of review.... for the vibe....

* a tiny bit of review

* 4 spaced

* sloths no good very tiny nitpick

* fix ui flickers

* oops

* slightly lower range

* Sloth Review

---------

Co-authored-by: ScarKy0 <scarky0@onet.eu>
2025-04-19 09:43:17 +10:00
Tayrtahn
86aa82f2b6
Cleanup: Remove redundant prototype name specifications (#35793)
* Remove redundant prototype name specifications

* These can stay
2025-03-19 19:30:31 +01:00
Winkarst
02f0190c35
Cleanup: Pass in `IComponentFactory in EntityPrototype.TryGetComponent calls inside SharedMaterialStorageSystem` (#35463)
Cleanup
2025-02-24 18:58:25 +01:00
Tayrtahn
6f925dd610
Fix prototypes so they pass analyzer checks (#35435) 2025-02-24 15:21:59 +11:00
ScarKy0
253a9fbdf1
Seperate EMAG into EMAG and Authentication Disruptor (#34337) 2025-01-29 23:05:47 -05:00
Zylofan
42a1e02261
Seismic charge now craftable (#32459)
* when tryInsertBlueprint is called it now also calls UpdateMaterialWhitelist on the ent so that it can accept new materials if needed.

* Changed the previous commit to now just have sharedMaterialStorageSystem subscribe to TechnologyDatabaseModifiedEvent which will call  UpdateMaterialWhitelist.

* Empty-Commit
2024-10-01 20:56:49 -06:00
LucasTheDrgn
b51d9382c0
Returned functionality to industrial reagent grinders (#31903)
* Returned functionality to industrial reagent grinders without un-nerfing recyclers

* Limited industrial reagent grinder to only extractable solutions
2024-09-07 17:47:02 -06:00
Nemanja
476c7751c4
Recycler Overhaul (#30802)
* Recycler overhaul

* remove
2024-08-18 21:39:00 -06:00
slarticodefast
bb2981400c
replace all uses of TryGetContainingContainer with non-obsolete overload (#30583)
* replace all uses of TryGetContainerContainer with non-obsolete overload

* rerun
2024-08-04 15:38:53 +10:00
metalgearsloth
dabf3d1521
Fix material storage going BRRT (#29167)
If the volume hits 0 we just remove it.
2024-06-18 17:47:19 -04:00
Plykiya
c5ff647ca6
Replace obsolete EntityWhitelist IsValid usages part 2 (#28506) 2024-06-03 17:40:03 -04:00
Plykiya
ba04f94e48
Emergency Fix for Whitelist logic (#28510)
fix issue

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-06-02 02:21:07 -04:00
Plykiya
d6ba166d3b
Replace obsolete EntityWhitelist IsValid usages (#28465)
* Replace obsolete whitelist is valid with whitelist system

* Consistency

* Fix logic

* Bork

* I figured out how to get whitelists on the client lol

* test fail

* woops

* HELP ME FUNCTIONS

* Fix errors

* simplify

---------

Co-authored-by: plykiya <plykiya@protonmail.com>
2024-06-01 23:10:24 -04:00
AJCM-git
09256cfaa5
Makes machine parts stackable, removes unused field in stack prototypes (#28434)
* Makes machine parts stacks, removes unused field in stack prototypes

* forgor

* Fix tests

* Fixes lathe construction. Yes. This sucks but there's no better way that doesnt involve refactoring machine parts completely

* detail

* a
2024-06-01 13:49:28 -04:00
SlamBamActionman
d7484ae9f5
Fix recycled containers deleting items inside them (#26045)
* Removes items from containers in reclaimers

* Made it into an event instead

* Sloth review comment

* Fix indentation and rename field
2024-03-19 13:36:21 +11:00
Pieter-Jan Briers
e00f74505c
Use new ComponentPauseGenerator (#25183)
Also includes some (non critical) changes to the solution file to re-organize the Roslyn components.
2024-02-26 14:36:19 +11:00
Nemanja
a9e89ab372
Rip out remaining machine upgrades (#24413)
* Rip out remaining machine upgrades

* eek
2024-01-23 09:13:04 +11: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
Nemanja
2b01899d63
Make the material ejection control completely generic (#23308)
* Finish decoupling material ejection from lathes

* commented
2023-12-31 23:16:25 -08: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
TemporalOroboros
d23c8d5c19
Revert 'Revert 'Solution Entities'' (#23168) 2023-12-29 08:47:43 -04:00
Emisse
938d6d9945
Revert "Solution Entities" (#23160)
Revert "Solution Entities (#21916)"

This reverts commit d75e743dd7.
2023-12-28 20:45:42 -07:00
TemporalOroboros
d75e743dd7
Solution Entities (#21916)
* Creates Content.Shared.Chemistry.Solutions
Copies Solution class to new namespace
Obsoletes old Solution class

* Switches over to the Solutions.Solution Solution

* Creates Content.Shared.Chemistry.Containers
Copies relevant components/systems to the new namespace
Obsoletes old versions

* Switches over to the Containers.XYZ namespace

* Creates SolutionSystem and obsoletes old SolutionContainerSystem methods

* Start using SolutionSystem for Solution manipulation

* EnumerateSolutions

* Move TryGetMixableSolution

* Move EnsureSolution to Server

* Create Solution Entities

* Stop using obsolete solution system methods

* Fix prototype component tests

* Add using ..Audio.Systems; back

* Wrap solution container slots in ContainerSlots

* Actually add the slot to the solution container map

* Dirty SolutionContainerComponent when ensuring solutions

* Revert namespace changes

* Remerge SolutionSystem and SolutionContainerSystem

* SolutionContainerManagerComponent refactor

* Avoid wrapping necessary code in DebugTools.Assert as it is removed when compiling for release

* Readd examine reagent sorting

* Fix errors

* Poke tests

* Fix solution names not being applied

* Fix WoolyComponent including statement

* Fix merge skew

* Fix compile errors

* Make reactions use solntities

* Reindent solution class namespace

* Field attribute changes

* AutoGenerateComponentState for SolutionContainerComponent

* SolutionContainerComponent -> ContainedSolutionComponent

* ref ReactionAttemptEvent

* Denetwork preinit solutions

* Misc 1

* Nullable TryGetSolution out vars

* Cache associated solutions

* Fix merge skew

* Use explicit regions in SharedSolutionContainerSystem.Capabilities

* Add debug assert

* Use explicit regions in SharedSolutionContainerSystem.Relay + ref SolutionContainerChangedEvent

* ContainedSolutionComponent.Name -> ContainedSolutionComponent.ContainerName

* SolutionComponent doc comments

* Implicit DataField names and property purge

* ReagentEffect DataField names

* Local variables for readability

* Sort using statements + Entity<T> event handlers

* Fix compile erros

* Fix compile errors

---------

Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2023-12-28 17:58:14 -08:00
TemporalOroboros
7a77d6d5dd
Content ecs containers (#22484) 2023-12-28 01:30:03 -04:00
metalgearsloth
269c93245d
Unrevert audio (#21330)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2023-11-27 22:12:34 +11:00
DrSmugleaf
2d58d19b07
Make all prototype types partial (#21374) 2023-11-01 19:56:23 -07:00
metalgearsloth
5b8f3c48c4
Revert "Update submodule to 175.0.0 (#21318)" (#21319) 2023-10-29 15:29:30 +11:00
metalgearsloth
9b1b3e03ed
Content audio (#20862) 2023-10-29 14:58:23 +11:00
ShadowCommander
c20bf50f40
Fix sound on material reclaimer (#21030)
* Fix saw sound error on client

The sound tried to play using shared PlayPvs which doesn't work on client. PlayPredicted handles client and server.

Fixed NextSound not playing again while continuously gibbing items.

* Fix duplicate splat sound on Recycler gibbing
2023-10-15 23:30:35 -06:00
DrSmugleaf
9bcf67753a
Replace string data fields with LocId where relevant (#20883) 2023-10-10 23:06:24 -04:00
DrSmugleaf
a44fa86b68
Update trivial components to use auto comp states (#20539) 2023-09-28 16:20:29 -07:00
deltanedas
db2a4478b0
show non-sheet material units in lathe (#19896)
* locale for material units

* use material units in lathe ui

* give units to non-sheet materials

* :trollface:

* use volume properly

* :trollface:

* review

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-09-07 22:11:10 -04:00
Leon Friedrich
e4ca6f4fb9
Allow solutions to store extra reagent data (#19323) 2023-09-05 07:55:10 +10:00
Nemanja
235da3812a
fix recycler (#19590) 2023-08-27 17:01:53 -06:00
Pieter-Jan Briers
bf16698efa
Portable Generator Rework (#19302) 2023-08-25 11:40:42 -07:00
deltanedas
4935a95687
borg construction module (#19260)
* cant insert materials into machine if unremoveable

* lingering materials

* add construction cyborg module

* fix empty stack color

* lathe recipe

* a

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-08-23 17:34:39 -04:00