diff --git a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm
index 66d5f5fce80..ae67ada1ced 100644
--- a/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm
+++ b/_maps/map_files/RandomRuins/LavaRuins/lavaland_surface_ash_walker1.dmm
@@ -189,11 +189,12 @@
dir = 4
},
/obj/structure/closet/crate/medical,
-/obj/item/storage/firstaid/regular,
/obj/item/reagent_containers/iv_bag/blood,
/obj/item/reagent_containers/iv_bag/blood,
/obj/item/reagent_containers/iv_bag/blood,
/obj/item/stack/sheet/cloth/ten,
+/obj/item/stack/medical/splint,
+/obj/item/storage/firstaid/adv,
/turf/simulated/floor/plating/asteroid/basalt/lava_land_surface,
/area/ruin/unpowered/ash_walkers)
"aF" = (
diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm
index 0bdc88c5b52..0e95f509463 100644
--- a/code/game/objects/items/stacks/medical.dm
+++ b/code/game/objects/items/stacks/medical.dm
@@ -195,8 +195,6 @@
heal_burn = 25
//Medical Herbs//
-
-
/obj/item/stack/medical/bruise_pack/comfrey
name = "\improper Comfrey leaf"
singular_name = "Comfrey leaf"
@@ -217,48 +215,55 @@
color = "#4CC5C7"
heal_burn = 12
-
-//Splints//
-
-
+// Splints
/obj/item/stack/medical/splint
name = "medical splints"
singular_name = "medical splint"
icon_state = "splint"
- unique_handling = 1
+ unique_handling = TRUE
self_delay = 100
+ var/other_delay = 0
/obj/item/stack/medical/splint/attack(mob/living/M, mob/user)
if(..())
- return 1
+ return TRUE
if(ishuman(M))
var/mob/living/carbon/human/H = M
var/obj/item/organ/external/affecting = H.get_organ(user.zone_sel.selecting)
var/limb = affecting.name
+
if(!(affecting.limb_name in list("l_arm", "r_arm", "l_hand", "r_hand", "l_leg", "r_leg", "l_foot", "r_foot")))
to_chat(user, "You can't apply a splint there!")
- return
+ return TRUE
+
if(affecting.status & ORGAN_SPLINTED)
to_chat(user, "[H]'s [limb] is already splinted!")
- if(alert(user, "Would you like to remove the splint from [H]'s [limb]?", "Removing.", "Yes", "No") == "Yes")
+ if(alert(user, "Would you like to remove the splint from [H]'s [limb]?", "Splint removal.", "Yes", "No") == "Yes")
affecting.status &= ~ORGAN_SPLINTED
H.handle_splints()
to_chat(user, "You remove the splint from [H]'s [limb].")
- return
- if(M == user)
- user.visible_message("[user] starts to apply [src] to [user.p_their()] [limb].", \
- "You start to apply [src] to your [limb].", \
- "You hear something being wrapped.")
- if(!do_mob(user, H, self_delay))
- return
- else
- user.visible_message("[user] applies [src] to [H]'s [limb].", \
- "You apply [src] to [H]'s [limb].", \
- "You hear something being wrapped.")
+ return TRUE
+
+ if((M == user && self_delay > 0) || (M != user && other_delay > 0))
+ user.visible_message("[user] starts to apply [src] to [H]'s [limb].", \
+ "You start to apply [src] to [H]'s [limb].", \
+ "You hear something being wrapped.")
+
+ if(M == user && !do_mob(user, H, self_delay))
+ return TRUE
+ else if(!do_mob(user, H, other_delay))
+ return TRUE
+
+ user.visible_message("[user] applies [src] to [H]'s [limb].", \
+ "You apply [src] to [H]'s [limb].")
affecting.status |= ORGAN_SPLINTED
affecting.splinted_count = H.step_count
H.handle_splints()
-
use(1)
+
+/obj/item/stack/medical/splint/tribal
+ name = "tribal splints"
+ icon_state = "tribal_splint"
+ other_delay = 50
diff --git a/code/modules/crafting/recipes.dm b/code/modules/crafting/recipes.dm
index f4f952d4db5..938dabbc254 100644
--- a/code/modules/crafting/recipes.dm
+++ b/code/modules/crafting/recipes.dm
@@ -463,6 +463,14 @@
/obj/item/stack/sheet/animalhide/ashdrake = 5)
category = CAT_PRIMAL
+/datum/crafting_recipe/tribal_splint
+ name = "Tribal Splint"
+ time = 20
+ reqs = list(/obj/item/stack/sheet/bone = 2,
+ /obj/item/stack/sheet/leather = 1)
+ result = /obj/item/stack/medical/splint/tribal
+ category = CAT_PRIMAL
+
/datum/crafting_recipe/guillotine
name = "Guillotine"
result = /obj/structure/guillotine
diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi
index 0cfe6dc554c..05a5768ce89 100644
Binary files a/icons/obj/items.dmi and b/icons/obj/items.dmi differ