Minor Genetics Balance

This commit is contained in:
Fox-McCloud
2015-08-15 18:19:51 -04:00
parent df1a05550d
commit 3fecd07249
3 changed files with 1 additions and 95 deletions
@@ -62,7 +62,7 @@
/obj/item/weapon/dnainjector/proc/inject(mob/living/M as mob, mob/user as mob)
if(istype(M,/mob/living))
M.apply_effect(rand(5,20),IRRADIATE,0)
M.apply_effect(rand(10,25),IRRADIATE,0)
if (!(NOCLONE in M.mutations)) // prevents drained people from having their DNA changed
// UI in syringe.
@@ -85,8 +85,6 @@
M.dna.SetSEValue(block,src.GetValue())
domutcheck(M, null, block!=null)
uses--
if(prob(5))
trigger_side_effect(M)
spawn(0)//this prevents the collapse of space-time continuum
if (user)
-91
View File
@@ -1,91 +0,0 @@
/datum/genetics/side_effect
var/name // name of the side effect, to use as a header in the manual
var/symptom // description of the symptom of the side effect
var/treatment // description of the treatment of the side effect
var/effect // description of what happens when not treated
var/duration = 0 // delay between start() and finish()
proc/start(mob/living/carbon/human/H)
// start the side effect, this should give some cue as to what's happening,
// such as gasping. These cues need to be unique among side-effects.
proc/finish(mob/living/carbon/human/H)
// Finish the side-effect. This should first check whether the cure has been
// applied, and if not, cause bad things to happen.
/datum/genetics/side_effect/genetic_burn
name = "Genetic Burn"
symptom = "Subject's skin turns unusualy red."
treatment = "Inject small dose of salbutamol."
effect = "Subject's skin burns."
duration = 10*30
start(mob/living/carbon/human/H)
H.emote("me", 1, "starts turning very red..")
finish(mob/living/carbon/human/H)
if(!H.reagents.has_reagent("salbutamol"))
for(var/organ_name in list("chest","l_arm","r_arm","r_leg","l_leg","head","groin"))
var/obj/item/organ/external/E = H.get_organ(organ_name)
E.take_damage(0, 5, 0)
/datum/genetics/side_effect/bone_snap
name = "Bone Snap"
symptom = "Subject's limbs tremble notably."
treatment = "Inject small dose of Styptic Powder."
effect = "Subject's bone breaks."
duration = 10*60
start(mob/living/carbon/human/H)
H.emote("me", 1, "'s limbs start shivering uncontrollably.")
finish(mob/living/carbon/human/H)
if(!H.reagents.has_reagent("styptic_powder"))
var/organ_name = pick("chest","l_arm","r_arm","r_leg","l_leg","head","groin")
var/obj/item/organ/external/E = H.get_organ(organ_name)
E.take_damage(20, 0, 0)
E.fracture()
/datum/genetics/side_effect/monkey
name = "Monkey"
symptom = "Subject starts drooling uncontrollably."
treatment = "Inject small dose of charcoal."
effect = "Subject turns into monkey."
duration = 10*90
start(mob/living/carbon/human/H)
H.emote("me", 1, "has drool running down from his mouth.")
finish(mob/living/carbon/human/H)
if(!H.reagents.has_reagent("charcoal"))
H.monkeyize()
/datum/genetics/side_effect/confuse
name = "Confuse"
symptom = "Subject starts drooling uncontrollably."
treatment = "Inject small dose of charcoal."
effect = "Subject becomes confused."
duration = 10*30
start(mob/living/carbon/human/H)
H.emote("me", 1, "has drool running down from his mouth.")
finish(mob/living/carbon/human/H)
if(!H.reagents.has_reagent("charcoal"))
H.confused += 100
proc/trigger_side_effect(mob/living/carbon/human/H)
spawn
if(!istype(H)) return
var/tp = pick(subtypesof(/datum/genetics/side_effect))
var/datum/genetics/side_effect/S = new tp
S.start(H)
spawn(20)
if(!istype(H)) return
H.Weaken(rand(0, S.duration / 50))
sleep(S.duration)
if(!istype(H)) return
H.SetWeakened(0)
S.finish(H)
-1
View File
@@ -1170,7 +1170,6 @@
#include "code\modules\food\recipes_table.dm"
#include "code\modules\garbage collection\garbage_collector.dm"
#include "code\modules\garbage collection\gc_testing.dm"
#include "code\modules\genetics\side_effects.dm"
#include "code\modules\holiday\christmas.dm"
#include "code\modules\holiday\holiday.dm"
#include "code\modules\hydroponics\_hydro_setup.dm"