Files
Yogstation/code/modules/uplink/uplink_items.dm
Redmoogle a7a09b8f64 Buffs the Hot Potato Bomb (#15339)
* Bufftato

* Show timer

* Did I just get brain cancer?

Co-authored-by: tattax <71668564+tattax@users.noreply.github.com>

* Update code/game/objects/items/hot_potato.dm

Co-authored-by: tattax <71668564+tattax@users.noreply.github.com>

* 10 seconds

Co-authored-by: tattax <71668564+tattax@users.noreply.github.com>
2022-08-28 15:32:44 +01:00

2308 lines
105 KiB
Plaintext

GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item))
/proc/get_uplink_items(var/datum/game_mode/gamemode = null, allow_sales = TRUE, allow_restricted = TRUE)
var/list/filtered_uplink_items = list()
var/list/sale_items = list()
for(var/path in GLOB.uplink_items)
var/datum/uplink_item/I = new path
if(!I.item)
continue
if(I.include_modes.len)
if(!gamemode && SSticker.mode && !(SSticker.mode.type in I.include_modes))
continue
if(gamemode && !(gamemode in I.include_modes))
continue
if(I.exclude_modes.len)
if(!gamemode && SSticker.mode && (SSticker.mode.type in I.exclude_modes))
continue
if(gamemode && (gamemode in I.exclude_modes))
continue
if(I.player_minimum && I.player_minimum > GLOB.joined_player_list.len)
continue
if (I.restricted && !allow_restricted)
continue
if(!filtered_uplink_items[I.category])
filtered_uplink_items[I.category] = list()
filtered_uplink_items[I.category][I.name] = I
if(I.limited_stock < 0 && !I.cant_discount && I.item && I.cost > 1)
sale_items += I
if(allow_sales)
var/datum/team/nuclear/nuclear_team
if (gamemode == /datum/game_mode/nuclear) // uplink code kind of needs a redesign
nuclear_team = locate() in GLOB.antagonist_teams // the team discounts could be a in a GLOB with this design but it would make sense for them to be team specific...
if (!nuclear_team)
create_uplink_sales(3, "Discounted Gear", 1, sale_items, filtered_uplink_items)
else
if (!nuclear_team.team_discounts)
// create 5 unlimited stock discounts
create_uplink_sales(5, "Discounted Team Gear", -1, sale_items, filtered_uplink_items)
// Create 10 limited stock discounts
create_uplink_sales(10, "Limited Stock Team Gear", 1, sale_items, filtered_uplink_items)
nuclear_team.team_discounts = list("Discounted Team Gear" = filtered_uplink_items["Discounted Team Gear"], "Limited Stock Team Gear" = filtered_uplink_items["Limited Stock Team Gear"])
else
for(var/cat in nuclear_team.team_discounts)
for(var/item in nuclear_team.team_discounts[cat])
var/datum/uplink_item/D = nuclear_team.team_discounts[cat][item]
var/datum/uplink_item/O = filtered_uplink_items[initial(D.category)][initial(D.name)]
O.refundable = FALSE
filtered_uplink_items["Discounted Team Gear"] = nuclear_team.team_discounts["Discounted Team Gear"]
filtered_uplink_items["Limited Stock Team Gear"] = nuclear_team.team_discounts["Limited Stock Team Gear"]
return filtered_uplink_items
/proc/create_uplink_sales(num, category_name, limited_stock, sale_items, uplink_items)
if (num <= 0)
return
if(!uplink_items[category_name])
uplink_items[category_name] = list()
for (var/i in 1 to num)
var/datum/uplink_item/I = pick_n_take(sale_items)
var/datum/uplink_item/A = new I.type
var/discount = A.get_discount()
var/list/disclaimer = list("Void where prohibited.", "Not recommended for children.", "Contains small parts.", "Check local laws for legality in region.", "Do not taunt.", "Not responsible for direct, indirect, incidental or consequential damages resulting from any defect, error or failure to perform.", "Keep away from fire or flames.", "Product is provided \"as is\" without any implied or expressed warranties.", "As seen on TV.", "For recreational use only.", "Use only as directed.", "16% sales tax will be charged for orders originating within Space Nebraska.")
A.limited_stock = limited_stock
if(A.cost >= 20) //Tough love for nuke ops
discount *= 0.5
A.category = category_name
A.cost = max(round(A.cost * discount),1)
A.name += " ([round(((initial(A.cost)-A.cost)/initial(A.cost))*100)]% off!)"
A.desc += " Normally costs [initial(A.cost)] TC. All sales final. [pick(disclaimer)]"
A.item = I.item
uplink_items[category_name][A.name] = A
/**
* Uplink Items
*
* Items that can be spawned from an uplink. Can be limited by gamemode.
**/
/datum/uplink_item
var/name = "item name"
var/category = "item category"
var/desc = "item description"
var/item = null // Path to the item to spawn.
var/refund_path = null // Alternative path for refunds, in case the item purchased isn't what is actually refunded (ie: holoparasites).
var/cost = 0
var/refund_amount = 0 // specified refund amount in case there needs to be a TC penalty for refunds.
var/refundable = FALSE
var/surplus = 100 // Chance of being included in the surplus crate.
var/cant_discount = FALSE
var/limited_stock = -1 //Setting this above zero limits how many times this item can be bought by the same traitor in a round, -1 is unlimited
var/list/include_modes = list() // Game modes to allow this item in.
var/list/exclude_modes = list() // Game modes to disallow this item from.
var/list/restricted_roles = list() //If this uplink item is only available to certain roles. Roles are dependent on the frequency chip or stored ID.
var/player_minimum //The minimum crew size needed for this item to be added to uplinks.
var/purchase_log_vis = TRUE // Visible in the purchase log?
var/restricted = FALSE // Adds restrictions for VR/Events
var/list/restricted_species //Limits items to a specific species. Hopefully.
var/illegal_tech = TRUE // Can this item be deconstructed to unlock certain techweb research nodes?
/// the manufacturer of the item. Gives up to a 20% discount if you're from that corporation
var/datum/corporation/manufacturer
/datum/uplink_item/proc/get_discount()
return pick(4;0.75,2;0.5,1;0.25)
/datum/uplink_item/proc/purchase(mob/user, datum/component/uplink/U)
var/atom/A = spawn_item(item, user, U)
if(refundable)
A.AddComponent(/datum/component/refundable, user.mind, cost)
if(purchase_log_vis && U.purchase_log)
U.purchase_log.LogPurchase(A, src, cost)
/datum/uplink_item/proc/spawn_item(spawn_path, mob/user, datum/component/uplink/U)
if(!spawn_path)
return
var/atom/A
if(ispath(spawn_path))
A = new spawn_path(get_turf(user))
else
A = spawn_path
if(ishuman(user) && istype(A, /obj/item))
var/mob/living/carbon/human/H = user
if(H.put_in_hands(A))
to_chat(H, "[A] materializes into your hands!")
return A
to_chat(user, "[A] materializes onto the floor.")
return A
//Discounts (dynamically filled above)
/datum/uplink_item/discounts
category = "Discounts"
//All bundles and telecrystals
/datum/uplink_item/bundles_TC
category = "Bundles"
surplus = 0
cant_discount = TRUE
/datum/uplink_item/bundles_TC/chemical
name = "Bioterror bundle"
desc = "For the madman: Contains a handheld Bioterror chem sprayer, a Bioterror foam grenade, a box of lethal chemicals, a dart pistol, \
box of syringes, Donksoft assault rifle, and some riot darts. Remember: Seal suit and equip internals before use."
item = /obj/item/storage/backpack/duffelbag/syndie/med/bioterrorbundle
cost = 30 // normally 42
manufacturer = /datum/corporation/traitor/donkco
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/bundles_TC/bulldog
name = "Bulldog bundle"
desc = "Lean and mean: Optimized for people that want to get up close and personal. Contains the popular \
Bulldog shotgun, two 12g buckshot drums, and a pair of Thermal imaging goggles."
item = /obj/item/storage/backpack/duffelbag/syndie/bulldogbundle
cost = 13 // normally 16
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/bundles_TC/c20r
name = "C-20r bundle"
desc = "Old Faithful: The classic C-20r, bundled with two magazines and a (surplus) suppressor at discount price."
item = /obj/item/storage/backpack/duffelbag/syndie/c20rbundle
cost = 14 // normally 16
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/bundles_TC/cyber_implants
name = "Cybernetic Implants Bundle"
desc = "A random selection of cybernetic implants. Guaranteed 5 high quality implants. Comes with an autosurgeon."
item = /obj/item/storage/box/cyber_implants
cost = 40
manufacturer = /datum/corporation/traitor/cybersun
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/bundles_TC/medical
name = "Medical bundle"
desc = "The support specialist: Aid your fellow operatives with this medical bundle. Contains a tactical medkit, \
a Donksoft LMG, a box of riot darts and a pair of magboots to rescue your friends in no-gravity environments."
item = /obj/item/storage/backpack/duffelbag/syndie/med/medicalbundle
cost = 15 // normally 20
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/bundles_TC/sniper
name = "Sniper bundle"
desc = "Elegant and refined: Contains a collapsed sniper rifle in an expensive carrying case, \
two soporific knockout magazines, a free surplus suppressor, and a sharp-looking tactical turtleneck suit. \
We'll throw in a free red tie if you order NOW."
item = /obj/item/storage/briefcase/sniperbundle
cost = 20 // normally 26
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/bundles_TC/firestarter
name = "Spetsnaz Pyro bundle"
desc = "For systematic suppression of carbon lifeforms in close quarters: Contains a lethal New Russian backpack spray, Elite hardsuit, \
Stechkin APS pistol, two magazines, a minibomb and a stimulant syringe. \
Order NOW and comrade Boris will throw in an extra tracksuit."
item = /obj/item/storage/backpack/duffelbag/syndie/firestarter
cost = 30
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/bundles_TC/contract_kit
name = "Contract Kit"
desc = "The Syndicate have offered you the chance to become a contractor, take on kidnapping contracts for TC and cash payouts. Upon purchase, \
you'll be granted your own contract uplink embedded within the supplied tablet computer. Additionally, you'll be granted \
standard contractor gear to help with your mission - comes supplied with the tablet, specialised space suit, chameleon jumpsuit and mask, \
agent card, specialised contractor baton, and three randomly selected low cost items. Can include otherwise unobtainable items."
item = /obj/item/storage/box/syndicate/contract_kit
cost = 20
player_minimum = 20
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops, /datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/bundles_TC/bundle_A
name = "Syndi-kit Tactical"
desc = "Syndicate Bundles, also known as Syndi-Kits, are specialized groups of items that arrive in a plain box. \
These items are collectively worth more than 20 telecrystals, but you do not know which specialization \
you will receive. May contain discontinued and/or exotic items."
item = /obj/item/storage/box/syndicate/bundle_A
cost = 20
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/bundles_TC/bundle_B
name = "Syndi-kit Special"
desc = "Syndicate Bundles, also known as Syndi-Kits, are specialized groups of items that arrive in a plain box. \
In Syndi-kit Special, you will receive items used by famous syndicate agents of the past. Collectively worth more than 20 telecrystals, the syndicate loves a good throwback."
item = /obj/item/storage/box/syndicate/bundle_B
cost = 20
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/bundles_TC/surplus
name = "Syndicate Surplus Crate"
desc = "A dusty crate from the back of the Syndicate warehouse. Rumored to contain a valuable assortment of items, \
but you never know. Contents are sorted to always be worth 50 TC."
item = /obj/structure/closet/crate
cost = 20
player_minimum = 25
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops, /datum/game_mode/infiltration) // yogs: infiltration
var/starting_crate_value = 50
/datum/uplink_item/bundles_TC/surplus/super
name = "Super Surplus Crate"
desc = "A dusty SUPER-SIZED from the back of the Syndicate warehouse. Rumored to contain a valuable assortment of items, \
but you never know. Contents are sorted to always be worth 125 TC."
cost = 40
player_minimum = 40
starting_crate_value = 125
/datum/uplink_item/bundles_TC/surplus/purchase(mob/user, datum/component/uplink/U)
var/list/uplink_items = get_uplink_items(SSticker && SSticker.mode? SSticker.mode : null, FALSE)
var/crate_value = starting_crate_value
var/obj/structure/closet/crate/C = spawn_item(/obj/structure/closet/crate, user, U)
if(U.purchase_log)
U.purchase_log.LogPurchase(C, src, cost)
while(crate_value)
var/category = pick(uplink_items)
var/item = pick(uplink_items[category])
var/datum/uplink_item/I = uplink_items[category][item]
if(!I.surplus || prob(100 - I.surplus))
continue
if(crate_value < I.cost)
continue
crate_value -= I.cost
var/obj/goods = new I.item(C)
if(U.purchase_log)
U.purchase_log.LogPurchase(goods, I, 0)
return C
/datum/uplink_item/bundles_TC/random
name = "Random Item"
desc = "Picking this will purchase a random item. Useful if you have some TC to spare or if you haven't decided on a strategy yet."
item = /obj/effect/gibspawner/generic // non-tangible item because techwebs use this path to determine illegal tech
cost = 0
/datum/uplink_item/bundles_TC/random/purchase(mob/user, datum/component/uplink/U)
var/list/uplink_items = U.uplink_items
var/list/possible_items = list()
for(var/category in uplink_items)
for(var/item in uplink_items[category])
var/datum/uplink_item/I = uplink_items[category][item]
if(src == I || !I.item)
continue
if(U.telecrystals < I.cost)
continue
if(I.limited_stock == 0)
continue
possible_items += I
if(possible_items.len)
var/datum/uplink_item/I = pick(possible_items)
SSblackbox.record_feedback("tally", "traitor_random_uplink_items_gotten", 1, initial(I.name))
U.MakePurchase(user, I)
/datum/uplink_item/bundles_TC/telecrystal
name = "1 Raw Telecrystal"
desc = "A telecrystal in its rawest and purest form; can be utilized on active uplinks to increase their telecrystal count."
item = /obj/item/stack/telecrystal
cost = 1
// Don't add telecrystals to the purchase_log since
// it's just used to buy more items (including itself!)
purchase_log_vis = FALSE
/datum/uplink_item/bundles_TC/telecrystal/five
name = "5 Raw Telecrystals"
desc = "Five telecrystals in their rawest and purest form; can be utilized on active uplinks to increase their telecrystal count."
item = /obj/item/stack/telecrystal/five
cost = 5
/datum/uplink_item/bundles_TC/telecrystal/twenty
name = "20 Raw Telecrystals"
desc = "Twenty telecrystals in their rawest and purest form; can be utilized on active uplinks to increase their telecrystal count."
item = /obj/item/stack/telecrystal/twenty
cost = 20
// Dangerous Items
/datum/uplink_item/dangerous
category = "Conspicuous Weapons"
/datum/uplink_item/dangerous/rawketlawnchair
name = "84mm Rocket Propelled Grenade Launcher"
desc = "A reusable rocket propelled grenade launcher preloaded with a low-yield 84mm HE round. \
Guaranteed to send your target out with a bang or your money back!"
item = /obj/item/gun/ballistic/rocketlauncher
cost = 8
surplus = 30
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/pie_cannon
name = "Banana Cream Pie Cannon"
desc = "A special pie cannon for a special clown, this gadget can hold up to 20 pies and automatically fabricates one every two seconds!"
cost = 10
manufacturer = /datum/corporation/traitor/waffleco
item = /obj/item/pneumatic_cannon/pie/selfcharge
surplus = 0
include_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/dangerous/bananashield
name = "Bananium Energy Shield"
desc = "A clown's most powerful defensive weapon, this personal shield provides near immunity to ranged energy attacks \
by bouncing them back at the ones who fired them. It can also be thrown to bounce off of people, slipping them, \
and returning to you even if you miss. WARNING: DO NOT ATTEMPT TO STAND ON SHIELD WHILE DEPLOYED, EVEN IF WEARING ANTI-SLIP SHOES."
item = /obj/item/shield/energy/bananium
cost = 16
surplus = 0
include_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/dangerous/clownsword
name = "Bananium Energy Sword"
desc = "An energy sword that deals no damage, but will slip anyone it contacts, be it by melee attack, thrown \
impact, or just stepping on it. Beware friendly fire, as even anti-slip shoes will not protect against it."
item = /obj/item/melee/transforming/energy/sword/bananium
cost = 3
surplus = 0
include_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/dangerous/bioterror
name = "Biohazardous Chemical Sprayer"
desc = "A handheld chemical sprayer that allows a wide dispersal of selected chemicals. Especially tailored by the Tiger \
Cooperative, the deadly blend it comes stocked with will disorient, damage, and disable your foes... \
Use with extreme caution, to prevent exposure to yourself and your fellow operatives."
item = /obj/item/reagent_containers/spray/chemsprayer/bioterror
cost = 20
surplus = 0
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/dangerous/throwingweapons
name = "Box of Throwing Weapons"
desc = "A box of shurikens and reinforced bolas from ancient Earth martial arts. They are highly effective \
throwing weapons. The bolas can knock a target down and the shurikens will embed into limbs."
item = /obj/item/storage/box/syndie_kit/throwing_weapons
cost = 3
/datum/uplink_item/dangerous/shotgun
name = "Bulldog Shotgun"
desc = "A fully-loaded semi-automatic drum-fed shotgun. Compatible with all 12g rounds. Designed for close \
quarter anti-personnel engagements."
item = /obj/item/gun/ballistic/shotgun/bulldog
cost = 8
surplus = 40
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/smg
name = "C-20r Submachine Gun"
desc = "A fully-loaded Scarborough Arms bullpup submachine gun. The C-20r fires .45 rounds with a \
24-round magazine and is compatible with suppressors."
item = /obj/item/gun/ballistic/automatic/c20r
cost = 10
surplus = 40
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/doublesword
name = "Double-Bladed Energy Sword"
desc = "The double-bladed energy sword does slightly more damage than a standard energy sword and will deflect \
all energy projectiles, but requires two hands to wield."
item = /obj/item/twohanded/dualsaber
player_minimum = 25
cost = 16
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/doublesword/get_discount()
return pick(4;0.8,2;0.65,1;0.5)
/datum/uplink_item/dangerous/sword
name = "Energy Sword"
desc = "The energy sword is an edged weapon with a blade of pure energy. The sword is small enough to be \
pocketed when inactive. Activating it produces a loud, distinctive noise."
item = /obj/item/melee/transforming/energy/sword/saber
cost = 8
exclude_modes = list(/datum/game_mode/nuclear/clown_ops, /datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/dangerous/bostaff
name = "Bo Staff"
desc = "A wielded wooden staff that can be used to incapacitate opponents if intending to disarm."
item = /obj/item/twohanded/bostaff
cost = 8
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/dangerous/shield
name = "Energy Shield"
desc = "An incredibly useful personal shield projector, capable of reflecting energy projectiles and defending \
against other attacks. Pair with an Energy Sword for a killer combination."
item = /obj/item/shield/energy
cost = 16
surplus = 20
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/flamethrower
name = "Flamethrower"
desc = "A flamethrower, fueled by a portion of highly flammable biotoxins stolen previously from Nanotrasen \
stations. Make a statement by roasting the filth in their own greed. Use with caution."
item = /obj/item/flamethrower/full/tank
cost = 4
surplus = 40
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/rapid
name = "Gloves of the North Star"
desc = "These gloves let the user punch people very fast. Does not improve weapon attack speed or the meaty fists of a hulk."
item = /obj/item/clothing/gloves/rapid
cost = 8
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/dangerous/guardian
name = "Holoparasites"
desc = "Though capable of near sorcerous feats via use of hardlight holograms and nanomachines, they require an \
organic host as a home base and source of fuel. Holoparasites come in various types and share damage with their host."
item = /obj/item/guardiancreator/tech
cost = 12
manufacturer = /datum/corporation/traitor/cybersun
surplus = 0
exclude_modes = list(/datum/game_mode/infiltration)
player_minimum = 25
restricted = TRUE
refundable = TRUE
// nukies don't get the 3 TC discount
/datum/uplink_item/dangerous/guardian/nuclear
cost = 15
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
exclude_modes = list()
/datum/uplink_item/dangerous/machinegun
name = "L6 Squad Automatic Weapon"
desc = "A fully-loaded Aussec Armoury belt-fed machine gun. \
This deadly weapon has a massive 50-round magazine of devastating 7.12x82mm ammunition."
item = /obj/item/gun/ballistic/automatic/l6_saw
cost = 20
surplus = 0
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/minigun
name = "M-546 Osprey"
desc = "A fully-loaded minigun which packs a big punch. \
This deadly giant weapon has a massive 500-round magazine of devastating 5.46mm caseless ammunition.\
Slaughter your enemies through sheer force, prone to overheating with extended use. We made this gun so advanced that it fires the whole bullet.\
Thats 60% more bullet per bullet and no more useless casings!"
item = /obj/item/minigunbackpack
cost = 36
surplus = 0
cant_discount = TRUE
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/carbine
name = "M-90gl Carbine"
desc = "A fully-loaded, specialized three-round burst carbine that fires 5.56mm ammunition from a 30 round magazine \
with a toggleable 40mm underbarrel grenade launcher."
item = /obj/item/gun/ballistic/automatic/m90
cost = 18
surplus = 50
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/powerfist
name = "Power Fist"
desc = "The power-fist is a metal gauntlet with a built-in piston-ram powered by an external gas supply.\
Upon hitting a target, the piston-ram will extend forward to make contact for some serious damage. \
Using a wrench on the piston valve will allow you to tweak the amount of gas used per punch to \
deal extra damage and hit targets further. Use a screwdriver to take out any attached tanks."
item = /obj/item/melee/powerfist
cost = 6
manufacturer = /datum/corporation/traitor/waffleco
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/dangerous/sniper
name = "Sniper Rifle"
desc = "Ranged fury, Syndicate style. Guaranteed to cause shock and awe or your TC back!"
item = /obj/item/gun/ballistic/automatic/sniper_rifle/syndicate
cost = 16
surplus = 25
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/pistol
name = "Stechkin Pistol"
desc = "A small, easily concealable handgun that uses 10mm auto rounds in 8-round magazines and is compatible \
with suppressors."
item = /obj/item/gun/ballistic/automatic/pistol
cost = 6
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/dangerous/pistol/spawn_item(spawn_path, mob/user, datum/component/uplink/U)
if(HAS_TRAIT_FROM(user, TRAIT_PACIFISM, ROUNDSTART_TRAIT))
spawn_path = /obj/item/gun/ballistic/automatic/pistol/pacifist
to_chat(user, span_notice("Your employer has loaded your purchased weapon with non-lethal ammunition"))
..()
/datum/uplink_item/dangerous/bolt_action
name = "Surplus Rifle"
desc = "A horribly outdated bolt action weapon. You've got to be desperate to use this."
item = /obj/item/gun/ballistic/rifle/boltaction
cost = 1
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/revolver
name = "Syndicate Revolver"
desc = "A brutally simple Syndicate revolver that fires .357 Magnum rounds and has 7 chambers."
item = /obj/item/gun/ballistic/revolver
cost = 13
surplus = 50
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/dangerous/foamsmg
name = "Toy Submachine Gun"
desc = "A fully-loaded Donksoft bullpup submachine gun that fires riot grade darts with a 20-round magazine."
item = /obj/item/gun/ballistic/automatic/c20r/toy
cost = 5
manufacturer = /datum/corporation/traitor/donkco
surplus = 0
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/dangerous/foammachinegun
name = "Toy Machine Gun"
desc = "A fully-loaded Donksoft belt-fed machine gun. This weapon has a massive 50-round magazine of devastating \
riot grade darts, that can briefly incapacitate someone in just one volley."
item = /obj/item/gun/ballistic/automatic/l6_saw/toy
cost = 10
manufacturer = /datum/corporation/traitor/donkco
surplus = 0
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/dangerous/foampistol
name = "Toy Pistol with Riot Darts"
desc = "An innocent-looking toy pistol designed to fire foam darts. Comes loaded with riot-grade \
darts effective at incapacitating a target."
item = /obj/item/gun/ballistic/automatic/toy/pistol/riot
cost = 1
manufacturer = /datum/corporation/traitor/donkco
surplus = 10
/datum/uplink_item/dangerous/hardlightbow
name = "Hardlight Bow"
desc = "A modern bow that can fabricate hardlight arrows, designed for silent takedowns of targets."
item = /obj/item/gun/ballistic/bow/energy/syndicate
cost = 12
surplus = 25
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
// Stealthy Weapons
/datum/uplink_item/stealthy_weapons
category = "Stealthy Weapons"
/datum/uplink_item/stealthy_weapons/combatglovesplus
name = "Combat Gloves Plus"
desc = "A pair of gloves that are fireproof and shock resistant, however unlike the regular Combat Gloves this one uses nanotechnology \
to learn the abilities of krav maga to the wearer."
item = /obj/item/clothing/gloves/krav_maga/combatglovesplus
cost = 5
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
surplus = 0
/datum/uplink_item/stealthy_weapons/cqc
name = "CQC Manual"
desc = "A manual that teaches a single user tactical Close-Quarters Combat before self-destructing."
item = /obj/item/book/granter/martial/cqc
cost = 13
surplus = 0
/datum/uplink_item/stealthy_weapons/dart_pistol
name = "Dart Pistol"
desc = "A miniaturized version of a normal syringe gun. It is very quiet when fired and can fit into any \
space a small item can."
item = /obj/item/gun/syringe/syndicate
cost = 4
surplus = 50
/datum/uplink_item/stealthy_weapons/dehy_carp
name = "Dehydrated Space Carp"
desc = "Looks like a plush toy carp, but just add water and it becomes a real-life space carp! Activate in \
your hand before use so it knows not to kill you."
item = /obj/item/toy/plush/carpplushie/dehy_carp
cost = 1
manufacturer = /datum/corporation/traitor/donkco
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/stealthy_weapons/edagger
name = "Energy Dagger"
desc = "A dagger made of energy that looks and functions as a pen when off."
item = /obj/item/pen/edagger
cost = 2
manufacturer = /datum/corporation/traitor/donkco
/datum/uplink_item/stealthy_weapons/martialarts
name = "Martial Arts Scroll"
desc = "This scroll contains the secrets of an ancient martial arts technique. You will master unarmed combat, \
deflecting all ranged weapon fire when throwmode is enabled, but you also refuse to use dishonorable ranged weaponry."
item = /obj/item/book/granter/martial/carp
cost = 14
surplus = 0
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops, /datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/stealthy_weapons/crossbow
name = "Miniature Energy Crossbow"
desc = "A short bow mounted across a tiller in miniature. \
Small enough to fit into a pocket or slip into a bag unnoticed. \
It will synthesize and fire bolts tipped with a debilitating \
toxin that will damage and disorient targets, causing them to \
slur as if inebriated. It can produce an infinite number \
of bolts, but takes time to automatically recharge after each shot."
item = /obj/item/gun/energy/kinetic_accelerator/crossbow
cost = 10
surplus = 50
limited_stock = 1
exclude_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/stealthy_weapons/origami_kit
name = "Boxed Origami Kit"
desc = "This box contains a guide on how to craft masterful works of origami, allowing you to transform normal pieces of paper into \
perfectly aerodynamic (and potentially lethal) paper airplanes."
item = /obj/item/storage/box/syndie_kit/origami_bundle
cost = 14
manufacturer = /datum/corporation/traitor/waffleco
surplus = 0
exclude_modes = list(/datum/game_mode/nuclear) //clown ops intentionally left in, because that seems like some s-tier shenanigans.
/datum/uplink_item/stealthy_weapons/traitor_chem_bottle
name = "Poison Kit"
desc = "An assortment of deadly chemicals packed into a compact box. Comes with a syringe for more precise application."
item = /obj/item/storage/box/syndie_kit/chemical
cost = 6
surplus = 50
/datum/uplink_item/stealthy_weapons/romerol_kit
name = "Romerol"
desc = "A highly experimental bioterror agent which creates dormant nodules to be etched into the grey matter of the brain. \
On death, these nodules take control of the dead body, causing limited revivification, \
along with slurred speech, aggression, and the ability to infect others with this agent."
item = /obj/item/storage/box/syndie_kit/romerol
cost = 25
cant_discount = TRUE
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/stealthy_weapons/sleepy_pen
name = "Sleepy Pen"
desc = "A syringe disguised as a functional pen, filled with a potent mix of drugs, including a \
strong anesthetic and a chemical that prevents the target from speaking. \
The pen holds one dose of the mixture. Note that before the target \
falls asleep, they will be able to move and act."
item = /obj/item/pen/sleepy
cost = 4
manufacturer = /datum/corporation/traitor/waffleco
exclude_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/stealthy_weapons/suppressor
name = "Suppressor"
desc = "This suppressor will silence the shots of the weapon it is attached to for increased stealth and superior ambushing capability. It is compatible with many small ballistic guns including the Stechkin and C-20r, but not revolvers or energy guns."
item = /obj/item/suppressor
cost = 3
surplus = 10
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
// Ammunition
/datum/uplink_item/ammo
category = "Ammunition"
surplus = 40
/datum/uplink_item/ammo/pistol
name = "Pair of 10mm Handgun Magazines"
desc = "A box that contains two additional 8-round 10mm magazines; compatible with the Stechkin Pistol."
item = /obj/item/storage/box/syndie_kit/pistolammo
cost = 1
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/ammo/pistolap
name = "10mm Armour Piercing Magazine"
desc = "An additional 8-round 10mm magazine; compatible with the Stechkin Pistol. \
These rounds are less effective at injuring the target but penetrate protective gear."
item = /obj/item/ammo_box/magazine/m10mm/ap
cost = 1
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/ammo/pistolhp
name = "10mm Hollow Point Magazine"
desc = "An additional 8-round 10mm magazine; compatible with the Stechkin Pistol. \
These rounds are more damaging but ineffective against armour."
item = /obj/item/ammo_box/magazine/m10mm/hp
cost = 1
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/ammo/pistolsleepy
name = "Pair of 10mm Soporific Magazines"
desc = "A box that contains 2 additional 8-round 10mm magazines; compatible with the Stechkin Pistol. \
These rounds will deliver small doses of tranqulizers on hit, knocking the target out after a few successive hits."
item = /obj/item/storage/box/syndie_kit/pistolsleepyammo
cost = 1
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/ammo/pistolfire
name = "10mm Incendiary Magazine"
desc = "An additional 8-round 10mm magazine; compatible with the Stechkin Pistol. \
Loaded with incendiary rounds which inflict reduced damage, but ignite the target."
item = /obj/item/ammo_box/magazine/m10mm/fire
cost = 1
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/ammo/shotgun
cost = 2
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/shotgun/bag
name = "12g Ammo Duffel Bag"
desc = "A duffel bag filled with enough 12g ammo to supply an entire team, at a discounted price."
item = /obj/item/storage/backpack/duffelbag/syndie/ammo/shotgun
cost = 12
/datum/uplink_item/ammo/shotgun/buck
name = "12g Buckshot Drum"
desc = "An additional 8-round buckshot magazine for use with the Bulldog shotgun. Front towards enemy."
item = /obj/item/ammo_box/magazine/m12g
/datum/uplink_item/ammo/shotgun/dragon
name = "12g Dragon's Breath Drum"
desc = "An alternative 8-round dragon's breath magazine for use in the Bulldog shotgun. \
'I'm a fire starter, twisted fire starter!'"
item = /obj/item/ammo_box/magazine/m12g/dragon
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/shotgun/meteor
name = "12g Meteorslug Shells"
desc = "An alternative 8-round meteorslug magazine for use in the Bulldog shotgun. \
Great for blasting airlocks off their frames and knocking down enemies."
item = /obj/item/ammo_box/magazine/m12g/meteor
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/shotgun/slug
name = "12g Slug Drum"
desc = "An additional 8-round slug magazine for use with the Bulldog shotgun. \
Now 8 times less likely to shoot your pals."
cost = 3
item = /obj/item/ammo_box/magazine/m12g/slug
/datum/uplink_item/ammo/shotgun/hpbuck
name = "12g Hollow-Point Buckshot Drum"
desc = "An alternative 8-round hollow-point buckshot magazine for use with the Bulldog shotgun. For when you really need to put people in the dirt."
item = /obj/item/ammo_box/magazine/m12g/hpbuck
/datum/uplink_item/ammo/shotgun/flechette
name = "12g Flechette Drum"
desc = "An alternative 8-round flechette magazine for use with the Bulldog shotgun. Hope they didnt want to use that armor..."
item = /obj/item/ammo_box/magazine/m12g/flechette
/datum/uplink_item/ammo/revolver
name = ".357 Speed Loader"
desc = "A speed loader that contains seven additional .357 Magnum rounds; usable with the Syndicate revolver. \
For when you really need a lot of things dead."
item = /obj/item/ammo_box/a357
cost = 4
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
illegal_tech = FALSE
/datum/uplink_item/ammo/a40mm
name = "40mm Grenade"
desc = "A 40mm HE grenade for use with the M-90gl's under-barrel grenade launcher. \
Your teammates will ask you to not shoot these down small hallways."
item = /obj/item/ammo_casing/a40mm
cost = 2
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/smg/bag
name = ".45 Ammo Duffel Bag"
desc = "A duffel bag filled with enough .45 ammo to supply an entire team, at a discounted price."
item = /obj/item/storage/backpack/duffelbag/syndie/ammo/smg
cost = 20 //instead of 27 TC
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/smg
name = ".45 SMG Magazine"
desc = "An additional 24-round .45 magazine suitable for use with the C-20r submachine gun."
item = /obj/item/ammo_box/magazine/smgm45
cost = 3
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/sniper
cost = 4
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/sniper/basic
name = ".50 Magazine"
desc = "An additional standard 6-round magazine for use with .50 sniper rifles."
item = /obj/item/ammo_box/magazine/sniper_rounds
/datum/uplink_item/ammo/sniper/penetrator
name = ".50 Penetrator Magazine"
desc = "A 5-round magazine of penetrator ammo designed for use with .50 sniper rifles. \
Can pierce walls and multiple enemies."
item = /obj/item/ammo_box/magazine/sniper_rounds/penetrator
cost = 5
/datum/uplink_item/ammo/sniper/soporific
name = ".50 Soporific Magazine"
desc = "A 3-round magazine of soporific ammo designed for use with .50 sniper rifles. Put your enemies to sleep today!"
item = /obj/item/ammo_box/magazine/sniper_rounds/soporific
cost = 6
/datum/uplink_item/ammo/carbine
name = "5.56mm Toploader Magazine"
desc = "An additional 30-round 5.56mm magazine; suitable for use with the M-90gl carbine. \
These bullets pack less punch than 7.12x82mm rounds, but they still offer more power than .45 ammo."
item = /obj/item/ammo_box/magazine/m556
cost = 4
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/machinegun
cost = 6
surplus = 0
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/machinegun/basic
name = "7.12x82mm Box Magazine"
desc = "A 50-round magazine of 7.12x82mm ammunition for use with the L6 SAW. \
By the time you need to use this, you'll already be standing on a pile of corpses."
item = /obj/item/ammo_box/magazine/mm712x82
/datum/uplink_item/ammo/machinegun/ap
name = "7.12x82mm (Armor Penetrating) Box Magazine"
desc = "A 50-round magazine of 7.12x82mm ammunition for use in the L6 SAW; equipped with special properties \
to puncture even the most durable armor."
item = /obj/item/ammo_box/magazine/mm712x82/ap
cost = 9
/datum/uplink_item/ammo/machinegun/hollow
name = "7.12x82mm (Hollow-Point) Box Magazine"
desc = "A 50-round magazine of 7.12x82mm ammunition for use in the L6 SAW; equipped with hollow-point tips to help \
with the unarmored masses of crew."
item = /obj/item/ammo_box/magazine/mm712x82/hollow
/datum/uplink_item/ammo/machinegun/incen
name = "7.12x82mm (Incendiary) Box Magazine"
desc = "A 50-round magazine of 7.12x82mm ammunition for use in the L6 SAW; tipped with a special flammable \
mixture that'll ignite anyone struck by the bullet. Some men just want to watch the world burn."
item = /obj/item/ammo_box/magazine/mm712x82/incen
/datum/uplink_item/ammo/rocket
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/rocket/basic
name = "84mm HE Rocket"
desc = "A low-yield anti-personnel HE rocket. Gonna take you out in style!"
item = /obj/item/ammo_casing/caseless/rocket
cost = 4
/datum/uplink_item/ammo/rocket/hedp
name = "84mm HEDP Rocket"
desc = "A high-yield HEDP rocket; extremely effective against armored targets, as well as surrounding personnel. \
Strike fear into the hearts of your enemies."
item = /obj/item/ammo_casing/caseless/rocket/hedp
cost = 6
/datum/uplink_item/ammo/pistolaps
name = "9mm Handgun Magazine"
desc = "An additional 15-round 9mm magazine, compatible with the Stechkin APS pistol, found in the Spetsnaz Pyro bundle."
item = /obj/item/ammo_box/magazine/pistolm9mm
cost = 2
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/toydarts
name = "Box of Riot Darts"
desc = "A box of 40 Donksoft riot darts, for reloading any compatible foam dart magazine. Don't forget to share!"
item = /obj/item/ammo_box/foambox/riot
cost = 1
manufacturer = /datum/corporation/traitor/donkco
surplus = 0
illegal_tech = FALSE
/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 systems, making it impossible for them to move or speak for some time."
item = /obj/item/storage/box/syndie_kit/bioterror
cost = 6
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/ammo/bolt_action
name = "Surplus Rifle Clip"
desc = "A stripper clip used to quickly load bolt action rifles. Contains 5 rounds."
item = /obj/item/ammo_box/a762
cost = 1
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/dark_gygax/bag
name = "Dark Gygax Ammo Bag"
desc = "A duffel bag containing ammo for three full reloads of the incendiary carbine and flash bang launcher that are equipped on a standard Dark Gygax exosuit."
item = /obj/item/storage/backpack/duffelbag/syndie/ammo/dark_gygax
cost = 4
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/ammo/mauler/bag
name = "Mauler Ammo Bag"
desc = "A duffel bag containing ammo for three full reloads of the LMG, scattershot carbine, and SRM-8 missile launcher that are equipped on a standard Mauler exosuit."
item = /obj/item/storage/backpack/duffelbag/syndie/ammo/mauler
cost = 6
include_modes = list(/datum/game_mode/nuclear)
//Grenades and Explosives
/datum/uplink_item/explosives
category = "Explosives"
/datum/uplink_item/explosives/bioterrorfoam
name = "Bioterror Foam Grenade"
desc = "A powerful chemical foam grenade which creates a deadly torrent of foam that will mute, blind, confuse, \
mutate, and irritate carbon lifeforms. Specially brewed by Tiger Cooperative chemical weapons specialists \
using additional spore toxin. Ensure suit is sealed before use."
item = /obj/item/grenade/chem_grenade/bioterrorfoam
cost = 5
surplus = 35
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/explosives/bombanana
name = "Bombanana"
desc = "A banana with an explosive taste! Discard the peel quickly, as it will explode with the force of a Syndicate minibomb \
a few seconds after the banana is eaten."
item = /obj/item/reagent_containers/food/snacks/grown/banana/bombanana
cost = 4 //it is a bit cheaper than a minibomb because you have to take off your helmet to eat it, which is how you arm it
surplus = 0
include_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/explosives/buzzkill
name = "Buzzkill Grenade Box"
desc = "A box with three grenades that release a swarm of angry bees upon activation. These bees indiscriminately attack friend or foe \
with random toxins."
item = /obj/item/storage/box/syndie_kit/bee_grenades
cost = 6
manufacturer = /datum/corporation/bolsynpowell
surplus = 35
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/explosives/c4
name = "Composition C-4"
desc = "C-4 is plastic explosive of the common variety Composition C. You can use it to breach walls, sabotage equipment, or connect \
an assembly to it in order to alter the way it detonates. It can be attached to almost all objects and has a modifiable timer with a \
minimum setting of 10 seconds."
item = /obj/item/grenade/plastic/c4
cost = 1
/datum/uplink_item/explosives/c4bag
name = "Bag of C-4 explosives"
desc = "Because sometimes quantity is quality. Contains 10 C-4 plastic explosives."
item = /obj/item/storage/backpack/duffelbag/syndie/c4
cost = 8 //20% discount!
cant_discount = TRUE
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/explosives/x4bag
name = "Bag of X-4 explosives"
desc = "Contains 3 X-4 shaped plastic explosives. Similar to C4, but with a stronger blast that is directional instead of circular. \
X-4 can be placed on a solid surface, such as a wall or window, and it will blast through the wall, injuring anything on the opposite side, while being safer to the user. \
For when you want a controlled explosion that leaves a wider, deeper, hole."
item = /obj/item/storage/backpack/duffelbag/syndie/x4
cost = 4
cant_discount = TRUE
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/explosives/clown_bomb_clownops
name = "Clown Bomb"
desc = "The Clown bomb is a hilarious device capable of massive pranks. It has an adjustable timer, \
with a minimum of 60 seconds, and can be bolted to the floor with a wrench to prevent \
movement. The bomb is bulky and cannot be moved; upon ordering this item, a smaller beacon will be \
transported to you that will teleport the actual bomb to it upon activation. Note that this bomb can \
be defused, and some crew may attempt to do so."
item = /obj/item/sbeacondrop/clownbomb
cost = 15
manufacturer = /datum/corporation/traitor/waffleco
surplus = 0
include_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/explosives/detomatix
name = "Detomatix PDA Cartridge"
desc = "When inserted into a personal digital assistant, this cartridge gives you four opportunities to \
detonate PDAs of crewmembers who have their message feature enabled. \
The concussive effect from the explosion will knock the recipient out for a short period, and deafen them for longer."
item = /obj/item/cartridge/virus/syndicate
cost = 6
manufacturer = /datum/corporation/traitor/cybersun
restricted = TRUE
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/explosives/emp
name = "EMP Grenades and Implanter Kit"
desc = "A box that contains five EMP grenades and an EMP implant with three uses. Useful to disrupt communications, \
security's energy weapons and silicon lifeforms when you're in a tight spot."
item = /obj/item/storage/box/syndie_kit/emp
cost = 2
manufacturer = /datum/corporation/traitor/cybersun
/datum/uplink_item/explosives/ducky
name = "Exploding Rubber Duck"
desc = "A seemingly innocent rubber duck. When placed, it arms, and will violently explode when stepped on."
item = /obj/item/deployablemine/traitor
cost = 4
manufacturer = /datum/corporation/traitor/waffleco
include_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/explosives/virus_grenade
name = "Fungal Tuberculosis Grenade"
desc = "A primed bio-grenade packed into a compact box. Comes with five Bio Virus Antidote Kit (BVAK) \
autoinjectors for rapid application on up to two targets each, a syringe, and a bottle containing \
the BVAK solution."
item = /obj/item/storage/box/syndie_kit/tuberculosisgrenade
cost = 12
surplus = 35
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
restricted = TRUE
/datum/uplink_item/explosives/grenadier
name = "Grenadier's belt"
desc = "A belt containing 26 lethally dangerous and destructive grenades. Comes with an extra multitool and screwdriver."
item = /obj/item/storage/belt/grenade/full
include_modes = list(/datum/game_mode/nuclear)
cost = 22
surplus = 0
/datum/uplink_item/explosives/bigducky
name = "High Yield Exploding Rubber Duck"
desc = "A seemingly innocent rubber duck. When placed, it arms, and will violently explode when stepped on. \
This variant has been fitted with high yield X4 charges for a larger explosion."
item = /obj/item/deployablemine/traitor/bigboom
cost = 10
manufacturer = /datum/corporation/traitor/waffleco
include_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/explosives/pizza_bomb
name = "Pizza Bomb"
desc = "A pizza box with a bomb cunningly attached to the lid. The timer needs to be set by opening the box; afterwards, \
opening the box again will trigger the detonation after the timer has elapsed. Comes with free pizza, for you or your target!"
item = /obj/item/pizzabox/bomb
cost = 6
manufacturer = /datum/corporation/traitor/donkco
surplus = 8
/datum/uplink_item/explosives/soap_clusterbang
name = "Slipocalypse Clusterbang"
desc = "A traditional clusterbang grenade with a payload consisting entirely of Syndicate soap. Useful in any scenario!"
item = /obj/item/grenade/clusterbuster/soap
cost = 3
manufacturer = /datum/corporation/traitor/waffleco
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/explosives/syndicate_bomb
name = "Syndicate Bomb"
desc = "The Syndicate bomb is a fearsome device capable of massive destruction. It has an adjustable timer, \
with a minimum of 60 seconds, and can be bolted to the floor with a wrench to prevent \
movement. The bomb is bulky and cannot be moved; upon ordering this item, a smaller beacon will be \
transported to you that will teleport the actual bomb to it upon activation. Note that this bomb can \
be defused, and some crew may attempt to do so. \
The bomb core can be pried out and manually detonated with other explosives."
item = /obj/item/sbeacondrop/bomb
cost = 11
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/explosives/syndicate_bomb/emp
name = "Syndicate EMP Bomb"
desc = "A variation of the syndicate bomb designed to produce a large EMP effect."
item = /obj/item/sbeacondrop/emp
cost = 7
/datum/uplink_item/explosives/syndicate_detonator
name = "Syndicate Detonator"
desc = "The Syndicate detonator is a companion device to the Syndicate bomb. Simply press the included button \
and an encrypted radio frequency will instruct all live Syndicate bombs to detonate. \
Useful for when speed matters or you wish to synchronize multiple bomb blasts. Be sure to stand clear of \
the blast radius before using the detonator."
item = /obj/item/syndicatedetonator
cost = 3
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/explosives/syndicate_minibomb
name = "Syndicate Minibomb"
desc = "The minibomb is a grenade with a five-second fuse. Upon detonation, it will create a small hull breach \
in addition to dealing high amounts of damage to nearby personnel."
item = /obj/item/grenade/syndieminibomb
cost = 6
exclude_modes = list(/datum/game_mode/nuclear/clown_ops, /datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/explosives/tearstache
name = "Tearstache Grenade"
desc = "A teargas grenade that launches sticky moustaches onto the face of anyone not wearing a clown or mime mask. The moustaches will \
remain attached to the face of all targets for one minute, preventing the use of breath masks and other such devices."
item = /obj/item/grenade/chem_grenade/teargas/moustache
cost = 3
manufacturer = /datum/corporation/traitor/waffleco
surplus = 0
include_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/explosives/viscerators
name = "Viscerator Delivery Grenade"
desc = "A unique grenade that deploys a swarm of viscerators upon activation, which will chase down and shred \
any non-operatives in the area."
item = /obj/item/grenade/spawnergrenade/manhacks
cost = 5
surplus = 35
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
//Support and Mechs
/datum/uplink_item/support
category = "Support and Exosuits"
surplus = 0
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/support/clown_reinforcement
name = "Clown Reinforcements"
desc = "Call in an additional clown to share the fun, equipped with full starting gear, but no telecrystals."
item = /obj/item/antag_spawner/nuke_ops/clown
cost = 20
include_modes = list(/datum/game_mode/nuclear/clown_ops)
restricted = TRUE
/datum/uplink_item/support/reinforcement
name = "Reinforcements"
desc = "Call in an additional team member. They won't come with any gear, so you'll have to save some telecrystals \
to arm them as well."
item = /obj/item/antag_spawner/nuke_ops
cost = 25
refundable = TRUE
include_modes = list(/datum/game_mode/nuclear)
restricted = TRUE
/datum/uplink_item/support/reinforcement/assault_borg
name = "Syndicate Assault Cyborg"
desc = "A cyborg designed and programmed for systematic extermination of non-Syndicate personnel. \
Comes equipped with a self-resupplying LMG, a grenade launcher, energy sword, emag, pinpointer, flash and crowbar."
item = /obj/item/antag_spawner/nuke_ops/borg_tele/assault
refundable = TRUE
cost = 65
restricted = TRUE
/datum/uplink_item/support/reinforcement/medical_borg
name = "Syndicate Medical Cyborg"
desc = "A combat medical cyborg. Has limited offensive potential, but makes more than up for it with its support capabilities. \
It comes equipped with a nanite hypospray, a medical beamgun, combat defibrillator, full surgical kit including an energy saw, an emag, pinpointer and flash. \
Thanks to its organ storage bag, it can perform surgery as well as any humanoid."
item = /obj/item/antag_spawner/nuke_ops/borg_tele/medical
refundable = TRUE
cost = 35
restricted = TRUE
/datum/uplink_item/support/reinforcement/saboteur_borg
name = "Syndicate Saboteur Cyborg"
desc = "A streamlined engineering cyborg, equipped with covert modules. Also incapable of leaving the welder in the shuttle. \
Aside from regular Engineering equipment, it comes with a special destination tagger that lets it traverse disposals networks. \
Its chameleon projector lets it disguise itself as a Nanotrasen cyborg, on top it has thermal vision and a pinpointer."
item = /obj/item/antag_spawner/nuke_ops/borg_tele/saboteur
refundable = TRUE
cost = 35
restricted = TRUE
/datum/uplink_item/support/gygax
name = "Dark Gygax Exosuit"
desc = "A lightweight exosuit, painted in a dark scheme. Its speed and equipment selection make it excellent \
for hit-and-run style attacks. Features an incendiary carbine, flash bang launcher, teleporter, ion thrusters and a Tesla energy array."
item = /obj/mecha/combat/gygax/dark/loaded
cost = 80
/datum/uplink_item/support/honker
name = "Dark H.O.N.K."
desc = "A clown combat mech equipped with bombanana peel and tearstache grenade launchers, as well as the ubiquitous HoNkER BlAsT 5000."
item = /obj/mecha/combat/honker/dark/loaded
cost = 80
include_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/support/mauler
name = "Mauler Exosuit"
desc = "A massive and incredibly deadly military-grade exosuit. Features long-range targeting, thrust vectoring \
and deployable smoke. Comes equipped with an LMG, scattershot carbine, missile rack, an antiprojectile armor booster and a Tesla energy array."
item = /obj/mecha/combat/marauder/mauler/loaded
cost = 140
// Stealth Items
/datum/uplink_item/stealthy_tools
category = "Stealth Gadgets"
/datum/uplink_item/stealthy_tools/agent_card
name = "Agent Identification 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. In addition, they can be forged to display a new assignment and name. \
This can be done an unlimited amount of times. Some Syndicate areas and devices can only be accessed \
with these cards."
item = /obj/item/card/id/syndicate
cost = 2
/datum/uplink_item/stealthy_tools/ai_detector
name = "Artificial Intelligence Detector"
desc = "A functional multitool that turns red when it detects an artificial intelligence watching it, and can be \
activated to display their exact viewing location and nearby security camera blind spots. Knowing when \
an artificial intelligence is watching you is useful for knowing when to maintain cover, and finding nearby \
blind spots can help you identify escape routes."
item = /obj/item/multitool/ai_detect
cost = 1
manufacturer = /datum/corporation/traitor/cybersun
/datum/uplink_item/stealthy_tools/syndireverse
name = "Bluespace Projectile Weapon Disrupter"
desc = "Hidden in an ordinary-looking playing card, this device will teleport an opponent's gun to your hand when they fire at you. Just make sure to hold this in your hand!"
item = /obj/item/syndicateReverseCard
cost = 1
manufacturer = /datum/corporation/traitor/waffleco
/datum/uplink_item/stealthy_tools/chameleon
name = "Chameleon Kit"
desc = "A set of items that contain chameleon technology allowing you to disguise as pretty much anyone on the station, and more! \
Due to budget cuts, the shoes don't provide protection against slipping."
item = /obj/item/storage/box/syndie_kit/chameleon
cost = 2
manufacturer = /datum/corporation/traitor/cybersun
exclude_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/stealthy_tools/chameleon_proj
name = "Chameleon Projector"
desc = "Projects an image across a user, disguising them as an object scanned with it, as long as they don't \
move the projector from their hand. Disguised users move slowly, and projectiles pass over them."
item = /obj/item/chameleon
cost = 7
manufacturer = /datum/corporation/traitor/cybersun
/datum/uplink_item/stealthy_tools/codespeak_manual
name = "Codespeak Manual"
desc = "Syndicate agents can be trained to use a series of codewords to convey complex information, which sounds like random concepts and drinks to anyone listening. \
This manual teaches you this Codespeak. You can also hit someone else with the manual in order to teach them. This is the deluxe edition, which has unlimited uses."
item = /obj/item/codespeak_manual/unlimited
cost = 3
manufacturer = /datum/corporation/traitor/waffleco
/datum/uplink_item/stealthy_tools/combatbananashoes
name = "Combat Banana Shoes"
desc = "While making the wearer immune to most slipping attacks like regular combat clown shoes, these shoes \
can generate a large number of synthetic banana peels as the wearer walks, slipping up would-be pursuers. They also \
squeak significantly louder."
item = /obj/item/clothing/shoes/clown_shoes/banana_shoes/combat
cost = 6
surplus = 0
include_modes = list(/datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/stealthy_tools/emplight
name = "EMP Flashlight"
desc = "A small, self-recharging, short-ranged EMP device disguised as a working flashlight. \
Useful for disrupting headsets, cameras, doors, lockers and borgs during stealth operations. \
Attacking a target with this flashlight will direct an EM pulse at it and consumes a charge."
item = /obj/item/flashlight/emp
cost = 2 //yogs no one uses this lol
manufacturer = /datum/corporation/traitor/donkco
surplus = 30
/datum/uplink_item/stealthy_tools/mulligan
name = "Mulligan"
desc = "Screwed up and have security on your tail? This handy syringe will give you a completely new identity \
and appearance."
item = /obj/item/reagent_containers/syringe/mulligan
cost = 4
manufacturer = /datum/corporation/traitor/waffleco
surplus = 30
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/stealthy_tools/syndigaloshes
name = "No-Slip Chameleon Shoes"
desc = "These shoes will allow the wearer to run on wet floors and slippery objects without falling down. \
They do not work on heavily lubricated surfaces."
item = /obj/item/clothing/shoes/chameleon/noslip/syndicate
cost = 2
manufacturer = /datum/corporation/traitor/waffleco
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
player_minimum = 20
/datum/uplink_item/stealthy_tools/syndigaloshes/nuke
item = /obj/item/clothing/shoes/chameleon/noslip/syndicate
cost = 4
exclude_modes = list()
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/stealthy_tools/jammer
name = "Radio Jammer"
desc = "This device will disrupt any nearby outgoing radio communication when activated. Does not affect binary chat."
item = /obj/item/jammer
cost = 5
manufacturer = /datum/corporation/traitor/cybersun
/datum/uplink_item/stealthy_tools/smugglersatchel
name = "Smuggler's Satchel"
desc = "This satchel is thin enough to be hidden in the gap between plating and tiling; great for stashing \
your stolen goods. Comes with a crowbar, a floor tile and some contraband inside."
item = /obj/item/storage/backpack/satchel/flat/with_tools
cost = 1
surplus = 30
/datum/uplink_item/stealthy_tools/armorpolish
name = "Armor Polish"
desc = "This two use polish will strengthen clothing to be as strong as a standard-issue armor vest. \
Reinforced with nanite technology, you are able to stay looking good while bashing heads in. \
Beware, you can only polish suits and headgear!"
item = /obj/item/armorpolish
cost = 2
//Space Suits and Hardsuits
/datum/uplink_item/suits
category = "Space Suits"
surplus = 40
/datum/uplink_item/suits/space_suit
name = "Syndicate Space Suit"
desc = "This red and black Syndicate space suit is less encumbering than Nanotrasen variants, \
fits inside bags, and has a weapon slot. Nanotrasen crew members are trained to report red space suit \
sightings, however."
item = /obj/item/storage/box/syndie_kit/space
cost = 4
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/suits/hardsuit
name = "Syndicate Hardsuit"
desc = "The feared suit of a Syndicate nuclear agent. Features slightly better armoring and a built in jetpack \
that runs off standard atmospheric tanks. Toggling the suit in and out of \
combat mode will allow you all the mobility of a loose fitting uniform without sacrificing armoring. \
Additionally the suit is collapsible, making it small enough to fit within a backpack. \
Nanotrasen crew who spot these suits are known to panic."
item = /obj/item/clothing/suit/space/hardsuit/syndi
cost = 8
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/infiltration) //you can't buy it in nuke, because the elite hardsuit costs the same while being better // yogs: infiltration
/datum/uplink_item/suits/hardsuit/elite
name = "Elite Syndicate Hardsuit"
desc = "An upgraded, elite version of the Syndicate hardsuit. It features fireproofing, and also \
provides the user with superior armor and mobility compared to the standard Syndicate hardsuit."
item = /obj/item/clothing/suit/space/hardsuit/syndi/elite
cost = 8
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
exclude_modes = list()
/datum/uplink_item/suits/hardsuit/shielded
name = "Shielded Syndicate Hardsuit"
desc = "An upgraded version of the standard Syndicate hardsuit. It features a built-in energy shielding system. \
The shields can handle up to three impacts within a short duration and will rapidly recharge while not under fire."
item = /obj/item/clothing/suit/space/hardsuit/shielded/syndi
cost = 30
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
exclude_modes = list()
// Devices and Tools
/datum/uplink_item/device_tools
category = "Misc. Gadgets"
/datum/uplink_item/device_tools/cutouts
name = "Adaptive Cardboard Cutouts"
desc = "These cardboard cutouts are coated with a thin material that prevents discoloration and makes the images on them appear more lifelike. \
This pack contains three as well as a crayon for changing their appearances."
item = /obj/item/storage/box/syndie_kit/cutouts
cost = 1
manufacturer = /datum/corporation/traitor/waffleco
surplus = 20
/datum/uplink_item/device_tools/airshoes
name = "Air Shoes"
desc = "Popular in underground racing rings, these shoes come with built-in jets, allowing the users to reach high speeds for prolonged durations and short bursts. \
Users should keep in mind that despite being easier to control than their Wheely cousins, this footwear will not protect you from high-speed impacts."
item = /obj/item/clothing/shoes/airshoes
cost = 4
manufacturer = /datum/corporation/traitor/cybersun
surplus = -1
restricted = TRUE
/datum/uplink_item/device_tools/assault_pod
name = "Assault Pod Targeting Device"
desc = "Use this to select the landing zone of your assault pod."
item = /obj/item/assault_pod
cost = 30
surplus = 0
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
restricted = TRUE
/datum/uplink_item/device_tools/binary
name = "Binary Translator Key"
desc = "A key that, when inserted into a radio headset, allows you to listen to and talk with silicon-based lifeforms, \
such as AI units and cyborgs, over their private binary channel. Caution should \
be taken while doing this, as unless they are allied with you, they are programmed to report such intrusions."
item = /obj/item/encryptionkey/binary
cost = 2
surplus = 75
restricted = TRUE
/datum/uplink_item/device_tools/magboots
name = "Blood-Red Magboots"
desc = "A pair of magnetic boots with a Syndicate paintjob that assist with freer movement in space or on-station \
during gravitational generator failures. These reverse-engineered knockoffs of Nanotrasen's \
'Advanced Magboots' slow you down in simulated-gravity environments much like the standard issue variety."
item = /obj/item/clothing/shoes/magboots/syndie
cost = 2
/datum/uplink_item/device_tools/briefcase_launchpad
name = "Briefcase Launchpad"
desc = "A briefcase containing a launchpad, a device able to teleport items and people to and from targets up to eight tiles away from the briefcase. \
Also includes a remote control, disguised as an ordinary folder. Touch the briefcase with the remote to link it."
surplus = 0
item = /obj/item/storage/briefcase/launchpad
cost = 6
manufacturer = /datum/corporation/traitor/cybersun
/datum/uplink_item/device_tools/camera_bug
name = "Camera Bug"
desc = "Enables you to view all cameras on the main network, set up motion alerts and track a target. \
Bugging cameras allows you to disable them remotely."
item = /obj/item/camera_bug
cost = 1
manufacturer = /datum/corporation/traitor/cybersun
surplus = 90
/datum/uplink_item/device_tools/military_belt
name = "Chameleon Chest Rig"
desc = "A robust seven-slot set of webbing that is capable of holding all manner of tactical equipment. This one is capable of disguising itself."
item = /obj/item/storage/belt/chameleon/syndicate
cost = 1
exclude_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/device_tools/emag
name = "Cryptographic Sequencer"
desc = "The cryptographic sequencer, electromagnetic card, or emag, is a small card that unlocks hidden functions \
in electronic devices, subverts intended functions, and easily breaks security mechanisms."
item = /obj/item/card/emag
cost = 6
/datum/uplink_item/device_tools/fakenucleardisk
name = "Decoy Nuclear Authentication Disk"
desc = "It's just a normal disk. Visually it's identical to the real deal, but it won't hold up under closer scrutiny by the Captain. \
Don't try to give this to us to complete your objective, we know better!"
item = /obj/item/disk/nuclear/fake
cost = 1
manufacturer = /datum/corporation/traitor/waffleco
surplus = 1
/datum/uplink_item/device_tools/frame
name = "F.R.A.M.E. PDA Cartridge"
desc = "When inserted into a personal digital assistant, this cartridge gives you five PDA viruses which \
when used cause the targeted PDA to become a new uplink with zero TCs, and immediately become unlocked. \
You will receive the unlock code upon activating the virus, and the new uplink may be charged with \
telecrystals normally."
item = /obj/item/cartridge/virus/frame
cost = 4
manufacturer = /datum/corporation/traitor/waffleco
restricted = TRUE
/datum/uplink_item/device_tools/failsafe
name = "Failsafe Uplink Code"
desc = "When entered the uplink will self-destruct immediately."
item = /obj/effect/gibspawner/generic
cost = 1
manufacturer = /datum/corporation/traitor/waffleco
surplus = 0
restricted = TRUE
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops, /datum/game_mode/infiltration) // Yogs: infiltration
/datum/uplink_item/device_tools/failsafe/spawn_item(spawn_path, mob/user, datum/component/uplink/U)
if(!U)
return
U.failsafe_code = U.generate_code()
var/code = "[islist(U.failsafe_code) ? english_list(U.failsafe_code) : U.failsafe_code]"
to_chat(user, span_warning("The new failsafe code for this uplink is now : [code]."))
if(user.mind)
user.mind.store_memory("Failsafe code for [U.parent] : [code]")
return U.parent //For log icon
/datum/uplink_item/device_tools/toolbox
name = "Full Syndicate Toolbox"
desc = "A suspicious black and red syndicate toolbox. It comes loaded with a full tool set including a \
multitool and combat gloves that are resistant to shocks and heat. It is very compact and will \
fit in any standard Nanotrasen backpack."
item = /obj/item/storage/toolbox/syndicate
cost = 1
/datum/uplink_item/device_tools/hacked_module
name = "Hacked AI Law Upload Module"
desc = "When used with an upload console, this module allows you to upload priority laws to an artificial intelligence. \
Be careful with wording, as artificial intelligences may look for loopholes to exploit."
item = /obj/item/aiModule/syndicate
cost = 4
manufacturer = /datum/corporation/traitor/cybersun
exclude_modes = list(/datum/game_mode/infiltration)
/datum/uplink_item/device_tools/hypnotic_flash
name = "Hypnotic Flash"
desc = "A modified flash able to hypnotize targets. If the target is not in a mentally vulnerable state, it will only confuse and pacify them temporarily."
item = /obj/item/assembly/flash/hypnotic
cost = 7
manufacturer = /datum/corporation/traitor/cybersun
/datum/uplink_item/device_tools/medgun
name = "Medbeam Gun"
desc = "A wonder of Syndicate engineering, the Medbeam gun, or Medi-Gun enables a medic to keep his fellow \
operatives in the fight, even while under fire. Don't cross the streams!"
item = /obj/item/gun/medbeam
cost = 8
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/device_tools/medgun_uber
name = "Augmented Medbeam Gun"
desc = "An augmented version of the classic Medbeam Gun that we picked up off the corpse of a german scientist. \
It has an invulnerability mode that can be activated for a few seconds after healing for a long while. \
This one comes uncharged, so be sure to give it a whirl before getting into combat. Goes well with a M-546 Osprey."
item = /obj/item/gun/medbeam/uber
cost = 25
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/device_tools/singularity_beacon
name = "Power Beacon"
desc = "When screwed to wiring attached to an electric grid and activated, this large device pulls any \
active gravitational singularities or tesla balls towards it. This will not work when the engine is still \
in containment. Because of its size, it cannot be carried. Ordering this \
sends you a small beacon that will teleport the larger beacon to your location upon activation."
item = /obj/item/sbeacondrop
cost = 10
manufacturer = /datum/corporation/traitor/waffleco
include_objectives = list(/datum/objective/hijack, /datum/objective/martyr, /datum/objective/nuclear) //yogs
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/device_tools/roburger_recipe
name = "Roburger crafting recipe"
desc = "This book contains legendary knowledge about how to make roburgers. \
Roburgers turn people into cyborgs after a short while when eaten. \
This book doesn't dissaper after use, so consider hiding it somewhere."
item = /obj/item/book/granter/crafting_recipe/roburgers
cost = 14
include_objectives = list(/datum/objective/hijack, /datum/objective/martyr, /datum/objective/nuclear)
exclude_modes = list(/datum/game_mode/infiltration)
/datum/uplink_item/device_tools/supermatter_delaminator
name = "Antinoblium Shard"
desc = "A special variant of supermatter crystal reverse engineered by syndicate scientists using samples retrieved by agents. \
Attaching this to an active supermatter crystal will destabilize the internal crystal well, causing an energy cascade. \
Ensures a storm of EMP waves that blacks out the entire station and eventually the full delamination of the crystal. \
Comes with a secure radiation shielded containment box, special tweezers and usage instructions."
item = /obj/item/storage/box/syndie_kit/supermatter_delaminator
cost = 10
manufacturer = /datum/corporation/traitor/waffleco
include_objectives = list(/datum/objective/hijack, /datum/objective/martyr, /datum/objective/nuclear) //yogs
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/device_tools/powersink
name = "Power Sink"
desc = "When screwed to wiring attached to a power grid and activated, this large device lights up and places excessive \
load on the grid, causing a station-wide blackout. The sink is large and cannot be stored in most \
traditional bags and boxes. Caution: Will explode if the powernet contains sufficient amounts of energy."
item = /obj/item/powersink
cost = 8
manufacturer = /datum/corporation/traitor/waffleco
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/device_tools/rad_laser
name = "Radioactive Microlaser"
desc = "A radioactive microlaser disguised as a standard Nanotrasen health analyzer. When used, it emits a \
powerful burst of radiation, which, after a short delay, can incapacitate all but the most protected \
of humanoids. It has two settings: intensity, which controls the power of the radiation, \
and wavelength, which controls the delay before the effect kicks in."
item = /obj/item/healthanalyzer/rad_laser
cost = 4
manufacturer = /datum/corporation/traitor/donkco
/datum/uplink_item/device_tools/stimpack
name = "Stimpack"
desc = "Stimpacks, the tool of many great heroes, make you nearly immune to stuns and knockdowns for about \
5 minutes after injection."
item = /obj/item/reagent_containers/autoinjector/medipen/stimpack/large // Yogs -- Stimpack change
cost = 8
surplus = 90
/datum/uplink_item/device_tools/medkit
name = "Syndicate Combat Medic Kit"
desc = "Included is a combat stimulant injector \
for rapid healing, a medical night vision HUD for quick identification of injured personnel, \
and other supplies helpful for a field medic."
item = /obj/item/storage/firstaid/tactical
cost = 4
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/device_tools/hypospray_kit
name = "Syndicate Combat Hypospray Kit"
desc = "An advanced kit containing a combat hypospray and a wide variety of vials containing \"perfectly legal chemicals\" to treat combatants."
item = /obj/item/storage/firstaid/hypospray/syndicate
cost = 5
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
/datum/uplink_item/device_tools/soap
name = "Syndicate Soap"
desc = "A sinister-looking surfactant used to clean blood stains to hide murders and prevent DNA analysis. \
You can also drop it underfoot to slip people."
item = /obj/item/soap/syndie
cost = 1
manufacturer = /datum/corporation/traitor/donkco
surplus = 50
illegal_tech = FALSE
/datum/uplink_item/device_tools/surgerybag
name = "Syndicate Surgery Duffel Bag"
desc = "The Syndicate surgery duffel bag is a toolkit containing all surgery tools, surgical drapes, \
a Syndicate brand MMI, an implant case, a straitjacket, and a muzzle."
item = /obj/item/storage/backpack/duffelbag/syndie/surgery
cost = 2
/datum/uplink_item/device_tools/encryptionkey
name = "Syndicate Encryption Key"
desc = "A key that, when inserted into a radio headset, allows you to listen to all station department channels \
as well as talk on an encrypted Syndicate channel with other agents that have the same key."
item = /obj/item/encryptionkey/syndicate
cost = 2
surplus = 75
restricted = TRUE
/datum/uplink_item/device_tools/syndietome
name = "Syndicate Tome"
desc = "Using rare artifacts acquired at great cost, the Syndicate has reverse engineered \
the seemingly magical books of a certain cult. Though lacking the esoteric abilities \
of the originals, these inferior copies are still quite useful, being able to provide \
both weal and woe on the battlefield, even if they do occasionally bite off a finger."
item = /obj/item/storage/book/bible/syndicate
cost = 5
/datum/uplink_item/device_tools/thermal
name = "Thermal Imaging Glasses"
desc = "These goggles can be turned to resemble common eyewear found throughout the station. \
They allow you to see organisms through walls by capturing the upper portion of the infrared light spectrum, \
emitted as heat and light by objects. Hotter objects, such as warm bodies, cybernetic organisms \
and artificial intelligence cores emit more of this light than cooler objects like walls and airlocks."
item = /obj/item/clothing/glasses/thermal/syndi
cost = 4
/datum/uplink_item/device_tools/potion
name = "Syndicate Sentience Potion"
item = /obj/item/slimepotion/slime/sentience/nuclear
desc = "A potion recovered at great risk by undercover Syndicate operatives and then subsequently modified with Syndicate technology. \
Using it will make any animal sentient, and bound to serve you, as well as implanting an internal radio for communication and an internal ID card for opening doors."
cost = 4
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
restricted = TRUE
/datum/uplink_item/device_tools/potion/traitor
name = "Lesser Syndicate Sentience Potion"
item = /obj/item/slimepotion/slime/sentience/traitor
desc = "The Syndicate have recently synthesized artificial sentience potions thanks to stolen slime cores. \
Using it will make any animal sentient, and bound to serve you in your dastardly deeds."
cost = 2
limited_stock = 2 //only buy two, prevents certain mushroom shenanigans
include_modes = list() //clear the list
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops, /datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/device_tools/suspiciousphone
name = "Protocol CRAB-17 Phone"
desc = "The Protocol CRAB-17 Phone, a phone borrowed from an unknown third party, it can be used to crash the space market, funneling the losses of the crew to your bank account.\
The crew can move their funds to a new banking site though, unless they HODL, in which case they deserve it."
item = /obj/item/suspiciousphone
cost = 7
manufacturer = /datum/corporation/traitor/waffleco
limited_stock = 1
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
/datum/uplink_item/device_tools/syndie_bodybag
name = "Syndicate Prisoner Transport Bag"
desc = "An alteration of Nanotrasen's environmental protection bag which has been used in several high-profile kidnappings. Designed to keep a victim unconscious, alive, and secured until they are transported to a required location."
item = /obj/item/bodybag/environmental/prisoner/syndicate
cost = 7
// Implants
/datum/uplink_item/implants
category = "Implants"
surplus = 50
/datum/uplink_item/implants/adrenal
name = "Adrenal Implant"
desc = "An implant injected into the body, and later activated at the user's will. It will inject a chemical \
cocktail which removes all incapacitating effects, lets the user run faster and has a mild healing effect."
item = /obj/item/storage/box/syndie_kit/imp_adrenal
cost = 8
player_minimum = 25
/datum/uplink_item/implants/antistun
name = "CNS Rebooter Implant"
desc = "This implant will help you get back up on your feet faster after being stunned. Comes with an autosurgeon."
item = /obj/item/autosurgeon/anti_stun
cost = 12
surplus = 0
/datum/uplink_item/implants/freedom
name = "Freedom Implant"
desc = "An implant injected into the body and later activated at the user's will. It will attempt to free the \
user from common restraints such as handcuffs."
item = /obj/item/storage/box/syndie_kit/imp_freedom
cost = 5
manufacturer = /datum/corporation/traitor/waffleco
/datum/uplink_item/implants/microbomb
name = "Microbomb Implant"
desc = "An implant injected into the body, and later activated either manually or automatically upon death. \
The more implants inside of you, the higher the explosive power. \
This will permanently destroy your body, however."
item = /obj/item/storage/box/syndie_kit/imp_microbomb
cost = 2
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/implants/macrobomb
name = "Macrobomb Implant"
desc = "An implant injected into the body, and later activated either manually or automatically upon death. \
Upon death, releases a massive explosion that will wipe out everything nearby."
item = /obj/item/storage/box/syndie_kit/imp_macrobomb
cost = 20
include_modes = list(/datum/game_mode/nuclear)
restricted = TRUE
/datum/uplink_item/implants/radio
name = "Internal Syndicate Radio Implant"
desc = "An implant injected into the body, allowing the use of an internal Syndicate radio. \
Used just like a regular headset, but can be disabled to use external headsets normally and to avoid detection."
item = /obj/item/storage/box/syndie_kit/imp_radio
cost = 4
manufacturer = /datum/corporation/traitor/donkco
restricted = TRUE
/datum/uplink_item/implants/reviver
name = "Reviver Implant"
desc = "This implant will attempt to revive and heal you if you lose consciousness. Comes with an autosurgeon."
item = /obj/item/autosurgeon/reviver
cost = 8
surplus = 0
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/implants/stealthimplant
name = "Stealth Implant"
desc = "This one-of-a-kind implant will make you almost invisible if you play your cards right. \
On activation, it will conceal you inside a chameleon cardboard box that is only revealed once someone bumps into it."
item = /obj/item/storage/box/syndie_kit/imp_stealth
manufacturer = /datum/corporation/traitor/donkco
cost = 8
/datum/uplink_item/implants/storage
name = "Storage Implant"
desc = "An implant injected into the body, and later activated at the user's will. It will open a small bluespace \
pocket capable of storing two regular-sized items."
item = /obj/item/storage/box/syndie_kit/imp_storage
cost = 8
/datum/uplink_item/implants/thermals
name = "Thermal Eyes"
desc = "These cybernetic eyes will give you thermal vision. Comes with a free autosurgeon."
item = /obj/item/autosurgeon/thermal_eyes
cost = 8
surplus = 0
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/implants/uplink
name = "Uplink Implant"
desc = "An implant injected into the body, and later activated at the user's will. Has no telecrystals and must be charged by the use of physical telecrystals. \
Undetectable (except via surgery), and excellent for escaping confinement."
item = /obj/item/storage/box/syndie_kit/imp_uplink
cost = UPLINK_IMPLANT_TELECRYSTAL_COST
// An empty uplink is kinda useless.
surplus = 0
restricted = TRUE
/datum/uplink_item/implants/mindshield
name = "Syndicate Brainwash Denial Implant"
desc = "An implant injected into the body, to deny brainwashing attempts."
item = /obj/item/storage/box/syndie_kit/imp_mindshield
limited_stock = 3
player_minimum = 30
illegal_tech = FALSE // This is a cheap knockoff of NT tech.
surplus = 5
cost = 1
manufacturer = /datum/corporation/traitor/waffleco
/datum/uplink_item/implants/xray
name = "X-ray Vision Implant"
desc = "These cybernetic eyes will give you X-ray vision. Comes with an autosurgeon."
item = /obj/item/autosurgeon/xray_eyes
cost = 10
surplus = 0
include_modes = list(/datum/game_mode/nuclear)
/datum/uplink_item/implants/mantis
name = "G.O.R.L.E.X. Mantis Blade"
desc = "One G.O.R.L.E.X Mantis blade implant able to be retracted inside your body at will for easy storage and concealing, 2 blades can be used at once."
item = /obj/item/autosurgeon/organ/syndicate/syndie_mantis
cost = 7
surplus = 0
exclude_modes = list(/datum/game_mode/infiltration) // yogs: infiltration
// Events
/datum/uplink_item/services
category = "Services"
include_modes = list(/datum/game_mode/infiltration, /datum/game_mode/nuclear)
surplus = 0
restricted = TRUE
/datum/uplink_item/services/manifest_spoof
name = "Crew Manifest Spoof"
desc = "A button capable of adding a single person to the crew manifest."
item = /obj/item/service/manifest
cost = 4
limited_stock = 1
/datum/uplink_item/services/fake_ion
name = "Fake Ion Storm"
desc = "Fakes an ion storm announcment. A good distraction, especially if the AI is weird anyway."
item = /obj/item/service/ion
cost = 7
/datum/uplink_item/services/fake_meteor
name = "Fake Meteor Announcement"
desc = "Fakes an meteor announcment. A good way to get any C4 on the station exterior, or really any small explosion, brushed off as a meteor hit."
item = /obj/item/service/meteor
cost = 7
/datum/uplink_item/services/fake_rod
name = "Fake Immovable Rod"
desc = "Fakes an immovable rod announcement. Good for a short-lasting distraction."
item = /obj/item/service/rodgod
cost = 6 //less likely to be believed
//Infiltrator shit
/datum/uplink_item/infiltration
category = "Infiltration Gear"
include_modes = list(/datum/game_mode/infiltration)
surplus = 0
/datum/uplink_item/infiltration/extra_stealthsuit
name = "Extra Chameleon Hardsuit"
desc = "An infiltration hardsuit, capable of changing it's appearance instantly."
item = /obj/item/clothing/suit/space/hardsuit/infiltration
cost = 10
/datum/uplink_item/infiltration/access_kit
name = "Access Kit"
desc = "A secret device, reverse engineered by gear retrieved from previous Nanotrasen infiltration missions. Allows you to spoof an ID card to have the assignment and access of a single low-level job."
item = /obj/item/access_kit/syndicate
limited_stock = 1
cost = 5
//Race-specific items
/datum/uplink_item/race_restricted
category = "Species-Restricted"
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
surplus = 0
/datum/uplink_item/race_restricted/syndilamp
name = "Extra-Bright Lantern"
desc = "We heard that moths such as yourself really like lamps, so we decided to grant you early access to a prototype \
Syndicate brand \"Extra-Bright Lantern™\". Enjoy."
cost = 2
item = /obj/item/flashlight/lantern/syndicate
restricted_species = list("moth")
/datum/uplink_item/race_restricted/syndigenetics
name = "Fire Breath implanter"
desc = "Recently Syndicate scientist have found the formula of returning lizards genetics back in time and giving them the ability to breath fire."
cost = 6
item = /obj/item/dnainjector/firebreath
restricted_species = list("lizard")
/datum/uplink_item/race_restricted/flyingfang
name = "Flying Fang Tablet"
desc = "This tablet contains a set of old lizard fighting techniques, increasing your melee combat effectiveness but preventing you from using armor, most common stun weapons, or guns."
cost = 14
item = /obj/item/book/granter/martial/flyingfang
restricted_species = list("lizard")
/datum/uplink_item/race_restricted/angelcoolboy
name = "Angel Potion"
desc = "We mixed a bird and a human and we somehow made a potion that turns you into a holy creature."
cost = 5
item = /obj/item/reagent_containers/glass/bottle/potion/flight/syndicate
restricted_species = list("human")
/datum/uplink_item/race_restricted/killertomatos
name = "Killer Tomatoes"
desc = "The Syndicates local gardeners brewed these up for our plant comrades (does not work against fellow plants)."
cost = 3
manufacturer = /datum/corporation/traitor/donkco
item = /obj/item/seeds/tomato/killer
restricted_species = list("pod")
/datum/uplink_item/race_restricted/radiationbomb
name = "Radiation grenade"
desc = "A radiation bomb guaranteed to irradiate the fuck out of non-gaseous lifeforms."
cost = 4
manufacturer = /datum/corporation/traitor/waffleco
item = /obj/item/grenade/chem_grenade/radiation
restricted_species = list("plasmaman")
/datum/uplink_item/race_restricted/mousecubes
name = "Box of Mouse Cubes"
desc = "A box with twenty four Waffle Co. brand mouse cubes. Deploy near wiring. \
Caution: Product may rehydrate when exposed to water."
item = /obj/item/storage/box/monkeycubes/syndicate/mice
cost = 1
manufacturer = /datum/corporation/traitor/waffleco
restricted_species = list("felinid")
// Role-specific items
/datum/uplink_item/role_restricted
category = "Role-Restricted"
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
surplus = 0
/datum/uplink_item/role_restricted/ancient_jumpsuit
name = "Ancient Jumpsuit"
desc = "A tattered old jumpsuit that will provide absolutely no benefit to you. It fills the wearer with a strange compulsion to blurt out 'glorf'."
item = /obj/item/clothing/under/color/grey/glorf
cost = 20
restricted_roles = list("Assistant")
surplus = 0
/datum/uplink_item/role_restricted/oldtoolboxclean
name = "Ancient Toolbox"
desc = "An iconic toolbox design notorious with Assistants everywhere, this design was especially made to become more robust the more telecrystals it has inside it! Tools and insulated gloves included."
item = /obj/item/storage/toolbox/mechanical/old/clean
cost = 2
restricted_roles = list("Assistant")
surplus = 0
/datum/uplink_item/role_restricted/pie_cannon
name = "Banana Cream Pie Cannon"
desc = "A special pie cannon for a special clown, this gadget can hold up to 20 pies and automatically fabricates one every two seconds!"
cost = 10
manufacturer = /datum/corporation/traitor/waffleco
item = /obj/item/pneumatic_cannon/pie/selfcharge
restricted_roles = list("Clown")
surplus = 0 //No fun unless you're the clown!
/datum/uplink_item/support/honker
name = "Dark H.O.N.K."
desc = "A clown combat mech equipped with bombanana peel and tearstache grenade launchers, as well as the ubiquitous HoNkER BlAsT 5000."
item = /obj/mecha/combat/honker/dark/loaded
cost = 35
restricted_roles = list("Clown")
manufacturer = /datum/corporation/traitor/waffleco
surplus = 0
/datum/uplink_item/role_restricted/arm_medical_gun
name = "Arm Mounted Medical Beamgun"
desc = "An arm mounted medical beamgun to heal your best buds (disclaimer: does not come with friends)."
item = /obj/item/autosurgeon/medibeam
restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Paramedic", "Mining Medic") //yogs
cost = 8
manufacturer = /datum/corporation/traitor/cybersun
/datum/uplink_item/role_restricted/brainwash_disk
name = "Brainwashing Surgery Program"
desc = "A disk containing the procedure to perform a brainwashing surgery, allowing you to implant an objective onto a target. \
Insert into an Operating Console to enable the procedure."
item = /obj/item/disk/surgery/brainwashing
restricted_roles = list("Medical Doctor", "Chief Medical Officer", "Roboticist", "Research Director") //yogs
player_minimum = 28
cost = 5
manufacturer = /datum/corporation/traitor/cybersun
/datum/uplink_item/role_restricted/cat_grenade
name = "Feral Cat Delivery Grenade"
desc = "The feral cat delivery grenade contains 5 dehydrated feral cats in a similar manner to dehydrated monkeys, which, upon detonation, will be rehydrated by a small reservoir of water contained within the grenade. These cats will then attack anything in sight."
item = /obj/item/grenade/spawnergrenade/feral_cats
cost = 4
manufacturer = /datum/corporation/traitor/waffleco
restricted_roles = list("Psychiatrist")///why? Becuase its funny that a person in charge of your mental wellbeing has a cat granade..<---(he cant spell)
/datum/uplink_item/role_restricted/blastcannon
name = "Blast Cannon"
desc = "A highly specialized weapon, the Blast Cannon is actually relatively simple. It contains an attachment for a tank transfer valve mounted to an angled pipe specially constructed \
withstand extreme pressure and temperatures, and has a mechanical trigger for triggering the transfer valve. Essentially, it turns the explosive force of a bomb into a narrow-angle \
blast wave \"projectile\". Aspiring scientists may find this highly useful, as forcing the pressure shockwave into a narrow angle seems to be able to bypass whatever quirk of physics \
disallows explosive ranges above a certain distance, allowing for the device to use the theoretical yield of a transfer valve bomb, instead of the factual yield."
item = /obj/item/gun/blastcannon
cost = 14 //High cost because of the potential for extreme damage in the hands of a skilled scientist.
manufacturer = /datum/corporation/traitor/waffleco
restricted_roles = list("Research Director", "Scientist")
/datum/uplink_item/role_restricted/gorillacubes
name = "Box of Gorilla Cubes"
desc = "A box with three Waffle Co. brand gorilla cubes. Eat big to get big. \
Caution: Product may rehydrate when exposed to water."
item = /obj/item/storage/box/gorillacubes
cost = 6
manufacturer = /datum/corporation/traitor/waffleco
restricted_roles = list("Geneticist", "Chief Medical Officer")
/datum/uplink_item/role_restricted/deadlydonut
name = "Box of Singulonuts"
desc = "A box with six Waffle Co. brand Singulonuts. Banned in four sectors for their sheer calorie content. \
Caution: Product known to the safety board of Nanotrasen to increase risks of stomach cancer and cause instant obesity. \ Disguised as a regular box of regular donuts."
item = /obj/item/storage/box/fancy/donut_box/deadly
cost = 6
manufacturer = /datum/corporation/traitor/waffleco
restricted_roles = list("Assistant", "Cook", "Clerk")
illegal_tech = FALSE
/datum/uplink_item/role_restricted/clown_bomb
name = "Clown Bomb"
desc = "The Clown bomb is a hilarious device capable of massive pranks. It has an adjustable timer, \
with a minimum of 60 seconds, and can be bolted to the floor with a wrench to prevent \
movement. The bomb is bulky and cannot be moved; upon ordering this item, a smaller beacon will be \
transported to you that will teleport the actual bomb to it upon activation. Note that this bomb can \
be defused, and some crew may attempt to do so."
item = /obj/item/sbeacondrop/clownbomb
cost = 7
manufacturer = /datum/corporation/traitor/waffleco
restricted_roles = list("Clown")
/datum/uplink_item/role_restricted/spider_injector
name = "Australicus Slime Mutator"
desc = "Crikey mate, it's been a wild travel from the Australicus sector but we've managed to get \
some special spider extract from the giant spiders down there. Use this injector on a gold slime core \
to create a few of the same type of spiders we found on the planets over there. They're a bit tame until you \
also give them a bit of sentience though."
item = /obj/item/reagent_containers/syringe/spider_extract
cost = 25 //yogs - increase price to reduce grief potential
manufacturer = /datum/corporation/traitor/waffleco
restricted_roles = list("Research Director", "Scientist", "Roboticist")
include_objectives = list(/datum/objective/hijack, /datum/objective/martyr) //yogs // >Increase price to reduce grief > limit it to hijack only :think:
/datum/uplink_item/role_restricted/clowncar
name = "Clown Car"
desc = "The Clown Car is the ultimate transportation method for any worthy clown! \
Simply insert your bikehorn and get in, and get ready to have the funniest ride of your life! \
You can ram any spacemen you come across and stuff them into your car, kidnapping them and locking them inside until \
someone saves them or they manage to crawl out. Be sure not to ram into any walls or vending machines, as the springloaded seats \
are very sensitive. Now with our included lube defense mechanism which will protect you against any angry shitcurity! \
Premium features can be unlocked with a cryptographic sequencer!"
item = /obj/vehicle/sealed/car/clowncar
cost = 20
player_minimum = 25
restricted_roles = list("Clown")
/datum/uplink_item/role_restricted/concealed_weapon_bay
name = "Concealed Weapon Bay"
desc = "A modification for non-combat mechas that allows them to equip one piece of equipment designed for combat mechs. \
It also hides the equipped weapon from plain sight. \
Only one can fit on a mecha."
item = /obj/item/mecha_parts/concealed_weapon_bay
cost = 3
manufacturer = /datum/corporation/traitor/donkco
restricted_roles = list("Roboticist", "Research Director")
/datum/uplink_item/role_restricted/haunted_magic_eightball
name = "Haunted Magic Eightball"
desc = "Most magic eightballs are toys with dice inside. Although identical in appearance to the harmless toys, this occult device reaches into the spirit world to find its answers. \
Be warned, that spirits are often capricious or just little assholes. To use, simply speak your question aloud, then begin shaking."
item = /obj/item/toy/eightball/haunted
cost = 2
manufacturer = /datum/corporation/traitor/donkco
restricted_roles = list("Chaplain","Curator")
limited_stock = 1 //please don't spam deadchat
/datum/uplink_item/role_restricted/his_grace
name = "His Grace"
desc = "An incredibly dangerous weapon recovered from a station overcome by the grey tide. Once activated, He will thirst for blood and must be used to kill to sate that thirst. \
His Grace grants gradual regeneration and complete stun immunity to His wielder, but be wary: if He gets too hungry, He will become impossible to drop and eventually kill you if not fed. \
However, if left alone for long enough, He will fall back to slumber. \
To activate His Grace, simply unlatch Him."
item = /obj/item/his_grace
cost = 20
restricted_roles = list("Chaplain")
surplus = 5 //Very low chance to get it in a surplus crate even without being the chaplain
/datum/uplink_item/role_restricted/horror
name = "Horror-in-a-box"
desc = "When dissecting the head of a dead Nanotrasen scientist, our surgeons noticed an incredibly peculiar creature inside and managed to extract it into safe containment. \
Either a failed experiment or otherworldly monster, this creature has been trained to aid whoever wakes it up. If you aren't afraid of it entering your head, it can prove a useful ally. \
We take no responsibility for your newfound madness and accept no refunds."
item = /obj/item/horrorspawner
cost = 16
surplus = 0
restricted_roles = list("Curator")
player_minimum = 20
/datum/uplink_item/role_restricted/explosive_hot_potato
name = "Exploding Hot Potato"
desc = "A potato rigged with explosives. On activation, a special mechanism is activated that prevents it from being dropped. \
The only way to get rid of it if you are holding it is to attack someone else with it, causing it to latch to that person instead."
item = /obj/item/hot_potato/syndicate
cost = 12
manufacturer = /datum/corporation/traitor/waffleco
surplus = 0
restricted_roles = list("Cook", "Botanist", "Clown", "Mime")
/datum/uplink_item/role_restricted/ez_clean_bundle
name = "EZ Clean Grenade Bundle"
desc = "A box with three cleaner grenades using the trademark Waffle Co. formula. Serves as a cleaner and causes acid damage to anyone standing nearby. \
The acid only affects carbon-based creatures."
item = /obj/item/storage/box/syndie_kit/ez_clean
cost = 6
manufacturer = /datum/corporation/traitor/waffleco
surplus = 20
restricted_roles = list("Janitor")
/datum/uplink_item/role_restricted/mimery
name = "Guide to Advanced Mimery Series"
desc = "The classical two part series on how to further hone your mime skills. Upon studying the series, the user should be able to make 3x1 invisible walls, and shoot bullets out of their fingers. \
Obviously only works for Mimes."
cost = 12
item = /obj/item/storage/box/syndie_kit/mimery
restricted_roles = list("Mime")
surplus = 0
/datum/uplink_item/role_restricted/pressure_mod
name = "Kinetic Accelerator Pressure Mod"
desc = "A modification kit which allows Kinetic Accelerators to do greatly increased damage while indoors. \
Occupies 35% mod capacity."
item = /obj/item/borg/upgrade/modkit/indoors
cost = 5 //you need two for full damage, so total of 10 for maximum damage
manufacturer = /datum/corporation/traitor/donkco // Unless you're donk co, then it's 8
limited_stock = 2 //you can't use more than two!
restricted_roles = list("Shaft Miner", "Mining Medic") //yogs
/datum/uplink_item/role_restricted/magillitis_serum
name = "Magillitis Serum Autoinjector"
desc = "A single-use autoinjector which contains an experimental serum that causes rapid muscular growth in Hominidae. \
Side-affects may include hypertrichosis, violent outbursts, and an unending affinity for bananas."
item = /obj/item/reagent_containers/autoinjector/magillitis
cost = 15
manufacturer = /datum/corporation/traitor/waffleco
restricted_roles = list("Geneticist", "Chief Medical Officer")
/datum/uplink_item/role_restricted/modified_syringe_gun
name = "Modified Syringe Gun"
desc = "A syringe gun that fires DNA injectors instead of normal syringes."
item = /obj/item/gun/syringe/dna
cost = 14
restricted_roles = list("Geneticist", "Chief Medical Officer")
/datum/uplink_item/role_restricted/chemical_gun
name = "Reagent Dartgun"
desc = "A heavily modified syringe gun which is capable of synthesizing its own chemical darts using input reagents. Can hold 100u of reagents."
item = /obj/item/gun/chem
cost = 12
restricted_roles = list("Chemist", "Chief Medical Officer", "Virologist")
/datum/uplink_item/role_restricted/reverse_bear_trap
name = "Reverse Bear Trap"
desc = "An ingenious execution device worn on (or forced onto) the head. Arming it starts a 1-minute kitchen timer mounted on the bear trap. When it goes off, the trap's jaws will \
violently open, instantly killing anyone wearing it by tearing their jaws in half. To arm, attack someone with it while they're not wearing headgear, and you will force it onto their \
head after three seconds uninterrupted."
cost = 5
item = /obj/item/reverse_bear_trap
restricted_roles = list("Clown")
/datum/uplink_item/role_restricted/reverse_revolver
name = "Reverse Revolver"
desc = "A revolver that always fires at its user. \"Accidentally\" drop your weapon, then watch as the greedy corporate pigs blow their own brains all over the wall. \
The revolver itself is actually real. Only clumsy people, and clowns, can fire it normally. Comes in a box of hugs. Honk."
cost = 14
manufacturer = /datum/corporation/traitor/waffleco
item = /obj/item/storage/box/hug/reverse_revolver
restricted_roles = list("Clown")
/datum/uplink_item/role_restricted/hierophant_antenna
name = "Hierophant's Antenna"
desc = "Amplifies the reception signals of the hierophant staff, allows the herald's power to reach the station!"
cost = 7
manufacturer = /datum/corporation/traitor/cybersun
item = /obj/item/hierophant_antenna
restricted_roles = list("Shaft Miner")
/datum/uplink_item/role_restricted/mining_charge_hacker
name = "Mining Charge Hacker"
desc = "Looks and functions like an advanced mining scanner, but allows mining charges to be placed anywhere and destroy more than rocks. \
Use it on a mining charge to override its safeties. Reduces explosive power of mining charges due to the modification of their internals."
cost = 4
manufacturer = /datum/corporation/traitor/cybersun
item = /obj/item/t_scanner/adv_mining_scanner/syndicate
restricted_roles = list("Shaft Miner","Quartermaster","Mining Medic")
// Pointless
/datum/uplink_item/badass
category = "(Pointless) Badassery"
surplus = 0
/datum/uplink_item/badass/costumes/obvious_chameleon
name = "Broken Chameleon Kit"
desc = "A set of items that contain chameleon technology allowing you to disguise as pretty much anything on the station, and more! \
Please note that this kit did NOT pass quality control."
item = /obj/item/storage/box/syndie_kit/chameleon/broken
/datum/uplink_item/badass/costumes
surplus = 0
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
cost = 4
cant_discount = TRUE
/datum/uplink_item/badass/costumes/centcom_official
name = "CentCom Official Costume"
desc = "Ask the crew to \"inspect\" their nuclear disk and weapons system, and then when they decline, pull out a fully automatic rifle and gun down the Captain. \
Radio headset does not include encryption key. No gun included."
item = /obj/item/storage/box/syndie_kit/centcom_costume
/datum/uplink_item/badass/costumes/clown
name = "Clown Costume"
desc = "Nothing is more terrifying than clowns with fully automatic weaponry."
item = /obj/item/storage/backpack/duffelbag/clown/syndie
/datum/uplink_item/badass/crafting_weapons
name = "Makeshift Weapons"
desc = "A one use book that grants access to a number of secret crafting recipes once it has been read."
item = /obj/item/book/granter/crafting_recipe/weapons
cost = 2
cant_discount = TRUE
illegal_tech = FALSE
/datum/uplink_item/badass/syndiefedora
name = "Syndicate Fedora"
desc = "This Syndicate Fedora of micro-woven adamantium silk is sure to prove your style!"
item = /obj/item/clothing/head/det_hat/evil
cost = 3
/datum/uplink_item/badass/balloon
name = "Syndicate Balloon"
desc = "For showing that you are THE BOSS: A useless red balloon with the Syndicate logo on it. \
Can blow the deepest of covers."
item = /obj/item/toy/syndicateballoon
cost = 20
cant_discount = TRUE
illegal_tech = FALSE
/datum/uplink_item/badass/syndiecash
name = "Syndicate Briefcase Full of Cash"
desc = "A secure briefcase containing 5000 space credits. Useful for bribing personnel, or purchasing goods \
and services at lucrative prices. The briefcase also feels a little heavier to hold; it has been \
manufactured to pack a little bit more of a punch if your client needs some convincing."
item = /obj/item/storage/secure/briefcase/syndie
cost = 1
restricted = TRUE
/datum/uplink_item/badass/syndiecards
name = "Syndicate Playing Cards"
desc = "A special deck of space-grade playing cards with a mono-molecular edge and metal reinforcement, \
making them slightly more robust than a normal deck of cards. \
You can also play card games with them or leave them on your victims."
item = /obj/item/toy/cards/deck/syndicate
cost = 1
manufacturer = /datum/corporation/traitor/donkco
surplus = 40
illegal_tech = FALSE
/datum/uplink_item/badass/syndiecigs
name = "Syndicate Smokes"
desc = "Strong flavor, dense smoke, infused with omnizine."
item = /obj/item/storage/box/fancy/cigarettes/cigpack_syndicate
cost = 2
manufacturer = /datum/corporation/traitor/donkco
illegal_tech = FALSE
/datum/uplink_item/badass/syndietape
name = "Guerrilla Tape"
desc = "New from Donk Co! Stick it to the man with this ultra-adhesive roll of tape! Grabs on tight, and holds on tight, using our patented adhesive formula. Ten times stronger than our leading competitors!"
item = /obj/item/stack/tape/guerrilla
cost = 1
manufacturer = /datum/corporation/traitor/donkco
/datum/uplink_item/badass/antagcape
name = "Red Syndicate Cape"
desc = "A cape to show off your small-time thuggery."
item = /obj/item/clothing/neck/skillcape/antag
cost = 10
illegal_tech = FALSE
/datum/uplink_item/badass/antagcapetrimmed
name = "Bloody Shiny Syndicate Cape"
desc = "A cape to show off your grand villainous deeds."
item = /obj/item/clothing/neck/skillcape/trimmed/antag
cost = 20
illegal_tech = FALSE
/datum/uplink_item/badass/syndistamp
name = "Syndicate Stamp"
desc = "Even evil needs to do paperwork."
item = /obj/item/stamp/syndiround
cost = 1
illegal_tech = FALSE