Adventures in bitflags!

This commit is contained in:
Fermi
2019-06-14 12:47:22 +01:00
parent e95b371ea5
commit 2365f7337c
3 changed files with 23 additions and 19 deletions
+6 -7
View File
@@ -1,6 +1,5 @@
#define FLAG_STATUS_NONE (1 << 0)
#define FLAG_STATUS_PH (1 << 1)
#define FLAG_STATUS_TEMP (1 << 2)
#define PH_WEAK (1 << 0)
#define TEMP_WEAK (1 << 1)
/obj/item/reagent_containers
name = "Container"
@@ -15,7 +14,7 @@
var/spawned_disease = null
var/disease_amount = 20
var/spillable = FALSE
var/beaker_weaknesses = NONE
var/beaker_weakness_bitflag = NONE//Bitflag!
/obj/item/reagent_containers/Initialize(mapload, vol)
. = ..()
@@ -130,7 +129,7 @@
//melts plastic beakers
/obj/item/reagent_containers/microwave_act(obj/machinery/microwave/M)
reagents.expose_temperature(1000)
if(beaker_weaknesses == FLAG_STATUS_TEMP)
if(beaker_weakness_bitflag & TEMP_WEAK)
var/list/seen = viewers(5, get_turf(src))
var/iconhtml = icon2html(src, seen)
for(var/mob/H in seen)
@@ -142,7 +141,7 @@
//melts plastic beakers
/obj/item/reagent_containers/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume)
reagents.expose_temperature(exposed_temperature)
if(beaker_weaknesses == FLAG_STATUS_TEMP)
if(beaker_weakness_bitflag & TEMP_WEAK)
if(reagents.chem_temp > 444)//assuming polypropylene
var/list/seen = viewers(5, get_turf(src))
var/iconhtml = icon2html(src, seen)
@@ -153,7 +152,7 @@
//melts glass beakers
/obj/item/reagent_containers/proc/pH_check()
if(beaker_weaknesses == FLAG_STATUS_PH)
if(beaker_weakness_bitflag & PH_WEAK)
if((reagents.pH < 0.5) || (reagents.pH > 13.5))
var/list/seen = viewers(5, get_turf(src))
var/iconhtml = icon2html(src, seen)