mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-27 22:17:32 +01:00
git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1057 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
@@ -41,6 +41,7 @@
|
||||
src.mustard_gas.set_up(5, 0, usr.loc)
|
||||
|
||||
/obj/item/weapon/smokebomb/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/screwdriver))
|
||||
if (src.det_time == 60)
|
||||
src.det_time = 20
|
||||
@@ -109,6 +110,7 @@
|
||||
return
|
||||
|
||||
/obj/item/weapon/mustardbomb/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/screwdriver))
|
||||
if (src.det_time == 80)
|
||||
src.det_time = 40
|
||||
@@ -208,6 +210,7 @@
|
||||
item_state = "syringe_kit"
|
||||
|
||||
/obj/item/weapon/storage/trashcan/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
|
||||
if (src.contents.len >= 7)
|
||||
user << "The trashcan is full!"
|
||||
|
||||
@@ -162,6 +162,8 @@
|
||||
return list(access_robotics, access_tech_storage, access_maint_tunnels)
|
||||
if("Cargo Technician")
|
||||
return list(access_maint_tunnels, access_cargo, access_cargo_bot)
|
||||
if("Mail Sorter")
|
||||
return list(access_maint_tunnels, access_mailsorting)
|
||||
if("Shaft Miner")
|
||||
return list(access_maint_tunnels, access_mining)
|
||||
if("Quartermaster")
|
||||
@@ -335,5 +337,5 @@
|
||||
/proc/get_all_jobs()
|
||||
return list("Assistant", "Station Engineer", "Shaft Miner", "Detective", "Medical Doctor", "Captain", "Security Officer", "Warden",
|
||||
"Geneticist", "Scientist", "Head of Security", "Head of Personnel", "Atmospheric Technician",
|
||||
"Chaplain", "Barman", "Chemist", "Janitor", "Clown", "Mime", "Chef", "Roboticist", "Quartermaster",
|
||||
"Chaplain", "Barman", "Chemist", "Janitor", "Clown", "Mime", "Chef", "Roboticist", "Quartermaster", "Mail Sorter",
|
||||
"Chief Engineer", "Research Director", "Botanist", "Librarian", "Lawyer", "Virologist", "Cargo Technician", "Chief Medical Officer")
|
||||
@@ -563,6 +563,13 @@
|
||||
src.equip_if_possible(new /obj/item/clothing/under/rank/cargo(src), slot_w_uniform)
|
||||
src.equip_if_possible(new /obj/item/device/pda/quartermaster(src), slot_belt)
|
||||
|
||||
if ("Mail Sorter")
|
||||
src.equip_if_possible(new /obj/item/device/radio/headset/headset_cargo(src), slot_ears)
|
||||
src.equip_if_possible(new /obj/item/clothing/gloves/black(src), slot_gloves)
|
||||
src.equip_if_possible(new /obj/item/clothing/shoes/black(src), slot_shoes)
|
||||
src.equip_if_possible(new /obj/item/clothing/under/rank/cargo(src), slot_w_uniform)
|
||||
src.equip_if_possible(new /obj/item/device/pda/quartermaster(src), slot_belt)
|
||||
|
||||
if ("Chief Engineer")
|
||||
src.equip_if_possible(new /obj/item/device/radio/headset/heads/ce (src), slot_ears)
|
||||
src.equip_if_possible(new /obj/item/device/pda/heads(src), slot_belt)
|
||||
|
||||
@@ -23,6 +23,7 @@ var/list/occupations = list(
|
||||
"Chemist", "Chemist",
|
||||
"Quartermaster",
|
||||
"Cargo Technician","Cargo Technician",
|
||||
"Mail Sorter", "Mail Sorter",
|
||||
"Botanist", "Botanist",
|
||||
"Librarian",
|
||||
"Lawyer",
|
||||
|
||||
@@ -37,7 +37,7 @@
|
||||
var/oldloc = null
|
||||
req_access = list(access_janitor)
|
||||
var/path[] = new()
|
||||
|
||||
|
||||
/obj/machinery/bot/cleanbot/New()
|
||||
..()
|
||||
src.get_targets()
|
||||
@@ -248,6 +248,7 @@ text("<A href='?src=\ref[src];operation=oddbutton'>[src.oddbutton ? "Yes" : "No"
|
||||
return
|
||||
|
||||
/obj/item/weapon/bucket_sensor/attackby(var/obj/item/W, mob/user as mob)
|
||||
..()
|
||||
if(istype(W, /obj/item/robot_parts/l_arm) || istype(W, /obj/item/robot_parts/r_arm))
|
||||
var/obj/machinery/bot/cleanbot/A = new /obj/machinery/bot/cleanbot
|
||||
if(user.r_hand == src || user.l_hand == src)
|
||||
|
||||
@@ -788,6 +788,7 @@ Auto Patrol: []"},
|
||||
|
||||
|
||||
/obj/item/weapon/ed209_assembly/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (((istype(W, /obj/item/robot_parts/l_leg)) || (istype(W, /obj/item/robot_parts/r_leg))) && (src.build_step == 0 || src.build_step == 1))
|
||||
src.build_step++
|
||||
user << "You add the robot leg to [src]!"
|
||||
|
||||
@@ -360,7 +360,7 @@
|
||||
|
||||
if (amount)
|
||||
new /obj/item/stack/tile(Tsec) // only one tile, yes
|
||||
|
||||
|
||||
var/datum/effects/system/spark_spread/s = new /datum/effects/system/spark_spread
|
||||
s.set_up(3, 1, src)
|
||||
s.start()
|
||||
@@ -369,6 +369,7 @@
|
||||
|
||||
|
||||
/obj/item/weapon/storage/toolbox/mechanical/attackby(var/obj/item/stack/tile/T, mob/user as mob)
|
||||
..()
|
||||
if(!istype(T, /obj/item/stack/tile))
|
||||
..()
|
||||
return
|
||||
@@ -391,6 +392,7 @@
|
||||
del(src)
|
||||
|
||||
/obj/item/weapon/toolbox_tiles/attackby(var/obj/item/W, mob/user as mob)
|
||||
..()
|
||||
if(istype(W, /obj/item/device/prox_sensor))
|
||||
var/obj/item/weapon/toolbox_tiles_sensor/B = new /obj/item/weapon/toolbox_tiles_sensor
|
||||
B.loc = user
|
||||
@@ -416,6 +418,7 @@
|
||||
src.created_name = t
|
||||
|
||||
/obj/item/weapon/toolbox_tiles_sensor/attackby(var/obj/item/W, mob/user as mob)
|
||||
..()
|
||||
if(istype(W, /obj/item/robot_parts/l_arm) || istype(W, /obj/item/robot_parts/r_arm))
|
||||
var/obj/machinery/bot/floorbot/A = new /obj/machinery/bot/floorbot
|
||||
if(user.r_hand == src || user.l_hand == src)
|
||||
|
||||
@@ -527,6 +527,7 @@
|
||||
*/
|
||||
|
||||
/obj/item/weapon/storage/firstaid/attackby(var/obj/item/robot_parts/S, mob/user as mob)
|
||||
..()
|
||||
if ((!istype(S, /obj/item/robot_parts/l_arm)) && (!istype(S, /obj/item/robot_parts/r_arm)))
|
||||
if (src.contents.len >= 7)
|
||||
return
|
||||
@@ -564,6 +565,7 @@
|
||||
del(src)
|
||||
|
||||
/obj/item/weapon/firstaid_arm_assembly/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if ((istype(W, /obj/item/device/healthanalyzer)) && (!src.build_step))
|
||||
src.build_step++
|
||||
user << "You add the health sensor to [src]!"
|
||||
|
||||
@@ -686,7 +686,7 @@
|
||||
var/datum/effects/system/spark_spread/s = new /datum/effects/system/spark_spread
|
||||
s.set_up(3, 1, src)
|
||||
s.start()
|
||||
|
||||
|
||||
new /obj/decal/cleanable/oil(src.loc)
|
||||
del(src)
|
||||
|
||||
@@ -699,6 +699,7 @@
|
||||
//Secbot Construction
|
||||
|
||||
/obj/item/clothing/head/helmet/attackby(var/obj/item/device/radio/signaler/S, mob/user as mob)
|
||||
..()
|
||||
if (!istype(S, /obj/item/device/radio/signaler))
|
||||
..()
|
||||
return
|
||||
@@ -724,6 +725,7 @@
|
||||
|
||||
|
||||
/obj/item/weapon/secbot_assembly/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if ((istype(W, /obj/item/weapon/weldingtool)) && (!src.build_step))
|
||||
if(W:remove_fuel(1,user))
|
||||
src.build_step++
|
||||
|
||||
@@ -41,7 +41,7 @@ Buildable meters
|
||||
is_bent = 1
|
||||
if (istype(make_from, /obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction))
|
||||
src.pipe_type = PIPE_JUNCTION
|
||||
else if(istype(make_from, /obj/machinery/atmospherics/pipe/simple/heat_exchanging))
|
||||
else if(istype(make_from, /obj/machinery/atmospherics/pipe/simple/heat_exchanging))
|
||||
src.pipe_type = PIPE_HE_STRAIGHT + is_bent
|
||||
else if(istype(make_from, /obj/machinery/atmospherics/pipe/simple/insulated))
|
||||
src.pipe_type = PIPE_INSULATED_STRAIGHT + is_bent
|
||||
@@ -199,6 +199,7 @@ Buildable meters
|
||||
return rotate()
|
||||
|
||||
/obj/item/pipe/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
|
||||
..()
|
||||
//*
|
||||
if (!istype(W, /obj/item/weapon/wrench))
|
||||
return ..()
|
||||
@@ -421,6 +422,7 @@ Buildable meters
|
||||
w_class = 4
|
||||
|
||||
/obj/item/pipe_meter/attackby(var/obj/item/weapon/W as obj, var/mob/user as mob)
|
||||
..()
|
||||
|
||||
if (!istype(W, /obj/item/weapon/wrench))
|
||||
return ..()
|
||||
|
||||
@@ -137,7 +137,16 @@
|
||||
del(src)
|
||||
|
||||
/obj/closet/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if (src.opened)
|
||||
if (istype(W, /obj/item/weapon/packageWrap))
|
||||
var/obj/item/weapon/packageWrap/O = W
|
||||
if (O.amount > 3)
|
||||
var/obj/bigDelivery/P = new /obj/bigDelivery(get_turf(src.loc))
|
||||
P.wrapped = src
|
||||
src.close()
|
||||
src.welded = 1
|
||||
src.loc = P
|
||||
O.amount -= 3
|
||||
else if (src.opened)
|
||||
if (istype(W, /obj/item/weapon/grab))
|
||||
src.MouseDrop_T(W:affecting, user) //act like they were dragged onto the closet
|
||||
|
||||
|
||||
@@ -612,6 +612,7 @@
|
||||
|
||||
|
||||
/obj/item/device/pda/attackby(obj/item/weapon/C as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(C, /obj/item/weapon/cartridge) && isnull(src.cartridge))
|
||||
user.drop_item()
|
||||
C.loc = src
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
|
||||
/obj/item/device/igniter/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if ((istype(W, /obj/item/device/radio/signaler) && !( src.status )))
|
||||
var/obj/item/device/radio/signaler/S = W
|
||||
if (!( S.b_stat ))
|
||||
|
||||
@@ -111,6 +111,7 @@
|
||||
return
|
||||
|
||||
/obj/item/device/infra/attackby(obj/item/device/radio/signaler/S as obj, mob/user as mob)
|
||||
..()
|
||||
if ((!( istype(S, /obj/item/device/radio/signaler) ) || !( S.b_stat )))
|
||||
return
|
||||
var/obj/item/assembly/rad_infra/R = new /obj/item/assembly/rad_infra( user )
|
||||
|
||||
@@ -68,6 +68,7 @@
|
||||
return
|
||||
|
||||
/obj/item/device/prox_sensor/attackby(obj/item/device/radio/signaler/S as obj, mob/user as mob)
|
||||
..()
|
||||
if ((!( istype(S, /obj/item/device/radio/signaler) ) || !( S.b_stat )))
|
||||
return
|
||||
var/obj/item/assembly/rad_prox/R = new /obj/item/assembly/rad_prox( user )
|
||||
|
||||
@@ -49,6 +49,7 @@ PLANT ANALYZER
|
||||
M.invisibility = 2
|
||||
|
||||
/obj/item/device/detective_scanner/attackby(obj/item/weapon/f_card/W as obj, mob/user as mob)
|
||||
..()
|
||||
|
||||
if (istype(W, /obj/item/weapon/f_card))
|
||||
if (W.fingerprints)
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
return
|
||||
|
||||
/obj/item/device/taperecorder/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/card/emag))
|
||||
if (src.emagged == 0)
|
||||
src.emagged = 1
|
||||
|
||||
@@ -62,6 +62,7 @@
|
||||
return
|
||||
|
||||
/obj/item/device/timer/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/device/radio/signaler) )
|
||||
var/obj/item/device/radio/signaler/S = W
|
||||
if(!S.b_stat)
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
// APC HULL
|
||||
|
||||
/obj/item/apc_frame/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/wrench))
|
||||
new /obj/item/stack/sheet/metal( get_turf(src.loc), 2 )
|
||||
del(src)
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
return
|
||||
|
||||
/obj/item/assembly/shock_kit/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if ((istype(W, /obj/item/weapon/wrench) && !( src.status )))
|
||||
var/turf/T = src.loc
|
||||
if (ismob(T))
|
||||
|
||||
@@ -42,6 +42,7 @@ THERMAL GLASSES
|
||||
return
|
||||
|
||||
/obj/item/clothing/shoes/orange/attackby(H as obj, loc)
|
||||
..()
|
||||
if ((istype(H, /obj/item/weapon/handcuffs) && !( src.chained )))
|
||||
//H = null
|
||||
del(H)
|
||||
@@ -121,6 +122,7 @@ THERMAL GLASSES
|
||||
|
||||
|
||||
/obj/item/clothing/under/chameleon/attackby(obj/item/clothing/under/U as obj, mob/user as mob)
|
||||
..()
|
||||
|
||||
if(istype(U, /obj/item/clothing/under/chameleon))
|
||||
user << "\red Nothing happens."
|
||||
|
||||
@@ -144,6 +144,17 @@
|
||||
user.update_clothing()
|
||||
return
|
||||
|
||||
/obj/item/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if (istype(W, /obj/item/weapon/packageWrap))
|
||||
var/obj/item/weapon/packageWrap/O = W
|
||||
if (O.amount > 1)
|
||||
var/obj/item/smallDelivery/P = new /obj/item/smallDelivery(get_turf(src.loc))
|
||||
P.wrapped = src
|
||||
|
||||
src.loc = P
|
||||
O.amount -= 1
|
||||
|
||||
|
||||
/obj/item/proc/attack(mob/M as mob, mob/user as mob, def_zone)
|
||||
if (!M) // not sure if this is the right thing...
|
||||
return
|
||||
|
||||
@@ -72,6 +72,7 @@
|
||||
return 0
|
||||
|
||||
/obj/item/robot_parts/robot_suit/attackby(obj/item/W as obj, mob/user as mob)
|
||||
..()
|
||||
if(istype(W, /obj/item/stack/sheet/metal))
|
||||
var/obj/item/weapon/ed209_assembly/B = new /obj/item/weapon/ed209_assembly
|
||||
B.loc = get_turf(src)
|
||||
@@ -182,6 +183,7 @@
|
||||
return
|
||||
|
||||
/obj/item/robot_parts/chest/attackby(obj/item/W as obj, mob/user as mob)
|
||||
..()
|
||||
if(istype(W, /obj/item/weapon/cell))
|
||||
if(src.cell)
|
||||
user << "\blue You have already inserted a cell!"
|
||||
@@ -203,6 +205,7 @@
|
||||
return
|
||||
|
||||
/obj/item/robot_parts/head/attackby(obj/item/W as obj, mob/user as mob)
|
||||
..()
|
||||
if(istype(W, /obj/item/device/flash))
|
||||
if(src.flash1 && src.flash2)
|
||||
user << "\blue You have already inserted the eyes!"
|
||||
|
||||
@@ -11,6 +11,7 @@ RCD
|
||||
return
|
||||
|
||||
/obj/item/weapon/rcd/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/rcd_ammo))
|
||||
if ((matter + 10) > 30)
|
||||
user << "The RCD cant hold any more matter."
|
||||
|
||||
@@ -118,6 +118,7 @@ FINGERPRINT CARD
|
||||
return
|
||||
|
||||
/obj/item/weapon/fcardholder/attackby(obj/item/weapon/P as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(P, /obj/item/weapon/f_card))
|
||||
if (src.contents.len < 30)
|
||||
user.drop_item()
|
||||
@@ -205,7 +206,7 @@ FINGERPRINT CARD
|
||||
return
|
||||
|
||||
/obj/item/weapon/f_card/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/f_card))
|
||||
if ((src.fingerprints || W.fingerprints))
|
||||
return
|
||||
|
||||
@@ -72,6 +72,7 @@ obj/item/weapon/matchbox.attackby(obj/item/weapon/match/W as obj, mob/user as mo
|
||||
//CIGARETTES + CIGARS//
|
||||
///////////////////////
|
||||
/obj/item/clothing/mask/cigarette/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if(istype(W, /obj/item/weapon/weldingtool) && W:welding)
|
||||
if(src.lit == 0)
|
||||
src.lit = 1
|
||||
|
||||
@@ -61,6 +61,7 @@ GETLINEEEEEEEEEEEEEEEEEEEEE
|
||||
return
|
||||
|
||||
/obj/item/assembly/weld_rod/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/wrench) )
|
||||
var/turf/T = src.loc
|
||||
if (ismob(T))
|
||||
@@ -114,6 +115,7 @@ GETLINEEEEEEEEEEEEEEEEEEEEE
|
||||
return
|
||||
|
||||
/obj/item/assembly/w_r_ignite/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if ((istype(W, /obj/item/weapon/wrench) && !( src.status )))
|
||||
var/turf/T = src.loc
|
||||
if (ismob(T))
|
||||
@@ -156,6 +158,7 @@ GETLINEEEEEEEEEEEEEEEEEEEEE
|
||||
location.hotspot_expose(700, 2)
|
||||
|
||||
/obj/item/weapon/flamethrower/attackby(obj/item/W as obj, mob/user as mob)
|
||||
..()
|
||||
if(user.stat || user.restrained() || user.lying)
|
||||
return
|
||||
if (istype(W,/obj/item/weapon/tank/plasma))
|
||||
|
||||
@@ -44,6 +44,7 @@ FLASHBANG
|
||||
return
|
||||
|
||||
/obj/item/weapon/flashbang/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/screwdriver))
|
||||
switch(src.det_time)
|
||||
if ("1")
|
||||
|
||||
@@ -129,6 +129,7 @@ TELEPORT GUN
|
||||
return
|
||||
|
||||
obj/item/weapon/gun/revolver/attackby(obj/item/weapon/ammo/a357/A as obj, mob/user as mob)
|
||||
..()
|
||||
|
||||
if (istype(A, /obj/item/weapon/ammo/a357))
|
||||
if (src.bullets >= 7)
|
||||
@@ -242,6 +243,7 @@ obj/item/weapon/gun/revolver/attackby(obj/item/weapon/ammo/a357/A as obj, mob/us
|
||||
//0, not loaded. 1, beanbag, 2, 12gauge, 3, blank, 4, dart.
|
||||
|
||||
/obj/item/weapon/gun/shotgun/attackby(obj/item/weapon/A as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(A, /obj/item/weapon/ammo/shell/beanbag))
|
||||
if (index == src.shellsmax || shellsunlimited >= 1) //...than sorry.
|
||||
user << "\blue It's already fully loaded!"
|
||||
@@ -434,6 +436,7 @@ obj/item/weapon/gun/revolver/attackby(obj/item/weapon/ammo/a357/A as obj, mob/us
|
||||
return
|
||||
|
||||
/obj/item/weapon/gun/detectiverevolver/attackby(obj/item/weapon/ammo/a38/A as obj, mob/user as mob)
|
||||
..()
|
||||
|
||||
if (istype(A, /obj/item/weapon/ammo/a38))
|
||||
if (src.bullets >= 7)
|
||||
|
||||
@@ -16,6 +16,7 @@ IMPLANTER
|
||||
return
|
||||
|
||||
/obj/item/weapon/implantcase/attackby(obj/item/weapon/I as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(I, /obj/item/weapon/pen))
|
||||
var/t = input(user, "What would you like the label to be?", text("[]", src.name), null) as text
|
||||
if (user.equipped() != I)
|
||||
@@ -111,7 +112,7 @@ IMPLANTER
|
||||
return
|
||||
|
||||
/obj/item/weapon/implantpad/attackby(obj/item/weapon/implantcase/C as obj, mob/user as mob)
|
||||
|
||||
..()
|
||||
if (istype(C, /obj/item/weapon/implantcase))
|
||||
if (!( src.case ))
|
||||
user.drop_item()
|
||||
|
||||
@@ -38,6 +38,7 @@ MEDICAL
|
||||
..()
|
||||
|
||||
/obj/item/weapon/medical/attackby(obj/item/weapon/medical/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (!istype(W, src.type))
|
||||
return
|
||||
|
||||
|
||||
@@ -212,6 +212,7 @@ CLIPBOARDS
|
||||
return
|
||||
|
||||
/obj/item/weapon/paper/attackby(obj/item/weapon/P as obj, mob/user as mob)
|
||||
..()
|
||||
var/clown = 0
|
||||
if(user.mind && (user.mind.assigned_role == "Clown"))
|
||||
clown = 1
|
||||
@@ -410,6 +411,7 @@ CLIPBOARDS
|
||||
// WRAPPING PAPER
|
||||
|
||||
/obj/item/weapon/wrapping_paper/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (!( locate(/obj/table, src.loc) ))
|
||||
user << "\blue You MUST put the paper on a table!"
|
||||
if (W.w_class < 4)
|
||||
@@ -497,6 +499,7 @@ CLIPBOARDS
|
||||
user << "\blue You cant move."
|
||||
|
||||
/obj/spresent/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
|
||||
if (!istype(W, /obj/item/weapon/wirecutters))
|
||||
user << "/blue I need wirecutters for that."
|
||||
@@ -737,7 +740,7 @@ CLIPBOARDS
|
||||
return
|
||||
|
||||
/obj/item/weapon/clipboard/attackby(obj/item/weapon/P as obj, mob/user as mob)
|
||||
|
||||
..()
|
||||
if (istype(P, /obj/item/weapon/paper))
|
||||
if (src.contents.len < 15)
|
||||
user.drop_item()
|
||||
|
||||
@@ -10,6 +10,7 @@ RACK PARTS
|
||||
// TABLE PARTS
|
||||
|
||||
/obj/item/weapon/table_parts/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/wrench))
|
||||
new /obj/item/stack/sheet/metal( src.loc )
|
||||
//SN src = null
|
||||
@@ -39,6 +40,7 @@ RACK PARTS
|
||||
|
||||
// REINFORCED TABLE PARTS
|
||||
/obj/item/weapon/table_parts/reinforced/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/wrench))
|
||||
new /obj/item/stack/sheet/r_metal( src.loc )
|
||||
//SN src = null
|
||||
@@ -69,6 +71,7 @@ RACK PARTS
|
||||
|
||||
// RACK PARTS
|
||||
/obj/item/weapon/rack_parts/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/wrench))
|
||||
new /obj/item/stack/sheet/metal( src.loc )
|
||||
del(src)
|
||||
|
||||
@@ -16,7 +16,7 @@ TOILET
|
||||
item_state = "syringe_kit"
|
||||
|
||||
/obj/item/weapon/storage/toilet/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
|
||||
..()
|
||||
if (src.contents.len >= 7)
|
||||
user << "The toilet is clogged!"
|
||||
return
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
return
|
||||
|
||||
/obj/item/device/radio/electropack/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
|
||||
if (istype(W, /obj/item/weapon/screwdriver))
|
||||
src.e_pads = !( src.e_pads )
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
src.frequency = sanitize_frequency(src.frequency)
|
||||
|
||||
set_frequency(frequency)
|
||||
|
||||
|
||||
for (var/ch_name in channels)
|
||||
secure_radio_connections[ch_name] = radio_controller.add_object(src, radiochannels[ch_name], RADIO_CHAT)
|
||||
|
||||
@@ -270,7 +270,7 @@ Speaker: <A href='byond://?src=\ref[src];ch_name=[chan_name];listen=[!list]'>[li
|
||||
if ((R.frequency == src.frequency && message))
|
||||
return 1
|
||||
else if
|
||||
|
||||
|
||||
else
|
||||
return null
|
||||
return
|
||||
@@ -315,6 +315,7 @@ Speaker: <A href='byond://?src=\ref[src];ch_name=[chan_name];listen=[!list]'>[li
|
||||
return
|
||||
|
||||
/obj/item/device/radio/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
user.machine = src
|
||||
if (!( istype(W, /obj/item/weapon/screwdriver) ))
|
||||
return
|
||||
|
||||
@@ -93,6 +93,7 @@
|
||||
return
|
||||
|
||||
/obj/item/weapon/secstorage/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if ((W.w_class > 3 || istype(W, /obj/item/weapon/secstorage)))
|
||||
return
|
||||
if ((istype(W, /obj/item/weapon/card/emag)) && (src.locked == 1) && (!src.emagged))
|
||||
|
||||
@@ -54,6 +54,7 @@ SHARDS
|
||||
construct_window(usr, src)
|
||||
|
||||
/obj/item/stack/sheet/glass/attackby(obj/item/W, mob/user)
|
||||
..()
|
||||
if( istype(W, /obj/item/stack/rods) )
|
||||
var/obj/item/stack/rods/V = W
|
||||
var/obj/item/stack/sheet/rglass/RG = new (user.loc)
|
||||
@@ -113,6 +114,7 @@ SHARDS
|
||||
return
|
||||
|
||||
/obj/item/weapon/shard/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if ( istype(W, /obj/item/weapon/weldingtool) && W:welding )
|
||||
W:eyecheck(user)
|
||||
new /obj/item/stack/sheet/glass( user.loc )
|
||||
|
||||
@@ -11,6 +11,7 @@ FLOOR TILES
|
||||
// RODS
|
||||
|
||||
/obj/item/stack/rods/attackby(obj/item/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/weldingtool) && W:welding)
|
||||
if(amount < 2)
|
||||
user << "\red You need at least two rods to do this."
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
..()
|
||||
if (amount)
|
||||
src.amount=amount
|
||||
|
||||
|
||||
return
|
||||
|
||||
/obj/item/stack/examine()
|
||||
@@ -61,6 +61,7 @@
|
||||
return
|
||||
|
||||
/obj/item/stack/attackby(obj/item/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, src.type))
|
||||
var/obj/item/stack/S = W
|
||||
if (S.amount >= max_amount)
|
||||
@@ -82,7 +83,7 @@
|
||||
src.blood_DNA = from.blood_DNA
|
||||
src.blood_type = from.blood_type
|
||||
src.fingerprints = from.fingerprints
|
||||
src.fingerprintshidden = from.fingerprintshidden
|
||||
src.fingerprintshidden = from.fingerprintshidden
|
||||
src.fingerprintslast = from.fingerprintslast
|
||||
//TODO bloody overlay
|
||||
|
||||
@@ -157,7 +158,7 @@
|
||||
return
|
||||
if (href_list["make"])
|
||||
if (src.amount < 1) del(src) //Never should happen
|
||||
|
||||
|
||||
var/datum/stack_recipe/R = recipes[text2num(href_list["make"])]
|
||||
var/multiplier = text2num(href_list["multiplier"])
|
||||
if (!multiplier) multiplier = 1
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
return
|
||||
|
||||
/obj/item/weapon/storage/backpack/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
|
||||
if (src.contents.len >= 7)
|
||||
return
|
||||
|
||||
@@ -75,6 +75,7 @@
|
||||
call(/obj/rune/proc/revealrunes)(src)
|
||||
|
||||
/obj/item/weapon/storage/bible/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/weapon/storage/bible))
|
||||
return
|
||||
if (src.contents.len >= 7)
|
||||
|
||||
@@ -251,7 +251,14 @@
|
||||
return attack_hand(user)
|
||||
|
||||
/obj/crate/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if(opened)
|
||||
if (istype(W, /obj/item/weapon/packageWrap))
|
||||
var/obj/item/weapon/packageWrap/O = W
|
||||
if (O.amount > 3)
|
||||
var/obj/bigDelivery/P = new /obj/bigDelivery(get_turf(src.loc))
|
||||
P.wrapped = src
|
||||
src.loc = P
|
||||
O.amount -= 3
|
||||
else if(opened)
|
||||
user.drop_item()
|
||||
if(W)
|
||||
W.loc = src.loc
|
||||
|
||||
@@ -80,7 +80,7 @@
|
||||
return
|
||||
|
||||
/obj/item/weapon/storage/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
|
||||
..()
|
||||
if(can_hold.len)
|
||||
var/ok = 0
|
||||
for(var/A in can_hold)
|
||||
@@ -250,6 +250,7 @@
|
||||
src.add_fingerprint(user)
|
||||
|
||||
/obj/item/weapon/storage/utilitybelt/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if(!can_use())
|
||||
user << "\red I need to wear the belt for that."
|
||||
return
|
||||
|
||||
@@ -166,6 +166,7 @@
|
||||
return
|
||||
|
||||
/obj/item/weapon/tank/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
var/obj/item/weapon/icon = src
|
||||
if (istype(src.loc, /obj/item/assembly))
|
||||
icon = src.loc
|
||||
@@ -364,6 +365,7 @@
|
||||
del(src)
|
||||
|
||||
/obj/item/weapon/tank/plasma/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
|
||||
..()
|
||||
if (istype(W, /obj/item/assembly/rad_ignite))
|
||||
var/obj/item/assembly/rad_ignite/S = W
|
||||
|
||||
@@ -117,6 +117,7 @@
|
||||
return
|
||||
|
||||
/obj/item/assembly/time_ignite/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if ((istype(W, /obj/item/weapon/wrench) && !( src.status )))
|
||||
var/turf/T = src.loc
|
||||
if (ismob(T))
|
||||
@@ -151,6 +152,7 @@
|
||||
//***********
|
||||
|
||||
/obj/item/assembly/anal_ignite/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if ((istype(W, /obj/item/weapon/wrench) && !( src.status )))
|
||||
var/turf/T = src.loc
|
||||
if (ismob(T))
|
||||
@@ -225,6 +227,7 @@
|
||||
src.add_fingerprint(user)
|
||||
*/
|
||||
/obj/item/assembly/a_i_a/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if ((istype(W, /obj/item/weapon/wrench) && !( src.status )))
|
||||
var/turf/T = src.loc
|
||||
if (ismob(T))
|
||||
@@ -268,6 +271,7 @@
|
||||
return
|
||||
|
||||
/obj/item/assembly/rad_time/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
|
||||
if ((istype(W, /obj/item/weapon/wrench) && !( src.status )))
|
||||
var/turf/T = src.loc
|
||||
@@ -325,7 +329,7 @@
|
||||
return
|
||||
|
||||
/obj/item/assembly/rad_prox/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
|
||||
..()
|
||||
if ((istype(W, /obj/item/weapon/wrench) && !( src.status )))
|
||||
var/turf/T = src.loc
|
||||
if (ismob(T))
|
||||
@@ -387,7 +391,7 @@
|
||||
return
|
||||
|
||||
/obj/item/assembly/rad_infra/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
|
||||
..()
|
||||
if ((istype(W, /obj/item/weapon/wrench) && !( src.status )))
|
||||
var/turf/T = src.loc
|
||||
if (ismob(T))
|
||||
@@ -475,6 +479,7 @@
|
||||
return
|
||||
|
||||
/obj/item/assembly/prox_ignite/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if ((istype(W, /obj/item/weapon/wrench) && !( src.status )))
|
||||
var/turf/T = src.loc
|
||||
if (ismob(T))
|
||||
@@ -535,7 +540,7 @@
|
||||
return
|
||||
|
||||
/obj/item/assembly/rad_ignite/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
|
||||
..()
|
||||
if ((istype(W, /obj/item/weapon/wrench) && !( src.status )))
|
||||
var/turf/T = src.loc
|
||||
if (ismob(T))
|
||||
@@ -636,6 +641,7 @@
|
||||
return
|
||||
|
||||
/obj/item/assembly/m_i_ptank/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/device/analyzer))
|
||||
src.part3.attackby(W, user)
|
||||
|
||||
@@ -734,6 +740,7 @@
|
||||
return
|
||||
|
||||
/obj/item/assembly/t_i_ptank/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
|
||||
if (istype(W, /obj/item/device/analyzer))
|
||||
src.part3.attackby(W, user)
|
||||
@@ -827,6 +834,7 @@
|
||||
return
|
||||
|
||||
/obj/item/assembly/r_i_ptank/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
|
||||
if (istype(W, /obj/item/device/analyzer))
|
||||
src.part3.attackby(W, user)
|
||||
@@ -883,6 +891,7 @@
|
||||
//*****RM
|
||||
|
||||
/obj/item/clothing/suit/armor/a_i_a_ptank/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
if (istype(W, /obj/item/device/analyzer))
|
||||
src.part4.attackby(W, user)
|
||||
|
||||
|
||||
@@ -151,6 +151,7 @@
|
||||
/obj/window/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
|
||||
|
||||
|
||||
if (istype(W, /obj/item/weapon/screwdriver))
|
||||
if(reinf && state >= 1)
|
||||
state = 3 - state
|
||||
|
||||
@@ -45,6 +45,7 @@
|
||||
user << "\blue The vial shatters."
|
||||
src.shatter()
|
||||
/obj/item/weapon/vial/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
..()
|
||||
user << "\blue The vial shatters."
|
||||
src.shatter()
|
||||
/obj/item/weapon/vial/attack_self(mob/user as mob)
|
||||
|
||||
Reference in New Issue
Block a user