Merge pull request #15663 from deathride58/blockquotes
Blockquotes for chat; Prettier examine text and more!
This commit is contained in:
@@ -346,9 +346,9 @@
|
||||
|
||||
/datum/component/embedded/proc/examineTurf(datum/source, mob/user, list/examine_list)
|
||||
if(harmful)
|
||||
examine_list += "\t <a href='?src=[REF(src)];embedded_object=[REF(weapon)]' class='warning'>There is \a [weapon] embedded in [parent]!</a>"
|
||||
examine_list += "<a href='?src=[REF(src)];embedded_object=[REF(weapon)]' class='warning'>There is \a [weapon] embedded in [parent]!</a>"
|
||||
else
|
||||
examine_list += "\t <a href='?src=[REF(src)];embedded_object=[REF(weapon)]' class='warning'>There is \a [weapon] stuck to [parent]!</a>"
|
||||
examine_list += "<a href='?src=[REF(src)];embedded_object=[REF(weapon)]' class='warning'>There is \a [weapon] stuck to [parent]!</a>"
|
||||
|
||||
|
||||
/// Someone is ripping out the item from the turf by hand
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
/datum/component/mood/proc/print_mood(mob/user)
|
||||
var/msg = "<span class='info'>*---------*\n<EM>Your current mood</EM>\n"
|
||||
var/msg = "<blockquote class='[sanity > SANITY_DISTURBED ? "nicegreen" : "warning"]'><span class='info'><EM>Your current mood</EM></span>\n"
|
||||
msg += "<span class='notice'>My mental status: </span>" //Long term
|
||||
switch(sanity)
|
||||
if(SANITY_GREAT to INFINITY)
|
||||
@@ -69,23 +69,23 @@
|
||||
msg += "<span class='notice'>My current mood: </span>" //Short term
|
||||
switch(mood_level)
|
||||
if(1)
|
||||
msg += "<span class='boldwarning'>I wish I was dead!<span>\n"
|
||||
msg += "<span class='boldwarning'>I wish I was dead!</span>\n"
|
||||
if(2)
|
||||
msg += "<span class='boldwarning'>I feel terrible...<span>\n"
|
||||
msg += "<span class='boldwarning'>I feel terrible...</span>\n"
|
||||
if(3)
|
||||
msg += "<span class='boldwarning'>I feel very upset.<span>\n"
|
||||
msg += "<span class='boldwarning'>I feel very upset.</span>\n"
|
||||
if(4)
|
||||
msg += "<span class='boldwarning'>I'm a bit sad.<span>\n"
|
||||
msg += "<span class='boldwarning'>I'm a bit sad.</span>\n"
|
||||
if(5)
|
||||
msg += "<span class='nicegreen'>I'm alright.<span>\n"
|
||||
msg += "<span class='nicegreen'>I'm alright.</span>\n"
|
||||
if(6)
|
||||
msg += "<span class='nicegreen'>I feel pretty okay.<span>\n"
|
||||
msg += "<span class='nicegreen'>I feel pretty okay.</span>\n"
|
||||
if(7)
|
||||
msg += "<span class='nicegreen'>I feel pretty good.<span>\n"
|
||||
msg += "<span class='nicegreen'>I feel pretty good.</span>\n"
|
||||
if(8)
|
||||
msg += "<span class='nicegreen'>I feel amazing!<span>\n"
|
||||
msg += "<span class='nicegreen'>I feel amazing!</span>\n"
|
||||
if(9)
|
||||
msg += "<span class='nicegreen'>I love life!<span>\n"
|
||||
msg += "<span class='nicegreen'>I love life!</span>\n"
|
||||
|
||||
msg += "<span class='notice'>Moodlets:\n</span>"//All moodlets
|
||||
if(mood_events.len)
|
||||
@@ -93,7 +93,8 @@
|
||||
var/datum/mood_event/event = mood_events[i]
|
||||
msg += event.description
|
||||
else
|
||||
msg += "<span class='nicegreen'>I don't have much of a reaction to anything right now.<span>\n"
|
||||
msg += "<span class='nicegreen'>I don't have much of a reaction to anything right now.</span>\n"
|
||||
msg += "</blockquote>"
|
||||
to_chat(user || parent, msg)
|
||||
|
||||
///Called after moodevent/s have been added/removed.
|
||||
|
||||
@@ -118,7 +118,7 @@
|
||||
if(WOUND_SEVERITY_LOSS)
|
||||
msg = "[victim.p_their(TRUE)] [limb.name] [description]." // different format
|
||||
msg = "<span class='notice'><i><b>[msg]</b></i></span>"
|
||||
return "\t[msg]"
|
||||
return "[msg]"
|
||||
|
||||
/// Whether a scar can currently be seen by the viewer
|
||||
/datum/scar/proc/is_visible(mob/viewer)
|
||||
|
||||
@@ -167,7 +167,7 @@
|
||||
if(WOUND_INFECTION_SEPTIC to INFINITY)
|
||||
. += "Infection Level: <span class='deadsay'>LOSS IMMINENT</span>\n"
|
||||
if(infestation > sanitization)
|
||||
. += "\tSurgical debridement, antiobiotics/sterilizers, or regenerative mesh will rid infection. Paramedic UV penlights are also effective.\n"
|
||||
. += "Surgical debridement, antiobiotics/sterilizers, or regenerative mesh will rid infection. Paramedic UV penlights are also effective.\n"
|
||||
|
||||
if(flesh_damage > 0)
|
||||
. += "Flesh damage detected: Please apply ointment or regenerative mesh to allow recovery.\n"
|
||||
|
||||
@@ -518,7 +518,7 @@
|
||||
. = list("[get_examine_string(user, TRUE)].")
|
||||
|
||||
if(desc)
|
||||
. += desc
|
||||
. += "<hr>[desc]"
|
||||
|
||||
if(custom_materials)
|
||||
var/list/materials_list = list()
|
||||
|
||||
@@ -230,13 +230,13 @@
|
||||
|
||||
if(beaker)
|
||||
if(beaker.reagents && beaker.reagents.reagent_list.len)
|
||||
. += "\t<span class='notice'>Attached is \a [beaker] with [beaker.reagents.total_volume] units of liquid.</span>\n"
|
||||
. += "<span class='notice'>Attached is \a [beaker] with [beaker.reagents.total_volume] units of liquid.</span>\n"
|
||||
else
|
||||
. += "\t<span class='notice'>Attached is an empty [beaker.name].</span>\n"
|
||||
. += "<span class='notice'>Attached is an empty [beaker.name].</span>\n"
|
||||
else
|
||||
. += "\t<span class='notice'>No chemicals are attached.</span>\n"
|
||||
. += "<span class='notice'>No chemicals are attached.</span>\n"
|
||||
|
||||
. += "\t<span class='notice'>[attached ? attached : "No one"] is attached.</span>"
|
||||
. += "<span class='notice'>[attached ? attached : "No one"] is attached.</span>"
|
||||
|
||||
/obj/machinery/iv_drip/telescopic
|
||||
name = "telescopic IV drip"
|
||||
|
||||
@@ -145,32 +145,29 @@ GENETICS SCANNER
|
||||
mob_status = "<span class='alert'><b>Deceased</b></span>"
|
||||
oxy_loss = max(rand(1, 40), oxy_loss, (300 - (tox_loss + fire_loss + brute_loss))) // Random oxygen loss
|
||||
|
||||
var/msg = "<span class='info'>*---------*\nAnalyzing results for [M]:\n\tOverall status: [mob_status]"
|
||||
var/msg = "<span class='info'>Analyzing results for [M]:\n<blockquote class='notice'>Overall status: [mob_status]"
|
||||
|
||||
// Damage descriptions
|
||||
if(brute_loss > 10)
|
||||
msg += "\n\t<span class='alert'>[brute_loss > 50 ? "Severe" : "Minor"] tissue damage detected.</span>"
|
||||
msg += "\n<span class='alert'>[brute_loss > 50 ? "Severe" : "Minor"] tissue damage detected.</span>"
|
||||
if(fire_loss > 10)
|
||||
msg += "\n\t<span class='alert'>[fire_loss > 50 ? "Severe" : "Minor"] burn damage detected.</span>"
|
||||
msg += "\n<span class='alert'>[fire_loss > 50 ? "Severe" : "Minor"] burn damage detected.</span>"
|
||||
if(oxy_loss > 10)
|
||||
msg += "\n\t<span class='info'><span class='alert'>[oxy_loss > 50 ? "Severe" : "Minor"] oxygen deprivation detected.</span>"
|
||||
msg += "\n<span class='info'><span class='alert'>[oxy_loss > 50 ? "Severe" : "Minor"] oxygen deprivation detected.</span>"
|
||||
if(tox_loss > 10)
|
||||
msg += "\n\t<span class='alert'>[tox_loss > 50 ? "Severe" : "Minor"] amount of [HAS_TRAIT(M, TRAIT_ROBOTIC_ORGANISM) ? "system corruption" : "toxin damage"] detected.</span>"
|
||||
msg += "\n<span class='alert'>[tox_loss > 50 ? "Severe" : "Minor"] amount of [HAS_TRAIT(M, TRAIT_ROBOTIC_ORGANISM) ? "system corruption" : "toxin damage"] detected.</span>"
|
||||
if(M.getStaminaLoss())
|
||||
msg += "\n\t<span class='alert'>Subject appears to be suffering from fatigue.</span>"
|
||||
msg += "\n<span class='alert'>Subject appears to be suffering from fatigue.</span>"
|
||||
if(advanced)
|
||||
msg += "\n\t<span class='info'>Fatigue Level: [M.getStaminaLoss()]%.</span>"
|
||||
msg += "\n<span class='info'>Fatigue Level: [M.getStaminaLoss()]%.</span>"
|
||||
if (M.getCloneLoss())
|
||||
msg += "\n\t<span class='alert'>Subject appears to have [M.getCloneLoss() > 30 ? "Severe" : "Minor"] cellular damage.</span>"
|
||||
msg += "\n<span class='alert'>Subject appears to have [M.getCloneLoss() > 30 ? "Severe" : "Minor"] cellular damage.</span>"
|
||||
if(advanced)
|
||||
msg += "\n\t<span class='info'>Cellular Damage Level: [M.getCloneLoss()].</span>"
|
||||
msg += "\n<span class='info'>Cellular Damage Level: [M.getCloneLoss()].</span>"
|
||||
if(ishuman(M))
|
||||
var/mob/living/carbon/human/H = M
|
||||
if(advanced && H.has_dna())
|
||||
msg += "\n\t<span class='info'>Genetic Stability: [H.dna.stability]%.</span>"
|
||||
|
||||
to_chat(user, msg)
|
||||
msg = ""
|
||||
msg += "\n<span class='info'>Genetic Stability: [H.dna.stability]%.</span>"
|
||||
|
||||
// Body part damage report
|
||||
var/list/dmgreport = list()
|
||||
@@ -178,7 +175,7 @@ GENETICS SCANNER
|
||||
var/mob/living/carbon/C = M
|
||||
var/list/damaged = C.get_damaged_bodyparts(1,1)
|
||||
if(length(damaged)>0 || oxy_loss>0 || tox_loss>0 || fire_loss>0)
|
||||
dmgreport += "<table style='margin-left:33px'><tr><font face='Verdana'>\
|
||||
dmgreport += "<table><tr><font face='Verdana'>\
|
||||
<td style='width: 90px;'><font color='#0000CC'>Damage:</font></td>\
|
||||
<td style='width: 55px;'><font color='red'><b>Brute</b></font></td>\
|
||||
<td style='width: 45px;'><font color='orange'><b>Burn</b></font></td>\
|
||||
@@ -196,7 +193,7 @@ GENETICS SCANNER
|
||||
<td><font color='red'>[(org.brute_dam > 0) ? "[org.brute_dam]" : "0"]</font></td>\
|
||||
<td><font color='orange'>[(org.burn_dam > 0) ? "[org.burn_dam]" : "0"]</font></td></tr>"
|
||||
dmgreport += "</table>"
|
||||
to_chat(user, dmgreport.Join())
|
||||
msg += "\n[dmgreport.Join()]"
|
||||
|
||||
|
||||
//Organ damages report
|
||||
@@ -317,7 +314,7 @@ GENETICS SCANNER
|
||||
damage_message += " <font color='red'>Minor [O.name] failure detected.</span>"
|
||||
|
||||
if(temp_message || damage_message)
|
||||
msg += "\t<b><span class='info'>[uppertext(O.name)]:</b></span> [damage_message] [temp_message]\n"
|
||||
msg += "\n<b><span class='info'>[uppertext(O.name)]:</b></span> [damage_message] [temp_message]\n"
|
||||
|
||||
|
||||
|
||||
@@ -332,24 +329,24 @@ GENETICS SCANNER
|
||||
var/has_liver = C.dna && !(NOLIVER in C.dna.species.species_traits)
|
||||
var/has_stomach = C.dna && !(NOSTOMACH in C.dna.species.species_traits)
|
||||
if(!M.getorganslot(ORGAN_SLOT_EYES))
|
||||
msg += "\t<span class='alert'><b>Subject does not have eyes.</b></span>\n"
|
||||
msg += "<span class='alert'><b>Subject does not have eyes.</b></span>\n"
|
||||
if(!M.getorganslot(ORGAN_SLOT_EARS))
|
||||
msg += "\t<span class='alert'><b>Subject does not have ears.</b></span>\n"
|
||||
msg += "<span class='alert'><b>Subject does not have ears.</b></span>\n"
|
||||
if(!M.getorganslot(ORGAN_SLOT_BRAIN))
|
||||
msg += "\t<span class='alert'><b>Subject's brain function is non-existent!</b></span>\n"
|
||||
msg += "<span class='alert'><b>Subject's brain function is non-existent!</b></span>\n"
|
||||
if(has_liver && !M.getorganslot(ORGAN_SLOT_LIVER))
|
||||
msg += "\t<span class='alert'><b>Subject's liver is missing!</b></span>\n"
|
||||
msg += "<span class='alert'><b>Subject's liver is missing!</b></span>\n"
|
||||
if(blooded && !M.getorganslot(ORGAN_SLOT_HEART))
|
||||
msg += "\t<span class='alert'><b>Subject's heart is missing!</b></span>\n"
|
||||
msg += "<span class='alert'><b>Subject's heart is missing!</b></span>\n"
|
||||
if(breathes && !M.getorganslot(ORGAN_SLOT_LUNGS))
|
||||
msg += "\t<span class='alert'><b>Subject's lungs have collapsed from trauma!</b></span>\n"
|
||||
msg += "<span class='alert'><b>Subject's lungs have collapsed from trauma!</b></span>\n"
|
||||
if(has_stomach && !M.getorganslot(ORGAN_SLOT_STOMACH))
|
||||
msg += "\t<span class='alert'><b>Subject's stomach is missing!</span>\n"
|
||||
msg += "<span class='alert'><b>Subject's stomach is missing!</span>\n"
|
||||
|
||||
|
||||
if(M.radiation)
|
||||
msg += "\t<span class='alert'>Subject is irradiated.</span>\n"
|
||||
msg += "\t<span class='info'>Radiation Level: [M.radiation] rad</span>\n"
|
||||
msg += "<span class='alert'>Subject is irradiated.</span>\n"
|
||||
msg += "<span class='info'>Radiation Level: [M.radiation] rad</span>\n"
|
||||
|
||||
|
||||
|
||||
@@ -383,11 +380,11 @@ GENETICS SCANNER
|
||||
else if (S.flying_species != initial(S.flying_species))
|
||||
mutant = TRUE
|
||||
|
||||
msg += "\t<span class='info'>Reported Species: [H.spec_trait_examine_font()][H.dna.custom_species ? H.dna.custom_species : S.name]</font></span>\n"
|
||||
msg += "\t<span class='info'>Base Species: [H.spec_trait_examine_font()][S.name]</font></span>\n"
|
||||
msg += "\n<span class='info'>Reported Species: [H.spec_trait_examine_font()][H.dna.custom_species ? H.dna.custom_species : S.name]</font></span>\n"
|
||||
msg += "<span class='info'>Base Species: [H.spec_trait_examine_font()][S.name]</font></span>\n"
|
||||
if(mutant)
|
||||
msg += "\t<span class='info'>Subject has mutations present.</span>\n"
|
||||
msg += "\t<span class='info'>Body temperature: [round(M.bodytemperature-T0C,0.1)] °C ([round(M.bodytemperature*1.8-459.67,0.1)] °F)</span>\n"
|
||||
msg += "<span class='info'>Subject has mutations present.</span>\n"
|
||||
msg += "<span class='info'>Body temperature: [round(M.bodytemperature-T0C,0.1)] °C ([round(M.bodytemperature*1.8-459.67,0.1)] °F)</span>\n"
|
||||
|
||||
// Time of death
|
||||
if(M.tod && (M.stat == DEAD || ((HAS_TRAIT(M, TRAIT_FAKEDEATH)) && !advanced)))
|
||||
@@ -452,14 +449,14 @@ GENETICS SCANNER
|
||||
if(cyberimp_detect)
|
||||
msg += "<span class='notice'>Detected cybernetic modifications:</span>\n"
|
||||
msg += "<span class='notice'>[cyberimp_detect]</span>\n"
|
||||
msg += "<span class='notice'>*---------*</span>"
|
||||
msg += "</blockquote>"
|
||||
to_chat(user, msg)
|
||||
SEND_SIGNAL(M, COMSIG_NANITE_SCAN, user, FALSE)
|
||||
|
||||
/proc/chemscan(mob/living/user, mob/living/M)
|
||||
if(istype(M))
|
||||
if(M.reagents)
|
||||
var/msg = "<span class='info'>*---------*\n"
|
||||
var/msg = "<blockquote class='purple'>"
|
||||
if(M.reagents.reagent_list.len)
|
||||
var/list/datum/reagent/reagents = list()
|
||||
for(var/datum/reagent/R in M.reagents.reagent_list)
|
||||
@@ -498,7 +495,7 @@ GENETICS SCANNER
|
||||
if(95 to INFINITY)
|
||||
msg += "<span class='danger'>Subject contains a extremely dangerous amount of toxic isomers.</span>\n"
|
||||
|
||||
msg += "*---------*</span>"
|
||||
msg += "</blockquote>"
|
||||
to_chat(user, msg)
|
||||
|
||||
/obj/item/healthanalyzer/verb/toggle_mode()
|
||||
@@ -529,12 +526,14 @@ GENETICS SCANNER
|
||||
|
||||
var/render_list = ""
|
||||
for(var/i in patient.get_wounded_bodyparts())
|
||||
if(render_list == "")
|
||||
render_list += "<blockquote class='warning'>"
|
||||
var/obj/item/bodypart/wounded_part = i
|
||||
render_list += "<span class='alert ml-1'><b>Warning: Physical trauma[LAZYLEN(wounded_part.wounds) > 1? "s" : ""] detected in [wounded_part.name]</b>"
|
||||
for(var/k in wounded_part.wounds)
|
||||
var/datum/wound/W = k
|
||||
render_list += "<div class='ml-2'>[W.get_scanner_description()]</div>\n"
|
||||
render_list += "</span>"
|
||||
render_list += "</blockquote>"
|
||||
|
||||
if(render_list == "")
|
||||
if(istype(scanner))
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
/mob/living/simple_animal/hostile/clockwork/examine(mob/user)
|
||||
var/t_He = p_they(TRUE)
|
||||
var/t_s = p_s()
|
||||
var/msg = "<span class='brass'>*---------*\nThis is [icon2html(src, user)] \a <b>[src]</b>!\n"
|
||||
var/msg = "<span class='brass'>This is [icon2html(src, user)] \a <b>[src]</b>!\n"
|
||||
msg += "[desc]\n"
|
||||
if(health < maxHealth)
|
||||
msg += "<span class='warning'>"
|
||||
@@ -55,7 +55,7 @@
|
||||
var/addendum = examine_info()
|
||||
if(addendum)
|
||||
msg += "[addendum]\n"
|
||||
msg += "*---------*</span>"
|
||||
msg += "</span>"
|
||||
|
||||
return list(msg)
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@
|
||||
|
||||
|
||||
/mob/living/carbon/true_devil/examine(mob/user)
|
||||
. = list("<span class='info'>*---------*\nThis is [icon2html(src, user)] <b>[src]</b>!")
|
||||
. = list("<span class='info'>This is [icon2html(src, user)] <b>[src]</b>!")
|
||||
|
||||
//Left hand items
|
||||
for(var/obj/item/I in held_items)
|
||||
@@ -81,7 +81,7 @@
|
||||
. += "<span class='warning'>You can see hellfire inside its gaping wounds.</span>"
|
||||
else if(health < (maxHealth/2))
|
||||
. += "<span class='warning'>You can see hellfire inside its wounds.</span>"
|
||||
. += "*---------*</span>"
|
||||
. += "</span>"
|
||||
|
||||
/mob/living/carbon/true_devil/IsAdvancedToolUser()
|
||||
return 1
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
var/t_has = p_have()
|
||||
var/t_is = p_are()
|
||||
|
||||
. = list("<span class='info'>*---------*\nThis is [icon2html(src, user)] \a <EM>[src]</EM>!")
|
||||
. = list("<span class='info'>This is [icon2html(src, user)] \a <EM>[src]</EM>!")
|
||||
|
||||
if (handcuffed)
|
||||
. += "<span class='warning'>[t_He] [t_is] [icon2html(handcuffed, user)] handcuffed!</span>"
|
||||
@@ -152,8 +152,11 @@
|
||||
. += "[t_He] look[p_s()] very happy."
|
||||
if(MOOD_LEVEL_HAPPY4 to INFINITY)
|
||||
. += "[t_He] look[p_s()] ecstatic."
|
||||
|
||||
if(LAZYLEN(.) > 1)
|
||||
.[2] = "<hr>[.[2]]"
|
||||
|
||||
SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, user, .)
|
||||
. += "*---------*</span>"
|
||||
|
||||
/mob/living/carbon/examine_more(mob/user)
|
||||
if(!all_scars)
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
if(HAS_TRAIT(L, TRAIT_PROSOPAGNOSIA))
|
||||
obscure_name = TRUE
|
||||
|
||||
. = list("<span class='info'>*---------*\nThis is <EM>[!obscure_name ? name : "Unknown"]</EM>!")
|
||||
. = list("<span class='info'>This is <EM>[!obscure_name ? name : "Unknown"]</EM>!")
|
||||
|
||||
var/vampDesc = ReturnVampExamine(user) // Vamps recognize the names of other vamps.
|
||||
var/vassDesc = ReturnVassalExamine(user) // Vassals recognize each other's marks.
|
||||
@@ -442,9 +442,10 @@
|
||||
else if(isobserver(user) && traitstring)
|
||||
. += "<span class='info'><b>Traits:</b> [traitstring]</span>"
|
||||
|
||||
SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, user, .) //This also handles flavor texts now
|
||||
if(LAZYLEN(.) > 2) //Want this to appear after species text
|
||||
.[3] = "<hr>[.[3]]"
|
||||
|
||||
. += "*---------*</span>"
|
||||
SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, user, .) //This also handles flavor texts now
|
||||
|
||||
/mob/living/proc/status_effect_examines(pronoun_replacement) //You can include this in any mob's examine() to show the examine texts of status effects!
|
||||
var/list/dat = list()
|
||||
|
||||
@@ -550,7 +550,7 @@
|
||||
to_chat(src, "<span class='notice'>You succesfuly remove the durathread strand.</span>")
|
||||
remove_status_effect(STATUS_EFFECT_CHOKINGSTRAND)
|
||||
return
|
||||
var/to_send = ""
|
||||
var/to_send = "<blockquote class ='notice'>"
|
||||
visible_message("[src] examines [p_them()]self.", \
|
||||
"<span class='notice'>You check yourself for injuries.</span>")
|
||||
|
||||
@@ -597,27 +597,27 @@
|
||||
var/no_damage
|
||||
if(status == "OK" || status == "no damage")
|
||||
no_damage = TRUE
|
||||
to_send += "\t <span class='[no_damage ? "notice" : "warning"]'>Your [LB.name] [HAS_TRAIT(src, TRAIT_SELF_AWARE) ? "has" : "is"] [status].</span>\n"
|
||||
to_send += "<span class='[no_damage ? "notice" : "warning"]'>Your [LB.name] [HAS_TRAIT(src, TRAIT_SELF_AWARE) ? "has" : "is"] [status].</span>\n"
|
||||
|
||||
for(var/thing in LB.wounds)
|
||||
var/datum/wound/W = thing
|
||||
var/msg
|
||||
switch(W.severity)
|
||||
if(WOUND_SEVERITY_TRIVIAL)
|
||||
msg = "\t <span class='danger'>Your [LB.name] is suffering [W.a_or_from] [lowertext(W.name)].</span>"
|
||||
msg = "<span class='danger'>Your [LB.name] is suffering [W.a_or_from] [lowertext(W.name)].</span>"
|
||||
if(WOUND_SEVERITY_MODERATE)
|
||||
msg = "\t <span class='warning'>Your [LB.name] is suffering [W.a_or_from] [lowertext(W.name)]!</span>"
|
||||
msg = "<span class='warning'>Your [LB.name] is suffering [W.a_or_from] [lowertext(W.name)]!</span>"
|
||||
if(WOUND_SEVERITY_SEVERE)
|
||||
msg = "\t <span class='warning'><b>Your [LB.name] is suffering [W.a_or_from] [lowertext(W.name)]!</b></span>"
|
||||
msg = "<span class='warning'><b>Your [LB.name] is suffering [W.a_or_from] [lowertext(W.name)]!</b></span>"
|
||||
if(WOUND_SEVERITY_CRITICAL)
|
||||
msg = "\t <span class='warning'><b>Your [LB.name] is suffering [W.a_or_from] [lowertext(W.name)]!!</b></span>"
|
||||
msg = "<span class='warning'><b>Your [LB.name] is suffering [W.a_or_from] [lowertext(W.name)]!!</b></span>"
|
||||
to_chat(src, msg)
|
||||
|
||||
for(var/obj/item/I in LB.embedded_objects)
|
||||
if(I.isEmbedHarmless())
|
||||
to_chat(src, "\t <a href='?src=[REF(src)];embedded_object=[REF(I)];embedded_limb=[REF(LB)]' class='warning'>There is \a [I] stuck to your [LB.name]!</a>")
|
||||
to_chat(src, "<a href='?src=[REF(src)];embedded_object=[REF(I)];embedded_limb=[REF(LB)]' class='warning'>There is \a [I] stuck to your [LB.name]!</a>")
|
||||
else
|
||||
to_chat(src, "\t <a href='?src=[REF(src)];embedded_object=[REF(I)];embedded_limb=[REF(LB)]' class='warning'>There is \a [I] embedded in your [LB.name]!</a>")
|
||||
to_chat(src, "<a href='?src=[REF(src)];embedded_object=[REF(I)];embedded_limb=[REF(LB)]' class='warning'>There is \a [I] embedded in your [LB.name]!</a>")
|
||||
|
||||
for(var/t in missing)
|
||||
to_send += "<span class='boldannounce'>Your [parse_zone(t)] is missing!</span>\n"
|
||||
@@ -724,6 +724,8 @@
|
||||
if(roundstart_quirks.len)
|
||||
to_send += "<span class='notice'>You have these quirks: [get_trait_string()].</span>\n"
|
||||
|
||||
to_send += "</blockquote>"
|
||||
|
||||
to_chat(src, to_send)
|
||||
else
|
||||
if(wear_suit)
|
||||
|
||||
@@ -7,8 +7,8 @@
|
||||
return
|
||||
|
||||
var/list/print_msg = list()
|
||||
print_msg += "<span class='info'>*---------*</span>"
|
||||
print_msg += "<span class='userdanger'>As you snap back to consciousness, you recall people messing with your stuff...</span>"
|
||||
print_msg += "<blockquote class='warning'>"
|
||||
|
||||
afk_thefts = reverseRange(afk_thefts)
|
||||
|
||||
@@ -22,13 +22,14 @@
|
||||
var/time_since = world.time - iter_theft[AFK_THEFT_TIME]
|
||||
|
||||
if(time_since > AFK_THEFT_FORGET_DETAILS_TIME)
|
||||
print_msg += "\t<span class='danger'><b>Someone [theft_message], but it was at least [DisplayTimeText(AFK_THEFT_FORGET_DETAILS_TIME)] ago.</b></span>"
|
||||
print_msg += "<span class='danger'><b>Someone [theft_message], but it was at least [DisplayTimeText(AFK_THEFT_FORGET_DETAILS_TIME)] ago.</b></span>"
|
||||
else
|
||||
print_msg += "\t<span class='danger'><b>[thief_name] [theft_message] roughly [DisplayTimeText(time_since, 10)] ago.</b></span>"
|
||||
print_msg += "<span class='danger'><b>[thief_name] [theft_message] roughly [DisplayTimeText(time_since, 10)] ago.</b></span>"
|
||||
|
||||
print_msg += "</blockquote>"
|
||||
|
||||
if(LAZYLEN(afk_thefts) >= AFK_THEFT_MAX_MESSAGES)
|
||||
print_msg += "<span class='warning'>There may have been more, but that's all you can remember...</span>"
|
||||
print_msg += "<span class='info'>*---------*</span>"
|
||||
|
||||
to_chat(src, print_msg.Join("\n"))
|
||||
LAZYNULL(afk_thefts)
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/mob/living/silicon/ai/examine(mob/user)
|
||||
. = list("<span class='info'>*---------*\nThis is [icon2html(src, user)] <EM>[src]</EM>!")
|
||||
. = list("<span class='info'>This is [icon2html(src, user)] <EM>[src]</EM>!")
|
||||
if (stat == DEAD)
|
||||
. += "<span class='deadsay'>It appears to be powered-down.</span>"
|
||||
else
|
||||
@@ -17,6 +17,8 @@
|
||||
. += "The wireless networking light is blinking."
|
||||
else if (!shunted && !client)
|
||||
. += "[src]Core.exe has stopped responding! NTOS is searching for a solution to the problem..."
|
||||
. += "*---------*</span>"
|
||||
|
||||
if(LAZYLEN(.) > 1)
|
||||
.[2] = "<hr>[.[2]]"
|
||||
|
||||
. += ..()
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
/mob/living/silicon/examine(mob/user) //Displays a silicon's laws to ghosts
|
||||
. = ..()
|
||||
if(laws && isobserver(user))
|
||||
. += "<b>[src] has the following laws:</b>"
|
||||
for(var/law in laws.get_law_list(include_zeroth = TRUE))
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/mob/living/silicon/robot/examine(mob/user)
|
||||
. = list("<span class='info'>*---------*\nThis is [icon2html(src, user)] \a <EM>[src]</EM>, a [src.module.name] unit!")
|
||||
. = list("<span class='info'>This is [icon2html(src, user)] \a <EM>[src]</EM>, a [src.module.name] unit!")
|
||||
if(desc)
|
||||
. += "[desc]"
|
||||
|
||||
@@ -49,8 +49,9 @@
|
||||
if(DEAD)
|
||||
. += "<span class='deadsay'>It looks like its system is corrupted and requires a reset.</span>"
|
||||
|
||||
if(LAZYLEN(.) > 1)
|
||||
.[2] = "<hr>[.[2]]"
|
||||
|
||||
SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, usr, .)
|
||||
|
||||
. += "*---------*</span>"
|
||||
|
||||
. += ..()
|
||||
|
||||
@@ -83,13 +83,12 @@
|
||||
/mob/living/simple_animal/hostile/construct/examine(mob/user)
|
||||
var/t_He = p_they(TRUE)
|
||||
var/t_s = p_s()
|
||||
. = list("<span class='cult'>*---------*\nThis is [icon2html(src, user)] \a <b>[src]</b>!\n[desc]")
|
||||
. = list("<span class='cult'>This is [icon2html(src, user)] \a <b>[src]</b>!\n[desc]</span>")
|
||||
if(health < maxHealth)
|
||||
if(health >= maxHealth/2)
|
||||
. += "<span class='warning'>[t_He] look[t_s] slightly dented.</span>"
|
||||
else
|
||||
. += "<span class='warning'><b>[t_He] look[t_s] severely dented!</b></span>"
|
||||
. += "*---------*</span>"
|
||||
|
||||
/mob/living/simple_animal/hostile/construct/attack_animal(mob/living/simple_animal/M)
|
||||
if(isconstruct(M)) //is it a construct?
|
||||
|
||||
@@ -178,7 +178,7 @@
|
||||
|
||||
|
||||
/mob/living/simple_animal/drone/examine(mob/user)
|
||||
. = list("<span class='info'>*---------*\nThis is [icon2html(src, user)] \a <b>[src]</b>!")
|
||||
. = list("<span class='info'>This is [icon2html(src, user)] \a <b>[src]</b>!")
|
||||
|
||||
//Hands
|
||||
for(var/obj/item/I in held_items)
|
||||
@@ -214,7 +214,7 @@
|
||||
. += "<span class='deadsay'>A message repeatedly flashes on its display: \"REBOOT -- REQUIRED\".</span>"
|
||||
else
|
||||
. += "<span class='deadsay'>A message repeatedly flashes on its display: \"ERROR -- OFFLINE\".</span>"
|
||||
. += "*---------*</span>"
|
||||
. += "</span>"
|
||||
|
||||
|
||||
/mob/living/simple_animal/drone/assess_threat(judgement_criteria, lasercolor = "", datum/callback/weaponcheck=null) //Secbots won't hunt maintenance drones.
|
||||
|
||||
@@ -18,14 +18,14 @@
|
||||
|
||||
/mob/living/simple_animal/hostile/guardian/dextrous/examine(mob/user)
|
||||
if(dextrous)
|
||||
. = list("<span class='info'>*---------*\nThis is [icon2html(src)] \a <b>[src]</b>!\n[desc]")
|
||||
. = list("<span class='info'>This is [icon2html(src)] \a <b>[src]</b>!\n[desc]")
|
||||
|
||||
for(var/obj/item/I in held_items)
|
||||
if(!(I.item_flags & ABSTRACT))
|
||||
. += "It has [I.get_examine_string(user)] in its [get_held_index_name(get_held_index_of_item(I))]."
|
||||
if(internal_storage && !(internal_storage.item_flags & ABSTRACT))
|
||||
. += "It is holding [internal_storage.get_examine_string(user)] in its internal storage."
|
||||
. += "*---------*</span>"
|
||||
. += "</span>"
|
||||
else
|
||||
return ..()
|
||||
|
||||
|
||||
@@ -421,7 +421,7 @@
|
||||
return
|
||||
|
||||
/mob/living/simple_animal/slime/examine(mob/user)
|
||||
. = list("<span class='info'>*---------*\nThis is [icon2html(src, user)] \a <EM>[src]</EM>!")
|
||||
. = list("<span class='info'>This is [icon2html(src, user)] \a <EM>[src]</EM>!")
|
||||
if (src.stat == DEAD)
|
||||
. += "<span class='deadsay'>It is limp and unresponsive.</span>"
|
||||
else
|
||||
@@ -446,7 +446,7 @@
|
||||
if(10)
|
||||
. += "<span class='warning'><B>It is radiating with massive levels of electrical activity!</B></span>"
|
||||
|
||||
. += "*---------*</span>"
|
||||
. += "</span>"
|
||||
|
||||
/mob/living/simple_animal/slime/proc/discipline_slime(mob/user)
|
||||
if(stat)
|
||||
|
||||
@@ -330,7 +330,7 @@
|
||||
else
|
||||
result = A.examine(src) // if a tree is examined but no client is there to see it, did the tree ever really exist?
|
||||
|
||||
to_chat(src, result.Join("\n"))
|
||||
to_chat(src, "<blockquote class='info'>[result.Join("\n")]</blockquote>")
|
||||
SEND_SIGNAL(src, COMSIG_MOB_EXAMINATE, A)
|
||||
|
||||
/mob/proc/clear_from_recent_examines(atom/A)
|
||||
|
||||
@@ -98,3 +98,24 @@ $color-bg-section: base.$color-bg-section !default;
|
||||
pointer-events: none;
|
||||
}
|
||||
}
|
||||
|
||||
blockquote {
|
||||
background-color: rgba($text-color, 0.05);
|
||||
border-left: 0.15em solid;
|
||||
border-color: $text-color;
|
||||
padding-left: 0.3em;
|
||||
padding-right: 0.3em;
|
||||
margin-bottom: 0.15em;
|
||||
margin-left: 0.3em;
|
||||
margin-right: 0em;
|
||||
}
|
||||
|
||||
hr {
|
||||
background-color: rgba($text-color, 0.25);
|
||||
height: 0.15em;
|
||||
border-style: none;
|
||||
margin-left: 1em;
|
||||
margin-right: 2em;
|
||||
margin-bottom: 0.3em;
|
||||
margin-top: 0.3em;
|
||||
}
|
||||
|
||||
@@ -447,6 +447,10 @@ em {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
blockquote.warning {
|
||||
border-color: #c51e1e;
|
||||
}
|
||||
|
||||
.alertwarning {
|
||||
color: #FF0000;
|
||||
font-weight: bold;
|
||||
@@ -486,10 +490,18 @@ em {
|
||||
color: #9ab0ff;
|
||||
}
|
||||
|
||||
blockquote.info {
|
||||
border-color: #9ab0ff;
|
||||
}
|
||||
|
||||
.notice {
|
||||
color: #6685f5;
|
||||
}
|
||||
|
||||
blockquote.notice {
|
||||
border-color: #6685f5;
|
||||
}
|
||||
|
||||
.tinynotice {
|
||||
color: #6685f5;
|
||||
font-size: 85%;
|
||||
@@ -545,18 +557,34 @@ em {
|
||||
color: #059223;
|
||||
}
|
||||
|
||||
blockquote.green {
|
||||
border-color: #059223;
|
||||
}
|
||||
|
||||
.red {
|
||||
color: #FF0000;
|
||||
}
|
||||
|
||||
blockquote.red {
|
||||
border-color: #FF0000;
|
||||
}
|
||||
|
||||
.blue {
|
||||
color: #215cff;
|
||||
}
|
||||
|
||||
blockquote.blue {
|
||||
border-color: #215cff;
|
||||
}
|
||||
|
||||
.nicegreen {
|
||||
color: #059223;
|
||||
}
|
||||
|
||||
blockquote.nicegreen {
|
||||
border-color: #059223;
|
||||
}
|
||||
|
||||
/* hornichems */
|
||||
.userlove {
|
||||
color: #ff42a6;
|
||||
@@ -575,6 +603,10 @@ em {
|
||||
color: #973e3b;
|
||||
}
|
||||
|
||||
blockquote.cult {
|
||||
border-color: #973e3b;
|
||||
}
|
||||
|
||||
.cultitalic {
|
||||
color: #973e3b;
|
||||
font-style: italic;
|
||||
@@ -630,6 +662,10 @@ em {
|
||||
color: #9956d3;
|
||||
}
|
||||
|
||||
blockquote.purple {
|
||||
border-color: #9956d3;
|
||||
}
|
||||
|
||||
.holoparasite {
|
||||
color: #88809c;
|
||||
}
|
||||
@@ -693,6 +729,10 @@ em {
|
||||
color: #BE8700;
|
||||
}
|
||||
|
||||
blockquote.brass {
|
||||
border-color: #BE8700;
|
||||
}
|
||||
|
||||
.heavy_brass {
|
||||
color: #BE8700;
|
||||
font-weight: bold;
|
||||
|
||||
@@ -484,6 +484,10 @@ h1.alert, h2.alert {
|
||||
font-style: italic;
|
||||
}
|
||||
|
||||
blockquote.warning {
|
||||
border-color: #ff0000;
|
||||
}
|
||||
|
||||
.alertwarning {
|
||||
color: #FF0000;
|
||||
font-weight: bold;
|
||||
@@ -522,11 +526,18 @@ h1.alert, h2.alert {
|
||||
.info {
|
||||
color: #0000CC;
|
||||
}
|
||||
blockquote.info {
|
||||
border-color: #0000CC;
|
||||
}
|
||||
|
||||
.notice {
|
||||
color: #000099;
|
||||
}
|
||||
|
||||
blockquote.notice {
|
||||
border-color: #000099;
|
||||
}
|
||||
|
||||
.tinynotice {
|
||||
color: #000099;
|
||||
font-size: 85%;
|
||||
@@ -582,18 +593,33 @@ h1.alert, h2.alert {
|
||||
color: #03ff39;
|
||||
}
|
||||
|
||||
blockquote.green {
|
||||
border-color: #03ff39;
|
||||
}
|
||||
|
||||
.red {
|
||||
color: #FF0000;
|
||||
}
|
||||
blockquote.red {
|
||||
border-color: #FF0000;
|
||||
}
|
||||
|
||||
.blue {
|
||||
color: #0000FF;
|
||||
}
|
||||
|
||||
blockquote.blue {
|
||||
border-color: #0000FF;
|
||||
}
|
||||
|
||||
.nicegreen {
|
||||
color: #14a833;
|
||||
}
|
||||
|
||||
blockquote.nicegreen {
|
||||
border-color: #14a833;
|
||||
}
|
||||
|
||||
.userlove {
|
||||
color: #FF1493;
|
||||
font-style: italic;
|
||||
@@ -611,6 +637,10 @@ h1.alert, h2.alert {
|
||||
color: #973e3b;
|
||||
}
|
||||
|
||||
blockquote.cult {
|
||||
border-color: #973e3b;
|
||||
}
|
||||
|
||||
.cultitalic {
|
||||
color: #973e3b;
|
||||
font-style: italic;
|
||||
@@ -666,6 +696,10 @@ h1.alert, h2.alert {
|
||||
color: #5e2d79;
|
||||
}
|
||||
|
||||
blockquote.purple {
|
||||
border-color: #5e2d79;
|
||||
}
|
||||
|
||||
.holoparasite {
|
||||
color: #35333a;
|
||||
}
|
||||
@@ -730,6 +764,10 @@ h1.alert, h2.alert {
|
||||
color: #BE8700;
|
||||
}
|
||||
|
||||
blockquote.brass {
|
||||
border-color: #BE8700;
|
||||
}
|
||||
|
||||
.heavy_brass {
|
||||
color: #BE8700;
|
||||
font-weight: bold;
|
||||
|
||||
Reference in New Issue
Block a user