fish-station/Content.Server
SoulSloth e40e3fa267
Cloning (#1932)
* Add art assets for cloning

* Added a 'Scan DNA' button to the medical scanner

* Made the UI update unconditional for the medical scanner until checks for power changes are in place

* Update Medical scanner to reflect powered status and fix #1774

* added a 'scan dna' button the the medical scanner that will add the contained bodies Uid to a list in CloningSystem, fixed an issue with the menu not populating if the scanner starts in an unpowered state

* Add disabling logic to 'Scan DNA' button on medical scanner

* Removed un-used libraries

* changed scan dna button to Scan and Save DNA

* Added cloning machine code infrastructure copied from Medical Scanner

* Added a list to cloning menu containing some numbers

* Cloning Machine UI sends a message to the cloning component with the entityUID

* New scans now show up in cloning pod menu

* fixed cloning machine collision shape

* cloning machine can now spawn the right player profile assuming the attatched entity is still correct.

* refactored cloning system to use a map of integer ids to player Minds

* Added a return to body cloning loop for the ghost

* Fixed warning for _playerManager being possibly null, added TODO note for ghost return to body button acting as a toggle

* removed #nullable from cloningMachineWindow"

* Trying to get rid of nullable error

* fix CloningMachine to not initilize with it's owner components

* updated CloningMachine server component to play nice with the new nullable rules

* replace flag with eventBus message for sending a ghosts mind to a clone body

* Refactor cloning so that a popup option is used to get user consent for cloning

* Refactoring

* Reverting unused changes for cloning component

* Added proper cloning pod sprites and a visualizer so 'idle' and 'cloning' states are properly reflected

* added missing robust toolbox contents

* Added cloning NoMind State and made cloning take time

* Added cloning progress bar and mind status indicator to cloning pod

* Added missing localization calls, removeed 'returned to cloned body' from ghostUI

* Added unsubscribe for cloningStartedMessage in Mindcomponent.cs OnRemove

* Added eject button to cloningMachine and clamped the cloning progress bar to 100%

* Added condition to eject body on cloningmachine so bodies can't be ejected until cloning is done

* Add click-dragOn functionality to the medical scanner for things with a bodyManager

* Messed with scan query so it doesn't fail on dead bodies as long as Mind still owns the mob

* refactored clonning scan check on medical scanner so it doesn't do a linq query

* merge with rogue toolbox

* Change the name of Cloning Machine to the less generic Cloning Pod

* Changed Cloning Pod so it pauses cloning while the power is out

* Removed the evil LocalizationManager from the cloning menus and used the static Loc instead

* removed localization dependency from bound accpetCloning user interface

* Removed Ilocalization dependency I accidentally added to ghost ui

* Update Content.Client/GameObjects/Components/MedicalScanner/MedicalScannerComponent.cs

Co-authored-by: Exp <theexp111@gmail.com>

* Changed null check to tryget in case for cloning UiButton.Clone

* Parameterized Cloning time on serverside component

* tried to reset Robust toolbox module to current master

* Added null check to ghost client component message handling, unsubscribe to the mind component listening to the cloning question ui, fixed _clonningProgress typo, moved CloningPod component dependencies to actually be dependencies, removed un-needed disposals of cloning windows, added disposals missing in boundUserInterfaces.

* Reset submodule

* corrected exception for cloning pod visualizer to refer to cloning pod state and not medical scanner state

* Fix typo

* Unsubscribe from onUiReceiveMessage in mindcomponent in the onRemove function, not the acceptcloningui function

* unsubscribe from OnUiReceiveMessage in CloningPodComponent

* unssubscribe from ghostreturn message in cloningpodComponent onRemove

Co-authored-by: Exp <theexp111@gmail.com>
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2020-09-02 12:07:54 +02:00
..
Administration Add delete entities with prototype id command (#1983) 2020-09-01 12:24:28 +02:00
AI Refactor InRangeUnobstructed and add extension methods (#1925) 2020-08-30 11:37:06 +02:00
Atmos Replace usages of ISharedNotifyManager and IServerNotifyManager with extension methods (#1965) 2020-09-01 12:34:53 +02:00
Body Add IMechanism interface to body system (#1997) 2020-09-02 01:16:13 +02:00
Cargo Fix namespaces and optimize imports (#1651) 2020-08-13 14:40:27 +02:00
Chat Replace usages of ISharedNotifyManager and IServerNotifyManager with extension methods (#1965) 2020-09-01 12:34:53 +02:00
Chemistry Fix namespaces and optimize imports (#1651) 2020-08-13 14:40:27 +02:00
Explosions Bodysystem and damagesystem rework (#1544) 2020-08-16 16:42:42 -07:00
GameObjects Cloning (#1932) 2020-09-02 12:07:54 +02:00
GameTicking Moved the uplink creation code to the PresetSuspicion.Start method to ensure uplink created when we give the traitor role (#1974) 2020-09-01 00:36:49 +02:00
GlobalVerbs Add missing localization to verb names (#1953) 2020-08-29 13:36:02 +02:00
Interfaces Tweaks damage types and classes (#1969) 2020-08-31 19:11:22 +02:00
Jobs Fix namespaces and optimize imports (#1651) 2020-08-13 14:40:27 +02:00
Mobs Add prediction for standing states and mob states (#1937) 2020-08-29 13:20:37 +02:00
Observer Fixes ghost NRE in lobby (#1907) 2020-08-25 13:37:54 +02:00
PDA Fix the server not checking uplink purchase prices (#1917) 2020-08-25 18:13:19 +02:00
Placement Fix namespaces and optimize imports (#1651) 2020-08-13 14:40:27 +02:00
Players Fix NRE when pointing happens without player data or a mind (#1855) 2020-08-22 15:18:04 +02:00
Preferences Replace pragma warning 649 disable/restore with default! 2020-08-24 14:10:28 +02:00
Sandbox Replace pragma warning 649 disable/restore with default! 2020-08-24 14:10:28 +02:00
StationEvents Random events no longer start while in lobby and round ending forces current event to end (#1782) 2020-08-19 08:54:10 +02:00
Throw Refactor UpdateKinematics() and fix a lot of Content warnings (#1709) 2020-08-15 20:38:35 -07:00
Utility Refactor InRangeUnobstructed and add extension methods (#1925) 2020-08-30 11:37:06 +02:00
app.config Updates submodule (#56) 2018-04-12 23:56:43 +02:00
AssemblyInfo.cs Fix exception in ReagentPrototype caused by IMetabolizable (#451) 2019-11-23 21:55:31 +01:00
Content.Server.csproj Make InteractUsing async, make tools use DoAfter. (#1772) 2020-08-18 14:39:08 +02:00
EntryPoint.cs Accent System (#1892) 2020-08-25 17:09:39 +02:00
IgnoredComponents.cs Rework emergency lights (#1830) 2020-08-22 12:06:29 +02:00
MoMMILink.cs Replace pragma warning 649 disable/restore with default! 2020-08-24 14:10:28 +02:00
Program.cs Content.{Client,Server} are now Exes that can be ran. 2020-01-22 20:17:32 +01:00
ServerContentIoC.cs Accent System (#1892) 2020-08-25 17:09:39 +02:00
ServerModuleTestingCallbacks.cs Improve integration testing 2019-06-29 01:58:16 +02:00
ServerNotifyManager.cs Replace pragma warning 649 disable/restore with default! 2020-08-24 14:10:28 +02:00
StatusShell.cs Rename toolbox references from ss14 to robust 2019-04-15 21:11:38 -06:00