Commit Graph

5906 Commits

Author SHA1 Message Date
Vera Aguilera Puerto
d2ffabdfd4 Fix ChangeEntity collection modified exception. 2021-10-27 01:29:10 +02:00
PJBot
5e68020ada Automatic changelog update 2021-10-26 10:39:06 -04:00
Vera Aguilera Puerto
189a5c7847 ConstructionGL2 Part 1: ECSification, events and steps. (#5017)
- Completely rewrited the `ConstructionComponent` logic to be ECS, *without* looking too much at the original implementation.
    - The original implementation was dirty and unmaintainable, whereas this new implementation is much cleaner, well-organized and maintainable. I've made sure to leave many comments around, explaining what everything does.
- Construction now has a framework for handling events other than `InteractUsing`.
    - This means that you can now have CGL steps for things other than inserting items, using tools...
- Construction no longer uses `async` everywhere for `DoAfter`s. Instead it uses events.
- Construction event handling occurs in the `ConstructionSystem` update tick, instead of on event handlers.
    - This ensures we can delete/modify entities without worrying about "collection modified while enumerating" exceptions.
    - This also means the construction update tick is where all the fun happens, meaning it'll show up on our metrics and give us an idea of how expensive it is/how much tick time is spent in construction.
- `IGraphCondition` and `IGraphAction` have been refactored to take in `EntityUid`, `IEntityManager`, and to not be async.
- Removes nested steps, as they made maintainability significantly worse, and nothing used them yet.
- This fixes #4892 and fixes #4857

Please note, this leaves many things unchanged, as my idea is to split this into multiple PRs. Some unchanged things:
- Initial construction code is the same. In the future, it'll probably use dummy entities.
- Client-side guided steps are the same. In the future, the server will generate the guided steps and send them to clients as needed, caching these in both the server and client to save cycles and bandwidth.
- No new construction graph steps... Yet! 👀
2021-10-26 16:38:03 +02:00
PJBot
d70470b99b Automatic changelog update 2021-10-26 10:19:46 -04:00
metalgearsloth
27b50c9485 Sort construction graph recipes alphabetically (#5039) 2021-10-26 16:18:43 +02:00
PJBot
2fcb56f9be Automatic changelog update 2021-10-26 10:16:05 -04:00
metalgearsloth
c98d6fbc56 Add test for construction start and target nodes (#5037)
* Add test for construction start and target nodes

* Adjust names

* Adjust message slightly

* Also add path test
2021-10-26 16:15:26 +02:00
20kdc
632a4bcd95 Apc and light construction partial fix (#5030)
* Fix APC placement type

* Fix wall tags.

* Change wall light placement to match how it actually is now

* Change spawn-entity wall light snap mode

Separate commit so it can be nixed out for JREV

* Default switch placement mode to SnapgridCenter
2021-10-26 16:15:02 +02:00
metalgearsloth
9c3a603e7e Use ActionBlockerSystem as a dependency on CGSystem 2021-10-27 01:07:19 +11:00
Julian Giebel
d1a830cd74 Fix ApcPowerReceiverComponent deletion (#5031)
Co-authored-by: Julian Giebel <j.giebel@netrocks.info>
2021-10-25 21:55:00 +02:00
PJBot
3bbe8f7652 Automatic changelog update 2021-10-25 10:59:19 -04:00
20kdc
c29b23eb64 Fix ChemMaster bottles not having contents (#5026) 2021-10-25 16:58:16 +02:00
PJBot
5fc101307d Automatic changelog update 2021-10-25 10:58:04 -04:00
Vera Aguilera Puerto
cb2309b094 Add insulated gloves to saltern and a few closets/vending machines. 2021-10-25 16:56:54 +02:00
PJBot
35d0a7539d Automatic changelog update 2021-10-25 10:37:07 -04:00
ike709
ec92f4eef2 Adds stack splitting (#4981)
* Adds stack splitting

* Apply suggestions from code review

Co-authored-by: ike709 <ike709@github.com>
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2021-10-25 16:36:04 +02:00
moonheart08
debd22e19c Add select (#5003) 2021-10-25 16:23:44 +02:00
PJBot
17e0362e06 Automatic changelog update 2021-10-25 10:22:59 -04:00
Vera Aguilera Puerto
ed3bf94a3b Electrocution. (#4958)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2021-10-25 16:21:56 +02:00
PJBot
66a3d5bf29 Automatic changelog update 2021-10-25 10:15:24 -04:00
20kdc
7f4c9327e2 Fix construction to some extent on rotated grids (#5024)
* Fix things to some extent on rotated grids

* Use Box2Rotated overload of IEntityLookup in GetEntitiesInTile
2021-10-25 16:14:21 +02:00
Vera Aguilera Puerto
2f315c5576 Update submodule. 2021-10-25 16:12:09 +02:00
Leon Friedrich
6e84e23ba1 Remove some functions from HandsComponent (#4937)
* remove wrapper functions

* Remove InteractionSystem wrapper functions

* remove two more functions

* add missing `using`

* clean diff
2021-10-25 18:06:12 +11:00
StStevens
e621a82e65 Fire extinguisher safety (#4912)
* Moved safety into FireExtinguisherComponent.

* Fix errant find and replace

* Address reviews

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2021-10-25 18:04:24 +11:00
PJBot
2caf2dbbe0 Automatic changelog update 2021-10-25 02:44:52 -04:00
mirrorcult
c0ecdb09af Slipping tweaks + remove EffectBlocker (#4955)
* Slipping tweaks + remove EffectBlocker

* mfw failed merge conflict resolution

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2021-10-25 17:43:49 +11:00
Leon Friedrich
e016fc9906 spray bottle fix (#5012)
* fix-spray

* move vapor rotation
2021-10-25 17:29:02 +11:00
PJBot
41524dac5b Automatic changelog update 2021-10-25 00:24:00 -04:00
metalgearsloth
0f513f64fb Rotate DefaultGrid on round start (#4957)
* Rotate DefaultGrid on round start

Not ideal long-term but good for bugspotting short-term.

* Fix buckle test

Because gridtraversal was being triggered the pos was being fucked when moving back

* Fix buckle

* Buckle offset
2021-10-25 15:22:57 +11:00
PJBot
b60dea5c21 Automatic changelog update 2021-10-24 23:34:52 -04:00
20kdc
63dd23ad8c Fix RCDs on space somewhat - space-wizards/space-station-14#4742 compatibility edition (#4878) 2021-10-25 14:33:49 +11:00
metalgearsloth
16e3b6a08e Fix 4-way gas pipe visualisation (#5011) 2021-10-25 14:26:42 +11:00
PJBot
6fee3da994 Automatic changelog update 2021-10-24 23:25:57 -04:00
metalgearsloth
507a1b9f84 Fix gas pipe rotation rendering (#5015) 2021-10-25 14:24:54 +11:00
metalgearsloth
36eef876af Update submodule 2021-10-25 14:21:47 +11:00
Julian Giebel
d1e323b993 Bugfix: ExtensionCableReceiver anchoring (#5014)
Co-authored-by: Julian Giebel <j.giebel@netrocks.info>
2021-10-24 18:49:26 +02:00
PJBot
9937001b73 Automatic changelog update 2021-10-24 08:47:41 -04:00
SethLafuente
2b2211a468 Reinforced Plasma Windows (#4962)
* submodule

* adds reinforced plasma windows

* Fixed some of le issues

* removing the module

* empty

literal nothing

* empty

same empty

* request fixes

* ups forgot to add that

* small change

change do after and camel reinforcedPlasmaWindow

* Update structures.yml

* Update rplasma.yml

* Update meta.json

* Update structures.yml

* Update structures.yml

* Update window.yml

* Update structures.yml

* small fixes

* literary nothing why is this here

* Update window.yml

* Update structures.yml

Co-authored-by: SETh lafuente <cetaciocascarudo@gmail.com>
2021-10-24 23:46:38 +11:00
ShadowCommander
250b44ff61 Update submodule 2021-10-24 01:45:51 -07:00
PJBot
5c4567ea3e Automatic changelog update 2021-10-24 04:29:28 -04:00
metalgearsloth
5cc3f9ee30 Truncate long name / job titles for IDs (#5009) 2021-10-24 01:28:25 -07:00
E F R
3c0473dfe4 Server/MachineLinking: allow linking devices that are inside obstructions (#5010)
...like signal buttons/switches on a wall.
2021-10-24 01:21:39 -07:00
PJBot
a8be25ca33 Automatic changelog update 2021-10-24 02:29:23 -04:00
moonheart08
1fa946cd57 Revert "Pipes as items is broken so simply undo. (#4925)" (#5007)
This reverts commit 668c94b929.
2021-10-23 23:28:19 -07:00
metalgearsloth
f07104d45b Prevent emoting while dead
Fixes 4992
2021-10-24 17:16:47 +11:00
metalgearsloth
a4cd222bea Don't include anchored entities for entitystorage 2021-10-24 17:10:05 +11:00
metalgearsloth
34326cfed7 Fix hypospray
Another casualty in the solution wars.
2021-10-24 16:54:08 +11:00
PJBot
349ad208df Automatic changelog update 2021-10-24 01:43:50 -04:00
ShadowCommander
d568664702 Add examine, activate, and context menu to storage buttons (#4525)
* Add examine, activate, and context menu to storage buttons

* Handle UIClick
2021-10-24 16:42:47 +11:00
Alex Evgrashin
7de1ebbd77 Move RCD to ECS (#4742)
* Moved ammo to ecs

* Moved RCD to ecs

* Replaced RCDDeconstructWhitelist with Tag

* Updated new structures RCDDeconstructWhitelist

* Queue delete
2021-10-24 14:34:00 +11:00