diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm
index e3f69881da..9afd854329 100644
--- a/code/datums/datacore.dm
+++ b/code/datums/datacore.dm
@@ -122,9 +122,10 @@ proc/get_id_photo(var/mob/living/carbon/human/H)
icobase = 'icons/mob/human_races/r_lizard.dmi'
if("Skrell")
icobase = 'icons/mob/human_races/r_skrell.dmi'
-
if("Vox")
icobase = 'icons/mob/human_races/r_vox.dmi'
+ if("Kidan")
+ icobase = 'icons/mob/human_races/r_kidan.dmi'
else
icobase = 'icons/mob/human_races/r_human.dmi'
diff --git a/code/datums/datumvars.dm b/code/datums/datumvars.dm
index 81abf92546..df3a72391f 100644
--- a/code/datums/datumvars.dm
+++ b/code/datums/datumvars.dm
@@ -730,7 +730,7 @@ client
usr << "This can only be done to instances of type /mob/living/carbon/human"
return
- var/new_mutantrace = input("Please choose a new mutantrace","Mutantrace",null) as null|anything in list("NONE","golem","lizard","slime","plant","shadow","tajaran","skrell","vox")
+ var/new_mutantrace = input("Please choose a new mutantrace","Mutantrace",null) as null|anything in list("NONE","golem","lizard","slime","plant","shadow","tajaran","skrell","vox","kidan")
switch(new_mutantrace)
if(null)
return
diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm
index c36a0ab99d..acb7e3b228 100644
--- a/code/modules/admin/admin_verbs.dm
+++ b/code/modules/admin/admin_verbs.dm
@@ -647,7 +647,7 @@ var/list/admin_verbs_mod = list(
if(!istype(M, /mob/living/carbon/human))
usr << "\red You can only do this to humans!"
return
- switch(alert("Are you sure you wish to edit this mob's appearance? Skrell, Unathi, Vox and Tajaran can result in unintended consequences.",,"Yes","No"))
+ switch(alert("Are you sure you wish to edit this mob's appearance? Skrell, Unathi, Vox, Kida, and Tajara can result in unintended consequences.",,"Yes","No"))
if("No")
return
var/new_facial = input("Please select facial hair color.", "Character Generation") as color
diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm
index 8d5376c313..75ead11e4c 100644
--- a/code/modules/client/preferences.dm
+++ b/code/modules/client/preferences.dm
@@ -792,18 +792,22 @@ datum/preferences
if(is_alien_whitelisted(user, "Skrell")) //Check for Skrell and admins
new_species += "Skrell"
whitelisted = 1
- if(is_alien_whitelisted(user, "Vox")) //Check for Skrell and admins
+ if(is_alien_whitelisted(user, "Vox")) //Check for Vox and admins
new_species += "Vox"
whitelisted = 1
-
+ if(is_alien_whitelisted(user, "Kidan")) // Check for Kidan and admins
+ new_species += "Kidan"
+ whitelisted = 1
if(!whitelisted)
alert(user, "You cannot change your species as you need to be whitelisted. If you wish to be whitelisted contact an admin in-game, on the forums, or on IRC.")
+
else //Not using the whitelist? Aliens for everyone!
new_species += "Tajaran"
new_species += "Unathi"
new_species += "Skrell"
new_species += "Vox"
+ new_species += "Kidan"
species = input("Please select a species", "Character Generation", null) in new_species
if(prev_species != species)
diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm
index 63d685bfbd..77811f9c81 100644
--- a/code/modules/mob/living/carbon/human/human.dm
+++ b/code/modules/mob/living/carbon/human/human.dm
@@ -817,6 +817,8 @@
return "Mobile vegetation"
if("golem")
return "Animated Construct"
+ if("kidan")
+ return "Kidan"
else
return "Human"
@@ -829,7 +831,9 @@
else if(src.dna.mutantrace == "tajaran")
return "Tajaran"
else if(src.dna.mutantrace == "vox")
- return "vox"
+ return "Vox"
+ else if(src.dna.mutantrace == "kidan")
+ return "Kidan"
/mob/living/carbon/proc/update_mutantrace_languages()
if(src.dna)
@@ -841,6 +845,8 @@
src.tajaran_talk_understand = 1
else if(src.dna.mutantrace == "vox")
src.vox_talk_understand = 1
+ else if(src.dna.mutantrace == "kidan")
+ src.kidan_talk_understand = 1
/mob/living/carbon/human/proc/play_xylophone()
if(!src.xylophone)
diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm
index 9d29d317c8..f10120d66c 100644
--- a/code/modules/mob/living/carbon/human/update_icons.dm
+++ b/code/modules/mob/living/carbon/human/update_icons.dm
@@ -444,10 +444,12 @@ proc/get_damage_icon_part(damage_state, body_part)
if("skrell")
race_icon = 'icons/mob/human_races/r_skrell.dmi'
deform_icon = 'icons/mob/human_races/r_def_skrell.dmi'
-
if("vox")
race_icon = 'icons/mob/human_races/r_vox.dmi'
deform_icon = 'icons/mob/human_races/r_def_vox.dmi'
+ if("kidan")
+ race_icon = 'icons/mob/human_races/r_kidan.dmi'
+ deform_icon = 'icons/mob/human_races/r_def_kidan.dmi'
else
race_icon = 'icons/mob/human_races/r_human.dmi'
diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm
index 420e20a1b9..838187f62e 100644
--- a/code/modules/mob/living/say.dm
+++ b/code/modules/mob/living/say.dm
@@ -19,6 +19,7 @@ var/list/department_radio_keys = list(
":j" = "tajaran", "#j" = "tajaran", ".j" = "tajaran",
":o" = "soghun", "#o" = "soghun", ".o" = "soghun",
":v" = "vox", "#v" = "vox", ".v" = "vox",
+ ":q" = "kidan", "#q" = "kidan", ".q" = "kidan",
":R" = "right hand", "#R" = "right hand", ".R" = "right hand",
":L" = "left hand", "#L" = "left hand", ".L" = "left hand",
@@ -39,6 +40,7 @@ var/list/department_radio_keys = list(
":J" = "tajaran", "#J" = "tajaran", ".J" = "tajaran",
":O" = "soghun", "#O" = "soghun", ".O" = "soghun",
":V" = "vox", "#V" = "vox", ".V" = "vox",
+ ":Q" = "kidan", "#Q" = "kidan", ".Q" = "kidan",
//kinda localization -- rastaf0
//same keys as above, but on russian keyboard layout. This file uses cp1251 as encoding.
@@ -188,6 +190,7 @@ var/list/department_radio_keys = list(
var/is_speaking_soghun = 0
var/is_speaking_taj = 0
var/is_speaking_vox = 0
+ var/is_speaking_kidan = 0
var/is_speaking_radio = 0
switch (message_mode)
@@ -290,6 +293,10 @@ var/list/department_radio_keys = list(
if(vox_talk_understand || universal_speak)
is_speaking_vox = 1
+ if ("kidan")
+ if(kidan_talk_understand || universal_speak)
+ is_speaking_kidan = 1
+
if("changeling")
if(mind && mind.changeling)
for(var/mob/Changeling in mob_list)
@@ -388,6 +395,8 @@ var/list/department_radio_keys = list(
heard_a += M
else if(is_speaking_vox && (M:vox_talk_understand || M:universal_speak))
heard_a += M
+ else if(is_speaking_kidan && (M:kidan_talk_understand || M:universal_speak))
+ heard_a += M
else
heard_b += M
else
@@ -403,7 +412,7 @@ var/list/department_radio_keys = list(
var/rendered = null
if (length(heard_a))
- var/message_a = say_quote(message,is_speaking_soghun,is_speaking_skrell,is_speaking_taj,is_speaking_vox)
+ var/message_a = say_quote(message,is_speaking_soghun,is_speaking_skrell,is_speaking_taj,is_speaking_vox,is_speaking_kidan)
if (italics)
message_a = "[message_a]"
@@ -428,7 +437,7 @@ var/list/department_radio_keys = list(
message_b = voice_message
else
message_b = stars(message)
- message_b = say_quote(message_b,is_speaking_soghun,is_speaking_skrell,is_speaking_taj,is_speaking_vox)
+ message_b = say_quote(message_b,is_speaking_soghun,is_speaking_skrell,is_speaking_taj,is_speaking_vox,is_speaking_kidan)
if (italics)
message_b = "[message_b]"
diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm
index 9715e6ed20..8f1868b716 100644
--- a/code/modules/mob/mob_defines.dm
+++ b/code/modules/mob/mob_defines.dm
@@ -206,12 +206,13 @@
//Whether or not mobs can understand other mobtypes. These stay in /mob so that ghosts can hear everything.
var/universal_speak = 0 // Set to 1 to enable the mob to speak to everyone -- TLE
- var/robot_talk_understand = 0
- var/alien_talk_understand = 0
- var/tajaran_talk_understand = 0
- var/soghun_talk_understand = 0
- var/skrell_talk_understand = 0
- var/vox_talk_understand = 0
+ var/robot_talk_understand = 0
+ var/alien_talk_understand = 0
+ var/tajaran_talk_understand = 0
+ var/soghun_talk_understand = 0
+ var/skrell_talk_understand = 0
+ var/vox_talk_understand = 0
+ var/kidan_talk_understand = 0
var/has_limbs = 1 //Whether this mob have any limbs he can move with
var/can_stand = 1 //Whether this mob have ability to stand
diff --git a/code/modules/mob/new_player/new_player.dm b/code/modules/mob/new_player/new_player.dm
index 686007c717..f2859af519 100644
--- a/code/modules/mob/new_player/new_player.dm
+++ b/code/modules/mob/new_player/new_player.dm
@@ -353,6 +353,10 @@
if(is_alien_whitelisted(src, "Vox"|| !config.usealienwhitelist))
new_character.dna.mutantrace = "vox"
new_character.vox_talk_understand = 1
+ if(client.prefs.species == "Kidan")
+ if(is_alien_whitelisted(src, "Vox"|| !config.usealienwhitelist))
+ new_character.dna.mutantrace = "kidan"
+ new_character.kidan_talk_understand = 1
if(ticker.random_players)
new_character.gender = pick(MALE, FEMALE)
diff --git a/code/modules/mob/new_player/preferences_setup.dm b/code/modules/mob/new_player/preferences_setup.dm
index f7c965d2fd..821a95e4b6 100644
--- a/code/modules/mob/new_player/preferences_setup.dm
+++ b/code/modules/mob/new_player/preferences_setup.dm
@@ -144,9 +144,10 @@ datum/preferences
icobase = 'icons/mob/human_races/r_lizard.dmi'
if("Skrell")
icobase = 'icons/mob/human_races/r_skrell.dmi'
-
if("Vox")
icobase = 'icons/mob/human_races/r_vox.dmi'
+ if("Kidan")
+ icobase = 'icons/mob/human_races/r_vox.dmi'
else
icobase = 'icons/mob/human_races/r_human.dmi'
diff --git a/code/modules/mob/new_player/sprite_accessories.dm b/code/modules/mob/new_player/sprite_accessories.dm
index 4d4baf0ba1..9a321f2038 100644
--- a/code/modules/mob/new_player/sprite_accessories.dm
+++ b/code/modules/mob/new_player/sprite_accessories.dm
@@ -285,7 +285,6 @@
icon_state = "hair_e"
gender = MALE // turnoff!
-
bald
name = "Bald"
icon_state = "bald"
@@ -306,7 +305,7 @@
name = "Shaved"
icon_state = "bald"
gender = NEUTER
- species_allowed = list("Human","Unathi","Tajaran","Skrell","Vox")
+ species_allowed = list("Human","Unathi","Tajaran","Skrell","Vox","Kidan")
watson
name = "Watson Mustache"
@@ -484,7 +483,7 @@
species_allowed = list("Tajaran")
taj_ears_spiky
- name = "Tajara Spiky"
+ name = "Tajara Spiky"
icon_state = "hair_tajspiky"
species_allowed = list("Tajaran")
diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm
index 9f3660eb7c..a0b765d8d4 100644
--- a/code/modules/mob/say.dm
+++ b/code/modules/mob/say.dm
@@ -69,7 +69,7 @@
return 1
return 0
-/mob/proc/say_quote(var/text,var/is_speaking_soghun,var/is_speaking_skrell,var/is_speaking_tajaran,var/is_speaking_vox)
+/mob/proc/say_quote(var/text,var/is_speaking_soghun,var/is_speaking_skrell,var/is_speaking_tajaran,var/is_speaking_vox,var/is_speaking_kidan)
if(!text)
return "says, \"...\""; //not the best solution, but it will stop a large number of runtimes. The cause is somewhere in the Tcomms code
//tcomms code is still runtiming somewhere here
@@ -82,6 +82,8 @@
return "mrowls, \"[text]\"";
if (is_speaking_vox)
return "chirps, \"[text]\"";
+ if (is_speaking_kidan)
+ return "chitters, \"[text]\"";
//Needs Virus2
// if (src.disease_symptoms & DISEASE_HOARSE)
// return "rasps, \"[text]\"";
diff --git a/code/modules/organs/organ_external.dm b/code/modules/organs/organ_external.dm
index d166dccd38..5e1fba994c 100644
--- a/code/modules/organs/organ_external.dm
+++ b/code/modules/organs/organ_external.dm
@@ -740,9 +740,10 @@ obj/item/weapon/organ/New(loc, mob/living/carbon/human/H)
base = new('icons/mob/human_races/r_lizard.dmi')
if("skrell")
base = new('icons/mob/human_races/r_skrell.dmi')
-
if("vox")
base = new('icons/mob/human_races/r_vox.dmi')
+ if("kidan")
+ base = new('icons/mob/human_races/r_kidan.dmi')
else
base = new('icons/mob/human_races/r_human.dmi')
diff --git a/code/modules/projectiles/projectile/change.dm b/code/modules/projectiles/projectile/change.dm
index 2b4b4c457d..604cf5428b 100644
--- a/code/modules/projectiles/projectile/change.dm
+++ b/code/modules/projectiles/projectile/change.dm
@@ -74,7 +74,7 @@
var/mob/living/carbon/human/H = new_mob
if(H.dna)
- H.dna.mutantrace = pick("lizard","tajaran","skrell","golem","slime","plant","vox",4;"")
+ H.dna.mutantrace = pick("lizard","tajaran","skrell","golem","slime","plant","vox","kidan",4;"")
else
return
diff --git a/code/stylesheet.dm b/code/stylesheet.dm
index 902160e9ef..5eb0ec9991 100644
--- a/code/stylesheet.dm
+++ b/code/stylesheet.dm
@@ -56,6 +56,7 @@ h1.alert, h2.alert {color: #000000;}
.skrell {color: #00CED1;}
.soghun {color: #228B22;}
.vox {color: #AA00AA;}
+.kidan {color: #cc9900;}
.say_quote {font-family: Georgia, Verdana, sans-serif;}
.interface {color: #330033;}