mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-30 23:48:28 +01:00
SAY HELO TO DNA2, N3X15'S AWFUL FUCKING RECODE OF DNA
Conflicts: baystation12.dme code/game/gamemodes/setupgame.dm code/game/objects/items/weapons/dna_injector.dm code/modules/mob/living/carbon/human/human.dm code/modules/mob/living/carbon/human/human_defines.dm code/modules/mob/new_player/new_player.dm
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
icon = 'icons/obj/items.dmi'
|
||||
icon_state = "dnainjector"
|
||||
var/dnatype = null
|
||||
var/dna = null
|
||||
var/list/dna = null
|
||||
var/block = null
|
||||
var/owner = null
|
||||
var/ue = null
|
||||
@@ -21,6 +21,34 @@
|
||||
return attack_hand(user)
|
||||
|
||||
|
||||
/obj/item/weapon/dnainjector/proc/GetState(var/selblock=0)
|
||||
var/real_block
|
||||
if(!selblock)
|
||||
real_block=block
|
||||
selblock=1
|
||||
else
|
||||
real_block=selblock
|
||||
var/list/BOUNDS = dna_activity_bounds[real_block]
|
||||
return dna[selblock] > BOUNDS[DNA_ON_LOWERBOUND]
|
||||
|
||||
/obj/item/weapon/dnainjector/proc/SetState(var/on, var/selblock=0)
|
||||
var/real_block
|
||||
if(!selblock)
|
||||
real_block=block
|
||||
selblock=1
|
||||
else
|
||||
real_block=selblock
|
||||
var/list/BOUNDS=dna_activity_bounds[real_block]
|
||||
var/val
|
||||
if(on)
|
||||
val=rand(BOUNDS[DNA_ON_LOWERBOUND],BOUNDS[DNA_ON_UPPERBOUND])
|
||||
else
|
||||
val=rand(BOUNDS[DNA_OFF_LOWERBOUND],BOUNDS[DNA_OFF_UPPERBOUND])
|
||||
dna[selblock]=val
|
||||
|
||||
/obj/item/weapon/dnainjector/proc/GetValue(var/block=1)
|
||||
return dna[block]
|
||||
|
||||
/obj/item/weapon/dnainjector/proc/inject(mob/M as mob, mob/user as mob)
|
||||
if(istype(M,/mob/living))
|
||||
M.radiation += rand(5,20)
|
||||
@@ -29,26 +57,29 @@
|
||||
if (dnatype == "ui")
|
||||
if (!block) //isolated block?
|
||||
if (ue) //unique enzymes? yes
|
||||
M.dna.uni_identity = dna
|
||||
M.dna.UI = dna
|
||||
M.dna.UpdateUI()
|
||||
updateappearance(M, M.dna.uni_identity)
|
||||
M.real_name = ue
|
||||
M.name = ue
|
||||
uses--
|
||||
else //unique enzymes? no
|
||||
M.dna.uni_identity = dna
|
||||
M.dna.UI = dna
|
||||
M.dna.UpdateUI()
|
||||
updateappearance(M, M.dna.uni_identity)
|
||||
uses--
|
||||
else
|
||||
M.dna.uni_identity = setblock(M.dna.uni_identity,block,dna,3)
|
||||
M.dna.SetUIValue(block,src.GetValue())
|
||||
updateappearance(M, M.dna.uni_identity)
|
||||
uses--
|
||||
if (dnatype == "se")
|
||||
if (!block) //isolated block?
|
||||
M.dna.struc_enzymes = dna
|
||||
M.dna.SE = dna
|
||||
M.dna.UpdateSE()
|
||||
domutcheck(M, null)
|
||||
uses--
|
||||
else
|
||||
M.dna.struc_enzymes = setblock(M.dna.struc_enzymes,block,dna,3)
|
||||
M.dna.SetUIValue(block,src.GetValue())
|
||||
domutcheck(M, null,1)
|
||||
uses--
|
||||
if(prob(5))
|
||||
@@ -91,11 +122,21 @@
|
||||
inuse = 0
|
||||
M.requests += O
|
||||
if (dnatype == "se")
|
||||
if (isblockon(getblock(dna, 14,3),14) && istype(M, /mob/living/carbon/human))
|
||||
msg_admin_attack("[key_name_admin(user)] injected [key_name_admin(M)] with the [name] \red(MONKEY) (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[user.x];Y=[user.y];Z=[user.z]'>JMP</a>)")
|
||||
else
|
||||
// message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the [name]")
|
||||
log_attack("[key_name(user)] injected [key_name(M)] with the [name]")
|
||||
if(!block)
|
||||
if (GetState(MONKEYBLOCK) && istype(M, /mob/living/carbon/human) )
|
||||
message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the [name] \red(MONKEY)")
|
||||
log_attack("[key_name(user)] injected [key_name(M)] with the [name] (MONKEY)")
|
||||
log_game("[key_name_admin(user)] injected [key_name_admin(M)] with the [name] \red(MONKEY)")
|
||||
else
|
||||
// message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the [name]")
|
||||
log_attack("[key_name(user)] injected [key_name(M)] with the [name]")
|
||||
else // Isolated injector
|
||||
if (GetState() && block == MONKEYBLOCK && istype(M, /mob/living/carbon/human) )
|
||||
message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the Isolated [name] \red(MONKEY)")
|
||||
log_attack("[key_name(user)] injected [key_name(M)] with the Isolated [name] (MONKEY)")
|
||||
log_game("[key_name_admin(user)] injected [key_name_admin(M)] with the Isolated [name] \red(MONKEY)")
|
||||
else
|
||||
log_attack("[key_name(user)] injected [key_name(M)] with the Isolated [name]")
|
||||
else
|
||||
// message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the [name]")
|
||||
log_attack("[key_name(user)] injected [key_name(M)] with the [name]")
|
||||
@@ -113,7 +154,7 @@
|
||||
user << "\red Apparently it didn't work."
|
||||
return
|
||||
if (dnatype == "se")
|
||||
if (isblockon(getblock(dna, 14,3),14) && istype(M, /mob/living/carbon/human))
|
||||
if (GetState(MONKEYBLOCK) && istype(M, /mob/living/carbon/human))
|
||||
message_admins("[key_name_admin(user)] injected [key_name_admin(M)] with the [name] \red(MONKEY)")
|
||||
log_game("[key_name(user)] injected [key_name(M)] with the [name] (MONKEY)")
|
||||
else
|
||||
@@ -144,7 +185,7 @@
|
||||
name = "DNA-Injector (Anti-Hulk)"
|
||||
desc = "Cures green skin."
|
||||
dnatype = "se"
|
||||
dna = "708"
|
||||
dna = list(4090)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
@@ -154,7 +195,7 @@
|
||||
name = "DNA-Injector (Hulk)"
|
||||
desc = "This will make you big and strong, but give you a bad skin condition."
|
||||
dnatype = "se"
|
||||
dna = "FED"
|
||||
dna = list(1)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
@@ -164,7 +205,7 @@
|
||||
name = "DNA-Injector (Xray)"
|
||||
desc = "Finally you can see what the Captain does."
|
||||
dnatype = "se"
|
||||
dna = "FED"
|
||||
dna = list(4090)
|
||||
//block = 8
|
||||
New()
|
||||
..()
|
||||
@@ -174,60 +215,279 @@
|
||||
name = "DNA-Injector (Anti-Xray)"
|
||||
desc = "It will make you see harder."
|
||||
dnatype = "se"
|
||||
dna = "708"
|
||||
dna = list(1)
|
||||
//block = 8
|
||||
New()
|
||||
..()
|
||||
block = XRAYBLOCK
|
||||
|
||||
|
||||
/obj/item/weapon/dnainjector/firemut
|
||||
name = "DNA-Injector (Fire)"
|
||||
desc = "Gives you fire."
|
||||
dnatype = "se"
|
||||
dna = list(4090)
|
||||
//block = 10
|
||||
New()
|
||||
..()
|
||||
block = FIREBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/antifire
|
||||
name = "DNA-Injector (Anti-Fire)"
|
||||
desc = "Cures fire."
|
||||
dnatype = "se"
|
||||
dna = list(1)
|
||||
//block = 10
|
||||
New()
|
||||
..()
|
||||
block = FIREBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/telemut
|
||||
name = "DNA-Injector (Tele.)"
|
||||
desc = "Super brain man!"
|
||||
dnatype = "se"
|
||||
dna = list(4090)
|
||||
//block = 12
|
||||
New()
|
||||
..()
|
||||
block = TELEBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/antitele
|
||||
name = "DNA-Injector (Anti-Tele.)"
|
||||
desc = "Will make you not able to control your mind."
|
||||
dnatype = "se"
|
||||
dna = list(1)
|
||||
//block = 12
|
||||
New()
|
||||
..()
|
||||
block = TELEBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/nobreath
|
||||
name = "DNA-Injector (No Breath)"
|
||||
desc = "Hold your breath and count to infinity."
|
||||
dnatype = "se"
|
||||
dna = list(4090)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = NOBREATHBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/antinobreath
|
||||
name = "DNA-Injector (Anti-No Breath)"
|
||||
desc = "Hold your breath and count to 100."
|
||||
dnatype = "se"
|
||||
dna = list(1)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = NOBREATHBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/remoteview
|
||||
name = "DNA-Injector (Remote View)"
|
||||
desc = "Stare into the distance for a reason."
|
||||
dnatype = "se"
|
||||
dna = list(4090)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = REMOTEVIEWBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/antiremoteview
|
||||
name = "DNA-Injector (Anti-Remote View)"
|
||||
desc = "Cures green skin."
|
||||
dnatype = "se"
|
||||
dna = list(1)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = REMOTEVIEWBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/regenerate
|
||||
name = "DNA-Injector (Regeneration)"
|
||||
desc = "Healthy but hungry."
|
||||
dnatype = "se"
|
||||
dna = list(4090)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = REGENERATEBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/antiregenerate
|
||||
name = "DNA-Injector (Anti-Regeneration)"
|
||||
desc = "Sickly but sated."
|
||||
dnatype = "se"
|
||||
dna = list(1)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = REGENERATEBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/runfast
|
||||
name = "DNA-Injector (Increase Run)"
|
||||
desc = "Running Man."
|
||||
dnatype = "se"
|
||||
dna = list(4090)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = INCREASERUNBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/antirunfast
|
||||
name = "DNA-Injector (Anti-Increase Run)"
|
||||
desc = "Walking Man."
|
||||
dnatype = "se"
|
||||
dna = list(1)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = INCREASERUNBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/morph
|
||||
name = "DNA-Injector (Morph)"
|
||||
desc = "A total makeover."
|
||||
dnatype = "se"
|
||||
dna = list(4090)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = MORPHBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/antimorph
|
||||
name = "DNA-Injector (Anti-Morph)"
|
||||
desc = "Cures identity crisis."
|
||||
dnatype = "se"
|
||||
dna = list(1)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = MORPHBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/noprints
|
||||
name = "DNA-Injector (No Prints)"
|
||||
desc = "Better than a pair of budget insulated gloves."
|
||||
dnatype = "se"
|
||||
dna = list(4090)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = NOPRINTSBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/antinoprints
|
||||
name = "DNA-Injector (Anti-No Prints)"
|
||||
desc = "Not quite as good as a pair of budget insulated gloves."
|
||||
dnatype = "se"
|
||||
dna = list(1)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = NOPRINTSBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/insulation
|
||||
name = "DNA-Injector (Shock Immunity)"
|
||||
desc = "Better than a pair of real insulated gloves."
|
||||
dnatype = "se"
|
||||
dna = list(4090)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = SHOCKIMMUNITYBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/antiinsulation
|
||||
name = "DNA-Injector (Anti-Shock Immunity)"
|
||||
desc = "Not quite as good as a pair of real insulated gloves."
|
||||
dnatype = "se"
|
||||
dna = list(1)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = SHOCKIMMUNITYBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/midgit
|
||||
name = "DNA-Injector (Small Size)"
|
||||
desc = "Makes you shrink."
|
||||
dnatype = "se"
|
||||
dna = list(4090)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = SMALLSIZEBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/antimidgit
|
||||
name = "DNA-Injector (Anti-Small Size)"
|
||||
desc = "Makes you grow. But not too much."
|
||||
dnatype = "se"
|
||||
dna = list(1)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = SMALLSIZEBLOCK
|
||||
|
||||
/////////////////////////////////////
|
||||
/obj/item/weapon/dnainjector/antiglasses
|
||||
name = "DNA-Injector (Anti-Glasses)"
|
||||
desc = "Toss away those glasses!"
|
||||
dnatype = "se"
|
||||
dna = "708"
|
||||
block = 1
|
||||
dna = list(1)
|
||||
//block = 1
|
||||
New()
|
||||
..()
|
||||
block = GLASSESBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/glassesmut
|
||||
name = "DNA-Injector (Glasses)"
|
||||
desc = "Will make you need dorkish glasses."
|
||||
dnatype = "se"
|
||||
dna = "BD6"
|
||||
block = 1
|
||||
dna = list(4090)
|
||||
//block = 1
|
||||
New()
|
||||
..()
|
||||
block = GLASSESBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/epimut
|
||||
name = "DNA-Injector (Epi.)"
|
||||
desc = "Shake shake shake the room!"
|
||||
dnatype = "se"
|
||||
dna = "FA0"
|
||||
block = 3
|
||||
dna = list(4090)
|
||||
//block = 3
|
||||
New()
|
||||
..()
|
||||
block = HEADACHEBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/antiepi
|
||||
name = "DNA-Injector (Anti-Epi.)"
|
||||
desc = "Will fix you up from shaking the room."
|
||||
dnatype = "se"
|
||||
dna = "708"
|
||||
block = 3
|
||||
////////////////////////////////////
|
||||
dna = list(1)
|
||||
//block = 3
|
||||
New()
|
||||
..()
|
||||
block = HEADACHEBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/anticough
|
||||
name = "DNA-Injector (Anti-Cough)"
|
||||
desc = "Will stop that awful noise."
|
||||
dnatype = "se"
|
||||
dna = "708"
|
||||
block = 5
|
||||
dna = list(1)
|
||||
//block = 5
|
||||
New()
|
||||
..()
|
||||
block = COUGHBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/coughmut
|
||||
name = "DNA-Injector (Cough)"
|
||||
desc = "Will bring forth a sound of horror from your throat."
|
||||
dnatype = "se"
|
||||
dna = "BD6"
|
||||
block = 5
|
||||
dna = list(4090)
|
||||
//block = 5
|
||||
New()
|
||||
..()
|
||||
block = COUGHBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/clumsymut
|
||||
name = "DNA-Injector (Clumsy)"
|
||||
desc = "Makes clumsy minions."
|
||||
dnatype = "se"
|
||||
dna = "FA0"
|
||||
dna = list(4090)
|
||||
//block = 6
|
||||
New()
|
||||
..()
|
||||
@@ -237,7 +497,7 @@
|
||||
name = "DNA-Injector (Anti-Clumy)"
|
||||
desc = "Cleans up confusion."
|
||||
dnatype = "se"
|
||||
dna = "708"
|
||||
dna = list(1)
|
||||
//block = 6
|
||||
New()
|
||||
..()
|
||||
@@ -247,36 +507,39 @@
|
||||
name = "DNA-Injector (Anti-Tour.)"
|
||||
desc = "Will cure tourrets."
|
||||
dnatype = "se"
|
||||
dna = "708"
|
||||
block = 7
|
||||
dna = list(1)
|
||||
//block = 7
|
||||
New()
|
||||
..()
|
||||
block = TWITCHBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/tourmut
|
||||
name = "DNA-Injector (Tour.)"
|
||||
desc = "Gives you a nasty case off tourrets."
|
||||
dnatype = "se"
|
||||
dna = "BD6"
|
||||
block = 7
|
||||
dna = list(4090)
|
||||
//block = 7
|
||||
New()
|
||||
..()
|
||||
block = TWITCHBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/stuttmut
|
||||
name = "DNA-Injector (Stutt.)"
|
||||
desc = "Makes you s-s-stuttterrr"
|
||||
dnatype = "se"
|
||||
dna = "FA0"
|
||||
block = 9
|
||||
dna = list(4090)
|
||||
//block = 9
|
||||
New()
|
||||
..()
|
||||
block = NERVOUSBLOCK
|
||||
|
||||
|
||||
/obj/item/weapon/dnainjector/antistutt
|
||||
name = "DNA-Injector (Anti-Stutt.)"
|
||||
desc = "Fixes that speaking impairment."
|
||||
dnatype = "se"
|
||||
dna = "708"
|
||||
block = 9
|
||||
|
||||
/obj/item/weapon/dnainjector/antifire
|
||||
name = "DNA-Injector (Anti-Fire)"
|
||||
desc = "Cures fire."
|
||||
dnatype = "se"
|
||||
dna = "708"
|
||||
//block = 10
|
||||
dna = list(1)
|
||||
//block = 9
|
||||
New()
|
||||
..()
|
||||
block = FIREBLOCK
|
||||
@@ -295,7 +558,7 @@
|
||||
name = "DNA-Injector (Blind)"
|
||||
desc = "Makes you not see anything."
|
||||
dnatype = "se"
|
||||
dna = "FA0"
|
||||
dna = list(4090)
|
||||
//block = 11
|
||||
New()
|
||||
..()
|
||||
@@ -305,7 +568,7 @@
|
||||
name = "DNA-Injector (Anti-Blind)"
|
||||
desc = "ITS A MIRACLE!!!"
|
||||
dnatype = "se"
|
||||
dna = "708"
|
||||
dna = list(1)
|
||||
//block = 11
|
||||
New()
|
||||
..()
|
||||
@@ -335,7 +598,7 @@
|
||||
name = "DNA-Injector (Deaf)"
|
||||
desc = "Sorry, what did you say?"
|
||||
dnatype = "se"
|
||||
dna = "FA0"
|
||||
dna = list(4090)
|
||||
//block = 13
|
||||
New()
|
||||
..()
|
||||
@@ -345,22 +608,48 @@
|
||||
name = "DNA-Injector (Anti-Deaf)"
|
||||
desc = "Will make you hear once more."
|
||||
dnatype = "se"
|
||||
dna = "708"
|
||||
dna = list(1)
|
||||
//block = 13
|
||||
New()
|
||||
..()
|
||||
block = DEAFBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/hallucination
|
||||
name = "DNA-Injector (Halluctination)"
|
||||
desc = "What you see isn't always what you get."
|
||||
dnatype = "se"
|
||||
dna = list(4090)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = HALLUCINATIONBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/antihallucination
|
||||
name = "DNA-Injector (Anti-Hallucination)"
|
||||
desc = "What you see is what you get."
|
||||
dnatype = "se"
|
||||
dna = list(1)
|
||||
//block = 2
|
||||
New()
|
||||
..()
|
||||
block = HALLUCINATIONBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/h2m
|
||||
name = "DNA-Injector (Human > Monkey)"
|
||||
desc = "Will make you a flea bag."
|
||||
dnatype = "se"
|
||||
dna = "FA0"
|
||||
block = 14
|
||||
dna = list(4090)
|
||||
//block = 14
|
||||
New()
|
||||
..()
|
||||
block = MONKEYBLOCK
|
||||
|
||||
/obj/item/weapon/dnainjector/m2h
|
||||
name = "DNA-Injector (Monkey > Human)"
|
||||
desc = "Will make you...less hairy."
|
||||
dnatype = "se"
|
||||
dna = "708"
|
||||
block = 14
|
||||
dna = list(1)
|
||||
//block = 14
|
||||
New()
|
||||
..()
|
||||
block = MONKEYBLOCK
|
||||
|
||||
Reference in New Issue
Block a user