mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-22 19:47:22 +01:00
Changes Colourblindness from a Preference to a Disability
For Vulpkanin and Tajara, it gives them their species-specific colourblindness but their excellent darksight, too. Otherwise it gives noir vision. You can choose this disability at character creation. It is off by default. You can turn it off via genetics and mutadone. Fixes Cling Transform&Lesser/Greater form & Darksight bugs Transforming to an identity will now, with 100% reliability, give you the exact appearance as that ability bar the body_accessory and the secondary hair/facial hair colours. Same thing with going from lesser form to an identity that was not the one you lesser formed with. Fixes the darksight bug from the last commit, happened 'cause typo. Woops. Eye Transplantation Applies Eye-dependent Genes Transplanting colourblind Vulpkanin/Tajara eyes into a Human gives the Human the dark_view and unique colourblindness of said Vulpkanin eyes. Removing colourblind eyes will take the disability with it, meaning the person will have colour vision/low darksight.
This commit is contained in:
@@ -344,6 +344,7 @@
|
||||
slot = "eyes"
|
||||
var/list/eye_colour = list(0,0,0)
|
||||
var/list/colourmatrix = null
|
||||
var/list/colourblind_special = list("colour_matrix" = null, "darkview" = null) //Special colourblindness parameters.
|
||||
var/dark_view = 2 //Default dark_view for Humans.
|
||||
var/weld_proof = null //If set, the eyes will not take damage during welding. eg. IPC optical sensors do not take damage when they weld things while all other eyes will.
|
||||
|
||||
@@ -355,6 +356,19 @@
|
||||
if(istype(M) && eye_colour)
|
||||
M.update_body() //Apply our eye colour to the target.
|
||||
|
||||
for(var/datum/dna/gene/G in eye_dependent_genes) //Handle the application of the eye-dependent genes from the eye to the new host mob if the genes are active.
|
||||
if(dna && dna.GetSEState(G.block)) //If the eye-dependent gene in the eye's DNA is active, activate it on the human and genemutcheck to apply its effects.
|
||||
M.dna.SetSEState(G.block,1,1)
|
||||
genemutcheck(M,G.block,null,MUTCHK_FORCED)
|
||||
|
||||
/obj/item/organ/internal/eyes/remove(mob/living/carbon/human/M, special = 0)
|
||||
for(var/datum/dna/gene/G in eye_dependent_genes) //Handle the removal of the eye-dependent genes from the eye to the new host mob if the genes are active.
|
||||
if(G.type in M.active_genes) //If there's an active eye-dependent gene on the mob, turn it off.
|
||||
dna = M.dna.Clone() //Preserve the eye-dependent genes by ensuring the genome on the eyes remains intact.
|
||||
M.dna.SetSEState(G.block,0,1)
|
||||
genemutcheck(M,G.block,null,MUTCHK_FORCED)
|
||||
.=..()
|
||||
|
||||
/obj/item/organ/internal/eyes/surgeryize()
|
||||
if(!owner)
|
||||
return
|
||||
|
||||
@@ -2,11 +2,8 @@
|
||||
alcohol_intensity = 1.4
|
||||
species = "Tajaran"
|
||||
|
||||
/obj/item/organ/internal/eyes/tajaran /*Most Tajara are surgically augmented at birth for full colour vision, although it cost them their darksight (darksight = 2) unless they choose otherwise in character creation (darksight = 8 but colourblind).
|
||||
However, this organ define is for unaugmented eyes so cloned Tajara are colourblind but have excellent darksight.*/
|
||||
/obj/item/organ/internal/eyes/tajaran /*Most Tajara see in full colour as a result of genetic augmentation, although it cost them their darksight (darksight = 2)
|
||||
unless they choose otherwise by selecting the colourblind disability in character creation (darksight = 8 but colourblind).*/
|
||||
name = "tajaran eyeballs"
|
||||
species = "Tajaran"
|
||||
dark_view = 8
|
||||
colourmatrix = list(0.4,0.2,0.4,\
|
||||
0.4,0.6,0.0,\
|
||||
0.2,0.2,0.6) //Slightly less richness of hues or saturation of colours than Vulpkanin eyes. Pastel colour scheme, blues slightly green-shifted, reds slightly blue-shifted, greens yellow-shifted.
|
||||
colourblind_special = list("colour_matrix" = MATRIX_TAJ_CBLIND, "darkview" = 8) //The colour matrix and darksight parameters that the mob will recieve when they get the disability.
|
||||
|
||||
@@ -2,11 +2,8 @@
|
||||
alcohol_intensity = 1.4
|
||||
species = "Vulpkanin"
|
||||
|
||||
/obj/item/organ/internal/eyes/vulpkanin /*Most Vulpkanin are surgically augmented at birth for full colour vision, although it cost them their darksight (darksight = 2) unless they choose otherwise in character creation (darksight = 8 but colourblind).
|
||||
However, this organ define is for unaugmented eyes so cloned Vulpkanin are colourblind but have excellent darksight.*/
|
||||
/obj/item/organ/internal/eyes/vulpkanin /*Most Vulpkanin see in full colour as a result of genetic augmentation, although it cost them their darksight (darksight = 2)
|
||||
unless they choose otherwise by selecting the colourblind disability in character creation (darksight = 8 but colourblind).*/
|
||||
name = "vulpkanin eyeballs"
|
||||
species = "Vulpkanin"
|
||||
dark_view = 8
|
||||
colourmatrix = list(0.5,0.4,0.1,\
|
||||
0.5,0.4,0.1,\
|
||||
0.0,0.2,0.8) //Seeing in tones of blues and yellows, blind to greens. More richness of hue and saturation of colour than Tajara.
|
||||
colourblind_special = list("colour_matrix" = MATRIX_VULP_CBLIND, "darkview" = 8) //The colour matrix and darksight parameters that the mob will recieve when they get the disability.
|
||||
|
||||
Reference in New Issue
Block a user