Skip to content

Commit

Permalink
Merge pull request #124 from DopplerShift13/fuck-fuck-fuck-i-fucked-u…
Browse files Browse the repository at this point in the history
…p-the-fucking-tails-fuck

Ramatae 2: Fixing prefs & sprite names.
  • Loading branch information
CliffracerX authored Oct 4, 2024
2 parents 82c9bf1 + fbb7c7c commit b51c012
Show file tree
Hide file tree
Showing 22 changed files with 195 additions and 76 deletions.
2 changes: 2 additions & 0 deletions code/__DEFINES/~doppler_defines/mutant_variations.dm
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
#define BUG "bug"
#define SYNTHETIC "synthetic"
#define HUMANOID "humanoid"
#define ALIEN "alien"

/// This list gets read by the dropdown pref when a player chooses what type of sprite accessory to access
GLOBAL_LIST_INIT(mutant_variations, list(
Expand All @@ -30,6 +31,7 @@ GLOBAL_LIST_INIT(mutant_variations, list(
MONKEY,
MOUSE,
SYNTHETIC,
ALIEN,
))

/// This list gets read by the animalistic preference for genemod and anthros
Expand Down
11 changes: 10 additions & 1 deletion code/~doppler_earliest_defines.dm
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,6 @@
name = DOPPLER_SPRITE_ACCESSORY_NOEARS
icon_state = /datum/sprite_accessory/ears/none::icon_state


/datum/sprite_accessory/ears_more/bug/none
icon = 'modular_doppler/modular_customization/accessories/code/~overrides/icons/fallbacks.dmi'
name = DOPPLER_SPRITE_ACCESSORY_NOEARS
Expand All @@ -96,6 +95,11 @@
name = DOPPLER_SPRITE_ACCESSORY_NOEARS
icon_state = /datum/sprite_accessory/ears/none::icon_state

/datum/sprite_accessory/ears_more/alien/none
icon = 'modular_doppler/modular_customization/accessories/code/~overrides/icons/fallbacks.dmi'
name = DOPPLER_SPRITE_ACCESSORY_NOEARS
icon_state = /datum/sprite_accessory/ears/none::icon_state

/// Tail time
/datum/sprite_accessory/tails/none
icon = 'modular_doppler/modular_customization/accessories/code/~overrides/icons/fallbacks.dmi'
Expand Down Expand Up @@ -167,6 +171,11 @@
name = DOPPLER_SPRITE_ACCESSORY_NOTAIL
icon_state = /datum/sprite_accessory/tails/none::icon_state

/datum/sprite_accessory/tails/alien/none
icon = /datum/sprite_accessory/tails/none::icon
name = DOPPLER_SPRITE_ACCESSORY_NOTAIL
icon_state = /datum/sprite_accessory/tails/none::icon_state

/// Lizard exclusive 🦎
/datum/sprite_accessory/snouts/none
icon = 'modular_doppler/modular_customization/accessories/code/~overrides/icons/fallbacks.dmi'
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/datum/sprite_accessory/lizard_markings/ramatan
icon = 'modular_doppler/modular_customization/accessories/icons/ramatan/ramatan_markings.dmi'
name = "Ramatan Underbelly"
icon_state = "scug_lbelly"
icon_state = "ramatan_lbelly"
gender_specific = TRUE
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@

/datum/sprite_accessory/ears_more/alien/ramatan
name = "Ramatan"
icon_state = "ramatan_standard"
icon = 'modular_doppler/modular_customization/accessories/icons/ramatan/ramatan_ears.dmi'

/datum/sprite_accessory/ears_more/alien/ramatan/tall
name = "Ramatan Tall"
icon_state = "ramatan_tall"

/datum/sprite_accessory/ears_more/alien/ramatan/sharp
name = "Ramatan Sharp"
icon_state = "ramatan_sharp"

/datum/sprite_accessory/ears_more/alien/ramatan/forward
name = "Ramatan Droopy"
icon_state = "ramatan_forward"

/datum/sprite_accessory/ears_more/alien/ramatan/flopped
name = "Ramatan Long Flop"
icon_state = "ramatan_flopped"

/datum/sprite_accessory/ears_more/alien/ramatan/fluffy
name = "Ramatan Fluffy"
icon_state = "ramatan_fluffy"

/datum/sprite_accessory/ears_more/alien/ramatan/short
name = "Ramatan Short"
icon_state = "ramatan_short"
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
/datum/sprite_accessory/frills/ramatan
icon = 'modular_doppler/modular_customization/accessories/icons/ramatan/ramatan_frills.dmi'
name = "Ramatan"
icon_state = "scug_aquatic"
icon_state = "ramatan_aquatic"

/datum/sprite_accessory/frills/ramatan/sharp
name = "Ramatan Sharp"
icon_state = "scug_sharp"
icon_state = "ramatan_sharp"

/datum/sprite_accessory/frills/ramatan/fluffy
name = "Ramatan Fluffy"
icon_state = "scug_fluffy"
icon_state = "ramatan_fluffy"

/datum/sprite_accessory/frills/ramatan/draconic
name = "Ramatan Draconic"
icon_state = "scug_dragon"
icon_state = "ramatan_dragon"

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
/datum/sprite_accessory/snouts/ramatan
icon = 'modular_doppler/modular_customization/accessories/icons/ramatan/ramatan_snout.dmi'
name = "Ramatan"
icon_state = "scug_standard"
icon_state = "ramatan_standard"

/datum/sprite_accessory/snouts/ramatan/sharp
name = "Ramatan Sharp"
icon_state = "scug_sharp"
icon_state = "ramatan_sharp"

/datum/sprite_accessory/snouts/ramatan/round
name = "Ramatan Round"
icon_state = "scug_round"
icon_state = "ramatan_round"
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
/datum/sprite_accessory/tails/lizard/ramatan
icon = 'modular_doppler/modular_customization/accessories/icons/ramatan/ramatan_tail.dmi'
/datum/sprite_accessory/tails/alien/ramatan
name = "Ramatan"
icon_state = "scug_std"
icon_state = "ramatan_std"
icon = 'modular_doppler/modular_customization/accessories/icons/ramatan/ramatan_tail.dmi'

/datum/sprite_accessory/tails/lizard/ramatan/thick
/datum/sprite_accessory/tails/alien/ramatan/thick
name = "Ramatan Thick"
icon_state = "scug_thick"
icon_state = "ramatan_thick"
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
14 changes: 14 additions & 0 deletions modular_doppler/modular_customization/organs/external/tail.dm
Original file line number Diff line number Diff line change
Expand Up @@ -200,3 +200,17 @@

/datum/bodypart_overlay/mutant/tail/humanoid/get_global_feature_list()
return SSaccessories.tails_list_humanoid


/// Alien tail
//
/obj/item/organ/external/tail/alien
preference = "feature_alien_tail"
dna_block = null
bodypart_overlay = /datum/bodypart_overlay/mutant/tail/alien

/datum/bodypart_overlay/mutant/tail/alien
feature_key = "tail_other"

/datum/bodypart_overlay/mutant/tail/alien/get_global_feature_list()
return SSaccessories.tails_list_alien
8 changes: 8 additions & 0 deletions modular_doppler/modular_customization/organs/internal/ears.dm
Original file line number Diff line number Diff line change
Expand Up @@ -114,4 +114,12 @@
/datum/bodypart_overlay/mutant/ears/synthetic_ears/get_global_feature_list()
return SSaccessories.ears_list_synthetic

/// Alien ears
//
/obj/item/organ/internal/ears/alien
preference = "feature_alien_ears"
bodypart_overlay = /datum/bodypart_overlay/mutant/ears/alien_ears

/datum/bodypart_overlay/mutant/ears/alien_ears/get_global_feature_list()
return SSaccessories.ears_list_alien

32 changes: 32 additions & 0 deletions modular_doppler/modular_customization/preferences/ears.dm
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
var/list/ears_list_bug
var/list/ears_list_humanoid
var/list/ears_list_synthetic
var/list/ears_list_alien

/datum/controller/subsystem/accessories/setup_lists()
. = ..()
Expand All @@ -27,6 +28,7 @@
ears_list_bug = init_sprite_accessory_subtypes(/datum/sprite_accessory/ears_more/bug)["default_sprites"]
ears_list_humanoid = init_sprite_accessory_subtypes(/datum/sprite_accessory/ears_more/humanoid)["default_sprites"]
ears_list_synthetic = init_sprite_accessory_subtypes(/datum/sprite_accessory/ears_more/synthetic)["default_sprites"]
ears_list_alien = init_sprite_accessory_subtypes(/datum/sprite_accessory/ears_more/alien)["default_sprites"]

/datum/dna
/// This variable is read by the regenerate_organs() proc to know what organ subtype to give
Expand Down Expand Up @@ -454,6 +456,36 @@
var/datum/sprite_accessory/chosen_ears = SSaccessories.ears_list_synthetic[value]
return generate_ears_icon(chosen_ears)

// Alien
/datum/preference/choiced/alien_ears
savefile_key = "feature_alien_ears"
savefile_identifier = PREFERENCE_CHARACTER
category = PREFERENCE_CATEGORY_CLOTHING
relevant_external_organ = null
should_generate_icons = TRUE
main_feature_name = "Ears"

/datum/preference/choiced/alien_ears/init_possible_values()
return assoc_to_keys_features(SSaccessories.ears_list_alien)

/datum/preference/choiced/alien_ears/is_accessible(datum/preferences/preferences)
. = ..()
var/chosen_variation = preferences.read_preference(/datum/preference/choiced/ear_variation)
if(chosen_variation == ALIEN)
return TRUE
return FALSE

/datum/preference/choiced/alien_ears/create_default_value()
return /datum/sprite_accessory/ears_more/alien/none::name

/datum/preference/choiced/alien_ears/apply_to_human(mob/living/carbon/human/target, value)
if(target.dna.ear_type == ALIEN)
target.dna.features["ears"] = value

/datum/preference/choiced/alien_ears/icon_for(value)
var/datum/sprite_accessory/chosen_ears = SSaccessories.ears_list_alien[value]
return generate_ears_icon(chosen_ears)


/// Proc to gen that icon
// We don't wanna copy paste this
Expand Down
32 changes: 32 additions & 0 deletions modular_doppler/modular_customization/preferences/tail.dm
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
var/list/tails_list_bug
var/list/tails_list_synth
var/list/tails_list_humanoid
var/list/tails_list_alien

/datum/controller/subsystem/accessories/setup_lists()
. = ..()
Expand All @@ -23,6 +24,7 @@
tails_list_bug = init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/bug)["default_sprites"]
tails_list_synth = init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/synthetic)["default_sprites"]
tails_list_humanoid = init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/humanoid)["default_sprites"]
tails_list_alien = init_sprite_accessory_subtypes(/datum/sprite_accessory/tails/alien)["default_sprites"]

/datum/dna
/// This variable is read by the regenerate_organs() proc to know what organ subtype to give
Expand Down Expand Up @@ -474,6 +476,36 @@
var/datum/sprite_accessory/chosen_tail = SSaccessories.tails_list_humanoid[value]
return generate_back_icon(chosen_tail, "tail")

// Alien
/datum/preference/choiced/alien_tail
savefile_key = "feature_alien_tail"
savefile_identifier = PREFERENCE_CHARACTER
category = PREFERENCE_CATEGORY_CLOTHING
relevant_external_organ = null
should_generate_icons = TRUE
main_feature_name = "Tail"

/datum/preference/choiced/alien_tail/init_possible_values()
return assoc_to_keys_features(SSaccessories.tails_list_alien)

/datum/preference/choiced/alien_tail/is_accessible(datum/preferences/preferences)
. = ..()
var/chosen_variation = preferences.read_preference(/datum/preference/choiced/tail_variation)
if(chosen_variation == ALIEN)
return TRUE
return FALSE

/datum/preference/choiced/alien_tail/create_default_value()
return /datum/sprite_accessory/tails/alien/none::name

/datum/preference/choiced/alien_tail/apply_to_human(mob/living/carbon/human/target, value)
if(target.dna.tail_type == ALIEN)
target.dna.features["tail_other"] = value

/datum/preference/choiced/alien_tail/icon_for(value)
var/datum/sprite_accessory/chosen_tail = SSaccessories.tails_list_alien[value]
return generate_back_icon(chosen_tail, "tail")

#define WIDTH_WINGS_FILE 45
#define HEIGHT_WINGS_FILE 34
#define WIDTH_BIGTAILS_FILE 64
Expand Down
5 changes: 5 additions & 0 deletions modular_doppler/modular_customization/tri_color/ears.dm
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,11 @@
data[SUPPLEMENTAL_FEATURE_KEY] = /datum/preference/tri_color/ears_color::savefile_key
return data

/datum/preference/choiced/alien_ears/compile_constant_data()
var/list/data = ..()
data[SUPPLEMENTAL_FEATURE_KEY] = /datum/preference/tri_color/ears_color::savefile_key
return data


/// Ears colors!
/datum/preference/tri_color/ears_color
Expand Down
5 changes: 5 additions & 0 deletions modular_doppler/modular_customization/tri_color/tail.dm
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,11 @@
data[SUPPLEMENTAL_FEATURE_KEY] = /datum/preference/tri_color/tail_color::savefile_key
return data

/datum/preference/choiced/alien_tail/compile_constant_data()
var/list/data = ..()
data[SUPPLEMENTAL_FEATURE_KEY] = /datum/preference/tri_color/tail_color::savefile_key
return data


/// Tail colors!
/datum/preference/tri_color/tail_color
Expand Down
Loading

0 comments on commit b51c012

Please sign in to comment.