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:
Leshana
2017-06-01 17:27:00 -04:00
72 changed files with 1606 additions and 1106 deletions
+53
View File
@@ -0,0 +1,53 @@
#define RAD_LEVEL_LOW 5 //10 // Around the level at which radiation starts to become harmful
#define RAD_LEVEL_MODERATE 15 //15
#define RAD_LEVEL_HIGH 50 //50
#define RAD_LEVEL_VERY_HIGH 100 //100
//Geiger counter
//Rewritten version of TG's geiger counter
//I opted to show exact radiation levels
/obj/item/device/geiger
name = "geiger counter"
desc = "A handheld device used for detecting and measuring radiation in an area."
icon_state = "geiger_off"
item_state = "multitool"
w_class = ITEMSIZE_SMALL
var/scanning = 0
var/radiation_count = 0
/obj/item/device/geiger/New()
processing_objects |= src
/obj/item/device/geiger/process()
if(!scanning)
return
radiation_count = radiation_repository.get_rads_at_turf(get_turf(src))
update_icon()
/obj/item/device/geiger/examine(mob/user)
..(user)
to_chat(user, "<span class='warning'>[scanning ? "ambient" : "stored"] radiation level: [radiation_count ? radiation_count : "0"]Bq.</span>")
/obj/item/device/geiger/attack_self(var/mob/user)
scanning = !scanning
update_icon()
to_chat(user, "<span class='notice'>\icon[src] You switch [scanning ? "on" : "off"] [src].</span>")
/obj/item/device/geiger/update_icon()
if(!scanning)
icon_state = "geiger_off"
return 1
switch(radiation_count)
if(null) icon_state = "geiger_on_1"
if(-INFINITY to RAD_LEVEL_LOW) icon_state = "geiger_on_1"
if(RAD_LEVEL_LOW + 1 to RAD_LEVEL_MODERATE) icon_state = "geiger_on_2"
if(RAD_LEVEL_MODERATE + 1 to RAD_LEVEL_HIGH) icon_state = "geiger_on_3"
if(RAD_LEVEL_HIGH + 1 to RAD_LEVEL_VERY_HIGH) icon_state = "geiger_on_4"
if(RAD_LEVEL_VERY_HIGH + 1 to INFINITY) icon_state = "geiger_on_5"
#undef RAD_LEVEL_LOW
#undef RAD_LEVEL_MODERATE
#undef RAD_LEVEL_HIGH
#undef RAD_LEVEL_VERY_HIGH
@@ -99,6 +99,8 @@ REAGENT SCANNER
if(M.status_flags & FAKEDEATH)
OX = fake_oxy > 50 ? "<span class='warning'>Severe oxygen deprivation detected</span>" : "Subject bloodstream oxygen level normal"
user.show_message("[OX] | [TX] | [BU] | [BR]")
if(M.radiation)
user.show_message("<span class='warning'>Radiation detected.</span>")
if(istype(M, /mob/living/carbon))
var/mob/living/carbon/C = M
if(C.reagents.total_volume)
@@ -452,11 +452,11 @@ the implant may become unstable and either pre-maturely inject the subject or si
var/obj/item/device/radio/headset/a = new /obj/item/device/radio/headset/heads/captain(null)
if(istype(t, /area/syndicate_station) || istype(t, /area/syndicate_mothership) || istype(t, /area/shuttle/syndicate_elite) )
//give the syndies a bit of stealth
a.autosay("[mobname] has died in Space!", "[mobname]'s Death Alarm", "General")
a.autosay("[mobname] has died in Space!", "[mobname]'s Death Alarm")
// a.autosay("[mobname] has died in Space!", "[mobname]'s Death Alarm", "Security")
// a.autosay("[mobname] has died in Space!", "[mobname]'s Death Alarm", "Medical")
else
a.autosay("[mobname] has died in [t.name]!", "[mobname]'s Death Alarm", "General")
a.autosay("[mobname] has died in [t.name]!", "[mobname]'s Death Alarm")
// a.autosay("[mobname] has died in [t.name]!", "[mobname]'s Death Alarm", "Security")
// a.autosay("[mobname] has died in [t.name]!", "[mobname]'s Death Alarm", "Medical")
qdel(a)
@@ -464,13 +464,13 @@ the implant may become unstable and either pre-maturely inject the subject or si
if ("emp")
var/obj/item/device/radio/headset/a = new /obj/item/device/radio/headset/heads/captain(null)
var/name = prob(50) ? t.name : pick(teleportlocs)
a.autosay("[mobname] has died in [name]!", "[mobname]'s Death Alarm", "General")
a.autosay("[mobname] has died in [name]!", "[mobname]'s Death Alarm")
// a.autosay("[mobname] has died in [name]!", "[mobname]'s Death Alarm", "Security")
// a.autosay("[mobname] has died in [name]!", "[mobname]'s Death Alarm", "Medical")
qdel(a)
else
var/obj/item/device/radio/headset/a = new /obj/item/device/radio/headset/heads/captain(null)
a.autosay("[mobname] has died-zzzzt in-in-in...", "[mobname]'s Death Alarm", "General")
a.autosay("[mobname] has died-zzzzt in-in-in...", "[mobname]'s Death Alarm")
// a.autosay("[mobname] has died-zzzzt in-in-in...", "[mobname]'s Death Alarm", "Security")
// a.autosay("[mobname] has died-zzzzt in-in-in...", "[mobname]'s Death Alarm", "Medical")
qdel(a)
@@ -124,7 +124,7 @@
/obj/item/weapon/handcuffs,
/obj/item/device/flash,
/obj/item/clothing/glasses,
/obj/item/ammo_casing/shotgun,
/obj/item/ammo_casing/a12g,
/obj/item/ammo_magazine,
/obj/item/weapon/cell/device,
/obj/item/weapon/reagent_containers/food/snacks/donut/,
@@ -151,12 +151,12 @@
/obj/item/weapon/storage/box/blanks/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/blank(src)
new /obj/item/ammo_casing/a12g/blank(src)
/obj/item/weapon/storage/box/blanks/large/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/blank(src)
new /obj/item/ammo_casing/a12g/blank(src)
/obj/item/weapon/storage/box/beanbags
name = "box of beanbag shells"
@@ -167,12 +167,12 @@
/obj/item/weapon/storage/box/beanbags/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/beanbag(src)
new /obj/item/ammo_casing/a12g/beanbag(src)
/obj/item/weapon/storage/box/beanbags/large/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/beanbag(src)
new /obj/item/ammo_casing/a12g/beanbag(src)
/obj/item/weapon/storage/box/shotgunammo
name = "box of shotgun slugs"
@@ -183,12 +183,12 @@
/obj/item/weapon/storage/box/shotgunammo/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun(src)
new /obj/item/ammo_casing/a12g(src)
/obj/item/weapon/storage/box/shotgunammo/large/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun(src)
new /obj/item/ammo_casing/a12g(src)
/obj/item/weapon/storage/box/shotgunshells
name = "box of shotgun shells"
@@ -199,12 +199,12 @@
/obj/item/weapon/storage/box/shotgunshells/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/pellet(src)
new /obj/item/ammo_casing/a12g/pellet(src)
/obj/item/weapon/storage/box/shotgunshells/large/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/pellet(src)
new /obj/item/ammo_casing/a12g/pellet(src)
/obj/item/weapon/storage/box/flashshells
name = "box of illumination shells"
@@ -215,12 +215,12 @@
/obj/item/weapon/storage/box/flashshells/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/flash(src)
new /obj/item/ammo_casing/a12g/flash(src)
/obj/item/weapon/storage/box/flashshells/large/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/flash(src)
new /obj/item/ammo_casing/a12g/flash(src)
/obj/item/weapon/storage/box/stunshells
name = "box of stun shells"
@@ -231,12 +231,12 @@
/obj/item/weapon/storage/box/stunshells/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/stunshell(src)
new /obj/item/ammo_casing/a12g/stunshell(src)
/obj/item/weapon/storage/box/stunshells/large/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/stunshell(src)
new /obj/item/ammo_casing/a12g/stunshell(src)
/obj/item/weapon/storage/box/practiceshells
name = "box of practice shells"
@@ -247,12 +247,12 @@
/obj/item/weapon/storage/box/practiceshells/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/practice(src)
new /obj/item/ammo_casing/a12g/practice(src)
/obj/item/weapon/storage/box/practiceshells/large/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/practice(src)
new /obj/item/ammo_casing/a12g/practice(src)
/obj/item/weapon/storage/box/empshells
name = "box of emp shells"
@@ -263,12 +263,12 @@
/obj/item/weapon/storage/box/empshells/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/emp(src)
new /obj/item/ammo_casing/a12g/emp(src)
/obj/item/weapon/storage/box/empshells/large/New()
..()
for(var/i = 1 to 8)
new /obj/item/ammo_casing/shotgun/emp(src)
new /obj/item/ammo_casing/a12g/emp(src)
/obj/item/weapon/storage/box/sniperammo
name = "box of 14.5mm shells"
@@ -27,7 +27,7 @@
if("guns")
new /obj/item/weapon/gun/projectile/revolver(src)
new /obj/item/ammo_magazine/a357(src)
new /obj/item/ammo_magazine/s357(src)
new /obj/item/weapon/card/emag(src)
new /obj/item/weapon/plastique(src)
new /obj/item/weapon/plastique(src)