Adds a "params" parameter to attackby(), so it keeps track of pixel_x and pixel_y among other things

This commit is contained in:
Markolie
2015-02-22 22:12:11 +01:00
parent aee4626ed9
commit 672305e034
456 changed files with 714 additions and 1182 deletions
+2 -2
View File
@@ -207,9 +207,9 @@
verbs.Cut()
return
/atom/movable/overlay/attackby(a, b)
/atom/movable/overlay/attackby(a, b, c)
if (src.master)
return src.master.attackby(a, b)
return src.master.attackby(a, b, c)
return
/atom/movable/overlay/attack_paw(a, b, c)
+2 -2
View File
@@ -191,7 +191,7 @@
if(user.pulling == L)
user.pulling = null
/obj/machinery/dna_scannernew/attackby(var/obj/item/weapon/item as obj, var/mob/user as mob)
/obj/machinery/dna_scannernew/attackby(var/obj/item/weapon/item as obj, var/mob/user as mob, params)
if(istype(item, /obj/item/weapon/screwdriver))
if(occupant)
user << "<span class='notice'>The maintenance panel is locked.</span>"
@@ -338,7 +338,7 @@
active_power_usage = 400
var/waiting_for_user_input=0 // Fix for #274 (Mash create block injector without answering dialog to make unlimited injectors) - N3X
/obj/machinery/computer/scan_consolenew/attackby(obj/item/I as obj, mob/user as mob)
/obj/machinery/computer/scan_consolenew/attackby(obj/item/I as obj, mob/user as mob, params)
if (istype(I, /obj/item/weapon/disk/data)) //INSERT SOME diskS
if (!src.disk)
user.drop_item()
+1 -1
View File
@@ -129,7 +129,7 @@
return 0
attackby(var/obj/item/weapon/W, var/mob/living/user)
attackby(var/obj/item/weapon/W, var/mob/living/user, params)
user.changeNext_move(CLICK_CD_MELEE)
user.do_attack_animation(src)
playsound(get_turf(src), 'sound/effects/attackblob.ogg', 50, 1)
+2 -2
View File
@@ -92,7 +92,7 @@ var/engwords = list("travel", "blood", "join", "hell", "destroy", "technology",
return
/obj/effect/rune/attackby(I as obj, user as mob)
/obj/effect/rune/attackby(I as obj, user as mob, params)
if(istype(I, /obj/item/weapon/tome) && iscultist(user))
user << "You retrace your steps, carefully undoing the lines of the rune."
del(src)
@@ -487,7 +487,7 @@ var/engwords = list("travel", "blood", "join", "hell", "destroy", "technology",
user << "The book seems full of illegible scribbles. Is this a joke?"
return
attackby(obj/item/weapon/tome/T as obj, mob/living/user as mob)
attackby(obj/item/weapon/tome/T as obj, mob/living/user as mob, params)
if(istype(T, /obj/item/weapon/tome)) // sanity check to prevent a runtime error
switch(alert("Copy the runes from your tome?",,"Copy", "Cancel"))
if("cancel")
+1 -1
View File
@@ -20,7 +20,7 @@
master.growth_queue -= src
..()
/obj/effect/biomass/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/effect/biomass/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (!W || !user || !W.type) return
switch(W.type)
if(/obj/item/weapon/circular_saw) del src
@@ -850,7 +850,7 @@ ________________________________________________________________________________
//=======//GENERAL SUIT PROCS//=======//
/obj/item/clothing/suit/space/space_ninja/attackby(obj/item/I, mob/U)
/obj/item/clothing/suit/space/space_ninja/attackby(obj/item/I, mob/U, params)
if(U==affecting)//Safety, in case you try doing this without wearing the suit/being the person with the suit.
if(istype(I, /obj/item/device/aicard))//If it's an AI card.
if(s_control)
@@ -1582,7 +1582,7 @@ It is possible to destroy the net by the occupant or someone else.
healthcheck()
return
attackby(obj/item/weapon/W as obj, mob/user as mob)
attackby(obj/item/weapon/W as obj, mob/user as mob, params)
var/aforce = W.force
health = max(0, health - aforce)
healthcheck()
+1 -1
View File
@@ -148,7 +148,7 @@
del(src)
return
/obj/effect/meteor/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/effect/meteor/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if(istype(W, /obj/item/weapon/pickaxe))
del(src)
return
@@ -75,7 +75,7 @@
// Impossible!
state("Command aborted. This unit is defective.")
/obj/machinery/emergency_authentication_device/attackby(obj/item/weapon/O, mob/user)
/obj/machinery/emergency_authentication_device/attackby(obj/item/weapon/O, mob/user, params)
if(activated)
user << "\blue \The [src] is already active!"
return
+1 -1
View File
@@ -20,7 +20,7 @@
/obj/item/flag/nation/light()
return
/obj/item/flag/nation/attackby(var/obj/item/weapon/W, var/mob/user)
/obj/item/flag/nation/attackby(var/obj/item/weapon/W, var/mob/user, params)
return
/obj/item/flag/nation/attack_paw()
+1 -1
View File
@@ -55,7 +55,7 @@ var/bomb_set
nanomanager.update_uis(src)
return
/obj/machinery/nuclearbomb/attackby(obj/item/weapon/O as obj, mob/user as mob)
/obj/machinery/nuclearbomb/attackby(obj/item/weapon/O as obj, mob/user as mob, params)
if (istype(O, /obj/item/weapon/screwdriver))
src.add_fingerprint(user)
if (src.auth)
+1 -1
View File
@@ -174,7 +174,7 @@
if(cowsleft <= 0)
del src
/obj/effect/rend/cow/attackby(obj/item/I as obj, mob/user as mob)
/obj/effect/rend/cow/attackby(obj/item/I as obj, mob/user as mob, params)
if(istype(I, /obj/item/weapon/nullrod))
visible_message("\red <b>[I] strikes a blow against \the [src], banishing it!</b>")
spawn(1)
+1 -1
View File
@@ -90,7 +90,7 @@
icon_state = "construct"
desc = "A wicked machine used by those skilled in magical arts. It is inactive"
/obj/structure/constructshell/attackby(obj/item/O as obj, mob/user as mob)
/obj/structure/constructshell/attackby(obj/item/O as obj, mob/user as mob, params)
if(istype(O, /obj/item/device/soulstone))
O.transfer_soul("CONSTRUCT",src,user)
+1 -1
View File
@@ -12,7 +12,7 @@
var/op = 1
var/activepage
/obj/item/weapon/spellbook/attackby(obj/item/O as obj, mob/user as mob)
/obj/item/weapon/spellbook/attackby(obj/item/O as obj, mob/user as mob, params)
if(istype(O, /obj/item/weapon/contract))
var/obj/item/weapon/contract/contract = O
if(contract.used)
+2 -2
View File
@@ -44,7 +44,7 @@
min_temperature = T0C - (170 + (T*15))
current_heat_capacity = 1000 * ((H - 1) ** 2)
/obj/machinery/atmospherics/unary/cold_sink/freezer/attackby(obj/item/I, mob/user)
/obj/machinery/atmospherics/unary/cold_sink/freezer/attackby(obj/item/I, mob/user, params)
if(default_deconstruction_screwdriver(user, "freezer-o", "freezer", I))
on = 0
update_icon()
@@ -201,7 +201,7 @@
max_temperature = T20C + (140 * T)
current_heat_capacity = 1000 * ((H - 1) ** 2)
/obj/machinery/atmospherics/unary/heat_reservoir/heater/attackby(obj/item/I, mob/user)
/obj/machinery/atmospherics/unary/heat_reservoir/heater/attackby(obj/item/I, mob/user, params)
if(default_deconstruction_screwdriver(user, "heater-o", "heater", I))
on = 0
update_icon()
+1 -1
View File
@@ -130,7 +130,7 @@
take_victim(usr,usr)
/obj/machinery/optable/attackby(obj/item/weapon/W as obj, mob/living/carbon/user as mob)
/obj/machinery/optable/attackby(obj/item/weapon/W as obj, mob/living/carbon/user as mob, params)
if (istype(W, /obj/item/weapon/grab))
if(iscarbon(W:affecting))
take_victim(W:affecting,usr)
+1 -1
View File
@@ -40,7 +40,7 @@
src.colorlist += D
/obj/machinery/pdapainter/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/pdapainter/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if(istype(O, /obj/item/device/pda))
if(storedpda)
user << "There is already a PDA inside."
+2 -2
View File
@@ -76,7 +76,7 @@
qdel(src)
return
/obj/machinery/sleep_console/attackby(var/obj/item/weapon/G as obj, var/mob/user as mob)
/obj/machinery/sleep_console/attackby(var/obj/item/weapon/G as obj, var/mob/user as mob, params)
if (istype(G, /obj/item/weapon/screwdriver))
default_deconstruction_screwdriver(user, "console-p", "console", G)
return
@@ -292,7 +292,7 @@
return
/obj/machinery/sleeper/attackby(var/obj/item/weapon/G as obj, var/mob/user as mob)
/obj/machinery/sleeper/attackby(var/obj/item/weapon/G as obj, var/mob/user as mob, params)
if(istype(G, /obj/item/weapon/reagent_containers/glass))
if(!beaker)
beaker = G
+1 -1
View File
@@ -320,7 +320,7 @@
*/
/obj/machinery/body_scanconsole/attackby(var/obj/item/weapon/G as obj, var/mob/user as mob)
/obj/machinery/body_scanconsole/attackby(var/obj/item/weapon/G as obj, var/mob/user as mob, params)
if (istype(G, /obj/item/weapon/screwdriver))
default_deconstruction_screwdriver(user, "bodyscannerconsole-p", "bodyscannerconsole", G)
return
+1 -1
View File
@@ -28,7 +28,7 @@
src.uses = uses
src.power_change()
/obj/machinery/ai_slipper/attackby(obj/item/weapon/W, mob/user)
/obj/machinery/ai_slipper/attackby(obj/item/weapon/W, mob/user, params)
if(stat & (NOPOWER|BROKEN))
return
if (istype(user, /mob/living/silicon))
+4 -4
View File
@@ -930,7 +930,7 @@
updateUsrDialog()
/obj/machinery/alarm/attackby(obj/item/W as obj, mob/user as mob)
/obj/machinery/alarm/attackby(obj/item/W as obj, mob/user as mob, params)
/* if (istype(W, /obj/item/weapon/wirecutters))
stat ^= BROKEN
add_fingerprint(user)
@@ -1062,7 +1062,7 @@ Code shamelessly copied from apc_frame
icon_state = "alarm_bitem"
flags = CONDUCT
/obj/item/alarm_frame/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/item/alarm_frame/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/wrench))
new /obj/item/stack/sheet/metal( get_turf(src.loc), 2 )
del(src)
@@ -1164,7 +1164,7 @@ FIRE ALARM
if(prob(50/severity)) alarm()
..()
/obj/machinery/firealarm/attackby(obj/item/W as obj, mob/user as mob)
/obj/machinery/firealarm/attackby(obj/item/W as obj, mob/user as mob, params)
src.add_fingerprint(user)
if (istype(W, /obj/item/weapon/screwdriver) && buildstage == 2)
@@ -1398,7 +1398,7 @@ Code shamelessly copied from apc_frame
icon_state = "fire_bitem"
flags = CONDUCT
/obj/item/firealarm_frame/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/item/firealarm_frame/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/wrench))
new /obj/item/stack/sheet/metal( get_turf(src.loc), 2 )
del(src)
+2 -2
View File
@@ -101,7 +101,7 @@ obj/machinery/air_sensor
sensors = list()
src.updateUsrDialog()
attackby(I as obj, user as mob)
attackby(I as obj, user as mob, params)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(get_turf(src), 'sound/items/Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
@@ -382,7 +382,7 @@ legend {
var/cutoff_temperature = 2000
var/on_temperature = 1200
attackby(I as obj, user as mob)
attackby(I as obj, user as mob, params)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(get_turf(src), 'sound/items/Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
+1 -1
View File
@@ -337,7 +337,7 @@ update_flag
healthcheck()
return
/obj/machinery/portable_atmospherics/canister/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
/obj/machinery/portable_atmospherics/canister/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob, params)
if(iswelder(W) && src.destroyed)
if(weld(W, user))
user << "\blue You salvage whats left of \the [src]"
+2 -2
View File
@@ -105,7 +105,7 @@
return ..()
/obj/machinery/meter/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
/obj/machinery/meter/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob, params)
if (!istype(W, /obj/item/weapon/wrench))
return ..()
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
@@ -130,5 +130,5 @@
if (!target)
src.target = loc
/obj/machinery/meter/turf/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
/obj/machinery/meter/turf/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob, params)
return
@@ -82,7 +82,7 @@
return 1
/obj/machinery/portable_atmospherics/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
/obj/machinery/portable_atmospherics/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob, params)
var/obj/icon = src
if ((istype(W, /obj/item/weapon/tank) && !( src.destroyed )))
if (src.holding)
+2 -2
View File
@@ -48,7 +48,7 @@
else
icon_state = "scrubber:0"
attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
attackby(var/obj/item/weapon/W as obj, var/mob/user as mob, params)
if(istype(W, /obj/item/weapon/wrench))
if(on)
user << "\blue Turn it off first!"
@@ -65,7 +65,7 @@
/obj/machinery/portable_atmospherics/scrubber/huge/stationary
name = "Stationary Air Scrubber"
attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
attackby(var/obj/item/weapon/W as obj, var/mob/user as mob, params)
if(istype(W, /obj/item/weapon/wrench))
user << "\blue The bolts are too tight for you to unscrew!"
return
+1 -1
View File
@@ -101,7 +101,7 @@
return
/obj/machinery/autolathe/attackby(obj/item/O, mob/user)
/obj/machinery/autolathe/attackby(obj/item/O, mob/user, params)
if (busy)
user << "<span class=\"alert\">The autolathe is busy. Please wait for completion of previous operation.</span>"
return 1
+1 -1
View File
@@ -43,7 +43,7 @@
..()
return
/obj/machinery/apiary/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/apiary/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if(istype(O, /obj/item/queen_bee))
if(health > 0)
user << "\red There is already a queen in there."
+1 -1
View File
@@ -50,7 +50,7 @@
icon_state = "biogen-work"
return
/obj/machinery/biogenerator/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/biogenerator/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if(istype(O, /obj/item/weapon/reagent_containers/glass) && !panel_open)
if(beaker)
user << "<span class='warning'>A container is already loaded into the machine.</span>"
+1 -1
View File
@@ -232,7 +232,7 @@
return 1 //Successful completion. Used to prevent child process() continuing if this one is ended early.
/obj/machinery/bot/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/machinery/bot/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if(istype(W, /obj/item/weapon/screwdriver))
if(!locked)
open = !open
+2 -2
View File
@@ -116,7 +116,7 @@ text("<A href='?src=\ref[src];power=1'>[on ? "On" : "Off"]</A>"))
beacon_freq = freq
updateUsrDialog()
/obj/machinery/bot/cleanbot/attackby(obj/item/weapon/W, mob/user as mob)
/obj/machinery/bot/cleanbot/attackby(obj/item/weapon/W, mob/user as mob, params)
if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
if(allowed(usr) && !open && !emagged)
locked = !locked
@@ -262,7 +262,7 @@ text("<A href='?src=\ref[src];power=1'>[on ? "On" : "Off"]</A>"))
qdel(src)
return
/obj/item/weapon/bucket_sensor/attackby(var/obj/item/W, mob/user as mob)
/obj/item/weapon/bucket_sensor/attackby(var/obj/item/W, mob/user as mob, params)
..()
if(istype(W, /obj/item/robot_parts/l_arm) || istype(W, /obj/item/robot_parts/r_arm))
user.drop_item()
+2 -2
View File
@@ -170,7 +170,7 @@ Auto Patrol[]"},
declare_arrests = !declare_arrests
updateUsrDialog()
/obj/machinery/bot/ed209/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/machinery/bot/ed209/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
if (allowed(user) && !open && !emagged)
locked = !locked
@@ -538,7 +538,7 @@ Auto Patrol[]"},
/obj/item/weapon/ed209_assembly/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/item/weapon/ed209_assembly/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
..()
if(istype(W, /obj/item/weapon/pen))
+3 -3
View File
@@ -161,7 +161,7 @@
src.updateUsrDialog()
return
/obj/machinery/bot/farmbot/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/machinery/bot/farmbot/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
if (src.allowed(user))
src.locked = !src.locked
@@ -531,7 +531,7 @@
new /obj/structure/reagent_dispensers/watertank(src)
/obj/structure/reagent_dispensers/watertank/attackby(var/obj/item/robot_parts/S, mob/user as mob)
/obj/structure/reagent_dispensers/watertank/attackby(var/obj/item/robot_parts/S, mob/user as mob, params)
if ((!istype(S, /obj/item/robot_parts/l_arm)) && (!istype(S, /obj/item/robot_parts/r_arm)))
..()
@@ -547,7 +547,7 @@
user.unEquip(S)
del(S)
/obj/item/weapon/farmbot_arm_assembly/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/item/weapon/farmbot_arm_assembly/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
..()
if((istype(W, /obj/item/device/analyzer/plant_analyzer)) && (!src.build_step))
src.build_step++
+4 -4
View File
@@ -133,7 +133,7 @@
return
/obj/machinery/bot/floorbot/attackby(var/obj/item/W , mob/user as mob)
/obj/machinery/bot/floorbot/attackby(var/obj/item/W , mob/user as mob, params)
if(istype(W, /obj/item/stack/tile/plasteel))
var/obj/item/stack/tile/plasteel/T = W
if(amount >= 50)
@@ -477,7 +477,7 @@ obj/machinery/bot/floorbot/process_scan(var/scan_target)
return
/obj/item/weapon/storage/toolbox/mechanical/attackby(var/obj/item/stack/tile/plasteel/T, mob/user as mob)
/obj/item/weapon/storage/toolbox/mechanical/attackby(var/obj/item/stack/tile/plasteel/T, mob/user as mob, params)
if(!istype(T, /obj/item/stack/tile/plasteel))
..()
return
@@ -496,7 +496,7 @@ obj/machinery/bot/floorbot/process_scan(var/scan_target)
user << "<span class='alert'>You need 10 floor tiles to start building a floorbot.</span>"
return
/obj/item/weapon/toolbox_tiles/attackby(var/obj/item/W, mob/user as mob)
/obj/item/weapon/toolbox_tiles/attackby(var/obj/item/W, mob/user as mob, params)
..()
if(isprox(W))
qdel(W)
@@ -516,7 +516,7 @@ obj/machinery/bot/floorbot/process_scan(var/scan_target)
created_name = t
/obj/item/weapon/toolbox_tiles_sensor/attackby(var/obj/item/W, mob/user as mob)
/obj/item/weapon/toolbox_tiles_sensor/attackby(var/obj/item/W, mob/user as mob, params)
..()
if(istype(W, /obj/item/robot_parts/l_arm) || istype(W, /obj/item/robot_parts/r_arm))
qdel(W)
+3 -3
View File
@@ -220,7 +220,7 @@
updateUsrDialog()
return
/obj/machinery/bot/medbot/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/machinery/bot/medbot/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
if (allowed(user) && !open && !emagged)
locked = !locked
@@ -541,7 +541,7 @@
* Medbot Assembly -- Can be made out of all three medkits.
*/
/obj/item/weapon/storage/firstaid/attackby(var/obj/item/robot_parts/S, mob/user as mob)
/obj/item/weapon/storage/firstaid/attackby(var/obj/item/robot_parts/S, mob/user as mob, params)
if ((!istype(S, /obj/item/robot_parts/l_arm)) && (!istype(S, /obj/item/robot_parts/r_arm)))
..()
@@ -567,7 +567,7 @@
qdel(src)
/obj/item/weapon/firstaid_arm_assembly/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/item/weapon/firstaid_arm_assembly/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
..()
if(istype(W, /obj/item/weapon/pen))
var/t = stripped_input(user, "Enter new robot name", name, created_name,MAX_NAME_LEN)
+1 -1
View File
@@ -86,7 +86,7 @@ var/global/mulebot_count = 0
// screwdriver: open/close hatch
// cell: insert it
// other: chance to knock rider off bot
/obj/machinery/bot/mulebot/attackby(var/obj/item/I, var/mob/user)
/obj/machinery/bot/mulebot/attackby(var/obj/item/I, var/mob/user, params)
if(istype(I, /obj/item/weapon/card/id) || istype(I, /obj/item/device/pda))
if(toggle_lock(user))
user << "<span class='notice'>Controls [(locked ? "locked" : "unlocked")].</span>"
+3 -3
View File
@@ -175,7 +175,7 @@ Auto Patrol: []"},
updateUsrDialog()
/obj/machinery/bot/secbot/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/machinery/bot/secbot/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if(istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
if(allowed(user) && !open && !emagged)
locked = !locked
@@ -412,7 +412,7 @@ Auto Patrol: []"},
//Secbot Construction
/obj/item/clothing/head/helmet/attackby(var/obj/item/device/assembly/signaler/S, mob/user as mob)
/obj/item/clothing/head/helmet/attackby(var/obj/item/device/assembly/signaler/S, mob/user as mob, params)
..()
if(!issignaler(S))
..()
@@ -431,7 +431,7 @@ Auto Patrol: []"},
else
return
/obj/item/weapon/secbot_assembly/attackby(obj/item/I, mob/user)
/obj/item/weapon/secbot_assembly/attackby(obj/item/I, mob/user, params)
..()
if(istype(I, /obj/item/weapon/weldingtool))
if(!build_step)
+1 -1
View File
@@ -123,7 +123,7 @@
src.view_range = num
cameranet.updateVisibility(src, 0)
/obj/machinery/camera/attackby(obj/W as obj, mob/living/user as mob)
/obj/machinery/camera/attackby(obj/W as obj, mob/living/user as mob, params)
//invalidateCameraCache()
// DECONSTRUCTION
if(isscrewdriver(W))
@@ -21,7 +21,7 @@
4 = Screwdriver panel closed and is fully built (you cannot attach upgrades)
*/
/obj/item/weapon/camera_assembly/attackby(obj/item/W as obj, mob/living/user as mob)
/obj/item/weapon/camera_assembly/attackby(obj/item/W as obj, mob/living/user as mob, params)
switch(state)
+1 -1
View File
@@ -34,7 +34,7 @@
if(charging)
usr << "Current charge: [charging.charge]"
attackby(obj/item/weapon/W, mob/user)
attackby(obj/item/weapon/W, mob/user, params)
if(stat & BROKEN)
return
+1 -1
View File
@@ -328,7 +328,7 @@
return
//Let's unlock this early I guess. Might be too early, needs tweaking.
/obj/machinery/clonepod/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/machinery/clonepod/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/screwdriver))
if(occupant || mess || locked)
user << "<span class='notice'>The maintenance panel is locked.</span>"
@@ -161,7 +161,7 @@
/obj/machinery/computer/HolodeckControl/attackby(var/obj/item/weapon/D as obj, var/mob/user as mob)
/obj/machinery/computer/HolodeckControl/attackby(var/obj/item/weapon/D as obj, var/mob/user as mob, params)
return
/obj/machinery/computer/HolodeckControl/emag_act(user as mob)
@@ -365,7 +365,7 @@
var/turf/simulated/floor/FF = get_step(src,direction)
FF.update_icon() //so siding get updated properly
/turf/simulated/floor/holofloor/attackby(obj/item/weapon/W as obj, mob/user as mob)
/turf/simulated/floor/holofloor/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
return
// HOLOFLOOR DOES NOT GIVE A FUCK
@@ -402,7 +402,7 @@
return // HOLOTABLE DOES NOT GIVE A FUCK
/obj/structure/table/holotable/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/structure/table/holotable/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/grab) && get_dist(src,user)<2)
var/obj/item/weapon/grab/G = W
if(G.state<2)
@@ -522,7 +522,7 @@
density = 1
throwpass = 1
/obj/structure/holohoop/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/structure/holohoop/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/grab) && get_dist(src,user)<2)
var/obj/item/weapon/grab/G = W
if(G.state<2)
@@ -580,7 +580,7 @@
..()
/obj/machinery/readybutton/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/machinery/readybutton/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
user << "The device is a solid button, there's nothing you can do with it!"
/obj/machinery/readybutton/attack_hand(mob/user as mob)
+2 -2
View File
@@ -10,7 +10,7 @@
var/obj/item/device/mmi/brain = null
/obj/structure/AIcore/attackby(obj/item/P as obj, mob/user as mob)
/obj/structure/AIcore/attackby(obj/item/P as obj, mob/user as mob, params)
switch(state)
if(0)
if(istype(P, /obj/item/weapon/wrench))
@@ -179,7 +179,7 @@
empty_playable_ai_cores -= src
..()
/obj/structure/AIcore/deactivated/attackby(var/obj/item/W, var/mob/user)
/obj/structure/AIcore/deactivated/attackby(var/obj/item/W, var/mob/user, params)
if(istype(W, /obj/item/device/aicard))//Is it?
var/obj/item/device/aicard/card = W
card.transfer_ai("INACTIVE","AICARD",src,user)
+1 -1
View File
@@ -13,7 +13,7 @@
src.overlays += image('icons/obj/computer.dmi', "ai-fixer-empty")
/obj/machinery/computer/aifixer/attackby(I as obj, user as mob)
/obj/machinery/computer/aifixer/attackby(I as obj, user as mob, params)
if(istype(I, /obj/item/device/aicard))
if(stat & (NOPOWER|BROKEN))
user << "This terminal isn't functioning right now, get it working!"
@@ -233,7 +233,7 @@
board_type = "honkcomputer"
/obj/item/weapon/circuitboard/supplycomp/attackby(obj/item/I as obj, mob/user as mob)
/obj/item/weapon/circuitboard/supplycomp/attackby(obj/item/I as obj, mob/user as mob, params)
if(istype(I,/obj/item/device/multitool))
var/catastasis = src.contraband_enabled
var/opposite_catastasis
@@ -255,7 +255,7 @@
user << "DERP! BUG! Report this (And what you were doing to cause it) to Agouri"
return
/obj/item/weapon/circuitboard/rdconsole/attackby(obj/item/I as obj, mob/user as mob)
/obj/item/weapon/circuitboard/rdconsole/attackby(obj/item/I as obj, mob/user as mob, params)
if(istype(I,/obj/item/weapon/screwdriver))
user.visible_message("\blue \the [user] adjusts the jumper on the [src]'s access protocol pins.", "\blue You adjust the jumper on the access protocol pins.")
if(src.build_path == "/obj/machinery/computer/rdconsole/core")
@@ -268,7 +268,7 @@
user << "\blue Access protocols set to default."
return
/obj/structure/computerframe/attackby(obj/item/P as obj, mob/user as mob)
/obj/structure/computerframe/attackby(obj/item/P as obj, mob/user as mob, params)
switch(state)
if(0)
if(istype(P, /obj/item/weapon/wrench))
@@ -379,7 +379,7 @@
name = "Bananium Computer-frame"
icon = 'icons/obj/machines/HONKputer.dmi'
/obj/structure/computerframe/HONKputer/attackby(obj/item/P as obj, mob/user as mob)
/obj/structure/computerframe/HONKputer/attackby(obj/item/P as obj, mob/user as mob, params)
switch(state)
if(0)
if(istype(P, /obj/item/weapon/wrench))
+1 -1
View File
@@ -53,7 +53,7 @@
return 1
// Network configuration
attackby(I as obj, user as mob)
attackby(I as obj, user as mob, params)
access = list()
if(istype(I,/obj/item/weapon/card/id)) // If hit by a regular ID card.
var/obj/item/weapon/card/id/E = I
+1 -1
View File
@@ -55,7 +55,7 @@
usr << "There is nothing to remove from the console."
return
/obj/machinery/computer/card/attackby(obj/item/weapon/card/id/id_card, mob/user)
/obj/machinery/computer/card/attackby(obj/item/weapon/card/id/id_card, mob/user, params)
if(!istype(id_card))
return ..()
+1 -1
View File
@@ -73,7 +73,7 @@
return podf
/obj/machinery/computer/cloning/attackby(obj/item/W as obj, mob/user as mob)
/obj/machinery/computer/cloning/attackby(obj/item/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/disk/data)) //INSERT SOME DISKETTES
if (!src.diskette)
user.drop_item()
+1 -1
View File
@@ -103,7 +103,7 @@
update_icon()
/obj/machinery/computer/attackby(I as obj, user as mob)
/obj/machinery/computer/attackby(I as obj, user as mob, params)
if(istype(I, /obj/item/weapon/screwdriver) && circuit)
playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
+1 -1
View File
@@ -90,7 +90,7 @@
onclose(user, "honkputer")
/obj/machinery/computer/HONKputer/attackby(I as obj, user as mob)
/obj/machinery/computer/HONKputer/attackby(I as obj, user as mob, params)
if(istype(I, /obj/item/weapon/screwdriver) && circuit)
playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
+2 -2
View File
@@ -26,7 +26,7 @@
return
attackby(obj/item/weapon/O as obj, mob/user as mob)
attackby(obj/item/weapon/O as obj, mob/user as mob, params)
if (user.z > 6)
user << "\red <b>Unable to establish a connection</b>: \black You're too far away from the station!"
return
@@ -63,7 +63,7 @@
var/mob/living/silicon/robot/current = null
attackby(obj/item/weapon/aiModule/module as obj, mob/user as mob)
attackby(obj/item/weapon/aiModule/module as obj, mob/user as mob, params)
if(istype(module, /obj/item/weapon/aiModule))
module.install(src)
else
+1 -1
View File
@@ -36,7 +36,7 @@
l_color = "#50AB00"
/obj/machinery/computer/message_monitor/attackby(obj/item/weapon/O as obj, mob/living/user as mob)
/obj/machinery/computer/message_monitor/attackby(obj/item/weapon/O as obj, mob/living/user as mob, params)
if(stat & (NOPOWER|BROKEN))
return
if(!istype(user))
+1 -1
View File
@@ -50,7 +50,7 @@
return
/*
/obj/machinery/computer/pod/attackby(I as obj, user as mob)
/obj/machinery/computer/pod/attackby(I as obj, user as mob, params)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(loc, 'sound/items/Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
+1 -1
View File
@@ -40,7 +40,7 @@
return
interact(user)
/obj/machinery/power/monitor/attackby(I as obj, user as mob)
/obj/machinery/power/monitor/attackby(I as obj, user as mob, params)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
@@ -22,7 +22,7 @@ var/prison_shuttle_timeleft = 0
var/prison_break = 0
attackby(I as obj, user as mob)
attackby(I as obj, user as mob, params)
return src.attack_hand(user)
@@ -34,7 +34,7 @@ var/prison_shuttle_timeleft = 0
return src.attack_hand(user)
attackby(I as obj, user as mob)
attackby(I as obj, user as mob, params)
if(istype(I, /obj/item/weapon/screwdriver))
playsound(src.loc, 'sound/items/Screwdriver.ogg', 50, 1)
if(do_after(user, 20))
+1 -1
View File
@@ -36,7 +36,7 @@
return 1
/obj/machinery/computer/salvage_ship/attackby(obj/item/I as obj, mob/user as mob)
/obj/machinery/computer/salvage_ship/attackby(obj/item/I as obj, mob/user as mob, params)
return attack_hand(user)
/obj/machinery/computer/salvage_ship/attack_ai(mob/user as mob)
+1 -1
View File
@@ -25,7 +25,7 @@
l_color = "#B40000"
/obj/machinery/computer/secure_data/attackby(obj/item/O as obj, user as mob)
/obj/machinery/computer/secure_data/attackby(obj/item/O as obj, user as mob, params)
if(istype(O, /obj/item/weapon/card/id) && !scan)
usr.drop_item()
O.loc = src
+1 -1
View File
@@ -8,7 +8,7 @@
l_color = "#7BF9FF"
attackby(var/obj/item/weapon/card/W as obj, var/mob/user as mob)
attackby(var/obj/item/weapon/card/W as obj, var/mob/user as mob, params)
if(stat & (BROKEN|NOPOWER)) return
if ((!( istype(W, /obj/item/weapon/card) ) || !( ticker ) || emergency_shuttle.location() || !( user ))) return
if (istype(W, /obj/item/weapon/card/id)||istype(W, /obj/item/device/pda))
+1 -1
View File
@@ -22,7 +22,7 @@
var/order = 1 // -1 = Descending - 1 = Ascending
/obj/machinery/computer/skills/attackby(obj/item/O as obj, user as mob)
/obj/machinery/computer/skills/attackby(obj/item/O as obj, user as mob, params)
if(istype(O, /obj/item/weapon/card/id) && !scan)
usr.drop_item()
O.loc = src
@@ -252,7 +252,7 @@ var/specops_shuttle_timeleft = 0
/obj/machinery/computer/specops_shuttle/attack_paw(var/mob/user as mob)
return attack_hand(user)
/obj/machinery/computer/specops_shuttle/attackby(I as obj, user as mob)
/obj/machinery/computer/specops_shuttle/attackby(I as obj, user as mob, params)
if(istype(I,/obj/item/weapon/card/emag))
user << "\blue The electronic systems in this console are far too advanced for your primitive hacking peripherals."
else
@@ -176,7 +176,7 @@ var/syndicate_elite_shuttle_timeleft = 0
if(syndicate_elite_shuttle_moving_to_station || syndicate_elite_shuttle_moving_to_mothership) return 0
else return 1
/obj/machinery/computer/syndicate_elite_shuttle/attackby(I as obj, user as mob)
/obj/machinery/computer/syndicate_elite_shuttle/attackby(I as obj, user as mob, params)
return attack_hand(user)
/obj/machinery/computer/syndicate_elite_shuttle/attack_ai(var/mob/user as mob)
@@ -186,7 +186,7 @@ var/syndicate_elite_shuttle_timeleft = 0
/obj/machinery/computer/syndicate_elite_shuttle/attack_paw(var/mob/user as mob)
return attack_hand(user)
/obj/machinery/computer/syndicate_elite_shuttle/attackby(I as obj, user as mob)
/obj/machinery/computer/syndicate_elite_shuttle/attackby(I as obj, user as mob, params)
if(istype(I,/obj/item/weapon/card/emag))
user << "\blue The electronic systems in this console are far too advanced for your primitive hacking peripherals."
else
@@ -29,7 +29,7 @@ var/list/possible_uplinker_IDs = list("Alfa","Bravo","Charlie","Delta","Echo","F
name = "[name] [rand(1,999)]"
/obj/machinery/computer/telecrystals/uplinker/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/computer/telecrystals/uplinker/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if(istype(O, /obj/item))
if(uplinkholder)
@@ -85,7 +85,7 @@
return 1
/obj/machinery/computer/xenos_station/attackby(obj/item/I as obj, mob/user as mob)
/obj/machinery/computer/xenos_station/attackby(obj/item/I as obj, mob/user as mob, params)
return attack_hand(user)
/obj/machinery/computer/xenos_station/attack_ai(mob/user as mob)
+3 -3
View File
@@ -92,7 +92,7 @@
else
desc += "."
/obj/machinery/constructable_frame/machine_frame/attackby(obj/item/P as obj, mob/user as mob)
/obj/machinery/constructable_frame/machine_frame/attackby(obj/item/P as obj, mob/user as mob, params)
if(P.crit_fail)
user << "<span class='danger'>This part is faulty, you cannot add this to the machine!</span>"
return
@@ -270,7 +270,7 @@ to destroy them and players will be able to make replacements.
/obj/machinery/vending/suitdispenser = "Suitlord 9000",
/obj/machinery/vending/shoedispenser = "Shoelord 9000")
/obj/item/weapon/circuitboard/vendor/attackby(obj/item/I, mob/user)
/obj/item/weapon/circuitboard/vendor/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/weapon/screwdriver))
set_type(pick(names_paths), user)
@@ -306,7 +306,7 @@ to destroy them and players will be able to make replacements.
/obj/item/stack/cable_coil = 1,
/obj/item/weapon/stock_parts/console_screen = 1)
/obj/item/weapon/circuitboard/thermomachine/attackby(obj/item/I, mob/user)
/obj/item/weapon/circuitboard/thermomachine/attackby(obj/item/I, mob/user, params)
if(istype(I, /obj/item/weapon/screwdriver))
if(build_path == /obj/machinery/atmospherics/unary/cold_sink/freezer)
build_path = /obj/machinery/atmospherics/unary/heat_reservoir/heater
+1 -1
View File
@@ -270,7 +270,7 @@
add_fingerprint(usr)
return 1 // update UIs attached to this object
/obj/machinery/atmospherics/unary/cryo_cell/attackby(var/obj/item/weapon/G as obj, var/mob/user as mob)
/obj/machinery/atmospherics/unary/cryo_cell/attackby(var/obj/item/weapon/G as obj, var/mob/user as mob, params)
if(istype(G, /obj/item/weapon/reagent_containers/glass))
if(beaker)
user << "\red A beaker is already loaded into the machine."
+1 -1
View File
@@ -406,7 +406,7 @@
name = initial(name)
/obj/machinery/cryopod/attackby(var/obj/item/weapon/G as obj, var/mob/user as mob)
/obj/machinery/cryopod/attackby(var/obj/item/weapon/G as obj, var/mob/user as mob, params)
if(istype(G, /obj/item/weapon/grab))
+2 -2
View File
@@ -65,7 +65,7 @@ for reference:
var/health = 100.0
var/maxhealth = 100.0
attackby(obj/item/W as obj, mob/user as mob)
attackby(obj/item/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/stack/sheet/wood))
if (src.health < src.maxhealth)
visible_message("\red [user] begins to repair the [src]!")
@@ -157,7 +157,7 @@ for reference:
src.icon_state = "barrier[src.locked]"
attackby(obj/item/weapon/W as obj, mob/user as mob)
attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/card/id))
if (src.allowed(user))
if (src.emagged < 2.0)
+2 -2
View File
@@ -40,7 +40,7 @@
/obj/machinery/door_control/attack_paw(mob/user as mob)
return src.attack_hand(user)
/obj/machinery/door_control/attackby(obj/item/weapon/W, mob/user as mob)
/obj/machinery/door_control/attackby(obj/item/weapon/W, mob/user as mob, params)
/* For later implementation
if (istype(W, /obj/item/weapon/screwdriver))
{
@@ -142,7 +142,7 @@
/obj/machinery/driver_button/attack_paw(mob/user as mob)
return src.attack_hand(user)
/obj/machinery/driver_button/attackby(obj/item/weapon/W, mob/user as mob)
/obj/machinery/driver_button/attackby(obj/item/weapon/W, mob/user as mob, params)
if(istype(W, /obj/item/device/detective_scanner))
return
+5 -5
View File
@@ -298,7 +298,7 @@
user << "You do not know how to operate this airlock's mechanism."
return
/obj/machinery/door/airlock/alien/attackby(C as obj, mob/user as mob)
/obj/machinery/door/airlock/alien/attackby(C as obj, mob/user as mob, params)
if(isalien(user) || isrobot(user) || isAI(user))
..(C, user)
else
@@ -943,7 +943,7 @@ About the new airlock wires panel:
updateUsrDialog()
return 0
/obj/machinery/door/airlock/attackby(C as obj, mob/user as mob)
/obj/machinery/door/airlock/attackby(C as obj, mob/user as mob, params)
//world << text("airlock attackby src [] obj [] mob []", src, C, user)
if(!istype(usr, /mob/living/silicon))
if(src.isElectrified())
@@ -1048,7 +1048,7 @@ About the new airlock wires panel:
..()
return
/obj/machinery/door/airlock/plasma/attackby(C as obj, mob/user as mob)
/obj/machinery/door/airlock/plasma/attackby(C as obj, mob/user as mob, params)
if(C)
ignite(is_hot(C))
..()
@@ -1174,7 +1174,7 @@ About the new airlock wires panel:
return
/obj/machinery/door/airlock/hatch/gamma/attackby(C as obj, mob/user as mob)
/obj/machinery/door/airlock/hatch/gamma/attackby(C as obj, mob/user as mob, params)
//world << text("airlock attackby src [] obj [] mob []", src, C, user)
if(!istype(usr, /mob/living/silicon))
if(src.isElectrified())
@@ -1207,7 +1207,7 @@ About the new airlock wires panel:
return
/obj/machinery/door/airlock/highsecurity/red/attackby(C as obj, mob/user as mob)
/obj/machinery/door/airlock/highsecurity/red/attackby(C as obj, mob/user as mob, params)
//world << text("airlock attackby src [] obj [] mob []", src, C, user)
if(!istype(usr, /mob/living/silicon))
if(src.isElectrified())
+1 -1
View File
@@ -245,7 +245,7 @@ obj/machinery/access_button/update_icon()
else
icon_state = "access_button_off"
obj/machinery/access_button/attackby(obj/item/I as obj, mob/user as mob)
obj/machinery/access_button/attackby(obj/item/I as obj, mob/user as mob, params)
//Swiping ID on the access button
if (istype(I, /obj/item/weapon/card/id) || istype(I, /obj/item/device/pda))
attack_hand(user)
+1 -1
View File
@@ -143,7 +143,7 @@
return
..()
/obj/machinery/door/attackby(obj/item/I as obj, mob/user as mob)
/obj/machinery/door/attackby(obj/item/I as obj, mob/user as mob, params)
if(istype(I, /obj/item/device/detective_scanner))
return
if(src.operating || isrobot(user)) return //borgs can't attack doors open because it conflicts with their AI-like interaction with them.
+1 -1
View File
@@ -169,7 +169,7 @@
/obj/machinery/door/firedoor/attack_hand(mob/user as mob)
return attackby(null, user)
/obj/machinery/door/firedoor/attackby(obj/item/weapon/C as obj, mob/user as mob)
/obj/machinery/door/firedoor/attackby(obj/item/weapon/C as obj, mob/user as mob, params)
add_fingerprint(user)
if(operating)
return//Already doing something.
+1 -1
View File
@@ -25,7 +25,7 @@
else
return 0
/obj/machinery/door/poddoor/attackby(obj/item/weapon/C as obj, mob/user as mob)
/obj/machinery/door/poddoor/attackby(obj/item/weapon/C as obj, mob/user as mob, params)
src.add_fingerprint(user)
if (!( istype(C, /obj/item/weapon/crowbar) || (istype(C, /obj/item/weapon/twohanded/fireaxe) && C:wielded == 1) ))
return
+1 -1
View File
@@ -13,7 +13,7 @@
density = 0
opacity = 0
/obj/machinery/door/poddoor/shutters/attackby(obj/item/weapon/C as obj, mob/user as mob)
/obj/machinery/door/poddoor/shutters/attackby(obj/item/weapon/C as obj, mob/user as mob, params)
add_fingerprint(user)
if(!(istype(C, /obj/item/weapon/crowbar) || (istype(C, /obj/item/weapon/twohanded/fireaxe) && C:wielded == 1) ))
return
+1 -1
View File
@@ -10,7 +10,7 @@
return
attackby(obj/item/I as obj, mob/user as mob)
attackby(obj/item/I as obj, mob/user as mob, params)
if(istype(I, /obj/item/weapon/card/emag)||istype(I, /obj/item/weapon/melee/energy/blade)) return
if(src.locked) return
..()
+1 -1
View File
@@ -248,7 +248,7 @@
emagged = 1
return 1
/obj/machinery/door/window/attackby(obj/item/weapon/I as obj, mob/living/user as mob)
/obj/machinery/door/window/attackby(obj/item/weapon/I as obj, mob/living/user as mob, params)
//If it's in the process of opening/closing, ignore the click
if (src.operating)
+1 -1
View File
@@ -19,7 +19,7 @@ var/list/doppler_arrays = list()
/obj/machinery/doppler_array/process()
return PROCESS_KILL
/obj/machinery/doppler_array/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/doppler_array/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if(istype(O, /obj/item/weapon/wrench))
playsound(loc, 'sound/items/Ratchet.ogg', 50, 1)
anchored = !anchored
+1 -1
View File
@@ -31,7 +31,7 @@
/obj/machinery/drying_rack/attackby(var/obj/item/W as obj, var/mob/user as mob)
/obj/machinery/drying_rack/attackby(var/obj/item/W as obj, var/mob/user as mob, params)
if(is_type_in_list(W,accepted))
if(!running)
if(istype(W,/obj/item/weapon/reagent_containers/food/snacks/meat))
+3 -3
View File
@@ -38,7 +38,7 @@
// src.sd_SetLuminosity(0)
//Don't want to render prison breaks impossible
/obj/machinery/flasher/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/machinery/flasher/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/wirecutters))
add_fingerprint(user)
src.disable = !src.disable
@@ -107,7 +107,7 @@
if ((M.m_intent != "walk") && (src.anchored))
src.flash()
/obj/machinery/flasher/portable/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/machinery/flasher/portable/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/wrench))
add_fingerprint(user)
src.anchored = !src.anchored
@@ -126,7 +126,7 @@
/obj/machinery/flasher_button/attack_paw(mob/user as mob)
return src.attack_hand(user)
/obj/machinery/flasher_button/attackby(obj/item/weapon/W, mob/user as mob)
/obj/machinery/flasher_button/attackby(obj/item/weapon/W, mob/user as mob, params)
return src.attack_hand(user)
/obj/machinery/flasher_button/attack_hand(mob/user as mob)
+1 -1
View File
@@ -63,7 +63,7 @@
updateicon()
/obj/machinery/floodlight/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/machinery/floodlight/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if(istype(W, /obj/item/weapon/wrench))
if (!anchored && !isinspace())
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
+1 -1
View File
@@ -54,7 +54,7 @@
var/list/internal_log = list()
var/mode = 0 // 0 - making pass, 1 - viewing logs
/obj/machinery/computer/guestpass/attackby(obj/O, mob/user)
/obj/machinery/computer/guestpass/attackby(obj/O, mob/user, params)
if(istype(O, /obj/item/weapon/card/id))
if(!giver)
user.drop_item()
+1 -1
View File
@@ -50,7 +50,7 @@
obj/machinery/holosign_switch/attack_paw(mob/user as mob)
return src.attack_hand(user)
/obj/machinery/holosign_switch/attackby(obj/item/weapon/W, mob/user as mob)
/obj/machinery/holosign_switch/attackby(obj/item/weapon/W, mob/user as mob, params)
if(istype(W, /obj/item/device/detective_scanner))
return
return src.attack_hand(user)
+2 -2
View File
@@ -664,7 +664,7 @@
return
/obj/machinery/portable_atmospherics/hydroponics/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/portable_atmospherics/hydroponics/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if(exchange_parts(user, O))
return
@@ -958,7 +958,7 @@
use_power = 0
draw_warnings = 0
/obj/machinery/portable_atmospherics/hydroponics/soil/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/portable_atmospherics/hydroponics/soil/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if(istype(O, /obj/item/weapon/shovel))
user << "You clear up [src]!"
del(src)
+2 -2
View File
@@ -71,7 +71,7 @@
icon_state = "[base_state]-p"
// src.sd_SetLuminosity(0)
/obj/machinery/sparker/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/machinery/sparker/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if(istype(W, /obj/item/device/detective_scanner))
return
if (istype(W, /obj/item/weapon/screwdriver))
@@ -125,7 +125,7 @@
/obj/machinery/ignition_switch/attack_paw(mob/user as mob)
return src.attack_hand(user)
/obj/machinery/ignition_switch/attackby(obj/item/weapon/W, mob/user as mob)
/obj/machinery/ignition_switch/attackby(obj/item/weapon/W, mob/user as mob, params)
return src.attack_hand(user)
/obj/machinery/ignition_switch/attack_hand(mob/user as mob)
+1 -1
View File
@@ -57,7 +57,7 @@
src.update_icon()
/obj/machinery/iv_drip/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/machinery/iv_drip/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if (istype(W, /obj/item/weapon/reagent_containers))
if(!isnull(src.beaker))
user << "There is already a reagent container loaded!"
+1 -1
View File
@@ -78,7 +78,7 @@
else
src.startgibbing(user)
/obj/machinery/gibber/attackby(obj/item/weapon/grab/G as obj, mob/user as mob)
/obj/machinery/gibber/attackby(obj/item/weapon/grab/G as obj, mob/user as mob, params)
if(src.occupant)
user << "\red The gibber is full, empty it first!"
return
+1 -1
View File
@@ -89,7 +89,7 @@ var/list/ingredients_source = list(
user << browse(dat,"window=icecreamvat;size=600x400")
/obj/machinery/icecream_vat/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/icecream_vat/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if(istype(O, /obj/item/weapon/reagent_containers))
if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/icecream))
var/obj/item/weapon/reagent_containers/food/snacks/icecream/I = O
+1 -1
View File
@@ -31,7 +31,7 @@
return
/obj/machinery/juicer/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/juicer/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if (istype(O,/obj/item/weapon/reagent_containers/glass) || \
istype(O,/obj/item/weapon/reagent_containers/food/drinks/drinkingglass))
if (beaker)
+1 -1
View File
@@ -71,7 +71,7 @@
* Item Adding
********************/
/obj/machinery/microwave/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/microwave/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if(operating)
return
if(!broken && dirty < 100)
@@ -12,7 +12,7 @@
var/grinded = 0
/obj/machinery/monkey_recycler/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/monkey_recycler/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if (src.stat != 0) //NOPOWER etc
return
if (istype(O, /obj/item/weapon/grab))
+1 -1
View File
@@ -104,7 +104,7 @@
return P
return 0
/obj/machinery/processor/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/processor/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if(src.processing)
user << "\red The processor is in the process of processing."
return 1
+1 -1
View File
@@ -75,7 +75,7 @@
* Item Adding
********************/
/obj/machinery/smartfridge/attackby(var/obj/item/O as obj, var/mob/user as mob)
/obj/machinery/smartfridge/attackby(var/obj/item/O as obj, var/mob/user as mob, params)
if(!src.ispowered)
user << "<span class='notice'>\The [src] is unpowered and useless.</span>"
return
+1 -1
View File
@@ -13,7 +13,7 @@
var/icon_state_charging = "recharger1"
var/icon_state_idle = "recharger0"
/obj/machinery/laprecharger/attackby(obj/item/weapon/G as obj, mob/user as mob)
/obj/machinery/laprecharger/attackby(obj/item/weapon/G as obj, mob/user as mob, params)
if(istype(user,/mob/living/silicon))
return
if(istype(G, /obj/item/weapon/gun/energy) || istype(G, /obj/item/weapon/melee/baton))
+1 -1
View File
@@ -26,7 +26,7 @@
return 0
return 1
/obj/machinery/metaldetector/attackby(obj/item/W as obj, mob/user as mob)
/obj/machinery/metaldetector/attackby(obj/item/W as obj, mob/user as mob, params)
if(istype(W, /obj/item/weapon/card))
for(var/ID in list(user.equipped(), user:wear_id, user:belt))
if(src.check_access(ID,list("20")))
+1 -1
View File
@@ -101,7 +101,7 @@
frequency.post_signal(src, signal, filter = RADIO_NAVBEACONS)
/obj/machinery/navbeacon/attackby(var/obj/item/I, var/mob/user)
/obj/machinery/navbeacon/attackby(var/obj/item/I, var/mob/user, params)
var/turf/T = loc
if(T.intact)
return // prevent intraction when T-scanner revealed
+2 -2
View File
@@ -736,7 +736,7 @@ var/list/obj/machinery/newscaster/allCasters = list() //Global list that will co
src.updateUsrDialog()
/obj/machinery/newscaster/attackby(obj/item/I as obj, mob/living/user as mob)
/obj/machinery/newscaster/attackby(obj/item/I as obj, mob/living/user as mob, params)
if(istype(I, /obj/item/weapon/wrench))
user << "<span class='notice'>Now [anchored ? "un" : ""]securing [name]</span>"
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
@@ -938,7 +938,7 @@ obj/item/weapon/newspaper/Topic(href, href_list)
src.attack_self(src.loc)
obj/item/weapon/newspaper/attackby(obj/item/weapon/W as obj, mob/user as mob)
obj/item/weapon/newspaper/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if(istype(W, /obj/item/weapon/pen))
if(src.scribble_page == src.curr_page)
user << "<FONT COLOR='blue'>There's already a scribble in this page... You wouldn't want to make things too cluttered, would you?</FONT>"
+2 -2
View File
@@ -388,7 +388,7 @@ Buildable meters
/obj/item/pipe/attack_self(mob/user as mob)
return rotate()
/obj/item/pipe/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
/obj/item/pipe/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob, params)
..()
//*
if (!istype(W, /obj/item/weapon/wrench))
@@ -1040,7 +1040,7 @@ Buildable meters
item_state = "buildpipe"
w_class = 4
/obj/item/pipe_meter/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
/obj/item/pipe_meter/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob, params)
..()
if (!istype(W, /obj/item/weapon/wrench))
+1 -1
View File
@@ -87,7 +87,7 @@
wait = 0
return
/obj/machinery/pipedispenser/attackby(var/obj/item/W as obj, var/mob/user as mob)
/obj/machinery/pipedispenser/attackby(var/obj/item/W as obj, var/mob/user as mob, params)
src.add_fingerprint(usr)
if (istype(W, /obj/item/pipe) || istype(W, /obj/item/pipe_meter))
usr << "\blue You put [W] back to [src]."
+1 -1
View File
@@ -27,7 +27,7 @@ Growing it to term with nothing injected will grab a ghost from the observers. *
var/found_player = 0
var/beingharvested = 0
/obj/item/seeds/replicapod/attackby(obj/item/weapon/W as obj, mob/user as mob)
/obj/item/seeds/replicapod/attackby(obj/item/weapon/W as obj, mob/user as mob, params)
if(istype(W,/obj/item/weapon/reagent_containers))
+3 -3
View File
@@ -285,7 +285,7 @@ Status: []<BR>"},
/obj/machinery/porta_turret/attackby(obj/item/W as obj, mob/user as mob)
/obj/machinery/porta_turret/attackby(obj/item/W as obj, mob/user as mob, params)
if(stat & BROKEN)
if(istype(W, /obj/item/weapon/crowbar))
@@ -692,7 +692,7 @@ Status: []<BR>"},
/obj/machinery/porta_turret_construct/attackby(obj/item/W as obj, mob/user as mob)
/obj/machinery/porta_turret_construct/attackby(obj/item/W as obj, mob/user as mob, params)
// this is a bit unweildy but self-explanitory
switch(build_step)
@@ -1018,7 +1018,7 @@ Status: []<BR>"},
/obj/machinery/porta_turret_cover/attackby(obj/item/W as obj, mob/user as mob)
/obj/machinery/porta_turret_cover/attackby(obj/item/W as obj, mob/user as mob, params)
if ((istype(W, /obj/item/weapon/card/emag)) && (!Parent_Turret.emagged))
user << "\red You short out [Parent_Turret]'s threat assessment circuits."
+2 -2
View File
@@ -195,7 +195,7 @@
updateUsrDialog()
return
/obj/machinery/programmable/attackby(obj/item/I as obj, mob/user as mob)
/obj/machinery/programmable/attackby(obj/item/I as obj, mob/user as mob, params)
if(istype(I,/obj/item/weapon/wrench)) // code borrowed from pipe dispenser
if (unwrenched==0)
playsound(src.loc, 'sound/items/Ratchet.ogg', 50, 1)
@@ -580,7 +580,7 @@
..()
resetlists()
attackby(obj/item/I as obj, mob/user as mob)
attackby(obj/item/I as obj, mob/user as mob, params)
if(istype(I,/obj/item/device/multitool))
hacking = (hacking?0:1)
if(hacking)

Some files were not shown because too many files have changed in this diff Show More