mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-30 07:27:57 +01:00
Nuke Ops and Traitor Update+Balance
This commit is contained in:
@@ -1539,7 +1539,7 @@
|
||||
"DE" = (/obj/structure/rack,/obj/item/clothing/head/helmet/space/rig/wizard{pixel_x = -3; pixel_y = 3},/obj/item/clothing/head/helmet/space/rig/syndi,/obj/item/clothing/head/helmet/space/santahat{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin)
|
||||
"DF" = (/obj/structure/rack,/obj/item/clothing/head/welding/fluff/alice_mccrea_1{pixel_x = -3; pixel_y = 3},/obj/item/clothing/head/welding/fluff/norah_briggs_1,/obj/item/clothing/head/welding/fluff/yuki_matsuda_1{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin)
|
||||
"DG" = (/obj/structure/rack,/obj/item/clothing/head/soft/black{pixel_x = -3; pixel_y = 3},/obj/item/clothing/head/soft/blue,/obj/item/clothing/head/soft/red{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin)
|
||||
"DH" = (/obj/structure/rack,/obj/item/weapon/storage/backpack/holding,/obj/item/weapon/storage/backpack/duffel/clown,/obj/item/weapon/storage/backpack/duffel/captain,/obj/item/weapon/storage/backpack/duffel/science,/obj/item/weapon/storage/backpack/duffel/syndiammo,/obj/item/weapon/storage/backpack/duffel/syndimed,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin)
|
||||
"DH" = (/obj/structure/rack,/obj/item/weapon/storage/backpack/holding,/obj/item/weapon/storage/backpack/duffel/clown,/obj/item/weapon/storage/backpack/duffel/captain,/obj/item/weapon/storage/backpack/duffel/science,/obj/item/weapon/storage/backpack/duffel/syndie/ammo,/obj/item/weapon/storage/backpack/duffel/syndie/med,/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin)
|
||||
"DI" = (/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/turf/unsimulated/wall{desc = "This window appears to be reinforced, it looks nearly impossible to break."; dir = 8; icon = 'icons/turf/shuttle.dmi'; icon_state = "window5_end"; name = "window"; opacity = 0; tag = "icon-window5_end (WEST)"},/area/admin)
|
||||
"DJ" = (/obj/structure/rack,/obj/item/clothing/under/shorts/black{pixel_x = -3; pixel_y = 3},/obj/item/clothing/under/shorts/blue,/obj/item/clothing/under/shorts/red{pixel_x = 3; pixel_y = -3},/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin)
|
||||
"DK" = (/turf/unsimulated/floor{tag = "icon-floor"; icon_state = "floor"},/area/admin)
|
||||
@@ -2071,3 +2071,4 @@ aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN
|
||||
aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN
|
||||
aNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaNaN
|
||||
"}
|
||||
|
||||
|
||||
+66
-20
@@ -165,7 +165,7 @@ var/list/uplink_items = list()
|
||||
desc = "A radiation laser concealed inside of a Health Analyser. After a moderate delay, causes temporary collapse and radiation. Has adjustable controls, but will not function as a regular health analyser, only appears like one. May not function correctly on radiation resistant humanoids!"
|
||||
reference = "RL"
|
||||
item = /obj/item/device/rad_laser
|
||||
cost = 6
|
||||
cost = 5
|
||||
job = list(
|
||||
"Chief Medical Officer",
|
||||
"Medical Doctor",
|
||||
@@ -327,6 +327,14 @@ var/list/uplink_items = list()
|
||||
gamemodes = list("nuclear emergency")
|
||||
surplus = 35
|
||||
|
||||
/datum/uplink_item/ammo/bioterror
|
||||
name = "Box of Bioterror Syringes"
|
||||
desc = "A box full of preloaded syringes, containing various chemicals that seize up the victim's motor and broca system , making it impossible for them to move or speak while in their system."
|
||||
reference = "BTS"
|
||||
item = /obj/item/weapon/storage/box/syndie_kit/bioterror
|
||||
cost = 6
|
||||
gamemodes = list("nuclear emergency")
|
||||
|
||||
/datum/uplink_item/dangerous/tabungrenades
|
||||
name = "Tabun Gas Grenades"
|
||||
desc = "A box of four (4) grenades filled with Tabun, a deadly neurotoxin. Use extreme caution when handling and be sure to vacate the premise after using; ensure communication is maintained with team to avoid accidental gassings."
|
||||
@@ -412,11 +420,27 @@ var/list/uplink_items = list()
|
||||
cost = 2
|
||||
gamemodes = list("nuclear emergency")
|
||||
|
||||
/datum/uplink_item/ammo/ammobag
|
||||
name = "Ammo Duffelbag - Shotgun Ammo Grab Bag"
|
||||
desc = "A duffelbag filled with Bulldog ammo to kit out an entire team, at a discounted price."
|
||||
reference = "SAGL"
|
||||
item = /obj/item/weapon/storage/backpack/duffel/syndie/ammo/loaded
|
||||
cost = 10 //bulk buyer's discount. Very useful if you're buying a mech and dont have TC left to buy people non-shotgun guns
|
||||
gamemodes = list("nuclear emergency")
|
||||
|
||||
/datum/uplink_item/ammo/bullslug
|
||||
name = "Drum Magazine - 12g Slugs"
|
||||
desc = "An additional 8-round slug magazine for use in the Bulldog shotgun. Now 8 times less likely to shoot your pals."
|
||||
reference = "12BSG"
|
||||
item = /obj/item/ammo_box/magazine/m12g
|
||||
cost = 2
|
||||
gamemodes = list("nuclear emergency")
|
||||
|
||||
/datum/uplink_item/ammo/bullbuck
|
||||
name = "Drum Magazine - 12g buckshot"
|
||||
desc = "An additional 8-round buckshot magazine for use in the Bulldog shotgun. Front towards enemy."
|
||||
reference = "12BS"
|
||||
item = /obj/item/ammo_box/magazine/m12g
|
||||
item = /obj/item/ammo_box/magazine/m12g/buckshot
|
||||
cost = 2
|
||||
gamemodes = list("nuclear emergency")
|
||||
|
||||
@@ -433,7 +457,7 @@ var/list/uplink_items = list()
|
||||
desc = "An alternative 8-round dragon's breath magazine for use in the Bulldog shotgun. I'm a fire starter, twisted fire starter!"
|
||||
reference = "12DB"
|
||||
item = /obj/item/ammo_box/magazine/m12g/dragon
|
||||
cost = 3
|
||||
cost = 2
|
||||
gamemodes = list("nuclear emergency")
|
||||
|
||||
/datum/uplink_item/ammo/car
|
||||
@@ -509,7 +533,7 @@ var/list/uplink_items = list()
|
||||
desc = "A pizza box with a bomb taped inside of it. The timer needs to be set by opening the box; afterwards, opening the box again will trigger the detonation."
|
||||
reference = "PB"
|
||||
item = /obj/item/device/pizza_bomb
|
||||
cost = 4
|
||||
cost = 5
|
||||
surplus = 8
|
||||
|
||||
/datum/uplink_item/stealthy_weapons/dehy_carp
|
||||
@@ -529,7 +553,7 @@ var/list/uplink_items = list()
|
||||
desc = "A jumpsuit used to imitate the uniforms of Nanotrasen crewmembers."
|
||||
reference = "CJ"
|
||||
item = /obj/item/clothing/under/chameleon
|
||||
cost = 4
|
||||
cost = 2
|
||||
|
||||
/datum/uplink_item/stealthy_tools/chameleon_stamp
|
||||
name = "Chameleon Stamp"
|
||||
@@ -540,26 +564,34 @@ var/list/uplink_items = list()
|
||||
cost = 1
|
||||
surplus = 35
|
||||
|
||||
/datum/uplink_item/stealthy_tools/syndigolashes
|
||||
/datum/uplink_item/stealthy_tools/syndigaloshes
|
||||
name = "No-Slip Syndicate Shoes"
|
||||
desc = "These allow you to run on wet floors. They do not work on lubricated surfaces."
|
||||
reference = "NSSS"
|
||||
item = /obj/item/clothing/shoes/syndigaloshes
|
||||
cost = 4
|
||||
cost = 2
|
||||
excludefrom = list("nuclear emergency")
|
||||
|
||||
/datum/uplink_item/stealthy_tools/syndigaloshes/nuke
|
||||
name = "Tactical No-Slip Brown Shoes"
|
||||
desc = "These allow you to run on wet floors. They do not work on lubricated surfaces, and the maker swears they're better than normal ones, somehow."
|
||||
reference = "NNSSS"
|
||||
cost = 4 //but they aren't
|
||||
gamemodes = list("nuclear emergency")
|
||||
|
||||
/datum/uplink_item/stealthy_tools/agent_card
|
||||
name = "Agent ID Card"
|
||||
desc = "Agent cards prevent artificial intelligences from tracking the wearer, and can copy access from other identification cards. The access is cumulative, so scanning one card does not erase the access gained from another."
|
||||
reference = "AIDC"
|
||||
item = /obj/item/weapon/card/id/syndicate
|
||||
cost = 3
|
||||
cost = 2
|
||||
|
||||
/datum/uplink_item/stealthy_tools/voice_changer
|
||||
name = "Voice Changer"
|
||||
desc = "A conspicuous gas mask that mimics the voice named on your identification card. When no identification is worn, the mask will render your voice unrecognisable."
|
||||
reference = "VC"
|
||||
item = /obj/item/clothing/mask/gas/voice
|
||||
cost = 5
|
||||
cost = 3
|
||||
|
||||
/datum/uplink_item/stealthy_tools/chameleon_proj
|
||||
name = "Chameleon-Projector"
|
||||
@@ -570,10 +602,10 @@ var/list/uplink_items = list()
|
||||
|
||||
/datum/uplink_item/stealthy_tools/camera_bug
|
||||
name = "Camera Bug"
|
||||
desc = "Enables you to bug cameras to view them remotely. Adding particular items to it alters its functions."
|
||||
desc = "Enables you to view all cameras on the network and track a target. Bugging cameras allows you to disable them remotely."
|
||||
reference = "CB"
|
||||
item = /obj/item/device/camera_bug
|
||||
cost = 2
|
||||
cost = 1
|
||||
surplus = 90
|
||||
|
||||
/datum/uplink_item/stealthy_tools/dnascrambler
|
||||
@@ -611,6 +643,20 @@ var/list/uplink_items = list()
|
||||
item = /obj/item/weapon/storage/toolbox/syndicate
|
||||
cost = 1
|
||||
|
||||
/datum/uplink_item/device_tools/surgerybag
|
||||
name = "Syndicate Surgery Dufflebag"
|
||||
desc = "The Syndicate surgery dufflebag is a toolkit containing all surgery tools, a straitjacket, and a muzzle."
|
||||
reference = "SSDB"
|
||||
item = /obj/item/weapon/storage/backpack/duffel/syndie/surgery
|
||||
cost = 4
|
||||
|
||||
/datum/uplink_item/device_tools/military_belt
|
||||
name = "Military Belt"
|
||||
desc = "A robust seven-slot red belt made for carrying a broad variety of weapons, ammunition and explosives"
|
||||
reference = "SBM"
|
||||
item = /obj/item/weapon/storage/belt/military
|
||||
cost = 3
|
||||
excludefrom = list("nuclear emergency")
|
||||
|
||||
/datum/uplink_item/device_tools/medkit
|
||||
name = "Syndicate Combat Medic Kit"
|
||||
@@ -621,19 +667,12 @@ var/list/uplink_items = list()
|
||||
cost = 9
|
||||
gamemodes = list("nuclear emergency")
|
||||
|
||||
/datum/uplink_item/badass/syndiecigs
|
||||
name = "Syndicate Smokes"
|
||||
desc = "Strong flavor, dense smoke, infused with omnizine."
|
||||
reference = "SYSM"
|
||||
item = /obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate
|
||||
cost = 4
|
||||
|
||||
/datum/uplink_item/device_tools/space_suit
|
||||
name = "Space Suit"
|
||||
desc = "The red and black syndicate space suit is less encumbering than Nanotrasen variants, fits inside bags, and has a weapon slot. Nanotrasen crewmembers are trained to report red space suit sightings."
|
||||
reference = "SS"
|
||||
item = /obj/item/weapon/storage/box/syndie_kit/space
|
||||
cost = 5
|
||||
cost = 4
|
||||
|
||||
/datum/uplink_item/device_tools/hardsuit
|
||||
name = "Blood-red Hardsuit"
|
||||
@@ -680,7 +719,7 @@ var/list/uplink_items = list()
|
||||
These reverse-engineered knockoffs of Nanotrasen's 'Advanced Magboots' slow you down in simulated-gravity environments much like the standard issue variety."
|
||||
reference = "BRMB"
|
||||
item = /obj/item/clothing/shoes/magboots/syndie
|
||||
cost = 5
|
||||
cost = 3
|
||||
gamemodes = list("nuclear emergency")
|
||||
|
||||
/datum/uplink_item/device_tools/plastic_explosives
|
||||
@@ -807,6 +846,13 @@ var/list/uplink_items = list()
|
||||
category = "(Pointless) Badassery"
|
||||
surplus = 0
|
||||
|
||||
/datum/uplink_item/badass/syndiecigs
|
||||
name = "Syndicate Smokes"
|
||||
desc = "Strong flavor, dense smoke, infused with omnizine."
|
||||
reference = "SYSM"
|
||||
item = /obj/item/weapon/storage/fancy/cigarettes/cigpack_syndicate
|
||||
cost = 2
|
||||
|
||||
/datum/uplink_item/badass/bundle
|
||||
name = "Syndicate Bundle"
|
||||
desc = "Syndicate Bundles are specialised groups of items that arrive in a plain box. These items are collectively worth more than 20 telecrystals, but you do not know which specialisation you will receive."
|
||||
|
||||
@@ -1,10 +1,3 @@
|
||||
#define VANILLA_BUG 0
|
||||
#define UNIVERSAL_BUG 1
|
||||
#define NETWORK_BUG 2
|
||||
#define SABOTAGE_BUG 3
|
||||
#define ADVANCED_BUG 4
|
||||
#define ADMIN_BUG 5
|
||||
|
||||
#define BUGMODE_LIST 0
|
||||
#define BUGMODE_MONITOR 1
|
||||
#define BUGMODE_TRACK 2
|
||||
@@ -23,13 +16,9 @@
|
||||
throw_range = 20
|
||||
|
||||
var/obj/machinery/camera/current = null
|
||||
var/obj/item/expansion = null
|
||||
var/bugtype = VANILLA_BUG
|
||||
|
||||
var/last_net_update = 0
|
||||
var/last_bugtype = VANILLA_BUG
|
||||
var/list/bugged_cameras = list()
|
||||
var/skip_bugcheck = 0
|
||||
|
||||
var/track_mode = BUGMODE_LIST
|
||||
var/last_tracked = 0
|
||||
@@ -46,11 +35,6 @@
|
||||
processing_objects += src
|
||||
|
||||
/obj/item/device/camera_bug/Destroy()
|
||||
if(expansion)
|
||||
qdel(expansion)
|
||||
expansion = null
|
||||
return ..()
|
||||
/* Easier to just call del() than this nonsense
|
||||
get_cameras()
|
||||
for(var/cam_tag in bugged_cameras)
|
||||
var/obj/machinery/camera/camera = bugged_cameras[cam_tag]
|
||||
@@ -59,8 +43,7 @@
|
||||
bugged_cameras = list()
|
||||
if(tracking)
|
||||
tracking = null
|
||||
..()
|
||||
*/
|
||||
return ..()
|
||||
|
||||
/obj/item/device/camera_bug/interact(var/mob/user = usr)
|
||||
var/datum/browser/popup = new(user, "camerabug","Camera Bug",nref=src)
|
||||
@@ -78,7 +61,7 @@
|
||||
return null
|
||||
|
||||
var/turf/T = get_turf(user.loc)
|
||||
if(T.z != current.z || (!skip_bugcheck && current.bug != src) || !current.can_use())
|
||||
if(T.z != current.z || !current.can_use())
|
||||
user << "<span class='danger'>[src] has lost the signal.</span>"
|
||||
current = null
|
||||
user.reset_view(null)
|
||||
@@ -88,26 +71,18 @@
|
||||
return 1
|
||||
|
||||
/obj/item/device/camera_bug/proc/get_cameras()
|
||||
if(bugtype != last_bugtype || ( (bugtype in list(UNIVERSAL_BUG,NETWORK_BUG,ADMIN_BUG)) && world.time > (last_net_update + 100)))
|
||||
if( world.time > (last_net_update + 100))
|
||||
bugged_cameras = list()
|
||||
last_bugtype = bugtype
|
||||
for(var/obj/machinery/camera/camera in cameranet.cameras)
|
||||
if(camera.stat || !camera.can_use())
|
||||
continue
|
||||
switch(bugtype)
|
||||
if(VANILLA_BUG,SABOTAGE_BUG,ADVANCED_BUG)
|
||||
if(camera.bug == src)
|
||||
bugged_cameras[camera.c_tag] = camera
|
||||
if(UNIVERSAL_BUG)
|
||||
if(camera.bug)
|
||||
bugged_cameras[camera.c_tag] = camera
|
||||
if(NETWORK_BUG,ADMIN_BUG)
|
||||
if(length(list("SS13","MINE")&camera.network))
|
||||
bugged_cameras[camera.c_tag] = camera
|
||||
if(length(list("SS13","MINE")&camera.network))
|
||||
bugged_cameras[camera.c_tag] = camera
|
||||
sortList(bugged_cameras)
|
||||
return bugged_cameras
|
||||
|
||||
|
||||
|
||||
/obj/item/device/camera_bug/proc/menu(var/list/cameras)
|
||||
if(!cameras || !cameras.len)
|
||||
return "No bugged cameras found."
|
||||
@@ -119,16 +94,10 @@
|
||||
for(var/entry in cameras)
|
||||
var/obj/machinery/camera/C = cameras[entry]
|
||||
var/functions = ""
|
||||
switch(bugtype)
|
||||
if(SABOTAGE_BUG)
|
||||
functions = " - <a href='?src=\ref[src];emp=\ref[C]'>\[Disable\]</a>"
|
||||
if(ADVANCED_BUG)
|
||||
functions = " - <a href='?src=\ref[src];monitor=\ref[C]'>\[Monitor\]</a>"
|
||||
if(ADMIN_BUG)
|
||||
if(C.bug == src)
|
||||
functions = " - <a href='?src=\ref[src];monitor=\ref[C]'>\[Monitor\]</a> <a href='?src=\ref[src];emp=\ref[C]'>\[Disable\]</a>"
|
||||
else
|
||||
functions = " - <a href='?src=\ref[src];monitor=\ref[C]'>\[Monitor\]</a>"
|
||||
if(C.bug == src)
|
||||
functions = " - <a href='?src=\ref[src];monitor=\ref[C]'>\[Monitor\]</a> <a href='?src=\ref[src];emp=\ref[C]'>\[Disable\]</a>"
|
||||
else
|
||||
functions = " - <a href='?src=\ref[src];monitor=\ref[C]'>\[Monitor\]</a>"
|
||||
html += "<tr><td><a href='?src=\ref[src];view=\ref[C]'>[entry]</a></td><td>[functions]</td></tr>"
|
||||
|
||||
if(BUGMODE_MONITOR)
|
||||
@@ -157,6 +126,9 @@
|
||||
var/s = (time_diff - 4*m) * 15
|
||||
if(!s) s = "00"
|
||||
html += "Last seen near [outstring] ([m]:[s] minute\s ago)<br>"
|
||||
if( C && (C.bug == src)) //Checks to see if the camera has a bug
|
||||
html += "<a href='?src=\ref[src];emp=\ref[C]'>\[Disable\]</a>"
|
||||
|
||||
else
|
||||
html += "Not yet seen."
|
||||
else
|
||||
@@ -309,62 +281,6 @@
|
||||
break
|
||||
src.updateSelfDialog()
|
||||
|
||||
/obj/item/device/camera_bug/attackby(var/obj/item/W as obj,var/mob/living/user as mob, params)
|
||||
if(istype(W,/obj/item/weapon/screwdriver) && expansion)
|
||||
expansion.loc = get_turf(loc)
|
||||
user << "You unscrew [expansion]."
|
||||
user.put_in_inactive_hand(expansion)
|
||||
expansion = null
|
||||
bugtype = VANILLA_BUG
|
||||
skip_bugcheck = 0
|
||||
track_mode = BUGMODE_LIST
|
||||
tracking = null
|
||||
return
|
||||
|
||||
if(expansion || !W)
|
||||
return ..(W,user)
|
||||
|
||||
// I am not sure that this list is or should be final
|
||||
// really I do not know what to do here.
|
||||
var/static/list/expandables = list(
|
||||
/obj/item/weapon/research = ADMIN_BUG, // could have been anything spawn-only
|
||||
|
||||
// these are all so hackish I am sorry
|
||||
|
||||
/obj/item/device/analyzer = UNIVERSAL_BUG,
|
||||
/obj/item/weapon/stock_parts/subspace/analyzer = UNIVERSAL_BUG,
|
||||
|
||||
/obj/item/device/assembly/igniter = SABOTAGE_BUG,
|
||||
/obj/item/device/assembly/infra = SABOTAGE_BUG, // ir blaster to disable camera
|
||||
/obj/item/weapon/stock_parts/subspace/amplifier = SABOTAGE_BUG,
|
||||
|
||||
/obj/item/device/radio = NETWORK_BUG,
|
||||
/obj/item/device/assembly/signaler = NETWORK_BUG,
|
||||
/obj/item/weapon/stock_parts/subspace/transmitter = NETWORK_BUG,
|
||||
|
||||
/obj/item/device/detective_scanner = ADVANCED_BUG,
|
||||
/obj/item/device/paicard = ADVANCED_BUG,
|
||||
/obj/item/weapon/stock_parts/scanning_module = ADVANCED_BUG
|
||||
)
|
||||
|
||||
for(var/entry in expandables)
|
||||
if(istype(W,entry))
|
||||
bugtype = expandables[entry]
|
||||
user.drop_item()
|
||||
W.loc = src
|
||||
expansion = W
|
||||
user << "You add [W] to [src]."
|
||||
get_cameras() // the tracking code will want to know the new camera list
|
||||
if(bugtype in list(UNIVERSAL_BUG,NETWORK_BUG,ADMIN_BUG))
|
||||
skip_bugcheck = 1
|
||||
return
|
||||
|
||||
#undef VANILLA_BUG
|
||||
#undef UNIVERSAL_BUG
|
||||
#undef NETWORK_BUG
|
||||
#undef SABOTAGE_BUG
|
||||
#undef ADVANCED_BUG
|
||||
#undef ADMIN_BUG
|
||||
|
||||
#undef BUGMODE_LIST
|
||||
#undef BUGMODE_MONITOR
|
||||
|
||||
@@ -231,19 +231,65 @@
|
||||
max_combined_w_class = 27
|
||||
slowdown = 1
|
||||
|
||||
/obj/item/weapon/storage/backpack/duffel/syndimed
|
||||
/obj/item/weapon/storage/backpack/duffel/syndie
|
||||
name = "suspicious looking dufflebag"
|
||||
desc = "A large dufflebag for holding extra tactical supplies."
|
||||
icon_state = "duffel-syndi"
|
||||
item_state = "duffel-syndimed"
|
||||
origin_tech = "syndicate=1"
|
||||
silent = 1
|
||||
slowdown = 0
|
||||
|
||||
/obj/item/weapon/storage/backpack/duffel/syndie/med
|
||||
name = "suspicious duffelbag"
|
||||
desc = "A black and red duffelbag with a red and white cross sewn onto it."
|
||||
icon_state = "duffel-syndimed"
|
||||
item_state = "duffel-syndimed"
|
||||
slowdown = 0
|
||||
|
||||
/obj/item/weapon/storage/backpack/duffel/syndiammo
|
||||
/obj/item/weapon/storage/backpack/duffel/syndie/ammo
|
||||
name = "suspicious duffelbag"
|
||||
desc = "A black and red duffelbag with a patch depicting shotgun shells sewn onto it."
|
||||
icon_state = "duffel-syndiammo"
|
||||
item_state = "duffel-syndiammo"
|
||||
slowdown = 0
|
||||
|
||||
/obj/item/weapon/storage/backpack/duffel/syndie/ammo/loaded
|
||||
desc = "A large dufflebag, packed to the brim with Bulldog shotgun ammo."
|
||||
|
||||
New()
|
||||
..()
|
||||
new /obj/item/ammo_box/magazine/m12g(src)
|
||||
new /obj/item/ammo_box/magazine/m12g(src)
|
||||
new /obj/item/ammo_box/magazine/m12g(src)
|
||||
new /obj/item/ammo_box/magazine/m12g(src)
|
||||
new /obj/item/ammo_box/magazine/m12g(src)
|
||||
new /obj/item/ammo_box/magazine/m12g(src)
|
||||
new /obj/item/ammo_box/magazine/m12g/buckshot(src)
|
||||
new /obj/item/ammo_box/magazine/m12g/stun(src)
|
||||
new /obj/item/ammo_box/magazine/m12g/dragon(src)
|
||||
return
|
||||
|
||||
/obj/item/weapon/storage/backpack/duffel/syndie/surgery
|
||||
name = "surgery dufflebag"
|
||||
desc = "A suspicious looking dufflebag for holding surgery tools."
|
||||
icon_state = "duffel-syndimed"
|
||||
item_state = "duffle-syndimed"
|
||||
storage_slots = 12
|
||||
|
||||
New()
|
||||
..()
|
||||
new /obj/item/weapon/scalpel(src)
|
||||
new /obj/item/weapon/hemostat(src)
|
||||
new /obj/item/weapon/retractor(src)
|
||||
new /obj/item/weapon/circular_saw(src)
|
||||
new /obj/item/weapon/surgicaldrill(src)
|
||||
new /obj/item/weapon/cautery(src)
|
||||
new /obj/item/weapon/bonegel(src)
|
||||
new /obj/item/weapon/bonesetter(src)
|
||||
new /obj/item/weapon/FixOVein(src)
|
||||
new /obj/item/clothing/suit/straight_jacket(src)
|
||||
new /obj/item/clothing/mask/muzzle(src)
|
||||
// new /obj/item/device/mmi/syndie(src)
|
||||
return
|
||||
|
||||
/obj/item/weapon/storage/backpack/duffel/captain
|
||||
name = "captain's duffelbag"
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
name = "storage"
|
||||
icon = 'icons/obj/storage.dmi'
|
||||
w_class = 3.0
|
||||
var/silent = 0 // No message on putting items in
|
||||
var/list/can_hold = new/list() //List of objects which this item can store (if set, it can't store anything else)
|
||||
var/list/cant_hold = new/list() //List of objects which this item can't store (in effect only if can_hold isn't set)
|
||||
var/max_w_class = 2 //Max size of objects that this object can store (in effect only if can_hold isn't set)
|
||||
@@ -292,6 +293,8 @@
|
||||
if(!usr.unEquip(W))
|
||||
return 0
|
||||
usr.update_icons() //update our overlays
|
||||
if(silent)
|
||||
prevent_warning = 1
|
||||
W.loc = src
|
||||
W.on_enter_storage(src)
|
||||
if(usr)
|
||||
|
||||
@@ -77,6 +77,7 @@
|
||||
icon_state = "syndicate"
|
||||
item_state = "toolbox_syndi"
|
||||
origin_tech = "combat=1;syndicate=1"
|
||||
silent = 1
|
||||
force = 15.0
|
||||
throwforce = 18.0
|
||||
|
||||
@@ -88,4 +89,4 @@
|
||||
new /obj/item/weapon/crowbar(src)
|
||||
new /obj/item/weapon/wirecutters(src)
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/clothing/gloves/color/red/insulated(src)
|
||||
new /obj/item/clothing/gloves/combat(src)
|
||||
@@ -207,4 +207,18 @@
|
||||
new /obj/item/weapon/grenade/chem_grenade/tabungas(src)
|
||||
new /obj/item/weapon/grenade/chem_grenade/tabungas(src)
|
||||
new /obj/item/weapon/grenade/chem_grenade/tabungas(src)
|
||||
new /obj/item/weapon/grenade/chem_grenade/tabungas(src)
|
||||
new /obj/item/weapon/grenade/chem_grenade/tabungas(src)
|
||||
|
||||
/obj/item/weapon/storage/box/syndie_kit/bioterror
|
||||
name = "bioterror syringe box"
|
||||
|
||||
New()
|
||||
..()
|
||||
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
|
||||
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
|
||||
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
|
||||
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
|
||||
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
|
||||
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
|
||||
new /obj/item/weapon/reagent_containers/syringe/bioterror(src)
|
||||
return
|
||||
@@ -43,8 +43,7 @@
|
||||
new /obj/item/ammo_box/magazine/m10mm(src)
|
||||
new /obj/item/weapon/storage/box/teargas(src)
|
||||
new /obj/item/weapon/storage/box/flashbangs(src)
|
||||
new /obj/item/weapon/storage/backpack/duffel/syndimed(src)
|
||||
new /obj/item/weapon/storage/backpack/duffel/syndiammo(src)
|
||||
new /obj/item/weapon/storage/backpack/duffel/syndie/med(src)
|
||||
new /obj/item/weapon/gun/projectile/automatic/bulldog(src)
|
||||
new /obj/item/weapon/gun/projectile/automatic/bulldog(src)
|
||||
new /obj/item/weapon/gun/projectile/automatic/bulldog(src)
|
||||
|
||||
@@ -353,7 +353,7 @@
|
||||
user << "<span class='notice'>You switch your helmet to combat mode. You will take damage in zero pressure environments, but you are more suited for a fight.</span>"
|
||||
name = "blood-red hardsuit helmet (combat)"
|
||||
desc = "A dual-mode advanced helmet designed for work in special operations. It is in combat mode. Property of Gorlex Marauders."
|
||||
flags = BLOCKHAIR
|
||||
flags = BLOCKHAIR | THICKMATERIAL
|
||||
flags_inv = HIDEEARS
|
||||
cold_protection = null
|
||||
set_light(0)
|
||||
@@ -393,7 +393,7 @@
|
||||
name = "blood-red hardsuit helmet (combat)"
|
||||
desc = "A dual-mode advanced hardsuit designed for work in special operations. It is in combat mode. Property of Gorlex Marauders."
|
||||
slowdown = 0
|
||||
flags = BLOCKHAIR
|
||||
flags = THICKMATERIAL
|
||||
flags_inv = null
|
||||
cold_protection = null
|
||||
|
||||
|
||||
@@ -188,9 +188,9 @@
|
||||
icon_state = "[initial(icon_state)]-[round(ammo_count(),10)]"
|
||||
|
||||
/obj/item/ammo_box/magazine/m12g
|
||||
name = "shotgun magazine (12g buckshot)"
|
||||
name = "shotgun magazine (12g slugs)"
|
||||
icon_state = "m12gb"
|
||||
ammo_type = "/obj/item/ammo_casing/shotgun/buckshot"
|
||||
ammo_type = "/obj/item/ammo_casing/shotgun"
|
||||
origin_tech = "combat=3;syndicate=1"
|
||||
caliber = "shotgun"
|
||||
max_ammo = 8
|
||||
@@ -199,6 +199,10 @@
|
||||
..()
|
||||
icon_state = "[initial(icon_state)]-[Ceiling(ammo_count(0)/8)*8]"
|
||||
|
||||
/obj/item/ammo_box/magazine/m12g/buckshot
|
||||
name = "shotgun magazine (12g buckshot slugs)"
|
||||
icon_state = "m12gb"
|
||||
ammo_type = "/obj/item/ammo_casing/shotgun/buckshot"
|
||||
|
||||
/obj/item/ammo_box/magazine/m12g/stun
|
||||
name = "shotgun magazine (12g taser slugs)"
|
||||
|
||||
@@ -168,7 +168,7 @@
|
||||
if(target.reagents.total_volume >= target.reagents.maximum_volume)
|
||||
user << "\red [target] is full."
|
||||
return
|
||||
|
||||
|
||||
var/mob/living/carbon/human/H = target
|
||||
if(istype(H))
|
||||
var/obj/item/organ/external/affected = H.get_organ(user.zone_sel.selecting)
|
||||
@@ -528,3 +528,14 @@
|
||||
reagents.add_reagent("insulin", 15)
|
||||
mode = SYRINGE_INJECT
|
||||
update_icon()
|
||||
|
||||
/obj/item/weapon/reagent_containers/syringe/bioterror
|
||||
name = "bioterror syringe"
|
||||
desc = "Contains several paralyzing reagents."
|
||||
New()
|
||||
..()
|
||||
reagents.add_reagent("neurotoxin", 5)
|
||||
reagents.add_reagent("capulettium_plus", 5)
|
||||
reagents.add_reagent("sodium_thiopental", 5)
|
||||
mode = SYRINGE_INJECT
|
||||
update_icon()
|
||||
Binary file not shown.
|
Before Width: | Height: | Size: 70 KiB After Width: | Height: | Size: 69 KiB |
Reference in New Issue
Block a user