diff --git a/code/game/dna.dm b/code/game/dna.dm
index 9c6001155cc..92c84920666 100644
--- a/code/game/dna.dm
+++ b/code/game/dna.dm
@@ -982,7 +982,7 @@
src.temphtml += text("Data: []
", src.buffer1)
src.temphtml += text("By: []
", src.buffer1owner)
src.temphtml += text("Label: []
", src.buffer1label)
- if (src.connected.occupant) src.temphtml += text("Save : UI - UI+UE - SE
", src, src, src)
+ if (src.connected.occupant && !(src.connected.occupant.mutations & HUSK)) src.temphtml += text("Save : UI - UI+UE - SE
", src, src, src)
if (src.buffer1) src.temphtml += text("Transfer to: Occupant - Injector
", src, src)
//if (src.buffer1) src.temphtml += text("Isolate Block
", src)
if (src.buffer1) src.temphtml += "Disk: Save To | Load From
"
@@ -996,7 +996,7 @@
src.temphtml += text("Data: []
", src.buffer2)
src.temphtml += text("By: []
", src.buffer2owner)
src.temphtml += text("Label: []
", src.buffer2label)
- if (src.connected.occupant) src.temphtml += text("Save : UI - UI+UE - SE
", src, src, src)
+ if (src.connected.occupant && !(src.connected.occupant.mutations & HUSK)) src.temphtml += text("Save : UI - UI+UE - SE
", src, src, src)
if (src.buffer2) src.temphtml += text("Transfer to: Occupant - Injector
", src, src)
//if (src.buffer2) src.temphtml += text("Isolate Block
", src)
if (src.buffer2) src.temphtml += "Disk: Save To | Load From
"
@@ -1010,7 +1010,7 @@
src.temphtml += text("Data: []
", src.buffer3)
src.temphtml += text("By: []
", src.buffer3owner)
src.temphtml += text("Label: []
", src.buffer3label)
- if (src.connected.occupant) src.temphtml += text("Save : UI - UI+UE - SE
", src, src, src)
+ if (src.connected.occupant && !(src.connected.occupant.mutations & HUSK)) src.temphtml += text("Save : UI - UI+UE - SE
", src, src, src)
if (src.buffer3) src.temphtml += text("Transfer to: Occupant - Injector
", src, src)
//if (src.buffer3) src.temphtml += text("Isolate Block
", src)
if (src.buffer3) src.temphtml += "Disk: Save To | Load From
"
@@ -1135,7 +1135,7 @@
src.buffer3label = sanitize(input("New Label:","Edit Label","Infos here"))
dopage(src,"buffermenu")
if (href_list["b1transfer"])
- if (!src.connected.occupant)
+ if (!src.connected.occupant || src.connected.occupant.mutations & HUSK)
return
if (src.buffer1type == "ui")
if (src.buffer1iue)
@@ -1150,7 +1150,7 @@
src.connected.occupant.radiation += rand(20,50)
src.delete = 0
if (href_list["b2transfer"])
- if (!src.connected.occupant)
+ if (!src.connected.occupant || src.connected.occupant.mutations & HUSK)
return
if (src.buffer2type == "ui")
if (src.buffer2iue)
@@ -1165,7 +1165,7 @@
src.connected.occupant.radiation += rand(20,50)
src.delete = 0
if (href_list["b3transfer"])
- if (!src.connected.occupant)
+ if (!src.connected.occupant || src.connected.occupant.mutations & HUSK)
return
if (src.buffer3type == "ui")
if (src.buffer3iue)
@@ -1190,7 +1190,7 @@
src.temphtml = "Injector created."
src.delete = 0
src.injectorready = 0
- spawn(1200)
+ spawn(300)
src.injectorready = 1
else
src.temphtml = "Replicator not ready yet."
@@ -1206,7 +1206,7 @@
src.temphtml = "Injector created."
src.delete = 0
src.injectorready = 0
- spawn(1200)
+ spawn(300)
src.injectorready = 1
else
src.temphtml = "Replicator not ready yet."
@@ -1222,7 +1222,7 @@
src.temphtml = "Injector created."
src.delete = 0
src.injectorready = 0
- spawn(1200)
+ spawn(300)
src.injectorready = 1
else
src.temphtml = "Replicator not ready yet."
diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm
index b8f04a98f3e..2d9c63a2c57 100644
--- a/code/game/machinery/cloning.dm
+++ b/code/game/machinery/cloning.dm
@@ -630,14 +630,20 @@
src.mess = 0
gibs(src.loc)
src.icon_state = "pod_0"
+
+ /*
for(var/obj/O in src)
O.loc = src.loc
+ */
return
if (!(src.occupant))
return
+
+ /*
for(var/obj/O in src)
O.loc = src.loc
+ */
if (src.occupant.client)
src.occupant.client.eye = src.occupant.client.mob
diff --git a/code/game/objects/items/weapons/dna_injector.dm b/code/game/objects/items/weapons/dna_injector.dm
index b81e19e5952..f7e0bae3cdd 100644
--- a/code/game/objects/items/weapons/dna_injector.dm
+++ b/code/game/objects/items/weapons/dna_injector.dm
@@ -22,31 +22,33 @@
/obj/item/weapon/dnainjector/proc/inject(mob/M as mob)
M.radiation += rand(20,50)
- if (dnatype == "ui")
- if (!block) //isolated block?
- if (ue) //unique enzymes? yes
- M.dna.uni_identity = dna
- updateappearance(M, M.dna.uni_identity)
- M.real_name = ue
- M.name = ue
- uses--
- else //unique enzymes? no
- M.dna.uni_identity = dna
+
+ if (!(M.mutations & HUSK)) // prevents husks from having their DNA changed
+ if (dnatype == "ui")
+ if (!block) //isolated block?
+ if (ue) //unique enzymes? yes
+ M.dna.uni_identity = dna
+ updateappearance(M, M.dna.uni_identity)
+ M.real_name = ue
+ M.name = ue
+ uses--
+ else //unique enzymes? no
+ M.dna.uni_identity = dna
+ updateappearance(M, M.dna.uni_identity)
+ uses--
+ else
+ M.dna.uni_identity = setblock(M.dna.uni_identity,block,dna,3)
updateappearance(M, M.dna.uni_identity)
uses--
- else
- M.dna.uni_identity = setblock(M.dna.uni_identity,block,dna,3)
- updateappearance(M, M.dna.uni_identity)
- uses--
- if (dnatype == "se")
- if (!block) //isolated block?
- M.dna.struc_enzymes = dna
- domutcheck(M, null)
- uses--
- else
- M.dna.struc_enzymes = setblock(M.dna.struc_enzymes,block,dna,3)
- domutcheck(M, null,1)
- uses--
+ if (dnatype == "se")
+ if (!block) //isolated block?
+ M.dna.struc_enzymes = dna
+ domutcheck(M, null)
+ uses--
+ else
+ M.dna.struc_enzymes = setblock(M.dna.struc_enzymes,block,dna,3)
+ domutcheck(M, null,1)
+ uses--
spawn(0)//this prevents the collapse of space-time continuum
del(src)