diff --git a/code/_onclick/ai.dm b/code/_onclick/ai.dm
index 4036470cf7..0cc5cecb9d 100644
--- a/code/_onclick/ai.dm
+++ b/code/_onclick/ai.dm
@@ -38,13 +38,14 @@
var/turf_visible
if(pixel_turf)
turf_visible = cameranet.checkTurfVis(pixel_turf)
- if(istype(loc, /obj/item/device/aicard) && (pixel_turf in view(client.view, loc)))
- turf_visible = TRUE
if(!turf_visible)
- log_admin("[key_name_admin(src)] might be running a modified client! (failed checkTurfVis on AI click of [A]([COORD(pixel_turf)])")
- message_admins("[key_name_admin(src)] might be running a modified client! (failed checkTurfVis on AI click of [A]([ADMIN_COORDJMP(pixel_turf)]))")
- send2admindiscord("NOCHEAT", "[key_name(src)] might be running a modified client! (failed checkTurfVis on AI click of [A]([COORD(pixel_turf)]))")
- return
+ if(istype(loc, /obj/item/device/aicard) && (pixel_turf in view(client.view, loc)))
+ turf_visible = TRUE
+ else
+ log_admin("[key_name_admin(src)] might be running a modified client! (failed checkTurfVis on AI click of [A]([COORD(pixel_turf)])")
+ message_admins("[key_name_admin(src)] might be running a modified client! (failed checkTurfVis on AI click of [A]([ADMIN_COORDJMP(pixel_turf)]))")
+ send2irc_adminless_only("NOCHEAT", "[key_name(src)] might be running a modified client! (failed checkTurfVis on AI click of [A]([COORD(pixel_turf)]))")
+ return
var/list/modifiers = params2list(params)
if(modifiers["shift"] && modifiers["ctrl"])
diff --git a/code/game/objects/items/weapons/RPD.dm b/code/game/objects/items/weapons/RPD.dm
index baff623a2d..d444aa8bb3 100644
--- a/code/game/objects/items/weapons/RPD.dm
+++ b/code/game/objects/items/weapons/RPD.dm
@@ -571,7 +571,7 @@ var/global/list/RPD_recipes=list(
new /obj/item/pipe_meter(A)
if(DISPOSALS_MODE) //Making disposals pipes
- if(!is_anchored_dense_turf(A))
+ if(is_anchored_dense_turf(A))
user << "The [src]'s error light flickers; there's something in the way!"
return
user << "You start building a disposals pipe..."
@@ -609,4 +609,4 @@ var/global/list/RPD_recipes=list(
#undef METER_MODE
#undef DISPOSALS_MODE
#undef CATEGORY_ATMOS
-#undef CATEGORY_DISPOSALS
+#undef CATEGORY_DISPOSALS
\ No newline at end of file
diff --git a/code/modules/admin/verbs/adminhelp.dm b/code/modules/admin/verbs/adminhelp.dm
index 38bd226074..be7a264f97 100644
--- a/code/modules/admin/verbs/adminhelp.dm
+++ b/code/modules/admin/verbs/adminhelp.dm
@@ -76,6 +76,7 @@
src.verbs |= /client/verb/adminhelp
adminhelptimerid = 0
+
/client/verb/adminhelp(msg as text)
set category = "Admin"
set name = "Adminhelp"
@@ -90,7 +91,7 @@
return
if(src.handle_spam_prevention(msg,MUTE_ADMINHELP))
return
- var/ref_mob = "\ref[mob]"
+
var/ref_client = "\ref[src]"
for(var/datum/adminticket/T in admintickets)
if(T.permckey == src.ckey && T.resolved == "No")
@@ -99,7 +100,7 @@
if(T.admin == "N/A")
usr << "Due to the fact your Adminhelp had no assigned admin, admins have been pinged."
message_admins("[src.ckey] has bumped their adminhelp #[T.ID], still no assigned admin!")
- msg = "HELP: [key_name(src)] [ADMIN_QUE(mob)] [ADMIN_PP(mob)] [ADMIN_VV(mob)] [ADMIN_SM(mob)] [ADMIN_FLW(mob)] [ADMIN_TP(mob)] (REJT) (IC) (R): [msg]": [msg]"
+ msg = "HELP: [key_name(src)] [ADMIN_QUE(mob)] [ADMIN_PP(mob)] [ADMIN_VV(mob)] [ADMIN_SM(mob)] [ADMIN_FLW(mob)] [ADMIN_TP(mob)] (REJT) (IC) (R): [msg]"
for(var/client/X in admins)
if(X.prefs.toggles & SOUND_ADMINHELP)
X << 'sound/effects/adminhelp.ogg'
@@ -134,8 +135,7 @@
if(T.permckey == src.ckey)
ticket = T
- msg = "HELP: [key_name(src)] [ADMIN_QUE(mob)] [ADMIN_PP(mob)] [ADMIN_VV(mob)] [ADMIN_SM(mob)] [ADMIN_FLW(mob)] [ADMIN_TP(mob)] (REJT) (IC) (R): [msg]": [msg]"
-
+ msg = "HELP: [key_name(src)] [ADMIN_QUE(mob)] [ADMIN_PP(mob)] [ADMIN_VV(mob)] [ADMIN_SM(mob)] [ADMIN_FLW(mob)] [ADMIN_TP(mob)] (REJT) (IC) (R): [msg]"
//send this msg to all admins
@@ -150,7 +150,7 @@
src << "PM to-Admins: [original_msg]"
//send it to irc if nobody is on and tell us how many were on
- var/admin_number_present = send2irc_admin_notice_handler("adminhelp", ckey, original_msg)
+ var/admin_number_present = send2admindiscord("adminhelp", ckey, original_msg)
log_admin("ADMINHELP: [key_name(src)]: [original_msg] - heard by [admin_number_present] non-AFK admins who have +BAN.")
feedback_add_details("admin_verb","AH") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
return
diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm
index e6134d0c83..6092d7e9b9 100644
--- a/code/modules/admin/verbs/adminpm.dm
+++ b/code/modules/admin/verbs/adminpm.dm
@@ -1,5 +1,4 @@
#define IRCREPLYCOUNT 2
-
//allows right clicking mobs to send an admin PM to their client, forwards the selected mob's client to cmd_admin_pm
/client/proc/cmd_admin_pm_context(mob/M in mob_list)
set category = null
@@ -7,8 +6,7 @@
if(!holder)
src << "Error: Admin-PM-Context: Only administrators may use this command."
return
- if( !ismob(M) || !M.client )
- return
+ if( !ismob(M) || !M.client ) return
cmd_admin_pm(M.client,null)
feedback_add_details("admin_verb","APMM") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
@@ -22,15 +20,16 @@
var/list/client/targets[0]
for(var/client/T)
if(T.mob)
- if(isnewplayer(T.mob))
+ if(istype(T.mob, /mob/new_player))
targets["(New Player) - [T]"] = T
- else if(isobserver(T.mob))
+ else if(istype(T.mob, /mob/dead/observer))
targets["[T.mob.name](Ghost) - [T]"] = T
else
targets["[T.mob.real_name](as [T.mob.name]) - [T]"] = T
else
targets["(No Mob) - [T]"] = T
- var/target = input(src,"To whom shall we send a message?","Admin PM",null) as null|anything in sortList(targets)
+ var/list/sorted = sortList(targets)
+ var/target = input(src,"To whom shall we send a message?","Admin PM",null) in sorted|null
cmd_admin_pm(targets[target],null)
feedback_add_details("admin_verb","APM") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
@@ -46,8 +45,7 @@
else if(istype(whom,/client))
C = whom
if(!C)
- if(holder)
- src << "Error: Admin-PM: Client not found."
+ if(holder) src << "Error: Admin-PM: Client not found."
return
var/datum/adminticket/ticket
diff --git a/code/modules/power/tesla/coil.dm b/code/modules/power/tesla/coil.dm
index 701e7baff7..ae6d9e8730 100644
--- a/code/modules/power/tesla/coil.dm
+++ b/code/modules/power/tesla/coil.dm
@@ -92,12 +92,10 @@
last_zap = world.time
var/coeff = (20 - ((input_power_multiplier - 1) * 3))
coeff = max(coeff, 10)
- var/shock_coeff = (4 - (input_power_multiplier - 2))
- shock_coeff = max(shock_coeff, 2)
- var/power = (powernet.avail/coeff)
+ var/power = (powernet.avail/2)
add_load(power)
playsound(src.loc, 'sound/magic/LightningShock.ogg', 100, 1, extrarange = 5)
- tesla_zap(src, 10, power/shock_coeff)
+ tesla_zap(src, 10, power/(coeff/2))
/obj/machinery/power/grounding_rod
name = "grounding rod"
@@ -154,4 +152,4 @@
if(anchored && !panel_open)
flick("grounding_rodhit", src)
else
- ..()
+ ..()
\ No newline at end of file
diff --git a/icons/mob/inhands/items_lefthand.dmi b/icons/mob/inhands/items_lefthand.dmi
index e53258905e..d9ca78e7ff 100644
Binary files a/icons/mob/inhands/items_lefthand.dmi and b/icons/mob/inhands/items_lefthand.dmi differ