mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-25 14:00:18 +01:00
Crutch Mechanics (#16011)
* Crutch Mechanics * Update human_movement.dm
This commit is contained in:
@@ -121,6 +121,8 @@
|
||||
|
||||
/mob/living/carbon/human/Move()
|
||||
. = ..()
|
||||
if(.) //We moved
|
||||
handle_leg_damage()
|
||||
|
||||
var/turf/T = loc
|
||||
var/footsound
|
||||
@@ -154,6 +156,21 @@
|
||||
if (footstep % 2)
|
||||
playsound(src, is_noisy ? footsound : species.footsound, 40, 1, required_asfx_toggles = ASFX_FOOTSTEPS)
|
||||
|
||||
/mob/living/carbon/human/proc/handle_leg_damage()
|
||||
if(!can_feel_pain())
|
||||
return
|
||||
var/crutches = 0
|
||||
for (var/obj/item/cane/C as anything in get_type_in_hands(/obj/item/cane))
|
||||
if(istype(C) && (C?.can_support))
|
||||
crutches++
|
||||
for(var/organ_name in list(BP_L_LEG, BP_R_LEG, BP_L_FOOT, BP_R_FOOT))
|
||||
var/obj/item/organ/external/E = get_organ(organ_name)
|
||||
if(E && (ORGAN_IS_DISLOCATED(E)|| E.is_broken()))
|
||||
if(crutches)
|
||||
crutches--
|
||||
else
|
||||
E.add_pain(10)
|
||||
|
||||
/mob/living/carbon/human/mob_has_gravity()
|
||||
. = ..()
|
||||
if(!. && mob_negates_gravity())
|
||||
|
||||
@@ -0,0 +1,41 @@
|
||||
################################
|
||||
# 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
|
||||
# balance
|
||||
# admin
|
||||
# backend
|
||||
# security
|
||||
# refactor
|
||||
#################################
|
||||
|
||||
# Your name.
|
||||
author: Wowzewow (Wezzy)
|
||||
|
||||
# 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:
|
||||
- rscadd: "When walking without crutches with a broken leg, it will hurt."
|
||||
Reference in New Issue
Block a user