diff --git a/code/__defines/mobs_vr.dm b/code/__defines/mobs_vr.dm
index 0d32000341..eee6220f8b 100644
--- a/code/__defines/mobs_vr.dm
+++ b/code/__defines/mobs_vr.dm
@@ -26,3 +26,4 @@
#define SPECIES_XENOHYBRID "Xenomorph Hybrid"
#define SPECIES_ZORREN_FLAT "Flatland Zorren"
#define SPECIES_ZORREN_HIGH "Highlander Zorren"
+#define SPECIES_CUSTOM "Custom Species"
diff --git a/code/_helpers/global_lists.dm b/code/_helpers/global_lists.dm
index b0d1667fc4..903c7d3d68 100644
--- a/code/_helpers/global_lists.dm
+++ b/code/_helpers/global_lists.dm
@@ -32,7 +32,7 @@ var/global/list/all_species[0]
var/global/list/all_languages[0]
var/global/list/language_keys[0] // Table of say codes for all languages
var/global/list/whitelisted_species = list(SPECIES_HUMAN) // Species that require a whitelist check.
-var/global/list/playable_species = list("Custom Species", SPECIES_HUMAN) // A list of ALL playable species, whitelisted, latejoin or otherwise. //VOREStation Edit - Making sure custom species is obvious.
+var/global/list/playable_species = list(SPECIES_CUSTOM, SPECIES_HUMAN) // A list of ALL playable species, whitelisted, latejoin or otherwise. //VOREStation Edit - Making sure custom species is obvious.
var/list/mannequins_
diff --git a/code/_helpers/global_lists_vr.dm b/code/_helpers/global_lists_vr.dm
index c921e27104..64393508af 100644
--- a/code/_helpers/global_lists_vr.dm
+++ b/code/_helpers/global_lists_vr.dm
@@ -198,7 +198,7 @@ var/global/list/edible_trash = list(/obj/item/trash,
positive_traits[path] = instance
// Custom species icon bases
- var/list/blacklisted_icons = list("Custom Species","Promethean") //Just ones that won't work well.
+ var/list/blacklisted_icons = list(SPECIES_CUSTOM,SPECIES_PROMETHEAN) //Just ones that won't work well.
for(var/species_name in playable_species)
if(species_name in blacklisted_icons)
continue
diff --git a/code/modules/client/preference_setup/vore/07_traits.dm b/code/modules/client/preference_setup/vore/07_traits.dm
index 4ffe1d37c7..4cfa52cc45 100644
--- a/code/modules/client/preference_setup/vore/07_traits.dm
+++ b/code/modules/client/preference_setup/vore/07_traits.dm
@@ -55,7 +55,7 @@
pref.starting_trait_points = STARTING_SPECIES_POINTS
pref.max_traits = MAX_SPECIES_TRAITS
- if(pref.species != "Custom Species")
+ if(pref.species != SPECIES_CUSTOM)
pref.pos_traits.Cut()
pref.neu_traits.Cut()
pref.neg_traits.Cut()
@@ -73,12 +73,12 @@
if(!(path in negative_traits))
pref.neg_traits -= path
- if(!pref.custom_base || (pref.custom_base != "Xenochimera" && !(pref.custom_base in playable_species - whitelisted_species)))
+ if(!pref.custom_base || !(pref.custom_base in custom_species_bases))
pref.custom_base = "Human"
/datum/category_item/player_setup_item/vore/traits/copy_to_mob(var/mob/living/carbon/human/character)
character.custom_species = pref.custom_species
- if(pref.species == "Custom Species")
+ if(pref.species == SPECIES_CUSTOM || pref.species == SPECIES_XENOCHIMERA)
var/datum/species/custom/CS = character.species
var/S = pref.custom_base ? pref.custom_base : "Human"
var/datum/species/custom/new_CS = CS.produceCopy(S, pref.pos_traits + pref.neu_traits + pref.neg_traits, character)
@@ -86,23 +86,15 @@
//Any additional non-trait settings can be applied here
new_CS.blood_color = pref.blood_color
- if(pref.species == "Xenochimera")
- var/datum/species/xenochimera/CS = character.species
- var/S = pref.custom_base ? pref.custom_base : "Human"
- var/datum/species/xenochimera/new_CS = CS.produceCopy(S, pref.pos_traits + pref.neu_traits + pref.neg_traits, character)
-
- //Any additional non-trait settings can be applied here
- new_CS.blood_color = pref.blood_color
-
/datum/category_item/player_setup_item/vore/traits/content(var/mob/user)
. += "Custom Species "
. += "[pref.custom_species ? pref.custom_species : "-Input Name-"]
"
- if(pref.species == "Custom Species" || pref.species == "Xenochimera")
+ if(pref.species == SPECIES_CUSTOM || pref.species == SPECIES_XENOCHIMERA)
. += "Icon Base: "
. += "[pref.custom_base ? pref.custom_base : "Human"]
"
- if(pref.species == "Custom Species")
+ if(pref.species == SPECIES_CUSTOM)
var/points_left = pref.starting_trait_points
var/traits_left = pref.max_traits
for(var/T in pref.pos_traits + pref.neg_traits)
@@ -157,7 +149,7 @@
else if(href_list["custom_base"])
var/text_choice = input("Pick an icon set for your species:","Icon Base") in custom_species_bases
- if(text_choice in playable_species)
+ if(text_choice in custom_species_bases)
pref.custom_base = text_choice
return TOPIC_REFRESH_UPDATE_PREVIEW
diff --git a/code/modules/mob/living/carbon/human/species/station/blank_vr.dm b/code/modules/mob/living/carbon/human/species/station/blank_vr.dm
index 6cefffb7de..f2847a1523 100644
--- a/code/modules/mob/living/carbon/human/species/station/blank_vr.dm
+++ b/code/modules/mob/living/carbon/human/species/station/blank_vr.dm
@@ -7,7 +7,7 @@
var/trashcan = 0 //It's always sunny in the wrestling ring.
/datum/species/custom
- name = "Custom Species"
+ name = SPECIES_CUSTOM
name_plural = "Custom"
var/base_species = "Human"