Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FIX: Emotes translation and lizard emotes+sounds #1815

Merged
merged 16 commits into from
Jan 25, 2024
15 changes: 12 additions & 3 deletions maps/sierra/loadout/loadout_accessories.dm
SuhEugene marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,7 @@
/datum/gear/accessory/pilot_pin
display_name = "pilot's qualification pin"
path = /obj/item/clothing/accessory/solgov/specialty/pilot
// [INF]
// allowed_roles = list(/datum/job/captain, /datum/job/hop, /datum/job/adjutant, /datum/job/exploration_leader, /datum/job/explorer_pilot)
allowed_skills = list(SKILL_PILOT = SKILL_EXPERIENCED)
// [INF/] by hacso

/datum/gear/accessory/armband_security
allowed_roles = SECURITY_ROLES
Expand Down Expand Up @@ -59,6 +56,18 @@
custom_setup_proc = /obj/item/passport/proc/set_info
cost = 0

/datum/gear/workvisa
display_name = "work visa"
description = "A work visa issued by the Sol Central Government for the purpose of work."
path = /obj/item/paper/workvisa
cost = 0

/datum/gear/travelvisa
display_name = "travel visa"
description = "A travel visa issued by the Sol Central Government for the purpose of recreation."
path = /obj/item/paper/travelvisa
cost = 0

/datum/gear/utility/holster_belt
display_name = "holser belt"
path = /obj/item/storage/belt/holster/general
Expand Down
7 changes: 7 additions & 0 deletions maps/sierra/loadout/loadout_xeno.dm
Original file line number Diff line number Diff line change
Expand Up @@ -27,3 +27,10 @@

/datum/gear/suit/lab_xyn_machine
allowed_branches = list(/datum/mil_branch/contractor)

/datum/gear/gloves/nabber
display_name = "(GAS) Three-fingered insulated gloves"
path = /obj/item/clothing/gloves/nabber
sort_category = "Xenowear"
whitelisted = list(SPECIES_NABBER)
cost = 3
29 changes: 24 additions & 5 deletions mods/antagonists/code/mercenary.dm
Original file line number Diff line number Diff line change
Expand Up @@ -96,9 +96,12 @@ Used for quick dress-up. Also comes with several discount

/obj/structure/closet/crate/mercenary/bioterror/WillContain()
return list(
/obj/item/clothing/suit/armor/pcarrier/merc,
/obj/item/clothing/head/helmet/merc,
/obj/item/clothing/mask/gas/syndicate,
/obj/item/tank/oxygen_emergency_double,
/obj/item/reagent_containers/spray/chemsprayer/bioterror,
/obj/item/reagent_containers/glass/beaker/insulated/large/bioterror = 3,
/obj/item/grenade/chem_grenade/bioterror,
/obj/item/gun/projectile/pistol/optimus
)
Expand Down Expand Up @@ -226,13 +229,10 @@ Used for quick dress-up. Also comes with several discount
. = ..()
reagents.add_reagent(/datum/reagent/napalm, 120)

// Bioterror Chem sprayer

/obj/item/reagent_containers/spray/chemsprayer/bioterror
name = "bioterror chem sprayer"
desc = "This chem sprayer is filled with mix, that will melt, mutate and irradiate everything."
/obj/item/reagent_containers/glass/beaker/insulated/large/bioterror

/obj/item/reagent_containers/spray/chemsprayer/bioterror/Initialize()
/obj/item/reagent_containers/glass/beaker/insulated/large/bioterror/Initialize()
. = ..()
reagents.add_reagent(/datum/reagent/drugs/hextro, volume / 10)
reagents.add_reagent(/datum/reagent/drugs/mindbreaker, volume / 10)
Expand All @@ -245,6 +245,25 @@ Used for quick dress-up. Also comes with several discount
reagents.add_reagent(/datum/reagent/acid/polyacid, volume / 10)
reagents.add_reagent(/datum/reagent/radium, volume / 10)

// Bioterror Chem sprayer

/obj/item/reagent_containers/spray/chemsprayer/bioterror
name = "bioterror chem sprayer"
desc = "This chem sprayer is filled with mix, that will melt, mutate and irradiate everything."

/obj/item/reagent_containers/spray/chemsprayer/bioterror/Initialize()
. = ..()
reagents.add_reagent(/datum/reagent/drugs/hextro, volume / 60)
reagents.add_reagent(/datum/reagent/drugs/mindbreaker, volume / 60)
reagents.add_reagent(/datum/reagent/toxin/carpotoxin, volume / 60)
reagents.add_reagent(/datum/reagent/mutagen, volume / 60)
reagents.add_reagent(/datum/reagent/toxin/amatoxin, volume / 60)
reagents.add_reagent(/datum/reagent/toxin/phoron, volume / 60)
reagents.add_reagent(/datum/reagent/impedrezene, volume / 60)
reagents.add_reagent(/datum/reagent/toxin/potassium_chlorophoride, volume / 60)
reagents.add_reagent(/datum/reagent/acid/polyacid, volume / 60)
reagents.add_reagent(/datum/reagent/radium, volume / 60)

// Grenades

/obj/item/grenade/chem_grenade/bioterror
Expand Down
3 changes: 3 additions & 0 deletions mods/emote_panel/_emote_panel.dme
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@
#define MODPACK_EMOTE_PANEL

#include "_emote_panel.dm"
#include "code/audible.dm"
#include "code/emotes.dm"
#include "code/overrides.dm"
#include "code/unathi.dm"

#endif
139 changes: 139 additions & 0 deletions mods/emote_panel/code/audible.dm
Original file line number Diff line number Diff line change
@@ -0,0 +1,139 @@
#define SOUNDED_SPECIES list(SPECIES_HUMAN, SPECIES_VATGROWN, SPECIES_SPACER, SPECIES_TRITONIAN, SPECIES_GRAVWORLDER, SPECIES_MULE, SPECIES_UNATHI, SPECIES_YEOSA, SPECIES_TAJARA, SPECIES_SKRELL)

/singleton/emote/audible
// three-dimensional array
// first is the species, associated to a list of genders, associated to a list of the sound effects to use
var/list/sounded_species = null

/singleton/emote/audible/do_emote(atom/user, extra_params)
..()
if(emote_sound) do_sound(user)
LordNest marked this conversation as resolved.
Show resolved Hide resolved

/singleton/emote/audible/proc/do_sound(atom/user)
var/mob/living/carbon/human/H = user
if(H.stat) return // No dead or unconcious people screaming pls.
if(istype(H))
if(sounded_species)
if(H.species.name in sounded_species)
if(islist(emote_sound))
if(H.species.name == SPECIES_SKRELL)
if(H.head_hair_style == "Skrell Male Tentacles")
return playsound(user.loc, pick(emote_sound[MALE]), 50, 0)
else
return playsound(user.loc, pick(emote_sound[FEMALE]), 50, 0)
if(emote_sound[H.gender])
return playsound(user.loc, pick(emote_sound[H.gender]), 50, 0)
return playsound(user.loc, pick(emote_sound), 50, 0)

/singleton/emote/audible/gasp
emote_sound = list(
MALE = list(
'mods/emote_panel/sound/gasp_male1.ogg', 'mods/emote_panel/sound/gasp_male2.ogg',
'mods/emote_panel/sound/gasp_male3.ogg', 'mods/emote_panel/sound/gasp_male4.ogg',
'mods/emote_panel/sound/gasp_male5.ogg', 'mods/emote_panel/sound/gasp_male6.ogg',
'mods/emote_panel/sound/gasp_male7.ogg'),
FEMALE = list(
'mods/emote_panel/sound/gasp_female1.ogg', 'mods/emote_panel/sound/gasp_female2.ogg',
'mods/emote_panel/sound/gasp_female3.ogg', 'mods/emote_panel/sound/gasp_female4.ogg',
'mods/emote_panel/sound/gasp_female5.ogg', 'mods/emote_panel/sound/gasp_female6.ogg',
'mods/emote_panel/sound/gasp_female7.ogg'))
sounded_species = list(SPECIES_HUMAN, SPECIES_VATGROWN, SPECIES_SPACER, SPECIES_TRITONIAN, SPECIES_GRAVWORLDER,
SPECIES_MULE,
SPECIES_UNATHI, SPECIES_YEOSA, SPECIES_TAJARA, SPECIES_VOX, SPECIES_SKRELL)

/singleton/emote/audible/whistle
emote_sound = 'mods/emote_panel/sound/whistle.ogg'
sounded_species = list(SPECIES_HUMAN, SPECIES_VATGROWN, SPECIES_SPACER, SPECIES_TRITONIAN, SPECIES_GRAVWORLDER,
SPECIES_MULE,
SPECIES_UNATHI, SPECIES_YEOSA, SPECIES_TAJARA, SPECIES_VOX, SPECIES_IPC,
SPECIES_SKRELL)

/singleton/emote/audible/sneeze
emote_sound = list(
MALE = list('mods/emote_panel/sound/sneeze_male_1.ogg', 'mods/emote_panel/sound/sneeze_male_2.ogg'),
FEMALE = list('mods/emote_panel/sound/sneeze_female_1.ogg', 'mods/emote_panel/sound/sneeze_female_2.ogg'))
sounded_species = SOUNDED_SPECIES

/singleton/emote/audible/snore
emote_sound = list(
'mods/emote_panel/sound/snore_1.ogg', 'mods/emote_panel/sound/snore_2.ogg',
'mods/emote_panel/sound/snore_3.ogg', 'mods/emote_panel/sound/snore_4.ogg',
'mods/emote_panel/sound/snore_5.ogg', 'mods/emote_panel/sound/snore_6.ogg',
'mods/emote_panel/sound/snore_7.ogg')
sounded_species = list(SPECIES_HUMAN, SPECIES_VATGROWN, SPECIES_SPACER, SPECIES_TRITONIAN, SPECIES_GRAVWORLDER,
SPECIES_MULE,
SPECIES_UNATHI, SPECIES_YEOSA, SPECIES_TAJARA, SPECIES_VOX, SPECIES_SKRELL)

/singleton/emote/audible/yawn
emote_sound = list(
MALE = list('mods/emote_panel/sound/yawn_male_1.ogg', 'mods/emote_panel/sound/yawn_male_2.ogg'),
FEMALE = list('mods/emote_panel/sound/yawn_female_1.ogg', 'mods/emote_panel/sound/yawn_female_2.ogg',
'mods/emote_panel/sound/yawn_female_3.ogg'))
sounded_species = SOUNDED_SPECIES

/singleton/emote/audible/clap
emote_sound = 'mods/emote_panel/sound/clap.ogg'

/singleton/emote/audible/cough
emote_sound = list(
MALE = 'mods/emote_panel/sound/cough_male.ogg',
FEMALE = 'mods/emote_panel/sound/cough_female.ogg')
sounded_species = list(SPECIES_HUMAN, SPECIES_VATGROWN, SPECIES_SPACER, SPECIES_TRITONIAN, SPECIES_GRAVWORLDER,
SPECIES_MULE,
SPECIES_UNATHI, SPECIES_YEOSA, SPECIES_TAJARA, SPECIES_VOX, SPECIES_SKRELL)

/singleton/emote/audible/cry
emote_sound = list(
MALE = list('mods/emote_panel/sound/cry_male_1.ogg', 'mods/emote_panel/sound/cry_male_2.ogg'),
FEMALE = list('mods/emote_panel/sound/cry_female_1.ogg', 'mods/emote_panel/sound/cry_female_2.ogg',
'mods/emote_panel/sound/cry_female_3.ogg'))
sounded_species = SOUNDED_SPECIES

/singleton/emote/audible/sigh
emote_sound = list(
MALE = 'mods/emote_panel/sound/sigh_male.ogg',
FEMALE = 'mods/emote_panel/sound/sigh_female.ogg')
sounded_species = list(SPECIES_HUMAN, SPECIES_VATGROWN, SPECIES_SPACER, SPECIES_TRITONIAN, SPECIES_GRAVWORLDER,
SPECIES_MULE,
SPECIES_UNATHI, SPECIES_YEOSA, SPECIES_TAJARA, SPECIES_VOX, SPECIES_SKRELL)

/singleton/emote/audible/laugh
emote_sound = list(
MALE = list('mods/emote_panel/sound/laugh_male_1.ogg', 'mods/emote_panel/sound/laugh_male_2.ogg', 'mods/emote_panel/sound/laugh_male_3.ogg'),
FEMALE = list('mods/emote_panel/sound/laugh_female_1.ogg', 'mods/emote_panel/sound/laugh_female_2.ogg', 'mods/emote_panel/sound/laugh_female_3.ogg'))
sounded_species = SOUNDED_SPECIES

/singleton/emote/audible/giggle
emote_sound = list(
MALE = 'mods/emote_panel/sound/giggle_male_2.ogg',
FEMALE = 'mods/emote_panel/sound/giggle_female_3.ogg')
sounded_species = SOUNDED_SPECIES

/singleton/emote/audible/scream
emote_sound = list(
MALE = list('mods/emote_panel/sound/scream_male_1.ogg', 'mods/emote_panel/sound/scream_male_2.ogg',
'mods/emote_panel/sound/scream_male_3.ogg'),
FEMALE = list('mods/emote_panel/sound/scream_female_1.ogg', 'mods/emote_panel/sound/scream_female_2.ogg'))
sounded_species = SOUNDED_SPECIES

/singleton/emote/audible/scream/monkey
emote_sound = list(
'mods/emote_panel/sound/pain_monkey_1.ogg',
'mods/emote_panel/sound/pain_monkey_2.ogg',
'mods/emote_panel/sound/pain_monkey_3.ogg'
)
sounded_species = null

/singleton/emote/audible/cat_purr
key = "purr"
emote_message_3p = "USER мурчит."
emote_sound = 'mods/emote_panel/sound/cat_purr.ogg'

/singleton/emote/audible/cat_purr/long
key = "purrl"
emote_sound = 'mods/emote_panel/sound/cat_purr_long.ogg'

/singleton/emote/audible/finger_snap
key = "snap"
emote_message_3p = "USER щёлкает пальцами."
emote_sound = 'mods/emote_panel/sound/fingersnap.ogg'
Loading