Code Cleanup: Destroy() fixes part 1 + Misc Fixes (#1933)

In this PR:

Destroy() fixes backported from PR #1783.
JaniPDA fixes & improvements.
Chickens no longer consume their own eggs.
Language adding in setup is now 100% more sane.
Chemical dispensers now actually check that the user is still alive before renaming.
Ghosts are now marked as non-simulated atoms.
Non-simulated atoms no longer trigger proximity listeners.
Vendors no longer accept synthetic tools as stocking options.
Fixes #812.
Fixes #1877, Fixes #1929.
Fixes #1930.
Fixes #1152, Fixes #1917.
Fixes #1902.
Fixes #1165.
This commit is contained in:
Lohikar
2017-03-18 23:06:24 +02:00
committed by skull132
parent 905a338a98
commit 63eafb3643
37 changed files with 208 additions and 75 deletions
+14 -1
View File
@@ -22,8 +22,21 @@
var/has_items = 0//This is set true whenever the cart has anything loaded/mounted on it
var/dismantled = 0//This is set true after the object has been dismantled to avoid an infintie loop
///obj/structure/janitorialcart/New()
/obj/structure/janitorialcart/New()
..()
janitorial_supplies |= src
/obj/structure/janitorialcart/Destroy()
janitorial_supplies -= src
QDEL_NULL(mybag)
QDEL_NULL(mymop)
QDEL_NULL(myspray)
QDEL_NULL(myreplacer)
QDEL_NULL(mybucket)
return ..()
/obj/structure/janitorialcart/proc/get_short_status()
return "Contents: [english_list(contents)]"
/obj/structure/janitorialcart/examine(mob/user)
if(..(user, 1))
+7 -2
View File
@@ -10,12 +10,17 @@
/obj/structure/mopbucket/New()
create_reagents(100)
..()
create_reagents(100)
janitorial_supplies |= src
/obj/structure/mobbucket/Destroy()
janitorial_supplies -= src
return ..()
/obj/structure/mopbucket/examine(mob/user)
if(..(user, 1))
user << "[src] \icon[src] contains [reagents.total_volume] unit\s of water!"
user << "Contains [reagents.total_volume] unit\s of water."
/obj/structure/mopbucket/attackby(obj/item/I, mob/user)
if(istype(I, /obj/item/weapon/mop))
@@ -35,7 +35,7 @@
/obj/effect/wingrille_spawn/proc/activate()
if(activated) return
if (!locate(/obj/structure/grille) in get_turf(src))
var/obj/structure/grille/G = getFromPool(/obj/structure/grille, src.loc)
var/obj/structure/grille/G = new /obj/structure/grille(src.loc)
handle_grille_spawn(G)
var/list/neighbours = list()
for (var/dir in cardinal)
@@ -49,7 +49,7 @@
found_connection = 1
qdel(W)
if(!found_connection)
var/obj/structure/window/new_win = getFromPool(win_path, src.loc)
var/obj/structure/window/new_win = new win_path(src.loc)
new_win.set_dir(dir)
handle_window_spawn(new_win)
else