Added a few more machines

Conflicts:
	code/game/machinery/Sleeper.dm
	code/game/machinery/adv_med.dm
	code/game/machinery/autolathe.dm
	code/game/machinery/cloning.dm
This commit is contained in:
dylanstrategie
2014-07-20 11:11:40 -04:00
committed by ZomgPonies
parent 4e10136895
commit d78d9eabc2
6 changed files with 99 additions and 1 deletions
+8
View File
@@ -11,6 +11,14 @@
density = 1
var/orient = "LEFT" // "RIGHT" changes the dir suffix to "-r"
l_color = "#7BF9FF"
power_change()
..()
if(!(stat & (BROKEN|NOPOWER)))
SetLuminosity(2)
else
SetLuminosity(0)
/obj/machinery/sleep_console/process()
if(stat & (NOPOWER|BROKEN))
return
+57
View File
@@ -9,6 +9,63 @@
icon_state = "body_scanner_0"
density = 1
anchored = 1
idle_power_usage = 1250
active_power_usage = 2500
l_color = "#00FF00"
power_change()
..()
if(!(stat & (BROKEN|NOPOWER)))
SetLuminosity(2)
else
SetLuminosity(0)
/obj/machinery/bodyscanner/MouseDrop_T(atom/movable/O as mob|obj, mob/user as mob)
if(O.loc == user) //no you can't pull things out of your ass
return
if(user.restrained() || user.stat || user.weakened || user.stunned || user.paralysis || user.resting) //are you cuffed, dying, lying, stunned or other
return
if(O.anchored || get_dist(user, src) > 1 || get_dist(user, O) > 1 || user.contents.Find(src)) // is the mob anchored, too far away from you, or are you too far away from the source
return
if(!ismob(O)) //humans only
return
if(istype(O, /mob/living/simple_animal) || istype(O, /mob/living/silicon)) //animals and robutts dont fit
return
if(!ishuman(user) && !isrobot(user)) //No ghosts or mice putting people into the sleeper
return
if(user.loc==null) // just in case someone manages to get a closet into the blue light dimension, as unlikely as that seems
return
if(!istype(user.loc, /turf) || !istype(O.loc, /turf)) // are you in a container/closet/pod/etc?
return
if(occupant)
user << "\blue <B>The body scanner is already occupied!</B>"
return
var/mob/living/L = O
if(!istype(L) || L.buckled)
return
if(L.abiotic())
user << "\blue <B>Subject cannot have abiotic items on.</B>"
return
for(var/mob/living/carbon/slime/M in range(1,L))
if(M.Victim == L)
usr << "[L.name] will not fit into the body scanner because they have a slime latched onto their head."
return
if(L == user)
visible_message("[user] climbs into the body scanner.", 3)
else
visible_message("[user] puts [L.name] into the body scanner.", 3)
if (L.client)
L.client.perspective = EYE_PERSPECTIVE
L.client.eye = src
L.loc = src
src.occupant = L
src.icon_state = "body_scanner_1"
for(var/obj/OO in src)
OO.loc = src.loc
//Foreach goto(154)
src.add_fingerprint(user)
return
/*/obj/machinery/bodyscanner/allow_drop()
return 0*/
+8
View File
@@ -98,6 +98,14 @@ var/global/list/autolathe_recipes_hidden = list( \
active_power_usage = 100
var/busy = 0
l_color = "#7BF9FF"
power_change()
..()
if(!(stat & (BROKEN|NOPOWER)))
SetLuminosity(2)
else
SetLuminosity(0)
/obj/machinery/autolathe/proc/wires_win(mob/user as mob)
var/dat as text
dat += "Autolathe Wires:<BR>"
+8
View File
@@ -19,6 +19,14 @@
R.my_atom = src
beaker = new /obj/item/weapon/reagent_containers/glass/beaker/large(src)
l_color = "#7BF9FF"
power_change()
..()
if(!(stat & (BROKEN|NOPOWER)))
SetLuminosity(2)
else
SetLuminosity(0)
on_reagent_change() //When the reagents change, change the icon as well.
update_icon()
+10 -1
View File
@@ -20,7 +20,16 @@
var/mess = 0 //Need to clean out it if it's full of exploded clone.
var/attempting = 0 //One clone attempt at a time thanks
var/eject_wait = 0 //Don't eject them as soon as they are created fuckkk
var/biomass = CLONE_BIOMASS
var/biomass = CLONE_BIOMASS // * 3 - N3X
l_color = "#00FF00"
power_change()
..()
if(!(stat & (BROKEN|NOPOWER)))
SetLuminosity(2)
else
SetLuminosity(0)
//The return of data disks?? Just for transferring between genetics machine/cloning machine.
//TO-DO: Make the genetics machine accept them.
+8
View File
@@ -13,6 +13,14 @@
var/current_heat_capacity = 50
l_color = "#00FF00"
power_change()
..()
if(!(stat & (BROKEN|NOPOWER)))
SetLuminosity(2)
else
SetLuminosity(0)
/obj/machinery/atmospherics/unary/cryo_cell/New()
..()
initialize_directions = dir