Merge pull request #6558 from VOREStation/upstream-merge-6666

[MIRROR] Applies same restrictions as first aid to external synth repair
This commit is contained in:
Novacat
2020-02-10 19:09:03 -05:00
committed by GitHub
5 changed files with 74 additions and 7 deletions

View File

@@ -15,12 +15,12 @@
/obj/item/stack/medical/attack(mob/living/carbon/M as mob, mob/user as mob)
if (!istype(M))
user << "<span class='warning'>\The [src] cannot be applied to [M]!</span>"
to_chat(user, "<span class='warning'>\The [src] cannot be applied to [M]!</span>")
return 1
if ( ! (istype(user, /mob/living/carbon/human) || \
istype(user, /mob/living/silicon)) )
user << "<span class='warning'>You don't have the dexterity to do this!</span>"
to_chat(user, "<span class='warning'>You don't have the dexterity to do this!</span>")
return 1
if (istype(M, /mob/living/carbon/human))
@@ -28,24 +28,24 @@
var/obj/item/organ/external/affecting = H.get_organ(user.zone_sel.selecting)
if(!affecting)
user << "<span class='warning'>No body part there to work on!</span>"
to_chat(user, "<span class='warning'>No body part there to work on!</span>")
return 1
if(affecting.organ_tag == BP_HEAD)
if(H.head && istype(H.head,/obj/item/clothing/head/helmet/space))
user << "<span class='warning'>You can't apply [src] through [H.head]!</span>"
to_chat(user, "<span class='warning'>You can't apply [src] through [H.head]!</span>")
return 1
else
if(H.wear_suit && istype(H.wear_suit,/obj/item/clothing/suit/space))
user << "<span class='warning'>You can't apply [src] through [H.wear_suit]!</span>"
to_chat(user, "<span class='warning'>You can't apply [src] through [H.wear_suit]!</span>")
return 1
if(affecting.robotic == ORGAN_ROBOT)
user << "<span class='warning'>This isn't useful at all on a robotic limb.</span>"
to_chat(user, "<span class='warning'>This isn't useful at all on a robotic limb.</span>")
return 1
if(affecting.robotic >= ORGAN_LIFELIKE)
user << "<span class='warning'>You apply the [src], but it seems to have no effect...</span>"
to_chat(user, "<span class='warning'>You apply the [src], but it seems to have no effect...</span>")
use(1)
return 1

View File

@@ -29,6 +29,19 @@
if (istype(M,/mob/living/carbon/human)) //Repairing robolimbs
var/mob/living/carbon/human/H = M
var/obj/item/organ/external/S = H.get_organ(user.zone_sel.selecting)
if(!S)
to_chat(user, "<span class='warning'>No body part there to work on!</span>")
return 1
if(S.organ_tag == BP_HEAD)
if(H.head && istype(H.head,/obj/item/clothing/head/helmet/space))
to_chat(user, "<span class='warning'>You can't apply [src] through [H.head]!</span>")
return 1
else
if(H.wear_suit && istype(H.wear_suit,/obj/item/clothing/suit/space))
to_chat(user, "<span class='warning'>You can't apply [src] through [H.wear_suit]!</span>")
return 1
//VOREStation Edit Start
if (S && (S.robotic >= ORGAN_ROBOT))
if(!S.get_damage())

View File

@@ -67,6 +67,15 @@
if(!S || S.robotic < ORGAN_ROBOT || S.open == 3)
return ..()
if(S.organ_tag == BP_HEAD)
if(H.head && istype(H.head,/obj/item/clothing/head/helmet/space))
to_chat(user, "<span class='warning'>You can't apply [src] through [H.head]!</span>")
return 1
else
if(H.wear_suit && istype(H.wear_suit,/obj/item/clothing/suit/space))
to_chat(user, "<span class='warning'>You can't apply [src] through [H.wear_suit]!</span>")
return 1
if(!welding)
to_chat(user, "<span class='warning'>You'll need to turn [src] on to patch the damage on [H]'s [S.name]!</span>")
return 1

View File

@@ -555,6 +555,15 @@ obj/structure/cable/proc/cableColor(var/colorC)
if(!S || S.robotic < ORGAN_ROBOT || S.open == 3)
return ..()
if(S.organ_tag == BP_HEAD)
if(H.head && istype(H.head,/obj/item/clothing/head/helmet/space))
to_chat(user, "<span class='warning'>You can't apply [src] through [H.head]!</span>")
return 1
else
if(H.wear_suit && istype(H.wear_suit,/obj/item/clothing/suit/space))
to_chat(user, "<span class='warning'>You can't apply [src] through [H.wear_suit]!</span>")
return 1
var/use_amt = min(src.amount, CEILING(S.burn_dam/5, 1), 5)
if(can_use(use_amt))
if(S.robo_repair(5*use_amt, BURN, "some damaged wiring", src, user))

View File

@@ -0,0 +1,36 @@
################################
# Example Changelog File
#
# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
#
# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
# When it is, any changes listed below will disappear.
#
# Valid Prefixes:
# bugfix
# wip (For works in progress)
# tweak
# soundadd
# sounddel
# rscadd (general adding of nice things)
# rscdel (general deleting of nice things)
# imageadd
# imagedel
# maptweak
# spellcheck (typo fixes)
# experiment
#################################
# Your name.
author: Heroman3003
# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
delete-after: True
# Any changes you've made. See valid prefix list above.
# INDENT WITH TWO SPACES. NOT TABS. SPACES.
# SCREW THIS UP AND IT WON'T WORK.
# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
changes:
- tweak: "Repair on synths now has same limitation as first aid on organics (must not be wearing a space suit)."