mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-31 09:08:30 +01:00
[MIRROR] Fixes 2 really annoying cytology virus bugs. (#2628)
* Fixes 2 really annoying cytology virus bugs. (#56062) This PR fixes the generate_sample proc so it properly uses virus_chance to determine when to generate a virus. Now most samples will be virus free as intended. It also fixes the bug where virus penalty and spaceacillin consumption would be multiplied by the number of cell lines, rather than the number of viruses, as intended. * Fixes 2 really annoying cytology virus bugs. Co-authored-by: Krysonism <49783092+Krysonism@users.noreply.github.com>
This commit is contained in:
@@ -12,7 +12,7 @@ This element is used in vat growing to allow for the object to be
|
||||
var/virus_define
|
||||
///Amount of cell lines on a single sample
|
||||
var/cell_line_amount
|
||||
///Amount of viruses on a single sample
|
||||
///The chance the sample will be infected with a virus.
|
||||
var/virus_chance
|
||||
|
||||
///Listens for the swab signal and then generate a sample based on pre-determined lists that are saved as GLOBs. this allows us to have very few swabbable element instances.
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
reagents.remove_reagent(i, REAGENTS_METABOLISM)
|
||||
|
||||
//Handle debuffing growth based on viruses here.
|
||||
for(var/datum/micro_organism/cell_line/virus in biological_sample.micro_organisms)
|
||||
for(var/datum/micro_organism/virus/active_virus in biological_sample.micro_organisms)
|
||||
if(reagents.has_reagent(/datum/reagent/medicine/spaceacillin, REAGENTS_METABOLISM))
|
||||
reagents.remove_reagent(/datum/reagent/medicine/spaceacillin, REAGENTS_METABOLISM)
|
||||
continue //This virus is stopped, We have antiviral stuff
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
var/datum/micro_organism/chosen_type = pickweight(temp_weight_list)
|
||||
temp_weight_list -= chosen_type
|
||||
micro_organisms += new chosen_type
|
||||
if(virus_chance)
|
||||
if(prob(virus_chance))
|
||||
if(!GLOB.cell_virus_tables[virus_define])
|
||||
return
|
||||
var/datum/micro_organism/chosen_type = pickweight(GLOB.cell_virus_tables[virus_define])
|
||||
|
||||
Reference in New Issue
Block a user