Commit Graph

310 Commits

Author SHA1 Message Date
Łukasz Mędrek d52c50e3cc
fix: deconstruct verb on undeconstructables (#27387)
Some of prototypes don't specify their deconstructTarget node, which
made them show the deconstruct verb as deconstructTarget is set to
"start" node by default. This patch makes attempt to check if is it even
possible from current construction node to reach specified
deconstructTarget.

Fixes #27330

(cherry picked from commit 8442a9142c28917553fb35c6e63695fcbfc62fe2)
2024-05-03 00:30:09 +02:00
Nemanja 0d88c372e9
add fuel costs back to finishing welding (#27030)
* add fuel costs back to welding

* ack

* meh

* eek!

(cherry picked from commit a47c5561a9632b6577abdc252f712d7f2da823e6)
2024-04-21 23:20:07 +02:00
brainfood1183 a7fb1b4bbc
Toilet Upgrade (needs review) (#22133)
* Toilet Draft

* fixes

* toilets now have secret stash to place items in cistern.

* fixes

* plungers now unblock toilets.

* fix sprite

* new sprites and fix

* fixes

* improve seat sprites.

* fix

* removed visualisersystem changed to genericvisualizers

* flush sound for toilets and copyright for toilet sprites.

* fix atrributions

* fixes

* fix datafield flushtime

* sprite improvements

* fixes

* multiple changes

* fix

* fix

* fixes remove vv

* moved stash related functions to secret stash system from toilet.

* fix

* fix

* changes for recent review.

* fix

* fix

(cherry picked from commit 5f063d2d6d2a41702b60d11f779e23c34fa74410)
2024-04-07 14:18:32 +02:00
Leon Friedrich 239fd1d654
Partial atmos refactor (#22521)
* Reduce atmos component queries

* Remove method events

* Cache airtight data

* Make MolesArchived nullable

* Fix airtight cache

* only get tile def once

* Immutable mixtures

* firelock queries

* misc

* misc cleanup

* Trim disconnected tiles

* Fix merge issues and bugs

* Why does the PR keep increasing in scope

* debug overlay

* Fix bugs

* Fix test, remove unused events

* Add setmapatmos command

* Fix overlays

* Add map check

* A

* Resolve conflicts with #26102

* Remove some obsolete methods

(cherry picked from commit 18a35e7e83b2b71ee84b054d44d9ed5e595dd618)
2024-03-24 00:14:24 +01:00
Tayrtahn 3dd5dcadc5
Code cleanup: Purge calls to obsolete EntityCoordinates methods (#26292)
* Purge calls to obsolete EntityCoordinates methods

* Pizza defruited; rerun those tests!

(cherry picked from commit f4cb02fb0ca385c858569c07c51afb0d24ade949)
2024-03-24 00:07:58 +01:00
nikthechampiongr ad5628777b
Simplify DoAfterArgs behavior for movement and distance checks (#25226)
* Merge BreakOnWeightlessMove and BreakOnMove. Provide different theshold for weightless movement.

* Adjust WeightlessMovementThresholds. Put a thing I forgot to put in the doafterargs.

* Make DoAfterArgs only use OnMove to determine whether to check for
movement and MoveThreshold to determine the threshold regardless of
weightlessness. Gave DistanceThreshold a default value which will always
be checked now.

* Fix issue introduced by merge.

* Use interaction system for determining whether a distance is within range

* Fix incorrect doafter args introduced by previous merge.
Forgor to commit these.

* Exorcise ghost.

The execution system should have been deleted when I merged previously.
For a reason I cannot comprehend it came back, but only the execution
system.

* Exorcise ghost Pt. 2

* Allow for movement check to be overriden in zero g and adjust doafter args where needed.

You can now override checking for movement in zero g with the BreakOnWeightlessMove bool. By default it will check.
The following doafters were made to ignore the movement check in zero g:
- Healing yourself with healing items,
- Removing embedded projectiles,
- Using tools like welders and crowbars

* Adjust distance for cuffing/uncuffing to work. Make injections not break on weightless movement.

* Fix evil incorrect and uneeded comments

(cherry picked from commit 362d56981fd7654f6ebec36f16cc8fabdd04b6a7)
2024-03-24 00:03:28 +01:00
Pieter-Jan Briers ccea85136b
Random spontaneous cleanup PR (#25131)
* Use new Subs.CVar helper

Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.

This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.

* Fix a bunch of warnings

* More warning fixes

* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.

* Get rid of some more ISerializationHooks for enums

* And a little more

* Apply suggestions from code review

Co-authored-by: 0x6273 <0x40@keemail.me>

---------

Co-authored-by: 0x6273 <0x40@keemail.me>
(cherry picked from commit 68ce53ae17985876d6d112b764b2144964a9f42e)
2024-02-18 23:02:29 +01:00
LordCarve ad35a2fda3
Obsolete refactor - ConnectedClient to Channel (#24409)
(cherry picked from commit 05a2e6b3a21e5fb3198432d885bbe28506d85b9c)
2024-01-27 23:44:02 +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
deathride58 16faa3cf64
Fixes construction graphs proccing while being microwaved (#23835)
* Fixes construction graphs proccing while being microwaved

* git those indents in line

* We knew we were missing something!

(cherry picked from commit f5c40c362306f0c2437f39b6968ae637112aaf4e)
2024-01-26 22:33:40 +01:00
Kara 03b3e36d43
Examine prediction (#23565)
* Initial prediction

* new group handling

* groups for all examines that use multiple rn

* compile

* why was it doing this??

* handle newlines with sorting properly

(cherry picked from commit 0ae3858b69b695697ea9300609460f8ddb70ebbf)
2024-01-26 21:48:02 +01:00
Nemanja 999651088f
Flatpacker Tweaks (#23552)
* flatpacker nerf

* stuff

(cherry picked from commit a2cdbda019b3651e49eb8a564822a209621948d7)
2024-01-26 21:45:11 +01:00
SpeltIncorrectyl 1b4e05f0e7
The Flatpacker 1001 can now make flatpacks for computers. (#23471)
* moved ComputerBoardComponent to Content.Shared

* made flatpacker accept computer boards

* made flatpack system and ui function with computer boards

* fixed it so that flatpacks of computers are correctly coloured to fit their computer board colour

* unhardcoded the computer flatpack assembly cost

* Combined GetFlatpackCreationCost(...) with GetflatpackCreationCostForComputer(...)

* removed code duplication in SharedFlatpackSystem

* removed code duplication from FlatpackCreatorMenu.xaml.cs

* remove code duplication from FlatpackSystem (on the server)

* fixed indentation error

(cherry picked from commit 082bde40ca3fd39fff5daea26de4311cf2001f85)
2024-01-26 21:35:50 +01:00
Nemanja 96d1e4090f
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

(cherry picked from commit 1c11332fa4b77d556e7f3db17f391dbd2664cda5)
2024-01-26 21:27:25 +01:00
TemporalOroboros ce27944275
Revert 'Revert 'Solution Entities'' (#23168)
(cherry picked from commit d23c8d5c19e56a582b6b12f832bd318efbdac7c7)
2024-01-23 23:00:42 +01:00
TemporalOroboros aebae6fab7
Content ecs containers (#22484)
(cherry picked from commit 7a77d6d5dd73a34be238fdebc284da5bc2917c67)
2024-01-22 18:47:55 +01:00
Leon Friedrich b87fcdb622 Remove uses of `TransformComponent.ChildEntities` (#22442)
* Make output of ChildEnumerator non-nullable

* Remove uses of ChildEntities

* poke tests

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2023-12-16 20:38:06 +01:00
tgrkzus 3f532b8f65 improve deconstruction text (#22404) 2023-12-16 20:11:14 +01:00
qwerltaz 43c50fe0b7 Fix wallmount board dropping at random side of the wall (#21920)
* empty wallmount board at user

* change to DropNextTo

* add emptyAtUser to doors
2023-12-16 19:23:00 +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
deltanedas 7a6e93270b egg rework (#21606)
* egg and raw egg

* add DamageEntity

* boiling and exploding eggs

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-11-19 21:59:51 +01:00
Vasilis 295b79a098 stasis bed and microwave qol(#21572) 2023-11-12 20:55:31 +01:00
PixelTK 3e7feaa4f6 Arachnid 2: Episode 2 (#19984)
* Shield

* minor sprite changes and buffs

* structure buff

* Crafting stuff

* tweaks

* 88-88

* Better web pocket sprites.

* yeah it's fine now.
2023-11-12 20:49:58 +01:00
deltanedas 21d0f76e29 add ied (#20966)
* MinSolution and SolutionEmpty construction conditions

* make ied sprites

* add ied

* ied crafting stuff

* deconstruct give cable yes

* fix

* tags

* tag

* 3x3

* sharing is caring

* buff damage

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-11-12 20:45:18 +01:00
Leon Friedrich e66c0b5035 Un-revert IPlayerManager refactor (#21244) 2023-10-31 19:00:44 +01:00
metalgearsloth 4cf7f4f1c9 Predict tile-prying (#21167) 2023-10-23 23:54:01 +02:00
deltanedas 62d3a7b77b Add internal temperatures for cooking meats (#20659) 2023-10-23 23:50:43 +02:00
DrSmugleaf 9cc8a7fc81 Remove 700 usages of Component.Owner (#21100) 2023-10-20 15:31:13 +02:00
chromiumboy 989a820e0a Use construction graphs for hacking protections (#20265) 2023-10-08 19:58:52 +02:00
chromiumboy 422a812d91 Fix prying door hacking protections (#20664) 2023-10-08 19:52:10 +02:00
metalgearsloth d084dd2efb Fix component constraints (#20241) 2023-09-27 21:59:12 +02:00
metalgearsloth a7208af7d6 Add ore bag area pickups (#19358) 2023-09-27 21:59:12 +02:00
metalgearsloth f38f0ab614 Predict StorageComponent (#19682) 2023-09-27 21:59:12 +02:00
metalgearsloth c9648da984 Content update for NetEntities (#18935) 2023-09-27 21:59:12 +02:00
Arimah Greene a6af59e3bf
Make PA constructible again (#19428)
* Change construction graph correctly

https://github.com/space-wizards/space-station-14/issues/18511#issuecomment-1687893199

* Remove unnecessary call to UpdatePathfinding
2023-09-09 23:42:42 -04:00
deltanedas 58812c6ae7
fix weldable (#19878)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-09-06 14:18:11 -04:00
metalgearsloth db1ff07821
Weldable cleanup (#19809) 2023-09-05 00:07:01 +10:00
metalgearsloth 4cfc578011
Revert "Remove most usages of obsolete TransformComponent methods (#1… (#19714) 2023-09-01 12:30:29 +10:00
Visne 1416942bea
Remove most usages of obsolete TransformComponent methods (#19571) 2023-08-30 12:05:19 +10:00
DrSmugleaf 35107f7c2b
Fix component generic usages where IComponent would not be valid (#19482) 2023-08-24 20:10:55 +10:00
DrSmugleaf a88e747a0b
Refactor serialization copying to use source generators (#19412) 2023-08-22 18:14:33 -07:00
Nemanja d433ded402
RPED fixes (#19050) 2023-08-13 23:36:08 -04:00
Vordenburg 7582474f1a
Lint more const string prototypes (#18922) 2023-08-13 20:26:59 -04:00
Nemanja 98fa00a21f
Borgs (#18136)
* Laws

* positronic brain and PAI rewrite

* MMI

* MMI pt. 2

* borg brain transfer

* Roleban support, Borg job (WIP), the end of mind shenaniganry

* battery drain, item slot cleanup, alerts

* visuals

* fix this pt1

* fix this pt2

* Modules, Lingering Stacks, Better borg flashlight

* Start on UI, fix battery alerts, expand activation/deactivation, low movement speed on no power.

* sprotes

* no zombie borgs

* oh fuck yeah i love a good relay

* charger

* fix the tiniest of sprite issues

* adjustable names

* a functional UI????

* foobar

* more modules

* this shit for some reason

* upstream

* genericize selectable borg modules

* upstream again

* holy fucking shit

* i love christ

* proper construction

* da job

* AA borgs

* and boom more shit

* admin logs

* laws redux

* ok just do this rq

* oh boy that looks like modules

* oh shit research

* testos passo

* so much shit holy fuck

* fuckit we SHIP

* last minute snags

* should've gotten me on a better day
2023-08-12 16:39:58 -05:00
chromiumboy 636819f4e3
Hacking protections for airlocks (#18894)
* Adds the ability to better protect to the internal wiring of airlocks
- Achieved by opening the maintenance panel, adding either steel or plasteel to the airlock, then welding the plate in place
- To access the wiring, the plating must be cut with a welder and then pried out with a crowbar

* Code revisions
- Cleaned up the code
- Cutting the security grille can now shock you
- Atmospherics and Security dept airlocks start with a medium level of protection (a welded steel plate)
- Command dept airlocks start with a high level of protection (a welded plasteel plate and electrified security grille)

* Code revision
- Accounted for a potentially null string

* Update Content.Server/Construction/Completions/AttemptElectrocute.cs

Co-authored-by: Slava0135 <40753025+Slava0135@users.noreply.github.com>

* Update ChangeWiresPanelSecurityLevel.cs

Adjusted scope

* Update Content.Shared/Wires/SharedWiresSystem.cs

Co-authored-by: Slava0135 <40753025+Slava0135@users.noreply.github.com>

* Update Content.Shared/Wires/SharedWiresSystem.cs

Co-authored-by: Slava0135 <40753025+Slava0135@users.noreply.github.com>

* Update ChangeWiresPanelSecurityLevel.cs

Removed get / setter and added [ValidatePrototypeId] attribute

* Update ChangeWiresPanelSecurityLevel.cs

Set security level to "Level0" as the default

* Update airlock.yml

Removed 'super max' level of security

* Update WiresPanelSecurityLevelPrototype.cs

* Update WiresSystem.cs

Added check for WiresAccessible to OnInteractUsing

* Update AttemptElectrocute.cs

File scoped namespace

* Update ChangeWiresPanelSecurityLevel.cs

File scoped namespace

* Update AirlockSystem.cs

File scoped namespace

* Update SharedWiresSystem.cs

Removed boiler plate 'OnGetState' and 'OnHandleState'

* Update WiresPanelComponent.cs

Implemented AutoGenerateComponentState

* Removed unnecessary usage references

* use TryCloseAll when wires not accessible

* minor changes to AttemmptElectrocute

* lets try all 7 levels

* fix indent in airlock graph

* fix indent 2

---------

Co-authored-by: Slava0135 <40753025+Slava0135@users.noreply.github.com>
Co-authored-by: Slava0135 <super.novalskiy_0135@inbox.ru>
2023-08-10 11:33:03 +03:00
TotallyLemon fc0211e4e0
RPED can now add parts to in-progress machine frames (#16633)
* RPED construction

* Requested Changes
2023-08-07 20:26:24 -04:00
chromiumboy e8960f77b2
Drop stored entities from containers used in crafting recipes (#18564)
Resolves issue #10852. If a storage container is a reagent for crafting, items stored inside of it are dropped.

---------

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
2023-08-02 10:32:51 -08:00
Leon Friedrich 35d6d490f1
Fix some machine construction bugs. (#18179) 2023-07-30 03:29:59 +10:00
c4llv07e 4b5ab1e2d2
Add machine frame completion feedback (#18048)
Signed-off-by: c4llv07e <kseandi@gmail.com>
2023-07-18 15:03:13 -06:00
Vera Aguilera Puerto 9243050e1a
Construction graph improvements (#17960) 2023-07-13 20:23:52 +10:00