Revert "12/21 modernizations from TG live"
This commit is contained in:
@@ -13,7 +13,7 @@ var/global/list/uplinks = list()
|
||||
var/active = FALSE
|
||||
var/lockable = TRUE
|
||||
var/telecrystals = 20
|
||||
var/selected_cat = null
|
||||
|
||||
var/owner = null
|
||||
var/datum/game_mode/gamemode = null
|
||||
var/spent_telecrystals = 0
|
||||
@@ -27,28 +27,6 @@ var/global/list/uplinks = list()
|
||||
uplinks -= src
|
||||
return ..()
|
||||
|
||||
/obj/item/device/uplink/attackby(obj/item/I, mob/user, params)
|
||||
for(var/item in subtypesof(/datum/uplink_item))
|
||||
var/datum/uplink_item/UI = item
|
||||
var/path = null
|
||||
if(initial(UI.refund_path))
|
||||
path = initial(UI.refund_path)
|
||||
else
|
||||
path = initial(UI.item)
|
||||
var/cost = 0
|
||||
if(initial(UI.refund_amount))
|
||||
cost = initial(UI.refund_amount)
|
||||
else
|
||||
cost = initial(UI.cost)
|
||||
var/refundable = initial(UI.refundable)
|
||||
if(I.type == path && refundable && I.check_uplink_validity())
|
||||
telecrystals += cost
|
||||
spent_telecrystals -= cost
|
||||
user << "<span class='notice'>[I] refunded.</span>"
|
||||
qdel(I)
|
||||
return
|
||||
..()
|
||||
|
||||
/obj/item/device/uplink/interact(mob/user)
|
||||
active = TRUE
|
||||
ui_interact(user)
|
||||
@@ -68,24 +46,22 @@ var/global/list/uplinks = list()
|
||||
data["lockable"] = lockable
|
||||
|
||||
var/list/uplink_items = get_uplink_items(gamemode)
|
||||
|
||||
data["categories"] = list()
|
||||
for(var/category in uplink_items)
|
||||
var/list/cat = list(
|
||||
"name" = category,
|
||||
"items" = (category == selected_cat ? list() : null))
|
||||
if(category == selected_cat)
|
||||
for(var/item in uplink_items[category])
|
||||
var/datum/uplink_item/I = uplink_items[category][item]
|
||||
cat["items"] += list(list(
|
||||
"name" = I.name,
|
||||
"cost" = I.cost,
|
||||
"desc" = I.desc,
|
||||
))
|
||||
"items" = list(),
|
||||
)
|
||||
for(var/item in uplink_items[category])
|
||||
var/datum/uplink_item/I = uplink_items[category][item]
|
||||
cat["items"] += list(list(
|
||||
"name" = I.name,
|
||||
"cost" = I.cost,
|
||||
"desc" = I.desc,
|
||||
))
|
||||
data["categories"] += list(cat)
|
||||
return data
|
||||
|
||||
|
||||
/obj/item/device/uplink/ui_act(action, params)
|
||||
if(!active)
|
||||
return
|
||||
@@ -106,9 +82,6 @@ var/global/list/uplinks = list()
|
||||
if("lock")
|
||||
active = FALSE
|
||||
SStgui.close_uis(src)
|
||||
if("select")
|
||||
selected_cat = params["category"]
|
||||
return 1
|
||||
|
||||
|
||||
/obj/item/device/uplink/ui_host()
|
||||
@@ -116,7 +89,18 @@ var/global/list/uplinks = list()
|
||||
|
||||
// Refund certain items by hitting the uplink with it.
|
||||
/obj/item/device/radio/uplink/attackby(obj/item/I, mob/user, params)
|
||||
return hidden_uplink.attackby(I, user, params)
|
||||
for(var/item in subtypesof(/datum/uplink_item))
|
||||
var/datum/uplink_item/UI = item
|
||||
var/path = initial(UI.item)
|
||||
var/cost = initial(UI.cost)
|
||||
var/refundable = initial(UI.refundable)
|
||||
if(I.type == path && refundable)
|
||||
hidden_uplink.telecrystals += cost
|
||||
hidden_uplink.spent_telecrystals -= cost
|
||||
user << "<span class='notice'>[I] refunded.</span>"
|
||||
qdel(I)
|
||||
return
|
||||
..()
|
||||
|
||||
// A collection of pre-set uplinks, for admin spawns.
|
||||
/obj/item/device/radio/uplink/New()
|
||||
|
||||
@@ -44,9 +44,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
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/list/include_modes = list() // Game modes to allow this item in.
|
||||
@@ -140,13 +138,13 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
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/weapon/gun/ballistic/automatic/pistol
|
||||
item = /obj/item/weapon/gun/projectile/automatic/pistol
|
||||
cost = 7
|
||||
|
||||
/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/weapon/gun/ballistic/revolver
|
||||
item = /obj/item/weapon/gun/projectile/revolver
|
||||
cost = 13
|
||||
surplus = 50
|
||||
|
||||
@@ -154,7 +152,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
name = "Bulldog Shotgun"
|
||||
desc = "A fully-loaded semi-automatic drum-fed shotgun. Compatiable with all 12g rounds. Designed for close \
|
||||
quarter anti-personel engagements."
|
||||
item = /obj/item/weapon/gun/ballistic/automatic/shotgun/bulldog
|
||||
item = /obj/item/weapon/gun/projectile/automatic/shotgun/bulldog
|
||||
cost = 8
|
||||
surplus = 40
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
@@ -163,20 +161,20 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
name = "C-20r Submachine Gun"
|
||||
desc = "A fully-loaded Scarborough Arms bullpup submachine gun. The C-20r fires .45 rounds with a \
|
||||
20-round magazine and is compatible with suppressors."
|
||||
item = /obj/item/weapon/gun/ballistic/automatic/c20r
|
||||
item = /obj/item/weapon/gun/projectile/automatic/c20r
|
||||
cost = 10
|
||||
surplus = 40
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
|
||||
/datum/uplink_item/dangerous/smg/unrestricted
|
||||
item = /obj/item/weapon/gun/ballistic/automatic/c20r/unrestricted
|
||||
item = /obj/item/weapon/gun/projectile/automatic/c20r/unrestricted
|
||||
include_modes = list(/datum/game_mode/gang)
|
||||
|
||||
/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 5.56x45mm ammunition."
|
||||
item = /obj/item/weapon/gun/ballistic/automatic/l6_saw
|
||||
item = /obj/item/weapon/gun/projectile/automatic/l6_saw
|
||||
cost = 18
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
@@ -192,7 +190,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
/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/weapon/gun/ballistic/automatic/sniper_rifle/syndicate
|
||||
item = /obj/item/weapon/gun/projectile/automatic/sniper_rifle/syndicate
|
||||
cost = 16
|
||||
surplus = 25
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
@@ -200,7 +198,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
/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/weapon/gun/ballistic/shotgun/boltaction
|
||||
item = /obj/item/weapon/gun/projectile/shotgun/boltaction
|
||||
cost = 2
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
|
||||
@@ -261,7 +259,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
/datum/uplink_item/dangerous/foamsmg
|
||||
name = "Toy Submachine Gun"
|
||||
desc = "A fully-loaded Donksoft bullpup submachine gun that fires riot grade rounds with a 20-round magazine."
|
||||
item = /obj/item/weapon/gun/ballistic/automatic/c20r/toy
|
||||
item = /obj/item/weapon/gun/projectile/automatic/c20r/toy
|
||||
cost = 5
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
@@ -270,7 +268,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
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/weapon/gun/ballistic/automatic/l6_saw/toy
|
||||
item = /obj/item/weapon/gun/projectile/automatic/l6_saw/toy
|
||||
cost = 10
|
||||
surplus = 0
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
@@ -321,29 +319,11 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
|
||||
/datum/uplink_item/ammo/pistol
|
||||
name = "10mm Handgun Magazine"
|
||||
desc = "An additional 8-round 10mm magazine; compatible with the Stechkin Pistol. These rounds \
|
||||
desc = "An additional 8-round 10mm magazine; compatible with the Stechkin Pistol. These subsonic rounds \
|
||||
are dirt cheap but are half as effective as .357 rounds."
|
||||
item = /obj/item/ammo_box/magazine/m10mm
|
||||
cost = 1
|
||||
|
||||
/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 = 2
|
||||
|
||||
/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 ignite the target."
|
||||
item = /obj/item/ammo_box/magazine/m10mm/fire
|
||||
cost = 2
|
||||
|
||||
/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 = 3
|
||||
|
||||
/datum/uplink_item/ammo/bolt_action
|
||||
name = "Surplus Rifle Clip"
|
||||
desc = "A stripper clip used to quickly load bolt action rifles. Contains 5 rounds."
|
||||
@@ -539,23 +519,14 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
deflecting all ranged weapon fire, but you also refuse to use dishonorable ranged weaponry."
|
||||
item = /obj/item/weapon/sleeping_carp_scroll
|
||||
cost = 17
|
||||
surplus = 0
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/gang)
|
||||
|
||||
/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/weapon/cqc_manual
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
cost = 13
|
||||
surplus = 0
|
||||
|
||||
/datum/uplink_item/stealthy_weapons/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/weapon/storage/box/syndie_kit/throwing_weapons
|
||||
cost = 3
|
||||
cost = 5
|
||||
|
||||
/datum/uplink_item/stealthy_weapons/edagger
|
||||
name = "Energy Dagger"
|
||||
@@ -567,7 +538,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
name = "Toy Gun 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/weapon/gun/ballistic/automatic/toy/pistol/riot
|
||||
item = /obj/item/weapon/gun/projectile/automatic/toy/pistol/riot
|
||||
cost = 3
|
||||
surplus = 10
|
||||
exclude_modes = list(/datum/game_mode/gang)
|
||||
@@ -653,6 +624,16 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
surplus = 10
|
||||
exclude_modes = list(/datum/game_mode/nuclear)
|
||||
|
||||
/datum/uplink_item/stealthy_weapons/boobytrap
|
||||
name = "Booby Trap"
|
||||
desc = "A small explosive device that can be attached to boxes or closets. \
|
||||
The next person to open the box or closet will trigger an explosion \
|
||||
that knocks them down and destroys the boobytrapped object."
|
||||
item = /obj/item/device/boobytrap
|
||||
cost = 4
|
||||
surplus = 10
|
||||
exclude_modes = list(/datum/game_mode/nuclear)
|
||||
|
||||
// Stealth Items
|
||||
/datum/uplink_item/stealthy_tools
|
||||
category = "Stealth and Camouflage Items"
|
||||
@@ -716,9 +697,8 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
/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 and a floor tile inside. Properly hidden satchels have been \
|
||||
known to survive intact even beyond the current shift. "
|
||||
item = /obj/item/weapon/storage/backpack/satchel/flat
|
||||
your stolen goods. Comes with a crowbar and a floor tile inside."
|
||||
item = /obj/item/weapon/storage/backpack/satchel_flat
|
||||
cost = 2
|
||||
surplus = 30
|
||||
|
||||
@@ -754,14 +734,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
item = /obj/item/weapon/storage/box/syndie_kit/cutouts
|
||||
cost = 1
|
||||
surplus = 20
|
||||
|
||||
/datum/uplink_item/stealthy_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. Don't try to give this to us to complete your objective, we know better!"
|
||||
item = /obj/item/weapon/disk/fakenucleardisk
|
||||
cost = 1
|
||||
surplus = 1
|
||||
|
||||
|
||||
//Space Suits and Hardsuits
|
||||
/datum/uplink_item/suits
|
||||
category = "Space Suits and Hardsuits"
|
||||
@@ -872,6 +845,12 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
cost = 2
|
||||
surplus = 75
|
||||
|
||||
/datum/uplink_item/device_tools/selfdestruct_firingpin
|
||||
name = "Trick Firing Pin"
|
||||
desc = "This pin will detonate the weapon it is put into upon trying to use it"
|
||||
item = /obj/item/device/firing_pin/trick
|
||||
cost = 4
|
||||
|
||||
/datum/uplink_item/device_tools/ai_detector
|
||||
name = "Artificial Intelligence Detector"
|
||||
desc = "A functional multitool that turns red when it detects an artificial intelligence watching it or its \
|
||||
@@ -895,6 +874,13 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
cost = 2
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
|
||||
/datum/uplink_item/device_tools/thermitespray
|
||||
name = "Thermite Kit"
|
||||
desc = "A boxed zippo and 50u spray bottle filled with thermite, specially designed for spraying walls. \
|
||||
50u is enough thermite to spray 5 walls."
|
||||
item = /obj/item/weapon/storage/box/syndie_kit/thermite
|
||||
cost = 3
|
||||
|
||||
/datum/uplink_item/device_tools/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 \
|
||||
@@ -995,13 +981,6 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
cost = 4
|
||||
include_modes = list(/datum/game_mode/nuclear)
|
||||
|
||||
/datum/uplink_item/device_tools/telecrystal
|
||||
name = "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
|
||||
surplus = 0
|
||||
|
||||
// Implants
|
||||
/datum/uplink_item/implants
|
||||
category = "Implants"
|
||||
@@ -1153,7 +1132,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
exclude_modes = list(/datum/game_mode/nuclear, /datum/game_mode/gang)
|
||||
|
||||
/datum/uplink_item/badass/surplus/spawn_item(turf/loc, obj/item/device/uplink/U)
|
||||
var/list/uplink_items = get_uplink_items(ticker.mode)
|
||||
var/list/uplink_items = get_uplink_items()
|
||||
|
||||
var/crate_value = 50
|
||||
var/obj/structure/closet/crate/C = new(loc)
|
||||
@@ -1180,7 +1159,7 @@ var/list/uplink_items = list() // Global list so we only initialize this once.
|
||||
cost = 0
|
||||
|
||||
/datum/uplink_item/badass/random/spawn_item(turf/loc, obj/item/device/uplink/U)
|
||||
var/list/uplink_items = get_uplink_items(ticker.mode)
|
||||
var/list/uplink_items = get_uplink_items()
|
||||
var/list/possible_items = list()
|
||||
for(var/category in uplink_items)
|
||||
for(var/item in uplink_items[category])
|
||||
|
||||
Reference in New Issue
Block a user