i think it works
MAJOR antag backend update - you cannot bruteforce the pen anymore - uplink now uses bitflag to lock purchases - poplock is handled entirely by the buyable uplink items - tgui antag intro (for selected ones)
This commit is contained in:
@@ -19,25 +19,46 @@
|
||||
throw_range = 7
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
|
||||
/// The uplink flag for this type.
|
||||
/// See [`code/__DEFINES/uplink.dm`]
|
||||
var/uplink_flag = UPLINK_TRAITORS
|
||||
|
||||
/obj/item/uplink/Initialize(mapload, owner, tc_amount = 20)
|
||||
. = ..()
|
||||
AddComponent(/datum/component/uplink, owner, FALSE, TRUE, null, tc_amount)
|
||||
AddComponent(/datum/component/uplink, owner, FALSE, TRUE, uplink_flag, tc_amount)
|
||||
|
||||
/obj/item/uplink/nuclear/Initialize()
|
||||
/obj/item/uplink/debug
|
||||
name = "debug uplink"
|
||||
|
||||
/obj/item/uplink/debug/Initialize(mapload, owner, tc_amount = 9000)
|
||||
. = ..()
|
||||
var/datum/component/uplink/hidden_uplink = GetComponent(/datum/component/uplink)
|
||||
hidden_uplink.set_gamemode(/datum/game_mode/nuclear)
|
||||
hidden_uplink.name = "debug uplink"
|
||||
hidden_uplink.debug = TRUE
|
||||
|
||||
/obj/item/uplink/nuclear
|
||||
uplink_flag = UPLINK_NUKE_OPS
|
||||
|
||||
/obj/item/uplink/nuclear/debug
|
||||
name = "debug nuclear uplink"
|
||||
uplink_flag = UPLINK_NUKE_OPS
|
||||
|
||||
/obj/item/uplink/nuclear/debug/Initialize(mapload, owner, tc_amount = 9000)
|
||||
. = ..()
|
||||
var/datum/component/uplink/hidden_uplink = GetComponent(/datum/component/uplink)
|
||||
hidden_uplink.name = "debug nuclear uplink"
|
||||
hidden_uplink.debug = TRUE
|
||||
|
||||
/obj/item/uplink/nuclear_restricted
|
||||
uplink_flag = UPLINK_NUKE_OPS
|
||||
|
||||
/obj/item/uplink/nuclear_restricted/Initialize()
|
||||
. = ..()
|
||||
var/datum/component/uplink/hidden_uplink = GetComponent(/datum/component/uplink)
|
||||
hidden_uplink.allow_restricted = FALSE
|
||||
hidden_uplink.set_gamemode(/datum/game_mode/nuclear)
|
||||
|
||||
/obj/item/uplink/clownop/Initialize()
|
||||
. = ..()
|
||||
var/datum/component/uplink/hidden_uplink = GetComponent(/datum/component/uplink)
|
||||
hidden_uplink.set_gamemode(/datum/game_mode/nuclear/clown_ops)
|
||||
/obj/item/uplink/clownop
|
||||
uplink_flag = UPLINK_CLOWN_OPS
|
||||
|
||||
/obj/item/uplink/old
|
||||
name = "dusty radio"
|
||||
@@ -51,28 +72,9 @@
|
||||
// Multitool uplink
|
||||
/obj/item/multitool/uplink/Initialize(mapload, owner, tc_amount = 20)
|
||||
. = ..()
|
||||
AddComponent(/datum/component/uplink, owner, FALSE, TRUE, null, tc_amount)
|
||||
AddComponent(/datum/component/uplink, owner, FALSE, TRUE, UPLINK_TRAITORS, tc_amount)
|
||||
|
||||
// Pen uplink
|
||||
/obj/item/pen/uplink/Initialize(mapload, owner, tc_amount = 20)
|
||||
. = ..()
|
||||
AddComponent(/datum/component/uplink, owner, TRUE, FALSE, null, tc_amount)
|
||||
|
||||
/obj/item/uplink/debug
|
||||
name = "debug uplink"
|
||||
|
||||
/obj/item/uplink/debug/Initialize(mapload, owner, tc_amount = 9000)
|
||||
. = ..()
|
||||
var/datum/component/uplink/hidden_uplink = GetComponent(/datum/component/uplink)
|
||||
hidden_uplink.name = "debug uplink"
|
||||
hidden_uplink.debug = TRUE
|
||||
|
||||
/obj/item/uplink/nuclear/debug
|
||||
name = "debug nuclear uplink"
|
||||
|
||||
/obj/item/uplink/nuclear/debug/Initialize(mapload, owner, tc_amount = 9000)
|
||||
. = ..()
|
||||
var/datum/component/uplink/hidden_uplink = GetComponent(/datum/component/uplink)
|
||||
hidden_uplink.set_gamemode(/datum/game_mode/nuclear)
|
||||
hidden_uplink.name = "debug nuclear uplink"
|
||||
hidden_uplink.debug = TRUE
|
||||
AddComponent(/datum/component/uplink, owner, TRUE, FALSE, UPLINK_TRAITORS, tc_amount)
|
||||
|
||||
@@ -1,54 +1,76 @@
|
||||
/proc/get_uplink_items(datum/game_mode/gamemode, allow_sales = TRUE, allow_restricted = TRUE, other_filter = list())
|
||||
var/list/filtered_uplink_items = GLOB.uplink_categories.Copy() // list of uplink categories without associated values.
|
||||
GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item))
|
||||
|
||||
/proc/get_uplink_items(uplink_flag, 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.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.item)
|
||||
continue
|
||||
if (!(I.purchasable_from & uplink_flag))
|
||||
continue
|
||||
if(I.player_minimum && I.player_minimum > GLOB.joined_player_list.len)
|
||||
continue
|
||||
if (I.restricted && !allow_restricted)
|
||||
continue
|
||||
if (I.type in other_filter)
|
||||
continue
|
||||
LAZYSET(filtered_uplink_items[I.category], I.name, I)
|
||||
|
||||
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)
|
||||
for(var/i in 1 to 3)
|
||||
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 = 1
|
||||
I.refundable = FALSE //THIS MAN USES ONE WEIRD TRICK TO GAIN FREE TC, CODERS HATES HIM!
|
||||
A.refundable = FALSE
|
||||
if(A.cost >= 20) //Tough love for nuke ops
|
||||
discount *= 0.5
|
||||
A.cost = max(round(A.cost * discount),1)
|
||||
A.category = "Discounted Gear"
|
||||
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
|
||||
var/datum/team/nuclear/nuclear_team
|
||||
// if (uplink_flag & UPLINK_NUKE_OPS) // uplink code kind of needs a redesign
|
||||
// nuclear_team = locate() in GLOB.antagonist_teams // the team discounts could be 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
|
||||
|
||||
LAZYSET(filtered_uplink_items[A.category], A.name, A)
|
||||
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"]
|
||||
|
||||
for(var/category in filtered_uplink_items)
|
||||
if(!filtered_uplink_items[category]) //empty categories with no associated uplink item. Remove.
|
||||
filtered_uplink_items -= category
|
||||
|
||||
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
|
||||
I.refundable = FALSE //THIS MAN USES ONE WEIRD TRICK TO GAIN FREE TC, CODERS HATES HIM!
|
||||
A.refundable = FALSE
|
||||
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
|
||||
@@ -67,12 +89,14 @@
|
||||
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.
|
||||
/// A bitfield to represent what uplinks can purchase this item.
|
||||
/// See [`code/__DEFINES/uplink.dm`].
|
||||
var/purchasable_from = ALL
|
||||
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?
|
||||
|
||||
/datum/uplink_item/proc/get_discount()
|
||||
@@ -80,6 +104,7 @@
|
||||
|
||||
/datum/uplink_item/proc/purchase(mob/user, datum/component/uplink/U)
|
||||
var/atom/A = spawn_item(item, user, U)
|
||||
// log_uplink("[key_name(user)] purchased [src] for [cost] telecrystals from [U.parent]'s uplink")
|
||||
if(purchase_log_vis && U.purchase_log)
|
||||
U.purchase_log.LogPurchase(A, src, cost)
|
||||
|
||||
@@ -94,70 +119,66 @@
|
||||
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!")
|
||||
to_chat(H, span_boldnotice("[A] materializes into your hands!"))
|
||||
return A
|
||||
to_chat(user, "[A] materializes onto the floor.")
|
||||
to_chat(user, span_boldnotice("[A] materializes onto the floor!"))
|
||||
return A
|
||||
|
||||
/*
|
||||
Uplink Categories:
|
||||
Due to how the typesof() in-built byond proc works, it should be kept in mind
|
||||
the order categories are displayed in the uplink UI is same to the order they are loaded in the code.
|
||||
I trust no extra filter is needed as long as they are all contained within the following lines.
|
||||
When adding new uplink categories, please keep them separate from their sub paths here and without set item.
|
||||
Failure to comply may result in the new categories being listed at the bottom of the UI.
|
||||
*/
|
||||
//Discounts (dynamically filled above)
|
||||
/datum/uplink_item/discounts
|
||||
category = "Discounts"
|
||||
|
||||
// cit specific. idk
|
||||
/datum/uplink_item/holiday
|
||||
category = "Holiday"
|
||||
|
||||
/datum/uplink_item/bundles_TC
|
||||
category = "Telecrystals and Bundles"
|
||||
//All bundles and telecrystals
|
||||
/datum/uplink_item/bundles_tc
|
||||
category = "Bundles"
|
||||
surplus = 0
|
||||
cant_discount = TRUE
|
||||
|
||||
// Dangerous Items
|
||||
/datum/uplink_item/dangerous
|
||||
category = "Conspicuous Weapons"
|
||||
|
||||
/datum/uplink_item/stealthy_weapons
|
||||
category = "Stealthy Weapons"
|
||||
|
||||
/datum/uplink_item/ammo
|
||||
category = "Ammunition"
|
||||
surplus = 40
|
||||
|
||||
/datum/uplink_item/explosives
|
||||
category = "Explosives"
|
||||
|
||||
//Support and Mechs
|
||||
/datum/uplink_item/support
|
||||
category = "Support and Exosuits"
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
|
||||
/datum/uplink_item/suits
|
||||
category = "Clothing"
|
||||
surplus = 40
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
// Stealth Items
|
||||
/datum/uplink_item/stealthy_tools
|
||||
category = "Stealth Gadgets"
|
||||
|
||||
//Space Suits and Hardsuits
|
||||
/datum/uplink_item/suits
|
||||
category = "Space Suits"
|
||||
surplus = 40
|
||||
|
||||
// Devices and Tools
|
||||
/datum/uplink_item/device_tools
|
||||
category = "Misc. Gadgets"
|
||||
|
||||
// Implants
|
||||
/datum/uplink_item/implants
|
||||
category = "Implants"
|
||||
surplus = 50
|
||||
|
||||
//Race-specific items
|
||||
/datum/uplink_item/race_restricted
|
||||
category = "Species-Restricted"
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
surplus = 0
|
||||
|
||||
// Role-specific items
|
||||
/datum/uplink_item/role_restricted
|
||||
category = "Role-Restricted"
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
surplus = 0
|
||||
cant_discount = TRUE
|
||||
|
||||
// Pointless
|
||||
/datum/uplink_item/badass
|
||||
category = "(Pointless) Badassery"
|
||||
surplus = 0
|
||||
|
||||
//Discounts (dynamically filled above)
|
||||
/datum/uplink_item/discounts
|
||||
category = "Discounted Gear"
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
desc = "Contains 10 additional .45-70 GOVT rounds. Caliber is exceedingly rare, and thus, comes at a premium."
|
||||
item = /obj/item/ammo_box/g4570
|
||||
cost = 5
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/ammo/pistol
|
||||
name = "10mm Handgun Magazine"
|
||||
@@ -20,7 +20,7 @@
|
||||
are dirt cheap but are half as effective as .357 rounds."
|
||||
item = /obj/item/ammo_box/magazine/m10mm
|
||||
cost = 1
|
||||
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/ammo/pistol/box
|
||||
name = "Ammo Box - 10mm"
|
||||
@@ -34,7 +34,7 @@
|
||||
These rounds are less effective at injuring the target but penetrate protective gear."
|
||||
item = /obj/item/ammo_box/magazine/m10mm/ap
|
||||
cost = 2
|
||||
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/ammo/pistolap/box
|
||||
name = "Ammo Box - 10mm Armour Piercing"
|
||||
@@ -48,7 +48,7 @@
|
||||
These rounds are more damaging but ineffective against armour."
|
||||
item = /obj/item/ammo_box/magazine/m10mm/hp
|
||||
cost = 3
|
||||
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/ammo/pistolhp/box
|
||||
name = "Ammo Box - 10mm Hollow Point"
|
||||
@@ -62,7 +62,7 @@
|
||||
Loaded with incendiary rounds which inflict little damage, but ignite the target."
|
||||
item = /obj/item/ammo_box/magazine/m10mm/fire
|
||||
cost = 2
|
||||
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/ammo/pistolfire/box
|
||||
name = "Ammo Box - 10mm Incendiary"
|
||||
@@ -85,7 +85,7 @@
|
||||
|
||||
/datum/uplink_item/ammo/shotgun
|
||||
cost = 2
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/ammo/shotgun/bag
|
||||
name = "12g Ammo Duffel Bag"
|
||||
@@ -136,7 +136,7 @@
|
||||
For when you really need a lot of things dead."
|
||||
item = /obj/item/ammo_box/a357
|
||||
cost = 3
|
||||
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/ammo/revolver/ap
|
||||
name = ".357 Armor Piercing Speed Loader"
|
||||
@@ -150,25 +150,25 @@
|
||||
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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/ammo/sniper
|
||||
cost = 4
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/ammo/sniper/basic
|
||||
name = ".50 Magazine"
|
||||
@@ -194,7 +194,7 @@
|
||||
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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/ammo/machinegun/match
|
||||
name = "7.12x82mm (Match) Box Magazine"
|
||||
@@ -206,7 +206,7 @@
|
||||
/datum/uplink_item/ammo/machinegun
|
||||
cost = 6
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/ammo/machinegun/basic
|
||||
name = "1.95x129mm Box Magazine"
|
||||
@@ -234,7 +234,7 @@
|
||||
item = /obj/item/ammo_box/magazine/mm195x129/incen
|
||||
|
||||
/datum/uplink_item/ammo/rocket
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/ammo/rocket/basic
|
||||
name = "84mm HE Rocket"
|
||||
@@ -254,7 +254,7 @@
|
||||
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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/ammo/pistolaps
|
||||
name = "Ammo Box - 9mm"
|
||||
@@ -268,7 +268,7 @@
|
||||
Loaded with armor piercing flechettes that very nearly ignore armor, but are not very effective against flesh."
|
||||
item = /obj/item/ammo_box/magazine/flechette
|
||||
cost = 2
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/ammo/flechettes
|
||||
name = "Serrated Flechette Magazine"
|
||||
@@ -277,7 +277,7 @@
|
||||
These flechettes are highly likely to sever arteries, and even limbs."
|
||||
item = /obj/item/ammo_box/magazine/flechette/s
|
||||
cost = 2
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/ammo/toydarts
|
||||
name = "Box of Riot Darts"
|
||||
@@ -293,32 +293,32 @@
|
||||
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)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/ammo/bolt_action_bulk
|
||||
name = "Surplus Rifle Clip Box"
|
||||
desc = "An ammo box we found in a warehouse, holding 7 clips of 5 rounds for bolt-action rifles. Yes, the cheap ones."
|
||||
item = /obj/item/storage/toolbox/ammo
|
||||
cost = 4
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/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 laucher 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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
@@ -14,9 +14,9 @@
|
||||
item = /obj/item/storage/box/syndie_kit/chameleon/broken
|
||||
|
||||
/datum/uplink_item/badass/costumes
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
cost = 4
|
||||
cant_discount = TRUE
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/badass/costumes/centcom_official
|
||||
name = "CentCom Official Costume"
|
||||
@@ -77,14 +77,14 @@
|
||||
cost = 4
|
||||
limited_stock = 1
|
||||
cant_discount = TRUE
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/badass/gaming_cardpack
|
||||
name = "TCG Card Operatives Bundle"
|
||||
desc = "A bundle full of goodies required to work as a TCG Card Operative. A warm pajama, a mug of cocoa, a plushie and a two packs full of rare 2560 Core Set cards!"
|
||||
item = /obj/item/storage/box/syndie_kit/sleepytime/cardpack
|
||||
cost = 20
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/badass/cardpack
|
||||
name = "TCG Nuclear Cardpack"
|
||||
|
||||
@@ -7,30 +7,30 @@
|
||||
When adding new entries to the file, please keep them sorted by category.
|
||||
*/
|
||||
|
||||
/datum/uplink_item/bundles_TC/chemical
|
||||
/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
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/bundles_TC/bulldog
|
||||
/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, a 12g buckshot drum, a 12g taser slug drum 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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/bundles_TC/c20r
|
||||
/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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/bundles_TC/contract_kit
|
||||
/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 \
|
||||
@@ -39,10 +39,10 @@
|
||||
item = /obj/item/storage/box/syndie_kit/contract_kit
|
||||
cost = 20
|
||||
player_minimum = 25
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
restricted = TRUE
|
||||
|
||||
/datum/uplink_item/bundles_TC/northstar_bundle
|
||||
/datum/uplink_item/bundles_tc/northstar_bundle
|
||||
name = "Northstar Bundle"
|
||||
desc = "An item usually reserved for the Gorlex Marauders and their operatives, now available for recreational use. \
|
||||
These armbands let the user punch people very fast and with the lethality of a legendary martial artist. \
|
||||
@@ -50,16 +50,16 @@
|
||||
Combines with all martial arts, but the user will be unable to bring themselves to use guns, nor remove the armbands."
|
||||
item = /obj/item/storage/box/syndie_kit/northstar
|
||||
cost = 20
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops, /datum/game_mode/traitor/internal_affairs)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/bundles_TC/scarp_bundle
|
||||
/datum/uplink_item/bundles_tc/scarp_bundle
|
||||
name = "Sleeping Carp Bundle"
|
||||
desc = "Become one with your inner carp! Your ancient fish masters leave behind their legacy, and bestow to you their teachings, sacred uniform, and staff. \
|
||||
Please be aware that you will not be able to use dishonerable ranged weapons."
|
||||
item = /obj/item/storage/box/syndie_kit/scarp
|
||||
cost = 20
|
||||
player_minimum = 20
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops, /datum/game_mode/traitor/internal_affairs)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/suits/infiltrator_bundle
|
||||
name = "Insidious Infiltration Gear Case"
|
||||
@@ -69,86 +69,85 @@
|
||||
item = /obj/item/storage/toolbox/infiltrator
|
||||
cost = 5
|
||||
limited_stock = 1 //you only get one so you don't end up with too many gun cases
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/bundles_TC/cybernetics_bundle
|
||||
/datum/uplink_item/bundles_tc/cybernetics_bundle
|
||||
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
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/bundles_TC/medical
|
||||
/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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/bundles_TC/modular
|
||||
/datum/uplink_item/bundles_tc/modular
|
||||
name = "Modular Pistol Kit"
|
||||
desc = "A heavy briefcase containing one modular pistol (chambered in 10mm), one supressor, and spare ammunition, including a box of soporific ammo. \
|
||||
Includes a suit jacket that is padded with a robust liner."
|
||||
item = /obj/item/storage/briefcase/modularbundle
|
||||
cost = 12
|
||||
|
||||
/datum/uplink_item/bundles_TC/shredder
|
||||
/datum/uplink_item/bundles_tc/shredder
|
||||
name = "Shredder bundle"
|
||||
desc = "A truly horrific weapon designed simply to maim its victim, the CX Shredder is banned by several intergalactic treaties. \
|
||||
You'll get two of them with this. And spare ammo to boot. And we'll throw in an extra elite hardsuit and chest rig to hold them all!"
|
||||
item = /obj/item/storage/backpack/duffelbag/syndie/shredderbundle
|
||||
cost = 30 // normally 41
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/bundles_TC/sniper
|
||||
/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 supressor, 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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/bundles_TC/firestarter
|
||||
/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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/bundles_TC/bundle
|
||||
/datum/uplink_item/bundles_tc/bundle
|
||||
name = "Syndicate Bundle"
|
||||
desc = "Syndicate Bundles 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
|
||||
cost = 20
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/traitor/internal_affairs)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS)
|
||||
cant_discount = TRUE
|
||||
|
||||
/datum/uplink_item/bundles_TC/surplus
|
||||
/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 = 20
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops, /datum/game_mode/traitor/internal_affairs)
|
||||
cant_discount = TRUE
|
||||
player_minimum = 25
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
var/starting_crate_value = 50
|
||||
|
||||
/datum/uplink_item/bundles_TC/surplus/super
|
||||
/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 = 30
|
||||
player_minimum = 40
|
||||
starting_crate_value = 125
|
||||
|
||||
/datum/uplink_item/bundles_TC/surplus/purchase(mob/user, datum/component/uplink/U)
|
||||
/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
|
||||
@@ -170,7 +169,7 @@
|
||||
U.purchase_log.LogPurchase(goods, I, 0)
|
||||
return C
|
||||
|
||||
/datum/uplink_item/bundles_TC/reroll
|
||||
/datum/uplink_item/bundles_tc/reroll
|
||||
name = "Renegotiate Contract"
|
||||
desc = "Selecting this will inform your employers that you wish for new objectives. Can only be done twice."
|
||||
item = /obj/effect/gibspawner/generic
|
||||
@@ -179,22 +178,21 @@
|
||||
restricted = TRUE
|
||||
limited_stock = 2
|
||||
|
||||
/datum/uplink_item/bundles_TC/reroll/purchase(mob/user, datum/component/uplink/U)
|
||||
/datum/uplink_item/bundles_tc/reroll/purchase(mob/user, datum/component/uplink/U)
|
||||
var/datum/antagonist/traitor/T = user?.mind?.has_antag_datum(/datum/antagonist/traitor)
|
||||
if(istype(T))
|
||||
T.set_traitor_kind(get_random_traitor_kind(blacklist = list(/datum/traitor_class/human/freeform, /datum/traitor_class/human/hijack, /datum/traitor_class/human/martyr)))
|
||||
else
|
||||
to_chat(user,"Invalid user for contract renegotiation.")
|
||||
|
||||
/datum/uplink_item/bundles_TC/random
|
||||
/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
|
||||
cant_discount = TRUE
|
||||
exclude_modes = list(/datum/game_mode/traitor/internal_affairs)
|
||||
|
||||
/datum/uplink_item/bundles_TC/random/purchase(mob/user, datum/component/uplink/U)
|
||||
/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)
|
||||
@@ -202,7 +200,7 @@
|
||||
var/datum/uplink_item/I = uplink_items[category][item]
|
||||
if(src == I || !I.item)
|
||||
continue
|
||||
if(istype(I, /datum/uplink_item/bundles_TC/reroll)) //oops!
|
||||
if(istype(I, /datum/uplink_item/bundles_tc/reroll)) //oops!
|
||||
continue
|
||||
if(U.telecrystals < I.cost)
|
||||
continue
|
||||
@@ -215,7 +213,7 @@
|
||||
SSblackbox.record_feedback("tally", "traitor_random_uplink_items_gotten", 1, initial(I.name))
|
||||
U.MakePurchase(user, I)
|
||||
|
||||
/datum/uplink_item/bundles_TC/telecrystal
|
||||
/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
|
||||
@@ -226,13 +224,13 @@
|
||||
// it's just used to buy more items (including itself!)
|
||||
purchase_log_vis = FALSE
|
||||
|
||||
/datum/uplink_item/bundles_TC/telecrystal/five
|
||||
/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
|
||||
/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
|
||||
|
||||
@@ -12,35 +12,35 @@
|
||||
desc = "A slightly armored conspicious jumpsuit that has no suit sensors attached to them, if someone sees you in this hope they think its a fake."
|
||||
item = /obj/item/clothing/under/syndicate
|
||||
cost = 1
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops) //They already get these
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/suits/turtlenck_skirt
|
||||
name = "Tactical Skirtleneck"
|
||||
desc = "A slightly armored conspicious jumpsuit that has no suit sensors attached to them, if someone sees you in this hope they think its a fake."
|
||||
item = /obj/item/clothing/under/syndicate/skirt
|
||||
cost = 1
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops) //They already get these
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/suits/padding
|
||||
name = "Soft Padding"
|
||||
desc = "An inconspicious soft padding meant to be worn underneath jumpsuits, will cushion the user from melee harm."
|
||||
item = /obj/item/clothing/accessory/padding
|
||||
cost = 2
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/suits/kevlar
|
||||
name = "Kevlar Padding"
|
||||
desc = "An inconspicious kevlar padding meant to be worn underneath jumpsuits, will cushion the wearer from ballistic harm."
|
||||
item = /obj/item/clothing/accessory/kevlar
|
||||
cost = 2
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/suits/plastic
|
||||
name = "Ablative Padding"
|
||||
desc = "An inconspicious ablative padding meant to be worn underneath jumpsuits, will cushion the wearer from energy lasers harm."
|
||||
item = /obj/item/clothing/accessory/plastics
|
||||
cost = 2
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/suits/space_suit
|
||||
name = "Syndicate Space Suit"
|
||||
@@ -59,7 +59,7 @@
|
||||
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/nuclear/clown_ops) //you can't buy it in nuke, because the elite hardsuit costs the same while being better
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS) //you can't buy it in nuke, because the elite hardsuit costs the same while being better
|
||||
|
||||
/datum/uplink_item/suits/hardsuit/elite
|
||||
name = "Elite Syndicate Hardsuit"
|
||||
@@ -67,8 +67,7 @@
|
||||
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()
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/suits/hardsuit/shielded
|
||||
name = "Shielded Syndicate Hardsuit"
|
||||
@@ -76,8 +75,7 @@
|
||||
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()
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/suits/thiefgloves
|
||||
name = "Thieving Gloves"
|
||||
@@ -90,13 +88,13 @@
|
||||
desc = "Through bluespace magic stolen from an organisation that hoards technology, these boots simply allow you to slip through the atoms that make up anything, but only while walking, for safety reasons. As well as this, they unfortunately cause minor breath loss as the majority of atoms in your lungs are sucked out into any solid object you walk through."
|
||||
item = /obj/item/clothing/shoes/wallwalkers
|
||||
cost = 6
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/device_tools/guerrillagloves
|
||||
name = "Guerrilla Gloves"
|
||||
desc = "A pair of highly robust combat gripper gloves that excels at performing takedowns at close range, with an added lining of insulation. Careful not to hit a wall!"
|
||||
item = /obj/item/clothing/gloves/tackler/combat/insulated
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
cost = 2
|
||||
illegal_tech = FALSE
|
||||
|
||||
@@ -111,4 +109,4 @@
|
||||
desc = "A pair of highly reinforced armwraps allowing the user to parry almost anything. Fully reflects projectiles, no downsides to failing, but is very hard to parry melee with."
|
||||
cost = 6
|
||||
item = /obj/item/clothing/gloves/fingerless/ablative
|
||||
exclude_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
@@ -13,7 +13,7 @@
|
||||
with suppressors."
|
||||
item = /obj/item/storage/box/syndie_kit/pistol
|
||||
cost = 7
|
||||
exclude_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/revolver
|
||||
name = "Syndicate Revolver Kit"
|
||||
@@ -22,7 +22,7 @@
|
||||
cost = 13
|
||||
player_minimum = 15
|
||||
surplus = 50
|
||||
exclude_modes = list(/datum/game_mode/nuclear/clown_ops, /datum/game_mode/traitor/internal_affairs)
|
||||
purchasable_from = ~UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/rawketlawnchair
|
||||
name = "84mm Rocket Propelled Grenade Launcher"
|
||||
@@ -31,7 +31,7 @@
|
||||
item = /obj/item/gun/ballistic/rocketlauncher
|
||||
cost = 8
|
||||
surplus = 30
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/antitank
|
||||
name = "Anti Tank Pistol"
|
||||
@@ -42,7 +42,7 @@
|
||||
item = /obj/item/gun/ballistic/automatic/pistol/antitank/syndicate
|
||||
cost = 14
|
||||
surplus = 25
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/pie_cannon
|
||||
name = "Banana Cream Pie Cannon"
|
||||
@@ -50,7 +50,7 @@
|
||||
cost = 10
|
||||
item = /obj/item/pneumatic_cannon/pie/selfcharge
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/bananashield
|
||||
name = "Bananium Energy Shield"
|
||||
@@ -60,7 +60,7 @@
|
||||
item = /obj/item/shield/energy/bananium
|
||||
cost = 16
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/clownsword
|
||||
name = "Bananium Energy Sword"
|
||||
@@ -69,7 +69,7 @@
|
||||
item = /obj/item/melee/transforming/energy/sword/bananium
|
||||
cost = 3
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/bioterror
|
||||
name = "Biohazardous Chemical Sprayer"
|
||||
@@ -79,7 +79,7 @@
|
||||
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)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/throwingweapons
|
||||
name = "Box of Throwing Weapons"
|
||||
@@ -95,7 +95,7 @@
|
||||
item = /obj/item/gun/ballistic/automatic/shotgun/bulldog
|
||||
cost = 8
|
||||
surplus = 40
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/smg
|
||||
name = "C-20r Submachine Gun"
|
||||
@@ -104,7 +104,7 @@
|
||||
item = /obj/item/gun/ballistic/automatic/c20r
|
||||
cost = 10
|
||||
surplus = 40
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/doublesword
|
||||
name = "Double-Bladed Energy Sword"
|
||||
@@ -113,7 +113,7 @@
|
||||
item = /obj/item/dualsaber
|
||||
player_minimum = 25
|
||||
cost = 16
|
||||
exclude_modes = list(/datum/game_mode/nuclear/clown_ops, /datum/game_mode/traitor/internal_affairs)
|
||||
purchasable_from = ~UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/doublesword/get_discount()
|
||||
return pick(4;0.8,2;0.65,1;0.5)
|
||||
@@ -125,7 +125,7 @@
|
||||
item = /obj/item/dualsaber/hypereutactic
|
||||
player_minimum = 25
|
||||
cost = 16
|
||||
exclude_modes = list(/datum/game_mode/nuclear/clown_ops, /datum/game_mode/traitor/internal_affairs)
|
||||
purchasable_from = ~UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/hyperblade/get_discount()
|
||||
return pick(4;0.8,2;0.65,1;0.5)
|
||||
@@ -136,7 +136,7 @@
|
||||
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/traitor/internal_affairs)
|
||||
purchasable_from = ~UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/shield
|
||||
name = "Energy Shield"
|
||||
@@ -145,7 +145,7 @@
|
||||
item = /obj/item/shield/energy
|
||||
cost = 16
|
||||
surplus = 20
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/rapier
|
||||
name = "Rapier"
|
||||
@@ -154,7 +154,7 @@
|
||||
However, due to the size of the blade and obvious nature of the sheath, the weapon stands out as being obviously nefarious."
|
||||
item = /obj/item/storage/belt/sabre/rapier
|
||||
cost = 8
|
||||
exclude_modes = list(/datum/game_mode/nuclear/clown_ops, /datum/game_mode/traitor/internal_affairs)
|
||||
purchasable_from = ~UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/flamethrower
|
||||
name = "Flamethrower"
|
||||
@@ -163,7 +163,7 @@
|
||||
item = /obj/item/flamethrower/full/tank
|
||||
cost = 4
|
||||
surplus = 40
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/flechettegun
|
||||
name = "Flechette Launcher"
|
||||
@@ -173,7 +173,7 @@
|
||||
item = /obj/item/gun/ballistic/automatic/flechette
|
||||
cost = 12
|
||||
surplus = 30
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/rapid
|
||||
name = "Bands of the North Star"
|
||||
@@ -182,7 +182,7 @@
|
||||
Combines with all martial arts, but the user will be unable to bring themselves to use guns, nor remove the armbands."
|
||||
item = /obj/item/clothing/gloves/fingerless/pugilist/rapid
|
||||
cost = 30
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/guardian
|
||||
name = "Holoparasites"
|
||||
@@ -194,7 +194,7 @@
|
||||
refundable = TRUE
|
||||
cant_discount = TRUE
|
||||
surplus = 0
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops, /datum/game_mode/traitor/internal_affairs)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
player_minimum = 25
|
||||
restricted = TRUE
|
||||
refund_path = /obj/item/guardiancreator/tech/choose/traitor
|
||||
@@ -208,7 +208,7 @@
|
||||
refundable = TRUE
|
||||
surplus = 50
|
||||
refund_path = /obj/item/guardiancreator/tech/choose/nukie
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/machinegun
|
||||
name = "L6 Squad Automatic Weapon"
|
||||
@@ -217,7 +217,7 @@
|
||||
item = /obj/item/gun/ballistic/automatic/l6_saw
|
||||
cost = 18
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/carbine
|
||||
name = "M-90gl Carbine"
|
||||
@@ -226,7 +226,7 @@
|
||||
item = /obj/item/gun/ballistic/automatic/m90
|
||||
cost = 18
|
||||
surplus = 50
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/maulergauntlets
|
||||
name = "Mauler Gauntlets"
|
||||
@@ -245,7 +245,6 @@
|
||||
deal extra damage and hit targets further. Use a screwdriver to take out any attached tanks."
|
||||
item = /obj/item/melee/powerfist
|
||||
cost = 8
|
||||
exclude_modes = list(/datum/game_mode/traitor/internal_affairs)
|
||||
|
||||
/datum/uplink_item/dangerous/sniper
|
||||
name = "Sniper Rifle"
|
||||
@@ -253,14 +252,14 @@
|
||||
item = /obj/item/gun/ballistic/automatic/sniper_rifle/syndicate
|
||||
cost = 16
|
||||
surplus = 25
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/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/shotgun/boltaction
|
||||
cost = 2
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/foamsmg
|
||||
name = "Toy Submachine Gun"
|
||||
@@ -268,7 +267,7 @@
|
||||
item = /obj/item/gun/ballistic/automatic/c20r/toy
|
||||
cost = 5
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/foammachinegun
|
||||
name = "Toy Machine Gun"
|
||||
@@ -277,7 +276,7 @@
|
||||
item = /obj/item/gun/ballistic/automatic/l6_saw/toy
|
||||
cost = 10
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/dangerous/foampistol
|
||||
name = "Toy Pistol with Riot Darts"
|
||||
@@ -293,4 +292,4 @@
|
||||
Allows you to cut from a far distance!"
|
||||
item = /obj/item/gun/magic/staff/motivation
|
||||
cost = 10
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops, /datum/game_mode/traitor/internal_affairs)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
item = /obj/item/assault_pod
|
||||
cost = 30
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
restricted = TRUE
|
||||
|
||||
/datum/uplink_item/device_tools/binary
|
||||
@@ -66,7 +66,7 @@
|
||||
'Advanced Magboots' slow you down in simulated-gravity environments much like the standard issue variety."
|
||||
item = /obj/item/clothing/shoes/magboots/syndie
|
||||
cost = 2
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/device_tools/compressionkit
|
||||
name = "Bluespace Compression Kit"
|
||||
@@ -98,7 +98,7 @@
|
||||
desc = "A robust seven-slot set of webbing that is capable of holding all manner of tactical equipment."
|
||||
item = /obj/item/storage/belt/military
|
||||
cost = 1
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/device_tools/ammo_pouch
|
||||
name = "Ammo Pouch"
|
||||
@@ -137,7 +137,7 @@
|
||||
desc = "A cheap bottle of one use syndicate brand super glue. \
|
||||
Use on any item to make it undroppable. \
|
||||
Be careful not to glue an item you're already holding!"
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
item = /obj/item/syndie_glue
|
||||
cost = 2
|
||||
|
||||
@@ -166,7 +166,7 @@
|
||||
operatives in the fight, even while under fire. Don't cross the streams!"
|
||||
item = /obj/item/gun/medbeam
|
||||
cost = 15
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/device_tools/nutcracker
|
||||
name = "Nutcracker"
|
||||
@@ -224,7 +224,7 @@
|
||||
and other supplies helpful for a field medic."
|
||||
item = /obj/item/storage/firstaid/tactical/nukeop
|
||||
cost = 4
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/device_tools/surgerybag
|
||||
name = "Syndicate Surgery Duffel Bag"
|
||||
@@ -272,7 +272,7 @@
|
||||
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 = 2
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
restricted = TRUE
|
||||
|
||||
/* for now
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
item = /obj/item/grenade/chem_grenade/bioterrorfoam
|
||||
cost = 5
|
||||
surplus = 35
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/explosives/bombanana
|
||||
name = "Bombanana"
|
||||
@@ -24,7 +24,7 @@
|
||||
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)
|
||||
purchasable_from = UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/explosives/buzzkill
|
||||
name = "Buzzkill Grenade Box"
|
||||
@@ -33,7 +33,7 @@
|
||||
item = /obj/item/storage/box/syndie_kit/bee_grenades
|
||||
cost = 15
|
||||
surplus = 35
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/explosives/c4
|
||||
name = "Composition C-4"
|
||||
@@ -58,7 +58,6 @@
|
||||
item = /obj/item/storage/backpack/duffelbag/syndie/x4
|
||||
cost = 4 //
|
||||
cant_discount = TRUE
|
||||
exclude_modes = list(/datum/game_mode/traitor/internal_affairs)
|
||||
|
||||
/datum/uplink_item/explosives/clown_bomb_clownops
|
||||
name = "Clown Bomb"
|
||||
@@ -70,7 +69,7 @@
|
||||
item = /obj/item/sbeacondrop/clownbomb
|
||||
cost = 15
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/explosives/detomatix
|
||||
name = "Detomatix PDA Cartridge"
|
||||
@@ -97,14 +96,14 @@
|
||||
item = /obj/item/storage/box/syndie_kit/tuberculosisgrenade
|
||||
cost = 8
|
||||
surplus = 35
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_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)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
cost = 22
|
||||
surplus = 0
|
||||
|
||||
@@ -125,7 +124,6 @@
|
||||
be defused, and some crew may attempt to do so."
|
||||
item = /obj/item/sbeacondrop/bomb
|
||||
cost = 11
|
||||
exclude_modes = list(/datum/game_mode/traitor/internal_affairs)
|
||||
|
||||
/datum/uplink_item/explosives/syndicate_detonator
|
||||
name = "Syndicate Detonator"
|
||||
@@ -135,7 +133,7 @@
|
||||
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)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/explosives/syndicate_minibomb
|
||||
name = "Syndicate Minibomb"
|
||||
@@ -143,7 +141,7 @@
|
||||
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/traitor/internal_affairs)
|
||||
purchasable_from = ~UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/explosives/tearstache
|
||||
name = "Teachstache Grenade"
|
||||
@@ -152,7 +150,7 @@
|
||||
item = /obj/item/grenade/chem_grenade/teargas/moustache
|
||||
cost = 3
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/explosives/viscerators
|
||||
name = "Viscerator Delivery Grenade"
|
||||
@@ -161,4 +159,4 @@
|
||||
item = /obj/item/grenade/spawnergrenade/manhacks
|
||||
cost = 5
|
||||
surplus = 35
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
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
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/implants/deathrattle
|
||||
name = "Box of Deathrattle Implants"
|
||||
@@ -31,7 +31,7 @@
|
||||
item = /obj/item/storage/box/syndie_kit/imp_deathrattle
|
||||
cost = 4
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/implants/freedom
|
||||
name = "Freedom Implant"
|
||||
@@ -45,7 +45,7 @@
|
||||
desc = "An implant injected into the body and later activated at the user's will. Allows the user to teleport to where they were 10 seconds ago. Has a 10 second cooldown."
|
||||
item = /obj/item/storage/box/syndie_kit/imp_warp
|
||||
cost = 6
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/implants/hijack
|
||||
name = "Hijack Implant"
|
||||
@@ -70,7 +70,7 @@
|
||||
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/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/implants/macrobomb
|
||||
name = "Macrobomb Implant"
|
||||
@@ -78,7 +78,7 @@
|
||||
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, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
restricted = TRUE
|
||||
|
||||
/datum/uplink_item/implants/reviver
|
||||
@@ -86,7 +86,7 @@
|
||||
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
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/implants/stealthimplant
|
||||
name = "Stealth Implant"
|
||||
@@ -107,7 +107,7 @@
|
||||
desc = "These cybernetic eyes will give you thermal vision. Comes with a free autosurgeon."
|
||||
item = /obj/item/autosurgeon/thermal_eyes
|
||||
cost = 8
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/implants/uplink
|
||||
name = "Uplink Implant"
|
||||
@@ -125,4 +125,4 @@
|
||||
item = /obj/item/autosurgeon/xray_eyes
|
||||
cost = 10
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
item = /obj/item/gun/blastcannon
|
||||
cost = 14 //High cost because of the potential for extreme damage in the hands of a skilled gas masked scientist.
|
||||
restricted_roles = list("Research Director", "Scientist")
|
||||
exclude_modes = list(/datum/game_mode/traitor/internal_affairs)
|
||||
|
||||
/datum/uplink_item/role_restricted/alientech
|
||||
name = "Alien Research Disk"
|
||||
@@ -99,7 +98,6 @@
|
||||
player_minimum = 20
|
||||
refundable = TRUE
|
||||
restricted_roles = list("Chaplain")
|
||||
exclude_modes = list(/datum/game_mode/traitor/internal_affairs)
|
||||
|
||||
/datum/uplink_item/role_restricted/arcane_tome
|
||||
name = "Arcane Tome"
|
||||
@@ -109,7 +107,6 @@
|
||||
player_minimum = 20
|
||||
refundable = TRUE
|
||||
restricted_roles = list("Chaplain")
|
||||
exclude_modes = list(/datum/game_mode/traitor/internal_affairs)
|
||||
|
||||
/datum/uplink_item/role_restricted/explosive_hot_potato
|
||||
name = "Exploding Hot Potato"
|
||||
|
||||
@@ -19,14 +19,14 @@
|
||||
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)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_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
|
||||
include_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS
|
||||
cost = 13
|
||||
surplus = 0
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
name = "Antique Derringer"
|
||||
desc = "An easy to conceal, yet extremely deadly handgun, capable of firing .45-70 Govt rounds. Comes in a unique pack of cigarettes with additional munitions."
|
||||
item = /obj/item/storage/fancy/cigarettes/derringer/midworld
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
cost = 10
|
||||
surplus = 2
|
||||
|
||||
@@ -79,7 +79,7 @@
|
||||
cost = 17
|
||||
player_minimum = 20
|
||||
surplus = 0
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/stealthy_weapons/martialartstwo
|
||||
name = "Rising Bass Scroll"
|
||||
@@ -89,7 +89,7 @@
|
||||
cost = 18
|
||||
player_minimum = 20
|
||||
surplus = 0
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/stealthy_weapons/martialartsthree
|
||||
name = "Krav Maga Scroll"
|
||||
@@ -99,7 +99,6 @@
|
||||
cost = 16
|
||||
player_minimum = 25
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/traitor/internal_affairs)
|
||||
|
||||
/datum/uplink_item/stealthy_weapons/crossbow
|
||||
name = "Miniature Energy Crossbow"
|
||||
@@ -112,7 +111,7 @@
|
||||
item = /obj/item/gun/energy/kinetic_accelerator/crossbow
|
||||
cost = 12
|
||||
surplus = 50
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/stealthy_weapons/traitor_chem_bottle
|
||||
name = "Poison Kit"
|
||||
@@ -130,7 +129,7 @@
|
||||
cost = 25
|
||||
player_minimum = 25
|
||||
cant_discount = TRUE
|
||||
exclude_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = ~UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/stealthy_weapons/sleepy_pen
|
||||
name = "Sleepy Pen"
|
||||
@@ -140,14 +139,14 @@
|
||||
falls asleep, they will be able to move and act."
|
||||
item = /obj/item/pen/sleepy
|
||||
cost = 4
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/stealthy_weapons/taeclowndo_shoes
|
||||
name = "Tae-clown-do Shoes"
|
||||
desc = "A pair of shoes for the most elite agents of the honkmotherland. They grant the mastery of taeclowndo with some honk-fu moves as long as they're worn."
|
||||
cost = 12
|
||||
item = /obj/item/clothing/shoes/clown_shoes/taeclowndo
|
||||
include_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/stealthy_weapons/suppressor
|
||||
name = "Suppressor"
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
Due to budget cuts, the shoes don't provide protection against slipping."
|
||||
item = /obj/item/storage/box/syndie_kit/chameleon
|
||||
cost = 2
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/stealthy_tools/chameleon_proj
|
||||
name = "Chameleon Projector"
|
||||
@@ -57,7 +57,7 @@
|
||||
item = /obj/item/clothing/shoes/clown_shoes/banana_shoes/combat
|
||||
cost = 6
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/stealthy_tools/emplight
|
||||
name = "EMP Flashlight"
|
||||
@@ -75,7 +75,7 @@
|
||||
cost = 1
|
||||
surplus = 0
|
||||
restricted = TRUE
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/stealthy_tools/failsafe/spawn_item(spawn_path, mob/user, datum/component/uplink/U)
|
||||
if(!U)
|
||||
@@ -93,7 +93,7 @@
|
||||
item = /obj/item/reagent_containers/syringe/mulligan
|
||||
cost = 3
|
||||
surplus = 30
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/stealthy_tools/syndigaloshes
|
||||
name = "No-Slip Chameleon Shoes"
|
||||
@@ -101,13 +101,12 @@
|
||||
They do not work on heavily lubricated surfaces."
|
||||
item = /obj/item/clothing/shoes/chameleon/noslip
|
||||
cost = 2
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/nuclear/clown_ops)
|
||||
purchasable_from = ~(UPLINK_NUKE_OPS | UPLINK_CLOWN_OPS)
|
||||
|
||||
/datum/uplink_item/stealthy_tools/syndigaloshes/nuke
|
||||
item = /obj/item/clothing/shoes/chameleon/noslip
|
||||
cost = 4
|
||||
exclude_modes = list()
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
|
||||
/datum/uplink_item/stealthy_tools/jammer
|
||||
name = "Radio Jammer"
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
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)
|
||||
purchasable_from = UPLINK_CLOWN_OPS
|
||||
restricted = TRUE
|
||||
|
||||
/datum/uplink_item/support/reinforcement
|
||||
@@ -22,7 +22,7 @@
|
||||
item = /obj/item/antag_spawner/nuke_ops
|
||||
cost = 25
|
||||
refundable = TRUE
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
purchasable_from = UPLINK_NUKE_OPS
|
||||
restricted = TRUE
|
||||
|
||||
/datum/uplink_item/support/reinforcement/assault_borg
|
||||
@@ -66,7 +66,7 @@
|
||||
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)
|
||||
purchasable_from = UPLINK_CLOWN_OPS
|
||||
|
||||
/datum/uplink_item/support/mauler
|
||||
name = "Mauler Exosuit"
|
||||
|
||||
@@ -1,8 +1,8 @@
|
||||
GLOBAL_LIST(uplink_purchase_logs_by_key) //assoc key = /datum/uplink_purchase_log
|
||||
GLOBAL_LIST(uplink_purchase_logs_by_key) //assoc key = /datum/uplink_purchase_log
|
||||
|
||||
/datum/uplink_purchase_log
|
||||
var/owner
|
||||
var/list/purchase_log //assoc path-of-item = /datum/uplink_purchase_entry
|
||||
var/list/purchase_log //assoc path-of-item = /datum/uplink_purchase_entry
|
||||
var/total_spent = 0
|
||||
|
||||
/datum/uplink_purchase_log/New(_owner, datum/component/uplink/_parent)
|
||||
|
||||
Reference in New Issue
Block a user