Merge pull request #9850 from cadyn/patch-1

Make allergen traits make proper use of bitflags and add the rest of the allergens as traits
This commit is contained in:
Novacat
2021-03-04 18:17:45 -05:00
committed by GitHub
@@ -155,30 +155,79 @@
//Allergen traits! Not available to any species with a base allergens var.
/datum/trait/allergy_gluten
/datum/trait/allergy
name = "Allergy: Gluten"
desc = "You're highly allergic to gluten proteins, which are found in most common grains."
cost = 0
custom_only = FALSE
var_changes = list("allergens" = 16)
excludes = list(/datum/trait/allergy_nuts,/datum/trait/allergy_soy)
var/allergen = GRAINS
/datum/trait/allergy_nuts
/datum/trait/allergy/apply(var/datum/species/S,var/mob/living/carbon/human/H)
S.allergens |= allergen
..(S,H)
/datum/trait/allergy/meat
name = "Allergy: Meat"
desc = "You're highly allergic to just about any form of meat. You're probably better off just sticking to vegetables."
cost = 0
custom_only = FALSE
allergen = MEAT
/datum/trait/allergy/fish
name = "Allergy: Fish"
desc = "You're highly allergic to fish. It's probably best to avoid seafood in general..."
cost = 0
custom_only = FALSE
allergen = FISH
/datum/trait/allergy/fruit
name = "Allergy: Fruit"
desc = "You're highly allergic to fruit. Vegetables are fine, but you should probably read up on how to tell the difference."
cost = 0
custom_only = FALSE
allergen = FRUIT
/datum/trait/allergy/vegetable
name = "Allergy: Vegetable"
desc = "You're highly allergic to vegetables. Fruit are fine, but you should probably read up on how to tell the difference."
cost = 0
custom_only = FALSE
allergen = VEGETABLE
/datum/trait/allergy/nuts
name = "Allergy: Nuts"
desc = "You're highly allergic to hard-shell seeds, such as peanuts."
cost = 0
custom_only = FALSE
var_changes = list("allergens" = 64)
excludes = list(/datum/trait/allergy_gluten,/datum/trait/allergy_soy)
allergen = SEEDS
/datum/trait/allergy_soy
/datum/trait/allergy/soy
name = "Allergy: Soy"
desc = "You're highly allergic to soybeans, and some other kinds of bean."
cost = 0
custom_only = FALSE
var_changes = list("allergens" = 32)
excludes = list(/datum/trait/allergy_gluten,/datum/trait/allergy_nuts)
allergen = BEANS
/datum/trait/allergy/dairy
name = "Allergy: Lactose"
desc = "You're highly allergic to lactose, and consequently, just about all forms of dairy."
cost = 0
custom_only = FALSE
allergen = DAIRY
/datum/trait/allergy/fungi
name = "Allergy: Fungi"
desc = "You're highly allergic to Fungi such as mushrooms."
cost = 0
custom_only = FALSE
allergen = FUNGI
/datum/trait/allergy/coffee
name = "Allergy: Coffee"
desc = "You're highly allergic to coffee in specific."
cost = 0
custom_only = FALSE
allergen = COFFEE
// Spicy Food Traits, from negative to positive.
/datum/trait/spice_intolerance_extreme