Commit Graph

67 Commits

Author SHA1 Message Date
Nemanja
fd9e1f3738 machine upgrade guidebook (#13511)
* machine upgrade guidebook

* oops

* guidehelpcomponent

* build, damn you
2023-01-16 10:53:23 -06:00
Leon Friedrich
cf509c1e38 Add material arbitrage tests (#13315) 2023-01-15 00:57:59 -08:00
DrSmugleaf
7fbc2608e8 Remove redundant read-only VV from datafields (#12626) 2022-11-16 20:22:11 +01:00
Nemanja
72e7a9ee93 RPED (#12008)
* RPED

* sound effect

* wires must be open

finished me appy slices yum yum

* Update Resources/Audio/Items/attributions.yml

Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>

* Update attributions.yml

Co-authored-by: Zonespace <41448081+Zonespace27@users.noreply.github.com>
2022-11-14 13:36:13 -06:00
Nemanja
b6135d3be5 Construction warning cleanup (#12256) 2022-10-30 17:48:53 +11:00
Nemanja
cfab87b3d7 generator machine upgrading (#12145) 2022-10-22 15:38:57 -07:00
Nemanja
3774a00a5c Machine upgrading framework [NO CONTENT YET] (#11528)
* upgrading parts baseline

* don't hardcode prototypes

* 0xsomethingsomething review i sorry i forgot your name
2022-09-26 15:18:31 -05:00
Kara
3bf8c27888 Machine frame ECS (#9713) 2022-07-14 04:35:37 -07:00
Pieter-Jan Briers
a323ba8223 Revert "Revert "Fix some friend access violations by allowing others access. (#8594) (#8703)" (working this time) (#8704) 2022-06-07 15:26:28 +02:00
Pieter-Jan Briers
cecf87997b Revert "Fix some friend access violations by allowing others access. (#8594) (#8703) 2022-06-07 13:44:31 +02:00
Vera Aguilera Puerto
c5f7c61041 Fix some friend access violations by allowing others access. (#8594)
Rename Friend attribute to Access attribute.
Updates submodule to v0.21.0.0 as well.
2022-06-07 11:30:27 +02:00
wrexbe
bc68ac96dd Cleanup the namespaces (#8132) 2022-05-13 17:59:03 +10:00
Rane
70a26bf0c2 Elimate most IInteractUsing (#7481) 2022-04-15 14:20:20 -07:00
Rane
7900abb888 Literally Murder IExamine (#7352) 2022-04-08 14:17:25 -07:00
Leon Friedrich
39c4d8be1f Move Anchorable to shared. (#7361)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-04-02 14:52:44 +11:00
metalgearsloth
47dca34780 type serializer for computer boards (#6915) 2022-02-28 00:25:56 +11:00
mirrorcult
ec4d4688c7 Seal/abstract/virtual everything (#6739) 2022-02-16 18:23:23 +11:00
metalgearsloth
70c0a502cf ECS tags (#6504) 2022-02-08 14:08:11 +11:00
metalgearsloth
7728b907c5 Nerf airlock deconstruction (#6343) 2022-02-07 14:06:11 +11:00
metalgearsloth
32a1f6ae93 ECS computers (#6353) 2022-02-03 10:20:17 +11:00
metalgearsloth
42102b17c1 ECS construction machines (#6354) 2022-02-03 10:04:46 +11:00
wrexbe
17db0775c8 Auto comp (#6416) 2022-02-02 14:35:40 +11:00
metalgearsloth
0f910a7ab2 Construction graph serv3 (#6262) 2022-01-21 10:40:21 +01:00
Leon Friedrich
21480c716a Correct anchor events (#6140) 2022-01-12 18:49:28 +01:00
Paul Ritter
cc57d1380c Revert Rich text (#5848) 2021-12-20 12:42:42 +01:00
E F R
b2da936848 Everything: Rich text redux (#5625)
* lord save me

* UI/ChatBox: Use the new `defStyle` param for `RenderMarkup`

The previous iteration didn't work because `AddMessage` can't inherit
its color from the PushColor (since we're not doing actual tag stacks
anymore).

* rebase touchup
2021-12-12 18:25:42 -08:00
Vera Aguilera Puerto
ba736f70df Remove many resolves on Content.Server 2021-12-08 17:04:21 +01:00
Vera Aguilera Puerto
4919f1db69 Remove more IoCManager IEntityManager resolves 2021-12-08 10:41:38 +01:00
metalgearsloth
373b5988d7 Remove redundant IComponent casts 2021-12-07 21:54:00 +11:00
DrSmugleaf
2a3b7d809d Fix 3000 errors 2021-12-05 18:09:01 +01:00
Vera Aguilera Puerto
f386b57148 Inline OwnerUid 2021-12-03 16:30:34 +01:00
Vera Aguilera Puerto
5cd42c9ad6 Inline UID 2021-12-03 15:53:09 +01:00
Vera Aguilera Puerto
a5b57c8e10 Inline Transform 2021-12-03 14:20:34 +01:00
Vera Aguilera Puerto
69b270017b Inline TryGetComponent completely, for real 2021-12-03 14:17:01 +01:00
Vera Aguilera Puerto
72a68c06e4 Inline one HasComponent overload 2021-12-03 12:17:57 +01:00
Vera Aguilera Puerto
e3227546b3 Inline Delete 2021-12-03 11:43:03 +01:00
Vera Aguilera Puerto
f10ed6c0c3 Inline GetAllComponents 2021-12-03 11:42:24 +01:00
Vera Aguilera Puerto
70bbd8c502 Inline Prototype 2021-12-03 11:18:05 +01:00
Vera Aguilera Puerto
5e177ae734 Inline EntityManager 2021-12-03 11:18:05 +01:00
Acruid
fa0ec5cbd9 AppearanceComponent API Changes (#5446) 2021-11-23 18:22:59 +11:00
Clyybber
6ac2446d26 Remove some warnings (#5391)
* Remove unused Dependency fields

* Remove noop null check
2021-11-18 16:46:35 -07:00
Vera Aguilera Puerto
8b57bafcd1 StackSystem uses EntityUid for Split and Spawn 2021-11-09 15:35:03 +01:00
Vera Aguilera Puerto
b6337ffe7a Makes many things use OwnerUid instead of Owner.Uid 2021-11-09 15:05:49 +01:00
Vera Aguilera Puerto
fe6590bbe6 Makes Anchorable ECS. (#5222) 2021-11-09 18:08:30 +11:00
Vera Aguilera Puerto
fea41c539e Add RaiseEvent action to CGL. Machines raise a MachineDeconstructedEvent.
The latter is very useful for any special machine cleanup that needs to happen when a machine is deconstructed.
The former will be useful for so many things!
2021-11-01 17:29:09 +01:00
Vera Aguilera Puerto
0f744447d0 Remove unused using statements in construction comp 2021-11-01 17:07:30 +01:00
Vera Aguilera Puerto
f840db0458 Fix bug which allowed you to build machines for free by taking the board out and putting it in again. 2021-10-28 11:07:33 +02:00
Visne
c67160ae19 Disable warnings that would be refactored anyway (#5047) 2021-10-27 18:10:40 +02: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
Vera Aguilera Puerto
6b73b89617 Anchorable checks for ToolComponent in Valid method. 2021-10-07 22:57:35 +02:00