Swapped languages and datums over to global lists. Updated verbs.

This commit is contained in:
Zuhayr
2013-08-05 20:34:38 -07:00
parent dcad0bc6b4
commit 98bbb095ad
11 changed files with 86 additions and 63 deletions

View File

@@ -507,13 +507,14 @@ client/proc/one_click_antag()
i++
newname += pick(list("ti","hi","ki","ya","ta","ha","ka","ya","chi","cha","kah"))
new_vox.languages += new /datum/language/vox
new_vox.real_name = capitalize(newname)
new_vox.name = new_vox.real_name
new_vox.age = rand(12,20)
new_vox.dna.ready_dna(new_vox) // Creates DNA.
new_vox.set_species(new /datum/species/vox) // Actually makes the vox! How about that.
new_vox.dna.mutantrace = "vox"
new_vox.set_species("Vox") // Actually makes the vox! How about that.
new_vox.add_language("Vox-pidgin")
new_vox.mind_initialize()
new_vox.mind.assigned_role = "MODE"
new_vox.mind.special_role = "Vox Raider"

View File

@@ -30,4 +30,29 @@
name = "Vox-pidgin"
speech_verb = "shrieks"
colour = "vox"
key = "v"
key = "v"
// Language handling.
/mob/proc/add_language(var/language)
var/datum/language/new_language = all_languages[language]
if(!istype(new_language,/datum/language))
return
for(var/datum/language/L in languages)
if(L && L.name == new_language)
return 0
languages += new_language
return 1
/mob/proc/remove_language(var/rem_language)
for(var/datum/language/L in languages)
if(L && L.name == rem_language)
languages -= L
return 1
return 0

View File

@@ -13,22 +13,22 @@
/mob/living/carbon/human/skrell/New()
h_style = "Skrell Male Tentacles"
set_species(new /datum/species/skrell(src))
set_species("Skrell")
..()
/mob/living/carbon/human/tajaran/New()
h_style = "Tajaran Ears"
set_species(new /datum/species/tajaran(src))
set_species("Tajara")
..()
/mob/living/carbon/human/unathi/New()
h_style = "Unathi Horns"
set_species(new /datum/species/unathi(src))
set_species("Unathi")
..()
/mob/living/carbon/human/vox/New()
h_style = "Short Vox Quills"
species = new /datum/species/vox(src)
set_species("Vox")
..()
/mob/living/carbon/human/diona/New()
@@ -41,7 +41,9 @@
set_species()
if(species.language)
languages += species.language
var/datum/language/L = all_languages[species.language]
if(L)
languages += L
var/datum/reagents/R = new/datum/reagents(1000)
reagents = R
@@ -1260,21 +1262,15 @@ mob/living/carbon/human/yank_out_object()
else
usr << "\blue [self ? "Your" : "[src]'s"] pulse is [src.get_pulse(GETPULSE_HAND)]."
/mob/living/carbon/human/proc/set_species(var/datum/species/new_species)
/mob/living/carbon/human/proc/set_species(var/new_species)
if(!new_species)
new_species = new /datum/species/human
new_species = "Human"
if(species)
if(species && (species.name && species.name == new_species))
return
if(species.name == new_species.name)
return
var/temp = species
species = new_species
del(temp)
else
species = new_species
species = all_species[new_species]
spawn(0)
update_icons()

View File

@@ -25,7 +25,7 @@
var/tail // Name of tail image in species effects icon file.
var/primitive // Lesser form, if any (ie. monkey for humans)
var/datum/language/language // Default racial language, if any.
var/language // Default racial language, if any.
var/attack_verb = "punch" // Empty hand hurt intent verb.
var/breath_type // Non-oxygen gas breathed, if any.
@@ -56,7 +56,7 @@
name = "Unathi"
icobase = 'icons/mob/human_races/r_lizard.dmi'
deform = 'icons/mob/human_races/r_def_lizard.dmi'
language = new /datum/language/unathi
language = "Sinta'unathi"
tail = "sogtail"
attack_verb = "scratch"
@@ -66,7 +66,7 @@
name = "Tajara"
icobase = 'icons/mob/human_races/r_tajaran.dmi'
deform = 'icons/mob/human_races/r_def_tajaran.dmi'
language = new /datum/language/tajaran
language = "Siik'mas"
tail = "tajtail"
attack_verb = "scratch"
@@ -76,7 +76,7 @@
name = "Skrell"
icobase = 'icons/mob/human_races/r_skrell.dmi'
deform = 'icons/mob/human_races/r_def_skrell.dmi'
language = new /datum/language/skrell
language = "Skrellian"
flags = WHITELISTED | HAS_LIPS | HAS_UNDERWEAR
@@ -84,7 +84,7 @@
name = "Vox"
icobase = 'icons/mob/human_races/r_vox.dmi'
deform = 'icons/mob/human_races/r_def_vox.dmi'
language = new /datum/language/vox
language = "Vox-pidgin"
eyes = "vox_eyes_s"
breath_type = "nitrogen"

View File

@@ -955,23 +955,4 @@ mob/verb/yank_out_object()
pinned -= O
if(!pinned.len)
anchored = 0
return 1
// Language handling.
/mob/proc/add_language(var/datum/language/new_language)
for(var/datum/language/L in languages)
if(L && L.name == new_language.name)
return 0
languages += new_language
return 1
/mob/proc/remove_language(var/datum/language/rem_language)
for(var/datum/language/L in languages)
if(L && L.name == rem_language.name)
languages -= L
return 1
return 0
return 1

View File

@@ -349,26 +349,26 @@
if(client.prefs.species == "Tajaran") //This is like the worst, but it works, so meh. - Erthilo
if(is_alien_whitelisted(src, "Tajaran") || !config.usealienwhitelist)
new_character.set_species(new /datum/species/tajaran)
new_character.languages += new /datum/language/tajaran
new_character.set_species("Tajara")
new_character.add_language("Siik'mas")
if(client.prefs.species == "Unathi")
if(is_alien_whitelisted(src, "Soghun") || !config.usealienwhitelist)
new_character.set_species(new /datum/species/unathi)
new_character.languages += new /datum/language/unathi
new_character.set_species("Unathi")
new_character.add_language("Sinta'unathi")
if(client.prefs.species == "Skrell")
if(is_alien_whitelisted(src, "Skrell") || !config.usealienwhitelist)
new_character.set_species(new /datum/species/skrell)
new_character.languages += new /datum/language/skrell
new_character.set_species("Skrell")
new_character.add_language("Skrellian")
if(client.prefs.language == "Tajaran")
if(is_alien_whitelisted(src, "Language_Tajaran") || !config.usealienwhitelist)
new_character.languages += new /datum/language/tajaran
new_character.add_language("Siik'mas")
if(client.prefs.language == "Unathi")
if(is_alien_whitelisted(src, "Language_Soghun") || !config.usealienwhitelist)
new_character.languages += new /datum/language/unathi
new_character.add_language("Sinta'unathi")
if(client.prefs.language == "Skrell")
if(is_alien_whitelisted(src, "Language_Skrell") || !config.usealienwhitelist)
new_character.languages += new /datum/language/skrell
new_character.add_language("Skrellian")
if(ticker.random_players)
new_character.gender = pick(MALE, FEMALE)

View File

@@ -73,8 +73,8 @@
A.randomize_appearance_for(new_mob)
var/mob/living/carbon/human/H = new_mob
var/newspecies = pick(typesof(/datum/species)-/datum/species)
H.set_species(new newspecies)
var/datum/species/newspecies = pick(all_species)
H.set_species(newspecies.name)
else
return