Merge pull request #9025 from Anasari/BombToInvestigate

Move bombing list to investigate & improve bomb logging
This commit is contained in:
tigercat2000
2018-05-25 17:58:13 -07:00
committed by GitHub
15 changed files with 37 additions and 35 deletions
-4
View File
@@ -25,8 +25,6 @@
<A href='?src=[UID()];secretsadmin=check_antagonist'>Show current traitors and objectives</A><BR>
<a href='?src=[UID()];secretsadmin=night_shift_set'>Set Night Shift Mode</a><br>
<B>Bombs</b><br>
<A href='?src=[UID()];secretsadmin=list_bombers'>Bombing List</A>&nbsp;&nbsp;
<A href='?src=[UID()];secretsadmin=clear_bombs'>Remove all bombs currently in existence</A>
[check_rights(R_SERVER, 0) ? "&nbsp;&nbsp;<A href='?src=[UID()];secretsfun=togglebombcap'>Toggle bomb cap</A><br>" : "<br>"]
<B>Lists</b><br>
<A href='?src=[UID()];secretsadmin=list_signalers'>Show last [length(lastsignalers)] signalers</A>&nbsp;&nbsp;
@@ -130,5 +128,3 @@
var/datum/browser/popup = new(usr, "secrets", "<div align='center'>Admin Secrets</div>", 630, 670)
popup.set_content(dat)
popup.open(0)
-7
View File
@@ -2957,13 +2957,6 @@
var/ok = 0
switch(href_list["secretsadmin"])
if("clear_bombs")
//I do nothing
if("list_bombers")
var/dat = "<B>Bombing List<HR>"
for(var/l in bombers)
dat += text("[l]<BR>")
usr << browse(dat, "window=bombers")
if("list_signalers")
var/dat = "<B>Showing last [length(lastsignalers)] signalers.</B><HR>"
for(var/sig in lastsignalers)
+2 -2
View File
@@ -45,13 +45,13 @@
if((istype(W, /obj/item/weldingtool) && W:welding))
if(!status)
status = 1
bombers += "[key_name(user)] welded a single tank bomb. Temperature: [bombtank.air_contents.temperature-T0C]"
investigate_log("[key_name(user)] welded a single tank bomb. Temperature: [bombtank.air_contents.temperature-T0C]", INVESTIGATE_BOMB)
msg_admin_attack("[key_name_admin(user)] welded a single tank bomb. Temperature: [bombtank.air_contents.temperature-T0C]")
log_game("[key_name(user)] welded a single tank bomb. Temperature: [bombtank.air_contents.temperature - T0C]")
to_chat(user, "<span class='notice'>A pressure hole has been bored to [bombtank] valve. \The [bombtank] can now be ignited.</span>")
else
status = 0
bombers += "[key_name(user)] unwelded a single tank bomb. Temperature: [bombtank.air_contents.temperature-T0C]"
investigate_log("[key_name(user)] unwelded a single tank bomb. Temperature: [bombtank.air_contents.temperature-T0C]", INVESTIGATE_BOMB)
to_chat(user, "<span class='notice'>The hole has been closed.</span>")
add_fingerprint(user)
..()
+2 -2
View File
@@ -28,7 +28,7 @@
if(istype(src.loc.loc, /obj/structure/reagent_dispensers/fueltank/))
var/obj/structure/reagent_dispensers/fueltank/tank = src.loc.loc
if(tank)
tank.boom()
tank.boom(TRUE)
if(istype(src.loc.loc, /obj/item/reagent_containers/glass/beaker/))
var/obj/item/reagent_containers/glass/beaker/beakerbomb = src.loc.loc
if(beakerbomb)
@@ -41,4 +41,4 @@
/obj/item/assembly/igniter/attack_self(mob/user as mob)
activate()
add_fingerprint(user)
return
return
+1 -1
View File
@@ -114,7 +114,7 @@
timing = !timing
if(timing && istype(holder, /obj/item/transfer_valve))
message_admins("[key_name_admin(usr)] activated [src] attachment on [holder].")
bombers += "[key_name(usr)] activated [src] attachment for [loc]"
investigate_log("[key_name(usr)] activated [src] attachment for [loc]", INVESTIGATE_BOMB)
log_game("[key_name(usr)] activated [src] attachment for [loc]")
update_icon()
if(href_list["reset"])
+1 -1
View File
@@ -109,7 +109,7 @@
var/area/A = get_area(user)
user.visible_message("<span class='warning'>[user] primes the [src]!</span>", "<span class='userdanger'>You prime the [src]!</span>")
var/message = "[ADMIN_LOOKUPFLW(user)] primed a combustible lemon for detonation at [A] [ADMIN_COORDJMP(user)]"
bombers += message
investigate_log("[key_name(user)] primed a combustible lemon for detonation at [A] [COORD(user)].", INVESTIGATE_BOMB)
message_admins(message)
log_game("[key_name(user)] primed a combustible lemon for detonation at [A] [COORD(user)].")
if(iscarbon(user))
+17 -7
View File
@@ -9,6 +9,7 @@
var/tank_volume = 1000 //In units, how much the dispenser can hold
var/reagent_id = "water" //The ID of the reagent that the dispenser uses
var/lastrigger = "" // The last person to rig this fuel tank - Stored with the object. Only the last person matter for investigation
/obj/structure/reagent_dispensers/attackby(obj/item/W, mob/user, params)
return
@@ -77,11 +78,16 @@
..()
if(!QDELETED(src)) //wasn't deleted by the projectile's effects.
if(!P.nodamage && ((P.damage_type == BURN) || (P.damage_type == BRUTE)))
message_admins("[key_name_admin(P.firer)] triggered a fueltank explosion.")
log_game("[key_name(P.firer)] triggered a fueltank explosion.")
message_admins("[key_name_admin(P.firer)] triggered a fueltank explosion with [P.name] at [COORD(loc)] ")
log_game("[key_name(P.firer)] triggered a fueltank explosion with [P.name] at [COORD(loc)]")
investigate_log("[key_name(P.firer)] triggered a fueltank explosion with [P.name] at [COORD(loc)]", INVESTIGATE_BOMB)
boom()
/obj/structure/reagent_dispensers/fueltank/boom()
/obj/structure/reagent_dispensers/fueltank/boom(var/rigtrigger = FALSE) // Prevent case where someone who rigged the tank is blamed for the explosion when the rig isn't what triggered the explosion
if(rigtrigger == TRUE) // If the explosion is triggered by an assembly holder
message_admins("A fueltank, last rigged by [lastrigger], exploded at [COORD(loc)]") // Then admin is informed of the last person who rigged the fuel tank
log_game("A fueltank, last rigged by [lastrigger], exploded at [COORD(loc)]")
investigate_log("A fueltank, last rigged by [lastrigger], exploded at [COORD(loc)]", INVESTIGATE_BOMB)
explosion(loc, 0, 1, 5, 7, 10, flame_range = 5)
qdel(src)
@@ -111,6 +117,7 @@
usr.visible_message("<span class='notice'>[usr] detaches [rig] from [src].</span>", "<span class='notice'>You detach [rig] from [src].</span>")
rig.forceMove(get_turf(usr))
rig = null
lastrigger = null
overlays.Cut()
/obj/structure/reagent_dispensers/fueltank/attackby(obj/item/I, mob/user, params)
@@ -124,9 +131,11 @@
var/obj/item/assembly_holder/H = I
if(istype(H.a_left, /obj/item/assembly/igniter) || istype(H.a_right, /obj/item/assembly/igniter))
msg_admin_attack("[key_name_admin(user)] rigged a fueltank for explosion (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)")
log_game("[key_name(user)] rigged fueltank a fueltank for explosion at [loc.x], [loc.y], [loc.z]")
msg_admin_attack("[key_name_admin(user)] rigged [src.name] with [I.name] for explosion (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)")
log_game("[key_name(user)] rigged [src.name] with [I.name] for explosion at [COORD(loc)]")
investigate_log("[key_name(user)] rigged [src.name] with [I.name] for explosion at [COORD(loc)]", INVESTIGATE_BOMB)
lastrigger = "[key_name(user)]"
rig = H
user.drop_item()
H.forceMove(src)
@@ -151,8 +160,9 @@
W.update_icon()
else
user.visible_message("<span class='warning'>[user] catastrophically fails at refilling \his [W]!</span>", "<span class='userdanger'>That was stupid of you.</span>")
message_admins("[key_name_admin(user)] triggered a fueltank explosion.")
log_game("[key_name(user)] triggered a fueltank explosion.")
message_admins("[key_name_admin(user)] triggered a fueltank explosion at [COORD(loc)]")
log_game("[key_name(user)] triggered a fueltank explosion at [COORD(loc)]")
investigate_log("[key_name(user)] triggered a fueltank explosion at [COORD(loc)]", INVESTIGATE_BOMB)
boom()
else
..()