Merge branch 'master' into upstream-merge-37529
This commit is contained in:
@@ -17,7 +17,7 @@
|
||||
lefthand_file = 'icons/mob/inhands/equipment/backpack_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/backpack_righthand.dmi'
|
||||
w_class = WEIGHT_CLASS_BULKY
|
||||
slot_flags = SLOT_BACK //ERROOOOO
|
||||
slot_flags = ITEM_SLOT_BACK //ERROOOOO
|
||||
resistance_flags = NONE
|
||||
max_integrity = 300
|
||||
|
||||
@@ -379,7 +379,7 @@
|
||||
new /obj/item/crowbar(src)
|
||||
new /obj/item/stack/cable_coil/random(src)
|
||||
new /obj/item/wirecutters(src)
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/multitool(src)
|
||||
|
||||
/obj/item/storage/backpack/duffelbag/clown
|
||||
name = "clown's duffel bag"
|
||||
@@ -439,7 +439,7 @@
|
||||
new /obj/item/surgical_drapes(src)
|
||||
new /obj/item/clothing/suit/straight_jacket(src)
|
||||
new /obj/item/clothing/mask/muzzle(src)
|
||||
new /obj/item/device/mmi/syndie(src)
|
||||
new /obj/item/mmi/syndie(src)
|
||||
|
||||
/obj/item/storage/backpack/duffelbag/syndie/ammo
|
||||
name = "ammunition duffel bag"
|
||||
@@ -453,7 +453,7 @@
|
||||
/obj/item/storage/backpack/duffelbag/syndie/ammo/shotgun/PopulateContents()
|
||||
for(var/i in 1 to 6)
|
||||
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/slug(src)
|
||||
new /obj/item/ammo_box/magazine/m12g/dragon(src)
|
||||
|
||||
@@ -479,7 +479,7 @@
|
||||
/obj/item/storage/backpack/duffelbag/syndie/bulldogbundle/PopulateContents()
|
||||
new /obj/item/ammo_box/magazine/m12g(src)
|
||||
new /obj/item/gun/ballistic/automatic/shotgun/bulldog(src)
|
||||
new /obj/item/ammo_box/magazine/m12g/buckshot(src)
|
||||
new /obj/item/ammo_box/magazine/m12g/stun(src)
|
||||
new /obj/item/clothing/glasses/thermal/syndi(src)
|
||||
|
||||
/obj/item/storage/backpack/duffelbag/syndie/med/medicalbundle
|
||||
@@ -511,6 +511,8 @@
|
||||
new /obj/item/storage/box/syringes(src)
|
||||
new /obj/item/ammo_box/foambox/riot(src)
|
||||
new /obj/item/grenade/chem_grenade/bioterrorfoam(src)
|
||||
if(prob(5))
|
||||
new /obj/item/reagent_containers/food/snacks/pizza/pineapple(src)
|
||||
|
||||
/obj/item/storage/backpack/duffelbag/syndie/c4/PopulateContents()
|
||||
for(var/i in 1 to 10)
|
||||
@@ -542,7 +544,7 @@
|
||||
STR.silent = TRUE
|
||||
|
||||
/obj/item/storage/backpack/duffelbag/clown/syndie/PopulateContents()
|
||||
new /obj/item/device/pda/clown(src)
|
||||
new /obj/item/pda/clown(src)
|
||||
new /obj/item/clothing/under/rank/clown(src)
|
||||
new /obj/item/clothing/shoes/clown_shoes(src)
|
||||
new /obj/item/clothing/mask/gas/clown_hat(src)
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
// Generic non-item
|
||||
/obj/item/storage/bag
|
||||
slot_flags = SLOT_BELT
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
|
||||
/obj/item/storage/bag/ComponentInitialize()
|
||||
. = ..()
|
||||
@@ -94,7 +94,7 @@
|
||||
desc = "This little bugger can be used to store and transport ores."
|
||||
icon = 'icons/obj/mining.dmi'
|
||||
icon_state = "satchel"
|
||||
slot_flags = SLOT_BELT | SLOT_POCKET
|
||||
slot_flags = ITEM_SLOT_BELT | ITEM_SLOT_POCKET
|
||||
w_class = WEIGHT_CLASS_NORMAL
|
||||
component_type = /datum/component/storage/concrete/stack
|
||||
var/spam_protection = FALSE //If this is TRUE, the holder won't receive any messages when they fail to pick up ore through crossing it
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
item_state = "utility"
|
||||
lefthand_file = 'icons/mob/inhands/equipment/belt_lefthand.dmi'
|
||||
righthand_file = 'icons/mob/inhands/equipment/belt_righthand.dmi'
|
||||
slot_flags = SLOT_BELT
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
attack_verb = list("whipped", "lashed", "disciplined")
|
||||
max_integrity = 300
|
||||
var/content_overlays = FALSE //If this is true, the belt will gain overlays based on what it's holding
|
||||
@@ -34,27 +34,28 @@
|
||||
item_state = "utility"
|
||||
content_overlays = TRUE
|
||||
|
||||
/obj/item/storage/belt/ulility/ComponentInitialize()
|
||||
/obj/item/storage/belt/utility/ComponentInitialize()
|
||||
. = ..()
|
||||
GET_COMPONENT(STR, /datum/component/storage)
|
||||
STR.can_hold = typecacheof(list(
|
||||
var/static/list/can_hold = typecacheof(list(
|
||||
/obj/item/crowbar,
|
||||
/obj/item/screwdriver,
|
||||
/obj/item/weldingtool,
|
||||
/obj/item/wirecutters,
|
||||
/obj/item/wrench,
|
||||
/obj/item/device/multitool,
|
||||
/obj/item/device/flashlight,
|
||||
/obj/item/multitool,
|
||||
/obj/item/flashlight,
|
||||
/obj/item/stack/cable_coil,
|
||||
/obj/item/device/t_scanner,
|
||||
/obj/item/device/analyzer,
|
||||
/obj/item/device/geiger_counter,
|
||||
/obj/item/t_scanner,
|
||||
/obj/item/analyzer,
|
||||
/obj/item/geiger_counter,
|
||||
/obj/item/extinguisher/mini,
|
||||
/obj/item/device/radio,
|
||||
/obj/item/radio,
|
||||
/obj/item/clothing/gloves,
|
||||
/obj/item/holosign_creator,
|
||||
/obj/item/device/assembly/signaler
|
||||
/obj/item/assembly/signaler
|
||||
))
|
||||
STR.can_hold = can_hold
|
||||
|
||||
/obj/item/storage/belt/utility/chief
|
||||
name = "\improper Chief Engineer's toolbelt" //"the Chief Engineer's toolbelt", because "Chief Engineer's toolbelt" is not a proper noun
|
||||
@@ -66,10 +67,10 @@
|
||||
new /obj/item/screwdriver/power(src)
|
||||
new /obj/item/crowbar/power(src)
|
||||
new /obj/item/weldingtool/experimental(src)//This can be changed if this is too much
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/multitool(src)
|
||||
new /obj/item/stack/cable_coil(src,30,pick("red","yellow","orange"))
|
||||
new /obj/item/extinguisher/mini(src)
|
||||
new /obj/item/device/analyzer(src)
|
||||
new /obj/item/analyzer(src)
|
||||
//much roomier now that we've managed to remove two tools
|
||||
|
||||
/obj/item/storage/belt/utility/full/PopulateContents()
|
||||
@@ -78,7 +79,7 @@
|
||||
new /obj/item/weldingtool(src)
|
||||
new /obj/item/crowbar(src)
|
||||
new /obj/item/wirecutters(src)
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/multitool(src)
|
||||
new /obj/item/stack/cable_coil(src,30,pick("red","yellow","orange"))
|
||||
|
||||
/obj/item/storage/belt/utility/full/engi/PopulateContents()
|
||||
@@ -87,7 +88,7 @@
|
||||
new /obj/item/weldingtool/largetank(src)
|
||||
new /obj/item/crowbar(src)
|
||||
new /obj/item/wirecutters(src)
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/multitool(src)
|
||||
new /obj/item/stack/cable_coil(src,30,pick("red","yellow","orange"))
|
||||
|
||||
|
||||
@@ -97,7 +98,7 @@
|
||||
new /obj/item/weldingtool(src)
|
||||
new /obj/item/crowbar(src)
|
||||
new /obj/item/wirecutters(src)
|
||||
new /obj/item/device/t_scanner(src)
|
||||
new /obj/item/t_scanner(src)
|
||||
new /obj/item/extinguisher/mini(src)
|
||||
|
||||
/obj/item/storage/belt/utility/servant/PopulateContents()
|
||||
@@ -106,7 +107,7 @@
|
||||
new /obj/item/wrench/brass(src)
|
||||
new /obj/item/crowbar/brass(src)
|
||||
new /obj/item/weldingtool/experimental/brass(src)
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/multitool(src)
|
||||
new /obj/item/stack/cable_coil(src, 30, "yellow")
|
||||
|
||||
/obj/item/storage/belt/medical
|
||||
@@ -120,7 +121,7 @@
|
||||
GET_COMPONENT(STR, /datum/component/storage)
|
||||
STR.max_w_class = WEIGHT_CLASS_BULKY
|
||||
STR.can_hold = typecacheof(list(
|
||||
/obj/item/device/healthanalyzer,
|
||||
/obj/item/healthanalyzer,
|
||||
/obj/item/dnainjector,
|
||||
/obj/item/reagent_containers/dropper,
|
||||
/obj/item/reagent_containers/glass/beaker,
|
||||
@@ -132,11 +133,11 @@
|
||||
/obj/item/storage/fancy/cigarettes,
|
||||
/obj/item/storage/pill_bottle,
|
||||
/obj/item/stack/medical,
|
||||
/obj/item/device/flashlight/pen,
|
||||
/obj/item/flashlight/pen,
|
||||
/obj/item/extinguisher/mini,
|
||||
/obj/item/reagent_containers/hypospray,
|
||||
/obj/item/device/sensor_device,
|
||||
/obj/item/device/radio,
|
||||
/obj/item/sensor_device,
|
||||
/obj/item/radio,
|
||||
/obj/item/clothing/gloves/,
|
||||
/obj/item/lazarus_injector,
|
||||
/obj/item/bikehorn/rubberducky,
|
||||
@@ -150,7 +151,7 @@
|
||||
/obj/item/retractor,
|
||||
/obj/item/cautery,
|
||||
/obj/item/hemostat,
|
||||
/obj/item/device/geiger_counter,
|
||||
/obj/item/geiger_counter,
|
||||
/obj/item/clothing/neck/stethoscope,
|
||||
/obj/item/stamp,
|
||||
/obj/item/clothing/glasses,
|
||||
@@ -185,15 +186,15 @@
|
||||
/obj/item/grenade,
|
||||
/obj/item/reagent_containers/spray/pepper,
|
||||
/obj/item/restraints/handcuffs,
|
||||
/obj/item/device/assembly/flash/handheld,
|
||||
/obj/item/assembly/flash/handheld,
|
||||
/obj/item/clothing/glasses,
|
||||
/obj/item/ammo_casing/shotgun,
|
||||
/obj/item/ammo_box,
|
||||
/obj/item/reagent_containers/food/snacks/donut,
|
||||
/obj/item/kitchen/knife/combat,
|
||||
/obj/item/device/flashlight/seclite,
|
||||
/obj/item/flashlight/seclite,
|
||||
/obj/item/melee/classic_baton/telescopic,
|
||||
/obj/item/device/radio,
|
||||
/obj/item/radio,
|
||||
/obj/item/clothing/gloves,
|
||||
/obj/item/restraints/legcuffs/bola
|
||||
))
|
||||
@@ -202,7 +203,7 @@
|
||||
new /obj/item/reagent_containers/spray/pepper(src)
|
||||
new /obj/item/restraints/handcuffs(src)
|
||||
new /obj/item/grenade/flashbang(src)
|
||||
new /obj/item/device/assembly/flash/handheld(src)
|
||||
new /obj/item/assembly/flash/handheld(src)
|
||||
new /obj/item/melee/baton/loaded(src)
|
||||
update_icon()
|
||||
|
||||
@@ -225,15 +226,15 @@
|
||||
/obj/item/weldingtool,
|
||||
/obj/item/wirecutters,
|
||||
/obj/item/wrench,
|
||||
/obj/item/device/multitool,
|
||||
/obj/item/device/flashlight,
|
||||
/obj/item/multitool,
|
||||
/obj/item/flashlight,
|
||||
/obj/item/stack/cable_coil,
|
||||
/obj/item/device/analyzer,
|
||||
/obj/item/analyzer,
|
||||
/obj/item/extinguisher/mini,
|
||||
/obj/item/device/radio,
|
||||
/obj/item/radio,
|
||||
/obj/item/clothing/gloves,
|
||||
/obj/item/resonator,
|
||||
/obj/item/device/mining_scanner,
|
||||
/obj/item/mining_scanner,
|
||||
/obj/item/pickaxe,
|
||||
/obj/item/stack/sheet/animalhide,
|
||||
/obj/item/stack/sheet/sinew,
|
||||
@@ -244,16 +245,16 @@
|
||||
/obj/item/stack/medical,
|
||||
/obj/item/kitchen/knife,
|
||||
/obj/item/reagent_containers/hypospray,
|
||||
/obj/item/device/gps,
|
||||
/obj/item/gps,
|
||||
/obj/item/storage/bag/ore,
|
||||
/obj/item/survivalcapsule,
|
||||
/obj/item/device/t_scanner/adv_mining_scanner,
|
||||
/obj/item/t_scanner/adv_mining_scanner,
|
||||
/obj/item/reagent_containers/pill,
|
||||
/obj/item/storage/pill_bottle,
|
||||
/obj/item/stack/ore,
|
||||
/obj/item/reagent_containers/food/drinks,
|
||||
/obj/item/organ/regenerative_core,
|
||||
/obj/item/device/wormhole_jaunter,
|
||||
/obj/item/wormhole_jaunter,
|
||||
/obj/item/storage/bag/plants,
|
||||
/obj/item/stack/marker_beacon
|
||||
))
|
||||
@@ -288,16 +289,16 @@
|
||||
GET_COMPONENT(STR, /datum/component/storage)
|
||||
STR.max_items = 6
|
||||
STR.can_hold = typecacheof(list(
|
||||
/obj/item/device/soulstone
|
||||
/obj/item/soulstone
|
||||
))
|
||||
|
||||
/obj/item/storage/belt/soulstone/full/PopulateContents()
|
||||
for(var/i in 1 to 6)
|
||||
new /obj/item/device/soulstone(src)
|
||||
new /obj/item/soulstone(src)
|
||||
|
||||
/obj/item/storage/belt/soulstone/full/chappy/PopulateContents()
|
||||
for(var/i in 1 to 6)
|
||||
new /obj/item/device/soulstone/anybody/chaplain(src)
|
||||
new /obj/item/soulstone/anybody/chaplain(src)
|
||||
|
||||
/obj/item/storage/belt/champion
|
||||
name = "championship belt"
|
||||
@@ -338,7 +339,7 @@
|
||||
new /obj/item/weldingtool/abductor(src)
|
||||
new /obj/item/crowbar/abductor(src)
|
||||
new /obj/item/wirecutters/abductor(src)
|
||||
new /obj/item/device/multitool/abductor(src)
|
||||
new /obj/item/multitool/abductor(src)
|
||||
new /obj/item/stack/cable_coil(src,30,"white")
|
||||
|
||||
/obj/item/storage/belt/military/army
|
||||
@@ -375,7 +376,7 @@
|
||||
/obj/item/grenade,
|
||||
/obj/item/screwdriver,
|
||||
/obj/item/lighter,
|
||||
/obj/item/device/multitool,
|
||||
/obj/item/multitool,
|
||||
/obj/item/reagent_containers/food/drinks/bottle/molotov,
|
||||
/obj/item/grenade/plastic/c4,
|
||||
))
|
||||
@@ -408,7 +409,7 @@
|
||||
new /obj/item/grenade/syndieminibomb(src)
|
||||
new /obj/item/grenade/syndieminibomb(src)
|
||||
new /obj/item/screwdriver(src)
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/multitool(src)
|
||||
|
||||
/obj/item/storage/belt/wands
|
||||
name = "wand belt"
|
||||
@@ -449,15 +450,15 @@
|
||||
STR.max_w_class = WEIGHT_CLASS_BULKY // Set to this so the light replacer can fit.
|
||||
STR.can_hold = typecacheof(list(
|
||||
/obj/item/grenade/chem_grenade,
|
||||
/obj/item/device/lightreplacer,
|
||||
/obj/item/device/flashlight,
|
||||
/obj/item/lightreplacer,
|
||||
/obj/item/flashlight,
|
||||
/obj/item/reagent_containers/spray,
|
||||
/obj/item/soap,
|
||||
/obj/item/holosign_creator,
|
||||
/obj/item/key/janitor,
|
||||
/obj/item/clothing/gloves,
|
||||
/obj/item/melee/flyswatter,
|
||||
/obj/item/device/assembly/mousetrap
|
||||
/obj/item/assembly/mousetrap
|
||||
))
|
||||
|
||||
/obj/item/storage/belt/bandolier
|
||||
@@ -606,4 +607,4 @@
|
||||
|
||||
/obj/item/storage/belt/sabre/PopulateContents()
|
||||
new /obj/item/melee/sabre(src)
|
||||
update_icon()
|
||||
update_icon()
|
||||
@@ -74,7 +74,7 @@ GLOBAL_LIST_INIT(bibleitemstates, list("bible", "koran", "scrapbook", "bible",
|
||||
if(B.icon_state == "honk1" || B.icon_state == "honk2")
|
||||
var/mob/living/carbon/human/H = usr
|
||||
H.dna.add_mutation(CLOWNMUT)
|
||||
H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(H), slot_wear_mask)
|
||||
H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(H), SLOT_WEAR_MASK)
|
||||
|
||||
SSreligion.bible_icon_state = B.icon_state
|
||||
SSreligion.bible_item_state = B.item_state
|
||||
@@ -177,7 +177,7 @@ GLOBAL_LIST_INIT(bibleitemstates, list("bible", "koran", "scrapbook", "bible",
|
||||
playsound(src,'sound/hallucinations/veryfar_noise.ogg',40,1)
|
||||
if(do_after(user, 40, target = sword))
|
||||
playsound(src,'sound/effects/pray_chaplain.ogg',60,1)
|
||||
for(var/obj/item/device/soulstone/SS in sword.contents)
|
||||
for(var/obj/item/soulstone/SS in sword.contents)
|
||||
SS.usability = TRUE
|
||||
for(var/mob/living/simple_animal/shade/EX in SS)
|
||||
SSticker.mode.remove_cultist(EX.mind, 1, 0)
|
||||
|
||||
@@ -101,7 +101,7 @@
|
||||
|
||||
/obj/item/storage/box/survival/radio/PopulateContents()
|
||||
..() // we want the survival stuff too.
|
||||
new /obj/item/device/radio/off(src)
|
||||
new /obj/item/radio/off(src)
|
||||
|
||||
/obj/item/storage/box/survival_mining/PopulateContents()
|
||||
new /obj/item/clothing/mask/gas/explorer(src)
|
||||
@@ -118,7 +118,7 @@
|
||||
|
||||
/obj/item/storage/box/engineer/radio/PopulateContents()
|
||||
..() // we want the regular items too.
|
||||
new /obj/item/device/radio/off(src)
|
||||
new /obj/item/radio/off(src)
|
||||
|
||||
// Syndie survival box
|
||||
/obj/item/storage/box/syndie/PopulateContents()
|
||||
@@ -133,7 +133,7 @@
|
||||
|
||||
/obj/item/storage/box/security/radio/PopulateContents()
|
||||
..() // we want the regular stuff too
|
||||
new /obj/item/device/radio/off(src)
|
||||
new /obj/item/radio/off(src)
|
||||
|
||||
/obj/item/storage/box/gloves
|
||||
name = "box of latex gloves"
|
||||
@@ -225,7 +225,7 @@
|
||||
|
||||
/obj/item/storage/box/flashes/PopulateContents()
|
||||
for(var/i in 1 to 6)
|
||||
new /obj/item/device/assembly/flash/handheld(src)
|
||||
new /obj/item/assembly/flash/handheld(src)
|
||||
|
||||
/obj/item/storage/box/wall_flash
|
||||
name = "wall-mounted flash kit"
|
||||
@@ -238,11 +238,11 @@
|
||||
|
||||
new /obj/item/wallframe/button(src)
|
||||
new /obj/item/electronics/airlock(src)
|
||||
var/obj/item/device/assembly/control/flasher/remote = new(src)
|
||||
var/obj/item/assembly/control/flasher/remote = new(src)
|
||||
remote.id = id
|
||||
var/obj/item/wallframe/flasher/frame = new(src)
|
||||
frame.id = id
|
||||
new /obj/item/device/assembly/flash/handheld(src)
|
||||
new /obj/item/assembly/flash/handheld(src)
|
||||
new /obj/item/screwdriver(src)
|
||||
|
||||
|
||||
@@ -399,10 +399,10 @@
|
||||
illustration = "pda"
|
||||
|
||||
/obj/item/storage/box/PDAs/PopulateContents()
|
||||
new /obj/item/device/pda(src)
|
||||
new /obj/item/device/pda(src)
|
||||
new /obj/item/device/pda(src)
|
||||
new /obj/item/device/pda(src)
|
||||
new /obj/item/pda(src)
|
||||
new /obj/item/pda(src)
|
||||
new /obj/item/pda(src)
|
||||
new /obj/item/pda(src)
|
||||
new /obj/item/cartridge/head(src)
|
||||
|
||||
var/newcart = pick( /obj/item/cartridge/engineering,
|
||||
@@ -453,7 +453,7 @@
|
||||
|
||||
/obj/item/storage/box/firingpins/PopulateContents()
|
||||
for(var/i in 1 to 5)
|
||||
new /obj/item/device/firing_pin(src)
|
||||
new /obj/item/firing_pin(src)
|
||||
|
||||
/obj/item/storage/box/lasertagpins
|
||||
name = "box of laser tag firing pins"
|
||||
@@ -462,8 +462,8 @@
|
||||
|
||||
/obj/item/storage/box/lasertagpins/PopulateContents()
|
||||
for(var/i in 1 to 3)
|
||||
new /obj/item/device/firing_pin/tag/red(src)
|
||||
new /obj/item/device/firing_pin/tag/blue(src)
|
||||
new /obj/item/firing_pin/tag/red(src)
|
||||
new /obj/item/firing_pin/tag/blue(src)
|
||||
|
||||
/obj/item/storage/box/handcuffs
|
||||
name = "box of spare handcuffs"
|
||||
@@ -511,7 +511,7 @@
|
||||
|
||||
/obj/item/storage/box/mousetraps/PopulateContents()
|
||||
for(var/i in 1 to 6)
|
||||
new /obj/item/device/assembly/mousetrap(src)
|
||||
new /obj/item/assembly/mousetrap(src)
|
||||
|
||||
/obj/item/storage/box/pillbottles
|
||||
name = "box of pill bottles"
|
||||
@@ -544,7 +544,7 @@
|
||||
icon_state = "matchbox"
|
||||
item_state = "zippo"
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
slot_flags = SLOT_BELT
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
|
||||
/obj/item/storage/box/matches/ComponentInitialize()
|
||||
. = ..()
|
||||
@@ -966,3 +966,45 @@ obj/item/storage/box/clown
|
||||
/obj/item/storage/box/holy_grenades/PopulateContents()
|
||||
for(var/i in 1 to 7)
|
||||
new/obj/item/grenade/chem_grenade/holy(src)
|
||||
|
||||
/obj/item/storage/box/stockparts/basic //for ruins where it's a bad idea to give access to an autolathe/protolathe, but still want to make stock parts accessible
|
||||
name = "box of stock parts"
|
||||
desc = "Contains a variety of basic stock parts."
|
||||
|
||||
/obj/item/storage/box/stockparts/basic/PopulateContents()
|
||||
new /obj/item/stock_parts/capacitor(src)
|
||||
new /obj/item/stock_parts/capacitor(src)
|
||||
new /obj/item/stock_parts/capacitor(src)
|
||||
new /obj/item/stock_parts/scanning_module(src)
|
||||
new /obj/item/stock_parts/scanning_module(src)
|
||||
new /obj/item/stock_parts/scanning_module(src)
|
||||
new /obj/item/stock_parts/manipulator(src)
|
||||
new /obj/item/stock_parts/manipulator(src)
|
||||
new /obj/item/stock_parts/manipulator(src)
|
||||
new /obj/item/stock_parts/micro_laser(src)
|
||||
new /obj/item/stock_parts/micro_laser(src)
|
||||
new /obj/item/stock_parts/micro_laser(src)
|
||||
new /obj/item/stock_parts/matter_bin(src)
|
||||
new /obj/item/stock_parts/matter_bin(src)
|
||||
new /obj/item/stock_parts/matter_bin(src)
|
||||
|
||||
/obj/item/storage/box/stockparts/deluxe
|
||||
name = "box of deluxe stock parts"
|
||||
desc = "Contains a variety of deluxe stock parts."
|
||||
|
||||
/obj/item/storage/box/stockparts/deluxe/PopulateContents()
|
||||
new /obj/item/stock_parts/capacitor/quadratic(src)
|
||||
new /obj/item/stock_parts/capacitor/quadratic(src)
|
||||
new /obj/item/stock_parts/capacitor/quadratic(src)
|
||||
new /obj/item/stock_parts/scanning_module/triphasic(src)
|
||||
new /obj/item/stock_parts/scanning_module/triphasic(src)
|
||||
new /obj/item/stock_parts/scanning_module/triphasic(src)
|
||||
new /obj/item/stock_parts/manipulator/femto(src)
|
||||
new /obj/item/stock_parts/manipulator/femto(src)
|
||||
new /obj/item/stock_parts/manipulator/femto(src)
|
||||
new /obj/item/stock_parts/micro_laser/quadultra(src)
|
||||
new /obj/item/stock_parts/micro_laser/quadultra(src)
|
||||
new /obj/item/stock_parts/micro_laser/quadultra(src)
|
||||
new /obj/item/stock_parts/matter_bin/bluespace(src)
|
||||
new /obj/item/stock_parts/matter_bin/bluespace(src)
|
||||
new /obj/item/stock_parts/matter_bin/bluespace(src)
|
||||
|
||||
@@ -109,7 +109,7 @@
|
||||
icon_type = "candle"
|
||||
item_state = "candlebox5"
|
||||
throwforce = 2
|
||||
slot_flags = SLOT_BELT
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
spawn_type = /obj/item/candle
|
||||
fancy_open = TRUE
|
||||
|
||||
@@ -132,7 +132,7 @@
|
||||
item_state = "cigpacket"
|
||||
w_class = WEIGHT_CLASS_TINY
|
||||
throwforce = 0
|
||||
slot_flags = SLOT_BELT
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
icon_type = "cigarette"
|
||||
spawn_type = /obj/item/clothing/mask/cigarette/space_cigarette
|
||||
|
||||
@@ -189,7 +189,7 @@
|
||||
if(M == user && contents.len > 0 && !user.wear_mask)
|
||||
var/obj/item/clothing/mask/cigarette/W = cig
|
||||
SendSignal(COMSIG_TRY_STORAGE_TAKE, W, M)
|
||||
M.equip_to_slot_if_possible(W, slot_wear_mask)
|
||||
M.equip_to_slot_if_possible(W, SLOT_WEAR_MASK)
|
||||
contents -= W
|
||||
to_chat(user, "<span class='notice'>You take a [icon_type] out of the pack.</span>")
|
||||
else
|
||||
@@ -237,7 +237,7 @@
|
||||
name = "\improper Midori Tabako packet"
|
||||
desc = "You can't understand the runes, but the packet smells funny."
|
||||
icon_state = "midori"
|
||||
spawn_type = /obj/item/clothing/mask/cigarette/rollie
|
||||
spawn_type = /obj/item/clothing/mask/cigarette/rollie/nicotine
|
||||
|
||||
/obj/item/storage/fancy/cigarettes/cigpack_shadyjims
|
||||
name = "\improper Shady Jim's Super Slims packet"
|
||||
|
||||
@@ -35,7 +35,7 @@
|
||||
new /obj/item/stack/medical/ointment(src)
|
||||
new /obj/item/stack/medical/ointment(src)
|
||||
new /obj/item/reagent_containers/hypospray/medipen(src)
|
||||
new /obj/item/device/healthanalyzer(src)
|
||||
new /obj/item/healthanalyzer(src)
|
||||
|
||||
/obj/item/storage/firstaid/ancient
|
||||
icon_state = "firstaid"
|
||||
@@ -74,7 +74,7 @@
|
||||
new /obj/item/reagent_containers/pill/oxandrolone(src)
|
||||
new /obj/item/reagent_containers/pill/oxandrolone(src)
|
||||
new /obj/item/reagent_containers/hypospray/medipen(src)
|
||||
new /obj/item/device/healthanalyzer(src)
|
||||
new /obj/item/healthanalyzer(src)
|
||||
|
||||
/obj/item/storage/firstaid/toxin
|
||||
name = "toxin treatment kit"
|
||||
@@ -97,7 +97,7 @@
|
||||
new /obj/item/reagent_containers/syringe/charcoal(src)
|
||||
for(var/i in 1 to 2)
|
||||
new /obj/item/storage/pill_bottle/charcoal(src)
|
||||
new /obj/item/device/healthanalyzer(src)
|
||||
new /obj/item/healthanalyzer(src)
|
||||
|
||||
/obj/item/storage/firstaid/o2
|
||||
name = "oxygen deprivation treatment kit"
|
||||
@@ -116,7 +116,7 @@
|
||||
new /obj/item/reagent_containers/pill/salbutamol(src)
|
||||
new /obj/item/reagent_containers/hypospray/medipen(src)
|
||||
new /obj/item/reagent_containers/hypospray/medipen(src)
|
||||
new /obj/item/device/healthanalyzer(src)
|
||||
new /obj/item/healthanalyzer(src)
|
||||
|
||||
/obj/item/storage/firstaid/brute
|
||||
name = "brute trauma treatment kit"
|
||||
@@ -135,7 +135,7 @@
|
||||
new /obj/item/reagent_containers/pill/patch/styptic(src)
|
||||
new /obj/item/stack/medical/gauze(src)
|
||||
new /obj/item/stack/medical/gauze(src)
|
||||
new /obj/item/device/healthanalyzer(src)
|
||||
new /obj/item/healthanalyzer(src)
|
||||
|
||||
/obj/item/storage/firstaid/tactical
|
||||
name = "combat medical kit"
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
return
|
||||
if (istype(W, /obj/item/wirecutters))
|
||||
to_chat(user, "<span class='danger'>[src] is protected from this sort of tampering, yet it appears the internal memory wires can still be <b>pulsed</b>.</span>")
|
||||
if ((istype(W, /obj/item/device/multitool)) && (!l_hacking))
|
||||
if ((istype(W, /obj/item/multitool)) && (!l_hacking))
|
||||
if(open == 1)
|
||||
to_chat(user, "<span class='danger'>Now attempting to reset internal memory, please hold.</span>")
|
||||
l_hacking = 1
|
||||
|
||||
@@ -48,12 +48,12 @@
|
||||
new /obj/item/extinguisher/mini(src)
|
||||
switch(rand(1,3))
|
||||
if(1)
|
||||
new /obj/item/device/flashlight(src)
|
||||
new /obj/item/flashlight(src)
|
||||
if(2)
|
||||
new /obj/item/device/flashlight/glowstick(src)
|
||||
new /obj/item/flashlight/glowstick(src)
|
||||
if(3)
|
||||
new /obj/item/device/flashlight/flare(src)
|
||||
new /obj/item/device/radio/off(src)
|
||||
new /obj/item/flashlight/flare(src)
|
||||
new /obj/item/radio/off(src)
|
||||
|
||||
/obj/item/storage/toolbox/emergency/old
|
||||
name = "rusty red toolbox"
|
||||
@@ -70,7 +70,7 @@
|
||||
new /obj/item/wrench(src)
|
||||
new /obj/item/weldingtool(src)
|
||||
new /obj/item/crowbar(src)
|
||||
new /obj/item/device/analyzer(src)
|
||||
new /obj/item/analyzer(src)
|
||||
new /obj/item/wirecutters(src)
|
||||
|
||||
/obj/item/storage/toolbox/mechanical/old
|
||||
@@ -96,7 +96,7 @@
|
||||
var/pickedcolor = pick("red","yellow","green","blue","pink","orange","cyan","white")
|
||||
new /obj/item/screwdriver(src)
|
||||
new /obj/item/wirecutters(src)
|
||||
new /obj/item/device/t_scanner(src)
|
||||
new /obj/item/t_scanner(src)
|
||||
new /obj/item/crowbar(src)
|
||||
new /obj/item/stack/cable_coil(src,30,pickedcolor)
|
||||
new /obj/item/stack/cable_coil(src,30,pickedcolor)
|
||||
@@ -123,7 +123,7 @@
|
||||
new /obj/item/weldingtool/largetank(src)
|
||||
new /obj/item/crowbar/red(src)
|
||||
new /obj/item/wirecutters(src, "red")
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/multitool(src)
|
||||
new /obj/item/clothing/gloves/combat(src)
|
||||
|
||||
/obj/item/storage/toolbox/drone
|
||||
@@ -139,7 +139,7 @@
|
||||
new /obj/item/crowbar(src)
|
||||
new /obj/item/stack/cable_coil(src,30,pickedcolor)
|
||||
new /obj/item/wirecutters(src)
|
||||
new /obj/item/device/multitool(src)
|
||||
new /obj/item/multitool(src)
|
||||
|
||||
/obj/item/storage/toolbox/brass
|
||||
name = "brass box"
|
||||
@@ -168,7 +168,7 @@
|
||||
new /obj/item/weldingtool/experimental/brass(src)
|
||||
|
||||
/obj/item/storage/toolbox/brass/prefilled/servant
|
||||
slot_flags = SLOT_BELT
|
||||
slot_flags = ITEM_SLOT_BELT
|
||||
fabricator_type = null
|
||||
|
||||
/obj/item/storage/toolbox/brass/prefilled/ratvar
|
||||
|
||||
@@ -7,20 +7,20 @@
|
||||
new /obj/item/clothing/mask/chameleon(src) // Goes with above
|
||||
new /obj/item/card/id/syndicate(src) // 2 tc
|
||||
new /obj/item/clothing/shoes/chameleon/noslip(src) // 2 tc
|
||||
new /obj/item/device/camera_bug(src) // 1 tc
|
||||
new /obj/item/device/multitool/ai_detect(src) // 1 tc
|
||||
new /obj/item/device/encryptionkey/syndicate(src) // 2 tc
|
||||
new /obj/item/camera_bug(src) // 1 tc
|
||||
new /obj/item/multitool/ai_detect(src) // 1 tc
|
||||
new /obj/item/encryptionkey/syndicate(src) // 2 tc
|
||||
new /obj/item/reagent_containers/syringe/mulligan(src) // 4 tc
|
||||
new /obj/item/switchblade(src) //I'll count this as 2 tc
|
||||
new /obj/item/storage/fancy/cigarettes/cigpack_syndicate (src) // 2 tc this shit heals
|
||||
new /obj/item/device/flashlight/emp(src) // 2 tc
|
||||
new /obj/item/device/chameleon(src) // 7 tc
|
||||
new /obj/item/flashlight/emp(src) // 2 tc
|
||||
new /obj/item/chameleon(src) // 7 tc
|
||||
|
||||
if("stealth") // 31 tc
|
||||
new /obj/item/gun/energy/kinetic_accelerator/crossbow(src)
|
||||
new /obj/item/pen/sleepy(src)
|
||||
new /obj/item/device/healthanalyzer/rad_laser(src)
|
||||
new /obj/item/device/chameleon(src)
|
||||
new /obj/item/healthanalyzer/rad_laser(src)
|
||||
new /obj/item/chameleon(src)
|
||||
new /obj/item/soap/syndie(src)
|
||||
new /obj/item/clothing/glasses/thermal/syndi(src)
|
||||
|
||||
@@ -34,12 +34,12 @@
|
||||
new /obj/item/reagent_containers/syringe/stimulants(src)
|
||||
|
||||
if("screwed") // 29 tc
|
||||
new /obj/item/device/sbeacondrop/bomb(src)
|
||||
new /obj/item/sbeacondrop/bomb(src)
|
||||
new /obj/item/grenade/syndieminibomb(src)
|
||||
new /obj/item/device/sbeacondrop/powersink(src)
|
||||
new /obj/item/sbeacondrop/powersink(src)
|
||||
new /obj/item/clothing/suit/space/syndicate/black/red(src)
|
||||
new /obj/item/clothing/head/helmet/space/syndicate/black/red(src)
|
||||
new /obj/item/device/encryptionkey/syndicate(src)
|
||||
new /obj/item/encryptionkey/syndicate(src)
|
||||
|
||||
if("guns") // 28 tc now
|
||||
new /obj/item/gun/ballistic/revolver(src)
|
||||
@@ -56,7 +56,7 @@
|
||||
new /obj/item/clothing/glasses/thermal/syndi(src)
|
||||
new /obj/item/card/emag(src)
|
||||
new /obj/item/clothing/shoes/chameleon/noslip(src)
|
||||
new /obj/item/device/encryptionkey/syndicate(src)
|
||||
new /obj/item/encryptionkey/syndicate(src)
|
||||
new /obj/item/grenade/syndieminibomb(src)
|
||||
|
||||
if("implant") // 55+ tc holy shit what the fuck this is a lottery disguised as fun boxes isn't it?
|
||||
@@ -70,12 +70,12 @@
|
||||
if("hacker") // 26 tc
|
||||
new /obj/item/aiModule/syndicate(src)
|
||||
new /obj/item/card/emag(src)
|
||||
new /obj/item/device/encryptionkey/binary(src)
|
||||
new /obj/item/encryptionkey/binary(src)
|
||||
new /obj/item/aiModule/toyAI(src)
|
||||
new /obj/item/device/multitool/ai_detect(src)
|
||||
new /obj/item/multitool/ai_detect(src)
|
||||
|
||||
if("lordsingulo") // 24 tc
|
||||
new /obj/item/device/sbeacondrop(src)
|
||||
new /obj/item/sbeacondrop(src)
|
||||
new /obj/item/clothing/suit/space/syndicate/black/red(src)
|
||||
new /obj/item/clothing/head/helmet/space/syndicate/black/red(src)
|
||||
new /obj/item/card/emag(src)
|
||||
@@ -83,10 +83,10 @@
|
||||
if("sabotage") // 26 tc now
|
||||
new /obj/item/grenade/plastic/c4 (src)
|
||||
new /obj/item/grenade/plastic/c4 (src)
|
||||
new /obj/item/device/doorCharge(src)
|
||||
new /obj/item/device/doorCharge(src)
|
||||
new /obj/item/device/camera_bug(src)
|
||||
new /obj/item/device/sbeacondrop/powersink(src)
|
||||
new /obj/item/doorCharge(src)
|
||||
new /obj/item/doorCharge(src)
|
||||
new /obj/item/camera_bug(src)
|
||||
new /obj/item/sbeacondrop/powersink(src)
|
||||
new /obj/item/cartridge/virus/syndicate(src)
|
||||
new /obj/item/storage/toolbox/syndicate(src) //To actually get to those places
|
||||
new /obj/item/pizzabox/bomb
|
||||
@@ -111,8 +111,8 @@
|
||||
new /obj/item/clothing/suit/space/hardsuit/syndi(src) // 8 tc
|
||||
new /obj/item/gun/ballistic/automatic/shotgun/bulldog/unrestricted(src) // 8 tc
|
||||
new /obj/item/implanter/explosive(src) // 2 tc
|
||||
new /obj/item/ammo_box/magazine/m12g/buckshot(src) // 2 tc
|
||||
new /obj/item/ammo_box/magazine/m12g/buckshot(src) // 2 tc
|
||||
new /obj/item/ammo_box/magazine/m12g(src) // 2 tc
|
||||
new /obj/item/ammo_box/magazine/m12g(src) // 2 tc
|
||||
new /obj/item/grenade/plastic/c4 (src) // 1 tc
|
||||
new /obj/item/grenade/plastic/c4 (src) // 1 tc
|
||||
new /obj/item/card/emag(src) // 6 tc
|
||||
@@ -128,7 +128,7 @@
|
||||
new /obj/item/throwing_star(src)
|
||||
new /obj/item/storage/belt/chameleon(src) // Unique but worth at least 2 tc
|
||||
new /obj/item/card/id/syndicate(src) // 2 tc
|
||||
new /obj/item/device/chameleon(src) // 7 tc
|
||||
new /obj/item/chameleon(src) // 7 tc
|
||||
|
||||
/obj/item/storage/box/syndie_kit
|
||||
name = "box"
|
||||
@@ -277,10 +277,10 @@
|
||||
new /obj/item/clothing/head/chameleon(src)
|
||||
new /obj/item/clothing/mask/chameleon(src)
|
||||
new /obj/item/storage/backpack/chameleon(src)
|
||||
new /obj/item/device/radio/headset/chameleon(src)
|
||||
new /obj/item/radio/headset/chameleon(src)
|
||||
new /obj/item/stamp/chameleon(src)
|
||||
new /obj/item/device/pda/chameleon(src)
|
||||
new /obj/item/gun/energy/laser/chameleon(src)
|
||||
new /obj/item/pda/chameleon(src)
|
||||
//new /obj/item/gun/energy/laser/chameleon(src) //crashes the server right now. please fix it!
|
||||
|
||||
//5*(2*4) = 5*8 = 45, 45 damage if you hit one person with all 5 stars.
|
||||
//Not counting the damage it will do while embedded (2*4 = 8, at 15% chance)
|
||||
@@ -321,10 +321,10 @@
|
||||
new /obj/item/clothing/under/rank/centcom_officer(src)
|
||||
new /obj/item/clothing/shoes/sneakers/black(src)
|
||||
new /obj/item/clothing/gloves/color/black(src)
|
||||
new /obj/item/device/radio/headset/headset_cent/empty(src)
|
||||
new /obj/item/radio/headset/headset_cent/empty(src)
|
||||
new /obj/item/clothing/glasses/sunglasses(src)
|
||||
new /obj/item/storage/backpack/satchel(src)
|
||||
new /obj/item/device/pda/heads(src)
|
||||
new /obj/item/pda/heads(src)
|
||||
new /obj/item/clipboard(src)
|
||||
|
||||
/obj/item/storage/box/syndie_kit/chameleon/broken/PopulateContents()
|
||||
@@ -336,7 +336,7 @@
|
||||
new /obj/item/clothing/head/chameleon/broken(src)
|
||||
new /obj/item/clothing/mask/chameleon/broken(src)
|
||||
new /obj/item/storage/backpack/chameleon/broken(src)
|
||||
new /obj/item/device/radio/headset/chameleon/broken(src)
|
||||
new /obj/item/radio/headset/chameleon/broken(src)
|
||||
new /obj/item/stamp/chameleon/broken(src)
|
||||
new /obj/item/device/pda/chameleon/broken(src)
|
||||
new /obj/item/pda/chameleon/broken(src)
|
||||
// No chameleon laser, they can't randomise for //REASONS//
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
icon_state = "wallet"
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
resistance_flags = FLAMMABLE
|
||||
slot_flags = SLOT_ID
|
||||
slot_flags = ITEM_SLOT_ID
|
||||
|
||||
var/obj/item/card/id/front_id = null
|
||||
var/list/combined_access
|
||||
@@ -17,7 +17,7 @@
|
||||
/obj/item/stack/spacecash,
|
||||
/obj/item/card,
|
||||
/obj/item/clothing/mask/cigarette,
|
||||
/obj/item/device/flashlight/pen,
|
||||
/obj/item/flashlight/pen,
|
||||
/obj/item/seeds,
|
||||
/obj/item/stack/medical,
|
||||
/obj/item/toy/crayon,
|
||||
@@ -38,16 +38,20 @@
|
||||
|
||||
/obj/item/storage/wallet/Exited(atom/movable/AM)
|
||||
. = ..()
|
||||
refreshID()
|
||||
// The loc has not actually changed yet when this proc is called, so call
|
||||
// refreshID and have it ignore the outgoing atom.
|
||||
refreshID(AM)
|
||||
|
||||
/obj/item/storage/wallet/proc/refreshID()
|
||||
if(!(front_id in src))
|
||||
/obj/item/storage/wallet/proc/refreshID(atom/movable/removed)
|
||||
LAZYCLEARLIST(combined_access)
|
||||
if(!(front_id in src) || front_id == removed)
|
||||
front_id = null
|
||||
for(var/obj/item/card/id/I in contents)
|
||||
LAZYINITLIST(combined_access)
|
||||
LAZYCLEARLIST(combined_access)
|
||||
if(I == removed)
|
||||
continue
|
||||
if(!front_id)
|
||||
front_id = I
|
||||
LAZYINITLIST(combined_access)
|
||||
combined_access |= I.access
|
||||
update_icon()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user