Merge branch 'master' into make_paradise_great_again

This commit is contained in:
Crazy Lemon
2017-04-21 11:32:47 -07:00
committed by GitHub
1197 changed files with 35182 additions and 17486 deletions
+5 -5
View File
@@ -131,7 +131,7 @@
observer.started_as_observer = 1
close_spawn_windows()
var/obj/O = locate("landmark*Observer-Start")
to_chat(src, "\blue Now teleporting.")
to_chat(src, "<span class='notice'>Now teleporting.</span>")
observer.loc = O.loc
observer.timeofdeath = world.time // Set the time of death so that the respawn timer works correctly.
client.prefs.update_preview_icon(1)
@@ -151,7 +151,7 @@
if(href_list["late_join"])
if(!ticker || ticker.current_state != GAME_STATE_PLAYING)
to_chat(usr, "\red The round is either not ready, or has already finished...")
to_chat(usr, "<span class='warning'>The round is either not ready, or has already finished...</span>")
return
if(client.prefs.species in whitelisted_species)
@@ -168,7 +168,7 @@
if(href_list["SelectedJob"])
if(!enter_allowed)
to_chat(usr, "\blue There is an administrative lock on entering the game!")
to_chat(usr, "<span class='notice'>There is an administrative lock on entering the game!</span>")
return
if(client.prefs.randomslot)
@@ -230,10 +230,10 @@
if(src != usr)
return 0
if(!ticker || ticker.current_state != GAME_STATE_PLAYING)
to_chat(usr, "\red The round is either not ready, or has already finished...")
to_chat(usr, "<span class='warning'>The round is either not ready, or has already finished...</span>")
return 0
if(!enter_allowed)
to_chat(usr, "\blue There is an administrative lock on entering the game!")
to_chat(usr, "<span class='notice'>There is an administrative lock on entering the game!</span>")
return 0
if(!IsJobAvailable(rank))
to_chat(src, alert("[rank] is not available. Please try another."))
+12 -12
View File
@@ -495,7 +495,7 @@
break
if(!validpoll)
to_chat(usr, "\red Poll is not valid.")
to_chat(usr, "<span class='warning'>Poll is not valid.</span>")
return
var/DBQuery/select_query2 = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_option")] WHERE id = [optionid] AND pollid = [pollid]")
@@ -508,7 +508,7 @@
break
if(!validoption)
to_chat(usr, "\red Poll option is not valid.")
to_chat(usr, "<span class='warning'>Poll option is not valid.</span>")
return
var/alreadyvoted = 0
@@ -522,11 +522,11 @@
break
if(!multichoice && alreadyvoted)
to_chat(usr, "\red You already voted in this poll.")
to_chat(usr, "<span class='warning'>You already voted in this poll.</span>")
return
if(multichoice && (alreadyvoted >= multiplechoiceoptions))
to_chat(usr, "\red You already have more than [multiplechoiceoptions] logged votes on this poll. Enough is enough. Contact the database admin if this is an error.")
to_chat(usr, "<span class='warning'>You already have more than [multiplechoiceoptions] logged votes on this poll. Enough is enough. Contact the database admin if this is an error.</span>")
return
var/adminrank = "Player"
@@ -537,7 +537,7 @@
var/DBQuery/insert_query = dbcon.NewQuery("INSERT INTO [format_table_name("poll_vote")] (id ,datetime ,pollid ,optionid ,ckey ,ip ,adminrank) VALUES (null, Now(), [pollid], [optionid], '[ckey]', '[usr.client.address]', '[adminrank]')")
insert_query.Execute()
to_chat(usr, "\blue Vote successful.")
to_chat(usr, "<span class='notice'>Vote successful.</span>")
usr << browse(null,"window=playerpoll")
@@ -562,7 +562,7 @@
break
if(!validpoll)
to_chat(usr, "\red Poll is not valid.")
to_chat(usr, "<span class='warning'>Poll is not valid.</span>")
return
var/alreadyvoted = 0
@@ -575,7 +575,7 @@
break
if(alreadyvoted)
to_chat(usr, "\red You already sent your feedback for this poll.")
to_chat(usr, "<span class='warning'>You already sent your feedback for this poll.</span>")
return
var/adminrank = "Player"
@@ -595,7 +595,7 @@
var/DBQuery/insert_query = dbcon.NewQuery("INSERT INTO [format_table_name("poll_textreply")] (id ,datetime ,pollid ,ckey ,ip ,replytext ,adminrank) VALUES (null, Now(), [pollid], '[ckey]', '[usr.client.address]', '[replytext]', '[adminrank]')")
insert_query.Execute()
to_chat(usr, "\blue Feedback logging successful.")
to_chat(usr, "<span class='notice'>Feedback logging successful.</span>")
usr << browse(null,"window=playerpoll")
@@ -620,7 +620,7 @@
break
if(!validpoll)
to_chat(usr, "\red Poll is not valid.")
to_chat(usr, "<span class='warning'>Poll is not valid.</span>")
return
var/DBQuery/select_query2 = dbcon.NewQuery("SELECT id FROM [format_table_name("poll_option")] WHERE id = [optionid] AND pollid = [pollid]")
@@ -633,7 +633,7 @@
break
if(!validoption)
to_chat(usr, "\red Poll option is not valid.")
to_chat(usr, "<span class='warning'>Poll option is not valid.</span>")
return
var/alreadyvoted = 0
@@ -646,7 +646,7 @@
break
if(alreadyvoted)
to_chat(usr, "\red You already voted in this poll.")
to_chat(usr, "<span class='warning'>You already voted in this poll.</span>")
return
var/adminrank = "Player"
@@ -657,5 +657,5 @@
var/DBQuery/insert_query = dbcon.NewQuery("INSERT INTO [format_table_name("poll_vote")] (id ,datetime ,pollid ,optionid ,ckey ,ip ,adminrank, rating) VALUES (null, Now(), [pollid], [optionid], '[ckey]', '[usr.client.address]', '[adminrank]', [(isnull(rating)) ? "null" : rating])")
insert_query.Execute()
to_chat(usr, "\blue Vote successful.")
to_chat(usr, "<span class='notice'>Vote successful.</span>")
usr << browse(null,"window=playerpoll")
@@ -470,7 +470,7 @@
if(CHEF)
clothes_s = new /icon(uniform_dmi, "chef_s")
clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY)
clothes_s.Blend(new /icon('icons/mob/head.dmi', "chefhat"), ICON_OVERLAY)
clothes_s.Blend(new /icon('icons/mob/head.dmi', "chef"), ICON_OVERLAY)
if(prob(1))
clothes_s.Blend(new /icon('icons/mob/suit.dmi', "apronchef"), ICON_OVERLAY)
switch(backbag)
+252 -39
View File
@@ -431,106 +431,87 @@
/datum/sprite_accessory/hair/ipc
species_allowed = list("Machine")
glasses_over = 1
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.", "Shellguard Munitions Monitor Series")
/datum/sprite_accessory/hair/ipc/ipc_screen_pink
name = "Pink IPC Screen"
icon_state = "ipc_pink"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_red
name = "Red IPC Screen"
icon_state = "ipc_red"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_green
name = "Green IPC Screen"
icon_state = "ipc_green"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_blue
name = "Blue IPC Screen"
icon_state = "ipc_blue"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_breakout
name = "Breakout IPC Screen"
icon_state = "ipc_breakout"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_eight
name = "Eight IPC Screen"
icon_state = "ipc_eight"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_rainbow
name = "Rainbow IPC Screen"
icon_state = "ipc_rainbow"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_goggles
name = "Goggles IPC Screen"
icon_state = "ipc_goggles"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_heart
name = "Heart IPC Screen"
icon_state = "ipc_heart"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_monoeye
name = "Monoeye IPC Screen"
icon_state = "ipc_monoeye"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_nature
name = "Nature IPC Screen"
icon_state = "ipc_nature"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_orange
name = "Orange IPC Screen"
icon_state = "ipc_orange"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_purple
name = "Purple IPC Screen"
icon_state = "ipc_purple"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_shower
name = "Shower IPC Screen"
icon_state = "ipc_shower"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_static
name = "Static IPC Screen"
icon_state = "ipc_static"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_yellow
name = "Yellow IPC Screen"
icon_state = "ipc_yellow"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_scrolling
name = "Scanline IPC Screen"
icon_state = "ipc_scroll"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_console
name = "Console IPC Screen"
icon_state = "ipc_console"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_rgb
name = "RGB IPC Screen"
icon_state = "ipc_rgb"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/ipc_screen_glider
name = "Glider IPC Screen"
icon_state = "ipc_gol_glider"
models_allowed = list("Bishop Cybernetics mtr.", "Hesphiastos Industries mtr.", "Morpheus Cyberkinetics", "Ward-Takahashi mtr.", "Xion Manufacturing Group mtr.")
/datum/sprite_accessory/hair/ipc/hesphiastos_alt_off
name = "Dark Hesphiastos Screen"
@@ -578,10 +559,67 @@
/datum/sprite_accessory/hair/unathi
species_allowed = list("Unathi")
glasses_over = 1
icon = 'icons/mob/body_accessory.dmi'
/datum/sprite_accessory/hair/unathi/una_horns
name = "Unathi Horns"
icon_state = "soghun_horns"
/datum/sprite_accessory/hair/unathi/una_side_frills
icon = 'icons/mob/human_face.dmi'
name = "Unathi Side Frills"
icon_state = "unathi_sidefrills"
secondary_theme = "webbing"
/datum/sprite_accessory/hair/unathi/una_frills_dorsal
icon = 'icons/mob/human_face.dmi'
name = "Dorsal Frills"
icon_state = "unathi_dorsalfrills"
secondary_theme = "webbing"
/datum/sprite_accessory/hair/unathi/simple
name = "Simple Horns"
icon_state = "horns_simple"
/datum/sprite_accessory/hair/unathi/short
name = "Short Horns"
icon_state = "horns_short"
/datum/sprite_accessory/hairy/unathi/curled
name = "Curled Horns"
icon_state = "horns_curled"
/datum/sprite_accessory/hair/unathi/ram
name = "Ram Horns"
icon_state = "horns_ram"
/datum/sprite_accessory/hair/unathi/double
name = "Double Horns"
icon_state = "horns_drac"
/datum/sprite_accessory/hair/unathi/lower
name = "Lower Horns"
icon_state = "horns_lower"
/datum/sprite_accessory/hair/unathi/big
name = "Big"
icon_state = "horns_big"
/datum/sprite_accessory/hair/unathi/ram2
name = "Ram alt."
icon_state = "horns_ram2"
/datum/sprite_accessory/hair/unathi/small
name = "Small"
icon_state = "horns_small"
/datum/sprite_accessory/hair/unathi/chin
name = "Chin"
icon_state = "horns_chin"
/datum/sprite_accessory/hair/unathi/adorns
name = "Adorns"
icon_state = "horns_adorns"
/datum/sprite_accessory/hair/unathi/spikes
name = "Spikes"
icon_state = "horns_spikes"
/datum/sprite_accessory/hair/skrell
species_allowed = list("Skrell")
@@ -766,6 +804,20 @@
icon_state = "braided"
secondary_theme = "beads"
/datum/sprite_accessory/hair/vulpkanin/vulp_hair_punkbraided
name = "Punk Braided"
icon_state = "punkbraided"
secondary_theme = "flare"
/datum/sprite_accessory/hair/vulpkanin/vulp_hair_short2
name = "Short Alt."
icon_state = "short2"
glasses_over = 1
/datum/sprite_accessory/hair/vulpkanin/vulp_hair_rough
name = "Rough-Cropped Mane"
icon_state = "rough"
/datum/sprite_accessory/hair/vox
species_allowed = list("Vox")
glasses_over = 1
@@ -1003,6 +1055,10 @@
name = "Tajara Goatee"
icon_state = "facial_goatee"
/datum/sprite_accessory/facial_hair/tajara/taj_goatee_faded
name = "Tajara Faded Goatee"
icon_state = "facial_goatee_faded"
/datum/sprite_accessory/facial_hair/tajara/taj_smallstache
name = "Tajara Smallstache"
icon_state = "facial_smallstache"
@@ -1067,6 +1123,15 @@
name = "Swift"
icon_state = "vulp_facial_swift"
/datum/sprite_accessory/facial_hair/vulpkanin/vulp_elder
name = "Elder"
icon_state = "vulp_facial_elder"
secondary_theme = "chin"
/datum/sprite_accessory/facial_hair/vulpkanin/vulp_slash
name = "Slash"
icon_state = "vulp_facial_slash"
/datum/sprite_accessory/facial_hair/unathi
species_allowed = list("Unathi")
gender = NEUTER
@@ -1074,39 +1139,74 @@
/datum/sprite_accessory/facial_hair/unathi/una_spines_long
name = "Long Spines"
icon_state = "soghun_longspines"
icon_state = "unathi_longspines"
/datum/sprite_accessory/facial_hair/unathi/una_spines_short
name = "Short Spines"
icon_state = "soghun_shortspines"
icon_state = "unathi_shortspines"
/datum/sprite_accessory/facial_hair/unathi/una_frills_aquaspine
name = "Spiny Aquatic Frills"
icon_state = "unathi_dracfrills"
/datum/sprite_accessory/facial_hair/unathi/una_frills_aquatic
name = "Aquatic Frills"
icon_state = "soghun_aquaticfrills"
icon_state = "unathi_aquaticfrills"
/datum/sprite_accessory/facial_hair/unathi/una_frills_long
name = "Long Frills"
icon_state = "soghun_longfrills"
icon_state = "unathi_longfrills"
/datum/sprite_accessory/facial_hair/unathi/una_frills_short
name = "Short Frills"
icon_state = "soghun_shortfrills"
icon_state = "unathi_shortfrills"
/datum/sprite_accessory/facial_hair/unathi/una_frills_webbed_aquaspine
name = "Spiny Aquatic Webbed Frills"
icon_state = "unathi_dracfrills"
secondary_theme = "webbing"
/datum/sprite_accessory/facial_hair/unathi/una_frills_webbed_aquatic
name = "Aquatic Webbed Frills"
icon_state = "soghun_aquaticfrills"
icon_state = "unathi_aquaticfrills"
secondary_theme = "webbing"
/datum/sprite_accessory/facial_hair/unathi/una_frills_webbed_long
name = "Long Webbed Frills"
icon_state = "soghun_longfrills"
icon_state = "unathi_longfrills"
secondary_theme = "webbing"
/datum/sprite_accessory/facial_hair/unathi/una_frills_webbed_short
name = "Short Webbed Frills"
icon_state = "soghun_shortfrills"
icon_state = "unathi_shortfrills"
secondary_theme = "webbing"
/datum/sprite_accessory/facial_hair/unathi/una_side_frills
name = "Side Frills"
icon_state = "unathi_sidefrills"
secondary_theme = "webbing"
/datum/sprite_accessory/facial_hair/unathi/una_frills_dorsal
over_hair = null
name = "Dorsal Frills"
icon_state = "unathi_dorsalfrills"
secondary_theme = "webbing"
/datum/sprite_accessory/facial_hair/unathi/una_chin_horns
name = "Chin Horns"
icon = 'icons/mob/body_accessory.dmi'
icon_state = "horns_chin"
/datum/sprite_accessory/facial_hair/unathi/una_horn_adorns
name = "Horn Adorns"
icon = 'icons/mob/body_accessory.dmi'
icon_state = "horns_adorns"
/datum/sprite_accessory/facial_hair/unathi/una_spikes
name = "Spikes"
icon = 'icons/mob/body_accessory.dmi'
icon_state = "horns_spikes"
//skin styles - WIP
//going to have to re-integrate this with surgery
//let the icon_state hold an icon preview for now
@@ -1151,13 +1251,13 @@
///////////////////////////
/datum/sprite_accessory/underwear
icon = 'icons/mob/underwear.dmi'
species_allowed = list("Human", "Unathi", "Diona", "Vulpkanin", "Tajaran", "Kidan", "Grey", "Plasmaman", "Machine", "Skeleton", "Drask")
species_allowed = list("Human", "Unathi", "Diona", "Vulpkanin", "Tajaran", "Kidan", "Grey", "Plasmaman", "Machine", "Skrell", "Slime People", "Skeleton", "Drask")
gender = NEUTER
/datum/sprite_accessory/underwear/nude
name = "Nude"
icon_state = null
species_allowed = list("Human", "Unathi", "Diona", "Vulpkanin", "Tajaran", "Kidan", "Grey", "Plasmaman", "Machine", "Skeleton", "Drask", "Vox")
species_allowed = list("Human", "Unathi", "Diona", "Vulpkanin", "Tajaran", "Kidan", "Grey", "Plasmaman", "Machine", "Skrell", "Slime People", "Skeleton", "Drask", "Vox")
/datum/sprite_accessory/underwear/male
gender = MALE
@@ -1277,13 +1377,13 @@
////////////////////////////
/datum/sprite_accessory/undershirt
icon = 'icons/mob/underwear.dmi'
species_allowed = list("Human", "Unathi", "Diona", "Vulpkanin", "Tajaran", "Kidan", "Grey", "Plasmaman", "Machine", "Skeleton", "Drask")
species_allowed = list("Human", "Unathi", "Diona", "Vulpkanin", "Tajaran", "Kidan", "Grey", "Plasmaman", "Machine", "Skrell", "Slime People", "Skeleton", "Drask")
gender = NEUTER
/datum/sprite_accessory/undershirt/nude
name = "Nude"
icon_state = null
species_allowed = list("Human", "Unathi", "Diona", "Vulpkanin", "Tajaran", "Kidan", "Grey", "Plasmaman", "Machine", "Skeleton", "Drask", "Vox")
species_allowed = list("Human", "Unathi", "Diona", "Vulpkanin", "Tajaran", "Kidan", "Grey", "Plasmaman", "Machine", "Skrell", "Slime People", "Skeleton", "Drask", "Vox")
//plain color shirts
/datum/sprite_accessory/undershirt/shirt_white
@@ -1513,13 +1613,13 @@
///////////////////////
/datum/sprite_accessory/socks
icon = 'icons/mob/underwear.dmi'
species_allowed = list("Human", "Unathi", "Diona", "Vulpkanin", "Tajaran", "Kidan", "Grey", "Plasmaman", "Machine", "Skeleton", "Drask")
species_allowed = list("Human", "Unathi", "Diona", "Vulpkanin", "Tajaran", "Kidan", "Grey", "Plasmaman", "Machine", "Skrell", "Slime People", "Skeleton", "Drask")
gender = NEUTER
/datum/sprite_accessory/socks/nude
name = "Nude"
icon_state = null
species_allowed = list("Human", "Unathi", "Diona", "Vulpkanin", "Tajaran", "Kidan", "Grey", "Plasmaman", "Machine", "Skeleton", "Drask", "Vox")
species_allowed = list("Human", "Unathi", "Diona", "Vulpkanin", "Tajaran", "Kidan", "Grey", "Plasmaman", "Machine", "Skrell", "Slime People", "Skeleton", "Drask", "Vox")
/datum/sprite_accessory/socks/white_norm
name = "Normal White"
@@ -1645,7 +1745,7 @@
/datum/sprite_accessory/head_accessory/none
name = "None"
species_allowed = list("Human", "Unathi", "Diona", "Grey", "Machine", "Tajaran", "Vulpkanin", "Slime People", "Skeleton", "Vox")
species_allowed = list("Human", "Unathi", "Diona", "Grey", "Kidan", "Machine", "Tajaran", "Vulpkanin", "Skrell", "Slime People", "Skeleton", "Vox")
icon_state = "accessory_none"
/datum/sprite_accessory/head_accessory/unathi
@@ -1668,6 +1768,38 @@
name = "Ram"
icon_state = "horns_ram"
/datum/sprite_accessory/head_accessory/unathi/double
name = "Double"
icon_state = "horns_drac"
/datum/sprite_accessory/head_accessory/unathi/lower
name = "Lower"
icon_state = "horns_lower"
/datum/sprite_accessory/head_accessory/unathi/big
name = "Big"
icon_state = "horns_big"
/datum/sprite_accessory/head_accessory/unathi/ram2
name = "Ram alt."
icon_state = "horns_ram2"
/datum/sprite_accessory/head_accessory/unathi/small
name = "Small"
icon_state = "horns_small"
/datum/sprite_accessory/head_accessory/unathi/chin
name = "Chin"
icon_state = "horns_chin"
/datum/sprite_accessory/head_accessory/unathi/adorns
name = "Adorns"
icon_state = "horns_adorns"
/datum/sprite_accessory/head_accessory/unathi/spikes
name = "Spikes"
icon_state = "horns_spikes"
/datum/sprite_accessory/head_accessory/tajara
species_allowed = list("Tajaran")
@@ -1748,6 +1880,20 @@
name = "Vulpkanin Nose"
icon_state = "markings_face_nose_vulp"
/datum/sprite_accessory/head_accessory/vulpkanin/vulp_nose2
name = "Vulpkanin Nose Alt."
icon_state = "markings_face_nose2_vulp"
/datum/sprite_accessory/head_accessory/vulpkanin/vulp_elder
icon = 'icons/mob/human_face.dmi'
name = "Elder"
icon_state = "vulp_facial_elder"
/datum/sprite_accessory/head_accessory/vulpkanin/vulp_slash
icon = 'icons/mob/human_face.dmi'
name = "Slash"
icon_state = "vulp_facial_slash"
/datum/sprite_accessory/head_accessory/ipc
species_allowed = list("Machine")
over_hair = 1
@@ -1768,6 +1914,68 @@
name = "Head Light"
icon_state = "light"
/datum/sprite_accessory/head_accessory/ipc/ipc_side_lights
name = "Side Lights"
icon_state = "sidelights"
/datum/sprite_accessory/head_accessory/ipc/ipc_side_cyber_head
name = "Cyber Pipes"
icon_state = "cyberhead"
/datum/sprite_accessory/head_accessory/ipc/ipc_side_antlers
name = "Antlers"
icon_state = "antlers"
/datum/sprite_accessory/head_accessory/ipc/ipc_side_drone_eyes
name = "Drone Eyes"
icon_state = "droneeyes"
/datum/sprite_accessory/head_accessory/ipc/ipc_crowned
name = "Crowned"
icon_state = "crowned"
/datum/sprite_accessory/head_accessory/kidan
icon = 'icons/mob/human_face.dmi'
species_allowed = list("Kidan")
over_hair = 1
do_colouration = 1
/datum/sprite_accessory/head_accessory/kidan/perked_antennae
name = "Perked-up Antennae"
icon_state = "kidan_perky"
/datum/sprite_accessory/head_accessory/kidan/mopey_antennae
name = "Mopey Antennae"
icon_state = "kidan_mopey"
/datum/sprite_accessory/head_accessory/kidan/curious_antennae
name = "Curious Antennae"
icon_state = "kidan_curious"
/datum/sprite_accessory/head_accessory/kidan/mopey_antennae
name = "Mopey Antennae"
icon_state = "kidan_mopey"
/datum/sprite_accessory/head_accessory/kidan/crescent_antennae
name = "Crescent Antennae"
icon_state = "kidan_crescent"
/datum/sprite_accessory/head_accessory/kidan/alert_antennae
name = "Alert Antennae"
icon_state = "kidan_alert"
/datum/sprite_accessory/head_accessory/kidan/normal_antennae
name = "Normal Antennae"
icon_state = "kidan_normal"
/datum/sprite_accessory/head_accessory/kidan/long_antennae
name = "Long Antennae"
icon_state = "kidan_long"
/datum/sprite_accessory/head_accessory/kidan/moth_antennae
name = "Moth Antennae"
icon_state = "kidan_moth"
/* BODY MARKINGS */
@@ -1779,7 +1987,7 @@
/datum/sprite_accessory/body_markings/none
name = "None"
species_allowed = list("Human", "Unathi", "Diona", "Grey", "Machine", "Tajaran", "Vulpkanin", "Slime People", "Skeleton", "Vox")
species_allowed = list("Human", "Unathi", "Diona", "Grey", "Machine", "Tajaran", "Vulpkanin", "Skrell", "Slime People", "Skeleton", "Vox")
icon_state = "accessory_none"
/datum/sprite_accessory/body_markings/tiger
@@ -1933,6 +2141,10 @@
name = "Vulpkanin Nose"
icon_state = "markings_face_nose_vulp"
/datum/sprite_accessory/body_markings/head/vulpkanin/nose2_default_vulp
name = "Vulpkanin Nose Alt."
icon_state = "markings_face_nose2_vulp"
/datum/sprite_accessory/body_markings/head/vulpkanin/muzzle_vulp //Companion marking for Vulpkanin Belly Alt..
name = "Vulpkanin Muzzle"
icon_state = "markings_face_full_vulp"
@@ -1968,6 +2180,7 @@
/datum/sprite_accessory/body_markings/head/unathi/snout_lower_una_round
name = "Unathi Lower Round Snout"
icon_state = "markings_face_snout_lower_una"
heads_allowed = list("All")
/datum/sprite_accessory/body_markings/head/unathi/banded_una //Companion marking for Unathi Banded.
name = "Unathi Banded Head"