mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-22 11:38:12 +01:00
Merge branch 'master' of https://github.com/PolarisSS13/Polaris into polaris-sync-2017-06-01
# Conflicts: # code/game/objects/structures/crates_lockers/closets/secure/security.dm # code/modules/multiz/movement.dm # code/modules/projectiles/ammunition/magazines.dm
This commit is contained in:
@@ -8,29 +8,29 @@
|
||||
|
||||
/datum/category_item/autolathe/arms/shotgun_blanks
|
||||
name = "ammunition (12g, blank)"
|
||||
path =/obj/item/ammo_casing/shotgun/blank
|
||||
path =/obj/item/ammo_casing/a12g/blank
|
||||
|
||||
/datum/category_item/autolathe/arms/shotgun_beanbag
|
||||
name = "ammunition (12g, beanbag)"
|
||||
path =/obj/item/ammo_casing/shotgun/beanbag
|
||||
path =/obj/item/ammo_casing/a12g/beanbag
|
||||
|
||||
/datum/category_item/autolathe/arms/shotgun_flash
|
||||
name = "ammunition (12g, flash)"
|
||||
path =/obj/item/ammo_casing/shotgun/flash
|
||||
path =/obj/item/ammo_casing/a12g/flash
|
||||
|
||||
/datum/category_item/autolathe/arms/shotgun
|
||||
name = "ammunition (12g, slug)"
|
||||
path =/obj/item/ammo_casing/shotgun
|
||||
path =/obj/item/ammo_casing/a12g
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/shotgun_pellet
|
||||
name = "ammunition (12g, pellet)"
|
||||
path =/obj/item/ammo_casing/shotgun/pellet
|
||||
path =/obj/item/ammo_casing/a12g/pellet
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/stunshell
|
||||
name = "ammunition (stun cartridge, shotgun)"
|
||||
path =/obj/item/ammo_casing/shotgun/stunshell
|
||||
path =/obj/item/ammo_casing/a12g/stunshell
|
||||
hidden = 1
|
||||
|
||||
//////////////////
|
||||
@@ -49,119 +49,119 @@
|
||||
/////// .45
|
||||
/datum/category_item/autolathe/arms/pistol_45
|
||||
name = "pistol magazine (.45)"
|
||||
path =/obj/item/ammo_magazine/c45m
|
||||
path =/obj/item/ammo_magazine/m45
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_45p
|
||||
name = "pistol magazine (.45 practice)"
|
||||
path =/obj/item/ammo_magazine/c45m/practice
|
||||
path =/obj/item/ammo_magazine/m45/practice
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_45r
|
||||
name = "pistol magazine (.45 rubber)"
|
||||
path =/obj/item/ammo_magazine/c45m/rubber
|
||||
path =/obj/item/ammo_magazine/m45/rubber
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_45f
|
||||
name = "pistol magazine (.45 flash)"
|
||||
path =/obj/item/ammo_magazine/c45m/flash
|
||||
path =/obj/item/ammo_magazine/m45/flash
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_45uzi
|
||||
name = "uzi magazine (.45)"
|
||||
path =/obj/item/ammo_magazine/c45uzi
|
||||
path =/obj/item/ammo_magazine/m45uzi
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/tommymag
|
||||
name = "Tommygun magazine (.45)"
|
||||
path =/obj/item/ammo_magazine/tommymag
|
||||
path =/obj/item/ammo_magazine/m45tommy
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/tommydrum
|
||||
name = "Tommygun drum magazine (.45)"
|
||||
path =/obj/item/ammo_magazine/tommydrum
|
||||
path =/obj/item/ammo_magazine/m45tommydrum
|
||||
hidden = 1
|
||||
|
||||
/////// 9mm
|
||||
|
||||
/obj/item/ammo_magazine/mc9mm/flash
|
||||
ammo_type =/obj/item/ammo_casing/c9mmf
|
||||
/obj/item/ammo_magazine/m9mm/flash
|
||||
ammo_type =/obj/item/ammo_casing/a9mmf
|
||||
|
||||
/obj/item/ammo_magazine/mc9mm/rubber
|
||||
/obj/item/ammo_magazine/m9mm/rubber
|
||||
name = "magazine (9mm rubber)"
|
||||
ammo_type =/obj/item/ammo_casing/c9mmr
|
||||
ammo_type =/obj/item/ammo_casing/a9mmr
|
||||
|
||||
/obj/item/ammo_magazine/mc9mm/practice
|
||||
/obj/item/ammo_magazine/m9mm/practice
|
||||
name = "magazine (9mm practice)"
|
||||
ammo_type =/obj/item/ammo_casing/c9mmp
|
||||
ammo_type =/obj/item/ammo_casing/a9mmp
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_9mm
|
||||
name = "pistol magazine (9mm)"
|
||||
path =/obj/item/ammo_magazine/mc9mm
|
||||
path =/obj/item/ammo_magazine/m9mm
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_9mmr
|
||||
name = "pistol magazine (9mm rubber)"
|
||||
path =/obj/item/ammo_magazine/mc9mm/rubber
|
||||
path =/obj/item/ammo_magazine/m9mm/rubber
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_9mmp
|
||||
name = "pistol magazine (9mm practice)"
|
||||
path =/obj/item/ammo_magazine/mc9mm/practice
|
||||
path =/obj/item/ammo_magazine/m9mm/practice
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_9mmf
|
||||
name = "pistol magazine (9mm flash)"
|
||||
path =/obj/item/ammo_magazine/mc9mm/flash
|
||||
path =/obj/item/ammo_magazine/m9mm/flash
|
||||
|
||||
/datum/category_item/autolathe/arms/smg_9mm
|
||||
name = "top-mounted SMG magazine (9mm)"
|
||||
path =/obj/item/ammo_magazine/mc9mmt
|
||||
path =/obj/item/ammo_magazine/m9mmt
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/smg_9mmr
|
||||
name = "top-mounted SMG magazine (9mm rubber)"
|
||||
path =/obj/item/ammo_magazine/mc9mmt/rubber
|
||||
path =/obj/item/ammo_magazine/m9mmt/rubber
|
||||
|
||||
/datum/category_item/autolathe/arms/smg_9mmp
|
||||
name = "top-mounted SMG magazine (9mm practice)"
|
||||
path =/obj/item/ammo_magazine/mc9mmt/practice
|
||||
path =/obj/item/ammo_magazine/m9mmt/practice
|
||||
|
||||
/datum/category_item/autolathe/arms/smg_9mmf
|
||||
name = "top-mounted SMG magazine (9mm flash)"
|
||||
path =/obj/item/ammo_magazine/mc9mmt/flash
|
||||
path =/obj/item/ammo_magazine/m9mmt/flash
|
||||
|
||||
/////// 10mm
|
||||
/datum/category_item/autolathe/arms/smg_10mm
|
||||
name = "SMG magazine (10mm)"
|
||||
path =/obj/item/ammo_magazine/a10mm
|
||||
path =/obj/item/ammo_magazine/m10mm
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_50
|
||||
name = "pistol magazine (.50AE)"
|
||||
path =/obj/item/ammo_magazine/a50
|
||||
path =/obj/item/ammo_magazine/m50
|
||||
hidden = 1
|
||||
|
||||
/////// 5.56mm
|
||||
/datum/category_item/autolathe/arms/rifle_556
|
||||
name = "rifle magazine (5.56mm)"
|
||||
path =/obj/item/ammo_magazine/c556
|
||||
path =/obj/item/ammo_magazine/m556
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/rifle_556p
|
||||
name = "rifle magazine (5.56mm practice)"
|
||||
path =/obj/item/ammo_magazine/c556/practice
|
||||
path =/obj/item/ammo_magazine/m556/practice
|
||||
|
||||
/datum/category_item/autolathe/arms/machinegun_556
|
||||
name = "machinegun box magazine (5.56)"
|
||||
path =/obj/item/ammo_magazine/a556
|
||||
path =/obj/item/ammo_magazine/m556saw
|
||||
hidden = 1
|
||||
/////// 7.62
|
||||
|
||||
|
||||
/datum/category_item/autolathe/arms/rifle_762
|
||||
name = "rifle magazine (7.62mm)"
|
||||
path =/obj/item/ammo_magazine/c762
|
||||
path =/obj/item/ammo_magazine/m762
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/shotgun_magazine
|
||||
name = "24rnd shotgun magazine (12g)"
|
||||
path =/obj/item/ammo_magazine/g12
|
||||
path =/obj/item/ammo_magazine/m12gdrum
|
||||
hidden = 1
|
||||
|
||||
/*
|
||||
@@ -188,57 +188,57 @@
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_45
|
||||
name = "pistol magazine (.45)"
|
||||
path =/obj/item/ammo_magazine/c45m/empty
|
||||
path =/obj/item/ammo_magazine/m45/empty
|
||||
category = "Arms and Ammunition"
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_45uzi
|
||||
name = "uzi magazine (.45)"
|
||||
path =/obj/item/ammo_magazine/c45uzi/empty
|
||||
path =/obj/item/ammo_magazine/m45uzi/empty
|
||||
category = "Arms and Ammunition"
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/tommymag
|
||||
name = "Tommygun magazine (.45)"
|
||||
path =/obj/item/ammo_magazine/tommymag/empty
|
||||
path =/obj/item/ammo_magazine/m45tommy/empty
|
||||
category = "Arms and Ammunition"
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/tommydrum
|
||||
name = "Tommygun drum magazine (.45)"
|
||||
path =/obj/item/ammo_magazine/tommydrum/empty
|
||||
path =/obj/item/ammo_magazine/m45tommydrum/empty
|
||||
category = "Arms and Ammunition"
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_9mm
|
||||
name = "pistol magazine (9mm)"
|
||||
path =/obj/item/ammo_magazine/mc9mm/empty
|
||||
path =/obj/item/ammo_magazine/m9mm/empty
|
||||
category = "Arms and Ammunition"
|
||||
|
||||
/datum/category_item/autolathe/arms/smg_9mm
|
||||
name = "top-mounted SMG magazine (9mm)"
|
||||
path =/obj/item/ammo_magazine/mc9mmt/empty
|
||||
path =/obj/item/ammo_magazine/m9mmt/empty
|
||||
category = "Arms and Ammunition"
|
||||
|
||||
/datum/category_item/autolathe/arms/smg_10mm
|
||||
name = "SMG magazine (10mm)"
|
||||
path =/obj/item/ammo_magazine/a10mm/empty
|
||||
path =/obj/item/ammo_magazine/m10mm/empty
|
||||
category = "Arms and Ammunition"
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_50
|
||||
name = "pistol magazine (.50AE)"
|
||||
path =/obj/item/ammo_magazine/a50/empty
|
||||
path =/obj/item/ammo_magazine/m50/empty
|
||||
category = "Arms and Ammunition"
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/rifle_556
|
||||
name = "10rnd rifle magazine (5.56mm)"
|
||||
path =/obj/item/ammo_magazine/a556/empty
|
||||
path =/obj/item/ammo_magazine/m556saw/empty
|
||||
category = "Arms and Ammunition"
|
||||
|
||||
/datum/category_item/autolathe/arms/rifle_556m
|
||||
name = "20rnd rifle magazine (5.56mm)"
|
||||
path =/obj/item/ammo_magazine/a556m/empty
|
||||
path =/obj/item/ammo_magazine/m556sawm/empty
|
||||
category = "Arms and Ammunition"
|
||||
hidden = 1
|
||||
|
||||
@@ -250,7 +250,7 @@
|
||||
|
||||
/datum/category_item/autolathe/arms/rifle_762
|
||||
name = "20rnd rifle magazine (7.62mm)"
|
||||
path =/obj/item/ammo_magazine/c762/empty
|
||||
path =/obj/item/ammo_magazine/m762/empty
|
||||
category = "Arms and Ammunition"
|
||||
hidden = 1
|
||||
|
||||
@@ -262,7 +262,7 @@
|
||||
|
||||
/datum/category_item/autolathe/arms/shotgun_magazine
|
||||
name = "24rnd shotgun magazine (12g)"
|
||||
path =/obj/item/ammo_magazine/g12/empty
|
||||
path =/obj/item/ammo_magazine/m12gdrum/empty
|
||||
category = "Arms and Ammunition"
|
||||
hidden = 1*/
|
||||
|
||||
@@ -272,17 +272,17 @@
|
||||
|
||||
/datum/category_item/autolathe/arms/speedloader_357
|
||||
name = "speedloader (.357)"
|
||||
path =/obj/item/ammo_magazine/a357
|
||||
path =/obj/item/ammo_magazine/s357
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/speedloader_38
|
||||
name = "speedloader (.38)"
|
||||
path =/obj/item/ammo_magazine/c38
|
||||
path =/obj/item/ammo_magazine/s38
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/speedloader_38r
|
||||
name = "speedloader (.38 rubber)"
|
||||
path =/obj/item/ammo_magazine/c38/rubber
|
||||
path =/obj/item/ammo_magazine/s38/rubber
|
||||
|
||||
// Commented out until metal exploits with autolathe is fixed.
|
||||
/*/datum/category_item/autolathe/arms/pistol_clip_45
|
||||
@@ -335,35 +335,35 @@
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_clip_10mm
|
||||
name = "ammo clip (10mm)"
|
||||
path =/obj/item/ammo_magazine/clip/a10mm
|
||||
path =/obj/item/ammo_magazine/clip/c10mm
|
||||
category = "Arms and Ammunition"
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/pistol_clip_50
|
||||
name = "ammo clip (.50AE)"
|
||||
path =/obj/item/ammo_magazine/clip/a50
|
||||
path =/obj/item/ammo_magazine/clip/c50
|
||||
category = "Arms and Ammunition"
|
||||
hidden = 1
|
||||
*/
|
||||
/datum/category_item/autolathe/arms/rifle_clip_556
|
||||
name = "ammo clip (5.56mm)"
|
||||
path =/obj/item/ammo_magazine/clip/a556
|
||||
path =/obj/item/ammo_magazine/clip/c556
|
||||
category = "Arms and Ammunition"
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/rifle_clip_556_practice
|
||||
name = "ammo clip (5.56mm practice)"
|
||||
path =/obj/item/ammo_magazine/clip/a556/practice
|
||||
path =/obj/item/ammo_magazine/clip/c556/practice
|
||||
category = "Arms and Ammunition"
|
||||
|
||||
/datum/category_item/autolathe/arms/rifle_clip_762
|
||||
name = "ammo clip (7.62mm)"
|
||||
path =/obj/item/ammo_magazine/clip/a762
|
||||
path =/obj/item/ammo_magazine/clip/c762
|
||||
hidden = 1
|
||||
|
||||
/datum/category_item/autolathe/arms/rifle_clip_762_practice
|
||||
name = "ammo clip (7.62mm practice)"
|
||||
path =/obj/item/ammo_magazine/clip/a762/practice
|
||||
path =/obj/item/ammo_magazine/clip/c762/practice
|
||||
|
||||
/datum/category_item/autolathe/arms/knuckledusters
|
||||
name = "knuckle dusters"
|
||||
|
||||
@@ -0,0 +1,139 @@
|
||||
var/global/repository/radiation/radiation_repository = new()
|
||||
|
||||
/repository/radiation
|
||||
var/list/sources = list() // all radiation source datums
|
||||
var/list/sources_assoc = list() // Sources indexed by turf for de-duplication.
|
||||
var/list/resistance_cache = list() // Cache of turf's radiation resistance.
|
||||
|
||||
// Describes a point source of radiation. Created either in response to a pulse of radiation, or over an irradiated atom.
|
||||
// Sources will decay over time, unless something is renewing their power!
|
||||
/datum/radiation_source
|
||||
var/turf/source_turf // Location of the radiation source.
|
||||
var/rad_power // Strength of the radiation being emitted.
|
||||
var/decay = TRUE // True for automatic decay. False if owner promises to handle it (i.e. supermatter)
|
||||
var/respect_maint = FALSE // True for not affecting RAD_SHIELDED areas.
|
||||
var/flat = FALSE // True for power falloff with distance.
|
||||
var/range // Cached maximum range, used for quick checks against mobs.
|
||||
|
||||
/datum/radiation_source/Destroy()
|
||||
radiation_repository.sources -= src
|
||||
if(radiation_repository.sources_assoc[src.source_turf] == src)
|
||||
radiation_repository.sources -= src.source_turf
|
||||
src.source_turf = null
|
||||
. = ..()
|
||||
|
||||
// TEMPORARY HACK - hard del()'ing sources is too expensive! Until we implement qdel() hints we need to override behavior here
|
||||
/datum/radiation_source/finalize_qdel()
|
||||
if(garbage_collector)
|
||||
garbage_collector.AddTrash(src)
|
||||
else
|
||||
delayed_garbage |= src
|
||||
// TEMPORARY HACK END
|
||||
|
||||
/datum/radiation_source/proc/update_rad_power(var/new_power = null)
|
||||
if(new_power != null && new_power != rad_power)
|
||||
rad_power = new_power
|
||||
. = 1
|
||||
if(. && !flat)
|
||||
range = min(round(sqrt(rad_power / config.radiation_lower_limit)), 31) // R = rad_power / dist**2 - Solve for dist
|
||||
|
||||
// Ray trace from all active radiation sources to T and return the strongest effect.
|
||||
/repository/radiation/proc/get_rads_at_turf(var/turf/T)
|
||||
if(!istype(T)) return 0
|
||||
|
||||
. = 0
|
||||
for(var/value in sources)
|
||||
var/datum/radiation_source/source = value
|
||||
if(source.rad_power < .)
|
||||
continue // Already being affected by a stronger source
|
||||
var/dist = get_dist(source.source_turf, T)
|
||||
if(dist > source.range)
|
||||
continue // Too far to possibly affect
|
||||
if(source.respect_maint)
|
||||
var/atom/A = T.loc
|
||||
if(A.flags & RAD_SHIELDED)
|
||||
continue // In shielded area
|
||||
if(source.flat)
|
||||
. = max(., source.rad_power)
|
||||
continue // No need to ray trace for flat field
|
||||
|
||||
// Okay, now ray trace to find resistence!
|
||||
var/turf/origin = source.source_turf
|
||||
var/working = source.rad_power
|
||||
while(origin != T)
|
||||
origin = get_step_towards(origin, T) //Raytracing
|
||||
if(!(origin in resistance_cache)) //Only get the resistance if we don't already know it.
|
||||
origin.calc_rad_resistance()
|
||||
working = max((working - (origin.cached_rad_resistance * config.radiation_resistance_multiplier)), 0)
|
||||
if(working <= .)
|
||||
break // Already affected by a stronger source (or its zero...)
|
||||
. = max((working * (1 / (dist ** 2))), .) //Butchered version of the inverse square law. Works for this purpose
|
||||
|
||||
// Add a radiation source instance to the repository. It will override any existing source on the same turf.
|
||||
/repository/radiation/proc/add_source(var/datum/radiation_source/S)
|
||||
var/datum/radiation_source/existing = sources_assoc[S.source_turf]
|
||||
if(existing)
|
||||
qdel(existing)
|
||||
sources += S
|
||||
sources_assoc[S.source_turf] = S
|
||||
|
||||
// Creates a temporary radiation source that will decay
|
||||
/repository/radiation/proc/radiate(source, power) //Sends out a radiation pulse, taking walls into account
|
||||
if(!(source && power)) //Sanity checking
|
||||
return
|
||||
var/datum/radiation_source/S = new()
|
||||
S.source_turf = get_turf(source)
|
||||
S.update_rad_power(power)
|
||||
add_source(S)
|
||||
|
||||
// Sets the radiation in a range to a constant value.
|
||||
/repository/radiation/proc/flat_radiate(source, power, range, var/respect_maint = FALSE)
|
||||
if(!(source && power && range))
|
||||
return
|
||||
var/datum/radiation_source/S = new()
|
||||
S.flat = TRUE
|
||||
S.range = range
|
||||
S.respect_maint = respect_maint
|
||||
S.source_turf = get_turf(source)
|
||||
S.update_rad_power(power)
|
||||
add_source(S)
|
||||
|
||||
// Irradiates a full Z-level. Hacky way of doing it, but not too expensive.
|
||||
/repository/radiation/proc/z_radiate(var/atom/source, power, var/respect_maint = FALSE)
|
||||
if(!(power && source))
|
||||
return
|
||||
var/turf/epicentre = locate(round(world.maxx / 2), round(world.maxy / 2), source.z)
|
||||
flat_radiate(epicentre, power, world.maxx, respect_maint)
|
||||
|
||||
/turf
|
||||
var/cached_rad_resistance = 0
|
||||
|
||||
/turf/proc/calc_rad_resistance()
|
||||
cached_rad_resistance = 0
|
||||
for(var/obj/O in src.contents)
|
||||
if(O.rad_resistance) //Override
|
||||
cached_rad_resistance += O.rad_resistance
|
||||
|
||||
else if(O.density) //So open doors don't get counted
|
||||
var/material/M = O.get_material()
|
||||
if(!M) continue
|
||||
cached_rad_resistance += M.weight
|
||||
// Looks like storing the contents length is meant to be a basic check if the cache is stale due to items enter/exiting. Better than nothing so I'm leaving it as is. ~Leshana
|
||||
radiation_repository.resistance_cache[src] = (length(contents) + 1)
|
||||
|
||||
/turf/simulated/wall/calc_rad_resistance()
|
||||
radiation_repository.resistance_cache[src] = (length(contents) + 1)
|
||||
cached_rad_resistance = (density ? material.weight : 0)
|
||||
|
||||
/obj
|
||||
var/rad_resistance = 0 // Allow overriding rad resistance
|
||||
|
||||
// If people expand the system, this may be useful. Here as a placeholder until then
|
||||
/atom/proc/rad_act(var/severity)
|
||||
return 1
|
||||
|
||||
/mob/living/rad_act(var/severity)
|
||||
if(severity)
|
||||
src.apply_effect(severity, IRRADIATE, src.getarmor(null, "rad"))
|
||||
for(var/atom/I in src)
|
||||
I.rad_act(severity)
|
||||
@@ -47,7 +47,7 @@
|
||||
name = "Surplus militia rifles"
|
||||
contains = list(
|
||||
/obj/item/weapon/gun/projectile/shotgun/pump/rifle/mosin = 3,
|
||||
/obj/item/ammo_magazine/clip/a762 = 6
|
||||
/obj/item/ammo_magazine/clip/c762 = 6
|
||||
)
|
||||
cost = 50
|
||||
contraband = 1
|
||||
|
||||
@@ -27,7 +27,7 @@
|
||||
name = "Flare guns crate"
|
||||
contains = list(
|
||||
/obj/item/weapon/gun/projectile/sec/flash,
|
||||
/obj/item/ammo_magazine/c45m/flash,
|
||||
/obj/item/ammo_magazine/m45/flash,
|
||||
/obj/item/weapon/gun/projectile/shotgun/doublebarrel/flare,
|
||||
/obj/item/weapon/storage/box/flashshells
|
||||
)
|
||||
@@ -129,7 +129,7 @@
|
||||
contains = list(
|
||||
/obj/item/device/assembly/timer,
|
||||
/obj/item/weapon/gun/projectile/shotgun/pump/rifle/practice = 2,
|
||||
/obj/item/ammo_magazine/clip/a762/practice = 4,
|
||||
/obj/item/ammo_magazine/clip/c762/practice = 4,
|
||||
/obj/item/target = 2,
|
||||
/obj/item/target/alien = 2,
|
||||
/obj/item/target/syndicate = 2
|
||||
@@ -154,9 +154,9 @@
|
||||
name = "Automatic weapon ammunition crate"
|
||||
num_contained = 6
|
||||
contains = list(
|
||||
/obj/item/ammo_magazine/mc9mmt,
|
||||
/obj/item/ammo_magazine/mc9mmt/rubber,
|
||||
/obj/item/ammo_magazine/a556
|
||||
/obj/item/ammo_magazine/m9mmt,
|
||||
/obj/item/ammo_magazine/m9mmt/rubber,
|
||||
/obj/item/ammo_magazine/m556saw
|
||||
)
|
||||
cost = 25
|
||||
containertype = /obj/structure/closet/crate/secure
|
||||
|
||||
@@ -8,36 +8,36 @@
|
||||
|
||||
/datum/uplink_item/item/ammo/a357
|
||||
name = ".357 Speedloader"
|
||||
path = /obj/item/ammo_magazine/a357
|
||||
path = /obj/item/ammo_magazine/s357
|
||||
|
||||
/datum/uplink_item/item/ammo/mc9mm
|
||||
name = "Pistol Magazine (9mm)"
|
||||
path = /obj/item/ammo_magazine/mc9mm
|
||||
path = /obj/item/ammo_magazine/m9mm
|
||||
|
||||
/datum/uplink_item/item/ammo/c45m
|
||||
name = "Pistol Magazine (.45)"
|
||||
path = /obj/item/ammo_magazine/c45m
|
||||
path = /obj/item/ammo_magazine/m45
|
||||
|
||||
/datum/uplink_item/item/ammo/c45map
|
||||
name = "Pistol Magazine (.45 AP)"
|
||||
path = /obj/item/ammo_magazine/c45m/ap
|
||||
path = /obj/item/ammo_magazine/m45/ap
|
||||
|
||||
/datum/uplink_item/item/ammo/tommymag
|
||||
name = "Tommygun Magazine (.45)"
|
||||
path = /obj/item/ammo_magazine/tommymag
|
||||
path = /obj/item/ammo_magazine/m45tommy
|
||||
|
||||
/datum/uplink_item/item/ammo/tommymagap
|
||||
name = "Tommygun Magazine (.45 AP)"
|
||||
path = /obj/item/ammo_magazine/tommymag/ap
|
||||
path = /obj/item/ammo_magazine/m45tommy/ap
|
||||
|
||||
/datum/uplink_item/item/ammo/tommydrum
|
||||
name = "Tommygun Drum Magazine (.45)"
|
||||
path = /obj/item/ammo_magazine/tommydrum
|
||||
path = /obj/item/ammo_magazine/m45tommydrum
|
||||
item_cost = 40
|
||||
|
||||
/datum/uplink_item/item/ammo/tommydrumap
|
||||
name = "Tommygun Drum Magazine (.45 AP)"
|
||||
path = /obj/item/ammo_magazine/tommydrum/ap
|
||||
path = /obj/item/ammo_magazine/m45tommydrum/ap
|
||||
|
||||
/datum/uplink_item/item/ammo/darts
|
||||
name = "Darts"
|
||||
@@ -50,39 +50,39 @@
|
||||
|
||||
/datum/uplink_item/item/ammo/c556
|
||||
name = "Rifle Magazine (5.56mm)"
|
||||
path = /obj/item/ammo_magazine/c556
|
||||
path = /obj/item/ammo_magazine/m556
|
||||
|
||||
/datum/uplink_item/item/ammo/c556/ext
|
||||
name = "Rifle Magazine (5.56mm Extended)"
|
||||
path = /obj/item/ammo_magazine/c556/ext
|
||||
path = /obj/item/ammo_magazine/m556/ext
|
||||
|
||||
/datum/uplink_item/item/ammo/c556/ap
|
||||
name = "Rifle Magazine (5.56mm AP)"
|
||||
path = /obj/item/ammo_magazine/c556/ap
|
||||
path = /obj/item/ammo_magazine/m556/ap
|
||||
|
||||
/datum/uplink_item/item/ammo/c556/ap/ext
|
||||
name = "Rifle Magazine (5.56mm AP Extended)"
|
||||
path = /obj/item/ammo_magazine/c556/ap/ext
|
||||
path = /obj/item/ammo_magazine/m556/ap/ext
|
||||
|
||||
/datum/uplink_item/item/ammo/c762
|
||||
name = "Rifle Magazine (7.62mm)"
|
||||
path = /obj/item/ammo_magazine/c762
|
||||
path = /obj/item/ammo_magazine/m762
|
||||
|
||||
/datum/uplink_item/item/ammo/c762/ap
|
||||
name = "Rifle Magazine (7.62mm AP)"
|
||||
path = /obj/item/ammo_magazine/c762/ap
|
||||
path = /obj/item/ammo_magazine/m762/ap
|
||||
|
||||
/datum/uplink_item/item/ammo/a10mm
|
||||
name = "SMG Magazine (10mm)"
|
||||
path = /obj/item/ammo_magazine/a10mm
|
||||
path = /obj/item/ammo_magazine/m10mm
|
||||
|
||||
/datum/uplink_item/item/ammo/a556
|
||||
name = "Machinegun Magazine (5.56mm)"
|
||||
path = /obj/item/ammo_magazine/a556
|
||||
path = /obj/item/ammo_magazine/m556saw
|
||||
|
||||
/datum/uplink_item/item/ammo/a556/ap
|
||||
name = "Machinegun Magazine (5.56mm AP)"
|
||||
path = /obj/item/ammo_magazine/a556/ap
|
||||
path = /obj/item/ammo_magazine/m556saw/ap
|
||||
|
||||
/datum/uplink_item/item/ammo/g12
|
||||
name = "12g Shotgun Ammo Box (Slug)"
|
||||
|
||||
Reference in New Issue
Block a user