From acfee53a9874f37439832b022e29eb911cde7250 Mon Sep 17 00:00:00 2001 From: Poojawa Date: Sun, 18 Mar 2018 11:26:00 -0500 Subject: [PATCH] :HELP: MAINT --- code/__DEFINES/citadel_defines.dm | 7 ++ code/__DEFINES/preferences.dm | 6 +- code/modules/client/preferences.dm | 22 +++- config/game_options.txt | 1 + modular_citadel/code/game/objects/items.dm | 12 +++ .../modules/client/loadout/uniform_trek.dm | 8 +- .../code/modules/client/preferences.dm | 45 ++++---- .../modules/client/preferences_savefile.dm | 6 ++ .../modules/client/preferences_toggles.dm | 20 ++-- .../code/modules/mob/cit_emotes.dm | 102 +++++++++++++++++- .../mob/living/carbon/reindex_screams.dm | 45 ++++++++ .../code/modules/vore/eating/belly_obj_vr.dm | 10 +- .../code/modules/vore/eating/bellymodes_vr.dm | 12 +-- .../code/modules/vore/eating/living_vr.dm | 2 +- .../code/modules/vore/eating/vorepanel_vr.dm | 8 +- modular_citadel/sound/misc/cheekibreeki.ogg | Bin 0 -> 46056 bytes modular_citadel/sound/misc/cyka1.ogg | Bin 0 -> 27520 bytes tgstation.dme | 1 + 18 files changed, 244 insertions(+), 63 deletions(-) create mode 100644 modular_citadel/code/modules/mob/living/carbon/reindex_screams.dm create mode 100644 modular_citadel/sound/misc/cheekibreeki.ogg create mode 100644 modular_citadel/sound/misc/cyka1.ogg diff --git a/code/__DEFINES/citadel_defines.dm b/code/__DEFINES/citadel_defines.dm index 261e7c7586..870816975b 100644 --- a/code/__DEFINES/citadel_defines.dm +++ b/code/__DEFINES/citadel_defines.dm @@ -123,3 +123,10 @@ #define MIN_MELEE_STAMCOST 1.25 //Minimum cost for swinging items around. Will be extra useful when stats and skills are introduced. #define CRAWLUNDER_DELAY 30 //Delay for crawling under a standing mob + +//Citadel toggles because bitflag memes +#define MEDIHOUND_SLEEPER 1 +#define EATING_NOISES 2 +#define DIGESTION_NOISES 4 + +#define TOGGLES_CITADEL (MEDIHOUND_SLEEPER|EATING_NOISES|DIGESTION_NOISES) \ No newline at end of file diff --git a/code/__DEFINES/preferences.dm b/code/__DEFINES/preferences.dm index b4a9f41213..2ed8c86eec 100644 --- a/code/__DEFINES/preferences.dm +++ b/code/__DEFINES/preferences.dm @@ -14,10 +14,8 @@ #define SOUND_ANNOUNCEMENTS 2048 #define DISABLE_DEATHRATTLE 4096 #define DISABLE_ARRIVALRATTLE 8192 -#define MEDIHOUND_SLEEPER 16384 //CITADEL EDITS, vore prefs. -#define EATING_NOISES 32768 -#define DIGESTION_NOISES 65536 -#define TOGGLES_DEFAULT (SOUND_ADMINHELP|SOUND_MIDI|SOUND_AMBIENCE|SOUND_LOBBY|MEMBER_PUBLIC|INTENT_STYLE|MIDROUND_ANTAG|SOUND_INSTRUMENTS|SOUND_SHIP_AMBIENCE|SOUND_PRAYERS|SOUND_ANNOUNCEMENTS|MEDIHOUND_SLEEPER|EATING_NOISES|DIGESTION_NOISES) + +#define TOGGLES_DEFAULT (SOUND_ADMINHELP|SOUND_MIDI|SOUND_AMBIENCE|SOUND_LOBBY|MEMBER_PUBLIC|INTENT_STYLE|MIDROUND_ANTAG|SOUND_INSTRUMENTS|SOUND_SHIP_AMBIENCE|SOUND_PRAYERS|SOUND_ANNOUNCEMENTS) //Chat toggles #define CHAT_OOC 1 diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index cddf64b6db..86413bbb6b 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -156,11 +156,16 @@ GLOBAL_LIST_EMPTY(preferences_datums) /datum/preferences/proc/ShowChoices(mob/user) if(!user || !user.client) return - update_preview_icon() + if(current_tab == 2) //CITADEL EDIT, for muh nudies + update_preview_icon(nude=TRUE) + else + update_preview_icon(nude=FALSE) //EDIT END user << browse_rsc(preview_icon, "previewicon.png") var/dat = "
" - dat += "Character Settings " + dat += "Character Settings" + dat += "Character Appearance" + dat += "Loadout" dat += "Game Preferences" if(!path) @@ -236,7 +241,8 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "Backpack:
[backbag]
" dat += "Uplink Spawn Location:
[uplink_spawn_loc]
" - if(pref_species.use_skintones) +// CITADEL EDIT - ALL OF THESE ARE HANDLED IN THE MODULAR VERSION, TAB 2 + /* if(pref_species.use_skintones) dat += "" @@ -246,6 +252,8 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "" + dat = add_citadel_choices(dat) + if(HAIR in pref_species.species_traits) dat += "" @@ -359,7 +367,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "" - dat = add_citadel_choices(dat) + if(CONFIG_GET(flag/join_with_mutant_humans)) @@ -388,7 +396,8 @@ GLOBAL_LIST_EMPTY(preferences_datums) dat += "[features["wings"]]
" - dat += "" + dat += ""*/ + dat += citadel_dat_replace(current_tab) dat += "" @@ -508,8 +517,11 @@ GLOBAL_LIST_EMPTY(preferences_datums) else dat += "Be [capitalize(i)]: [(i in be_special) ? "Yes" : "No"]
" + dat += citadel_dat_replace(current_tab) + dat += "" + else dat = citadel_dat_replace(current_tab) diff --git a/config/game_options.txt b/config/game_options.txt index ee080b6014..5599030e39 100644 --- a/config/game_options.txt +++ b/config/game_options.txt @@ -512,6 +512,7 @@ ROUNDSTART_RACES insect ROUNDSTART_RACES xeno ROUNDSTART_RACES datashark ROUNDSTART_RACES guilmon +ROUNDSTART_RACES ipc ## CREW OBJECTIVES ## ## Comment to disable objectives for innocent crew members. diff --git a/modular_citadel/code/game/objects/items.dm b/modular_citadel/code/game/objects/items.dm index 3cd0d12b8b..31ab57ee47 100644 --- a/modular_citadel/code/game/objects/items.dm +++ b/modular_citadel/code/game/objects/items.dm @@ -1,2 +1,14 @@ /obj/item var/total_mass //Total mass in arbitrary pound-like values. If there's no balance reasons for an item to have otherwise, this var should be the item's weight in pounds. + + var/list/alternate_screams = list() //REEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE + +// lazy for screaming. +/obj/item/clothing/head/xenos + alternate_screams = list('sound/voice/hiss6.ogg') + +/obj/item/clothing/head/cardborg + alternate_screams = list('modular_citadel/sound/voice/scream_silicon.ogg') + +/obj/item/clothing/head/ushanka + alternate_screams = list('modular_citadel/sound/misc/cyka1.ogg', 'modular_citadel/sound/misc/cheekibreeki.ogg') \ No newline at end of file diff --git a/modular_citadel/code/modules/client/loadout/uniform_trek.dm b/modular_citadel/code/modules/client/loadout/uniform_trek.dm index dd03d3c446..3189021be1 100644 --- a/modular_citadel/code/modules/client/loadout/uniform_trek.dm +++ b/modular_citadel/code/modules/client/loadout/uniform_trek.dm @@ -131,25 +131,25 @@ restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer","Head of Security","Cargo Technician", "Shaft Miner", "Quartermaster") //Hats! -/datum/gear/hat/job_trek/cap +/datum/gear/hat/job_trek name = "Federation Officer's Cap" category = slot_head path = /obj/item/clothing/head/caphat/formal/fedcover restricted_roles = list("Captain","Head of Personnel") -/datum/gear/hat/job_trek/cap/medisci +/datum/gear/hat/job_trek/medisci name = "Federation Officer's Cap" category = slot_head path = /obj/item/clothing/head/caphat/formal/fedcover/medsci restricted_roles = list("Chief Medical Officer","Medical Doctor","Chemist","Virologist","Geneticist","Research Director","Scientist", "Roboticist") -/datum/gear/hat/job_trek/cap/eng +/datum/gear/hat/job_trek/eng name = "Federation Officer's Cap" category = slot_head path = /obj/item/clothing/head/caphat/formal/fedcover/eng restricted_roles = list("Chief Engineer","Atmospheric Technician","Station Engineer","Warden","Detective","Security Officer","Head of Security","Cargo Technician", "Shaft Miner", "Quartermaster") -/datum/gear/hat/job_trek/cap/sec +/datum/gear/hat/job_trek/sec name = "Federation Officer's Cap" category = slot_head path = /obj/item/clothing/head/caphat/formal/fedcover/sec diff --git a/modular_citadel/code/modules/client/preferences.dm b/modular_citadel/code/modules/client/preferences.dm index 398a0c0b91..c3dd517afb 100644 --- a/modular_citadel/code/modules/client/preferences.dm +++ b/modular_citadel/code/modules/client/preferences.dm @@ -12,7 +12,11 @@ var/arousable = TRUE var/widescreenpref = TRUE var/autostand = TRUE + var/toggleeatingnoise = TRUE + var/toggledigestionnoise = TRUE + var/hound_sleeper = TRUE max_save_slots = 10 + var/cit_toggles = TOGGLES_CITADEL features = list("mcolor" = "FFF", "tail_lizard" = "Smooth", "tail_human" = "None", @@ -86,13 +90,10 @@ ..() LAZYINITLIST(chosen_gear) -/datum/preferences/proc/add_citadel_choices(dat) - if(current_tab == 2) - update_preview_icon(nude=TRUE) - else - update_preview_icon(nude=FALSE) +/datum/preferences/proc/add_citadel_choices(.) + - return dat + return . /datum/preferences/proc/process_citadel_link(mob/user, list/href_list) if(href_list["task"] == "input") @@ -357,10 +358,9 @@ features["vag_color"] = sanitize_hexcolor(new_vagcolor) else user << "Invalid color. Your color is not bright enough." - - if("input") + + else switch(href_list["preference"]) - //genital code if("genital_colour") switch(features["genitals_use_skintone"]) @@ -473,8 +473,7 @@ features["exhibitionist"] = TRUE else features["exhibitionist"] = FALSE - else - switch(href_list["preference"]) + if("widescreenpref") widescreenpref = !widescreenpref user.client.change_view(CONFIG_GET(string/default_view)) @@ -514,7 +513,7 @@ if(i == href_list["select_category"]) gear_tab = i if(href_list["toggle_gear_path"]) - var/datum/gear/G = GLOB.loadout_items[gear_tab][html_decode(href_list["toggle_gear_path"])] + var/datum/gear/G = GLOB.loadout_items[gear_tab][href_list["toggle_gear_path"]] if(!G) return var/toggle = text2num(href_list["toggle_gear"]) @@ -525,9 +524,6 @@ if(!is_loadout_slot_available(G.category)) to_chat(user, "You cannot take this loadout, as you've already chosen too many of the same category!") return - if(G.ckeywhitelist && G.ckeywhitelist.len && !(user.ckey in G.ckeywhitelist)) - to_chat(user, "This is an item intended for donator use only. You are not authorized to use this item.") - return if(gear_points >= initial(G.cost)) LAZYADD(chosen_gear, G.type) gear_points -= initial(G.cost) @@ -535,6 +531,7 @@ /datum/preferences/proc/citadel_dat_replace(current_tab) var/mob/user + //This proc is for menus other than game pref and char pref . = "
" @@ -550,25 +547,26 @@ . += "
" . += "
" - if(current_tab == 0) + if(current_tab == 1) + . += "
" + . += "

Citadel Preferences

" . += "Arousal:[arousable == TRUE ? "Enabled" : "Disabled"]
" . += "Exhibitionist:[features["exhibitionist"] == TRUE ? "Yes" : "No"]
" - // game prefs - if(current_tab == 1) - //VORE SOUNDS - . += "Hear Vore Sounds: [(toggles & EATING_NOISES) ? "Yes" : "No"]
" - . += "Hear Vore Digestion Sounds: [(toggles & DIGESTION_NOISES) ? "Yes" : "No"]
" + . += "Allow MediHound sleeper: [(cit_toggles & MEDIHOUND_SLEEPER) ? "Yes" : "No"]
" + . += "Hear Vore Sounds: [(cit_toggles & EATING_NOISES) ? "Yes" : "No"]
" + . += "Hear Vore Digestion Sounds: [(cit_toggles & DIGESTION_NOISES) ? "Yes" : "No"]
" . += "Widescreen: [widescreenpref ? "Enabled ([CONFIG_GET(string/default_view)])" : "Disabled (15x15)"]
" . += "Auto stand: [autostand ? "Enabled" : "Disabled"]
" . += "Screen Shake: [(screenshake==100) ? "Full" : ((screenshake==0) ? "None" : "[screenshake]")]
" if (user && user.client && !user.client.prefs.screenshake==0) . += "Damage Screen Shake: [(damagescreenshake==1) ? "On" : ((damagescreenshake==0) ? "Off" : "Only when down")]
" + . += "
" //Character Appearance if(current_tab == 2) . += "" */ . += "
" - . += "

" + . += "

" . += "Set Flavor Text
" if(lentext(features["flavor_text"]) <= 40) if(!lentext(features["flavor_text"])) @@ -695,6 +693,7 @@ . += "
" + if(current_tab == 3) if(!gear_tab) gear_tab = GLOB.loadout_items[1] @@ -767,7 +766,7 @@ datum/preferences/copy_to(mob/living/carbon/human/character, icon_updates = 1) ..() character.give_genitals(TRUE) - character.flavor_text = features["flavor_text"] //Let's update their flavor_text at least initially + character.flavor_text = features["flavor_text"] //Let's up.e their flavor_text at least initially character.canbearoused = arousable if(icon_updates) character.update_genitals() \ No newline at end of file diff --git a/modular_citadel/code/modules/client/preferences_savefile.dm b/modular_citadel/code/modules/client/preferences_savefile.dm index 599dfcf61f..8f8c7a94e9 100644 --- a/modular_citadel/code/modules/client/preferences_savefile.dm +++ b/modular_citadel/code/modules/client/preferences_savefile.dm @@ -1,6 +1,9 @@ /datum/preferences/proc/cit_character_pref_load(savefile/S) //ipcs S["feature_ipc_screen"] >> features["ipc_screen"] + + //Citadel toggles + S["cit_toggles"] >> cit_toggles features["ipc_screen"] = sanitize_inlist(features["ipc_screen"], GLOB.ipc_screens_list) //Citadel @@ -11,6 +14,7 @@ features["mcolor3"] = pick("FFFFFF","7F7F7F", "7FFF7F", "7F7FFF", "FF7F7F", "7FFFFF", "FF7FFF", "FFFF7F") features["mcolor2"] = sanitize_hexcolor(features["mcolor2"], 3, 0) features["mcolor3"] = sanitize_hexcolor(features["mcolor3"], 3, 0) + cit_toggles = sanitize_integer(toggles, 0, 65535, initial(toggles)) //gear loadout var/text_to_load @@ -69,6 +73,8 @@ //flavor text WRITE_FILE(S["feature_flavor_text"], features["flavor_text"]) + WRITE_FILE(S["cit_toggles"], cit_toggles) + //gear loadout if(islist(chosen_gear)) if(chosen_gear.len) diff --git a/modular_citadel/code/modules/client/preferences_toggles.dm b/modular_citadel/code/modules/client/preferences_toggles.dm index a475d65106..7e3a78144e 100644 --- a/modular_citadel/code/modules/client/preferences_toggles.dm +++ b/modular_citadel/code/modules/client/preferences_toggles.dm @@ -2,35 +2,35 @@ TOGGLE_CHECKBOX(/datum/verbs/menu/Settings/Sound, toggleeatingnoise)() set name = "Toggle Eating Noises" set category = "Preferences" set desc = "Hear Eating noises" - usr.client.prefs.toggles ^= EATING_NOISES + usr.client.prefs.cit_toggles ^= EATING_NOISES usr.client.prefs.save_preferences() usr.stop_sound_channel(CHANNEL_PRED) - to_chat(usr, "You will [(usr.client.prefs.toggles & EATING_NOISES) ? "now" : "no longer"] hear eating noises.") + to_chat(usr, "You will [(usr.client.prefs.cit_toggles & EATING_NOISES) ? "now" : "no longer"] hear eating noises.") /datum/verbs/menu/Settings/Sound/toggleeatingnoise/Get_checked(client/C) - return !(C.prefs.toggles & EATING_NOISES) + return C.prefs.cit_toggles & EATING_NOISES TOGGLE_CHECKBOX(/datum/verbs/menu/Settings/Sound, toggledigestionnoise)() set name = "Toggle Digestion Noises" set category = "Preferences" set desc = "Hear digestive noises" - usr.client.prefs.toggles ^= DIGESTION_NOISES + usr.client.prefs.cit_toggles ^= DIGESTION_NOISES usr.client.prefs.save_preferences() usr.stop_sound_channel(CHANNEL_DIGEST) - to_chat(usr, "You will [(usr.client.prefs.toggles & DIGESTION_NOISES) ? "now" : "no longer"] hear digestion noises.") + to_chat(usr, "You will [(usr.client.prefs.cit_toggles & DIGESTION_NOISES) ? "now" : "no longer"] hear digestion noises.") /datum/verbs/menu/Settings/Sound/toggledigestionnoise/Get_checked(client/C) - return !(C.prefs.toggles & DIGESTION_NOISES) + return C.prefs.cit_toggles & DIGESTION_NOISES TOGGLE_CHECKBOX(/datum/verbs/menu/Settings/Sound, togglehoundsleeper)() set name = "Allow/Deny Hound Sleeper" set category = "Preferences" set desc = "Allow MediHound Sleepers" - usr.client.prefs.toggles ^= MEDIHOUND_SLEEPER + usr.client.prefs.cit_toggles ^= MEDIHOUND_SLEEPER usr.client.prefs.save_preferences() - if(usr.client.prefs.toggles & MEDIHOUND_SLEEPER) + if(usr.client.prefs.cit_toggles & MEDIHOUND_SLEEPER) to_chat(usr, "You will now allow MediHounds to place you in their sleeper.") else to_chat(usr, "You will no longer allow MediHounds to place you in their sleeper.") - SSblackbox.record_feedback("nested tally", "preferences_verb", 1, list("Toggle MediHound Sleeper", "[usr.client.prefs.toggles & MEDIHOUND_SLEEPER ? "Enabled" : "Disabled"]")) //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + SSblackbox.record_feedback("nested tally", "preferences_verb", 1, list("Toggle MediHound Sleeper", "[usr.client.prefs.cit_toggles & MEDIHOUND_SLEEPER ? "Enabled" : "Disabled"]")) //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /datum/verbs/menu/Settings/Sound/togglehoundsleeper/Get_checked(client/C) - return C.prefs.toggles & MEDIHOUND_SLEEPER \ No newline at end of file + return C.prefs.cit_toggles & MEDIHOUND_SLEEPER \ No newline at end of file diff --git a/modular_citadel/code/modules/mob/cit_emotes.dm b/modular_citadel/code/modules/mob/cit_emotes.dm index 86cb2a4d89..65b6d43a77 100644 --- a/modular_citadel/code/modules/mob/cit_emotes.dm +++ b/modular_citadel/code/modules/mob/cit_emotes.dm @@ -1,3 +1,103 @@ +/mob + var/nextsoundemote = 1 + //Disables the custom emote blacklist from TG that normally applies to slimes. /datum/emote/living/custom - mob_type_blacklist_typecache = list(/mob/living/brain) \ No newline at end of file + mob_type_blacklist_typecache = list(/mob/living/brain) + +/datum/emote/living/scream/run_emote(mob/living/user, params) //I can't not port this shit, come on. + if(user.nextsoundemote >= world.time || user.stat != CONSCIOUS) + return + var/sound + var/miming = user.mind ? user.mind.miming : 0 + if(!user.is_muzzled() && !miming) + user.nextsoundemote = world.time + 7 + if(issilicon(user)) + sound = 'modular_citadel/sound/voice/scream_silicon.ogg' + if(iscyborg(user)) + var/mob/living/silicon/robot/S = user + if(S.cell.charge < 20) + to_chat(S, "Scream module deactivated. Please recharge.") + return + S.cell.use(200) + if(ismonkey(user)) + sound = 'modular_citadel/sound/voice/scream_monkey.ogg' + if(istype(user, /mob/living/simple_animal/hostile/gorilla)) + sound = 'sound/creatures/gorilla.ogg' + if(ishuman(user)) + user.adjustOxyLoss(5) + sound = pick('modular_citadel/sound/voice/scream_m1.ogg', 'modular_citadel/sound/voice/scream_m2.ogg') + if(user.gender == FEMALE) + sound = pick('modular_citadel/sound/voice/scream_f1.ogg', 'modular_citadel/sound/voice/scream_f2.ogg') + if(is_species(user, /datum/species/android) || is_species(user, /datum/species/synth) || is_species(user, /datum/species/ipc)) + sound = 'modular_citadel/sound/voice/scream_silicon.ogg' + if(is_species(user, /datum/species/lizard)) + sound = 'modular_citadel/sound/voice/scream_lizard.ogg' + if(is_species(user, /datum/species/skeleton)) + sound = 'modular_citadel/sound/voice/scream_skeleton.ogg' + if (is_species(user, /datum/species/fly) || is_species(user, /datum/species/moth)) + sound = 'modular_citadel/sound/voice/scream_moth.ogg' + if(isalien(user)) + sound = 'sound/voice/hiss6.ogg' + LAZYINITLIST(user.alternate_screams) + if(LAZYLEN(user.alternate_screams)) + sound = pick(user.alternate_screams) + playsound(user.loc, sound, 50, 1, 4, 1.2) + message = "screams!" + else if(miming) + message = "acts out a scream." + else + message = "makes a very loud noise." + . = ..() + +/datum/emote/sound/carbon/snap + key = "snap" + key_third_person = "snaps" + muzzle_ignore = TRUE + restraint_check = TRUE + emote_type = EMOTE_AUDIBLE + sound = 'sound/effects/snap01.ogg' + mob_type_allowed_typecache = list(/mob/living/carbon/) + + +/datum/emote/living/snap + key = "snap" + key_third_person = "snaps" + message = "snaps their fingers." + emote_type = EMOTE_AUDIBLE + +/datum/emote/living/snap/run_emote(mob/living/user, params) + if(ishuman(user)) + if(user.nextsoundemote >= world.time) + return + user.nextsoundemote = world.time + 7 + playsound(user, 'modular_citadel/sound/voice/snap.ogg', 50, 1, -1) + . = ..() + +/datum/emote/living/snap2 + key = "snap2" + key_third_person = "snaps twice" + message = "snaps twice." + emote_type = EMOTE_AUDIBLE + +/datum/emote/living/snap2/run_emote(mob/living/user, params) + if(ishuman(user)) + if(user.nextsoundemote >= world.time) + return + user.nextsoundemote = world.time + 7 + playsound(user, 'modular_citadel/sound/voice/snap2.ogg', 50, 1, -1) + . = ..() + +/datum/emote/living/snap3 + key = "snap3" + key_third_person = "snaps thrice" + message = "snaps thrice." + emote_type = EMOTE_AUDIBLE + +/datum/emote/living/snap3/run_emote(mob/living/user, params) + if(ishuman(user)) + if(user.nextsoundemote >= world.time) + return + user.nextsoundemote = world.time + 7 + playsound(user, 'modular_citadel/sound/voice/snap3.ogg', 50, 1, -1) + . = ..() \ No newline at end of file diff --git a/modular_citadel/code/modules/mob/living/carbon/reindex_screams.dm b/modular_citadel/code/modules/mob/living/carbon/reindex_screams.dm new file mode 100644 index 0000000000..7f5d625f62 --- /dev/null +++ b/modular_citadel/code/modules/mob/living/carbon/reindex_screams.dm @@ -0,0 +1,45 @@ +/mob/living + var/list/alternate_screams + +/mob/living/carbon/proc/reindex_screams() + clear_screams() + if(head) + add_screams(head.alternate_screams) + if(wear_mask) + add_screams(wear_mask.alternate_screams) + if(back) + add_screams(back.alternate_screams) + +/mob/living/carbon/human/reindex_screams() + ..() + //More slots in humans. + if(ears) + add_screams(ears.alternate_screams) + if(wear_suit) + add_screams(wear_suit.alternate_screams) + if(w_uniform) + add_screams(w_uniform.alternate_screams) + if(glasses) + add_screams(glasses.alternate_screams) + if(gloves) + add_screams(gloves.alternate_screams) + if(shoes) + add_screams(shoes.alternate_screams) + if(belt) + add_screams(belt.alternate_screams) + if(s_store) + add_screams(s_store.alternate_screams) + if(wear_id) + add_screams(wear_id.alternate_screams) + +//Note that the following two are for /mob/living, while the above two are for /carbon and /human +/mob/living/proc/add_screams(var/list/screams) + LAZYINITLIST(alternate_screams) + if(!screams || screams.len == 0) + return + for(var/S in screams) + LAZYADD(alternate_screams, S) + +/mob/living/proc/clear_screams() + LAZYINITLIST(alternate_screams) + LAZYCLEARLIST(alternate_screams) \ No newline at end of file diff --git a/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm b/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm index 14ded0b7cc..3a59c37618 100644 --- a/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm +++ b/modular_citadel/code/modules/vore/eating/belly_obj_vr.dm @@ -163,7 +163,7 @@ //Sound w/ antispam flag setting if(!silent && !recent_sound) for(var/mob/M in get_hearers_in_view(5, get_turf(owner))) - if(M.client && M.client.prefs.toggles & EATING_NOISES) + if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) playsound(get_turf(owner),"[src.vore_sound]",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) recent_sound = TRUE @@ -194,7 +194,7 @@ AM.forceMove(destination) // Move the belly contents into the same location as belly's owner. count++ for(var/mob/M in get_hearers_in_view(5, get_turf(owner))) - if(M.client && M.client.prefs.toggles & EATING_NOISES) + if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) playsound(get_turf(owner),"[src.release_sound]",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) items_preserved.Cut() owner.visible_message("[owner] expels everything from their [lowertext(name)]!") @@ -215,7 +215,7 @@ P.stop_sound_channel(CHANNEL_PREYLOOP) if(release_sound) for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.toggles & EATING_NOISES) + if(H.client && H.client.prefs.cit_toggles & EATING_NOISES) playsound(get_turf(owner),"[src.release_sound]",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) if(istype(M,/mob/living)) @@ -507,7 +507,7 @@ if(!silent) for(var/mob/M in get_hearers_in_view(5, get_turf(owner))) - if(M.client && M.client.prefs.toggles & EATING_NOISES) + if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) playsound(get_turf(owner),"struggle_sound",35,0,-5,1,ignore_walls = FALSE,channel=CHANNEL_PRED) R.stop_sound_channel(CHANNEL_PRED) var/sound/prey_struggle = sound(get_sfx("prey_struggle")) @@ -584,7 +584,7 @@ target.nom_mob(content, target.owner) if(!silent) for(var/mob/M in get_hearers_in_view(5, get_turf(owner))) - if(M.client && M.client.prefs.toggles & EATING_NOISES) + if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) playsound(get_turf(owner),"[src.vore_sound]",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) owner.updateVRPanel() for(var/mob/living/M in contents) diff --git a/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm b/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm index 3260e2ae99..e2919ad3ec 100644 --- a/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm +++ b/modular_citadel/code/modules/vore/eating/bellymodes_vr.dm @@ -41,7 +41,7 @@ if(prob(25)) M.stop_sound_channel(CHANNEL_DIGEST) for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.toggles & DIGESTION_NOISES) + if(H.client && H.client.prefs.cit_toggles & DIGESTION_NOISES) playsound(get_turf(owner),"digest_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) M.stop_sound_channel(CHANNEL_DIGEST) M.playsound_local(get_turf(M), prey_digest, 45) @@ -72,7 +72,7 @@ owner.nutrition += 400 // so eating dead mobs gives you *something*. M.stop_sound_channel(DIGESTION_NOISES) for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.toggles & DIGESTION_NOISES) + if(H.client && H.client.prefs.cit_toggles & DIGESTION_NOISES) playsound(get_turf(owner),"death_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) M.stop_sound_channel(DIGESTION_NOISES) M.stop_sound_channel(CHANNEL_PREYLOOP) @@ -101,7 +101,7 @@ if(prob(25)) M.stop_sound_channel(CHANNEL_DIGEST) for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.toggles & DIGESTION_NOISES) + if(H.client && H.client.prefs.cit_toggles & DIGESTION_NOISES) playsound(get_turf(owner),"digest_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) M.stop_sound_channel(CHANNEL_DIGEST) M.playsound_local(get_turf(M), prey_digest, 65) @@ -120,7 +120,7 @@ if(prob(35)) M.stop_sound_channel(CHANNEL_DIGEST) for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.toggles & DIGESTION_NOISES) + if(H.client && H.client.prefs.cit_toggles & DIGESTION_NOISES) playsound(get_turf(owner),"digest_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) M.stop_sound_channel(CHANNEL_PRED) M.playsound_local(get_turf(M), prey_digest, 65) @@ -133,7 +133,7 @@ if(prob(25)) M.stop_sound_channel(CHANNEL_DIGEST) for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.toggles & DIGESTION_NOISES) + if(H.client && H.client.prefs.cit_toggles & DIGESTION_NOISES) playsound(get_turf(owner),"digest_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) M.stop_sound_channel(CHANNEL_DIGEST) M.playsound_local(get_turf(M), prey_digest, 65) @@ -161,7 +161,7 @@ M.stop_sound_channel(CHANNEL_DIGEST) for(var/mob/H in get_hearers_in_view(5, get_turf(owner))) - if(H.client && H.client.prefs.toggles & DIGESTION_NOISES) + if(H.client && H.client.prefs.cit_toggles & DIGESTION_NOISES) playsound(get_turf(owner),"death_pred",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_DIGEST) M.stop_sound_channel(CHANNEL_DIGEST) M.playsound_local(get_turf(M), prey_death, 65) diff --git a/modular_citadel/code/modules/vore/eating/living_vr.dm b/modular_citadel/code/modules/vore/eating/living_vr.dm index 5b2ad312ab..1eca5f585d 100644 --- a/modular_citadel/code/modules/vore/eating/living_vr.dm +++ b/modular_citadel/code/modules/vore/eating/living_vr.dm @@ -195,7 +195,7 @@ // If we got this far, nom successful! Announce it! user.visible_message(success_msg) for(var/mob/M in get_hearers_in_view(5, get_turf(user))) - if(M.client && M.client.prefs.toggles & EATING_NOISES) + if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) playsound(get_turf(user),"[belly.vore_sound]",50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) // Actually shove prey into the belly. diff --git a/modular_citadel/code/modules/vore/eating/vorepanel_vr.dm b/modular_citadel/code/modules/vore/eating/vorepanel_vr.dm index 7d7a48ed28..a3593278b2 100644 --- a/modular_citadel/code/modules/vore/eating/vorepanel_vr.dm +++ b/modular_citadel/code/modules/vore/eating/vorepanel_vr.dm @@ -355,7 +355,7 @@ selected.release_all_contents() for(var/mob/M in get_hearers_in_view(5, get_turf(user))) - if(M.client && M.client.prefs.toggles & EATING_NOISES) + if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) playsound(get_turf(user),'sound/vore/pred/escape.ogg',50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) to_chat(user.loc,"Everything is released from [user]!") @@ -371,7 +371,7 @@ for(var/atom/movable/tgt in selected) selected.transfer_contents(tgt, choice, 1) for(var/mob/M in get_hearers_in_view(5, get_turf(user))) - if(M.client && M.client.prefs.toggles & EATING_NOISES) + if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) playsound(get_turf(user),'sound/vore/pred/stomachmove.ogg',50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) to_chat(tgt,"You're squished from [user]'s [lowertext(selected)] to their [lowertext(choice.name)]!") @@ -391,7 +391,7 @@ selected.release_specific_contents(tgt) for(var/mob/M in get_hearers_in_view(5, get_turf(user))) - if(M.client && M.client.prefs.toggles & EATING_NOISES) + if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) playsound(get_turf(user),'sound/vore/pred/escape.ogg',50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) user.loc << "[tgt] is released from [user]!" @@ -407,7 +407,7 @@ to_chat(tgt,"You're squished from [user]'s [lowertext(selected.name)] to their [lowertext(choice.name)]!") selected.transfer_contents(tgt, choice) for(var/mob/M in get_hearers_in_view(5, get_turf(user))) - if(M.client && M.client.prefs.toggles & EATING_NOISES) + if(M.client && M.client.prefs.cit_toggles & EATING_NOISES) playsound(get_turf(user),'sound/vore/pred/stomachmove.ogg',50,0,-5,0,ignore_walls = FALSE,channel=CHANNEL_PRED) if(href_list["newbelly"]) diff --git a/modular_citadel/sound/misc/cheekibreeki.ogg b/modular_citadel/sound/misc/cheekibreeki.ogg new file mode 100644 index 0000000000000000000000000000000000000000..7c41bdd7c2dd51ec45ec5a71dfe94ef0c1f72fc5 GIT binary patch literal 46056 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 literal 0 HcmV?d00001 diff --git a/modular_citadel/sound/misc/cyka1.ogg b/modular_citadel/sound/misc/cyka1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..5479cd181847fb4b0b1b4d1715cb652d60c82c4c GIT binary patch literal 27520 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 literal 0 HcmV?d00001 diff --git a/tgstation.dme b/tgstation.dme index 51b6040dea..15e6d899c5 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -2732,6 +2732,7 @@ #include "modular_citadel\code\modules\mob\living\living.dm" #include "modular_citadel\code\modules\mob\living\carbon\carbon.dm" #include "modular_citadel\code\modules\mob\living\carbon\damage_procs.dm" +#include "modular_citadel\code\modules\mob\living\carbon\reindex_screams.dm" #include "modular_citadel\code\modules\mob\living\carbon\human\human.dm" #include "modular_citadel\code\modules\mob\living\carbon\human\human_defense.dm" #include "modular_citadel\code\modules\mob\living\carbon\human\human_movement.dm"