mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2026-08-24 05:38:15 +01:00
Merge branch 'master' into upstream-merge-13556
This commit is contained in:
@@ -192,6 +192,9 @@
|
||||
/mob/proc/remove_language(var/rem_language)
|
||||
var/datum/language/L = GLOB.all_languages[rem_language]
|
||||
. = (L in languages)
|
||||
var/prefix = get_custom_prefix_by_lang(src, L)
|
||||
if(prefix)
|
||||
language_keys.Remove(prefix)
|
||||
languages.Remove(L)
|
||||
|
||||
/mob/living/remove_language(rem_language)
|
||||
@@ -240,7 +243,8 @@
|
||||
|
||||
for(var/datum/language/L in languages)
|
||||
if(!(L.flags & NONGLOBAL))
|
||||
. += "<b>[L.name] ([get_language_prefix()][L.key])</b><br/>[L.desc]<br/><br/>"
|
||||
var/lang_key = get_custom_prefix_by_lang(src, L)
|
||||
. += "<b>[L.name] ([get_language_prefix()][L.key][lang_key ? " [get_language_prefix()][lang_key]" : ""])</b><br/>[L.desc]<br/><br/>"
|
||||
|
||||
/mob/living/check_lang_data()
|
||||
. = ""
|
||||
@@ -250,12 +254,13 @@
|
||||
|
||||
for(var/datum/language/L in languages)
|
||||
if(!(L.flags & NONGLOBAL))
|
||||
var/lang_key = get_custom_prefix_by_lang(src, L)
|
||||
if(L == default_language)
|
||||
. += "<b>[L.name] ([get_language_prefix()][L.key])</b> - default - <a href='byond://?src=\ref[src];default_lang=reset'>reset</a><br/>[L.desc]<br/><br/>"
|
||||
. += "<b>[L.name] ([get_language_prefix()][L.key][lang_key ? " [get_language_prefix()][lang_key]" : ""])</b> <a href='byond://?src=\ref[src];set_lang_key=\ref[L]'>Edit Custom Key</a> - default - <a href='byond://?src=\ref[src];default_lang=reset'>reset</a><br/>[L.desc]<br/><br/>"
|
||||
else if (can_speak(L))
|
||||
. += "<b>[L.name] ([get_language_prefix()][L.key])</b> - <a href='byond://?src=\ref[src];default_lang=\ref[L]'>set default</a><br/>[L.desc]<br/><br/>"
|
||||
. += "<b>[L.name] ([get_language_prefix()][L.key][lang_key ? " [get_language_prefix()][lang_key]" : ""])</b> <a href='byond://?src=\ref[src];set_lang_key=\ref[L]'>Edit Custom Key</a> - <a href='byond://?src=\ref[src];default_lang=\ref[L]'>set default</a><br/>[L.desc]<br/><br/>"
|
||||
else
|
||||
. += "<b>[L.name] ([get_language_prefix()][L.key])</b> - cannot speak!<br/>[L.desc]<br/><br/>"
|
||||
. += "<b>[L.name] ([get_language_prefix()][L.key][lang_key ? " [get_language_prefix()][lang_key]" : ""])</b> <a href='byond://?src=\ref[src];set_lang_key=\ref[L]'>Edit Custom Key</a> - cannot speak!<br/>[L.desc]<br/><br/>"
|
||||
|
||||
/mob/verb/check_languages()
|
||||
set name = "Check Known Languages"
|
||||
@@ -279,6 +284,22 @@
|
||||
set_default_language(L)
|
||||
check_languages()
|
||||
return 1
|
||||
else if(href_list["set_lang_key"])
|
||||
var/datum/language/L = locate(href_list["set_lang_key"])
|
||||
if(L && (L in languages))
|
||||
var/old_key = get_custom_prefix_by_lang(src, L)
|
||||
var/custom_key = tgui_input_text(src, "Input a new key for [L.name]", "Language Key", old_key)
|
||||
if(custom_key && length(custom_key) == 1)
|
||||
if(contains_az09(custom_key))
|
||||
language_keys[custom_key] = L
|
||||
if(old_key && old_key != custom_key)
|
||||
language_keys.Remove(old_key)
|
||||
else if(custom_key == " ")
|
||||
if(old_key && old_key != custom_key)
|
||||
language_keys.Remove(old_key)
|
||||
else
|
||||
tgui_alert_async(src, "Improper language key. Rejected.", "Error")
|
||||
check_languages()
|
||||
else
|
||||
return ..()
|
||||
|
||||
@@ -287,5 +308,17 @@
|
||||
if(L.flags & except_flags)
|
||||
continue
|
||||
target.add_language(L.name)
|
||||
for(var/key in source.language_keys)
|
||||
if(L == source.language_keys[key])
|
||||
if(!(key in target.language_keys))
|
||||
target.language_keys[key] = L
|
||||
|
||||
/proc/get_custom_prefix_by_lang(var/mob/our_mob, var/language)
|
||||
if(!our_mob || !our_mob.language_keys.len || !language)
|
||||
return
|
||||
|
||||
for(var/key in our_mob.language_keys)
|
||||
if(our_mob.language_keys[key] == language)
|
||||
return key
|
||||
|
||||
#undef SCRAMBLE_CACHE_LEN
|
||||
|
||||
@@ -143,13 +143,6 @@
|
||||
desc = "You breathe nitrogen instead of oxygen (which is poisonous to you). Incidentally, phoron isn't poisonous to breathe to you."
|
||||
var_changes = list("breath_type" = "nitrogen", "poison_type" = "oxygen")
|
||||
|
||||
/datum/trait/negative/monolingual
|
||||
name = "Monolingual"
|
||||
desc = "You are not good at learning languages."
|
||||
cost = -3
|
||||
var_changes = list("num_alternate_languages" = 0)
|
||||
varchange_type = TRAIT_VARCHANGE_MORE_BETTER
|
||||
|
||||
/datum/trait/negative/monolingual
|
||||
name = "Monolingual"
|
||||
desc = "You are not good at learning languages."
|
||||
|
||||
@@ -34,8 +34,12 @@
|
||||
/mob/living/carbon/human/proc/shapeshifter_select_hair,
|
||||
/mob/living/carbon/human/proc/shapeshifter_select_hair_colors,
|
||||
/mob/living/carbon/human/proc/shapeshifter_select_gender,
|
||||
/mob/living/carbon/human/proc/shapeshifter_select_wings,
|
||||
/mob/living/carbon/human/proc/shapeshifter_select_tail,
|
||||
/mob/living/carbon/human/proc/shapeshifter_select_ears,
|
||||
/mob/living/proc/set_size,
|
||||
/mob/living/carbon/human/proc/regenerate,
|
||||
/mob/living/carbon/human/proc/shapeshifter_change_opacity,
|
||||
/mob/living/carbon/human/proc/promethean_select_opaqueness,
|
||||
/mob/living/carbon/human/proc/exit_vr
|
||||
)
|
||||
|
||||
|
||||
@@ -421,6 +421,7 @@
|
||||
user.add_language(LANGUAGE_ALAI)
|
||||
user.add_language(LANGUAGE_PROMETHEAN)
|
||||
user.add_language(LANGUAGE_GIBBERISH)
|
||||
user.add_language("Mouse")
|
||||
user.add_language("Animal")
|
||||
user.add_language("Teppi")
|
||||
else
|
||||
@@ -448,6 +449,7 @@
|
||||
user.remove_language(LANGUAGE_ALAI)
|
||||
user.remove_language(LANGUAGE_PROMETHEAN)
|
||||
user.remove_language(LANGUAGE_GIBBERISH)
|
||||
user.remove_language("Mouse")
|
||||
user.remove_language("Animal")
|
||||
user.remove_language("Teppi")
|
||||
|
||||
|
||||
@@ -219,7 +219,7 @@
|
||||
/obj/item/weapon/reagent_containers/borghypo/hound/trauma
|
||||
name = "Hound hypospray"
|
||||
desc = "An advanced chemical synthesizer and injection system utilizing carrier's reserves."
|
||||
reagent_ids = list("inaprovaline", "dexalin", "bicaridine", "anti_toxin", "spaceacillin", "paracetamol")
|
||||
reagent_ids = list("tricordrazine", "inaprovaline", "oxycodone", "dexalin" ,"spaceacillin")
|
||||
|
||||
|
||||
//Tongue stuff
|
||||
|
||||
@@ -279,14 +279,19 @@ var/global/list/robot_modules = list(
|
||||
|
||||
var/obj/item/stack/nanopaste/N = new /obj/item/stack/nanopaste(src)
|
||||
var/obj/item/stack/medical/advanced/bruise_pack/B = new /obj/item/stack/medical/advanced/bruise_pack(src)
|
||||
var/obj/item/stack/medical/advanced/ointment/O = new /obj/item/stack/medical/advanced/ointment(src) //VoreStation edit: we have burn surgeries so they should be able to do them
|
||||
N.uses_charge = 1
|
||||
N.charge_costs = list(1000)
|
||||
N.synths = list(medicine)
|
||||
B.uses_charge = 1
|
||||
B.charge_costs = list(1000)
|
||||
B.synths = list(medicine)
|
||||
O.uses_charge = 1
|
||||
O.charge_costs = list(1000)
|
||||
O.synths = list(medicine)
|
||||
src.modules += N
|
||||
src.modules += B
|
||||
src.modules += O
|
||||
|
||||
/obj/item/weapon/robot_module/robot/medical/surgeon/respawn_consumable(var/mob/living/silicon/robot/R, var/amount)
|
||||
|
||||
|
||||
@@ -304,10 +304,12 @@
|
||||
src.modules += new /obj/item/device/healthanalyzer(src) // See who's hurt specificially.
|
||||
src.modules += new /obj/item/borg/sight/hud/med(src) //See who's hurt generally.
|
||||
src.modules += new /obj/item/weapon/reagent_containers/syringe(src) //In case the chemist is nice!
|
||||
src.modules += new /obj/item/weapon/reagent_containers/glass/beaker/large(src)//For holding the chemicals when the chemist is nice
|
||||
src.modules += new /obj/item/weapon/reagent_containers/glass/beaker/large(src)//For holding the chemicals when the chemist is nice, made it the large variant in 2022
|
||||
src.modules += new /obj/item/device/sleevemate(src) //Lets them scan people.
|
||||
src.modules += new /obj/item/weapon/shockpaddles/robot/hound(src) //Paws of life
|
||||
src.modules += new /obj/item/weapon/inflatable_dispenser/robot(src) //This is kinda important for rescuing people without making it worse for everyone
|
||||
src.modules += new /obj/item/weapon/gripper/medical(src) //Let them do literally anything in medbay other than patch external damage and lick people
|
||||
src.modules += new /obj/item/weapon/reagent_containers/dropper/industrial(src) //dropper is nice to have for so much actually
|
||||
src.emag = new /obj/item/weapon/dogborg/pounce(src) //Pounce
|
||||
src.modules += new /obj/item/weapon/gripper/medical(src)//Now you can set up cyro or make peri. //CHOMPEdit
|
||||
|
||||
@@ -315,10 +317,15 @@
|
||||
synths += medicine
|
||||
|
||||
var/obj/item/stack/medical/advanced/clotting/C = new (src)
|
||||
var/obj/item/stack/medical/splint/S = new /obj/item/stack/medical/splint(src)
|
||||
C.uses_charge = 1
|
||||
C.charge_costs = list(1000)
|
||||
C.charge_costs = list(5000)
|
||||
C.synths = list(medicine)
|
||||
S.uses_charge = 1
|
||||
S.charge_costs = list(1000)
|
||||
S.synths = list(medicine)
|
||||
src.modules += C
|
||||
src.modules += S
|
||||
|
||||
var/datum/matter_synth/water = new /datum/matter_synth(500)
|
||||
water.name = "Water reserves"
|
||||
@@ -339,24 +346,6 @@
|
||||
B.water = water
|
||||
src.modules += B
|
||||
|
||||
var/obj/item/stack/medical/advanced/ointment/O = new /obj/item/stack/medical/advanced/ointment(src)
|
||||
var/obj/item/stack/medical/advanced/bruise_pack/P = new /obj/item/stack/medical/advanced/bruise_pack(src)
|
||||
var/obj/item/stack/medical/splint/S = new /obj/item/stack/medical/splint(src)
|
||||
O.uses_charge = 1
|
||||
O.charge_costs = list(1000)
|
||||
O.synths = list(medicine)
|
||||
P.uses_charge = 1
|
||||
P.charge_costs = list(1000)
|
||||
P.synths = list(medicine)
|
||||
S.uses_charge = 1
|
||||
S.charge_costs = list(1000)
|
||||
S.synths = list(medicine)
|
||||
src.modules += O
|
||||
src.modules += P
|
||||
src.modules += S
|
||||
|
||||
// End YW Edit
|
||||
|
||||
R.icon = 'icons/mob/widerobot_vr.dmi'
|
||||
|
||||
src.modules += new /obj/item/weapon/dogborg/pounce(src) //CHOMPEdit - Switch to the more balanced pounce module
|
||||
@@ -389,12 +378,14 @@
|
||||
can_be_pushed = 0
|
||||
sprites = list(
|
||||
"Traumahound" = "traumavale",
|
||||
"Drake" = "draketrauma"
|
||||
)
|
||||
|
||||
/obj/item/weapon/robot_module/robot/medical/trauma/New(var/mob/living/silicon/robot/R)
|
||||
src.modules += new /obj/item/device/healthanalyzer(src)
|
||||
src.modules += new /obj/item/weapon/dogborg/jaws/small(src)
|
||||
src.modules += new /obj/item/device/dogborg/boop_module(src)
|
||||
src.modules += new /obj/item/weapon/autopsy_scanner(src)
|
||||
src.modules += new /obj/item/weapon/surgical/scalpel/cyborg(src)
|
||||
src.modules += new /obj/item/weapon/surgical/hemostat/cyborg(src)
|
||||
src.modules += new /obj/item/weapon/surgical/retractor/cyborg(src)
|
||||
@@ -403,19 +394,14 @@
|
||||
src.modules += new /obj/item/weapon/surgical/FixOVein/cyborg(src)
|
||||
src.modules += new /obj/item/weapon/surgical/bonesetter/cyborg(src)
|
||||
src.modules += new /obj/item/weapon/surgical/circular_saw/cyborg(src)
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
src.modules += new /obj/item/weapon/surgical/surgicaldrill/cyborg(src)
|
||||
src.modules += new /obj/item/weapon/surgical/bioregen/cyborg(src) //let them succ
|
||||
>>>>>>> 88aff386e2... Merge pull request #13556 from TankTheBirb/moretraumafix
|
||||
src.modules += new /obj/item/weapon/gripper/no_use/organ(src)
|
||||
src.modules += new /obj/item/weapon/gripper/medical(src)
|
||||
src.modules += new /obj/item/weapon/shockpaddles/robot(src)
|
||||
src.modules += new /obj/item/weapon/shockpaddles/robot/hound(src) //Paws of life
|
||||
src.modules += new /obj/item/weapon/reagent_containers/dropper(src) // Allows surgeon borg to fix necrosis
|
||||
src.modules += new /obj/item/weapon/reagent_containers/syringe(src)
|
||||
src.emag = new /obj/item/weapon/reagent_containers/spray(src)
|
||||
src.emag.reagents.add_reagent("pacid", 250)
|
||||
src.emag.name = "Polyacid spray"
|
||||
src.emag = new /obj/item/weapon/dogborg/pounce(src) //Pounce, also, lets not give them polyacid spray
|
||||
|
||||
var/datum/matter_synth/water = new /datum/matter_synth(500)
|
||||
water.name = "Water reserves"
|
||||
@@ -427,7 +413,7 @@
|
||||
T.water = water
|
||||
src.modules += T
|
||||
|
||||
var/obj/item/weapon/reagent_containers/borghypo/hound/H = new /obj/item/weapon/reagent_containers/borghypo/hound/trauma(src)
|
||||
var/obj/item/weapon/reagent_containers/borghypo/hound/trauma/H = new /obj/item/weapon/reagent_containers/borghypo/hound/trauma(src) //surgeon chems
|
||||
H.water = water
|
||||
src.modules += H
|
||||
|
||||
@@ -435,6 +421,25 @@
|
||||
B.water = water
|
||||
src.modules += B
|
||||
|
||||
var/datum/matter_synth/medicine = new /datum/matter_synth/medicine(10000) //this is so they can do brute/burn surgeries and fix assisted/prosthetic organs
|
||||
synths += medicine
|
||||
|
||||
var/obj/item/stack/nanopaste/N = new /obj/item/stack/nanopaste(src)
|
||||
var/obj/item/stack/medical/advanced/bruise_pack/S = new /obj/item/stack/medical/advanced/bruise_pack(src)
|
||||
var/obj/item/stack/medical/advanced/ointment/O = new /obj/item/stack/medical/advanced/ointment(src)
|
||||
N.uses_charge = 1
|
||||
N.charge_costs = list(1000)
|
||||
N.synths = list(medicine)
|
||||
S.uses_charge = 1
|
||||
S.charge_costs = list(1000)
|
||||
S.synths = list(medicine)
|
||||
O.uses_charge = 1
|
||||
O.charge_costs = list(1000)
|
||||
O.synths = list(medicine)
|
||||
src.modules += N
|
||||
src.modules += S
|
||||
src.modules += O
|
||||
|
||||
R.icon = 'icons/mob/widerobot_trauma_vr.dmi'
|
||||
R.wideborg_dept = 'icons/mob/widerobot_trauma_vr.dmi'
|
||||
R.hands.icon = 'icons/mob/screen1_robot_vr.dmi'
|
||||
@@ -631,9 +636,15 @@
|
||||
//Added a circuit gripper
|
||||
src.modules += new /obj/item/weapon/gripper/circuit(src)
|
||||
src.modules += new /obj/item/weapon/gripper/no_use/organ/robotics(src)
|
||||
//src.modules += new /obj/item/weapon/surgical/scalpel/cyborg(src) //these are on the normal one, but do not appear to have a purpose other than borging
|
||||
//src.modules += new /obj/item/weapon/surgical/circular_saw/cyborg(src) //so I am leaving them here but commented out because robotics no do the borging w/o medical
|
||||
src.modules += new /obj/item/weapon/portable_destructive_analyzer(src) //destructive analyzer option for pref respect while also being able to do job
|
||||
src.modules += new /obj/item/weapon/gripper/no_use/mech(src)
|
||||
src.modules += new /obj/item/weapon/melee/baton/slime/robot(src) //Chompedit this was missing for some strange reason.
|
||||
src.modules += new /obj/item/weapon/gun/energy/taser/xeno/robot(src) //Chompedit This also.
|
||||
src.modules += new /obj/item/weapon/shockpaddles/robot/jumper(src) //unkilling synths may be important actually
|
||||
src.modules += new /obj/item/weapon/melee/baton/slime/robot(src) //save the xenobio from themselves
|
||||
src.modules += new /obj/item/weapon/gun/energy/taser/xeno/robot(src) //save the xenobio from themselves from a distance
|
||||
src.modules += new /obj/item/device/xenoarch_multi_tool(src) //go find fancy rock
|
||||
src.modules += new /obj/item/weapon/pickaxe/excavationdrill(src) //go get fancy rock
|
||||
src.emag = new /obj/item/weapon/hand_tele(src)
|
||||
|
||||
var/datum/matter_synth/water = new /datum/matter_synth(500)
|
||||
|
||||
@@ -94,6 +94,7 @@
|
||||
var/list/pinned = list() // List of things pinning this creature to walls (see living_defense.dm)
|
||||
var/list/embedded = list() // Embedded items, since simple mobs don't have organs.
|
||||
var/list/languages = list() // For speaking/listening.
|
||||
var/list/language_keys = list() // List of language keys indexing languages
|
||||
var/species_language = null // For species who want reset to use a specified default.
|
||||
var/only_species_language = 0 // For species who can only speak their default and no other languages. Does not affect understanding.
|
||||
var/list/speak_emote = list("says") // Verbs used when speaking. Defaults to 'say' if speak_emote is null.
|
||||
|
||||
@@ -623,6 +623,11 @@
|
||||
if(chosen_language)
|
||||
if(is_lang_whitelisted(src,chosen_language) || (new_character.species && (chosen_language.name in new_character.species.secondary_langs)))
|
||||
new_character.add_language(lang)
|
||||
for(var/key in client.prefs.language_custom_keys)
|
||||
if(client.prefs.language_custom_keys[key])
|
||||
var/datum/language/keylang = GLOB.all_languages[client.prefs.language_custom_keys[key]]
|
||||
if(keylang)
|
||||
new_character.language_keys[key] = keylang
|
||||
// And uncomment this, too.
|
||||
//new_character.dna.UpdateSE()
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
name = "You should not see this..."
|
||||
icon = 'icons/mob/vore/ears_vr.dmi'
|
||||
do_colouration = 0 // Set to 1 to blend (ICON_ADD) hair color
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW, SPECIES_ALTEVIAN) //This lets all races use
|
||||
color_blend_mode = ICON_ADD // Only appliciable if do_coloration = 1
|
||||
|
||||
// Species-unique ears
|
||||
@@ -34,11 +34,11 @@
|
||||
|
||||
/datum/sprite_accessory/ears/taj_ears
|
||||
name = "tajaran, colorable (old)"
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW, SPECIES_ALTEVIAN) //This lets all races use
|
||||
|
||||
/datum/sprite_accessory/ears/taj_ears_tall
|
||||
name = "tajaran tall, colorable (old)"
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW, SPECIES_ALTEVIAN) //This lets all races use
|
||||
|
||||
/datum/sprite_accessory/ears/alt_ram_horns
|
||||
name = "Solid ram horns"
|
||||
@@ -389,19 +389,19 @@
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
/datum/sprite_accessory/ears/elfs1
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW, SPECIES_ALTEVIAN) //This lets all races use
|
||||
|
||||
/datum/sprite_accessory/ears/elfs2
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW, SPECIES_ALTEVIAN) //This lets all races use
|
||||
|
||||
/datum/sprite_accessory/ears/elfs3
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW, SPECIES_ALTEVIAN) //This lets all races use
|
||||
|
||||
/datum/sprite_accessory/ears/elfs4
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW, SPECIES_ALTEVIAN) //This lets all races use
|
||||
|
||||
/datum/sprite_accessory/ears/elfs5
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW, SPECIES_ALTEVIAN) //This lets all races use
|
||||
|
||||
/datum/sprite_accessory/ears/sleek
|
||||
name = "sleek ears"
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
/datum/sprite_accessory/marking/ch
|
||||
icon = 'icons/mob/human_races/markings_ch.dmi'
|
||||
|
||||
/datum/sprite_accessory/marking/ch/orca_head
|
||||
name = "Orca head"
|
||||
icon_state = "orca_head"
|
||||
@@ -481,4 +482,4 @@
|
||||
name = "Spots, Outer"
|
||||
icon_state = "spots_extremities"
|
||||
body_parts = list(BP_R_ARM,BP_L_ARM,BP_R_LEG,BP_L_LEG,BP_R_FOOT,BP_L_FOOT)
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
name = "You should not see this..."
|
||||
icon = 'icons/mob/vore/tails_vr.dmi'
|
||||
do_colouration = 0 //Set to 1 to enable coloration using the tail color.
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW, SPECIES_ALTEVIAN) //This lets all races use
|
||||
|
||||
var/list/lower_layer_dirs = list(SOUTH)
|
||||
|
||||
@@ -1176,7 +1176,7 @@
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
ckeys_allowed = list("prettiebyrd")
|
||||
|
||||
|
||||
/datum/sprite_accessory/tail/altevian
|
||||
name = "Altevian Tail"
|
||||
icon = 'icons/mob/vore/tails_vr.dmi'
|
||||
|
||||
@@ -618,4 +618,4 @@
|
||||
extra_overlay2 = "noodle_markings_2"
|
||||
suit_sprites = 'icons/mob/taursuits_noodle_vr.dmi'
|
||||
clip_mask_state = "taur_clip_mask_noodle"
|
||||
icon_sprite_tag = "noodle"
|
||||
icon_sprite_tag = "noodle"
|
||||
@@ -23,4 +23,4 @@
|
||||
icon = 'icons/mob/vore/wings_ch.dmi'
|
||||
icon_state = "snail_shell"
|
||||
do_colouration = 1
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
color_blend_mode = ICON_MULTIPLY
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
name = "You should not see this..."
|
||||
icon = 'icons/mob/vore/wings_vr.dmi'
|
||||
do_colouration = 0 //Set to 1 to enable coloration using the tail color.
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use
|
||||
species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW, SPECIES_ALTEVIAN) //This lets all races use
|
||||
color_blend_mode = ICON_ADD // Only appliciable if do_coloration = 1
|
||||
|
||||
/datum/sprite_accessory/wing/shock //Unable to split the tail from the wings in the sprite, so let's just classify it as wings.
|
||||
|
||||
@@ -193,6 +193,8 @@
|
||||
// Okay, we're definitely now trying to invoke a language (probably)
|
||||
// This "[]" is probably unnecessary but BYOND will runtime if a number is used
|
||||
var/datum/language/L = GLOB.language_keys["[language_key]"]
|
||||
if((language_key in language_keys) && language_keys[language_key])
|
||||
L = language_keys[language_key]
|
||||
|
||||
// MULTILINGUAL_SPACE enforces a space after the language key
|
||||
if(client && (client.prefs.multilingual_mode == MULTILINGUAL_SPACE) && (text2ascii(copytext(selection, 3, 4)) != 32)) // If we're looking for a space and we don't find one
|
||||
|
||||
Reference in New Issue
Block a user