From 7b13ec48845275bc95ada543efe3acabe997f789 Mon Sep 17 00:00:00 2001 From: joep van der velden Date: Sun, 26 Jul 2020 11:08:07 +0200 Subject: [PATCH 1/3] Adds missing mech attack logging --- code/__HELPERS/mobs.dm | 7 ++++++- code/game/mecha/mecha.dm | 14 ++++++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index a38eeb99ced..77ce3e45c76 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -289,11 +289,15 @@ This is always put in the attack log. var/user_str = key_name_log(user) + COORD(user) var/target_str + var/target_info + var/user_info if(isatom(target)) var/atom/AT = target target_str = key_name_log(AT) + COORD(AT) + target_info = key_name_admin(target) else target_str = target + target_info = target var/mob/MU = user var/mob/MT = target if(istype(MU)) @@ -320,7 +324,8 @@ This is always put in the attack log. if(isLivingSSD(target)) // Attacks on SSDs are shown to admins with any log level except ATKLOG_NONE. Overrides custom level loglevel = ATKLOG_FEW - msg_admin_attack("[key_name_admin(user)] vs [key_name_admin(target)]: [what_done]", loglevel) + + msg_admin_attack("[key_name_admin(user)] vs [target_info]: [what_done]", loglevel) /proc/do_mob(mob/user, mob/target, time = 30, uninterruptible = 0, progress = 1, list/extra_checks = list()) if(!user || !target) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 52973c9e285..f8b7d45592c 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -1,3 +1,5 @@ +#define OCCUPANT_LOGGING occupant ? occupant : "empty mech" + /obj/mecha name = "Mecha" desc = "Exosuit" @@ -544,6 +546,7 @@ /obj/mecha/attack_alien(mob/living/user) log_message("Attack by alien. Attacker - [user].", TRUE) + add_attack_logs(user, OCCUPANT_LOGGING, "Alien attacked mech [src]") playsound(src.loc, 'sound/weapons/slash.ogg', 100, TRUE) attack_generic(user, 15, BRUTE, "melee", 0) @@ -562,7 +565,7 @@ animal_damage = user.obj_damage animal_damage = min(animal_damage, 20*user.environment_smash) user.create_attack_log("attacked [name]") - add_attack_logs(user, src, "Attacked") + add_attack_logs(user, OCCUPANT_LOGGING, "Animal attacked mech [src]") attack_generic(user, animal_damage, user.melee_damage_type, "melee", play_soundeffect) return TRUE @@ -573,7 +576,7 @@ . = ..() if(.) log_message("Attack by hulk. Attacker - [user].", 1) - add_attack_logs(user, src, "Punched with hulk powers") + add_attack_logs(user, OCCUPANT_LOGGING, "Hulk punched mech [src]") /obj/mecha/blob_act(obj/structure/blob/B) log_message("Attack by blob. Attacker - [B].") @@ -584,10 +587,14 @@ /obj/mecha/hitby(atom/movable/AM, skipcatch, hitpush, blocked, datum/thrownthing/throwingdatum) //wrapper log_message("Hit by [AM].") + if(isitem(AM)) + var/obj/item/I = AM + add_attack_logs(I.thrownby, OCCUPANT_LOGGING, "threw [AM] at mech [src]") . = ..() /obj/mecha/bullet_act(obj/item/projectile/Proj) //wrapper log_message("Hit by projectile. Type: [Proj.name]([Proj.flag]).") + add_attack_logs(Proj.firer, OCCUPANT_LOGGING, "shot [Proj.name]([Proj.flag]) at mech [src]") ..() /obj/mecha/ex_act(severity, target) @@ -774,6 +781,7 @@ to_chat(user, "You stop installing [M].") else + add_attack_logs(user, OCCUPANT_LOGGING, "attacked mech '[src]' using [W]") return ..() @@ -1534,3 +1542,5 @@ if(L.incapacitated()) return FALSE return TRUE + +#undef OCCUPANT_LOGGING From 59280183bd929bd23beb386d06496d0639645b4d Mon Sep 17 00:00:00 2001 From: joep van der velden Date: Sun, 26 Jul 2020 11:33:07 +0200 Subject: [PATCH 2/3] Remove unused var --- code/__HELPERS/mobs.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index 77ce3e45c76..bf171de117d 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -290,7 +290,6 @@ This is always put in the attack log. var/user_str = key_name_log(user) + COORD(user) var/target_str var/target_info - var/user_info if(isatom(target)) var/atom/AT = target target_str = key_name_log(AT) + COORD(AT) From 299f6384e021e41f63e8d966f059ae62d2b0ffee Mon Sep 17 00:00:00 2001 From: joep van der velden Date: Sun, 26 Jul 2020 12:16:03 +0200 Subject: [PATCH 3/3] Spam fixes --- code/__HELPERS/mobs.dm | 2 ++ code/game/mecha/mecha.dm | 7 ++++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/code/__HELPERS/mobs.dm b/code/__HELPERS/mobs.dm index bf171de117d..0d3b26d0340 100644 --- a/code/__HELPERS/mobs.dm +++ b/code/__HELPERS/mobs.dm @@ -320,6 +320,8 @@ This is always put in the attack log. var/area/A = get_area(MT) if(A && A.hide_attacklogs) loglevel = ATKLOG_ALMOSTALL + else + loglevel = ATKLOG_ALL // Hitting an object. Not a mob if(isLivingSSD(target)) // Attacks on SSDs are shown to admins with any log level except ATKLOG_NONE. Overrides custom level loglevel = ATKLOG_FEW diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index f8b7d45592c..1dc09d13e63 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -564,8 +564,8 @@ if(user.obj_damage) animal_damage = user.obj_damage animal_damage = min(animal_damage, 20*user.environment_smash) - user.create_attack_log("attacked [name]") - add_attack_logs(user, OCCUPANT_LOGGING, "Animal attacked mech [src]") + if(animal_damage) + add_attack_logs(user, OCCUPANT_LOGGING, "Animal attacked mech [src]") attack_generic(user, animal_damage, user.melee_damage_type, "melee", play_soundeffect) return TRUE @@ -781,7 +781,8 @@ to_chat(user, "You stop installing [M].") else - add_attack_logs(user, OCCUPANT_LOGGING, "attacked mech '[src]' using [W]") + if(W.force) + add_attack_logs(user, OCCUPANT_LOGGING, "attacked mech '[src]' using [W]") return ..()