Merge remote-tracking branch 'citadel/master' into combat_v7
This commit is contained in:
@@ -280,7 +280,7 @@
|
||||
if(lube & NO_SLIP_WHEN_WALKING)
|
||||
if(C.m_intent == MOVE_INTENT_WALK)
|
||||
return FALSE
|
||||
if(ishuman(C) && !(lube & SLIP_WHEN_JOGGING))
|
||||
if(ishuman(C) && !(lube & SLIP_WHEN_JOGGING) && CONFIG_GET(flag/sprint_enabled))
|
||||
var/mob/living/carbon/human/H = C
|
||||
if(!(H.combat_flags & COMBAT_FLAG_SPRINT_ACTIVE) && H.getStaminaLoss() <= 20)
|
||||
return FALSE
|
||||
|
||||
@@ -579,7 +579,7 @@ GLOBAL_LIST_EMPTY(station_turfs)
|
||||
/turf/AllowDrop()
|
||||
return TRUE
|
||||
|
||||
/turf/proc/add_vomit_floor(mob/living/M, toxvomit = NONE)
|
||||
/turf/proc/add_vomit_floor(mob/living/M, toxvomit = NONE, purge_ratio = 0.1)
|
||||
|
||||
var/obj/effect/decal/cleanable/vomit/V = new /obj/effect/decal/cleanable/vomit(src, M.get_static_viruses())
|
||||
//if the vomit combined, apply toxicity and reagents to the old vomit
|
||||
@@ -587,21 +587,24 @@ GLOBAL_LIST_EMPTY(station_turfs)
|
||||
V = locate() in src
|
||||
if(!V) //the decal was spawned on a wall or groundless turf and promptly qdeleted.
|
||||
return
|
||||
// Make toxins and blazaam vomit look different
|
||||
// Apply the proper icon set based on vomit type
|
||||
if(toxvomit == VOMIT_PURPLE)
|
||||
V.icon_state = "vomitpurp_[pick(1,4)]"
|
||||
else if (toxvomit == VOMIT_TOXIC)
|
||||
V.icon_state = "vomittox_[pick(1,4)]"
|
||||
if (iscarbon(M))
|
||||
var/mob/living/carbon/C = M
|
||||
if(C.reagents)
|
||||
clear_reagents_to_vomit_pool(C,V)
|
||||
else if (toxvomit == VOMIT_NANITE)
|
||||
V.name = "metallic slurry"
|
||||
V.desc = "A puddle of metallic slurry that looks vaguely like very fine sand. It almost seems like it's moving..."
|
||||
V.icon_state = "vomitnanite_[pick(1,4)]"
|
||||
if (purge_ratio && iscarbon(M))
|
||||
clear_reagents_to_vomit_pool(M, V, purge_ratio)
|
||||
|
||||
/proc/clear_reagents_to_vomit_pool(mob/living/carbon/M, obj/effect/decal/cleanable/vomit/V)
|
||||
/proc/clear_reagents_to_vomit_pool(mob/living/carbon/M, obj/effect/decal/cleanable/vomit/V, purge_ratio = 0.1)
|
||||
for(var/datum/reagent/consumable/R in M.reagents.reagent_list) //clears the stomach of anything that might be digested as food
|
||||
if(R.nutriment_factor > 0)
|
||||
M.reagents.del_reagent(R.type)
|
||||
M.reagents.trans_to(V, M.reagents.total_volume / 10)
|
||||
var/chemicals_lost = M.reagents.total_volume * purge_ratio
|
||||
M.reagents.trans_to(V, chemicals_lost)
|
||||
|
||||
//Whatever happens after high temperature fire dies out or thermite reaction works.
|
||||
//Should return new turf
|
||||
|
||||
Reference in New Issue
Block a user