diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 3c40270ea9a..29785a2c075 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -761,22 +761,38 @@ About the new airlock wires panel: if(src.isElectrified()) if(src.shock(user, 100)) return - - if(ishuman(user) && prob(40) && src.density) + if(ishuman(user)) var/mob/living/carbon/human/H = user + if(H.getBrainLoss() >= 50) - playsound(src.loc, 'sound/effects/bang.ogg', 25, 1) - if(!istype(H.head, /obj/item/clothing/head/helmet)) - user.visible_message("[user] headbutts the airlock.") - var/obj/item/organ/external/affecting = H.get_organ("head") - H.Stun(8) - H.Weaken(5) - if(affecting.take_damage(10, 0)) - H.UpdateDamageIcon() - else - user.visible_message("[user] headbutts the airlock. Good thing they're wearing a helmet.") - return + if(prob(40) && src.density) + playsound(src.loc, 'sound/effects/bang.ogg', 25, 1) + if(!istype(H.head, /obj/item/clothing/head/helmet)) + user.visible_message("[user] headbutts the airlock.") + var/obj/item/organ/external/affecting = H.get_organ("head") + H.Stun(8) + H.Weaken(5) + if(affecting.take_damage(10, 0)) + H.UpdateDamageIcon() + else + user.visible_message("[user] headbutts the airlock. Good thing they're wearing a helmet.") + return + + if(H.species.can_shred(H)) + if(!src.density) + return + + H.visible_message("\The [H] begins to pry open \the [src]!", "You begin to pry open \the [src]!", "You hear the sound of an airlock being forced open.") + + if(!do_after(H, 120, 1, act_target = src)) + return + + src.do_animate("spark") + src.stat |= BROKEN + var/check = src.open(1) + src.visible_message("\The [H] slices \the [src]'s controls[check ? ", ripping it open!" : ", breaking it!"]", "You slice \the [src]'s controls[check ? ", ripping it open!" : ", breaking it!"]", "You hear something sparking.") + return if(src.p_open) user.set_machine(src) wires.Interact(user) diff --git a/html/changelogs/alberyk-airlock.yml b/html/changelogs/alberyk-airlock.yml new file mode 100644 index 00000000000..c2f3144be94 --- /dev/null +++ b/html/changelogs/alberyk-airlock.yml @@ -0,0 +1,4 @@ +author: Alberyk +delete-after: True +changes: + - rscadd: "Antag related species, such as vox, xenomorphs and skeletons, can now pry open airlocks by clicking on them with harm intent."