mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-13 03:33:21 +00:00
Bugfixes for my debugging stuff and for some of the DNA stuff.
This commit is contained in:
@@ -836,11 +836,12 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
|
||||
if(!islist(O.blood_DNA))
|
||||
var/turf/T = get_turf(O)
|
||||
if(istype(O.loc,/turf))
|
||||
src << "[O] at [T.x],[T.y],[T.z] has a non-list blood_DNA variable!"
|
||||
src << "[O] at [T.x],[T.y],[T.z] has a non-list blood_DNA variable! (Last touched by [O.fingerprintslast])"
|
||||
else
|
||||
src << "[O] in [O.loc] at [T.x],[T.y],[T.z] has a non-list blood_DNA variable!"
|
||||
src << "[O] in [O.loc] at [T.x],[T.y],[T.z] has a non-list blood_DNA variable! (Last touched by [O.fingerprintslast])"
|
||||
world << "\red SCAN COMPLETE."
|
||||
world << "Thank you for your patience."
|
||||
return
|
||||
|
||||
|
||||
/client/proc/cmd_debug_prints()
|
||||
@@ -865,21 +866,22 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that
|
||||
if(!islist(O.fingerprints))
|
||||
var/turf/T = get_turf(O)
|
||||
if(istype(O.loc,/turf))
|
||||
src << "[O] at [T.x],[T.y],[T.z] has a non-list fingerprints variable!"
|
||||
src << "[O] at [T.x],[T.y],[T.z] has a non-list fingerprints variable! (Last touched by [O.fingerprintslast])"
|
||||
else
|
||||
src << "[O] in [O.loc] at [T.x],[T.y],[T.z] has a non-list fingerprints variable!"
|
||||
src << "[O] in [O.loc] at [T.x],[T.y],[T.z] has a non-list fingerprints variable! (Last touched by [O.fingerprintslast])"
|
||||
else if (O.fingerprints.len)
|
||||
for(var/i, i <= O.fingerprints.len, i++)
|
||||
for(var/i = 1, i <= O.fingerprints.len, i++)
|
||||
if(length(O.fingerprints[i]) != 69)
|
||||
var/turf/T = get_turf(O)
|
||||
if(isnull(T))
|
||||
src << "[O] at [O.loc] has a fingerprints variable of incorrect length! (TURF NOT FOUND)."
|
||||
src << "[O] at [O.loc] has a fingerprints variable of incorrect length! (TURF NOT FOUND). (Last touched by [O.fingerprintslast])"
|
||||
else
|
||||
if(istype(O.loc,/turf))
|
||||
src << "[O] at [T.x],[T.y],[T.z] has a fingerprints variable of incorrect length!"
|
||||
src << "[O] at [T.x],[T.y],[T.z] has a fingerprints variable of incorrect length! (Last touched by [O.fingerprintslast])"
|
||||
else
|
||||
src << "[O] in [O.loc] at [T.x],[T.y],[T.z] has a fingerprints variable of incorrect length!"
|
||||
src << "[O] in [O.loc] at [T.x],[T.y],[T.z] has a fingerprints variable of incorrect length! (Last touched by [O.fingerprintslast])"
|
||||
break
|
||||
|
||||
world << "\red SCAN COMPLETE."
|
||||
world << "Thank you for your patience."
|
||||
return
|
||||
@@ -2451,7 +2451,11 @@ It can still be worn/put on as normal.
|
||||
g_facial = hex2num(copytext(new_facial, 4, 6))
|
||||
b_facial = hex2num(copytext(new_facial, 6, 8))
|
||||
|
||||
|
||||
var/new_hair = input("Please select hair color.", "Character Generation") as color
|
||||
if(new_facial)
|
||||
r_hair = hex2num(copytext(new_hair, 2, 4))
|
||||
g_hair = hex2num(copytext(new_hair, 4, 6))
|
||||
b_hair = hex2num(copytext(new_hair, 6, 8))
|
||||
|
||||
var/new_eyes = input("Please select eye color.", "Character Generation") as color
|
||||
if(new_eyes)
|
||||
@@ -2461,21 +2465,57 @@ It can still be worn/put on as normal.
|
||||
|
||||
var/new_tone = input("Please select skin tone level: 1-220 (1=albino, 35=caucasian, 150=black, 220='very' black)", "Character Generation") as text
|
||||
|
||||
if (new_tone)
|
||||
if (!new_tone)
|
||||
new_tone = 35
|
||||
s_tone = max(min(round(text2num(new_tone)), 220), 1)
|
||||
s_tone = -s_tone + 35
|
||||
|
||||
var/new_style = input("Please select hair style", "Character Generation") as null|anything in list( "Cut Hair", "Short Hair", "Long Hair", "Mohawk", "Balding", "Wave", "Bedhead", "Dreadlocks", "Ponytail", "Bald" )
|
||||
// hair
|
||||
var/list/all_hairs = typesof(/datum/sprite_accessory/hair) - /datum/sprite_accessory/hair
|
||||
var/list/hairs = list()
|
||||
|
||||
// loop through potential hairs
|
||||
for(var/x in all_hairs)
|
||||
var/datum/sprite_accessory/hair/H = new x // create new hair datum based on type x
|
||||
hairs.Add(H.name) // add hair name to hairs
|
||||
del(H) // delete the hair after it's all done
|
||||
|
||||
var/new_style = input("Please select hair style", "Character Generation") as null|anything in hairs
|
||||
|
||||
// if new style selected (not cancel)
|
||||
if (new_style)
|
||||
h_style = new_style
|
||||
|
||||
new_style = input("Please select facial style", "Character Generation") as null|anything in list("Watson", "Chaplin", "Selleck", "Full Beard", "Long Beard", "Neckbeard", "Van Dyke", "Elvis", "Abe", "Chinstrap", "Hipster", "Goatee", "Hogan", "Shaved")
|
||||
for(var/x in all_hairs) // loop through all_hairs again. Might be slightly CPU expensive, but not significantly.
|
||||
var/datum/sprite_accessory/hair/H = new x // create new hair datum
|
||||
if(H.name == new_style)
|
||||
hair_style = H // assign the hair_style variable a new hair datum
|
||||
break
|
||||
else
|
||||
del(H) // if hair H not used, delete. BYOND can garbage collect, but better safe than sorry
|
||||
|
||||
if (new_style)
|
||||
// facial hair
|
||||
var/list/all_fhairs = typesof(/datum/sprite_accessory/facial_hair) - /datum/sprite_accessory/facial_hair
|
||||
var/list/fhairs = list()
|
||||
|
||||
for(var/x in all_fhairs)
|
||||
var/datum/sprite_accessory/facial_hair/H = new x
|
||||
fhairs.Add(H.name)
|
||||
del(H)
|
||||
|
||||
new_style = input("Please select facial style", "Character Generation") as null|anything in fhairs
|
||||
|
||||
if(new_style)
|
||||
f_style = new_style
|
||||
for(var/x in all_fhairs)
|
||||
var/datum/sprite_accessory/facial_hair/H = new x
|
||||
if(H.name == new_style)
|
||||
facial_hair_style = H
|
||||
break
|
||||
else
|
||||
del(H)
|
||||
|
||||
var/new_gender = input("Please select gender") as null|anything in list("Male","Female")
|
||||
var/new_gender = alert(usr, "Please select gender.", "Character Generation", "Male", "Female")
|
||||
if (new_gender)
|
||||
if(new_gender == "Male")
|
||||
gender = MALE
|
||||
@@ -2513,9 +2553,14 @@ It can still be worn/put on as normal.
|
||||
set category = "Superpower"
|
||||
|
||||
if(!(src.mutations & mRemote))
|
||||
client.eye = client.mob
|
||||
src.verbs -= /mob/living/carbon/human/proc/remoteobserve
|
||||
return
|
||||
|
||||
if(client.eye != client.mob)
|
||||
client.eye = client.mob
|
||||
return
|
||||
|
||||
var/list/mob/creatures = list()
|
||||
|
||||
for(var/mob/living/carbon/h in world)
|
||||
|
||||
@@ -154,8 +154,11 @@
|
||||
|
||||
|
||||
handle_disabilities()
|
||||
if(hallucination > 0)
|
||||
if (mutations & mHallucination)
|
||||
hallucination = 100
|
||||
halloss = 0
|
||||
|
||||
if(hallucination > 0)
|
||||
if(hallucinations.len == 0 && hallucination >= 20 && health > 0)
|
||||
if(prob(2)) //Waaay to often.
|
||||
fake_attack(src)
|
||||
@@ -180,9 +183,7 @@
|
||||
if(flags & PASSTABLE)
|
||||
flags &= ~PASSTABLE
|
||||
|
||||
if (mutations & mHallucination)
|
||||
hallucination = 100
|
||||
halloss = 0
|
||||
|
||||
|
||||
if (mutations & mRegen)
|
||||
src.bruteloss -= 2
|
||||
|
||||
Reference in New Issue
Block a user