Merge pull request #11697 from Markolie/tribalhealing

Add tribal splints, ash walker tweaks and Lavaland tweaks
This commit is contained in:
Fox McCloud
2019-08-09 17:22:22 -04:00
committed by GitHub
9 changed files with 63 additions and 30 deletions
+1
View File
@@ -1083,6 +1083,7 @@
premium = list(/obj/item/clothing/mask/cigarette/cigar/havana = 2,
/obj/item/storage/fancy/cigarettes/cigpack_robustgold = 1,
/obj/item/lighter/zippo = 3)
prices = list()
/obj/machinery/vending/cigarette/New()
..()
+27 -22
View File
@@ -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, "<span class='danger'>You can't apply a splint there!</span>")
return
return TRUE
if(affecting.status & ORGAN_SPLINTED)
to_chat(user, "<span class='danger'>[H]'s [limb] is already splinted!</span>")
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, "<span class='notice'>You remove the splint from [H]'s [limb].</span>")
return
if(M == user)
user.visible_message("<span class='notice'>[user] starts to apply [src] to [user.p_their()] [limb].</span>", \
"<span class='notice'>You start to apply [src] to your [limb].</span>", \
"<span class='notice'>You hear something being wrapped.</span>")
if(!do_mob(user, H, self_delay))
return
else
user.visible_message("<span class='green'>[user] applies [src] to [H]'s [limb].</span>", \
"<span class='green'>You apply [src] to [H]'s [limb].</span>", \
"<span class='green'>You hear something being wrapped.</span>")
return TRUE
if((M == user && self_delay > 0) || (M != user && other_delay > 0))
user.visible_message("<span class='notice'>[user] starts to apply [src] to [H]'s [limb].</span>", \
"<span class='notice'>You start to apply [src] to [H]'s [limb].</span>", \
"<span class='notice'>You hear something being wrapped.</span>")
if(M == user && !do_mob(user, H, self_delay))
return TRUE
else if(!do_mob(user, H, other_delay))
return TRUE
user.visible_message("<span class='notice'>[user] applies [src] to [H]'s [limb].</span>", \
"<span class='notice'>You apply [src] to [H]'s [limb].</span>")
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
+8
View File
@@ -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/sinew = 1)
result = /obj/item/stack/medical/splint/tribal
category = CAT_PRIMAL
/datum/crafting_recipe/guillotine
name = "Guillotine"
result = /obj/structure/guillotine
+11
View File
@@ -27,6 +27,17 @@
if(prob(15))
harvest(null, TRUE)
/obj/structure/flora/ash/ex_act(severity, target)
switch(severity)
if(1)
qdel(src)
if(2)
if(prob(80))
qdel(src)
if(3)
if(prob(50))
qdel(src)
/obj/structure/flora/ash/proc/harvest(user, no_drop)
if(harvested)
return 0