Merge pull request #194 from Miniature/master

bunch of emlocker stuffs, also a couple of runtimes
This commit is contained in:
Albert Iordache
2012-01-03 09:03:18 -08:00
7 changed files with 41 additions and 40 deletions

View File

@@ -108,6 +108,7 @@ var
// list/traitors = list() //traitor list
list/cardinal = list( NORTH, SOUTH, EAST, WEST )
list/alldirs = list(NORTH, SOUTH, EAST, WEST, NORTHEAST, NORTHWEST, SOUTHEAST, SOUTHWEST)
list/emclosets = list() //random emergency closets woo
datum/station_state/start_state = null
datum/configuration/config = null

View File

@@ -61,6 +61,10 @@
xeno_spawn += loc
del(src)
if(name == "emcloset")
emclosets += loc
del(src)
return 1
/obj/effect/landmark/start/New()

View File

@@ -65,6 +65,13 @@ datum/controller/game_controller
for(var/obj/machinery/atmospherics/unary/vent_scrubber/T in world)
T.broadcast_status()
var/emclosetcount = rand((emclosets.len)/2, (emclosets.len)*2/3)
while(emclosetcount > 0)
var/turf/loc = pick(emclosets)
emclosets -= loc
new /obj/structure/closet/emcloset(loc)
emclosetcount--
world << "\red \b Initializations complete."

View File

@@ -4,30 +4,13 @@
if (prob(40))
new /obj/item/weapon/storage/toolbox/emergency(src)
switch (pickweight(list("small" = 20, "aid" = 15, "tank" = 10, "both" = 50, "nothing" = 4, "delete" = 1)))
if ("small")
new /obj/item/weapon/tank/emergency_oxygen(src)
new /obj/item/weapon/tank/emergency_oxygen(src)
if ("aid")
new /obj/item/weapon/tank/emergency_oxygen(src)
new /obj/item/weapon/storage/firstaid/o2(src)
if ("tank")
new /obj/item/weapon/tank/air(src)
if ("both")
new /obj/item/weapon/tank/emergency_oxygen(src)
new /obj/item/clothing/mask/breath(src)
if ("nothing")
// doot
// teehee
if ("delete")
del(src)
//If you want to re-add fire, just add "fire" = 15 to the pick list.
/*if ("fire")
new /obj/structure/closet/firecloset(src.loc)
del(src)*/
new /obj/item/clothing/mask/breath(src)
new /obj/item/weapon/tank/emergency_oxygen(src)
var/counter = 0
while(prob(60) && counter < 3)
new /obj/item/weapon/tank/emergency_oxygen(src)
counter++
counter = 0
while(prob(60) && counter < 3)
new /obj/item/clothing/mask/breath(src)
counter++

View File

@@ -74,6 +74,8 @@ obj/structure
else if((istype(W, /obj/item/stack/sheet/metal)) && (W:amount >= 2))
user << "\blue Now adding plating..."
if (do_after(user,40))
if(!W)
return
user << "\blue You added the plating!"
var/turf/Tsrc = get_turf(src)
Tsrc.ReplaceWithWall()
@@ -85,6 +87,8 @@ obj/structure
if (src.icon_state == "reinforced") //Time to finalize!
user << "\blue Now finalising reinforced wall."
if(do_after(user, 50))
if(!W)
return
user << "\blue Wall fully reinforced!"
var/turf/Tsrc = get_turf(src)
Tsrc.ReplaceWithRWall()
@@ -95,6 +99,8 @@ obj/structure
else
user << "\blue Now reinforcing girders"
if (do_after(user,60))
if(!W)
return
user << "\blue Girders reinforced!"
W:use(1)
new/obj/structure/girder/reinforced( src.loc )

View File

@@ -95,7 +95,7 @@
return
else
if(isnull(I))
if(!I || isnull(I))
//CRASH("disposal/attackby() was called, but I was nulled before calling user.drop_item()")
return // No idea why, but somehow I gets nulled before it goes into the else, and that leads to a lot of spam with runtime errors.