mirror of
https://github.com/Skyrat-SS13/Skyrat-tg.git
synced 2026-07-14 09:24:21 +01:00
2e1a819c4f
* Bow Update: Fletching instruction manual, bows using projectile damage multipliers, unhardcoded bow sprites, hot pink death * Conflict Removal * Update bow_arrows.dm * Update bow_arrows.dm * tthis also update the actual bow & arrow code * Update arrow.dm * [MIRROR] Bow Update: Fletching instruction manual, bows using projectile damage multipliers, unhardcoded bow sprites, hot pink death [MDB IGNORE] (#3595) * Bow Update: Fletching instruction manual, bows using projectile damage multipliers, unhardcoded bow sprites, hot pink death * modularize bone dice(???) * gives the cargo crate arrows * conflict * icon updates rotates our bows the same way, adds invisible pixels for easier loading to our primitive bows, removes bow/arrow icons that are clones of upstream's also a hack for arrow overlays on bows- currently just defaults to default arrows if an overlay doesn't exist for it, but our only arrows aren't that distinct with default arrows at that size (we do not have alternative arrow overlay sprites) * recipe changes im not gonna try explaining everything here but the general idea is that the cargo fletching kit is sorta novelty bows, and the big boy stuff you get from smithing * update ammo hud for bows * this shouldn't be here * i forgot to save these cleans up the recipes, ashwalker arrows are just made by combining by hand (you could already do this, the recipes were a noobtrap) and the cargo kit is cheaper * un-nerf the chaplain bow --------- Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Co-authored-by: Fluffles <piecopresident@gmail.com> * Refactor Synths away from /Robot/ limbs, Cybernetically augmented humanoids have alternative surgeries (#3970) * [NO SELF SURGERY] Cybernetically augmented humanoids have alternative surgeries (both standard and advanced) [NO SELF SURGERY], as well as other misc additions * 1 * p1 * Update limbs.dm * oh yeah Taurs * Limbs and Techwebs for them * 3 * EMP * Surgery Removals from Synths * 5 * test * Look Ma, no more surgery * Update tgstation.dme * Update hepatectomy.dm * little bit more edit cleanup and diff reset * Update surgery.dm * Synth Organ Surgery! * Update lungs.dm * target * 4 * Update synth_defines.dm * you add the metal before the zap zap * Apply suggestions from code review Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> * 1 * Update code/modules/surgery/hepatectomy.dm * Update code/modules/surgery/advanced/brainwashing.dm --------- Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Co-authored-by: Fluffles <piecopresident@gmail.com> Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> * Update tgstation.dme * fix stuff * Update declarations.dm * fix duplicate defines --------- Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Co-authored-by: projectkepler-RU <99981766+projectkepler-ru@users.noreply.github.com> Co-authored-by: NovaBot <154629622+NovaBot13@users.noreply.github.com> Co-authored-by: Fluffles <piecopresident@gmail.com> Co-authored-by: Zergspower <22140677+Zergspower@users.noreply.github.com> Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> Co-authored-by: Andrew <mt.forspam@gmail.com>
93 lines
3.7 KiB
Plaintext
93 lines
3.7 KiB
Plaintext
/datum/surgery/brain_surgery
|
|
name = "Brain surgery"
|
|
possible_locs = list(BODY_ZONE_HEAD)
|
|
steps = list(
|
|
/datum/surgery_step/incise,
|
|
/datum/surgery_step/retract_skin,
|
|
/datum/surgery_step/saw,
|
|
/datum/surgery_step/clamp_bleeders,
|
|
/datum/surgery_step/fix_brain,
|
|
/datum/surgery_step/close,
|
|
)
|
|
|
|
/datum/surgery/brain_surgery/mechanic
|
|
name = "Wetware OS Diagnostics"
|
|
requires_bodypart_type = BODYTYPE_ROBOTIC
|
|
possible_locs = list(BODY_ZONE_HEAD)
|
|
steps = list(
|
|
/datum/surgery_step/mechanic_open,
|
|
/datum/surgery_step/open_hatch,
|
|
/datum/surgery_step/mechanic_unwrench,
|
|
/datum/surgery_step/fix_brain/mechanic,
|
|
/datum/surgery_step/mechanic_wrench,
|
|
/datum/surgery_step/mechanic_close,
|
|
)
|
|
|
|
/datum/surgery_step/fix_brain
|
|
name = "fix brain (hemostat)"
|
|
implements = list(
|
|
TOOL_HEMOSTAT = 85,
|
|
TOOL_SCREWDRIVER = 35,
|
|
/obj/item/pen = 15) //don't worry, pouring some alcohol on their open brain will get that chance to 100
|
|
repeatable = TRUE
|
|
time = 100 //long and complicated
|
|
preop_sound = 'sound/surgery/hemostat1.ogg'
|
|
success_sound = 'sound/surgery/hemostat1.ogg'
|
|
failure_sound = 'sound/surgery/organ2.ogg'
|
|
|
|
/datum/surgery_step/fix_brain/mechanic
|
|
name = "perform neural debugging (hemostat or multitool)"
|
|
implements = list(
|
|
TOOL_HEMOSTAT = 85,
|
|
TOOL_MULTITOOL = 85,
|
|
TOOL_SCREWDRIVER = 35,
|
|
/obj/item/pen = 15)
|
|
preop_sound = 'sound/items/taperecorder/tape_flip.ogg'
|
|
success_sound = 'sound/items/taperecorder/taperecorder_close.ogg'
|
|
|
|
/datum/surgery/brain_surgery/can_start(mob/user, mob/living/carbon/target)
|
|
return target.get_organ_slot(ORGAN_SLOT_BRAIN) && ..()
|
|
|
|
/datum/surgery_step/fix_brain/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
|
display_results(
|
|
user,
|
|
target,
|
|
span_notice("You begin to fix [target]'s brain..."),
|
|
span_notice("[user] begins to fix [target]'s brain."),
|
|
span_notice("[user] begins to perform surgery on [target]'s brain."),
|
|
)
|
|
display_pain(target, "Your head pounds with unimaginable pain!")
|
|
|
|
/datum/surgery_step/fix_brain/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery, default_display_results = FALSE)
|
|
display_results(
|
|
user,
|
|
target,
|
|
span_notice("You succeed in fixing [target]'s brain."),
|
|
span_notice("[user] successfully fixes [target]'s brain!"),
|
|
span_notice("[user] completes the surgery on [target]'s brain."),
|
|
)
|
|
display_pain(target, "The pain in your head receeds, thinking becomes a bit easier!")
|
|
if(target.mind?.has_antag_datum(/datum/antagonist/brainwashed))
|
|
target.mind.remove_antag_datum(/datum/antagonist/brainwashed)
|
|
target.setOrganLoss(ORGAN_SLOT_BRAIN, target.get_organ_loss(ORGAN_SLOT_BRAIN) - 50) //we set damage in this case in order to clear the "failing" flag
|
|
target.cure_all_traumas(TRAUMA_RESILIENCE_SURGERY)
|
|
if(target.get_organ_loss(ORGAN_SLOT_BRAIN) > 0)
|
|
to_chat(user, "[target]'s brain looks like it could be fixed further.")
|
|
return ..()
|
|
|
|
/datum/surgery_step/fix_brain/failure(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
|
|
if(target.get_organ_slot(ORGAN_SLOT_BRAIN))
|
|
display_results(
|
|
user,
|
|
target,
|
|
span_warning("You screw up, causing more damage!"),
|
|
span_warning("[user] screws up, causing brain damage!"),
|
|
span_notice("[user] completes the surgery on [target]'s brain."),
|
|
)
|
|
display_pain(target, "Your head throbs with horrible pain; thinking hurts!")
|
|
target.adjustOrganLoss(ORGAN_SLOT_BRAIN, 60)
|
|
target.gain_trauma_type(BRAIN_TRAUMA_SEVERE, TRAUMA_RESILIENCE_LOBOTOMY)
|
|
else
|
|
user.visible_message(span_warning("[user] suddenly notices that the brain [user.p_they()] [user.p_were()] working on is not there anymore."), span_warning("You suddenly notice that the brain you were working on is not there anymore."))
|
|
return FALSE
|