mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-28 14:37:04 +01:00
[GBP: NO UPDATE] Fixes robotic surgery issues (#19253)
* Fixes robotic surgery issues * Update code/datums/components/surgery_initiator.dm Co-authored-by: Farie82 <farie82@users.noreply.github.com> Co-authored-by: Farie82 <farie82@users.noreply.github.com>
This commit is contained in:
@@ -24,6 +24,9 @@
|
||||
/// Also, note that for anything sharp, SURGERY_INITIATOR_ORGANIC should be set as well.
|
||||
var/valid_starting_types = SURGERY_INITIATOR_ORGANIC
|
||||
|
||||
// Replace any other surgery initiator
|
||||
dupe_type = /datum/component/surgery_initiator
|
||||
|
||||
/**
|
||||
* Create a new surgery initiating component.
|
||||
*
|
||||
@@ -137,7 +140,7 @@
|
||||
var/list/available_surgeries = list()
|
||||
|
||||
for(var/datum/surgery/surgery in GLOB.surgeries_list)
|
||||
if(surgery.abstract) // no choosing abstract surgeries
|
||||
if(surgery.abstract && !istype(surgery, forced_surgery)) // no choosing abstract surgeries, though they can be forced
|
||||
continue
|
||||
if(!target.can_run_surgery(surgery, user))
|
||||
continue
|
||||
|
||||
@@ -133,7 +133,7 @@
|
||||
if(!is_robotic())
|
||||
application_surgery = /datum/surgery/reattach
|
||||
else
|
||||
application_surgery = /datum/surgery/attach_robotic_limb
|
||||
application_surgery = /datum/surgery/reattach_synth
|
||||
|
||||
AddComponent(/datum/component/surgery_initiator/limb, forced_surgery = application_surgery)
|
||||
|
||||
@@ -699,6 +699,9 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
// This is so surgery isn't kaput, let's see how this does
|
||||
encased = null
|
||||
|
||||
// override the existing initiator
|
||||
AddComponent(/datum/component/surgery_initiator/limb, forced_surgery = /datum/surgery/reattach_synth)
|
||||
|
||||
if(company && istext(company))
|
||||
set_company(company)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user