Merge branch 'master' into upstream-merge-13336

This commit is contained in:
BlackMajor
2022-07-19 18:30:09 +12:00
committed by GitHub
28 changed files with 96 additions and 44 deletions
-1
View File
@@ -293,7 +293,6 @@ var/list/bodyfall_sound = list('sound/effects/bodyfall1.ogg','sound/effects/body
var/list/teppi_sound = list('sound/voice/teppi/gyooh1.ogg', 'sound/voice/teppi/gyooh2.ogg', 'sound/voice/teppi/gyooh3.ogg', 'sound/voice/teppi/gyooh4.ogg', 'sound/voice/teppi/gyooh5.ogg', 'sound/voice/teppi/gyooh6.ogg', 'sound/voice/teppi/snoot1.ogg', 'sound/voice/teppi/snoot2.ogg')
var/list/talk_sound = list('sound/talksounds/a.ogg','sound/talksounds/b.ogg','sound/talksounds/c.ogg','sound/talksounds/d.ogg','sound/talksounds/e.ogg','sound/talksounds/f.ogg','sound/talksounds/g.ogg','sound/talksounds/h.ogg')
var/list/emote_sound = list('sound/talksounds/me_a.ogg','sound/talksounds/me_b.ogg','sound/talksounds/me_c.ogg','sound/talksounds/me_d.ogg','sound/talksounds/me_e.ogg','sound/talksounds/me_f.ogg')
//Goon sounds
var/list/goon_speak_one_sound = list('sound/talksounds/goon/speak_1.ogg', 'sound/talksounds/goon/speak_1_ask.ogg', 'sound/talksounds/goon/speak_1_exclaim.ogg')
var/list/goon_speak_two_sound = list('sound/talksounds/goon/speak_2.ogg', 'sound/talksounds/goon/speak_2_ask.ogg', 'sound/talksounds/goon/speak_2_exclaim.ogg')
var/list/goon_speak_three_sound = list('sound/talksounds/goon/speak_3.ogg', 'sound/talksounds/goon/speak_3_ask.ogg', 'sound/talksounds/goon/speak_3_exclaim.ogg')
@@ -95,7 +95,7 @@ var/list/_client_preferences_by_type
key = "DIGEST_NOISES"
enabled_description = "Noisy"
disabled_description = "Silent"
/datum/client_preference/belch_noises // Belching noises - pref toggle for 'em
description = "Burping"
key = "BELCH_NOISES"
@@ -301,6 +301,30 @@ var/list/_client_preferences_by_type
enabled_description = "On"
disabled_description = "Off"
/datum/client_preference/say_sounds
description = "Say Sounds"
key = "SAY_SOUNDS"
enabled_description = "On"
disabled_description = "Off"
/datum/client_preference/emote_sounds
description = "Me Sounds"
key = "EMOTE_SOUNDS"
enabled_description = "On"
disabled_description = "Off"
/datum/client_preference/whisper_sounds
description = "Whisper Sounds"
key = "WHISPER_SOUNDS"
enabled_description = "On"
disabled_description = "Off"
/datum/client_preference/subtle_sounds
description = "Subtle Sounds"
key = "SUBTLE_SOUNDS"
enabled_description = "On"
disabled_description = "Off"
/datum/client_preference/runechat_mob
description = "Runechat (Mobs)"
key = "RUNECHAT_MOB"
@@ -3,6 +3,8 @@
#define WEIGHT_MAX 500
#define WEIGHT_CHANGE_MIN 0
#define WEIGHT_CHANGE_MAX 100
#define MAX_VOICE_FREQ 70000
#define MIN_VOICE_FREQ 15000
// Define a place to save in character setup
/datum/preferences
@@ -12,11 +14,8 @@
var/weight_gain = 100 // Weight gain rate.
var/weight_loss = 50 // Weight loss rate.
var/fuzzy = 0 // Preference toggle for sharp/fuzzy icon. Default sharp.
<<<<<<< HEAD
=======
var/voice_freq = 0
var/voice_sound = "beep-boop"
>>>>>>> dd7585a45d... Merge pull request #13336 from Very-Soft/saysound
// Definition of the stuff for Sizing
/datum/category_item/player_setup_item/vore/size
@@ -29,11 +28,8 @@
S["weight_gain"] >> pref.weight_gain
S["weight_loss"] >> pref.weight_loss
S["fuzzy"] >> pref.fuzzy
<<<<<<< HEAD
=======
S["voice_freq"] >> pref.voice_freq
S["voice_sound"] >> pref.voice_sound
>>>>>>> dd7585a45d... Merge pull request #13336 from Very-Soft/saysound
/datum/category_item/player_setup_item/vore/size/save_character(var/savefile/S)
S["size_multiplier"] << pref.size_multiplier
@@ -41,17 +37,17 @@
S["weight_gain"] << pref.weight_gain
S["weight_loss"] << pref.weight_loss
S["fuzzy"] << pref.fuzzy
<<<<<<< HEAD
=======
S["voice_freq"] << pref.voice_freq
S["voice_sound"] << pref.voice_sound
>>>>>>> dd7585a45d... Merge pull request #13336 from Very-Soft/saysound
/datum/category_item/player_setup_item/vore/size/sanitize_character()
pref.weight_vr = sanitize_integer(pref.weight_vr, WEIGHT_MIN, WEIGHT_MAX, initial(pref.weight_vr))
pref.weight_gain = sanitize_integer(pref.weight_gain, WEIGHT_CHANGE_MIN, WEIGHT_CHANGE_MAX, initial(pref.weight_gain))
pref.weight_loss = sanitize_integer(pref.weight_loss, WEIGHT_CHANGE_MIN, WEIGHT_CHANGE_MAX, initial(pref.weight_loss))
pref.fuzzy = sanitize_integer(pref.fuzzy, 0, 1, initial(pref.fuzzy))
if(pref.voice_freq != 0)
pref.voice_freq = sanitize_integer(pref.voice_freq, MIN_VOICE_FREQ, MAX_VOICE_FREQ, initial(pref.fuzzy))
if(pref.size_multiplier == null || pref.size_multiplier < RESIZE_TINY || pref.size_multiplier > RESIZE_HUGE)
pref.size_multiplier = initial(pref.size_multiplier)
@@ -60,9 +56,8 @@
character.weight_gain = pref.weight_gain
character.weight_loss = pref.weight_loss
character.fuzzy = pref.fuzzy
character.voice_freq = pref.voice_freq
character.resize(pref.size_multiplier, animate = FALSE, ignore_prefs = TRUE)
<<<<<<< HEAD
=======
if(!pref.voice_sound)
character.voice_sounds_list = talk_sound
else
@@ -95,17 +90,13 @@
character.voice_sounds_list = goon_speak_roach_sound
if("goon speak skelly")
character.voice_sounds_list = goon_speak_skelly_sound
>>>>>>> dd7585a45d... Merge pull request #13336 from Very-Soft/saysound
/datum/category_item/player_setup_item/vore/size/content(var/mob/user)
. += "<br>"
. += "<b>Scale:</b> <a href='?src=\ref[src];size_multiplier=1'>[round(pref.size_multiplier*100)]%</a><br>"
. += "<b>Scaled Appearance:</b> <a [pref.fuzzy ? "" : ""] href='?src=\ref[src];toggle_fuzzy=1'><b>[pref.fuzzy ? "Fuzzy" : "Sharp"]</b></a><br>"
<<<<<<< HEAD
=======
. += "<b>Voice Frequency:</b> <a href='?src=\ref[src];voice_freq=1'>[pref.voice_freq]</a><br>"
. += "<b>Voice Sounds:</b> <a href='?src=\ref[src];voice_sounds_list=1'>[pref.voice_sound]</a><br>"
>>>>>>> dd7585a45d... Merge pull request #13336 from Very-Soft/saysound
. += "<br>"
. += "<b>Relative Weight:</b> <a href='?src=\ref[src];weight=1'>[pref.weight_vr]</a><br>"
. += "<b>Weight Gain Rate:</b> <a href='?src=\ref[src];weight_gain=1'>[pref.weight_gain]</a><br>"
@@ -159,8 +150,6 @@
pref.weight_loss = round(text2num(weight_loss_rate),1)
return TOPIC_REFRESH
<<<<<<< HEAD
=======
else if(href_list["voice_freq"])
var/list/preset_voice_freqs = list("high" = MAX_VOICE_FREQ, "middle-high" = 56250, "middle" = 42500, "middle-low"= 28750, "low" = MIN_VOICE_FREQ, "custom" = 1, "random" = 0)
var/choice = tgui_input_list(usr, "What would you like to set your voice frequency to? ([MIN_VOICE_FREQ] - [MAX_VOICE_FREQ])", "Voice Frequency", preset_voice_freqs)
@@ -200,6 +189,4 @@
pref.voice_sound = "beep-boop"
else
pref.voice_sound = choice
>>>>>>> dd7585a45d... Merge pull request #13336 from Very-Soft/saysound
return ..();
@@ -406,8 +406,6 @@
feedback_add_details("admin_verb","TRadioSounds")
<<<<<<< HEAD
=======
/client/verb/toggle_say_sounds()
set name = "Sound Toggle: Say"
set category = "Preferences"
@@ -448,7 +446,7 @@
feedback_add_details("admin_verb","TWhisperSounds")
/client/verb/toggle_subtle_sounds()
set name = "Sound Toggle: Subtle"
set name = "Toggle Subtle Sounds"
set category = "Preferences"
set desc = "Toggle hearing a sound when somebody uses subtle."
@@ -460,7 +458,6 @@
feedback_add_details("admin_verb","TSubtleSounds")
>>>>>>> dd7585a45d... Merge pull request #13336 from Very-Soft/saysound
// Not attached to a pref datum because those are strict binary toggles
/client/verb/toggle_examine_mode()
set name = "Toggle Examine Mode"
@@ -109,7 +109,7 @@
/obj/item/clothing/under/hyperfiber/bluespace/mob_can_unequip(mob/M, slot, disable_warning = 0)
. = ..()
if(. && ishuman(M) && original_size)
if(. && ishuman(M) && original_size && !disable_warning)
var/mob/living/carbon/human/H = M
H.resize(original_size, ignore_prefs = TRUE)
original_size = null
@@ -129,7 +129,7 @@
/obj/item/clothing/gloves/bluespace/mob_can_equip(mob/M, gloves, disable_warning = 0)
. = ..()
if(. && ishuman(M))
if(. && ishuman(M) && !disable_warning)
var/mob/living/carbon/human/H = M
if(!H.resizable)
return
@@ -145,7 +145,7 @@
/obj/item/clothing/gloves/bluespace/mob_can_unequip(mob/M, gloves, disable_warning = 0)
. = ..()
if(. && ishuman(M) && original_size)
if(. && ishuman(M) && original_size && !disable_warning)
var/mob/living/carbon/human/H = M
if(!H.resizable)
return
+10
View File
@@ -191,10 +191,20 @@
if(message)
message = encode_html_emphasis(message)
var/ourfreq = null
if(isliving(src))
var/mob/living/L = src
if(L.voice_freq > 0 )
ourfreq = L.voice_freq
// Hearing gasp and such every five seconds is not good emotes were not global for a reason.
// Maybe some people are okay with that.
var/turf/T = get_turf(src)
if(!T) return
playsound(T, pick(emote_sound), 25, TRUE, falloff = 1 , is_global = TRUE, frequency = ourfreq, ignore_walls = FALSE, preference = /datum/client_preference/emote_sounds)
var/list/in_range = get_mobs_and_objs_in_view_fast(T,range,2,remote_ghosts = client ? TRUE : FALSE)
var/list/m_viewers = in_range["mobs"]
var/list/o_viewers = in_range["objs"]
+4 -4
View File
@@ -33,9 +33,10 @@
to_chat(usr, "OOC notes updated.")
log_admin("[key_name(usr)] updated their OOC notes mid-round.")
<<<<<<< HEAD
=======
/mob/living/verb/set_voice_freq()
set name = "Set Voice Frequency"
set desc = "Sets your voice frequency to be higher or lower pitched!"
set category = "OOC"
var/list/preset_voice_freqs = list("high" = MAX_VOICE_FREQ, "middle-high" = 56250, "middle" = 425000, "middle-low"= 28750, "low" = MIN_VOICE_FREQ, "custom" = 1, "random" = 0)
var/choice = tgui_input_list(src, "What would you like to set your voice frequency to?", "Voice Frequency", preset_voice_freqs)
if(!choice)
@@ -104,4 +105,3 @@
voice_sounds_list = goon_speak_roach_sound
if("goon speak skelly")
voice_sounds_list = goon_speak_skelly_sound
>>>>>>> dd7585a45d... Merge pull request #13336 from Very-Soft/saysound
+3 -6
View File
@@ -13,23 +13,22 @@
to_chat(src,"<span class='notice'>Mob AI disabled while you are controlling the mob.</span>")
AddComponent(/datum/component/character_setup)
// Vore stuff
verbs |= /mob/living/proc/escapeOOC
verbs |= /mob/living/proc/lick
verbs |= /mob/living/proc/smell
verbs |= /mob/living/proc/switch_scaling
if(!no_vore)
verbs |= /mob/living/proc/vorebelly_printout
if(!vorePanel)
AddComponent(/datum/component/vore_panel)
<<<<<<< HEAD
verbs += /mob/living/proc/vore_transfer_reagents //CHOMP If mob doesnt have bellies it cant use this verb for anything
verbs += /mob/living/proc/vore_check_reagents //CHOMP If mob doesnt have bellies it cant use this verb for anything
verbs += /mob/living/proc/vore_bellyrub //CHOMP If mob doesnt have bellies it probably won't be needing this anyway
=======
//VOREStation Add Start
if(!voice_sounds_list.len || !voice_sounds_list)
if(client.prefs.voice_sound)
@@ -66,6 +65,4 @@
else
voice_sounds_list = talk_sound
//VOREStation Add End
>>>>>>> dd7585a45d... Merge pull request #13336 from Very-Soft/saysound
return .
+9 -3
View File
@@ -259,12 +259,9 @@ var/list/channel_to_radio_key = new
//Default range and italics, may be overridden past here
var/message_range = world.view
var/italics = 0
<<<<<<< HEAD
=======
var/do_sound = TRUE
if(!voice_sounds_list || !voice_sounds_list.len)
do_sound = FALSE
>>>>>>> dd7585a45d... Merge pull request #13336 from Very-Soft/saysound
//Speaking into radios
if(used_radios.len)
@@ -308,6 +305,7 @@ var/list/channel_to_radio_key = new
for(var/datum/multilingual_say_piece/S in message_pieces)
if((S.speaking.flags & NONVERBAL) || (S.speaking.flags & INAUDIBLE))
custom_emote(1, "[pick(S.speaking.signlang_verb)].")
do_sound = FALSE
//These will contain the main receivers of the message
var/list/listening = list()
@@ -404,12 +402,20 @@ var/list/channel_to_radio_key = new
C.images -= I
qdel(I)
var/ourfreq = null
if(voice_freq > 0 )
ourfreq = voice_freq
//Log the message to file
if(message_mode)
message = "([message_mode == "headset" ? "Common" : capitalize(message_mode)]) [message]" //Adds radio keys used if available
if(whispering)
if(do_sound && message)
playsound(T, pick(voice_sounds_list), 25, TRUE, extrarange = -6, falloff = 1 , is_global = TRUE, frequency = ourfreq, ignore_walls = FALSE, preference = /datum/client_preference/whisper_sounds)
log_whisper(message, src)
else
if(do_sound && message)
playsound(T, pick(voice_sounds_list), 75, TRUE, falloff = 1 , is_global = TRUE, frequency = ourfreq, ignore_walls = FALSE, preference = /datum/client_preference/say_sounds)
log_say(message, src)
return 1
@@ -145,6 +145,7 @@
// Vorestation Edit: Meta Info for pAI
if (client.prefs)
ooc_notes = client.prefs.metadata
src << sound('sound/effects/pai_login.ogg', volume = 75) //VOREStation Add
// this function shows the information about being silenced as a pAI in the Status panel
/mob/living/silicon/pai/proc/show_silenced()
+34
View File
@@ -67,6 +67,8 @@
else
spawn(0)
M.show_message(message, 2)
if(M.is_preference_enabled(/datum/client_preference/subtle_sounds))
M << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
for(var/obj/O as anything in vis_objs)
spawn(0)
@@ -145,10 +147,14 @@
else
pb = db.pred_body
to_chat(pb, "<span class='changeling'>The captive mind of \the [M] thinks, \"[message]\"</span>") //To our pred if dominated brain
if(pb.is_preference_enabled(/datum/client_preference/subtle_sounds))
pb << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
f = TRUE
else if(M.absorbed && isbelly(M.loc))
pb = M.loc.loc
to_chat(pb, "<span class='changeling'>\The [M] thinks, \"[message]\"</span>") //To our pred if absorbed
if(pb.is_preference_enabled(/datum/client_preference/subtle_sounds))
pb << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
f = TRUE
if(pb) //We are prey, let's do the prey thing.
@@ -157,11 +163,15 @@
if(istype(I, /mob/living/dominated_brain) && I != M)
var/mob/living/dominated_brain/db = I
to_chat(db, "<span class='changeling'>The captive mind of \the [M] thinks, \"[message]\"</span>") //To any dominated brains in the pred
if(db.is_preference_enabled(/datum/client_preference/subtle_sounds))
db << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
f = TRUE
for(var/B in pb.vore_organs)
for(var/mob/living/L in B)
if(L.absorbed && L != M && L.ckey)
to_chat(L, "<span class='changeling'>\The [M] thinks, \"[message]\"</span>") //To any absorbed people in the pred
if(L.is_preference_enabled(/datum/client_preference/subtle_sounds))
L << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
f = TRUE
//Let's also check and see if there's anyone inside of us to send the message to.
@@ -169,18 +179,26 @@
if(istype(I, /mob/living/dominated_brain))
var/mob/living/dominated_brain/db = I
to_chat(db, "<span class='changeling'><b>\The [M] thinks, \"[message]\"</b></span>") //To any dominated brains inside us
if(db.is_preference_enabled(/datum/client_preference/subtle_sounds))
db << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
f = TRUE
for(var/B in M.vore_organs)
for(var/mob/living/L in B)
if(L.absorbed)
to_chat(L, "<span class='changeling'><b>\The [M] thinks, \"[message]\"</b></span>") //To any absorbed people inside us
if(L.is_preference_enabled(/datum/client_preference/subtle_sounds))
L << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
f = TRUE
if(f) //We found someone to send the message to
if(pb)
to_chat(M, "<span class='changeling'>You think \"[message]\"</span>") //To us if we are the prey
if(M.is_preference_enabled(/datum/client_preference/subtle_sounds))
M << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
else
to_chat(M, "<span class='changeling'><b>You think \"[message]\"</b></span>") //To us if we are the pred
if(M.is_preference_enabled(/datum/client_preference/subtle_sounds))
M << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
for (var/mob/G in player_list)
if (istype(G, /mob/new_player))
continue
@@ -225,11 +243,15 @@
else
pb = db.pred_body
to_chat(pb, "<span class='changeling'>\The [M] [message]</span>") //To our pred if dominated brain
if(pb.is_preference_enabled(/datum/client_preference/subtle_sounds))
pb << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
f = TRUE
else if(M.absorbed && isbelly(M.loc))
pb = M.loc.loc
to_chat(pb, "<span class='changeling'>\The [M] [message]</span>") //To our pred if absorbed
if(pb.is_preference_enabled(/datum/client_preference/subtle_sounds))
pb << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
f = TRUE
if(pb) //We are prey, let's do the prey thing.
@@ -238,11 +260,15 @@
if(istype(I, /mob/living/dominated_brain) && I != M)
var/mob/living/dominated_brain/db = I
to_chat(db, "<span class='changeling'>\The [M] [message]</span>") //To any dominated brains in the pred
if(db.is_preference_enabled(/datum/client_preference/subtle_sounds))
db << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
f = TRUE
for(var/B in pb.vore_organs)
for(var/mob/living/L in B)
if(L.absorbed && L != M && L.ckey)
to_chat(L, "<span class='changeling'>\The [M] [message]</span>") //To any absorbed people in the pred
if(L.is_preference_enabled(/datum/client_preference/subtle_sounds))
L << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
f = TRUE
//Let's also check and see if there's anyone inside of us to send the message to.
@@ -250,18 +276,26 @@
if(istype(I, /mob/living/dominated_brain))
var/mob/living/dominated_brain/db = I
to_chat(db, "<span class='changeling'><b>\The [M] [message]</b></span>") //To any dominated brains inside us
if(db.is_preference_enabled(/datum/client_preference/subtle_sounds))
db << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
f = TRUE
for(var/B in M.vore_organs)
for(var/mob/living/L in B)
if(L.absorbed)
to_chat(L, "<span class='changeling'><b>\The [M] [message]</b></span>") //To any absorbed people inside us
if(L.is_preference_enabled(/datum/client_preference/subtle_sounds))
L << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
f = TRUE
if(f) //We found someone to send the message to
if(pb)
to_chat(M, "<span class='changeling'>\The [M] [message]</span>") //To us if we are the prey
if(M.is_preference_enabled(/datum/client_preference/subtle_sounds))
M << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
else
to_chat(M, "<span class='changeling'><b>\The [M] [message]</b></span>") //To us if we are the pred
if(M.is_preference_enabled(/datum/client_preference/subtle_sounds))
M << sound('sound/talksounds/subtle_sound.ogg', volume = 50)
for (var/mob/G in player_list)
if (istype(G, /mob/new_player))
continue
-3
View File
@@ -30,11 +30,8 @@
var/absorbing_prey = 0 // Determines if the person is using the succubus drain or not. See station_special_abilities_vr.
var/drain_finalized = 0 // Determines if the succubus drain will be KO'd/absorbed. Can be toggled on at any time.
var/fuzzy = 0 // Preference toggle for sharp/fuzzy icon.
<<<<<<< HEAD
=======
var/voice_freq = 0 // Preference for character voice frequency
var/list/voice_sounds_list = list() // The sound list containing our voice sounds!
>>>>>>> dd7585a45d... Merge pull request #13336 from Very-Soft/saysound
var/permit_healbelly = TRUE
var/stumble_vore = TRUE //Enabled by default since you have to enable drop pred/prey to do this anyway
var/slip_vore = TRUE //Enabled by default since you have to enable drop pred/prey to do this anyway
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.