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