diff --git a/code/modules/mob/living/carbon/human/species/station.dm b/code/modules/mob/living/carbon/human/species/station.dm index 0b44e0c94b0..514a43cdeb6 100644 --- a/code/modules/mob/living/carbon/human/species/station.dm +++ b/code/modules/mob/living/carbon/human/species/station.dm @@ -399,7 +399,7 @@ /datum/species/slime/handle_life(var/mob/living/carbon/human/H) var/const/color_shift_trigger = 0.1 - var/const/icon_update_period = 600 // 1 minute + var/const/icon_update_period = 200 // 20 seconds var/const/blood_scaling_factor = 5 // Used to adjust how much of an effect the blood has on the rate of color change. Higher is slower. // Slowly shifting to the color of the reagents if((H in recolor_list) && H.reagents.total_volume > color_shift_trigger) @@ -415,7 +415,8 @@ var/obj/item/organ/external/E = H.organs_by_name[organname] if(istype(E) && E.dna.species == "Slime People") E.sync_colour_to_human(H) - H.regenerate_icons() // Because update_icon didn't work + H.update_hair(0) + H.update_body() return ..() /mob/living/carbon/human/proc/toggle_recolor(var/silent = 0) @@ -478,8 +479,8 @@ var/limb_select = input(src, "Choose a limb to regrow", "Limb Regrowth") as null|anything in missing_limbs var/chosen_limb = missing_limbs[limb_select] - visible_message("[src] begins to hold still and concentrate on their missing [limb_select]...", "You begin to focus on regrowing your missing [limb_select]... (This will take [round(regrowthdelay/10)] seconds)") - if(do_after(src, regrowthdelay, needhand=0)) + visible_message("[src] begins to hold still and concentrate on their missing [limb_select]...", "You begin to focus on regrowing your missing [limb_select]... (This will take [round(regrowthdelay/10)] seconds, and you must hold still.)") + if(do_after(src, regrowthdelay, needhand=0, target = src)) if(stat || paralysis || stunned) src << "You cannot regenerate missing limbs in your current state." return @@ -513,28 +514,22 @@ // Grah this line will leave a "not used" warning, in spite of the fact that the new() proc WILL do the thing. // Bothersome. var/obj/item/organ/external/new_limb = new limb_path(src) + new_limb.open = 0 // This is just so that the compiler won't think that new_limb is unused, because the compiler is horribly stupid. adjustBruteLoss(stored_brute) adjustFireLoss(stored_burn) update_body() updatehealth() UpdateDamageIcon() nutrition -= hungercost - visible_message("[src] finishes regrowing their missing [limb_select]!", "You finish regrowing your [limb_select]") + visible_message("[src] finishes regrowing their missing [new_limb]!", "You finish regrowing your [limb_select]") else src << "You need to hold still in order to regrow a limb!" return -/datum/species/slime/handle_post_spawn(var/mob/living/carbon/human/H) - ..() - H.verbs += /mob/living/carbon/human/proc/regrow_limbs - H.verbs += /mob/living/carbon/human/verb/toggle_recolor_verb - /datum/species/slime/handle_pre_change(var/mob/living/carbon/human/H) ..() if(H in recolor_list) H.toggle_recolor(silent = 1) - H.verbs -= /mob/living/carbon/human/verb/toggle_recolor_verb - H.verbs -= /mob/living/carbon/human/proc/regrow_limbs /datum/species/grey name = "Grey"