Merge branch 'master' into upstream-merge-10025

This commit is contained in:
Nadyr
2021-03-30 00:58:05 -04:00
committed by GitHub
22 changed files with 176 additions and 1488 deletions

View File

@@ -50,7 +50,7 @@ var/list/be_special_flags = list(
"Wizard" = BE_WIZARD,
"Malf AI" = BE_MALF,
"Revolutionary" = BE_REV,
"Xenomorph" = BE_ALIEN,
"Genaprawn" = BE_ALIEN, //CHOMPedit
"Positronic Brain" = BE_AI,
"Cultist" = BE_CULTIST,
"Renegade" = BE_RENEGADE,

View File

@@ -316,13 +316,13 @@
#define SPECIES_VR_SKELETON "Virtual Reality Skeleton"
#define SPECIES_VR_VOX "Virtual Reality Vox"
// Ayyy IDs.
#define SPECIES_XENO "Xenomorph"
#define SPECIES_XENO_DRONE "Xenomorph Drone"
#define SPECIES_XENO_HUNTER "Xenomorph Hunter"
#define SPECIES_XENO_SENTINEL "Xenomorph Sentinel"
#define SPECIES_XENO_QUEEN "Xenomorph Queen"
// Ayyy IDs. CHOMPedit
#define SPECIES_GENA "Genaprawn"
#define SPECIES_GENA_DRONE "Genaprawn Drone"
#define SPECIES_GENA_HUNTER "Genaprawn Hunter"
#define SPECIES_GENA_SENTINEL "Genaprawn Sentinel"
#define SPECIES_GENA_QUEEN "Genaprawn Queen"
//CHOMPedit end
// Misc species. Mostly unused but might as well be complete.
#define SPECIES_SHADOW "Shadow"
#define SPECIES_SKELETON "Skeleton"

View File

@@ -466,11 +466,11 @@ var/global/list/remainless_species = list(SPECIES_PROMETHEAN,
SPECIES_MONKEY_NEVREAN,
SPECIES_MONKEY_SERGAL,
SPECIES_MONKEY_VULPKANIN,
SPECIES_XENO, //Same for xenos,
SPECIES_XENO_DRONE,
SPECIES_XENO_HUNTER,
SPECIES_XENO_SENTINEL,
SPECIES_XENO_QUEEN,
SPECIES_GENA, //Same for xenos, CHOMPedit
SPECIES_GENA_DRONE,
SPECIES_GENA_HUNTER,
SPECIES_GENA_SENTINEL,
SPECIES_GENA_QUEEN, //CHOMPedit end
SPECIES_SHADOW,
SPECIES_GOLEM, //Some special species that may or may not be ever used in event too,
SPECIES_SHADEKIN) //Shadefluffers just poof away

View File

@@ -231,7 +231,7 @@ var/list/gamemode_cache = list()
// 15, 45, 70 minutes respectively
var/static/list/event_delay_upper = list(EVENT_LEVEL_MUNDANE = 9000, EVENT_LEVEL_MODERATE = 27000, EVENT_LEVEL_MAJOR = 42000)
var/static/aliens_allowed = 1 //CHOMPedit to 1. This not only allows the natural spawning of xenos, but also the ability to lay eggs. Xenomorphs cannot lay eggs if this is 0
var/static/aliens_allowed = 1 //CHOMPedit to 1. This not only allows the natural spawning of xenos, but also the ability to lay eggs. Genaprawns cannot lay eggs if this is 0
var/static/ninjas_allowed = 0
var/static/abandon_allowed = 1
var/static/ooc_allowed = 1

View File

@@ -3,8 +3,8 @@ var/datum/antagonist/xenos/xenomorphs
/datum/antagonist/xenos
id = MODE_XENOMORPH
role_type = BE_ALIEN
role_text = "Xenomorph"
role_text_plural = "Xenomorphs"
role_text = "Genaprawn" //CHOMPedit
role_text_plural = "Genaprawns" //CHOMPedit
mob_path = /mob/living/carbon/alien/larva
bantype = "Xenomorph"
flags = ANTAG_OVERRIDE_MOB | ANTAG_RANDSPAWN | ANTAG_OVERRIDE_JOB | ANTAG_VOTABLE

View File

@@ -380,7 +380,7 @@
return
if(isnull(subject) || (!(ishuman(subject))) || (!subject.dna))
if(isalien(subject))
set_scan_temp("Xenomorphs are not scannable.", "bad")
set_scan_temp("Genaprawns are not scannable.", "bad") //CHOMPedit
SStgui.update_uis(src)
return
// can add more conditions for specific non-human messages here

File diff suppressed because it is too large Load Diff

View File

@@ -56,10 +56,10 @@
// Check for bans properly.
if(jobban_isbanned(user, MODE_XENOMORPH))
to_chat(user, "<span class='danger'>You are banned from playing a Xenomorph.</span>")
to_chat(user, "<span class='danger'>You are banned from playing a Genaprawn.</span>") //CHOMPedit
return
var/confirm = alert(user, "Are you sure you want to join as a Xenomorph larva?", "Become Larva", "No", "Yes")
var/confirm = alert(user, "Are you sure you want to join as a Genaprawn larva?", "Become Larva", "No", "Yes") //CHOMPedit
if(!src || confirm != "Yes")
return

View File

@@ -5,7 +5,7 @@
var/list/title_strings = list()
var/preset_rank = FALSE
/obj/item/weapon/card/id/event/attack_self(mob/user as mob)
/obj/item/weapon/card/id/event/attack_self(var/mob/user)
if(configured == 1)
return ..()
@@ -28,10 +28,12 @@
configured = 1
to_chat(user, "<span class='notice'>Card settings set.</span>")
/obj/item/weapon/card/id/event/attackby(obj/item/I as obj, mob/user as mob)
/obj/item/weapon/card/id/event/attackby(obj/item/I as obj, var/mob/user)
if(istype(I, /obj/item/weapon/card/id) && !accessset)
var/obj/item/weapon/card/id/O = I
access |= O.access
desc = I.desc
rank = O.rank
to_chat(user, "<span class='notice'>You copy the access from \the [I] to \the [src].</span>")
user.drop_from_inventory(I)
qdel(I)
@@ -52,31 +54,24 @@
icon = 'icons/obj/card_vr.dmi'
base_icon = 'icons/obj/card_vr.dmi'
icon_state = "itg"
item_state = "itg_id"
/obj/item/weapon/card/id/event/accessset/itg/green
icon_state = "itg_green"
item_state = "itg_green_id"
/obj/item/weapon/card/id/event/accessset/itg/red
icon_state = "itg_red"
item_state = "itg_red_id"
/obj/item/weapon/card/id/event/accessset/itg/purple
icon_state = "itg_purple"
item_state = "itg_purple_id"
/obj/item/weapon/card/id/event/accessset/itg/white
icon_state = "itg_white"
item_state = "itg_white_id"
/obj/item/weapon/card/id/event/accessset/itg/orange
icon_state = "itg_orange"
item_state = "itg_orange_id"
/obj/item/weapon/card/id/event/accessset/itg/blue
icon_state = "itg_blue"
item_state = "itg_blue_id"
/obj/item/weapon/card/id/event/accessset/itg/crew
name = "\improper ITG Crew ID"
@@ -97,7 +92,6 @@
assignment = "Cook"
rank = "Cook"
icon_state = "itg_green"
item_state = "itg_green_id"
/obj/item/weapon/card/id/event/accessset/itg/crew/security
name = "\improper ITG Security's ID"
@@ -105,7 +99,6 @@
assignment = "Security"
rank = "Security"
icon_state = "itg_red"
item_state = "itg_red_id"
/obj/item/weapon/card/id/event/accessset/itg/crew/research
name = "\improper ITG Research's ID"
@@ -113,7 +106,6 @@
assignment = "Research"
rank = "Research"
icon_state = "itg_purple"
item_state = "itg_purple_id"
/obj/item/weapon/card/id/event/accessset/itg/crew/medical
name = "\improper ITG Medic's ID"
@@ -121,7 +113,6 @@
assignment = "Medic"
rank = "Medic"
icon_state = "itg_white"
item_state = "itg_white_id"
/obj/item/weapon/card/id/event/accessset/itg/crew/engineer
name = "\improper ITG Engineer's ID"
@@ -129,7 +120,6 @@
assignment = "Engineer"
rank = "Engineer"
icon_state = "itg_orange"
item_state = "itg_orange_id"
/obj/item/weapon/card/id/event/accessset/itg/crew/passengerliason
name = "\improper ITG Passenger Liason's ID"
@@ -137,7 +127,6 @@
assignment = "Passenger Liason"
rank = "Passenger Liason"
icon_state = "itg_blue"
item_state = "itg_blue_id"
/obj/item/weapon/card/id/event/accessset/itg/crew/captain
name = "\improper ITG Captain's ID"
@@ -145,131 +134,140 @@
assignment = "Captain"
rank = "Captain"
icon_state = "itg_blue"
item_state = "itg_blue_id"
access = list(777, 778)
/obj/item/weapon/card/id/event/altcard
icon = 'icons/obj/card_alt_vr.dmi'
base_icon = 'icons/obj/card_alt_vr.dmi'
icon_state = "id"
item_state = "id_id"
/obj/item/weapon/card/id/event/altcard/hop
icon_state = "silver"
item_state = "silver_id"
/obj/item/weapon/card/id/event/altcard/cap
icon_state = "cap"
item_state = "cap_id"
/obj/item/weapon/card/id/event/altcard/centcom
icon_state = "centcom"
item_state = "centcom_id"
/obj/item/weapon/card/id/event/altcard/cargo
icon_state = "cargo"
item_state = "cargo_id"
/obj/item/weapon/card/id/event/altcard/qm
icon_state = "cargoGold"
item_state = "cargoGold_id"
/obj/item/weapon/card/id/event/altcard/miner
icon_state = "miner"
item_state = "miner_id"
/obj/item/weapon/card/id/event/altcard/sci
icon_state = "sci"
item_state = "sci_id"
/obj/item/weapon/card/id/event/altcard/rd
icon_state = "sciGold"
item_state = "sciGold_id"
/obj/item/weapon/card/id/event/altcard/sec
icon_state = "sec"
item_state = "sec_id"
/obj/item/weapon/card/id/event/altcard/hos
icon_state = "secGold"
item_state = "secGold_id"
/obj/item/weapon/card/id/event/altcard/warden
icon_state = "warden"
item_state = "warden_id"
/obj/item/weapon/card/id/event/altcard/eng
icon_state = "eng"
item_state = "eng_id"
/obj/item/weapon/card/id/event/altcard/ce
icon_state = "engGold"
item_state = "engGold_id"
/obj/item/weapon/card/id/event/altcard/atmos
icon_state = "atmos"
item_state = "atmos_id"
/obj/item/weapon/card/id/event/altcard/med
icon_state = "med"
item_state = "med_id"
/obj/item/weapon/card/id/event/altcard/cmo
icon_state = "medGold"
item_state = "medGold_id"
/obj/item/weapon/card/id/event/altcard/paramed
icon_state = "paramed"
item_state = "paramed_id"
/obj/item/weapon/card/id/event/altcard/spare
icon_state = "spare"
/obj/item/weapon/card/id/event/altcard/clown
icon_state = "clown"
item_state = "clown_id"
icon_state = "Clown"
/obj/item/weapon/card/id/event/altcard/mime
icon_state = "mime"
item_state = "mime_id"
icon_state = "Mime"
/obj/item/weapon/card/id/event/altcard/syndie
icon_state = "syndie"
item_state = "syndie_id"
/obj/item/weapon/card/id/event/altcard/centcom
icon_state = "CentCom Officer"
/obj/item/weapon/card/id/event/altcard/ert
icon_state = "Emergency Responder"
/obj/item/weapon/card/id/event/altcard/nt
icon_state = "nanotrasen"
/obj/item/weapon/card/id/event/altcard/syndiegold
icon_state = "syndieGold"
item_state = "syndieGold_id"
/obj/item/weapon/card/id/event/altcard/green
icon_state = "green"
item_state = "green_id"
/obj/item/weapon/card/id/event/altcard/syndie
icon_state = "syndie"
/obj/item/weapon/card/id/event/altcard/greengold
icon_state = "greenGold"
item_state = "greenGold_id"
/obj/item/weapon/card/id/event/altcard/explo
icon_state = "explo"
item_state = "explo_id"
/obj/item/weapon/card/id/event/altcard/pf
icon_state = "exploGold"
item_state = "exploGold_id"
/obj/item/weapon/card/id/event/altcard/fm
icon_state = "fieldmed"
item_state = "fieldmed_id"
/obj/item/weapon/card/id/event/altcard/chaplain
icon_state = "chaplain"
item_state = "chaplain_id"
/obj/item/weapon/card/id/event/altcard/nanotrasen
icon_state = "nanotrasen"
item_state = "nanotrasen_id"
/obj/item/weapon/card/id/event/altcard/pink
icon_state = "pink"
item_state = "pink_id"
/obj/item/weapon/card/id/event/altcard/pinkgold
icon_state = "pinkGold"
item_state = "pinkGold_id"
/obj/item/weapon/card/id/event/polymorphic
var/base_icon_state
/obj/item/weapon/card/id/event/polymorphic/digest_act(atom/movable/item_storage = null)
var/gimmeicon = icon
. = ..()
icon = gimmeicon
icon_state = base_icon_state + "_digested"
/obj/item/weapon/card/id/event/polymorphic/altcard/attack_self(var/mob/user)
if(configured == 1)
return ..()
else
icon_state = user.job
base_icon_state = user.job
return ..()
/obj/item/weapon/card/id/event/polymorphic/altcard
icon = 'icons/obj/card_alt_vr.dmi'
base_icon = 'icons/obj/card_alt_vr.dmi'
icon_state = "blank"
name = "contractor identification card"
desc = "An ID card typically used by contractors."
/obj/item/weapon/card/id/event/polymorphic/itg/attack_self(var/mob/user)
if(!configured)
var/list/jobs_to_icon = list( //ITG only has a few kinds of icons so we have to group them up!
"Pilot" = "itg",
"Visitor" = "itg",
"Quartermaster" = "itg",
"Cargo Technician" = "itg",
"Shaft Miner" = "itg",
"Intern" = "itg",
"Talon Pilot" = "itg",
"Bartender" = "itg_green",
"Botanist" = "itg_green",
"Chef" = "itg_green",
"Janitor" = "itg_green",
"Chaplain" = "itg_green",
"Entertainer" = "itg_green",
"Janitor" = "itg_green",
"Librarian" = "itg_green",
"Warden" = "itg_red",
"Detective" = "itg_red",
"Security Officer" = "itg_red",
"Talon Guard" = "itg_red",
"Roboticist" = "itg_purple",
"Scientist" = "itg_purple",
"Xenobiologist" = "itg_purple",
"Xenobotanist" = "itg_purple",
"Pathfinder" = "itg_purple",
"Explorer" = "itg_purple",
"Chemist" = "itg_white",
"Medical Doctor" = "itg_white",
"Paramedic" = "itg_white",
"Psychiatrist" = "itg_white",
"Field Medic" = "itg_white",
"Talon Doctor" = "itg_white",
"Atmospheric Technician" = "itg_orange",
"Station Engineer" = "itg_orange",
"Off-duty Officer" = "itg_red",
"Off-duty Engineer" = "itg_orange",
"Off-duty Medic" = "itg_white",
"Off-duty Scientist" = "itg_purple",
"Off-duty Cargo" = "itg",
"Off-duty Explorer" = "itg_purple",
"Off-duty Worker" = "itg_green"
)
var/guess = jobs_to_icon[user.job]
if(!guess)
to_chat(user, "<span class='notice'>ITG Cards do not seem to be able to accept the access codes for your ID.</span>")
return
else
icon_state = guess
base_icon_state = guess
. = ..()
name = user.name + "'s ITG ID card" + " ([assignment])"
/obj/item/weapon/card/id/event/polymorphic/itg/attackby(obj/item/I as obj, var/mob/user)
if(istype(I, /obj/item/weapon/card/id) && !accessset)
var/obj/item/weapon/card/id/O = I
var/list/itgdont = list("Site Manager", "Head of Personnel", "Command Secretary", "Head of Security", "Chief Engineer", "Chief Medical Officer", "Research Director", "Clown", "Mime", "Talon Captain") //If you're in as one of these you probably aren't representing ITG
if(O.rank in itgdont)
to_chat(user, "<span class='notice'>ITG Cards do not seem to be able to accept the access codes for your ID.</span>")
return
. = ..()
desc = "A small card designating affiliation with the Ironcrest Transport Group. It has a NanoTrasen insignia and a lot of very small print on the back to do with practices and regulations for contractors to use."
/obj/item/weapon/card/id/event/polymorphic/itg
icon = 'icons/obj/card_vr.dmi'
base_icon = 'icons/obj/card_vr.dmi'
icon_state = "itg"
name = "\improper ITG identification card"
desc = "A small card designating affiliation with the Ironcrest Transport Group. It has a NanoTrasen insignia and a lot of very small print on the back to do with practices and regulations for contractors to use."

View File

@@ -1047,7 +1047,7 @@
character_name = list("Roanna Ti'Rox")
/datum/gear/fluff/harmony_id
path = /obj/item/weapon/card/id/event/fluff/harmony
path = /obj/item/weapon/card/id/event/polymorphic/itg
display_name = "Harmony's ITG-ID card"
ckeywhitelist = list("verysoft")
character_name = list("Harmony")

View File

@@ -55,3 +55,8 @@
display_name = "science dufflebag"
path = /obj/item/weapon/storage/backpack/dufflebag/sci
allowed_roles = list("Research Director","Scientist","Roboticist","Xenobiologist","Xenobotanist","Explorer","Pathfinder")
/datum/gear/utility/ID
display_name = "contractor identification card"
path = /obj/item/weapon/card/id/event/polymorphic/altcard
cost = 1

View File

@@ -86,9 +86,9 @@
flags = RESTRICTED | HIVEMIND
/datum/language/xenocommon
name = "Xenomorph"
name = "Xenolingua" //CHOMPedit
colour = "alien"
desc = "The common tongue of the xenomorphs."
desc = "The common tongue of both the xenomorphs and the Genaprawns." //CHOMPedit
speech_verb = "hisses"
ask_verb = "hisses"
exclaim_verb = "hisses"
@@ -98,7 +98,7 @@
/datum/language/xenos
name = "Hivemind"
desc = "Xenomorphs have the strange ability to commune over a psychic hivemind."
desc = "Some aliens have the strange ability to commune over a psychic hivemind." //CHOMPedit
speech_verb = "hisses"
ask_verb = "hisses"
exclaim_verb = "hisses"

View File

@@ -55,7 +55,7 @@
/mob/living/carbon/alien/get_default_language()
if(default_language)
return default_language
return GLOB.all_languages["Xenomorph"]
return GLOB.all_languages["Xenolingua"] //CHOMPedit
/mob/living/carbon/alien/say_quote(var/message, var/datum/language/speaking = null)
var/verb = "hisses"

View File

@@ -12,5 +12,5 @@
/mob/living/carbon/alien/larva/Initialize()
. = ..()
add_language("Xenomorph") //Bonus language.
add_language("Xenolingua") //Bonus language. CHOMPedit
internal_organs |= new /obj/item/organ/internal/xenos/hivenode(src)

View File

@@ -9,9 +9,9 @@
to_chat(src, "<span class='notice'>There are three to choose from:</span>")
to_chat(src, "<B>Hunters</B> <span class='notice'> are strong and agile, able to hunt away from the hive and rapidly move through ventilation shafts. Hunters generate plasma slowly and have low reserves.</span>")
to_chat(src, "<B>Sentinels</B> <span class='notice'> are tasked with protecting the hive and are deadly up close and at a range. They are not as physically imposing nor fast as the hunters.</span>")
to_chat(src, "<B>Drones</B> <span class='notice'> are the working class, offering the largest plasma storage and generation. They are the only caste which may evolve again, turning into the dreaded alien queen.</span>")
to_chat(src, "<B>Drones</B> <span class='notice'> are the working class, offering the largest plasma storage and generation. They are the only caste which may evolve again, turning into the dreaded Genaprawn queen.</span>") //CHOMPedit
var/alien_caste = alert(src, "Please choose which alien caste you shall belong to.",,"Hunter","Sentinel","Drone")
return alien_caste ? "Xenomorph [alien_caste]" : null
return alien_caste ? "Genaprawn [alien_caste]" : null //CHOMPedit
/mob/living/carbon/alien/larva/show_evolution_blurb()
return

View File

@@ -2,7 +2,7 @@
for(var/mob/living/carbon/human/Q in living_mob_list)
if(self && ignore_self && self == Q)
continue
if(Q.species.name != SPECIES_XENO_QUEEN)
if(Q.species.name != SPECIES_GENA_QUEEN) //CHOMPedit
continue
if(!Q.key || !Q.client || Q.stat)
continue
@@ -80,7 +80,7 @@
/mob/living/carbon/human/proc/lay_egg()
set name = "Lay Egg (200)" //CHOMPedit changed number value
set desc = "Lay an egg to produce huggers to impregnate prey with."
set desc = "Lay an egg that hatch into larva." //CHOMPedit
set category = "Abilities"
if(!config.aliens_allowed)
@@ -110,7 +110,7 @@
if(check_alien_ability(500))
visible_message("<span class='alium'><B>[src] begins to twist and contort!</B></span>", "<span class='alium'>You begin to evolve!</span>")
src.set_species("Xenomorph Queen")
src.set_species("Genaprawn Queen") //CHOMPedit
return

View File

@@ -1,9 +1,9 @@
//Stand-in until this is made more lore-friendly.
/datum/species/xenos
name = SPECIES_XENO
name_plural = "Xenomorphs"
name = SPECIES_GENA //CHOMPedit
name_plural = "Genaprawns" //CHOMPedit
default_language = "Xenomorph"
default_language = "Xenolingua" //CHOMPedit
language = "Hivemind"
assisted_langs = list()
unarmed_types = list(/datum/unarmed_attack/claws/strong/xeno, /datum/unarmed_attack/bite/strong/xeno)
@@ -93,10 +93,10 @@
)
/datum/species/xenos/get_bodytype()
return SPECIES_XENO
return SPECIES_GENA //CHOMPedit
/datum/species/xenos/get_random_name()
return "alien [caste_name] ([alien_number])"
return "Genaprawn [caste_name] ([alien_number])" //CHOMPedit
/datum/species/xenos/can_understand(var/mob/other)
if(istype(other, /mob/living/carbon/alien/larva))
@@ -114,7 +114,7 @@
H.mind.special_role = "Alien"
alien_number++ //Keep track of how many aliens we've had so far.
H.real_name = "alien [caste_name] ([alien_number])"
H.real_name = "Genaprawn [caste_name] ([alien_number])" //CHOMPedit
H.name = H.real_name
..()
@@ -167,18 +167,10 @@
return 1
return 0
/*
/datum/species/xenos/handle_login_special(var/mob/living/carbon/human/H)
H.AddInfectionImages()
..()
/datum/species/xenos/handle_logout_special(var/mob/living/carbon/human/H)
H.RemoveInfectionImages()
..()
*/
//CHOMPedit removed infection images, since they do not exist anymore.
/datum/species/xenos/drone
name = SPECIES_XENO_DRONE
name = SPECIES_GENA_DRONE //CHOMPedit
caste_name = "drone"
weeds_plasma_rate = 15
slowdown = 1
@@ -218,7 +210,7 @@
..()
/datum/species/xenos/hunter
name = SPECIES_XENO_HUNTER
name = SPECIES_GENA_HUNTER //CHOMPedit
weeds_plasma_rate = 5
caste_name = "hunter"
slowdown = -2
@@ -248,7 +240,7 @@
)
/datum/species/xenos/sentinel
name = SPECIES_XENO_SENTINEL
name = SPECIES_GENA_SENTINEL //CHOMPedit
weeds_plasma_rate = 10
caste_name = "sentinel"
slowdown = 0
@@ -281,7 +273,7 @@
/datum/species/xenos/queen
name = SPECIES_XENO_QUEEN
name = SPECIES_GENA_QUEEN //CHOMPedit
total_health = 300 //CHOMPedit. Queen is chonk
weeds_heal_rate = 5
weeds_plasma_rate = 20
@@ -325,10 +317,10 @@
..()
// Make sure only one official queen exists at any point.
if(!alien_queen_exists(1,H))
H.real_name = "alien queen ([alien_number])"
H.real_name = "Genaprawn queen ([alien_number])" //CHOMPedit
H.name = H.real_name
else
H.real_name = "alien princess ([alien_number])"
H.real_name = "Genaprawn princess ([alien_number])" //CHOMPedit
H.name = H.real_name
/datum/hud_data/alien

View File

@@ -4,28 +4,28 @@ proc/create_new_xenomorph(var/alien_caste,var/target)
if(!target || !alien_caste) return
var/mob/living/carbon/human/new_alien = new(target)
new_alien.set_species("Xenomorph [alien_caste]")
new_alien.set_species("Genaprawn [alien_caste]") //CHOMPedit
return new_alien
/mob/living/carbon/human/xdrone/New(var/new_loc)
h_style = "Bald"
faction = "xeno"
..(new_loc, SPECIES_XENO_DRONE)
..(new_loc, SPECIES_GENA_DRONE) //CHOMPedit
/mob/living/carbon/human/xsentinel/New(var/new_loc)
h_style = "Bald"
faction = "xeno"
..(new_loc, SPECIES_XENO_SENTINEL)
..(new_loc, SPECIES_GENA_SENTINEL) //CHOMPedit
/mob/living/carbon/human/xhunter/New(var/new_loc)
h_style = "Bald"
faction = "xeno"
..(new_loc, SPECIES_XENO_HUNTER)
..(new_loc, SPECIES_GENA_HUNTER) //CHOMPedit
/mob/living/carbon/human/xqueen/New(var/new_loc)
h_style = "Bald"
faction = "xeno"
..(new_loc, SPECIES_XENO_QUEEN)
..(new_loc, SPECIES_GENA_QUEEN) //CHOMPedit
//CHOMPedit. Removed AddInfectionImages code, due to it being commented out and not used

View File

@@ -97,6 +97,11 @@
icon_state = "eyes_sergal"
body_parts = list(BP_HEAD)
/datum/sprite_accessory/marking/vr/closedeyes
name = "Closed Eyes"
icon_state = "eyes_closed"
body_parts = list(BP_HEAD)
/datum/sprite_accessory/marking/vr/brows
name = "Eyebrows"
icon_state = "brows"

View File

@@ -286,7 +286,7 @@
temp_img = icon('icons/obj/butts_vr.dmi', "machine")
if(SPECIES_WEREBEAST)
temp_img = icon('icons/obj/butts_vr.dmi', "vulp") // Give Werewolves their own thicc'er than a boal of oatmeal ass sprite someday?
if(SPECIES_XENOHYBRID, SPECIES_XENO, SPECIES_XENO_DRONE, SPECIES_XENO_HUNTER, SPECIES_XENO_QUEEN, SPECIES_XENO_SENTINEL) // Xenos + Xenohybrids have their own asses, thanks to Pybro.
if(SPECIES_XENOHYBRID, SPECIES_GENA, SPECIES_GENA_DRONE, SPECIES_GENA_HUNTER, SPECIES_GENA_QUEEN, SPECIES_GENA_SENTINEL) // Xenos + Xenohybrids have their own asses, thanks to Pybro. CHOMPedit
temp_img = icon('icons/obj/butts_vr.dmi', "xeno")
if(SPECIES_ZORREN_HIGH)
temp_img = icon('icons/obj/butts_vr.dmi', "vulp") // placeholder until we get zorren butts.

View File

@@ -795,16 +795,6 @@
desc = "A primarily blue ID with a holographic 'WAH' etched onto its back. The letters do not obscure anything important on the card. It is shiny and it feels very bumpy."
title_strings = list("Amaya Rahl's Wah-identification card", "Amaya Rahl's Wah-ID card")
//verysoft:Harmony - Custom ID (pilot)
/obj/item/weapon/card/id/event/fluff/harmony
registered_name = "CONFIGURE ME"
assignment = "CONFIGURE ME"
icon = 'icons/obj/card_vr.dmi'
base_icon = 'icons/obj/card_vr.dmi'
icon_state = "itg"
desc = "A small card designating affiliation with the Ironcrest Transport Group. It has a NanoTrasen insignia and a lot of very small print on the back to do with practices and regulations for contractors to use."
title_strings = list("Harmony's ITG-ID card")
//General use, Verk felt like sharing.
/obj/item/clothing/glasses/fluff/science_proper
name = "Aesthetic Science Goggles"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 46 KiB