mirror of
https://github.com/vgstation-coders/vgstation13.git
synced 2025-12-10 10:21:11 +00:00
@@ -471,6 +471,7 @@
|
||||
#define TRINITRINE "trinitrine"
|
||||
#define MIDAZOLINE "midazoline"
|
||||
#define LOCUTOGEN "locutogen"
|
||||
#define BUMCIVILIAN "bumcivilian"
|
||||
|
||||
//Plant-specific reagents
|
||||
#define TANNIC_ACID "tannic_acid"
|
||||
|
||||
@@ -83,6 +83,10 @@ var/list/trayhit_sound = list('sound/items/trayhit1.ogg', 'sound/items/trayhit2.
|
||||
|
||||
var/Dist = world.view + extrarange
|
||||
|
||||
//Area muting
|
||||
if(turf_source.mute_time > world.time)
|
||||
return
|
||||
|
||||
// Looping through the player list has the added bonus of working for mobs inside containers
|
||||
for (var/mob/player in player_list)
|
||||
if(!player || !player.client)
|
||||
|
||||
@@ -73,6 +73,8 @@
|
||||
|
||||
var/last_beam_damage = 0
|
||||
|
||||
var/mute_time = 0
|
||||
|
||||
/turf/examine(mob/user)
|
||||
..()
|
||||
if(bullet_marks)
|
||||
|
||||
@@ -122,6 +122,11 @@ var/list/headset_modes = list(
|
||||
if(!message)
|
||||
return
|
||||
|
||||
//Muting
|
||||
var/turf/T = get_turf(src)
|
||||
if(T.mute_time > world.time)
|
||||
return
|
||||
|
||||
var/message_mode = get_message_mode(message)
|
||||
if(silent)
|
||||
to_chat(src, "<span class='warning'>You can't speak while silenced.</span>")
|
||||
@@ -239,7 +244,6 @@ var/list/headset_modes = list(
|
||||
else
|
||||
send_speech(speech, message_range, bubble_type)
|
||||
radio(speech, message_mode) //Sends the radio signal
|
||||
var/turf/T = get_turf(src)
|
||||
log_say("[name]/[key] [T?"(@[T.x],[T.y],[T.z])":"(@[x],[y],[z])"] [speech.language ? "As [speech.language.name] ":""]: [message_mode ? "([message_mode]):":""] [message]")
|
||||
qdel(speech)
|
||||
return 1
|
||||
|
||||
@@ -9796,3 +9796,12 @@ var/global/list/tonio_doesnt_remove=list("tonio", "blood")
|
||||
var/datum/organ/internal/eyes/E= H.internal_organs_by_name["eyes"] //damages the eyes
|
||||
if(E && !istype(E, /datum/organ/internal/eyes/umbra) && !E.robotic) //doesn't harm umbra or robotic eyes
|
||||
E.damage += 0.5
|
||||
|
||||
/datum/reagent/bumcivilian
|
||||
name = "Bumcivilian"
|
||||
id = BUMCIVILIAN
|
||||
description = "The most basic form of iron, also known as 'brown iron'. It has the unusual property of absorbing sound particles when it is produced by reactions with sulfuric acid."
|
||||
color = "#786228" //120, 98, 40
|
||||
specheatcap = 0.45
|
||||
density = 7.874
|
||||
var/mute_duration = 300 //30 seconds
|
||||
|
||||
@@ -3959,6 +3959,24 @@
|
||||
required_reagents = list(PICCOLYN = 1, INACUSIATE = 1, SUGARS = 1)
|
||||
result_amount = 3
|
||||
|
||||
/datum/chemical_reaction/bumcivilian
|
||||
name = "Bumcivilian"
|
||||
id = BUMCIVILIAN
|
||||
result = BUMCIVILIAN
|
||||
required_reagents = list(IRON = 1, SACIDS = 1) //..5.05 Mg
|
||||
result_amount = 1
|
||||
|
||||
/datum/chemical_reaction/bumcivilian/required_condition_check(datum/reagents/holder)
|
||||
for(var/obj/item/device/deskbell/B in view(3,get_turf(holder.my_atom)))
|
||||
if(world.time - B.last_ring_time <= 30)
|
||||
return 1
|
||||
|
||||
/datum/chemical_reaction/bumcivilian/on_reaction(var/datum/reagents/holder, var/created_volume)
|
||||
..()
|
||||
var/datum/reagent/bumcivilian/B = locate(/datum/reagent/bumcivilian) in holder.reagent_list
|
||||
for(var/turf/T in view(get_turf(holder.my_atom)))
|
||||
T.mute_time = world.time + B.mute_duration
|
||||
|
||||
/datum/chemical_reaction/random
|
||||
name = "Random chemical"
|
||||
id = "random"
|
||||
|
||||
Reference in New Issue
Block a user