diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm
index 95b2e67811..648000bee6 100644
--- a/code/modules/mob/living/carbon/human/examine.dm
+++ b/code/modules/mob/living/carbon/human/examine.dm
@@ -190,6 +190,12 @@
else if(jitteriness >= 100)
msg += "[t_He] [t_is] twitching ever so slightly.\n"
+ //splints
+ for(var/organ in list("l_leg","r_leg","l_arm","r_arm"))
+ var/datum/organ/external/o = get_organ(organ)
+ if(o && o.status & ORGAN_SPLINTED)
+ msg += "[t_He] [t_has] a splint on his [o.display_name]!\n"
+
if(suiciding)
msg += "[t_He] appears to have commited suicide... there is no hope of recovery.\n"
diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm
index d9cd07e05c..2027ca6746 100644
--- a/code/modules/mob/living/carbon/human/human.dm
+++ b/code/modules/mob/living/carbon/human/human.dm
@@ -379,6 +379,7 @@
[(handcuffed ? text("Handcuffed") : text("Not Handcuffed"))]
[(legcuffed ? text("Legcuffed") : text(""))]
[(internal ? text("Remove Internal") : "")]
+
Remove Splints
Empty Pockets
Refresh
Close
diff --git a/code/modules/mob/living/carbon/human/human_movement.dm b/code/modules/mob/living/carbon/human/human_movement.dm
index 894ea1ff04..22ea3b9400 100644
--- a/code/modules/mob/living/carbon/human/human_movement.dm
+++ b/code/modules/mob/living/carbon/human/human_movement.dm
@@ -25,6 +25,8 @@
var/datum/organ/external/E = get_organ(organ_name)
if(!E || (E.status & ORGAN_DESTROYED))
tally += 4
+ if(E.status & ORGAN_SPLINTED)
+ tally += 0.5
else if(E.status & ORGAN_BROKEN)
tally += 1.5
diff --git a/code/modules/mob/living/carbon/human/inventory.dm b/code/modules/mob/living/carbon/human/inventory.dm
index 3bdf798a6b..0aa332dc1b 100644
--- a/code/modules/mob/living/carbon/human/inventory.dm
+++ b/code/modules/mob/living/carbon/human/inventory.dm
@@ -340,6 +340,16 @@
if("id")
if ((!( target.wear_id ) || !( target.w_uniform )))
del(src)
+ if("splints")
+ var/count = 0
+ for(var/organ in list("l_leg","r_leg","l_arm","r_arm"))
+ var/datum/organ/external/o = target.organs_by_name[organ]
+ if(o.status & ORGAN_SPLINTED)
+ count = 1
+ break
+ if(count == 0)
+ del(src)
+ return
if("internal")
if ((!( (istype(target.wear_mask, /obj/item/clothing/mask) && istype(target.back, /obj/item/weapon/tank) && !( target.internal )) ) && !( target.internal )))
del(src)
@@ -443,6 +453,9 @@
message = "\red [source] is trying to remove [target]'s internals"
else
message = "\red [source] is trying to set on [target]'s internals."
+ if("splints")
+ message = text("\red [] is trying to remove []'s splints!", source, target)
+
for(var/mob/M in viewers(target, null))
M.show_message(message, 1)
spawn( HUMAN_STRIP_DELAY )
@@ -541,6 +554,16 @@ It can still be worn/put on as normal.
slot_to_process = slot_legcuffed
if (target.legcuffed)
strip_item = target.legcuffed
+ if("splints")
+ for(var/organ in list("l_leg","r_leg","l_arm","r_arm"))
+ var/datum/organ/external/o = target.get_organ(organ)
+ if (o && o.status & ORGAN_SPLINTED)
+ var/obj/item/W = new /obj/item/stack/medical/splint/single()
+ o.status &= ~ORGAN_SPLINTED
+ if (W)
+ W.loc = target.loc
+ W.layer = initial(W.layer)
+ W.add_fingerprint(source)
if("CPR")
if ((target.health > config.health_threshold_dead && target.health < config.health_threshold_crit))
var/suff = min(target.getOxyLoss(), 7)
diff --git a/code/modules/organs/organ.dm b/code/modules/organs/organ.dm
index dc16e55bd0..8cf63f673c 100644
--- a/code/modules/organs/organ.dm
+++ b/code/modules/organs/organ.dm
@@ -80,7 +80,7 @@
//Broken limbs hurt too
var/broken = 0
- if(E.status & ORGAN_BROKEN && !(E.status & ORGAN_SPLINTED && prob(10)) )
+ if(E.status & ORGAN_BROKEN && !(E.status & ORGAN_SPLINTED) )
broken = 1
//Moving around with fractured ribs won't do you any good
diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi
index 5bf1ae808b..3ecb07ea6a 100644
Binary files a/icons/obj/items.dmi and b/icons/obj/items.dmi differ
diff --git a/icons/obj/storage.dmi b/icons/obj/storage.dmi
index e53127bd93..ec08cf37e7 100644
Binary files a/icons/obj/storage.dmi and b/icons/obj/storage.dmi differ