diff --git a/.gitignore b/.gitignore index 9a9bbe0aafd..861b69b8be0 100644 --- a/.gitignore +++ b/.gitignore @@ -16,6 +16,7 @@ data/ /_maps/map_files/**/*.dmm.backup /_maps/quicksave/* /nano/debug.html +**/__pycache__/* *.db stddef.dm .atom-build.json diff --git a/code/modules/admin/verbs/mapping.dm b/code/modules/admin/verbs/mapping.dm index bfc4f7a8887..5a53b0201b3 100644 --- a/code/modules/admin/verbs/mapping.dm +++ b/code/modules/admin/verbs/mapping.dm @@ -30,6 +30,12 @@ var/intercom_range_display_status = 0 src.pixel_x = -224 src.pixel_y = -224 +/obj/effect/debugging/mapfix_marker + name = "map fix marker" + icon = 'icons/mob/screen_gen.dmi' + icon_state = "mapfixmarker" + desc = "I am a mappers mistake." + /obj/effect/debugging/marker icon = 'icons/turf/areas.dmi' icon_state = "yellow" diff --git a/code/modules/hydroponics/trays/tray_soil.dm b/code/modules/hydroponics/trays/tray_soil.dm index d8c207c1c67..efaaeee887c 100644 --- a/code/modules/hydroponics/trays/tray_soil.dm +++ b/code/modules/hydroponics/trays/tray_soil.dm @@ -11,6 +11,20 @@ return else if(istype(O,/obj/item/weapon/crowbar)) return + else if(istype(O, /obj/item/weapon/shovel)) + if(seed) + to_chat(user, "You dig up and dispose of \the [seed.display_name].") + seed = null + dead = 0 + sampled = 0 + age = 0 + lastproduce = 0 + yield_mod = 0 + mutation_mod = 0 + check_health() + else + to_chat(user, "You clear up [src]!") + qdel(src) else ..() diff --git a/code/modules/projectiles/ammunition/ammo_casings.dm b/code/modules/projectiles/ammunition/ammo_casings.dm index df34a279caf..eb4e42ff821 100644 --- a/code/modules/projectiles/ammunition/ammo_casings.dm +++ b/code/modules/projectiles/ammunition/ammo_casings.dm @@ -3,6 +3,12 @@ caliber = "357" projectile_type = /obj/item/projectile/bullet +/obj/item/ammo_casing/rubber9mm + desc = "A 9mm rubber bullet casing." + caliber = "9mm" + icon_state = "r-casing" + projectile_type = /obj/item/projectile/bullet/weakbullet4 + /obj/item/ammo_casing/a762 desc = "A 7.62mm bullet casing." icon_state = "762-casing" @@ -20,6 +26,7 @@ /obj/item/ammo_casing/c38 desc = "A .38 bullet casing." caliber = "38" + icon_state = "r-casing" projectile_type = /obj/item/projectile/bullet/weakbullet2/rubber /obj/item/ammo_casing/c10mm @@ -76,6 +83,12 @@ caliber = "4.6x30mm" projectile_type = /obj/item/projectile/bullet/incendiary/firebullet +/obj/item/ammo_casing/rubber45 + desc = "A .45 rubber bullet casing." + caliber = ".45" + icon_state = "r-casing" + projectile_type = /obj/item/projectile/bullet/weakbullet4 + /obj/item/ammo_casing/c45 desc = "A .45 bullet casing." caliber = ".45" @@ -120,7 +133,7 @@ /obj/item/ammo_casing/shotgun/rubbershot name = "rubber shot" desc = "A shotgun casing filled with densely-packed rubber balls, used to incapacitate crowds from a distance." - icon_state = "bshell" + icon_state = "cshell" projectile_type = /obj/item/projectile/bullet/rpellet pellets = 6 variance = 25 @@ -254,7 +267,7 @@ /obj/item/ammo_casing/shotgun/tranquilizer name = "tranquilizer darts" desc = "A tranquilizer round used to subdue individuals utilizing stimulants." - icon_state = "cshell" + icon_state = "nshell" projectile_type = /obj/item/projectile/bullet/dart/syringe/tranquilizer materials = list(MAT_METAL=250) diff --git a/code/modules/projectiles/ammunition/boxes.dm b/code/modules/projectiles/ammunition/boxes.dm index 894b5ac25b1..865ddc9641b 100644 --- a/code/modules/projectiles/ammunition/boxes.dm +++ b/code/modules/projectiles/ammunition/boxes.dm @@ -35,6 +35,12 @@ ammo_type = /obj/item/ammo_casing/c45 max_ammo = 20 +/obj/item/ammo_box/rubber45 + name = "ammo box (.45 rubber)" + icon_state = "45box-r" + ammo_type = /obj/item/ammo_casing/rubber45 + max_ammo = 16 + /obj/item/ammo_box/a40mm name = "ammo box (40mm grenades)" icon_state = "40mm" @@ -52,14 +58,14 @@ /obj/item/ammo_box/n762 name = "ammo box (7.62x38mmR)" - icon_state = "10mmbox" + icon_state = "riflebox" origin_tech = "combat=2" ammo_type = /obj/item/ammo_casing/n762 max_ammo = 14 /obj/item/ammo_box/shotgun name = "Ammunition Box (slug)" - icon_state = "9mmbox" + icon_state = "slugbox" origin_tech = "combat=2" ammo_type = /obj/item/ammo_casing/shotgun max_ammo = 7 @@ -67,26 +73,30 @@ /obj/item/ammo_box/shotgun/buck name = "Ammunition Box (buckshot)" + icon_state = "buckshotbox" ammo_type = /obj/item/ammo_casing/shotgun/buckshot /obj/item/ammo_box/shotgun/stun name = "Ammunition Box (stun shells)" + icon_state = "stunbox" ammo_type = /obj/item/ammo_casing/shotgun/stunslug materials = list(MAT_METAL=1750) /obj/item/ammo_box/shotgun/beanbag name = "Ammunition Box (beanbag shells)" + icon_state = "beanbagbox" ammo_type = /obj/item/ammo_casing/shotgun/beanbag materials = list(MAT_METAL=1750) /obj/item/ammo_box/shotgun/rubbershot name = "Ammunition Box (rubbershot shells)" + icon_state = "rubbershotbox" ammo_type = /obj/item/ammo_casing/shotgun/rubbershot materials = list(MAT_METAL=28000) /obj/item/ammo_box/shotgun/tranquilizer name = "Ammunition Box (tranquilizer darts)" - icon_state = "45box" + icon_state = "tranqbox" ammo_type = /obj/item/ammo_casing/shotgun/tranquilizer materials = list(MAT_METAL=1750) diff --git a/code/modules/projectiles/ammunition/magazines.dm b/code/modules/projectiles/ammunition/magazines.dm index 0f587c54bf4..aecd66b1ea5 100644 --- a/code/modules/projectiles/ammunition/magazines.dm +++ b/code/modules/projectiles/ammunition/magazines.dm @@ -209,6 +209,34 @@ caliber = ".45" max_ammo = 8 multiple_sprites = 1 +/obj/item/ammo_box/magazine/m45/enforcer45 + name = "handgun magazine (.45)" + icon_state = "enforcer" + ammo_type = /obj/item/ammo_casing/rubber45 + +/obj/item/ammo_box/magazine/m45/enforcer45/update_icon() + ..() + overlays.Cut() + + var/ammo = ammo_count() + if(ammo && is_rubber()) + overlays += image('icons/obj/ammo.dmi', icon_state = "enforcer-r") + +/obj/item/ammo_box/magazine/m45/enforcer45/examine(mob/user, var/distance) + ..() + if(distance <= 2) + to_chat(user, "It seems to be loaded with [is_rubber() ? "rubber" : "lethal"] bullets.")//only can see the topmost one. + +/obj/item/ammo_box/magazine/m45/enforcer45/proc/is_rubber()//if the topmost bullet is a rubber one + var/ammo = ammo_count() + if(!ammo) + return 0 + if(istype(contents[contents.len], /obj/item/ammo_casing/rubber45)) + return 1 + return 0 + + /obj/item/ammo_box/magazine/m45/enforcer45/lethal + ammo_type = /obj/item/ammo_casing/c45 /obj/item/ammo_box/magazine/wt550m9 name = "wt550 magazine (4.6x30mm)" diff --git a/code/modules/projectiles/guns/projectile/pistol.dm b/code/modules/projectiles/guns/projectile/pistol.dm index d1d65dcbfc0..5de627d7933 100644 --- a/code/modules/projectiles/guns/projectile/pistol.dm +++ b/code/modules/projectiles/guns/projectile/pistol.dm @@ -40,6 +40,14 @@ mag_type = /obj/item/ammo_box/magazine/m50 can_suppress = 0 +/obj/item/weapon/gun/projectile/automatic/pistol/enforcer45 + name = "Enforcer .45" + desc = "A pistol of modern design." + icon_state = "enforcer" + force = 10 + mag_type = /obj/item/ammo_box/magazine/m45/enforcer45 + can_suppress = 0 + /obj/item/weapon/gun/projectile/automatic/pistol/deagle/update_icon() ..() icon_state = "[initial(icon_state)][magazine ? "" : "-e"]" diff --git a/code/modules/projectiles/projectile/bullets.dm b/code/modules/projectiles/projectile/bullets.dm index 9c3475d2141..31a09ecde37 100644 --- a/code/modules/projectiles/projectile/bullets.dm +++ b/code/modules/projectiles/projectile/bullets.dm @@ -42,6 +42,7 @@ damage = 5 weaken = 3 stamina = 60 + icon_state = "bullet-r" /obj/item/projectile/bullet/weakbullet2/rubber //detective's bullets that don't embed embed = 0 @@ -50,6 +51,13 @@ /obj/item/projectile/bullet/weakbullet3 damage = 20 +/obj/item/projectile/bullet/weakbullet4 + name = "rubber bullet" + damage = 5 + stamina = 30 + icon_state = "bullet-r" + embed = 0 + sharp = 0 /obj/item/projectile/bullet/toxinbullet damage = 15 @@ -135,6 +143,7 @@ name = "rubber pellet" damage = 3 stamina = 25 + icon_state = "bullet-r" /obj/item/projectile/bullet/stunshot//taser slugs for shotguns, nothing special name = "stunshot" diff --git a/html/changelog.html b/html/changelog.html index 0dee1cf6183..d5208203144 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -55,6 +55,18 @@ -->
+

23 January 2017

+

FalseIncarnate updated:

+ +

Stratus updated:

+ +

18 January 2017

AndriiYukhymchak updated: