mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-09 16:14:13 +00:00
Skree2 (#20949)
* Skreeee Fixed * Boop * Oh fucking finally. Skree is now ready. * else spacing
This commit is contained in:
@@ -22,6 +22,8 @@
|
||||
var/list/mob_type_allowed_typelist = list(/mob) //Types that are allowed to use that emote
|
||||
var/list/mob_type_blacklist_typelist //Types that are NOT allowed to use that emote
|
||||
var/list/mob_type_ignore_stat_typelist
|
||||
var/voxemote = TRUE //Flags if a vox CAN use an emote. Defaults to can.
|
||||
var/voxrestrictedemote = FALSE //Flags if Non-Vox CANNOT use an emote. Defaults to CAN.
|
||||
var/stat_allowed = CONSCIOUS
|
||||
var/static/list/emote_list = list()
|
||||
|
||||
@@ -132,6 +134,14 @@
|
||||
return FALSE
|
||||
if(is_type_in_list(user, mob_type_blacklist_typelist))
|
||||
return FALSE
|
||||
|
||||
if((isvox(user) || isskelevox(user)) && voxrestrictedemote == TRUE)
|
||||
return TRUE
|
||||
if((!isvox(user) || !isskelevox(user)) && voxrestrictedemote == TRUE)
|
||||
return FALSE
|
||||
if((isvox(user) || isskelevox(user)) && voxemote == FALSE)
|
||||
return FALSE
|
||||
|
||||
if(status_check && !(is_type_in_list(user, mob_type_ignore_stat_typelist)))
|
||||
if(user.stat > stat_allowed)
|
||||
to_chat(user, "<span class='warning'>You cannot [key] while unconscious.</span>")
|
||||
@@ -162,4 +172,9 @@
|
||||
emote("coughs", message = TRUE, ignore_status = TRUE)
|
||||
|
||||
/mob/proc/audible_scream()
|
||||
emote("screams", message = TRUE, ignore_status = TRUE) // So it's forced
|
||||
if(isvox(src) || isskelevox(src))
|
||||
emote("shrieks", message = TRUE, ignore_status = TRUE)
|
||||
return
|
||||
|
||||
else
|
||||
emote("screams", message = TRUE, ignore_status = TRUE) // So it's forced
|
||||
|
||||
@@ -497,7 +497,7 @@
|
||||
to_chat(src, "<span class='danger'>You continue to burn!</span>")
|
||||
fire_stacks += 5
|
||||
IgniteMob()
|
||||
emote("scream",,, 1)
|
||||
audible_scream()
|
||||
else
|
||||
switch(health)
|
||||
if((-INFINITY) to 60)
|
||||
|
||||
@@ -689,7 +689,7 @@ var/global/num_vending_terminals = 1
|
||||
src.TurnOff(600) //A whole minute
|
||||
/*if(prob(1))
|
||||
to_chat(usr, "<span class='warning'>You fall down and break your leg!</span>")
|
||||
user.emote("scream",,, 1)
|
||||
user.audible_scream()
|
||||
shake_camera(user, 2, 1)*/
|
||||
|
||||
/obj/machinery/vending/kick_act(mob/living/carbon/human/user)
|
||||
|
||||
@@ -456,7 +456,7 @@
|
||||
return
|
||||
if (21 to 40)
|
||||
to_chat(H, "<span class='sinister'>There's [pick("somebody","a monster","a little girl","a zombie","a ghost","a catbeast","a demon")] standing behind you!</span>")
|
||||
H.emote("scream")
|
||||
H.audible_scream()
|
||||
H.dir = turn(H.dir, 180)
|
||||
return
|
||||
if (41 to 50)
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
return
|
||||
if(21 to 40)
|
||||
to_chat(H, "<span class='sinister'>There's [pick("somebody","a monster","a little girl","a zombie","a ghost","a catbeast","a demon")] standing behind you!</span>")
|
||||
H.emote("scream")
|
||||
H.audible_scream()
|
||||
H.dir = turn(H.dir, 180)
|
||||
return
|
||||
if(41 to 50)
|
||||
|
||||
@@ -14,6 +14,7 @@ var/list/mommicomment_sound = list('sound/voice/mommi_comment1.ogg', 'sound/voic
|
||||
var/list/polaroid_sound = list('sound/items/polaroid1.ogg', 'sound/items/polaroid2.ogg')
|
||||
var/list/male_scream_sound = list('sound/misc/malescream1.ogg', 'sound/misc/malescream2.ogg', 'sound/misc/malescream3.ogg', 'sound/misc/malescream4.ogg', 'sound/misc/malescream5.ogg')
|
||||
var/list/female_scream_sound = list('sound/misc/femalescream1.ogg', 'sound/misc/femalescream2.ogg', 'sound/misc/femalescream3.ogg', 'sound/misc/femalescream4.ogg', 'sound/misc/femalescream5.ogg')
|
||||
var/list/vox_shriek_sound = list('sound/misc/shriek1.ogg')
|
||||
var/list/male_cough_sound = list('sound/misc/cough/cough_m1.ogg', 'sound/misc/cough/cough_m2.ogg', 'sound/misc/cough/cough_m3.ogg', 'sound/misc/cough/cough_m4.ogg')
|
||||
var/list/female_cough_sound = list('sound/misc/cough/cough_f1.ogg', 'sound/misc/cough/cough_f2.ogg', 'sound/misc/cough/cough_f3.ogg', 'sound/misc/cough/cough_f4.ogg')
|
||||
var/list/lightning_sound = list('sound/effects/lightning/chainlightning1.ogg', 'sound/effects/lightning/chainlightning2.ogg', 'sound/effects/lightning/chainlightning3.ogg', 'sound/effects/lightning/chainlightning4.ogg', 'sound/effects/lightning/chainlightning5.ogg', 'sound/effects/lightning/chainlightning6.ogg', 'sound/effects/lightning/chainlightning7.ogg')
|
||||
|
||||
@@ -175,6 +175,7 @@
|
||||
"Taser" = 'sound/weapons/Taser.ogg',
|
||||
"Male scream" = "malescream",
|
||||
"Female scream" = "femalescream",
|
||||
"Vox shriek" = 'sound/misc/shriek1.ogg',
|
||||
"Male cough" = "malecough",
|
||||
"Female cough" = "femalecough",
|
||||
"Sad trombone" = 'sound/misc/sadtrombone.ogg',
|
||||
|
||||
@@ -262,7 +262,7 @@
|
||||
visible_message("<span class='danger'>\The [H] can't seem to let go from \the [M]'s shocking handshake!</span>")
|
||||
add_logs(H, M, "stungloved", admin = TRUE)
|
||||
|
||||
playsound(H,(H.gender == MALE) ? pick(male_scream_sound) : pick(female_scream_sound),50,1)
|
||||
H.audible_scream()
|
||||
H.apply_damage(damage = shock_damage, damagetype = BURN, def_zone = (M.zone_sel.selecting == "r_hand") ? "r_hand" : "l_hand" )
|
||||
|
||||
spark(H, 3, FALSE)
|
||||
|
||||
@@ -231,6 +231,7 @@
|
||||
/datum/emote/living/carbon/sound
|
||||
var/list/male_sounds = null
|
||||
var/list/female_sounds = null
|
||||
var/list/birb_sounds = null
|
||||
var/sound_message = null
|
||||
|
||||
/datum/emote/living/carbon/sound/scream
|
||||
@@ -243,6 +244,19 @@
|
||||
male_sounds = list('sound/misc/malescream1.ogg', 'sound/misc/malescream2.ogg', 'sound/misc/malescream3.ogg', 'sound/misc/malescream4.ogg', 'sound/misc/malescream5.ogg', 'sound/misc/wilhelm.ogg', 'sound/misc/goofy.ogg')
|
||||
female_sounds = list('sound/misc/femalescream1.ogg', 'sound/misc/femalescream2.ogg', 'sound/misc/femalescream3.ogg', 'sound/misc/femalescream4.ogg', 'sound/misc/femalescream5.ogg')
|
||||
sound_message = "screams in agony!"
|
||||
voxemote = FALSE
|
||||
|
||||
/datum/emote/living/carbon/sound/shriek
|
||||
key = "shriek"
|
||||
key_third_person = "shrieks"
|
||||
message = "shrieks!"
|
||||
message_mime = "acts out a shriek!"
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
stat_allowed = UNCONSCIOUS
|
||||
birb_sounds = list('sound/misc/shriek1.ogg')
|
||||
sound_message = "shrieks in agony!"
|
||||
voxemote = TRUE
|
||||
voxrestrictedemote = TRUE
|
||||
|
||||
/datum/emote/living/carbon/sound/cough
|
||||
key = "cough"
|
||||
@@ -265,13 +279,18 @@
|
||||
if(sound_message)
|
||||
message = sound_message
|
||||
var/sound
|
||||
switch(H.gender)
|
||||
if (MALE)
|
||||
sound = pick(male_sounds)//AUUUUHHHHHHHHOOOHOOHOOHOOOOIIIIEEEEEE
|
||||
if (FEMALE)
|
||||
sound = pick(female_sounds)
|
||||
if (isvox(H) || isskelevox(H))
|
||||
sound = pick(birb_sounds)
|
||||
|
||||
else
|
||||
switch(H.gender)
|
||||
if (MALE)
|
||||
sound = pick(male_sounds)//AUUUUHHHHHHHHOOOHOOHOOHOOOOIIIIEEEEEE
|
||||
if (FEMALE)
|
||||
sound = pick(female_sounds)
|
||||
playsound(user, sound, 50, 0)
|
||||
H.last_emote_sound = world.time
|
||||
|
||||
else
|
||||
message = "makes a very loud noise."
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@
|
||||
if(0) //damage
|
||||
var/dmg = rand(10,20)
|
||||
to_chat(L, "<span class='userdanger'>Pain surges through your body and horrible visions flash through your mind!</span>")
|
||||
L.emote("scream")
|
||||
L.audible_scream()
|
||||
L.adjustBruteLoss(dmg)
|
||||
if(1) //deaf
|
||||
var/mob/living/carbon/human/H = L
|
||||
|
||||
@@ -482,6 +482,7 @@ shelter
|
||||
shiver
|
||||
shock
|
||||
shop
|
||||
shriek
|
||||
shrug
|
||||
sigh
|
||||
sign
|
||||
|
||||
BIN
sound/misc/shriek1.ogg
Normal file
BIN
sound/misc/shriek1.ogg
Normal file
Binary file not shown.
Reference in New Issue
Block a user