mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-30 15:38:02 +01:00
Fixes
This commit is contained in:
@@ -119,7 +119,7 @@ GLOBAL_LIST_INIT(diseases, subtypesof(/datum/disease))
|
||||
|
||||
var/turf/target = affected_mob.loc
|
||||
if(istype(target))
|
||||
for(var/mob/living/carbon/C in oview(spread_range, affected_mob))
|
||||
for(var/mob/living/carbon/human/C in oview(spread_range, affected_mob))
|
||||
var/turf/current = get_turf(C)
|
||||
if(current)
|
||||
while(TRUE)
|
||||
@@ -128,6 +128,8 @@ GLOBAL_LIST_INIT(diseases, subtypesof(/datum/disease))
|
||||
break
|
||||
var/direction = get_dir(current, target)
|
||||
var/turf/next = get_step(current, direction)
|
||||
if(!current.CanZASPass() || !next.CanZASPass(get_turf(turn(direction, 100))))
|
||||
break
|
||||
current = next
|
||||
|
||||
/datum/disease/proc/cure()
|
||||
@@ -153,8 +155,13 @@ GLOBAL_LIST_INIT(diseases, subtypesof(/datum/disease))
|
||||
|
||||
/datum/disease/proc/IsSpreadByTouch()
|
||||
if(spread_flags & CONTACT_FEET || spread_flags & CONTACT_HANDS || spread_flags & CONTACT_GENERAL)
|
||||
return 1
|
||||
return 0
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/datum/disease/proc/IsSpreadByAir()
|
||||
if(spread_flags & AIRBORNE)
|
||||
return TRUE
|
||||
return FALSE
|
||||
|
||||
/datum/disease/proc/remove_virus()
|
||||
affected_mob.viruses -= src
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
viable_mobtypes = list(/mob/living/carbon/human)
|
||||
desc = "If left untreated the subject will become very weak, and may vomit often."
|
||||
severity = MINOR
|
||||
disease_flags = CAN_CARRY|CAN_CARRY
|
||||
disease_flags = CAN_CARRY|CAN_RESIST
|
||||
visibility_flags = HIDDEN_PANDEMIC
|
||||
required_organs = list(/obj/item/organ/internal/appendix)
|
||||
bypasses_immunity = TRUE
|
||||
|
||||
@@ -116,7 +116,8 @@ var/global/list/image/splatter_cache=list()
|
||||
|
||||
if(viruses)
|
||||
for(var/datum/disease/D in viruses)
|
||||
perp.ContractDisease(D)
|
||||
if(D.IsSpreadByTouch())
|
||||
perp.ContractDisease(D)
|
||||
|
||||
amount--
|
||||
|
||||
@@ -131,10 +132,6 @@ var/global/list/image/splatter_cache=list()
|
||||
if (amount && istype(user))
|
||||
add_fingerprint(user)
|
||||
|
||||
if(viruses)
|
||||
for(var/datum/disease/D in viruses)
|
||||
user.ContractDisease(D)
|
||||
|
||||
if (user.gloves)
|
||||
return
|
||||
var/taken = rand(1,amount)
|
||||
@@ -148,6 +145,11 @@ var/global/list/image/splatter_cache=list()
|
||||
user.update_inv_gloves(1)
|
||||
add_verb(user, /mob/living/carbon/human/proc/bloody_doodle)
|
||||
|
||||
if(viruses)
|
||||
for(var/datum/disease/D in viruses)
|
||||
if(D.IsSpreadByTouch())
|
||||
user.ContractDisease(D)
|
||||
|
||||
/obj/effect/decal/cleanable/blood/splatter
|
||||
random_icon_states = list("mgibbl1", "mgibbl2", "mgibbl3", "mgibbl4", "mgibbl5")
|
||||
amount = 2
|
||||
@@ -273,11 +275,25 @@ var/global/list/image/splatter_cache=list()
|
||||
/obj/effect/decal/cleanable/mucus/Crossed(mob/living/carbon/human/perp)
|
||||
if(viruses)
|
||||
for(var/datum/disease/D in viruses)
|
||||
perp.ContractDisease(D)
|
||||
if(D.IsSpreadByTouch())
|
||||
perp.ContractDisease(D)
|
||||
|
||||
/obj/effect/decal/cleanable/mucus/attack_hand(mob/living/carbon/human/perp)
|
||||
if(viruses)
|
||||
for(var/datum/disease/D in viruses)
|
||||
if(D.IsSpreadByTouch())
|
||||
perp.ContractDisease(D)
|
||||
|
||||
/obj/effect/decal/cleanable/vomit/Crossed(mob/living/carbon/human/perp)
|
||||
if(viruses)
|
||||
for(var/datum/disease/D in viruses)
|
||||
perp.ContractDisease(D)
|
||||
if(D.IsSpreadByTouch())
|
||||
perp.ContractDisease(D)
|
||||
|
||||
/obj/effect/decal/cleanable/vomit/Crossed(mob/living/carbon/human/perp)
|
||||
if(viruses)
|
||||
for(var/datum/disease/D in viruses)
|
||||
if(D.IsSpreadByTouch())
|
||||
perp.ContractDisease(D)
|
||||
|
||||
#undef DRYING_TIME
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
continue
|
||||
if(!(A.z in using_map.station_levels))
|
||||
continue
|
||||
if(A.flag_check(RAD_SHIELDED))
|
||||
if(A.flag_check(AREA_FORBID_EVENTS))
|
||||
continue
|
||||
if(isbelly(H.loc))
|
||||
continue
|
||||
|
||||
@@ -1785,7 +1785,7 @@
|
||||
|
||||
/obj/item/reagent_containers/food/snacks/badrecipe/Initialize()
|
||||
. = ..()
|
||||
reagents.add_reagent("toxin", 1)
|
||||
reagents.add_reagent("salmonella", 1)
|
||||
reagents.add_reagent("carbon", 3)
|
||||
|
||||
/obj/item/reagent_containers/food/snacks/meatsteak
|
||||
@@ -2551,7 +2551,7 @@
|
||||
reagents.add_reagent("water", 10)
|
||||
if(8)
|
||||
reagents.add_reagent("carbon", 10)
|
||||
reagents.add_reagent("toxin", 10)
|
||||
reagents.add_reagent("salmonella", 10)
|
||||
if(9)
|
||||
reagents.add_reagent("nutriment", 5, nutriment_desc)
|
||||
reagents.add_reagent("tomatojuice", 10)
|
||||
@@ -3825,6 +3825,7 @@
|
||||
reagents.add_reagent("protein", 5)
|
||||
reagents.add_reagent("tomatojuice", 6)
|
||||
reagents.add_reagent("mold", 8)
|
||||
reagents.add_reagent("salmonella", 1)
|
||||
|
||||
/obj/item/reagent_containers/food/snacks/slice/oldpizza
|
||||
name = "moldy pizza slice"
|
||||
|
||||
@@ -505,8 +505,12 @@
|
||||
..()
|
||||
//spread some viruses while we are at it
|
||||
if(breath && !isnull(viruses) && prob(10))
|
||||
if((wear_mask && (wear_mask.item_flags & AIRTIGHT)) || (head && (head && (head.item_flags & AIRTIGHT))))
|
||||
return
|
||||
if(wear_mask.permeability_coefficient < 1)
|
||||
return
|
||||
for(var/datum/disease/D in GetViruses())
|
||||
if((D.spread_flags & SPECIAL) || (D.spread_flags & NON_CONTAGIOUS))
|
||||
if(!D.IsSpreadByAir())
|
||||
continue
|
||||
for(var/mob/living/carbon/M in view(1,src))
|
||||
ContractDisease(D)
|
||||
|
||||
@@ -7,10 +7,8 @@
|
||||
var/inflame_progress = 0
|
||||
|
||||
/mob/living/carbon/human/proc/appendicitis()
|
||||
if(stat == DEAD)
|
||||
return 0
|
||||
ForceContractDisease(new /datum/disease/appendicitis)
|
||||
return 0
|
||||
return ForceContractDisease(new /datum/disease/appendicitis)
|
||||
|
||||
/*
|
||||
/obj/item/organ/internal/appendix/process()
|
||||
..()
|
||||
|
||||
Reference in New Issue
Block a user