Merge pull request #11769 from phil235/FixMutations

Some dna fixes
This commit is contained in:
Razharas
2015-09-15 22:31:59 +03:00
31 changed files with 968 additions and 961 deletions
+2 -2
View File
@@ -186,7 +186,7 @@
if(TRAITS & TRAIT_SMART)
smartness = 25
else if(TRAITS & TRAIT_DUMB)
mutations |= CLUMSY
disabilities |= CLUMSY
smartness = 75
if(TRAITS & TRAIT_MEAN)
@@ -293,7 +293,7 @@
/mob/living/carbon/human/interactive/Life()
..()
if(isnotfunc())
if(isnotfunc())
walk(src,0)
return
if(a_intent != "disarm")
@@ -66,5 +66,5 @@
/mob/living/carbon/proc/Drain()
ChangeToHusk()
mutations |= NOCLONE
disabilities |= NOCLONE
return 1
@@ -29,8 +29,9 @@
I.Insert(src)
// for spawned humans; overwritten by other code
ready_dna(src)
create_dna(src)
randomize_human(src)
ready_dna(src)
make_blood()
@@ -18,7 +18,6 @@
var/lip_color = "white"
var/age = 30 //Player's age (pure fluff)
var/blood_type = "A+" //Player's bloodtype
var/underwear = "Nude" //Which underwear the player wants
var/undershirt = "Nude" //Which undershirt the player wants
@@ -56,7 +56,7 @@
if( head && (head.flags_inv&HIDEFACE) )
return if_no_face //Likewise for hats
var/obj/item/organ/limb/O = get_organ("head")
if( (status_flags&DISFIGURED) || (O.brutestate+O.burnstate)>2 || cloneloss>50 || !real_name ) //disfigured. use id-name if possible
if( !O || (status_flags&DISFIGURED) || (O.brutestate+O.burnstate)>2 || cloneloss>50 || !real_name ) //disfigured. use id-name if possible
return if_no_face
return real_name
@@ -372,9 +372,9 @@
/mob/living/silicon/pai/proc/CheckDNA(mob/living/carbon/M, mob/living/silicon/pai/P)
var/answer = input(M, "[P] is requesting a DNA sample from you. Will you allow it to confirm your identity?", "[P] Check DNA", "No") in list("Yes", "No")
if(answer == "Yes")
var/turf/T = get_turf(P.loc)
for (var/mob/v in viewers(T))
v.show_message("<span class='notice'>[M] presses \his thumb against [P].</span>", 3, "<span class='notice'>[P] makes a sharp clicking sound as it extracts DNA material from [M].</span>", 2)
M.visible_message("<span class='notice'>[M] presses \his thumb against [P].</span>",\
"<span class='notice'>You press your thumb against [P].</span>",\
"<span class='notice'>[P] makes a sharp clicking sound as it extracts DNA material from [M].</span>")
if(!check_dna_integrity(M))
P << "<b>No DNA detected</b>"
return
-3
View File
@@ -106,9 +106,6 @@
var/radiation = 0//Carbon
var/list/mutations = list() //Carbon -- Doohl
//see: setup.dm for list of mutations
var/voice_name = "unidentifiable voice"
var/list/faction = list("neutral") //A list of factions that this mob is currently in, for hostile mob targetting, amongst other things
-3
View File
@@ -453,9 +453,6 @@ It's fairly easy to fix if dealing with single letters but not so much with comp
return 1
return 0
/mob/proc/has_mutation(mutation)
return mutation in src.mutations ? 1 : 0
/proc/get_both_hands(mob/living/carbon/M)
var/list/hands = list(M.l_hand, M.r_hand)
return hands
@@ -40,7 +40,7 @@
M.name = src.name
M.real_name = src.real_name
if(check_dna_integrity(src) && istype(M, /mob/living/carbon))
if(check_dna_integrity(src))
var/mob/living/carbon/C = src
var/mob/living/carbon/D = M
D.dna = C.dna
+2 -1
View File
@@ -59,6 +59,7 @@
viruses = list()
for(var/datum/disease/D in O.viruses)
D.affected_mob = O
D.holder = O
//keep damage?
if (tr_flags & TR_KEEPDAMAGE)
@@ -169,7 +170,6 @@
else
hardset_dna(O, null, null, null, null, dna.species.type)
dna = null
if(newname) //if there's a name as an argument, always take that one over the current name
O.real_name = newname
else
@@ -189,6 +189,7 @@
viruses = list()
for(var/datum/disease/D in O.viruses)
D.affected_mob = O
D.holder = O
O.med_hud_set_status()
//keep damage?