New traumas and some other things.
This commit is contained in:
@@ -49,6 +49,12 @@
|
||||
A.malf_picker.remove_malf_verbs(A)
|
||||
qdel(A.malf_picker)
|
||||
|
||||
/datum/antagonist/traitor/proc/handle_hearing(datum/source, list/hearing_args)
|
||||
var/message = hearing_args[HEARING_MESSAGE]
|
||||
message = GLOB.syndicate_code_phrase_regex.Replace(message, "<span class='blue'>$1</span>")
|
||||
message = GLOB.syndicate_code_response_regex.Replace(message, "<span class='red'>$1</span>")
|
||||
hearing_args[HEARING_MESSAGE] = message
|
||||
|
||||
SSticker.mode.traitors -= owner
|
||||
if(!silent && owner.current)
|
||||
to_chat(owner.current,"<span class='userdanger'> You are no longer the [special_role]! </span>")
|
||||
|
||||
@@ -111,3 +111,6 @@
|
||||
/datum/client_colour/monochrome
|
||||
colour = list(rgb(77,77,77), rgb(150,150,150), rgb(28,28,28), rgb(0,0,0))
|
||||
priority = INFINITY //we can't see colors anyway!
|
||||
|
||||
/datum/client_colour/monochrome/trance
|
||||
priority = 1
|
||||
@@ -17,18 +17,4 @@
|
||||
if(T)
|
||||
. = T.could_speak_in_language(dt)
|
||||
else
|
||||
. = initial(dt.flags) & TONGUELESS_SPEECH
|
||||
|
||||
/mob/living/carbon/hear_intercept(message, atom/movable/speaker, datum/language/message_language, raw_message, radio_freq, list/spans, message_mode)
|
||||
. = ..()
|
||||
if(!client)
|
||||
return
|
||||
for(var/T in get_traumas())
|
||||
var/datum/brain_trauma/trauma = T
|
||||
message = trauma.on_hear(message, speaker, message_language, raw_message, radio_freq)
|
||||
|
||||
if (src.mind.has_antag_datum(/datum/antagonist/traitor))
|
||||
message = GLOB.syndicate_code_phrase_regex.Replace(message, "<span class='blue'>$1</span>")
|
||||
message = GLOB.syndicate_code_response_regex.Replace(message, "<span class='red'>$1</span>")
|
||||
|
||||
return message
|
||||
. = initial(dt.flags) & TONGUELESS_SPEECH
|
||||
@@ -58,9 +58,9 @@
|
||||
message = "coughs!"
|
||||
emote_type = EMOTE_AUDIBLE
|
||||
|
||||
/datum/emote/living/cough/can_run_emote(mob/user, status_check = TRUE)
|
||||
/datum/emote/living/cough/can_run_emote(mob/user, status_check = TRUE , intentional)
|
||||
. = ..()
|
||||
if(user.reagents && (user.reagents.get_reagent("menthol") || user.reagents.get_reagent("peppermint_patty")))
|
||||
if(HAS_TRAIT(user, TRAIT_SOOTHED_THROAT))
|
||||
return FALSE
|
||||
|
||||
/datum/emote/living/dance
|
||||
|
||||
@@ -1741,6 +1741,7 @@ All effects don't start immediately, but rather get worse over time; the rate is
|
||||
glass_desc = "A boozy minty hot cocoa that warms your belly on a cold night."
|
||||
|
||||
/datum/reagent/consumable/ethanol/peppermint_patty/on_mob_life(mob/living/carbon/M)
|
||||
M.apply_status_effect(/datum/status_effect/throat_soothed)
|
||||
M.adjust_bodytemperature(5 * TEMPERATURE_DAMAGE_COEFFICIENT, 0, BODYTEMP_NORMAL)
|
||||
..()
|
||||
|
||||
|
||||
@@ -785,6 +785,10 @@
|
||||
glass_name = "glass of menthol"
|
||||
glass_desc = "Tastes naturally minty, and imparts a very mild numbing sensation."
|
||||
|
||||
/datum/reagent/consumable/menthol/on_mob_life(mob/living/L)
|
||||
L.apply_status_effect(/datum/status_effect/throat_soothed)
|
||||
..()
|
||||
|
||||
/datum/reagent/consumable/grenadine
|
||||
name = "Grenadine"
|
||||
id = "grenadine"
|
||||
|
||||
@@ -65,6 +65,16 @@
|
||||
category = list("Bluespace Designs")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_CARGO
|
||||
|
||||
/datum/design/desynchronizer
|
||||
name = "Desynchronizer"
|
||||
desc = "A device that can desynchronize the user from spacetime."
|
||||
id = "desynchronizer"
|
||||
build_type = PROTOLATHE
|
||||
materials = list(MAT_METAL = 1000, MAT_GLASS = 500, MAT_SILVER = 1500, MAT_BLUESPACE = 1000)
|
||||
build_path = /obj/item/desynchronizer
|
||||
category = list("Bluespace Designs")
|
||||
departmental_flags = DEPARTMENTAL_FLAG_SCIENCE
|
||||
|
||||
/datum/design/miningsatchel_holding
|
||||
name = "Mining Satchel of Holding"
|
||||
desc = "A mining satchel that can hold an infinite amount of ores."
|
||||
|
||||
@@ -208,9 +208,6 @@ datum/nanite_program/proc/on_mob_remove()
|
||||
/datum/nanite_program/proc/on_death()
|
||||
return
|
||||
|
||||
/datum/nanite_program/proc/on_hear(message, atom/movable/speaker, message_language, raw_message, radio_freq, list/spans, message_mode)
|
||||
return
|
||||
|
||||
/datum/nanite_program/proc/software_error(type)
|
||||
if(!type)
|
||||
type = rand(1,5)
|
||||
|
||||
@@ -378,15 +378,12 @@
|
||||
target.sentence = sentence
|
||||
target.inclusive = inclusive
|
||||
|
||||
/datum/nanite_program/sensor/voice/on_hear(message, atom/movable/speaker, message_language, raw_message, radio_freq, list/spans, message_mode)
|
||||
/datum/nanite_program/sensor/voice/proc/on_hear(datum/source, list/hearing_args)
|
||||
if(!sentence)
|
||||
return
|
||||
//To make it not case sensitive
|
||||
var/low_message = lowertext(raw_message)
|
||||
var/low_sentence = lowertext(sentence)
|
||||
if(inclusive)
|
||||
if(findtext(low_message, low_sentence))
|
||||
if(findtextEx(hearing_args[HEARING_RAW_MESSAGE], sentence))
|
||||
send_code()
|
||||
else
|
||||
if(low_message == low_sentence)
|
||||
if(hearing_args[HEARING_RAW_MESSAGE] == sentence)
|
||||
send_code()
|
||||
@@ -294,6 +294,15 @@
|
||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
||||
export_price = 5000
|
||||
|
||||
/datum/techweb_node/unregulated_bluespace
|
||||
id = "unregulated_bluespace"
|
||||
display_name = "Unregulated Bluespace Research"
|
||||
description = "Bluespace technology using unstable or unbalanced procedures, prone to damaging the fabric of bluespace. Outlawed by galactic conventions."
|
||||
prereq_ids = list("bluespace_travel", "syndicate_basic")
|
||||
design_ids = list("desynchronizer")
|
||||
research_costs = list(TECHWEB_POINT_TYPE_GENERIC = 2500)
|
||||
export_price = 2500
|
||||
|
||||
/////////////////////////plasma tech/////////////////////////
|
||||
/datum/techweb_node/basic_plasma
|
||||
id = "basic_plasma"
|
||||
|
||||
Reference in New Issue
Block a user