TG: Adds randomlly spawning rooms to the mining asteroid that contain various

goodies.  (Among them are a modified traitor beacon, a cloaking device and a
closet full of resources so you can go build your own honk.)
These rooms will spawn at least out of range of space and the explored pathways,
so at the very least some mining is required to even detect them with mesons.
Adds a borg upgrade system. Right now, it just contians a borg reset module that
allows the borg to choose their module again.  Adds some support code to borgs
to suppot flashproofing and renaming.
Adds a few various admin commands like a quick-list of objects (which is
hardcoded) and a command to break the local air group.
Revision: r3415
Author: 	 VivianFoxfoot
This commit is contained in:
Ren Erthilo
2012-05-02 00:21:18 +01:00
parent adc0b18918
commit f7e4ab6975
19 changed files with 554 additions and 37 deletions
+49 -1
View File
@@ -19,6 +19,8 @@ var/const
var/strength = 5
var/attached = 0
attack_paw(user as mob) //can be picked up by aliens
if(isalien(user))
attack_hand(user)
@@ -87,6 +89,13 @@ var/const
if(!isliving(M) || isalien(M))
return
if(attached)
return
else
attached++
spawn(MAX_IMPREGNATION_TIME)
attached = 0
var/mob/living/L = M //just so I don't need to use :
if(stat != CONSCIOUS)
@@ -180,7 +189,8 @@ var/const
for(var/mob/living/carbon/alien/alien in world)
var/image/activeIndicator = image('alien.dmi', loc = src, icon_state = "facehugger_active")
activeIndicator.override = 1
alien.client.images += activeIndicator
if(alien && alien.client)
alien.client.images += activeIndicator
spawn(rand(MIN_ACTIVE_TIME,MAX_ACTIVE_TIME))
GoIdle()
@@ -220,3 +230,41 @@ var/const
return
/obj/item/clothing/mask/facehugger/angry
stat = CONSCIOUS
/obj/item/clothing/mask/facehugger/angry/HasProximity(atom/movable/AM as mob|obj)
if(istype(AM , /mob/living/))
Attach(AM)
/*
/obj/item/clothing/mask/facehugger/angry/New()
processing_objects.Add(src)
/obj/item/clothing/mask/facehugger/angry/process()
if(!src || src.stat == (DEAD))
return
for(var/mob/living/carbon/C in range(1,src))
Attach(C)
return
for(var/mob/living/carbon/C in range(5,src))
if(isInSight(C,src))
step_to(src,C,0)
spawn(5)
if(C in range(1,src))
Attach(C)
return
step_rand(src)
return
/obj/item/clothing/mask/facehugger/angry/Attach(var/mob/M as mob)
..(M)
processing_objects.Remove(src)
*/
+4 -1
View File
@@ -97,7 +97,10 @@
flashfail = 1
else if(issilicon(M))
M.Weaken(rand(5,10))
if(!M:flashproof())
M.Weaken(rand(5,10))
else
flashfail++
if(isrobot(user))
spawn(0)