Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Makes global narration use tgui inputs and look pretty. #5057

Closed
wants to merge 11 commits into from
8 changes: 8 additions & 0 deletions code/__DEFINES/chat.dm
Original file line number Diff line number Diff line change
Expand Up @@ -23,3 +23,11 @@

/// Adds a generic box around whatever message you're sending in chat. Really makes things stand out.
#define examine_block(str) ("<div class='examine_block'>" + str + "</div>")

// Role Display
#define role_header(str) ("<div class='role_header'><p>" + str + "</p></div>")
#define role_body(str) ("<div class='role_body'><p>" + str + "</p></div>")

// Global Narrate
#define narrate_head(str) ("<div class='narrate_head'>" + str + "</div>")
#define narrate_body(str) ("<div class='narrate_body'>" + str + "</div>")
9 changes: 1 addition & 8 deletions code/controllers/subsystem/ticker.dm
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,7 @@ SUBSYSTEM_DEF(ticker)
save_mode(CONFIG_GET(string/gamemode_default))

if(GLOB.round_statistics)
to_chat_spaced(world, html = FONT_SIZE_BIG(SPAN_ROLE_BODY("<B>Welcome to [GLOB.round_statistics.round_name]</B>")))
to_chat(world, html = role_header("Welcome to [GLOB.round_statistics.round_name]"))

GLOB.supply_controller.process() //Start the supply shuttle regenerating points -- TLE

Expand Down Expand Up @@ -415,14 +415,11 @@ SUBSYSTEM_DEF(ticker)
qdel(player)

/datum/controller/subsystem/ticker/proc/equip_characters()
var/captainless=1
if(mode && istype(mode,/datum/game_mode/huntergames)) // || istype(mode,/datum/game_mode/whiskey_outpost)
return

for(var/mob/living/carbon/human/player in GLOB.human_mob_list)
if(player.mind)
if(player.job == JOB_CO)
captainless = FALSE
if(player.job)
GLOB.RoleAuthority.equip_role(player, GLOB.RoleAuthority.roles_by_name[player.job], late_join = FALSE)
EquipCustomItems(player)
Expand All @@ -432,10 +429,6 @@ SUBSYSTEM_DEF(ticker)
msg_admin_niche("NEW PLAYER: <b>[key_name(player, 1, 1, 0)]</b>. IP: [player.lastKnownIP], CID: [player.computer_id]")
if(C.player_data && C.player_data.playtime_loaded && ((round(C.get_total_human_playtime() DECISECONDS_TO_HOURS, 0.1)) <= 5))
msg_sea(("NEW PLAYER: <b>[key_name(player, 0, 1, 0)]</b> only has [(round(C.get_total_human_playtime() DECISECONDS_TO_HOURS, 0.1))] hours as a human. Current role: [get_actual_job_name(player)] - Current location: [get_area(player)]"), TRUE)
if(captainless)
for(var/mob/M in GLOB.player_list)
if(!istype(M,/mob/new_player))
to_chat(M, "Marine commanding officer position not forced on anyone.")

/datum/controller/subsystem/ticker/proc/send_tip_of_the_round()
var/message
Expand Down
13 changes: 6 additions & 7 deletions code/datums/emergency_calls/big_game_hunter.dm
Original file line number Diff line number Diff line change
Expand Up @@ -23,10 +23,9 @@

arm_equipment(H, /datum/equipment_preset/fun/van_bandolier, FALSE, TRUE)

to_chat(H, SPAN_ROLE_HEADER("You are a big game hunter!"))
to_chat(H, SPAN_ROLE_BODY("You've taken a shot at every beast of the earth, every fowl of the air, and everything that creepeth upon the earth. Mundane beasts \
now bore you (and there may be some minor poaching charges after the Misunderstanding) and so you have traveled to this backwater sector to hunt the most dangerous \
game wherever you can find it. You've heard grisly tales of murderous xenomorphs, triggerhappy soldiers, and bloodthirsty alien hunters (who sound like they have \
the right idea, not like those ghastly Arcturians at all!) but so far all you've potted has been penny-ante stuff. \n\n Whether you recruit the natives for \
porters, beaters, and guides, or hunt them for sport, is entirely up to you. They'll point you at something excellent if they know what's good for them.\n\n "))
addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), H, SPAN_BOLD("Objectives: [objectives]")), 1 SECONDS)
to_chat(H, role_header("You are a big game hunter!"))
to_chat(H, role_body("You've taken a shot at every beast of the earth, every fowl of the air, and everything that creepeth upon the earth. Mundane beasts now bore you (and there may be some minor poaching charges after the Misunderstanding) and so you have traveled to this backwater sector to hunt the most dangerous game wherever you can find it. You've heard grisly tales of murderous xenomorphs, triggerhappy soldiers, and bloodthirsty alien hunters (who sound like they have the right idea, not like those ghastl Arcturians at all!) but so far all you've potted has been penny-ante stuff."))
to_chat(H, role_body("Whether you recruit the natives for porters, beaters, and guides, or hunt them for sport, is entirely up to you. They'll point you at something excellent if they know what's good for them."))
sleep(1 SECONDS)
to_chat(H, role_header("Your objectives are:"))
to_chat(H, role_body("[objectives]"))
24 changes: 14 additions & 10 deletions code/datums/emergency_calls/cbrn.dm
Original file line number Diff line number Diff line change
Expand Up @@ -19,24 +19,26 @@
if(!leader && HAS_FLAG(mob.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(mob.client, JOB_SQUAD_LEADER, time_required_for_job))
leader = mob
arm_equipment(mob, /datum/equipment_preset/uscm/cbrn/leader, TRUE, TRUE)
to_chat(mob, SPAN_ROLE_HEADER("You are the CBRN Fireteam Leader!"))
to_chat(mob, role_header("You are the CBRN Fireteam Leader!"))

else if(medics < max_medics && HAS_FLAG(mob.client.prefs.toggles_ert, PLAY_MEDIC) && check_timelock(mob.client, JOB_SQUAD_MEDIC, time_required_for_job))
medics++
arm_equipment(mob, /datum/equipment_preset/uscm/cbrn/medic, TRUE, TRUE)
to_chat(mob, SPAN_ROLE_HEADER("You are the CBRN Squad Medic!"))
to_chat(mob, role_header("You are the CBRN Squad Medic!"))

else if(engineers < max_engineers && HAS_FLAG(mob.client.prefs.toggles_ert, PLAY_ENGINEER) && check_timelock(mob.client, JOB_SQUAD_ENGI, time_required_for_job))
engineers++
arm_equipment(mob, /datum/equipment_preset/uscm/cbrn/engineer, TRUE, TRUE)
to_chat(mob, SPAN_ROLE_HEADER("You are the CBRN Squad Engineer!"))
to_chat(mob, role_header("You are the CBRN Squad Engineer!"))

else
arm_equipment(mob, /datum/equipment_preset/uscm/cbrn/standard, TRUE, TRUE)
to_chat(mob, SPAN_ROLE_HEADER("You are a CBRN Squad Rifleman!"))
to_chat(mob, role_header("You are a CBRN Squad Rifleman!"))

to_chat(mob, SPAN_ROLE_BODY("You are a member of the USCM's CBRN. The CBRN is a force that specializes in handling chemical, biological, radiological, and nuclear threats."))
addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), mob, SPAN_BOLD("Objectives:</b> [objectives]")), 1 SECONDS)
to_chat(mob, role_body("You are a member of the USCM's CBRN. The CBRN is a force that specializes in handling chemical, biological, radiological, and nuclear threats."))
sleep(1 SECONDS)
to_chat(mob, role_header("Your objectives are:"))
to_chat(mob, role_body("[objectives]"))

/datum/emergency_call/cbrn/ert
name = "CBRN (Distress)"
Expand Down Expand Up @@ -71,10 +73,12 @@
if(!leader && HAS_FLAG(mob.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(mob.client, JOB_SQUAD_LEADER, time_required_for_job))
leader = mob
arm_equipment(mob, /datum/equipment_preset/uscm/cbrn/specialist/lead, TRUE, TRUE)
to_chat(mob, SPAN_ROLE_HEADER("You are the CBRN Specialist Squad Leader!"))
to_chat(mob, role_header("You are the CBRN Specialist Squad Leader!"))
else
arm_equipment(mob, /datum/equipment_preset/uscm/cbrn/specialist, TRUE, TRUE)
to_chat(mob, SPAN_ROLE_HEADER("You are a CBRN Specialist!"))
to_chat(mob, role_header("You are a CBRN Specialist!"))

to_chat(mob, SPAN_ROLE_BODY("You are a member of the USCM's CBRN. The CBRN is a force that specializes in handling chemical, biological, radiological, and nuclear threats."))
addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), mob, SPAN_BOLD("Objectives:</b> [objectives]")), 1 SECONDS)
to_chat(mob, role_body("You are a member of the USCM's CBRN. The CBRN is a force that specializes in handling chemical, biological, radiological, and nuclear threats."))
sleep(1 SECONDS)
to_chat(mob, role_header("Your objectives are:"))
to_chat(mob, role_body("[objectives]"))
45 changes: 23 additions & 22 deletions code/datums/emergency_calls/clf.dm
Original file line number Diff line number Diff line change
Expand Up @@ -15,22 +15,22 @@
if(ishuman_strict(H))
var/message = "[pick(5;"on the UA prison station", 10;"in the LV-624 jungle", 25;"on the farms of LV-771", 25;"in the slums of LV-221", 20;"the red wastes of LV-361", 15;"the icy tundra of LV-571")] to a [pick(50;"poor", 15;"well-off", 35;"average")] family."
var/message_grew = "[pick(20;"the Dust Raiders killed someone close to you in 2181", 20;"you harbor a strong hatred of the United Americas", 10;"you are a wanted criminal in the United Americas", 5;"have UPP sympathies and want to see the UA driven out of the secor", 10;"you believe the USCM occupation will hurt your quality of life", 5;"are a violent person and want to kill someone for the sake of killing", 20;"want the Neroid Sector to be free from outsiders", 10;"your militia was absorbed into the CLF")]"
to_chat(H, SPAN_BOLD("As a native of the Neroid Sector, you joined the CLF because [message_grew]."))
to_chat(H, SPAN_BOLD("You grew up [message] and are considered a terrorist by the UA."))
to_chat(H, role_body("As a native of the Neroid Sector, you joined the CLF because [message_grew]."))
to_chat(H, role_body("You grew up [message] and are considered a terrorist by the UA."))
else
to_chat(H, SPAN_BOLD("You were brought online in an underground CLF workshop, reprogrammed to serve the CLF and fight for their freedom."))
to_chat(H, SPAN_BOLD("Originally, you were programmed with medical and engineering knowledge to assist with building and maintaining colonies."))
to_chat(H, SPAN_BOLD("However, the hackers managed to load combat protocols and install a new directive: Irrational hatred for everything USCM."))
to_chat(H, role_body("You were brought online in an underground CLF workshop, reprogrammed to serve the CLF and fight for their freedom."))
to_chat(H, role_body("Originally, you were programmed with medical and engineering knowledge to assist with building and maintaining colonies."))
to_chat(H, role_body("However, the hackers managed to load combat protocols and install a new directive: Irrational hatred for everything USCM."))

to_chat(H, SPAN_BOLD("The Neroid Sector has largely enjoyed its independence."))
to_chat(H, SPAN_BOLD("Though technically part of the United American frontier, many colonists in the Neroid Sector have enjoyed their freedoms."))
to_chat(H, SPAN_BOLD("In 2172, however, the United Americas moved the USCM Battalion, the 'Dust Raiders', and the battalion flagship, the USS Alistoun, to the Neroid Sector."))
to_chat(H, SPAN_BOLD("The Dust Raiders responded with deadly force, scattering many of the colonists who attempted to fight their occupation."))
to_chat(H, SPAN_BOLD("The Dust Raiders and their flagship, the USS Alistoun eventually withdrew from the sector by the end of the year.</font>"))
to_chat(H, SPAN_BOLD("With the Neroid Sector existing in relative isolation from United America oversight for the last five years, many colonists have considered themselves free from governmental rule."))
to_chat(H, SPAN_BOLD("The year is now [GLOB.game_year]."))
to_chat(H, SPAN_BOLD("The arrival of the USCM Battalion, the Falling Falcons, and their flagship, the [MAIN_SHIP_NAME], have reaffirmed that the United Americas considers the Neroid Sector part of their holdings."))
to_chat(H, SPAN_BOLD("It is up to you and your fellow colonists to make them realize their trespasses. This sector is no longer theirs."))
to_chat(H, role_body("The Neroid Sector has largely enjoyed its independence."))
to_chat(H, role_body("Though technically part of the United American frontier, many colonists in the Neroid Sector have enjoyed their freedoms."))
to_chat(H, role_body("In 2172, however, the United Americas moved the USCM Battalion, the 'Dust Raiders', and the battalion flagship, the USS Alistoun, to the Neroid Sector."))
to_chat(H, role_body("The Dust Raiders responded with deadly force, scattering many of the colonists who attempted to fight their occupation."))
to_chat(H, role_body("The Dust Raiders and their flagship, the USS Alistoun eventually withdrew from the sector by the end of the year.</font>"))
to_chat(H, role_body("With the Neroid Sector existing in relative isolation from United America oversight for the last five years, many colonists have considered themselves free from governmental rule."))
to_chat(H, role_body("The year is now [GLOB.game_year]."))
to_chat(H, role_body("The arrival of the USCM Battalion, the Falling Falcons, and their flagship, the [MAIN_SHIP_NAME], have reaffirmed that the United Americas considers the Neroid Sector part of their holdings."))
to_chat(H, role_body("It is up to you and your fellow colonists to make them realize their trespasses. This sector is no longer theirs."))

/datum/emergency_call/clf/create_member(datum/mind/M, turf/override_spawn_loc)
var/turf/spawn_loc = override_spawn_loc ? override_spawn_loc : get_spawn_point()
Expand All @@ -43,31 +43,32 @@

if(!leader && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_LEADER) && check_timelock(H.client, JOB_SQUAD_LEADER, time_required_for_job))
leader = H
to_chat(H, SPAN_ROLE_HEADER("You are a Cell Leader of the local resistance group, the Colonial Liberation Front!"))
to_chat(H, role_header("You are a Cell Leader of the local resistance group, the Colonial Liberation Front!"))
arm_equipment(H, /datum/equipment_preset/clf/leader, TRUE, TRUE)
else if(synths < max_synths && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_SYNTH) && GLOB.RoleAuthority.roles_whitelist[H.ckey] & WHITELIST_SYNTHETIC)
synths++
to_chat(H, SPAN_ROLE_HEADER("You are a Multi-Purpose Synthetic for the local resistance group, the Colonial Liberation Front!"))
to_chat(H, role_header("You are a Multi-Purpose Synthetic for the local resistance group, the Colonial Liberation Front!"))
arm_equipment(H, /datum/equipment_preset/clf/synth, TRUE, TRUE)
else if(medics < max_medics && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_MEDIC) && check_timelock(H.client, JOB_SQUAD_MEDIC, time_required_for_job))
medics++
to_chat(H, SPAN_ROLE_HEADER("You are a Medic of the local resistance group, the Colonial Liberation Front!"))
to_chat(H, role_header("You are a Medic of the local resistance group, the Colonial Liberation Front!"))
arm_equipment(H, /datum/equipment_preset/clf/medic, TRUE, TRUE)
else if(engineers < max_engineers && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_ENGINEER) && check_timelock(H.client, JOB_SQUAD_ENGI, time_required_for_job))
engineers++
to_chat(H, SPAN_ROLE_HEADER("You are an Engineer of the local resistance group, the Colonial Liberation Front!"))
to_chat(H, role_header("You are an Engineer of the local resistance group, the Colonial Liberation Front!"))
arm_equipment(H, /datum/equipment_preset/clf/engineer, TRUE, TRUE)
else if(heavies < max_heavies && HAS_FLAG(H.client.prefs.toggles_ert, PLAY_HEAVY) && check_timelock(H.client, JOB_SQUAD_SPECIALIST, time_required_for_job))
heavies++
to_chat(H, SPAN_ROLE_HEADER("You are a Specialist of the local resistance group, the Colonial Liberation Front!"))
to_chat(H, role_header("You are a Specialist of the local resistance group, the Colonial Liberation Front!"))
arm_equipment(H, /datum/equipment_preset/clf/specialist, TRUE, TRUE)
else
to_chat(H, SPAN_ROLE_HEADER("You are a Fighter of the local resistance group, the Colonial Liberation Front!"))
to_chat(H, role_header("You are a Fighter of the local resistance group, the Colonial Liberation Front!"))
arm_equipment(H, /datum/equipment_preset/clf/soldier, TRUE, TRUE)
print_backstory(H)

addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), H, SPAN_BOLD("Objectives: [objectives]")), 1 SECONDS)

sleep(1 SECONDS)
to_chat(H, role_header("Your objectives are:"))
to_chat(H, role_body("[objectives]"))

/datum/emergency_call/clf/platoon
name = "Colonial Liberation Front (Platoon)"
Expand Down
Loading
Loading