Commit Graph

31 Commits

Author SHA1 Message Date
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
Ben c858c76341
Anchorable shared (#17422)
Co-authored-by: BenOwnby <ownbyb@appstate.edu>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2023-06-29 22:35:54 +10:00
deltanedas f9c97e4324
welder stuff (#17476) 2023-06-27 21:46:48 -04:00
Leon Friedrich d1d13f4ef1
Fix misc construction bugs (#15600) 2023-04-21 14:01:35 +10:00
Leon Friedrich 21378f6e41
Fix misc bugs (#15314) 2023-04-12 10:18:30 +10:00
Leon Friedrich 507b0d7320
Fix computer deconstruction (#15187) 2023-04-08 10:54:28 +10:00
Leon Friedrich b9b8180131
DoAfter & misc interaction fixes (#15144) 2023-04-05 10:19:28 +10:00
Leon Friedrich 19277a2276
More DoAfter Changes (#14609)
* DoAfters

* Compact Clone()

* Fix mice and cuffables

* Try generalize attempt events

* moves climbabledoafter event to shared, fixes issue with climbable target

* Fix merge (cuffing)

* Make all events netserializable

* handful of doafter events moved

* moves the rest of the events to their respective shared folders

* Changes all mentions of server doafter to shared

* stop stripping cancellation

* fix merge errors

* draw paused doafters

* handle unpausing

* missing netserializable ref

* removes break on stun reference

* removes cuffing state reference

* Fix tools

* Fix door prying.

* Fix construction

* Fix dumping

* Fix wielding assert

* fix rev

* Fix test

* more test fixes

---------

Co-authored-by: keronshb <keronshb@live.com>
2023-04-02 21:13:48 -04:00
keronshb e9dbcc4278
Another round of DoAfter fixes (#14295) 2023-03-01 11:51:42 +11:00
Leon Friedrich 7430a3dba2
Construction debug logs (#14257) 2023-02-26 04:14:26 +11:00
keronshb 9ebb452a3c
DoAfter Refactor (#13225)
Co-authored-by: DrSmugleaf <drsmugleaf@gmail.com>
2023-02-25 01:01:25 +01:00
Chief-Engineer 6f58f5a36c
Improve construction logs (#13146) 2023-01-20 08:17:57 -08:00
Timothy Teakettle a7a4137cc7
moves steak cooking to use construction graphs, new temperature construction graph step (#13219) 2023-01-20 08:09:13 -08:00
metalgearsloth 1b0e50ae19
Remove last component.Name calls (#13593) 2023-01-19 13:57:18 +11:00
Vera Aguilera Puerto 4e3246d278
Slight construction cleanup. (#12614) 2022-11-16 05:10:27 -06:00
Nemanja b6135d3be5
Construction warning cleanup (#12256) 2022-10-30 17:48:53 +11:00
Júlio César Ueti 137e79ee4c
Adds logging to stripping and construction starting (#11952) 2022-10-16 17:32:00 +11:00
Leon Friedrich a356071f41
Use IRuntimeLog in ConstructionSystem (#11413) 2022-09-19 15:01:33 -05:00
Leon Friedrich b136f18ab7
Construction error handling changes (#11400) 2022-09-19 16:10:10 +10:00
Júlio César Ueti ee969c9799
Adds even more important Admin Logging (#10268) 2022-08-08 09:21:56 +10:00
Vera Aguilera Puerto 67106dedb9
ConstructionSystem handles InteractUsing before AnchorableSystem. (#8700) 2022-06-08 09:50:23 +02:00
wrexbe bc68ac96dd
Cleanup the namespaces (#8132) 2022-05-13 17:59:03 +10:00
Vera Aguilera Puerto 380bb89f83
Documents more ConstructionSystem methods. (#7246) 2022-03-24 21:00:39 -07:00
Vera Aguilera Puerto c76414362d Account for graph actions being able to delete the entity in ChangeNode.
Fixes an exception that occurs if a node action deletes a construction.
2022-03-05 10:59:01 +01:00
mirrorcult ec4d4688c7
Seal/abstract/virtual everything (#6739) 2022-02-16 18:23:23 +11:00
DrSmugleaf 2a3b7d809d Fix 3000 errors 2021-12-05 18:09:01 +01:00
Vera Aguilera Puerto 5cd42c9ad6 Inline UID 2021-12-03 15:53:09 +01:00
Vera Aguilera Puerto 8b57bafcd1 StackSystem uses EntityUid for Split and Spawn 2021-11-09 15:35:03 +01:00
Vera Aguilera Puerto 5a5006e4cf
ConstructionGL2 Part 2: Better guided steps and recipes. (#5103) 2021-11-02 11:24:32 +01:00
Vera Aguilera Puerto f12cec3f98 Fix construction DoAfter results not setting current edge index.
Fixes #5061
2021-10-28 11:21:55 +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