Commit Graph

47 Commits

Author SHA1 Message Date
Pieter-Jan Briers e475512e7b Fix error log when recycling something with small material counts. (#32723)
* Fix error log when recycling something with small material counts.

MaterialStorageSystem.SpawnMultipleFromMaterial now doesn't call StackSystem.SpawnMultiple if it tries to spawn zero. This happens because the recycler calls SpawnMultipleFromMaterial for everything recycled, even if the amount it has stored is < the amount for one sheet.

* Update Content.Server/Materials/MaterialStorageSystem.cs

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>

---------

Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com>
2024-10-24 00:17:33 +01:00
Nemanja 2bf7941fef Biogenerator (#30694)
* biogenerator

* ack

* test success!

* fix tests

* increase price of reagents
2024-09-14 13:38:21 +01:00
LucasTheDrgn 4d2835a2d6 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-14 13:38:15 +01:00
Winkarst 7a33c10410 Move OnGhostAttempt to GhostSystem (#31445)
* Move OnGhostAttempt to GhostSystem

* Remove unused dependencies and sort them
2024-08-27 01:03:06 +01:00
metalgearsloth f8b8ec7994 Power stuff (#31314)
* Power stuff

- Add shared IsPowered
- Add shared ResolveApc
- Move PowerChangedEvent to shared for now
- Add SlimPoweredLight that actually functions how you'd expect a PoweredLight to function it id didn't have a bunch of bloat on it.

* big update

* boing
2024-08-27 01:00:42 +01:00
Nemanja 35923b6994 Recycler Overhaul (#30802)
* Recycler overhaul

* remove
2024-08-21 16:00:29 +01:00
Scribbles0 4f9889894b Melee Executions (#30104)
* melee executions

* fix damage bug

* cleanup

* address reviews hopefully

* resistance bypass mechanic

* component changes

* self executions (not finished yet)

* self execs part two

* ok i fixed things (still not finished)

* finish everything

* review stuff

* nuke if (kind = special)

* more review stuffs

* Make suicide system much less hardcoded and make much more use of events

* Fix a dumb bug I introduced

* self execution popups

* Integration tests

* Why did they even take 0.5 blunt damage?

* More consistent integration tests

* Destructive equals true

* Allow it to dirty-dispose

* IS THIS WHAT YOU WANT?

* FRESH AND CLEAN

* modifier to multiplier

* don't jinx the integration tests

* no file-scoped namespace

* Move the rest of execution to shared, create SuicideGhostEvent

* handled

* Get rid of unused code and add a comment

* ghost before suicide

* stop cat suicides

* popup fix + small suicide change

* make it a bit better

---------

Co-authored-by: Plykiya <58439124+Plykiya@users.noreply.github.com>
2024-08-11 14:52:53 +01:00
deltanedas 5e3d7350ba
scoopable ash and foam, solution transfer prediction (#25832)
* move SolutionTransfer to shared and predict as much as possible

* fully move OpenableSystem to shared now that SolutionTransfer is

* fix imports for everything

* doc for solution transfer system

* trolling

* add scoopable system

* make ash and foam scoopable

* untroll

* untroll real

* make clickable it work

* troll

* the scooping room

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 1db178b63254c5b509a6493a631fddb596b376a4)
2024-04-07 14:27:04 +02:00
Tayrtahn 11eff87687
Code cleanup: Dirty(Comp) (#26238)
* Replaced uses of Dirty(Component) with Dirty(Uid, Component)
Modified some systems (notably pulling-related) to use uids.

* Missed a few

* Revert changes to pulling

* No

(cherry picked from commit 4a83c365858830e3b2ff2b94fff501256422c20e)
2024-03-24 00:04:13 +01:00
nikthechampiongr 92f3c54915
Add logs to recycler gibbing and broadcasting. (#26008)
* Add logs to things

* Make the message log be saved as msg because I forgor before.

* Log fails when getting an entity that doesn't exist

---------

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
(cherry picked from commit 2b8415b378c181fd0222cdf7f4d005a70ebe8044)
2024-03-17 14:54:26 +01:00
Nemanja 7573dba496
Rip out remaining machine upgrades (#24413)
* Rip out remaining machine upgrades

* eek

(cherry picked from commit a9e89ab37221c4f5eff5a9e1d42e97c6f3e0753b)
2024-01-27 23:43:49 +01:00
TemporalOroboros ce27944275
Revert 'Revert 'Solution Entities'' (#23168)
(cherry picked from commit d23c8d5c19e56a582b6b12f832bd318efbdac7c7)
2024-01-23 23:00:42 +01:00
Nemanja 1df3def681
Make the material ejection control completely generic (#23308)
* Finish decoupling material ejection from lathes

* commented

(cherry picked from commit 2b01899d639e1cfa5ec47df6cad4049ef72aaefb)
2024-01-23 22:50:32 +01:00
Hannah Giovanna Dawson 0eddbc7595
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!!

(cherry picked from commit f850047341108b286170197d12f4d13946ee0b40)
2024-01-22 21:08:04 +01:00
TemporalOroboros aebae6fab7
Content ecs containers (#22484)
(cherry picked from commit 7a77d6d5dd73a34be238fdebc284da5bc2917c67)
2024-01-22 18:47:55 +01:00
metalgearsloth b1ee2d48ff Unrevert audio (#21330)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2023-12-02 20:16:36 +01:00
Vasilis 295b79a098 stasis bed and microwave qol(#21572) 2023-11-12 20:55:31 +01:00
ShadowCommander 60ed4e80d4 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-20 15:29:04 +02:00
TemporalOroboros 8c55d3e5ce Moves SolutionContainerManagerComponent to Shared. (#20944) 2023-10-14 22:07:17 +02:00
deltanedas 06a7aa82a2 Openable refactor (#19750) 2023-09-27 21:59:12 +02:00
Leon Friedrich e4ca6f4fb9
Allow solutions to store extra reagent data (#19323) 2023-09-05 07:55:10 +10:00
DrSmugleaf 3f3ba6ac62
Move minds, roles, jobs and objectives to shared (#19679) 2023-08-30 21:46:11 -07:00
DrSmugleaf 15c0211fb2
Refactor minds to be entities with components, make roles components (#19591)
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2023-08-28 16:53:24 -07:00
Pieter-Jan Briers bf16698efa
Portable Generator Rework (#19302) 2023-08-25 11:40:42 -07:00
Nemanja 9946bd1f61
Sheet-meister 2000 (#16686) 2023-06-15 10:49:23 +10:00
eoineoineoin 3581db962c
Fix material reclaimer (recycler) making sound on round start (#16230)
Co-authored-by: Eoin Mcloughlin <helloworld@eoinrul.es>
2023-05-08 10:39:32 +10:00
Nemanja dfc5bcdc12
Convert materials to use PhysicalComposition (#15414) 2023-04-29 14:53:41 +10:00
Nemanja 2d78c50f3e
fix material reclaimer sound issue (#15278)
* fix material reclaimer sound issue

* this, too
2023-04-10 16:30:33 -05:00
metalgearsloth aebe31cfde
Fix master (#15256) 2023-04-10 15:47:51 +10: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
Nemanja c2fd5665af
SpawnMultiple cleanup in stacksystem (#13441) 2023-01-11 15:03:18 -07:00
Nemanja 26786b5839
decouple material insertion visualization from lathes (#13242) 2023-01-08 13:36:50 +11:00
Leon Friedrich 1f5bae751f
MaterialComponent cleanup (#13326) 2023-01-07 14:36:32 -08:00
Rane fecd60e98a
Generalized material spawning (#12489) 2023-01-08 05:09:05 +11:00
Chief-Engineer 2a8e5d9096
Add machine logs (#13185)
* add material insert logs

* add lathe queue logs

* add grav gen power logs

* fix count

* replace SharedStackComponent with StackComponent and rm unused imports

* use TryComp

* fix import
2022-12-27 18:01:36 +01:00
Leon Friedrich 881a2b2ece
PopupSystem public methods rejig (#12830) 2022-12-19 08:41:47 +11:00
Kevin Zheng d431ea05b9
Prevent inserting into unpowered lathes (#12405)
Entities with MaterialStorageComponent should not accept materials if
they are supposed to be powered, and are not actually powered.

This fixes being able to insert ores into unpowered or unanchored ore
processors, among other issues.
2022-11-08 14:56:53 -06:00
Nemanja 08687468b9
fix material storage popup (#11798) 2022-10-09 11:16:10 -07: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
Chris V 94a0bc92b7
Salvage mining, ore processing, and material clean-up (#7406)
* adding stuff cuz new computer

* removed unused materials

* remove unused materials and such, lathe things

* material volume no longer hardcoded

* fixed mining system

* add 5 stacks of materials, and add them to the ore processor

* fix copyright for ores and handdrill

* comma momma

* whyyyyy

* more fixes to make the yaml linter happy

* i should get my eyes checked

* silver proper

* more cleanup

* leftovers

* remove more references to material doors

* couldn't bear to be without bearhide

* added uranium, added more lathe recipes

* copyright fix, stack fix

* ore processor sprite and such

* ore processing some binches

* MaterialCotton removal

* 1 uranium ore means 1 sheet

* fix merge conflict? idk

* time to ketchup

* lathe recognizes material volume again

* yaml cleanup

* forgot to remove adamantine lol

* re-added diamond for now

* diamond stacks

* functional ore processor

* added ignoreColor to lathe visuals

* ore processor machine board

* add board to industrial tech and circuit printer

* provided lathes their whitelists

* fix wonky ore spawning, added insert sound to lathe, adjusted ore chance

* re-added ore processor

* typos and cleanup

* Update Content.Client/Lathe/LatheSystem.cs

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

* Update Content.Server/Lathe/LatheSystem.cs

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

* revert mapchange

* VV ignorecolor, pass entitymanager, move canceltoken to pickaxe, removed foreach from orespawn

* actually null canceltoken

* remove five-stacks, ore processor produces full stacks or single sheets/ingots

* VV proper

* adjust ore chances

* readd Cotton

* Update Content.Server/Mining/MineableSystem.cs

* tweaks

* Material is now dict (material, volume)

* removed unused property

* Space crystal -> space quartz

* forgor asteroid space quartz

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-04-28 20:41:04 +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
DrSmugleaf ff1a2d97ea
Re-organize all projects (#4166) 2021-06-09 22:19:39 +02:00
Víctor Aguilera Puerto fe0414eda7 Lathes (#207)
* Recipe stuff.

* Lathe GUI and stuff

* god dammit

* Lathe menu works, yay.

* EventArgs henk

* Some work

* SS14 -> Robust

* More SS14 -> Robust

* Lathe materials

* Lathe works, Lathe GUI, Queue GUI, etc

too many changes to name them here

* Remove materials button, add ViewVariables and update lathe on connect

* Add Autolathe RSI

* Adds new recipes, fixes a few bugs.

* Remove unused ScrollContainers

* Use same delegate for spawn.

* Removes client-side LatheComponent in favor of BoundUserInterface

* Remove GetMaterial and TryGetMaterial

* Use auto-properties in a few places.

* Adds LatheDatabase, and a bunch of other changes

* Remove useless log.

* Remove lathetype from prototypes.

* Turns Storage, Lathe and Database into autoproperties

* Remove Hacked property from LatheRecipePrototype

* Remove unneeded dependency injection from components

* Refactors LatheDatabaseComponent to use ComponentState

* Refactors MaterialStorageComponent to use ComponentState

* Oopsie

* Another oopsie

* Last oopsie, I hope

* Fix missing Close call.
2019-04-26 15:51:05 +02:00
Víctor Aguilera Puerto 29caf4cf53 Fix the thing (#203) 2019-04-19 12:30:31 +02:00
Silver a18692bc46 Rename toolbox references from ss14 to robust 2019-04-15 21:11:38 -06:00
Pieter-Jan Briers 74b38c49fb
Materials system. (#84) 2018-07-27 17:11:58 +02:00