From 031a41356550edbce96cdce15a99a897c080caee Mon Sep 17 00:00:00 2001 From: ynot01 Date: Mon, 14 Nov 2022 18:22:51 -0500 Subject: [PATCH 1/2] custom report --- code/modules/admin/verbs/one_click_antag.dm | 3 +- code/modules/antagonists/ert/ert.dm | 45 +++++++++++++++++++++ 2 files changed, 47 insertions(+), 1 deletion(-) diff --git a/code/modules/admin/verbs/one_click_antag.dm b/code/modules/admin/verbs/one_click_antag.dm index 10dd710df567..7a01fedbfe71 100644 --- a/code/modules/admin/verbs/one_click_antag.dm +++ b/code/modules/admin/verbs/one_click_antag.dm @@ -581,9 +581,10 @@ ERTOperative.mind.assigned_role = ert_antag.name // Equip uplink - var/obj/item/upl = new ertemplate.uplinktype + var/obj/item/ntuplink/upl = new ertemplate.uplinktype(ERTOperative, ERTOperative.key) if(istype(upl)) ERTOperative.equip_to_slot_or_del(upl, SLOT_IN_BACKPACK) + ert_team.uplink_type = ertemplate.uplinktype // Type path //Logging and cleanup //log_game("[key_name(ERTOperative)] has been selected as an [ert_antag.name]") | yogs - redundant diff --git a/code/modules/antagonists/ert/ert.dm b/code/modules/antagonists/ert/ert.dm index f3420e67fe50..bc4824841079 100644 --- a/code/modules/antagonists/ert/ert.dm +++ b/code/modules/antagonists/ert/ert.dm @@ -2,6 +2,51 @@ /datum/team/ert name = "Emergency Response Team" var/datum/objective/mission //main mission + var/obj/item/ntuplink/uplink_type + +/datum/team/ert/roundend_report() + if(!show_roundend_report) + return + + var/list/report = list() + + report += span_header("[name]:") + report += "The [member_name]s were:" + report += printplayerlist(members) + + var/win = FALSE + if(objectives.len) + report += span_header("ERT had following objectives:") + win = TRUE + var/objective_count = 1 + for(var/datum/objective/objective in objectives) + if(objective.check_completion()) + report += "Objective #[objective_count]: [objective.explanation_text] [span_greentext("Success!")]" + else + report += "Objective #[objective_count]: [objective.explanation_text] [span_redtext("Fail.")]" + win = FALSE + objective_count++ + if(win) + report += span_greentext("The [name] was successful!") + else + report += span_redtext("The [name] have failed!") + + if(uplink_type) + var/purchases = "" + var/TC_uses = 0 + LAZYINITLIST(GLOB.uplink_purchase_logs_by_key) + for(var/I in members) + var/datum/mind/ertmember = I + var/datum/uplink_purchase_log/H = GLOB.uplink_purchase_logs_by_key[ertmember.key] + if(H) + TC_uses += H.total_spent + purchases += H.generate_render(show_key = FALSE) + report += "
" + report += "(ERT was equipped with [initial(uplink_type.name)]s and used [TC_uses] WC) [purchases]" + if(TC_uses == 0 && win) + report += "[icon2html('icons/badass.dmi', world, "badass")]" + + return "
[report.Join("
")]
" /datum/antagonist/ert name = "Emergency Response Officer" From fe47bd3e344dbb8ef9dd03848baabd4c5d6d13a3 Mon Sep 17 00:00:00 2001 From: ynot01 Date: Tue, 15 Nov 2022 10:27:13 -0500 Subject: [PATCH 2/2] WC not TC --- code/modules/antagonists/ert/ert.dm | 2 +- code/modules/uplink/uplink_purchase_log.dm | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/antagonists/ert/ert.dm b/code/modules/antagonists/ert/ert.dm index bc4824841079..191e4f2b273f 100644 --- a/code/modules/antagonists/ert/ert.dm +++ b/code/modules/antagonists/ert/ert.dm @@ -40,7 +40,7 @@ var/datum/uplink_purchase_log/H = GLOB.uplink_purchase_logs_by_key[ertmember.key] if(H) TC_uses += H.total_spent - purchases += H.generate_render(show_key = FALSE) + purchases += H.generate_render(show_key = FALSE, currency = "WC") report += "
" report += "(ERT was equipped with [initial(uplink_type.name)]s and used [TC_uses] WC) [purchases]" if(TC_uses == 0 && win) diff --git a/code/modules/uplink/uplink_purchase_log.dm b/code/modules/uplink/uplink_purchase_log.dm index 61f9bb386a11..cef0c7812408 100644 --- a/code/modules/uplink/uplink_purchase_log.dm +++ b/code/modules/uplink/uplink_purchase_log.dm @@ -39,11 +39,11 @@ GLOBAL_LIST(uplink_purchase_logs_by_key) //assoc key = /datum/uplink_purchase_lo /datum/uplink_purchase_log/proc/TotalTelecrystalsSpent() . = total_spent -/datum/uplink_purchase_log/proc/generate_render(show_key = TRUE) +/datum/uplink_purchase_log/proc/generate_render(show_key = TRUE, currency = "TC") . = "" for(var/hash in purchase_log) var/datum/uplink_purchase_entry/UPE = purchase_log[hash] - . += span_tooltip_container("\[[UPE.icon_b64][show_key?"([owner])":""][UPE.name]
[UPE.spent_cost ? "[UPE.spent_cost] TC" : "[UPE.base_cost] TC
(Surplus)"]
[UPE.desc]
[(UPE.amount_purchased > 1) ? "x[UPE.amount_purchased]" : ""]\]") + . += span_tooltip_container("\[[UPE.icon_b64][show_key?"([owner])":""][UPE.name]
[UPE.spent_cost ? "[UPE.spent_cost] [currency]" : "[UPE.base_cost] [currency]
(Surplus)"]
[UPE.desc]
[(UPE.amount_purchased > 1) ? "x[UPE.amount_purchased]" : ""]\]") /datum/uplink_purchase_log/proc/LogPurchase(atom/A, datum/uplink_item/uplink_item, spent_cost) var/datum/uplink_purchase_entry/UPE