[MODULAR] Fixes bug where opening Game Preferences and then spawning causing you to be random human. Also SR bodypart prefs refactor (#16433)

* Fixes opening Game Options and then spawning making you random

* Refactors mutant and cursed char prefs to not require running is_available first()

* oop

* minor cleanup of eye emissive application

* Update modular_skyrat/master_files/code/modules/client/preferences/_preference.dm

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>

* Fixes people getting digitigrade legs when they shouldn't be

* accidental false return

* Make vox bodycolor option only appear when a Vox Primalis

* Remove option to change legs on teshari - they never have had 2 leg types

* Digi legs pref now only appears and applies for digi optional species

Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com>
Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
This commit is contained in:
Tastyfish
2022-10-11 16:09:30 -04:00
committed by GitHub
parent f51e4124ad
commit 50dda74fc2
7 changed files with 316 additions and 800 deletions
+5 -4
View File
@@ -538,13 +538,14 @@ GLOBAL_LIST_EMPTY(preferences_datums)
for (var/datum/preference/preference as anything in get_preferences_in_priority_order())
if (preference.savefile_identifier != PREFERENCE_CHARACTER)
continue
// SKYRAT EDIT
if(preference.is_accessible(src)) // Only apply preferences you can actually access.
preference.apply_to_human(character, read_preference(preference.type), src)
preference.apply_to_human(character, read_preference(preference.type), src)
// SKYRAT EDIT ADDITION START - middleware apply human prefs
for (var/datum/preference_middleware/preference_middleware as anything in middleware)
preference_middleware.apply_to_human(character, src)
// SKYRAT EDIT END
// SKYRAT EDIT ADDITION END
character.dna.real_name = character.real_name
if(icon_updates)