mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-23 21:18:37 +01:00
De-hardcodes the species preference pages, deleting the species pages and generating them in constant data on the DM side instead (#65140)
This commit is contained in:
@@ -32,29 +32,21 @@
|
||||
/datum/preference/choiced/species/compile_constant_data()
|
||||
var/list/data = list()
|
||||
|
||||
var/list/food_flags = FOOD_FLAGS
|
||||
|
||||
for (var/species_id in get_selectable_species())
|
||||
var/species_type = GLOB.species_list[species_id]
|
||||
var/datum/species/species = new species_type
|
||||
var/datum/species/species = new species_type()
|
||||
|
||||
var/list/diet = list()
|
||||
data[species_id] = list()
|
||||
data[species_id]["name"] = species.name
|
||||
data[species_id]["desc"] = species.get_species_description()
|
||||
data[species_id]["lore"] = species.get_species_lore()
|
||||
data[species_id]["icon"] = sanitize_css_class_name(species.name)
|
||||
data[species_id]["use_skintones"] = species.use_skintones
|
||||
data[species_id]["sexes"] = species.sexes
|
||||
data[species_id]["enabled_features"] = species.get_features()
|
||||
data[species_id]["perks"] = species.get_species_perks()
|
||||
data[species_id]["diet"] = species.get_species_diet()
|
||||
|
||||
if (!(TRAIT_NOHUNGER in species.inherent_traits))
|
||||
diet = list(
|
||||
"liked_food" = bitfield_to_list(species.liked_food, food_flags),
|
||||
"disliked_food" = bitfield_to_list(species.disliked_food, food_flags),
|
||||
"toxic_food" = bitfield_to_list(species.toxic_food, food_flags),
|
||||
)
|
||||
|
||||
data[species_id] = list(
|
||||
"name" = species.name,
|
||||
"icon" = sanitize_css_class_name(species.name),
|
||||
|
||||
"use_skintones" = species.use_skintones,
|
||||
"sexes" = species.sexes,
|
||||
|
||||
"enabled_features" = species.get_features(),
|
||||
) + diet
|
||||
qdel(species)
|
||||
|
||||
return data
|
||||
|
||||
Reference in New Issue
Block a user