Commit Graph

117 Commits

Author SHA1 Message Date
20kdc
f6d44be34f Activatable UI component (#5184)
* Transfer most Instrument UI logic to a new component, ActivatableUIComponent

* Move more ActivatableUIComponent stuff to ECS

* ActivatableUI component ignore on client

* ActivatableUI: Get rid of component interfaces where possible

* Add in adminOnly attribute for activatable UIs

This is so that porting #4926 to this will be easier

* Transition Solar Control Computer to ActivatableUI

* Move communications console to ActivatableUI

* Move cargo console to ActivatableUI

* Move ID card console to ActivatableUI

* ActivatableUI: Make things more amiable to entity tests adding components weirdly

* ActivatableUI: Use handling or lack thereof of events properly

* ActivatableUI: component dependency issue resolution stuffs

* ActivatableUISystem: Fix #5258

* More fixes because master did stuffo

* Check for HandDeselectedEvent again because otherwise active-hand check doesn't work

* Move just a bit more code into the system, introduce a workaround for #5258

* Purge the player status detection stuff

* Oh and some obsolete stuff too
2021-11-23 19:19:08 +01:00
Leon Friedrich
1de82b4324 Fix spill crash (#5480)
* fix spill

* clean up mop component

* remove unecessary code
2021-11-23 10:14:46 -07:00
Acruid
fa0ec5cbd9 AppearanceComponent API Changes (#5446) 2021-11-23 18:22:59 +11:00
mirrorcult
e2205e418b Epinephrine + epipen (#5444)
* add sprite and basic entity, no reagent or testing

* actually implement epinephrine and add it to the box

* allow creating it

* add it to nanomed

* fig
2021-11-22 23:51:51 -07:00
mirrorcult
732baa56a9 Reaction & reagent effect logging (#5463)
* Reaction logging

* effect logging

* position
2021-11-22 23:51:43 -07:00
Kara D
567ed44408 hotfix lube crash
stackoverflowing
2021-11-22 23:21:20 -07:00
mirrorcult
6fc397f801 carpet (#5464)
* carpet

* reviews

* why tf i gotta fix integration tests in the carpet pr
2021-11-22 18:01:51 -07:00
DrSmugleaf
c3fe5909ad THE RETURN OF THE KING
This reverts commit c18d07538a.
2021-11-22 19:08:27 +01:00
DrSmugleaf
c18d07538a Revert "Admin logs (#5419)"
This reverts commit 319aec109d.
2021-11-22 18:55:17 +01:00
Javier Guardia Fernández
319aec109d Admin logs (#5419)
* Add admin logging, models, migrations

* Add logging damage changes

* Add Log admin flag, LogFilter, Logs admin menu tab, message
Refactor admin logging API

* Change admin log get method names

* Fix the name again

* Minute amount of reorganization

* Reset Postgres db snapshot

* Reset Sqlite db snapshot

* Make AdminLog have a composite primary key of round, id

* Minute cleanup

* Change admin system to do a type check instead of index check

* Make admin logs use C# 10 interpolated string handlers

* Implement UI on its own window
Custom controls
Searching
Add admin log converters

* Implement limits into the query

* Change logs to be put into an OutputPanel instead for text wrapping

* Add log <-> player m2m relationship back

* UI improvements, make text wrap, add separators

* Remove entity prefix from damaged log

* Add explicit m2m model, fix any players filter

* Add debug command to test bulk adding logs

* Admin logs now just kinda go

* Add histogram for database update time

* Make admin log system update run every 5 seconds

* Add a cap to the log queue and a metric for how many times it has been reached

* Add metric for logs sent in a round

* Make cvars out of admin logs queue send delay and cap

* Merge fixes

* Reset some changes

* Add test for adding and getting a single log

* Add tests for bulk adding logs

* Add test for querying logs

* Add CallerArgumentExpression to LogStringHandler methods and test

* Improve UI, fix SQLite, add searching by round

* Add entities to admin logs

* Move distinct after orderby

* Add migrations

* ef core eat my ass

* Add cvar for client logs batch size

* Sort logs from newest to oldest by default

* Merge fixes

* Reorganize tests and add one for date ordering

* Add note to log types to not change their numeric values

* Add impacts to logs, better UI filtering

* Make log add callable from shared for convenience

* Get current round id directly from game ticker

* Revert namespace change for DamageableSystem
2021-11-22 18:49:26 +01:00
mirrorcult
e40c9bc427 Reactive 3.0 (#5443)
* probably scrapping this

* reimpl old behavior

* misc fixes and initial yaml

* works basically first try
2021-11-22 10:17:35 +01:00
mirrorcult
1ca990c879 Reduce default metabolism rate from 1 to 0.5 (#5445) 2021-11-22 19:45:20 +11:00
mirrorcult
0f2dda8275 screaming and crying (#5447) 2021-11-22 19:40:14 +11:00
mirrorcult
1ab7170adb Refactor reaction effects to use reagent effects (#5426)
* reaction effect refactor

* works now
2021-11-21 00:35:02 -07:00
mirrorcult
181fd055ce Adds metabolism effects to pretty much every chem already in the game (#5349)
* pass 1

* a little more reagent effect for breakfast

* move lots of stuff around

* implements all medicines

* implement all cleaning & elements

* implement toxins/pyrotechnic

* p

* linter fixies

* fixes + narcotic balancing

* fix and standardize

* reviews

* things
2021-11-20 16:47:53 -07:00
Clyybber
6ac2446d26 Remove some warnings (#5391)
* Remove unused Dependency fields

* Remove noop null check
2021-11-18 16:46:35 -07:00
mirrorcult
457e8c64ee Convert StomachBehavior to a component/system + rejig body namespaces (#5249)
* Convert StomachBehavior to a component/system + rejig body namespaces

* test

* slightly more namespace changes

* remove

* Hello?????

* fuck you github test runner

* reviews

* oobsy!
2021-11-11 16:10:57 -07:00
mirrorcult
747f02f3f3 Metabolism tweaks / metabolism 4.0 (#5246)
* Metabolism tweaks

* use MetabolismArgs and convert ReagentEntityReactions into ReagentEffects

* fork forgor 💀

* fixes
2021-11-10 11:11:28 +01:00
Javier Guardia Fernández
42aaba9a5d Remove most IEntity usages from explosions (#5240)
* Remove most IEntity usages from Destructible and Explosions

* Perform a minute amount of cleanup

* Fix build
2021-11-09 21:24:35 +01:00
Vera Aguilera Puerto
48f8dd2284 ActionBlocker CanInteract uses EntityUid exclusively
ActionBlockerSystem fully uses EntityUid now!
2021-11-09 15:05:49 +01:00
Javier Guardia Fernández
af579b15cc Update to .NET 6 and C# 10 (#5233)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
2021-11-09 15:05:07 +01:00
Vera Aguilera Puerto
9921801f15 ActionBlocker CanPickup uses EntityUid exclusively 2021-11-09 13:43:39 +01:00
Vera Aguilera Puerto
51e785c0fd ActionBlocker CanDrop uses EntityUid exclusively 2021-11-09 13:23:53 +01:00
Vera Aguilera Puerto
c051b1e056 ActionBlocker CanUse uses EntityUid exclusively 2021-11-09 13:21:59 +01:00
Vera Aguilera Puerto
c5fda6daca IReagentEffect and some chemistry stuff uses EntityUid 2021-11-09 11:51:24 +01:00
Vera Aguilera Puerto
1a177f7479 DrinkSystem uses EntityUid instead of IEntity 2021-11-09 11:28:27 +01:00
Vera Aguilera Puerto
0220551f72 ReagentEntityReaction uses EntityUid 2021-11-09 11:12:55 +01:00
mirrorcult
31d622f941 Metabolism 3.0 (#5157)
* basic system + convert all plantmetabolism

* stragglers

* convert all old metabolisms over

* fix YAML errors + dumb serialization issue

* remove unused thingy

* reimplement

* add organ type condition

* organtype condition but real

* cleanups + test fix

* metabolismtype -> metabolizertype

* solution resilience

* fixes

* serializer + use entityuid + hashset

* this is apparently an entirely different thing

* turns out it just works

* oops
2021-11-08 15:33:45 -07:00
Javier Guardia Fernández
ec9e65951c Remove IHandsComponent and ISharedHandsComponent (#5218)
* Remove IHandsComponent and ISharedHandsComponent

* Copy the documentation from the interfaces

* Revert "Copy the documentation from the interfaces"

This reverts commit 7638a2d4817743d487c7b255ba3e56add77dca86.

* Perform a minute amount of cleanup
2021-11-08 15:08:24 +01:00
mirrorcult
2d3077f560 Remove IMoveSpeedModifier in favor of events (#5212)
* Remove IMoveSpeedModifier

* fucking magboots

* yope

* rabiews
2021-11-08 16:17:35 +11:00
Leon Friedrich
3612d25539 Fix & extend add reagent verb (#4954)
* AddReagentWindow

* addReagent command

* functional UI

* fix networking

* add comments & docstrings

* Remove unecesary system

* cleanup & close-eui

* tweak default window size

* fix EUI closing error

* fix merge issues

* fix merge
2021-11-08 15:22:42 +11:00
mirrorcult
3ab4a30a0f Generalize ReagentUnit into FixedPoint2 and use it for damage calculations (#5151)
* Damage units

* sum ext method
2021-11-03 16:48:03 -07:00
moonheart08
4f58f10c77 Log the chem dispenser to server console. (#5142) 2021-11-03 15:32:32 +01:00
20kdc
7220132be3 ChemMaster/Chemistry Dispenser constructability, fixed edition (#5125) 2021-11-02 10:04:07 +01:00
Ygg01
fc5fa67a56 Refactor Resolve and IEntity in SolutionContainerSystem (#5083)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2021-11-02 12:03:23 +11:00
Fortune117
76bc00b218 Changed drinks to use ECS (#4948)
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2021-11-02 11:40:55 +11:00
Ygg01
b2aca94586 Refactor Solution from Shared -> Server (#5078)
* Move entity solution entity systems to shared

* Move SolutionComponents to Server

* Fix namespaces

* Remove Networked Component.

* Fixes

* Add components to ignore list
2021-10-29 23:40:15 +11:00
Visne
94579d1877 Fix a bunch of warnings (#5058) 2021-10-28 13:19:38 +02:00
Visne
c67160ae19 Disable warnings that would be refactored anyway (#5047) 2021-10-27 18:10:40 +02:00
20kdc
c29b23eb64 Fix ChemMaster bottles not having contents (#5026) 2021-10-25 16:58:16 +02:00
metalgearsloth
34326cfed7 Fix hypospray
Another casualty in the solution wars.
2021-10-24 16:54:08 +11:00
Fortune117
55249e3688 Add Overdosing Behaviour to Meth (#4949)
* Added debug bottle of meth as well as a damage increase on a Reagent Threshold

* fix for metabolism getting funked when there is a failed reaction condition

* removed max, raised minimum to 10

* reduced regular meth damage, increased overdose damage
2021-10-20 13:30:55 -07:00
20kdc
6c6bde8743 FoodComponent solution un-hardcoding, rehydratable solution name fixes, monkey cubes edible again, slicable food preserves poisons (#4942) 2021-10-19 00:13:43 -07:00
Vera Aguilera Puerto
b904efb942 Makes many thing that update on paused *not* do that. (#4938) 2021-10-18 23:58:34 +11:00
ShadowCommander
dae3ed3006 Fix chemmaster UI and eating pills (#4900) 2021-10-16 14:56:20 +02:00
Leon Friedrich
6cb58e608b ECS verbs and update context menu (#4594)
* Functioning ECS verbs

Currently only ID card console works.

* Changed verb types and allow ID card insertions

* Verb GUI sorting and verb networking

* More networking, and shared components

* Clientside verbs work now.

* Verb enums changed to bitmask flags

* Verb Categories redo

* Fix range check

* GasTank Verb

* Remove unnecessary bodypart verb

* Buckle Verb

* buckle & unbuckle verbs

* Updated range checks

* Item cabinet verbs

* Add range user override

* construction verb

* Chemistry machine verbs

* Climb Verb

* Generalise pulled entity verbs

* ViewVariables Verb

* rejuvenate, delete, sentient, control verbs

* Outfit verb

* inrangeunoccluded and tubedirection verbs

* attach-to verbs

* remove unused verbs and move VV

* Rename DebugVerbSystem

* Ghost role and pointing verbs

* Remove global verbs

* Allow verbs to raise events

* Changing categories and simplifying debug verbs

* Add rotate and flip verbs

* fix rejuvenate test

* redo context menu

* new Add Gas debug verb

* Add Set Temperature debug verb

* Uncuff verb

* Disposal unit verbs

* Add pickup verb

* lock/unlock verb

* Remove verb type, add specific verb events

* rename verb messages -> events

* Context menu displays verbs by interaction type

* Updated context menu HandleMove

previously, checked if entities moved 1 tile from click location.

Now checks if entities moved out of view.

Now you can actually right-click interact with yourself while walking!

* Misc Verb menu GUI changes

* Fix non-human/ghost verbs

* Update types and categories

* Allow non-ghost/human to open context menu

* configuration verb

* tagger verb

* Morgue Verbs

* Medical Scanner Verbs

* Fix solution refactor merge issues

* Fix context menu in-view check

* Remove prepare GUI

* Redo verb restrictions

* Fix context menu UI

* Disposal Verbs

* Spill verb

* Light verb

* Hand Held light verb

* power cell verbs

* storage verbs

and adding names to insert/eject

* Pulling verb

* Close context menu on verb execution

* Strip verb

* AmmoBox verb

* fix pull verb

* gun barrel verbs

revolver verb
energy weapon verbs
Bolt action verb

* Magazine gun barrel  verbs

* Add charger verbs

* PDA verbs

* Transfer amount verb

* Add reagent verb

* make alt-click use ECS verbs

* Delete old verb files

* Magboot verb

* finalising tweaks

* context menu visibility changes

* code cleanup

* Update AdminAddReagentUI.cs

* Remove HasFlag

* Consistent verb keys

* Remove Linq, add comment

* Fix in-inventory check

* Update GUI text alignment and padding

* Added close-menu option

* Changed some "interaction" verbs to "activation"

* Remove verb keys, use sorted sets

* fix master merge

* update some verb text

* Undo Changes

Remove some new verbs that can be added later

undid some .ftl bugfixes, can and should be done separately

* fix merge

* Undo file rename

* fix merge

* Misc Cleanup

* remove contraction

* Fix keybinding issue

* fix comment

* merge fix

* fix merge

* fix merge

* fix merge

* fix merge

* fix open-close verbs

* adjust uncuff verb

* fix merge

and undo the renaming of SharedPullableComponent to PullableComponent. I'm tired of all of those merge conflicts
2021-10-04 20:29:03 -07:00
20kdc
9600c8e983 Fix various solution capability issues (syringes, drinks) (#4687)
* Fix syringe message stating you're attempting to draw from yourself when you aren't

* Fix various missing capabilities (syringes, beakers, drinks)

* And fix mug inject/dispense/etc, too!

* Injectors can now refill things, and switch over drinks and cups thereof to be refillable rather than injectable
2021-10-01 12:06:50 +02:00
Vera Aguilera Puerto
6451b339c2 Fix drinking glasses not fitting in reagent dispensers. 2021-09-30 14:21:56 +02:00
Vera Aguilera Puerto
0be5ff829b Gets rid of all ComponentManager usages. (#4707) 2021-09-28 13:35:29 +02:00
Vera Aguilera Puerto
0767bd3777 Popup ECS Refactor (#4692) 2021-09-26 15:18:45 +02:00