mirror of
https://github.com/Yawn-Wider/YWPolarisVore.git
synced 2026-08-29 16:10:33 +01:00
next set of spans (#16434)
* next set of spans * some more * next * next * next * . * text... * next... rest soon * . * . * ok last set for the night * . * . * . * . * some more * next * next * all for now * . * some more easy ones * some more easy ones * . * . * some more bolds * oups auto complete moment * add the remaining spans * this as well * this as well * . * ., * resync them properly
This commit is contained in:
@@ -103,13 +103,13 @@
|
||||
to_chat(carrier, span_warning("[icon2html(src, carrier.client)] Warning: AI focus at nearby location."))
|
||||
carrier << 'sound/machines/defib_SafetyOn.ogg'
|
||||
if(PROXIMITY_ON_SCREEN)
|
||||
to_chat(carrier, "<font size='3'><span class='danger'>[icon2html(src, carrier.client)] Alert: AI or camera focused at current location!</span></font>")
|
||||
to_chat(carrier, span_danger(span_large("[icon2html(src, carrier.client)] Alert: AI or camera focused at current location!")))
|
||||
carrier <<'sound/machines/defib_ready.ogg'
|
||||
if(PROXIMITY_TRACKING)
|
||||
to_chat(carrier, "<font size='3'><span class='danger'>[icon2html(src, carrier.client)] Danger: AI is actively tracking you!</span></font>")
|
||||
to_chat(carrier, span_danger(span_large("[icon2html(src, carrier.client)] Danger: AI is actively tracking you!")))
|
||||
carrier << 'sound/machines/defib_success.ogg'
|
||||
if(PROXIMITY_TRACKING_FAIL)
|
||||
to_chat(carrier, "<font size='3'><span class='danger'>[icon2html(src, carrier.client)] Danger: AI is attempting to actively track you, but you are outside of the camera network!</span></font>")
|
||||
to_chat(carrier, span_danger(span_large("[icon2html(src, carrier.client)] Danger: AI is attempting to actively track you, but you are outside of the camera network!")))
|
||||
carrier <<'sound/machines/defib_ready.ogg'
|
||||
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
return ..()
|
||||
else
|
||||
M.death()
|
||||
to_chat(user, "<b>ERROR ERROR ERROR</b>")
|
||||
to_chat(user, span_infoplain(span_bold("ERROR ERROR ERROR")))
|
||||
|
||||
/obj/item/aicard/attack_self(mob/user)
|
||||
tgui_interact(user)
|
||||
@@ -100,11 +100,11 @@
|
||||
|
||||
/obj/item/aicard/proc/grab_ai(var/mob/living/silicon/ai/ai, var/mob/living/user)
|
||||
if(!ai.client && !ai.deployed_shell)
|
||||
to_chat(user, "<span class='danger'>ERROR:</span> AI [ai.name] is offline. Unable to transfer.")
|
||||
to_chat(user, span_danger("ERROR:") + " AI [ai.name] is offline. Unable to transfer.")
|
||||
return 0
|
||||
|
||||
if(carded_ai)
|
||||
to_chat(user, "<span class='danger'>Transfer failed:</span> Existing AI found on remote device. Remove existing AI to install a new one.")
|
||||
to_chat(user, span_danger("Transfer failed:") + " Existing AI found on remote device. Remove existing AI to install a new one.")
|
||||
return 0
|
||||
|
||||
if(!user.IsAdvancedToolUser() && isanimal(user))
|
||||
@@ -117,7 +117,7 @@
|
||||
|
||||
if(do_after(user, 100))
|
||||
if(carded_ai)
|
||||
to_chat(user, "<span class='danger'>Transfer failed:</span> Existing AI found on remote device. Remove existing AI to install a new one.")
|
||||
to_chat(user, span_danger("Transfer failed:") + " Existing AI found on remote device. Remove existing AI to install a new one.")
|
||||
return 0
|
||||
if(istype(ai.loc, /turf/))
|
||||
new /obj/structure/AIcore/deactivated(get_turf(ai))
|
||||
@@ -135,9 +135,9 @@
|
||||
ai.disconnect_shell("Disconnected from remote shell due to core intelligence transfer.") //If the AI is controlling a borg, force the player back to core!
|
||||
|
||||
if(ai.client)
|
||||
to_chat(ai, "You have been transferred into a mobile core. Remote access lost.")
|
||||
to_chat(ai, span_infoplain("You have been transferred into a mobile core. Remote access lost."))
|
||||
if(user.client)
|
||||
to_chat(ai, "<span class='notice'><b>Transfer successful:</b></span> [ai.name] extracted from current device and placed within mobile core.")
|
||||
to_chat(ai, span_notice(span_bold("Transfer successful:")) + " [ai.name] extracted from current device and placed within mobile core.")
|
||||
|
||||
ai.canmove = 1
|
||||
update_icon()
|
||||
|
||||
@@ -34,8 +34,8 @@
|
||||
if(src in comm.voice_invites)
|
||||
comm.open_connection(src)
|
||||
return
|
||||
to_chat(src, "<span class='notice'>[icon2html(origin_atom,src.client)] Receiving communicator request from [origin_atom]. To answer, use the <b>Call Communicator</b> \
|
||||
verb, and select that name to answer the call.</span>")
|
||||
to_chat(src, span_notice("[icon2html(origin_atom,src.client)] Receiving communicator request from [origin_atom]. To answer, use the " + span_bold("Call Communicator") + "\
|
||||
verb, and select that name to answer the call."))
|
||||
src << 'sound/machines/defib_SafetyOn.ogg'
|
||||
comm.voice_invites |= src
|
||||
if(message == "ping")
|
||||
@@ -44,9 +44,9 @@
|
||||
random = random / 10
|
||||
exonet.send_message(origin_address, "64 bytes received from [exonet.address] ecmp_seq=1 ttl=51 time=[random] ms")
|
||||
if(message == "text")
|
||||
to_chat(src, span_notice("[icon2html(origin_atom,src.client)] Received text message from [origin_atom]: <b>\"[text]\"</b>"))
|
||||
to_chat(src, span_notice("[icon2html(origin_atom,src.client)] Received text message from [origin_atom]: " + span_bold("\"[text]\"")))
|
||||
src << 'sound/machines/defib_safetyOff.ogg'
|
||||
exonet_messages.Add("<b>From [origin_atom]:</b><br>[text]")
|
||||
exonet_messages.Add(span_bold("From [origin_atom]:") + "<br>[text]")
|
||||
return
|
||||
|
||||
// Proc: request_im()
|
||||
@@ -135,8 +135,8 @@
|
||||
|
||||
var/obj/machinery/exonet_node/E = get_exonet_node()
|
||||
if(!E || !E.on || !E.allow_external_communicators)
|
||||
to_chat(src, "<span class='danger'>The Exonet node at telecommunications is down at the moment, or is actively blocking you, \
|
||||
so your call can't go through.</span>")
|
||||
to_chat(src, span_danger("The Exonet node at telecommunications is down at the moment, or is actively blocking you, \
|
||||
so your call can't go through."))
|
||||
return
|
||||
|
||||
var/list/choices = list()
|
||||
@@ -158,7 +158,7 @@
|
||||
O.exonet.send_message(chosen_communicator.exonet.address, "text", text_message)
|
||||
|
||||
to_chat(src, span_notice("You have sent '[text_message]' to [chosen_communicator]."))
|
||||
exonet_messages.Add("<b>To [chosen_communicator]:</b><br>[text_message]")
|
||||
exonet_messages.Add(span_bold("To [chosen_communicator]:") + "<br>[text_message]")
|
||||
log_pda("(DCOMM: [src]) sent \"[text_message]\" to [chosen_communicator]", src)
|
||||
for(var/mob/M in player_list)
|
||||
if(M.stat == DEAD && M.client?.prefs?.read_preference(/datum/preference/toggle/ghost_ears))
|
||||
|
||||
@@ -101,9 +101,9 @@
|
||||
qdel(blackness)
|
||||
|
||||
to_chat(new_voice, span_notice("[icon2html(src,new_voice.client)] Connection to [src] established."))
|
||||
to_chat(new_voice, "<b>To talk to the person on the other end of the call, just talk normally.</b>")
|
||||
to_chat(new_voice, "<b>If you want to end the call, use the 'Hang Up' verb. The other person can also hang up at any time.</b>")
|
||||
to_chat(new_voice, "<b>Remember, your character does not know anything you've learned from observing!</b>")
|
||||
to_chat(new_voice, span_infoplain(span_bold("To talk to the person on the other end of the call, just talk normally.")))
|
||||
to_chat(new_voice, span_infoplain(span_bold("If you want to end the call, use the 'Hang Up' verb. The other person can also hang up at any time.")))
|
||||
to_chat(new_voice, span_infoplain(span_bold("Remember, your character does not know anything you've learned from observing!")))
|
||||
if(new_voice.mind)
|
||||
new_voice.mind.assigned_role = JOB_DISEMBODIED_VOICE
|
||||
if(user)
|
||||
@@ -216,7 +216,7 @@
|
||||
var/list/in_range = get_mobs_and_objs_in_view_fast(T,world.view,0) //Range of 3 since it's a tiny video display
|
||||
mobs_to_relay = in_range["mobs"]
|
||||
//VOREStation Edit End
|
||||
var/rendered = "[icon2html(src,mobs_to_relay)] <span class='message'>[text]</span>"
|
||||
var/rendered = "[icon2html(src,mobs_to_relay)] " + span_message("[text]")
|
||||
for(var/mob/mob in mobs_to_relay) //We can't use visible_message(), or else we will get an infinite loop if two communicators hear each other.
|
||||
var/dst = get_dist(get_turf(mob),get_turf(comm))
|
||||
if(dst <= video_range)
|
||||
@@ -263,7 +263,7 @@
|
||||
if(!T) return
|
||||
var/list/in_range = get_mobs_and_objs_in_view_fast(T,world.view,0)
|
||||
var/list/mobs_to_relay = in_range["mobs"]
|
||||
var/rendered = "[icon2html(src, mobs_to_relay)] <span class='message'>[msg]</span>"
|
||||
var/rendered = "[icon2html(src, mobs_to_relay)] " + span_message("[msg]")
|
||||
for(var/mob/mob in mobs_to_relay)
|
||||
mob.show_message(rendered)
|
||||
..()
|
||||
@@ -301,8 +301,8 @@
|
||||
|
||||
var/obj/machinery/exonet_node/E = get_exonet_node()
|
||||
if(!E || !E.on || !E.allow_external_communicators)
|
||||
to_chat(src, "<span class='danger'>The Exonet node at telecommunications is down at the moment, or is actively blocking you, \
|
||||
so your call can't go through.</span>")
|
||||
to_chat(src, span_danger("The Exonet node at telecommunications is down at the moment, or is actively blocking you, \
|
||||
so your call can't go through."))
|
||||
return
|
||||
|
||||
var/list/choices = list()
|
||||
|
||||
@@ -395,7 +395,7 @@
|
||||
user.visible_message(span_warning("\The [user] begins to place [src] on [H]'s chest."), span_warning("You begin to place [src] on [H]'s chest..."))
|
||||
if(!do_after(user, 30, H))
|
||||
return
|
||||
user.visible_message("<b>\The [user]</b> places [src] on [H]'s chest.", span_warning("You place [src] on [H]'s chest."))
|
||||
user.visible_message(span_infoplain(span_bold("\The [user]") + " places [src] on [H]'s chest."), span_warning("You place [src] on [H]'s chest."))
|
||||
playsound(src, 'sound/machines/defib_charge.ogg', 50, 0)
|
||||
|
||||
var/error = can_defib(H)
|
||||
@@ -472,7 +472,7 @@
|
||||
playsound(src, 'sound/machines/defib_failed.ogg', 50, 0)
|
||||
return
|
||||
|
||||
user.visible_message(span_danger("<i>\The [user] shocks [H] with \the [src]!</i>"), span_warning("You shock [H] with \the [src]!"))
|
||||
user.visible_message(span_danger(span_italics("\The [user] shocks [H] with \the [src]!")), span_warning("You shock [H] with \the [src]!"))
|
||||
playsound(src, 'sound/machines/defib_zap.ogg', 100, 1, -1)
|
||||
playsound(src, 'sound/weapons/Egloves.ogg', 100, 1, -1)
|
||||
set_cooldown(cooldowntime)
|
||||
@@ -533,7 +533,7 @@
|
||||
H.setBrainLoss(brain_damage)
|
||||
|
||||
/obj/item/shockpaddles/proc/make_announcement(var/message, var/msg_class)
|
||||
audible_message("<b>\The [src]</b> [message]", "\The [src] vibrates slightly.", runemessage = "buzz")
|
||||
audible_message(span_bold(span_info("\The [src]") + " [message]"), span_info("\The [src] vibrates slightly."), runemessage = "buzz")
|
||||
|
||||
/obj/item/shockpaddles/emag_act(mob/user)
|
||||
if(safety)
|
||||
@@ -617,7 +617,7 @@
|
||||
return (base_unit.bcell && base_unit.bcell.checked_use(charge_amt))
|
||||
|
||||
/obj/item/shockpaddles/linked/make_announcement(var/message, var/msg_class)
|
||||
base_unit.audible_message("<b>\The [base_unit]</b> [message]", "\The [base_unit] vibrates slightly.")
|
||||
base_unit.audible_message(span_infoplain(span_bold("\The [base_unit]") + " [message]"), span_info("\The [base_unit] vibrates slightly."))
|
||||
|
||||
/*
|
||||
Standalone Shockpaddles
|
||||
|
||||
@@ -77,11 +77,11 @@
|
||||
ghostjoin = FALSE
|
||||
ghostjoin_icon()
|
||||
if(capture_caught)
|
||||
to_chat(src, span_notice("You are bound to [revivedby], follow their commands within reason and to the best of your abilities, and avoid betraying or abandoning them.</span><span class= warning> You are allied with [revivedby]. Do not attack anyone for no reason. Of course, you may do scenes as you like, but you must still respect preferences."))
|
||||
to_chat(src, span_notice("You are bound to [revivedby], follow their commands within reason and to the best of your abilities, and avoid betraying or abandoning them.") + " " + span_warning("You are allied with [revivedby]. Do not attack anyone for no reason. Of course, you may do scenes as you like, but you must still respect preferences."))
|
||||
visible_message("[src]'s eyes flicker with a curious intelligence.", runemessage = "looks around")
|
||||
return
|
||||
if(revivedby != "no one")
|
||||
to_chat(src, span_notice("Where once your life had been rough and scary, you have been assisted by [revivedby]. They seem to be the reason you are on your feet again... so perhaps you should help them out.</span> <span class= warning> Being as you were revived, you are allied with the station. Do not attack anyone unless they are threatening the one who revived you. And try to listen to the one who revived you within reason. Of course, you may do scenes as you like, but you must still respect preferences."))
|
||||
to_chat(src, span_notice("Where once your life had been rough and scary, you have been assisted by [revivedby]. They seem to be the reason you are on your feet again... so perhaps you should help them out.") + " " + span_warning("Being as you were revived, you are allied with the station. Do not attack anyone unless they are threatening the one who revived you. And try to listen to the one who revived you within reason. Of course, you may do scenes as you like, but you must still respect preferences."))
|
||||
visible_message("[src]'s eyes flicker with a curious intelligence.", runemessage = "looks around")
|
||||
|
||||
/// Evaluate someone for being allowed to join as this mob from being a ghost
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
if(repairing)
|
||||
to_chat(user, span_notice("\The [src] is already being repaired!"))
|
||||
return
|
||||
user.visible_message("<b>\The [user]</b> starts trying to repair \the [src]'s bulb.")
|
||||
user.visible_message(span_infoplain(span_bold("\The [user]") + " starts trying to repair \the [src]'s bulb."))
|
||||
repairing = TRUE
|
||||
if(do_after(user, (40 SECONDS + rand(0, 20 SECONDS)) * W.toolspeed) && can_repair)
|
||||
if(prob(30))
|
||||
@@ -54,7 +54,7 @@
|
||||
update_icon()
|
||||
playsound(src, W.usesound, 50, 1)
|
||||
else
|
||||
user.visible_message("<b>\The [user]</b> fails to repair \the [src].")
|
||||
user.visible_message(span_infoplain(span_bold("\The [user]") + " fails to repair \the [src]."))
|
||||
repairing = FALSE
|
||||
else
|
||||
..()
|
||||
@@ -141,7 +141,7 @@
|
||||
else if(!charge_only) //can only use it 10 times a minute, unless it runs purely on charge.
|
||||
if(user)
|
||||
update_icon()
|
||||
to_chat(user, span_warning("<i>click</i>"))
|
||||
to_chat(user, span_warning(span_italics("click")))
|
||||
playsound(src, 'sound/weapons/empty.ogg', 80, 1)
|
||||
return FALSE
|
||||
else if(battery && battery.checked_use(charge_cost + (round(charge_cost / 4) * max(0, times_used - max_flashes)))) // Using over your maximum flashes starts taking more charge per added flash.
|
||||
|
||||
@@ -128,13 +128,13 @@
|
||||
if(H.species.vision_organ)
|
||||
vision = H.internal_organs_by_name[H.species.vision_organ]
|
||||
if(!vision)
|
||||
user.visible_message("<b>\The [user]</b> directs [src] at [M]'s face.", \
|
||||
user.visible_message(span_infoplain(span_bold("\The [user]") + " directs [src] at [M]'s face."), \
|
||||
span_notice("You direct [src] at [M]'s face."))
|
||||
to_chat(user, span_warning("You can't find any [H.species.vision_organ ? H.species.vision_organ : "eyes"] on [H]!"))
|
||||
user.setClickCooldown(user.get_attack_speed(src))
|
||||
return
|
||||
|
||||
user.visible_message("<b>\The [user]</b> directs [src] to [M]'s eyes.", \
|
||||
user.visible_message(span_infoplain(span_bold("\The [user]") + " directs [src] to [M]'s eyes."), \
|
||||
span_notice("You direct [src] to [M]'s eyes."))
|
||||
if(H != user) //can't look into your own eyes buster
|
||||
if(M.stat == DEAD || M.blinded) //mob is dead or fully blind
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
to_chat(user, span_warning("You are already hacking!"))
|
||||
return 0
|
||||
if(!is_type_in_list(target, supported_types))
|
||||
to_chat(user, "[icon2html(src, user.client)] <span class='warning'>Unable to hack this target, invalid target type.</span>")
|
||||
to_chat(user, "[icon2html(src, user.client)] " + span_warning("Unable to hack this target, invalid target type."))
|
||||
return 0
|
||||
|
||||
if(istype(target, /obj/structure/closet/crate/secure))
|
||||
@@ -103,7 +103,7 @@
|
||||
if(istype(target, /obj/machinery/door/airlock))
|
||||
var/obj/machinery/door/airlock/D = target
|
||||
if(D.security_level > max_level)
|
||||
to_chat(user, "[icon2html(src, user.client)] <span class='warning'>Target's electronic security is too complex.</span>")
|
||||
to_chat(user, "[icon2html(src, user.client)] " + span_warning("Target's electronic security is too complex."))
|
||||
return 0
|
||||
|
||||
var/found = known_targets.Find(D)
|
||||
|
||||
@@ -35,12 +35,12 @@
|
||||
if(emagged)
|
||||
if(insults)
|
||||
var/insult = pick(insultmsg)
|
||||
user.audible_message("<B>[user.GetVoice()]</B>[user.GetAltName()] broadcasts, <FONT size=3>\"[insult]\"</FONT>", runemessage = insult)
|
||||
user.audible_message(span_infoplain(span_bold("[user.GetVoice()]") + "[user.GetAltName()] broadcasts, " + span_large("\"[insult]\"")), runemessage = insult)
|
||||
insults--
|
||||
else
|
||||
to_chat(user, span_warning("*BZZZZzzzzzt*"))
|
||||
else
|
||||
user.audible_message("<B>[user.GetVoice()]</B>[user.GetAltName()] broadcasts, <FONT size=3>\"[message]\"</FONT>", runemessage = message)
|
||||
user.audible_message(span_infoplain(span_bold("[user.GetVoice()]") + "[user.GetAltName()] broadcasts, " + span_large("\"[message]\"")), runemessage = message)
|
||||
|
||||
/obj/item/megaphone/attack_self(var/mob/living/user)
|
||||
var/message = sanitize(tgui_input_text(user, "Shout a message?", "Megaphone", null))
|
||||
@@ -136,7 +136,7 @@
|
||||
if(emagged)
|
||||
if(insults)
|
||||
var/insult = pick(insultmsg)
|
||||
user.audible_message("<B>[user.GetVoice()]</B>[user.GetAltName()] broadcasts, <FONT size=[broadcast_size] face='[broadcast_font]' color='[broadcast_color]'>\"[insult]\"</FONT>", runemessage = insult)
|
||||
user.audible_message(span_bold("[user.GetVoice()]") + "[user.GetAltName()] broadcasts, <FONT size=[broadcast_size] face='[broadcast_font]' color='[broadcast_color]'>\"[insult]\"</FONT>", runemessage = insult)
|
||||
if(broadcast_size >= 11)
|
||||
var/turf/T = get_turf(user)
|
||||
playsound(src, 'sound/items/AirHorn.ogg', 100, 1)
|
||||
@@ -165,4 +165,4 @@
|
||||
qdel(src)
|
||||
return
|
||||
else
|
||||
user.audible_message("<B>[user.GetVoice()]</B>[user.GetAltName()] broadcasts, <FONT size=[broadcast_size] face='[broadcast_font]' color='[broadcast_color]'>\"[message]\"</FONT>", runemessage = message)
|
||||
user.audible_message(span_bold("[user.GetVoice()]") + "[user.GetAltName()] broadcasts, <FONT size=[broadcast_size] face='[broadcast_font]' color='[broadcast_color]'>\"[message]\"</FONT>", runemessage = message)
|
||||
|
||||
@@ -52,7 +52,7 @@
|
||||
|
||||
playsound(src, O.usesound, 100, 1)
|
||||
|
||||
user.visible_message("<b>\The [user]</b> opens \the [src] and modifies \the [O].",span_notice("You open \the [src] and modify \the [O]."))
|
||||
user.visible_message(span_infoplain(span_bold("\The [user]") + " opens \the [src] and modifies \the [O]."),span_notice("You open \the [src] and modify \the [O]."))
|
||||
|
||||
I.refit_for_species(target_species)
|
||||
|
||||
|
||||
@@ -277,7 +277,7 @@ GLOBAL_LIST_BOILERPLATE(all_pai_cards, /obj/item/paicard)
|
||||
"}
|
||||
dat += "<br>"
|
||||
if(radio)
|
||||
dat += "<b>Radio Uplink</b>"
|
||||
dat += span_bold("Radio Uplink")
|
||||
dat += {"
|
||||
<table class="request">
|
||||
<tr>
|
||||
@@ -296,7 +296,7 @@ GLOBAL_LIST_BOILERPLATE(all_pai_cards, /obj/item/paicard)
|
||||
<br>
|
||||
"}
|
||||
else //</font></font>
|
||||
dat += "<b>Radio Uplink</b><br>"
|
||||
dat += span_bold("Radio Uplink") + "<br>"
|
||||
dat += "<font color=red><i>Radio firmware not loaded. Please install a pAI personality to load firmware.</i></font><br>"
|
||||
/* - //A button for instantly deleting people from the game is lame, especially considering that pAIs on our server tend to activate without a master.
|
||||
dat += {"
|
||||
@@ -308,7 +308,7 @@ GLOBAL_LIST_BOILERPLATE(all_pai_cards, /obj/item/paicard)
|
||||
"}
|
||||
*/
|
||||
if(screen_msg)
|
||||
dat += "<b>Message from [pai.name]</b><br>[screen_msg]"
|
||||
dat += span_bold("Message from [pai.name]") + "<br>[screen_msg]"
|
||||
else
|
||||
if(looking_for_personality)
|
||||
dat += {"
|
||||
|
||||
@@ -126,11 +126,11 @@
|
||||
s.start()
|
||||
shield_active = 0
|
||||
if(bcell.charge_delay) //It WILL blow up soon. Downside of self-charging cells.
|
||||
to_chat(src.loc, "<span class='critical'>Your shield generator sparks and suddenly goes down! A warning message pops up on screen: \
|
||||
'WARNING, INTERNAL CELL MELTDOWN IMMINENT. TIME TILL EXPLOSION: [bcell.charge_delay/10] SECONDS. DISCARD UNIT IMMEDIATELY!'</span>")
|
||||
to_chat(src.loc, span_critical("Your shield generator sparks and suddenly goes down! A warning message pops up on screen: \
|
||||
'WARNING, INTERNAL CELL MELTDOWN IMMINENT. TIME TILL EXPLOSION: [bcell.charge_delay/10] SECONDS. DISCARD UNIT IMMEDIATELY!'"))
|
||||
else //It won't blow up unless you turn it back on again. Upside of using non-charging cells.
|
||||
to_chat(src.loc, "<span class='critical'>Your shield generator sparks and suddenly goes down! A warning message pops up on screen: \
|
||||
'WARNING, INTERNAL CELL CRITICALLY DAMAGED. REPLACE CELL IMMEDIATELY.'</span>")
|
||||
to_chat(src.loc, span_critical("Your shield generator sparks and suddenly goes down! A warning message pops up on screen: \
|
||||
'WARNING, INTERNAL CELL CRITICALLY DAMAGED. REPLACE CELL IMMEDIATELY.'"))
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
update_icon()
|
||||
else
|
||||
|
||||
@@ -205,10 +205,10 @@
|
||||
/obj/item/radio/intercom/AIAltClick(var/mob/user)
|
||||
if(frequency == AI_FREQ)
|
||||
set_frequency(initial(frequency))
|
||||
to_chat(user, span_notice("\The [src]'s frequency is now set to [span_green("<b>Default</b>")]."))
|
||||
to_chat(user, span_notice("\The [src]'s frequency is now set to [span_green(span_bold("Default"))]."))
|
||||
else
|
||||
set_frequency(AI_FREQ)
|
||||
to_chat(user, span_notice("\The [src]'s frequency is now set to [span_pink("<b>AI Private</b>")]."))
|
||||
to_chat(user, span_notice("\The [src]'s frequency is now set to [span_pink(span_bold("AI Private"))]."))
|
||||
//VOREStation Add End
|
||||
/obj/item/radio/intercom/locked
|
||||
var/locked_frequency
|
||||
|
||||
@@ -72,39 +72,40 @@
|
||||
bloodloss = TRUE
|
||||
|
||||
if(bleeding_external)
|
||||
dat += "<b>Surface bleeding</b> - Bandage immediately or apply brute-damage fixing chemicals (i.e. Bicaridine) if no bandages available.<br>"
|
||||
dat += span_bold("Surface bleeding") + " - Bandage immediately or apply brute-damage fixing chemicals (i.e. Bicaridine) if no bandages available.<br>"
|
||||
if(bleeding_internal)
|
||||
dat += "<b>Internal bleeding</b> - Commence internal vein repair surgery or apply clotting chemicals (i.e. Myelamine).<br>"
|
||||
dat += span_bold("Internal bleeding") + " - Commence internal vein repair surgery or apply clotting chemicals (i.e. Myelamine).<br>"
|
||||
if(M.getOxyLoss())
|
||||
dat += "<b>Suffociation</b> - Give Dexalin or Dexalin Plus. Check for heart or lung damage.<br>"
|
||||
dat += span_bold("Suffociation") + " - Give Dexalin or Dexalin Plus. Check for heart or lung damage.<br>"
|
||||
if(infection)
|
||||
dat += "<b>Infection</b> - Give Spaceacillin. If severe, use Corophizine or overdose on Spaceacillin and monitor until well.<br>"
|
||||
dat += span_bold("Infection") + " - Give Spaceacillin. If severe, use Corophizine or overdose on Spaceacillin and monitor until well.<br>"
|
||||
if(M.getBrainLoss() >= 1)
|
||||
dat += "<b>Brain damage</b> - Commence brain repair surgery, apply Alkysine, or universal organ-repair chemicals. (i.e. Peridaxon).<br>"
|
||||
dat += span_bold("Brain damage") + " - Commence brain repair surgery, apply Alkysine, or universal organ-repair chemicals. (i.e. Peridaxon).<br>"
|
||||
if(M.radiation || M.accumulated_rads)
|
||||
dat += "<b>Radiation</b> - Give Hyronalin or Arithrazine. Monitor for genetic damage.<br>"
|
||||
dat += span_bold("Radiation") + " - Give Hyronalin or Arithrazine. Monitor for genetic damage.<br>"
|
||||
if(organ)
|
||||
dat += "<b>Organ damage</b> - Give Peridaxon. Perform full body scan for targeted organ repair surgery.<br>"
|
||||
dat += span_bold("Organ damage") + " - Give Peridaxon. Perform full body scan for targeted organ repair surgery.<br>"
|
||||
if(bloodloss)
|
||||
dat += "<b>Low blood volume</b> - Commence blood transfusion via IV drip or provide blood-restorative chemicals (e.g.: Copper for zorren and skrell, iron for the rest)."
|
||||
dat += span_bold("Low blood volume") + " - Commence blood transfusion via IV drip or provide blood-restorative chemicals (e.g.: Copper for zorren and skrell, iron for the rest)."
|
||||
if(M.getToxLoss())
|
||||
dat += "<b>Toxins</b> - Give Dylovene or Carthatoline. Vomitting is normal and helpful. Tends to be a symptom of larger issues, such as infection.<br>"
|
||||
dat += span_bold("Toxins") + " - Give Dylovene or Carthatoline. Vomitting is normal and helpful. Tends to be a symptom of larger issues, such as infection.<br>"
|
||||
if(M.getBruteLoss())
|
||||
dat += "<b>Brute trauma</b> - Bandage wounded body part. Give Bicaridine or Vermicetol.<br>"
|
||||
dat += span_bold("Brute trauma") + " - Bandage wounded body part. Give Bicaridine or Vermicetol.<br>"
|
||||
if(M.getFireLoss())
|
||||
dat += "<b>Surface burn</b> - Salve wounded body part in ointment. Give Kelotane or Dermaline. Check for infections.<br>"
|
||||
dat += span_bold("Surface burn") + " - Salve wounded body part in ointment. Give Kelotane or Dermaline. Check for infections.<br>"
|
||||
if(M.getCloneLoss())
|
||||
dat += "<b>Genetic damage</b> - Utilize cryogenic pod with appropriate chemicals (i.e. Cryoxadone) and below 70 K, or give Rezadone.<br>"
|
||||
dat += span_bold("Genetic damage") + " - Utilize cryogenic pod with appropriate chemicals (i.e. Cryoxadone) and below 70 K, or give Rezadone.<br>"
|
||||
if(bone)
|
||||
dat += "<b>Bone fracture</b> - Splint damaged area. Treat with bone repair surgery or Osteodaxon after treating brute damage.<br>"
|
||||
dat += span_bold("Bone fracture") + " - Splint damaged area. Treat with bone repair surgery or Osteodaxon after treating brute damage.<br>"
|
||||
if(M.virus2.len)
|
||||
dat += "<b>Viral infection</b> - Proceed with virology pathogen curing procedures or apply antiviral chemicals (i.e. Corophizine).<br>"
|
||||
dat += span_bold("Viral infection") + " - Proceed with virology pathogen curing procedures or apply antiviral chemicals (i.e. Corophizine).<br>"
|
||||
if(robotparts)
|
||||
dat += "<b>Robotic body parts</b> - Should not be repaired by medical personnel, refer to robotics if damaged."
|
||||
dat += span_bold("Robotic body parts") + " - Should not be repaired by medical personnel, refer to robotics if damaged."
|
||||
|
||||
var/peeb
|
||||
if(dat)
|
||||
peeb +="<span class='notice'><b>GUIDANCE SYSTEM BEGIN</b></span><br>"
|
||||
peeb += span_boldnotice("GUIDANCE SYSTEM BEGIN")
|
||||
peeb +="<br>"
|
||||
peeb += dat
|
||||
peeb += span_notice("For more detailed information about patient condition, use the stationary scanner in medbay.")
|
||||
|
||||
|
||||
@@ -62,38 +62,43 @@
|
||||
|
||||
if (!ishuman(M) || M.isSynthetic())
|
||||
//these sensors are designed for organic life
|
||||
dat += "<span class='notice'>Analyzing Results for ERROR:\n\tOverall Status: ERROR<br>"
|
||||
dat += "\tKey: [span_cyan("Suffocation")]/[span_green("Toxin")]/[span_orange("Burns")]/[span_red("Brute")]<br>"
|
||||
dat += "\tDamage Specifics: [span_cyan("?")] - [span_green("?")] - [span_orange("?")] - [span_red("?")]<br>"
|
||||
dat += "Body Temperature: [M.bodytemperature-T0C]°C ([M.bodytemperature*1.8-459.67]°F)</span><br>"
|
||||
var/analyzed = "Analyzing Results for ERROR:\n\tOverall Status: ERROR<br>"
|
||||
analyzed += "\tKey: [span_cyan("Suffocation")]/[span_green("Toxin")]/[span_orange("Burns")]/[span_red("Brute")]<br>"
|
||||
analyzed += "\tDamage Specifics: [span_cyan("?")] - [span_green("?")] - [span_orange("?")] - [span_red("?")]<br>"
|
||||
analyzed += "Body Temperature: [M.bodytemperature-T0C]°C ([M.bodytemperature*1.8-459.67]°F)"
|
||||
dat += span_notice(analyzed) + "<br>"
|
||||
dat += "[span_warning("Warning: Blood Level ERROR: --% --cl.")] [span_notice("Type: ERROR")]<br>"
|
||||
dat += span_notice("Subject's pulse: [span_red("-- bpm.")]")
|
||||
user.show_message(dat, 1)
|
||||
return
|
||||
|
||||
var/fake_oxy = max(rand(1,40), M.getOxyLoss(), (300 - (M.getToxLoss() + M.getFireLoss() + M.getBruteLoss())))
|
||||
var/OX = M.getOxyLoss() > 50 ? "<b>[M.getOxyLoss()]</b>" : M.getOxyLoss()
|
||||
var/TX = M.getToxLoss() > 50 ? "<b>[M.getToxLoss()]</b>" : M.getToxLoss()
|
||||
var/BU = M.getFireLoss() > 50 ? "<b>[M.getFireLoss()]</b>" : M.getFireLoss()
|
||||
var/BR = M.getBruteLoss() > 50 ? "<b>[M.getBruteLoss()]</b>" : M.getBruteLoss()
|
||||
var/OX = M.getOxyLoss() > 50 ? span_bold("[M.getOxyLoss()]") : M.getOxyLoss()
|
||||
var/TX = M.getToxLoss() > 50 ? span_bold("[M.getToxLoss()]") : M.getToxLoss()
|
||||
var/BU = M.getFireLoss() > 50 ? span_bold("M.getFireLoss()]") : M.getFireLoss()
|
||||
var/BR = M.getBruteLoss() > 50 ? span_bold("[M.getBruteLoss()]") : M.getBruteLoss()
|
||||
var/analyzed_results = ""
|
||||
if(M.status_flags & FAKEDEATH)
|
||||
OX = fake_oxy > 50 ? "<b>[fake_oxy]</b>" : fake_oxy
|
||||
OX = fake_oxy > 50 ? span_bold("[fake_oxy]") : fake_oxy
|
||||
dat += span_notice("Analyzing Results for [M]:")
|
||||
dat += "<br>"
|
||||
dat += span_notice("Overall Status: dead")
|
||||
dat += "<br>"
|
||||
else
|
||||
dat += "<span class='notice'>Analyzing Results for [M]:\n\t Overall Status: [M.stat > 1 ? "dead" : "[round((M.health/M.getMaxHealth())*100) ]% healthy"]<br>"
|
||||
dat += "\tKey: [span_cyan("Suffocation")]/[span_green("Toxin")]/[span_orange("Burns")]/[span_red("Brute")]<br>"
|
||||
dat += "\tDamage Specifics: [span_cyan("[OX]")] - [span_green("[TX]")] - [span_orange("[BU]")] - [span_red("[BR]")]<br>"
|
||||
dat += "Body Temperature: [M.bodytemperature-T0C]°C ([M.bodytemperature*1.8-459.67]°F)</span><br>"
|
||||
analyzed_results += "Analyzing Results for [M]:\n\t Overall Status: [M.stat > 1 ? "dead" : "[round((M.health/M.getMaxHealth())*100) ]% healthy"]<br>"
|
||||
analyzed_results += "\tKey: [span_cyan("Suffocation")]/[span_green("Toxin")]/[span_orange("Burns")]/[span_red("Brute")]<br>"
|
||||
analyzed_results += "\tDamage Specifics: [span_cyan("[OX]")] - [span_green("[TX]")] - [span_orange("[BU]")] - [span_red("[BR]")]<br>"
|
||||
analyzed_results += "Body Temperature: [M.bodytemperature-T0C]°C ([M.bodytemperature*1.8-459.67]°F)<br>"
|
||||
if(!(M.status_flags & FAKEDEATH))
|
||||
analyzed_results = span_notice(analyzed_results)
|
||||
dat += analyzed_results
|
||||
//VOREStation edit/addition starts
|
||||
if(M.timeofdeath && (M.stat == DEAD || (M.status_flags & FAKEDEATH)))
|
||||
dat += span_notice("Time of Death: [worldtime2stationtime(M.timeofdeath)]")
|
||||
dat += "<br>"
|
||||
var/tdelta = round(world.time - M.timeofdeath)
|
||||
if(tdelta < (DEFIB_TIME_LIMIT * 10))
|
||||
dat += span_notice("<b>Subject died [DisplayTimeText(tdelta)] ago - resuscitation may be possible!</b>")
|
||||
dat += span_boldnotice("Subject died [DisplayTimeText(tdelta)] ago - resuscitation may be possible!")
|
||||
dat += "<br>"
|
||||
//VOREStation edit/addition ends
|
||||
if(istype(M, /mob/living/carbon/human) && mode == 1)
|
||||
@@ -106,17 +111,18 @@
|
||||
if(org.robotic >= ORGAN_ROBOT)
|
||||
continue
|
||||
else
|
||||
dat += "<span class='notice'> [capitalize(org.name)]: [(org.brute_dam > 0) ? span_warning("[org.brute_dam]") : 0]"
|
||||
dat += "[(org.status & ORGAN_BLEEDING)?span_danger("\[Bleeding\]"):""] - "
|
||||
dat += "[(org.burn_dam > 0) ? "[span_orange("[org.burn_dam]")]" : 0]</span><br>"
|
||||
var/our_damage = " [capitalize(org.name)]: [(org.brute_dam > 0) ? span_warning("[org.brute_dam]") : 0]"
|
||||
our_damage += "[(org.status & ORGAN_BLEEDING)?span_danger("\[Bleeding\]"):""] - "
|
||||
our_damage += "[(org.burn_dam > 0) ? "[span_orange("[org.burn_dam]")]" : 0]"
|
||||
dat += span_notice(our_damage) + "<br>"
|
||||
else
|
||||
dat += span_notice(" Limbs are OK.")
|
||||
dat += "<br>"
|
||||
|
||||
OX = M.getOxyLoss() > 50 ? "[span_cyan("<b>Severe oxygen deprivation detected</b>")]" : "Subject bloodstream oxygen level normal"
|
||||
TX = M.getToxLoss() > 50 ? "[span_green("<b>Dangerous amount of toxins detected</b>")]" : "Subject bloodstream toxin level minimal"
|
||||
BU = M.getFireLoss() > 50 ? "[span_orange("<b>Severe burn damage detected</b>")]" : "Subject burn injury status O.K"
|
||||
BR = M.getBruteLoss() > 50 ? "[span_red("<b>Severe anatomical damage detected</b>")]" : "Subject brute-force injury status O.K"
|
||||
OX = M.getOxyLoss() > 50 ? "[span_cyan(span_bold("Severe oxygen deprivation detected"))]" : "Subject bloodstream oxygen level normal"
|
||||
TX = M.getToxLoss() > 50 ? "[span_green(span_bold("Dangerous amount of toxins detected"))]" : "Subject bloodstream toxin level minimal"
|
||||
BU = M.getFireLoss() > 50 ? "[span_orange(span_bold("Severe burn damage detected"))]" : "Subject burn injury status O.K"
|
||||
BR = M.getBruteLoss() > 50 ? "[span_red(span_bold("Severe anatomical damage detected"))]" : "Subject brute-force injury status O.K"
|
||||
if(M.status_flags & FAKEDEATH)
|
||||
OX = fake_oxy > 50 ? span_warning("Severe oxygen deprivation detected") : "Subject bloodstream oxygen level normal"
|
||||
dat += "[OX] | [TX] | [BU] | [BR]<br>"
|
||||
@@ -358,10 +364,10 @@
|
||||
var/blood_type = H.dna.b_type
|
||||
var/blood_reagent = H.species.blood_reagents
|
||||
if(blood_volume <= H.species.blood_volume*H.species.blood_level_danger)
|
||||
dat += span_danger("<i>Warning: Blood Level CRITICAL: [blood_percent]% [blood_volume]cl. Type: [blood_type]. Basis: [blood_reagent].</i>")
|
||||
dat += span_danger(span_italics("Warning: Blood Level CRITICAL: [blood_percent]% [blood_volume]cl. Type: [blood_type]. Basis: [blood_reagent]."))
|
||||
dat += "<br>"
|
||||
else if(blood_volume <= H.species.blood_volume*H.species.blood_level_warning)
|
||||
dat += span_danger("<i>Warning: Blood Level VERY LOW: [blood_percent]% [blood_volume]cl. Type: [blood_type]. Basis: [blood_reagent].</i>")
|
||||
dat += span_danger(span_italics("Warning: Blood Level VERY LOW: [blood_percent]% [blood_volume]cl. Type: [blood_type]. Basis: [blood_reagent]."))
|
||||
dat += "<br>"
|
||||
else if(blood_volume <= H.species.blood_volume*H.species.blood_level_safe)
|
||||
dat += span_danger("Warning: Blood Level LOW: [blood_percent]% [blood_volume]cl. Type: [blood_type]. Basis: [blood_reagent].")
|
||||
|
||||
@@ -107,40 +107,40 @@ var/global/mob/living/carbon/human/dummy/mannequin/sleevemate_mob
|
||||
/obj/item/sleevemate/proc/scan_mob(mob/living/carbon/human/H, mob/living/user)
|
||||
var/output = ""
|
||||
|
||||
output += "<br><br><span class='notice'><b>[src.name] Scan Results</b></span><br>"
|
||||
output += "<br><br>" + span_boldnotice("[src.name] Scan Results") + "<br>"
|
||||
|
||||
//Mind name
|
||||
output += "<b>Sleeved Mind:</b> "
|
||||
output += span_bold("Sleeved Mind:") + " "
|
||||
if(H.mind)
|
||||
output += "[H.mind.name]<br>"
|
||||
else
|
||||
output += "<span class='warning'>Unknown/None</span><br>"
|
||||
output += span_warning("Unknown/None") + "<br>"
|
||||
|
||||
//Mind status
|
||||
output += "<b>Mind Status:</b> "
|
||||
output += span_bold("Mind Status:") + " "
|
||||
if(H.client)
|
||||
output += "Healthy<br>"
|
||||
else
|
||||
output += "Space Sleep Disorder<br>"
|
||||
|
||||
//Body status
|
||||
output += "<b>Sleeve Status:</b> "
|
||||
output += span_bold("Sleeve Status:") + " "
|
||||
switch(H.stat)
|
||||
if(CONSCIOUS)
|
||||
output += "Alive<br>"
|
||||
if(UNCONSCIOUS)
|
||||
output += "Unconscious<br>"
|
||||
if(DEAD)
|
||||
output += "<span class='warning'>Deceased</span><br>"
|
||||
output += span_warning("Deceased") + "<br>"
|
||||
else
|
||||
output += "<span class='warning'>Unknown</span><br>"
|
||||
output += span_warning("Unknown") + "<br>"
|
||||
|
||||
//Mind/body comparison
|
||||
output += "<b>Sleeve Pair:</b> "
|
||||
output += span_bold("Sleeve Pair:")
|
||||
if(!H.ckey)
|
||||
output += "<span class='warning'>No mind in that body</span> [stored_mind != null ? "\[<a href='?src=\ref[src];target=\ref[H];mindupload=1'>Upload</a>\]" : null]<br>"
|
||||
output += span_warning("No mind in that body") + " [stored_mind != null ? "\[<a href='?src=\ref[src];target=\ref[H];mindupload=1'>Upload</a>\]" : null]<br>"
|
||||
else if(H.mind && ckey(H.mind.key) != H.ckey)
|
||||
output += "<span class='warning'>May not be correct body</span><br>"
|
||||
output += span_warning("May not be correct body") + "<br>"
|
||||
else if(H.mind && ckey(H.mind.key) == H.ckey)
|
||||
output += "Appears to be correct mind in body<br>"
|
||||
else
|
||||
@@ -148,29 +148,29 @@ var/global/mob/living/carbon/human/dummy/mannequin/sleevemate_mob
|
||||
|
||||
//Actions
|
||||
output += "<br><b>-- Possible Actions --</b><br>"
|
||||
output += "<b>Mind-Scan (One Time): </b>\[<a href='?src=\ref[src];target=\ref[H];mindscan=1'>Perform</a>\]<br>"
|
||||
output += "<b>Body-Scan (One Time): </b>\[<a href='?src=\ref[src];target=\ref[H];bodyscan=1'>Perform</a>\]<br>"
|
||||
output += span_bold("Mind-Scan (One Time): ") + "\[<a href='?src=\ref[src];target=\ref[H];mindscan=1'>Perform</a>\]<br>"
|
||||
output += span_bold("Body-Scan (One Time): ") + "\[<a href='?src=\ref[src];target=\ref[H];bodyscan=1'>Perform</a>\]<br>"
|
||||
|
||||
//Saving a mind
|
||||
output += "<b>Store Full Mind: </b>"
|
||||
output += span_bold("Store Full Mind:") + " "
|
||||
if(stored_mind)
|
||||
output += "<span class='notice'>Already Stored</span> ([stored_mind.name])<br>"
|
||||
output += span_notice("Already Stored") + " ([stored_mind.name])<br>"
|
||||
else if(H.mind)
|
||||
output += "\[<a href='?src=\ref[src];target=\ref[H];mindsteal=1'>Perform</a>\]<br>"
|
||||
else
|
||||
output += "<span class='warning'>Unable</span><br>"
|
||||
output += span_warning("Unable") + "<br>"
|
||||
|
||||
//Soulcatcher transfer
|
||||
if(H.nif)
|
||||
var/datum/nifsoft/soulcatcher/SC = H.nif.imp_check(NIF_SOULCATCHER)
|
||||
if(SC)
|
||||
output += "<br>"
|
||||
output += "<b>Soulcatcher detected ([SC.brainmobs.len] minds)</b><br>"
|
||||
output += span_bold("Soulcatcher detected ([SC.brainmobs.len] minds)") + "<br>"
|
||||
for(var/mob/living/carbon/brain/caught_soul/mind in SC.brainmobs)
|
||||
output += "<i>[mind.name]: </i> [mind.transient == FALSE ? "\[<a href='?src=\ref[src];target=\ref[H];mindrelease=[mind.name]'>Load</a>\]" : span_warning("Incompatible")]<br>"
|
||||
|
||||
if(stored_mind)
|
||||
output += "<b>Store in Soulcatcher: </b>\[<a href='?src=\ref[src];target=\ref[H];mindput=1'>Perform</a>\]<br>"
|
||||
output += span_bold("Store in Soulcatcher: ") + "\[<a href='?src=\ref[src];target=\ref[H];mindput=1'>Perform</a>\]<br>"
|
||||
|
||||
to_chat(user,output)
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
|
||||
/obj/item/slime_scanner/attack(mob/living/M as mob, mob/living/user as mob)
|
||||
if(!istype(M, /mob/living/simple_mob/slime/xenobio))
|
||||
to_chat(user, "<B>This device can only scan lab-grown slimes!</B>")
|
||||
to_chat(user, span_infoplain(span_bold("This device can only scan lab-grown slimes!")))
|
||||
return
|
||||
var/mob/living/simple_mob/slime/xenobio/S = M
|
||||
user.show_message("Slime scan results:<br>[S.slime_color] [S.is_adult ? "adult" : "baby"] slime<br>Health: [S.health]<br>Mutation Probability: [S.mutation_chance]")
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
/obj/item/camerabug/attack_self(mob/user)
|
||||
if(user.a_intent == I_HURT)
|
||||
to_chat(user, span_notice("You crush the [src] under your foot, breaking it."))
|
||||
visible_message("[user.name] crushes the [src] under their foot, breaking it!</span>")
|
||||
visible_message(span_notice("[user.name] crushes the [src] under their foot, breaking it!"))
|
||||
new brokentype(get_turf(src))
|
||||
spawn(0)
|
||||
qdel(src)
|
||||
@@ -44,7 +44,7 @@
|
||||
linkedmonitor = null
|
||||
qdel(camera)
|
||||
camera = new camtype(src)
|
||||
to_chat(usr, "<span class='notice'>You turn the [src] off and on again, delinking it from any monitors.")
|
||||
to_chat(usr, span_notice("You turn the [src] off and on again, delinking it from any monitors."))
|
||||
|
||||
/obj/item/brokenbug
|
||||
name = "broken mobile camera pod"
|
||||
|
||||
@@ -262,13 +262,13 @@
|
||||
var/playedmessage = mytape.storedinfo[i]
|
||||
if (findtextEx(playedmessage,"*",1,2)) //remove marker for action sounds
|
||||
playedmessage = copytext(playedmessage,2)
|
||||
T.audible_message(span_maroon("<B>Tape Recorder</B>: [playedmessage]"), runemessage = playedmessage)
|
||||
T.audible_message(span_maroon(span_bold("Tape Recorder") + ": [playedmessage]"), runemessage = playedmessage)
|
||||
|
||||
if(mytape.storedinfo.len < i+1)
|
||||
playsleepseconds = 1
|
||||
sleep(10)
|
||||
T = get_turf(src)
|
||||
T.audible_message(span_maroon("<B>Tape Recorder</B>: End of recording."), runemessage = "click")
|
||||
T.audible_message(span_maroon(span_bold("Tape Recorder") + ": End of recording."), runemessage = "click")
|
||||
break
|
||||
else
|
||||
playsleepseconds = mytape.timestamp[i+1] - mytape.timestamp[i]
|
||||
@@ -276,7 +276,7 @@
|
||||
if(playsleepseconds > 14)
|
||||
sleep(10)
|
||||
T = get_turf(src)
|
||||
T.audible_message(span_maroon("<B>Tape Recorder</B>: Skipping [playsleepseconds] seconds of silence"), runemessage = "tape winding")
|
||||
T.audible_message(span_maroon(span_bold("Tape Recorder") + ": Skipping [playsleepseconds] seconds of silence"), runemessage = "tape winding")
|
||||
playsleepseconds = 1
|
||||
sleep(10 * playsleepseconds)
|
||||
|
||||
@@ -286,19 +286,19 @@
|
||||
|
||||
if(emagged)
|
||||
var/turf/T = get_turf(src)
|
||||
T.audible_message(span_maroon("<B>Tape Recorder</B>: This tape recorder will self-destruct in... Five."), runemessage = "beep beep")
|
||||
T.audible_message(span_maroon(span_bold("Tape Recorder") + ": This tape recorder will self-destruct in... Five."), runemessage = "beep beep")
|
||||
sleep(10)
|
||||
T = get_turf(src)
|
||||
T.audible_message(span_maroon("<B>Tape Recorder</B>: Four."))
|
||||
T.audible_message(span_maroon(span_bold("Tape Recorder") + ": Four."))
|
||||
sleep(10)
|
||||
T = get_turf(src)
|
||||
T.audible_message(span_maroon("<B>Tape Recorder</B>: Three."))
|
||||
T.audible_message(span_maroon(span_bold("Tape Recorder") + ": Three."))
|
||||
sleep(10)
|
||||
T = get_turf(src)
|
||||
T.audible_message(span_maroon("<B>Tape Recorder</B>: Two."))
|
||||
T.audible_message(span_maroon(span_bold("Tape Recorder") + ": Two."))
|
||||
sleep(10)
|
||||
T = get_turf(src)
|
||||
T.audible_message(span_maroon("<B>Tape Recorder</B>: One."))
|
||||
T.audible_message(span_maroon(span_bold("Tape Recorder") + ": One."))
|
||||
sleep(10)
|
||||
explode()
|
||||
|
||||
@@ -327,7 +327,7 @@
|
||||
|
||||
to_chat(usr, span_notice("Transcript printed."))
|
||||
var/obj/item/paper/P = new /obj/item/paper(get_turf(src))
|
||||
var/t1 = "<B>Transcript:</B><BR><BR>"
|
||||
var/t1 = span_bold("Transcript:") + "<BR><BR>"
|
||||
for(var/i=1,mytape.storedinfo.len >= i,i++)
|
||||
var/printedmessage = mytape.storedinfo[i]
|
||||
if (findtextEx(printedmessage,"*",1,2)) //replace action sounds
|
||||
|
||||
@@ -14,7 +14,7 @@
|
||||
if(last_print + print_cooldown <= world.time)
|
||||
print_a_ticket(user)
|
||||
else
|
||||
to_chat(user, "<span class = 'warning'>\The [src] is not ready to print another ticket yet.</span>")
|
||||
to_chat(user, span_warning("\The [src] is not ready to print another ticket yet."))
|
||||
|
||||
/obj/item/ticket_printer/proc/print_a_ticket(mob/user)
|
||||
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
if(!L.say_understands(null, langset))
|
||||
new_message = langset.scramble(new_message)
|
||||
|
||||
to_chat(L, span_filter_say("<i><b>[src]</b> translates, </i>\"<span class='[langset.colour]'>[new_message]</span>\""))
|
||||
to_chat(L, span_filter_say(span_italics(span_bold("[src]") + "translates, ") + " \"<span class='[langset.colour]'>[new_message]</span>\""))
|
||||
|
||||
/obj/item/universal_translator/proc/user_understands(mob/M, mob/living/L, list/message_pieces)
|
||||
for(var/datum/multilingual_say_piece/S in message_pieces)
|
||||
|
||||
@@ -123,7 +123,7 @@
|
||||
. = ..()
|
||||
if(camera.status && !isturf(target))
|
||||
show_tvs(target)
|
||||
user.visible_message("<b>[user]</b> aims [src] at [target].", "You aim [src] at [target].")
|
||||
user.visible_message(span_infoplain(span_bold("[user]") + " aims [src] at [target]."), span_info("You aim [src] at [target]."))
|
||||
if(user.machine == src)
|
||||
show_ui(user) // refresh the UI
|
||||
|
||||
|
||||
Reference in New Issue
Block a user