Merge pull request #10349 from tigercat2000/fucking_snowflakes

Ear fixes
This commit is contained in:
variableundefined
2018-11-26 08:13:01 +08:00
committed by GitHub
8 changed files with 46 additions and 1043 deletions
@@ -199,7 +199,8 @@
if(ears)
qdel(ears)
ears = new mutantears(H)
if(mutantears)
ears = new mutantears(H)
/datum/species/proc/breathe(mob/living/carbon/human/H)
if((NO_BREATHE in species_traits) || (BREATHLESS in H.mutations))
@@ -725,3 +726,9 @@ It'll return null if the organ doesn't correspond, so include null checks when u
var/picked_species = pick(random_species)
var/datum/species/selected_species = GLOB.all_species[picked_species]
return species_name ? picked_species : selected_species.type
/datum/species/proc/can_hear(mob/living/carbon/human/H)
. = FALSE
var/obj/item/organ/internal/ears/ears = H.get_int_organ(/obj/item/organ/internal/ears)
if(istype(ears) && !ears.deaf)
. = TRUE
@@ -55,6 +55,7 @@
)
vision_organ = /obj/item/organ/internal/eyes/optical_sensor
mutantears = /obj/item/organ/internal/ears/microphone
has_limbs = list(
"chest" = list("path" = /obj/item/organ/external/chest/ipc),
"groin" = list("path" = /obj/item/organ/external/groin/ipc),
@@ -42,6 +42,7 @@
has_organ = list(
"brain" = /obj/item/organ/internal/brain/slime
)
mutantears = null
suicide_messages = list(
"is melting into a puddle!",
@@ -82,6 +83,9 @@
H.update_body()
..()
/datum/species/slime/can_hear() // fucking snowflakes
. = TRUE
/datum/action/innate/slimecolor
name = "Toggle Recolor"
check_flags = AB_CHECK_CONSCIOUS
File diff suppressed because it is too large Load Diff
@@ -24,4 +24,10 @@
if((disabilities & NEARSIGHTED) && (!istype(G) || !G.prescription))
overlay_fullscreen("nearsighted", /obj/screen/fullscreen/impaired, 1)
else
clear_fullscreen("nearsighted")
clear_fullscreen("nearsighted")
/mob/living/carbon/human/can_hear()
. = TRUE // Fallback if we don't have a species
if(dna.species)
. = dna.species.can_hear(src)
@@ -1165,6 +1165,15 @@
construction_time = 200
category = list("Misc")
/datum/design/ipc_microphone
name = "IPC Microphone"
id = "ipc_microphone"
build_type = MECHFAB
build_path = /obj/item/organ/internal/ears/microphone
materials = list(MAT_METAL = 1000, MAT_GLASS = 2500)
construction_time = 200
category = list("Misc")
/datum/design/synthetic_flash
name = "Synthetic Flash"
desc = "A synthetic flash used mostly in borg construction."
+5 -1
View File
@@ -47,6 +47,9 @@
/obj/item/organ/internal/ears/proc/MinimumDeafTicks(value)
deaf = max(deaf, value)
/obj/item/organ/internal/ears/surgeryize()
RestoreEars()
// Mob procs
/mob/living/carbon/RestoreEars()
var/obj/item/organ/internal/ears/ears = get_int_organ(/obj/item/organ/internal/ears)
@@ -61,4 +64,5 @@
/mob/living/carbon/MinimumDeafTicks(value)
var/obj/item/organ/internal/ears/ears = get_int_organ(/obj/item/organ/internal/ears)
if(ears)
ears.MinimumDeafTicks(value)
ears.MinimumDeafTicks(value)
@@ -133,4 +133,16 @@
stored_mmi.icon_state = "posibrain-occupied"
if(!stored_mmi.brainmob.dna)
stored_mmi.brainmob.dna = dna.Clone()
. = ..()
/obj/item/organ/internal/ears/microphone
name = "microphone"
icon = 'icons/obj/device.dmi'
icon_state = "taperecorder_idle"
status = ORGAN_ROBOT
dead_icon = "taperecorder_empty"
/obj/item/organ/internal/ears/microphone/remove(mob/living/user, special = FALSE)
if(!special)
to_chat(owner, "<span class='userdanger'>BZZZZZZZZZZZZZZT! Microphone error!</span>")
. = ..()