Completely removes Vox from the game. (#10028)

This commit is contained in:
Matt Atlas
2020-10-07 13:52:08 +02:00
committed by GitHub
parent 93fdb224b4
commit b65a598b85
44 changed files with 108 additions and 801 deletions
+5 -20
View File
@@ -346,9 +346,6 @@
slot_flags = SLOT_GLOVES
attack_verb = list("challenged")
species_restricted = list("exclude",BODYTYPE_UNATHI,BODYTYPE_TAJARA,BODYTYPE_VAURCA, BODYTYPE_GOLEM,BODYTYPE_VAURCA_BREEDER,BODYTYPE_VAURCA_WARFORM)
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/gloves.dmi'
)
drop_sound = 'sound/items/drop/gloves.ogg'
pickup_sound = 'sound/items/pickup/gloves.ogg'
@@ -457,10 +454,6 @@
var/brightness_on
var/on = 0
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/head.dmi'
)
/obj/item/clothing/head/attack_self(mob/user)
if(brightness_on)
if(!isturf(user.loc))
@@ -573,9 +566,9 @@
pickup_sound = 'sound/items/pickup/hat.ogg'
body_parts_covered = FACE|EYES
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/masks.dmi',
BODYTYPE_TAJARA = 'icons/mob/species/tajaran/mask.dmi',
BODYTYPE_UNATHI = 'icons/mob/species/unathi/mask.dmi')
BODYTYPE_UNATHI = 'icons/mob/species/unathi/mask.dmi'
)
species_restricted = list("exclude",BODYTYPE_VAURCA_BREEDER,BODYTYPE_VAURCA_WARFORM)
@@ -680,12 +673,8 @@
permeability_coefficient = 0.50
force = 0
var/overshoes = 0
species_restricted = list("exclude",BODYTYPE_UNATHI,BODYTYPE_TAJARA,BODYTYPE_VOX,BODYTYPE_VAURCA,BODYTYPE_VAURCA_BREEDER,BODYTYPE_VAURCA_WARFORM)
sprite_sheets = list(BODYTYPE_VOX = 'icons/mob/species/vox/shoes.dmi')
species_restricted = list("exclude",BODYTYPE_UNATHI,BODYTYPE_TAJARA,BODYTYPE_VAURCA,BODYTYPE_VAURCA_BREEDER,BODYTYPE_VAURCA_WARFORM)
var/silent = 0
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/shoes.dmi'
)
/obj/item/clothing/shoes/proc/draw_knife()
set name = "Draw Boot Knife"
@@ -779,10 +768,6 @@
w_class = ITEMSIZE_NORMAL
species_restricted = list("exclude",BODYTYPE_VAURCA_BREEDER,BODYTYPE_VAURCA_WARFORM)
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/suit.dmi'
)
valid_accessory_slots = list("armband","decor", "over")
/obj/item/clothing/suit/return_own_image()
@@ -831,8 +816,8 @@
var/rolled_down = -1 //0 = unrolled, 1 = rolled, -1 = cannot be toggled
var/rolled_sleeves = -1 //0 = unrolled, 1 = rolled, -1 = cannot be toggled
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/uniform.dmi',
BODYTYPE_GOLEM = 'icons/mob/uniform_fat.dmi')
BODYTYPE_GOLEM = 'icons/mob/uniform_fat.dmi'
)
species_restricted = list("exclude",BODYTYPE_VAURCA_BREEDER,BODYTYPE_VAURCA_WARFORM)
//convenience var for defining the icon state for the overlay used when the clothing is worn.
-1
View File
@@ -31,7 +31,6 @@ BLIND // can't see anything
var/obj/item/clothing/glasses/hud/hud = null // Hud glasses, if any
var/activated_color = null
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/eyes.dmi',
BODYTYPE_VAURCA_WARFORM = 'icons/mob/species/warriorform/eyes.dmi'
)
species_restricted = list("exclude",BODYTYPE_VAURCA_BREEDER)
@@ -8,9 +8,6 @@
name = "ultra rare hat"
desc = "an ultra rare hat. It commands a certain respect."
icon_state = "petehat"
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/head.dmi'
)
/obj/item/clothing/head/collectable/slime
name = "collectable slime cap!"
@@ -32,7 +32,6 @@
flash_protection = FLASH_PROTECTION_MAJOR
tint = TINT_HEAVY
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/head.dmi',
BODYTYPE_TAJARA = 'icons/mob/species/tajaran/helmet.dmi',
BODYTYPE_UNATHI = 'icons/mob/species/unathi/helmet.dmi'
)
-6
View File
@@ -56,12 +56,6 @@
siemens_coefficient = 0.7
body_parts_covered = FACE|EYES
/obj/item/clothing/mask/gas/swat/vox
name = "\improper alien mask"
desc = "Clearly not designed for a human face."
body_parts_covered = 0 //Hack to allow vox to eat while wearing this mask.
species_restricted = list(BODYTYPE_VOX)
/obj/item/clothing/mask/gas/syndicate
name = "tactical mask"
desc = "A close-fitting tactical mask that can be connected to an air supply."
-138
View File
@@ -1,138 +0,0 @@
// Vox space gear (vaccuum suit, low pressure armor)
// Can't be equipped by any other species due to bone structure and vox cybernetics.
/obj/item/clothing/suit/space/vox
w_class = ITEMSIZE_NORMAL
allowed = list(/obj/item/gun,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/melee/energy/sword,/obj/item/handcuffs,/obj/item/tank)
slowdown = 2
armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30)
siemens_coefficient = 0.35
heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
max_heat_protection_temperature = SPACE_SUIT_MAX_HEAT_PROTECTION_TEMPERATURE
species_restricted = list(BODYTYPE_VOX, BODYTYPE_VOX_ARMALIS)
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/suit.dmi',
BODYTYPE_VOX_ARMALIS = 'icons/mob/species/armalis/suit.dmi'
)
/obj/item/clothing/head/helmet/space/vox
armor = list(melee = 60, bullet = 50, laser = 30, energy = 15, bomb = 30, bio = 30, rad = 30)
siemens_coefficient = 0.35
item_flags = STOPPRESSUREDAMAGE
flags_inv = null
species_restricted = list(BODYTYPE_VOX,BODYTYPE_VOX_ARMALIS)
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/head.dmi',
BODYTYPE_VOX_ARMALIS = 'icons/mob/species/armalis/head.dmi'
)
/obj/item/clothing/head/helmet/space/vox/pressure
name = "alien helmet"
icon_state = "vox-pressure"
item_state = "vox-pressure"
desc = "Hey, wasn't this a prop in \'The Abyss\'?"
/obj/item/clothing/suit/space/vox/pressure
name = "alien pressure suit"
icon_state = "vox-pressure"
item_state = "vox-pressure"
desc = "A huge, armored, pressurized suit, designed for distinctly nonhuman proportions."
/obj/item/clothing/head/helmet/space/vox/carapace
name = "alien visor"
icon_state = "vox-carapace"
item_state = "vox-carapace"
desc = "A glowing visor, perhaps stolen from a depressed Cylon."
/obj/item/clothing/suit/space/vox/carapace
name = "alien carapace armor"
icon_state = "vox-carapace"
item_state = "vox-carapace"
desc = "An armored, segmented carapace with glowing purple lights. It looks pretty run-down."
/obj/item/clothing/head/helmet/space/vox/stealth
name = "alien stealth helmet"
icon_state = "vox-stealth"
item_state = "vox-stealth"
desc = "A smoothly contoured, matte-black alien helmet."
/obj/item/clothing/suit/space/vox/stealth
name = "alien stealth suit"
icon_state = "vox-stealth"
item_state = "vox-stealth"
desc = "A sleek black suit. It seems to have a tail, and is very heavy."
/obj/item/clothing/head/helmet/space/vox/medic
name = "alien goggled helmet"
icon_state = "vox-medic"
item_state = "vox-medic"
desc = "An alien helmet with enormous goggled lenses."
/obj/item/clothing/suit/space/vox/medic
name = "alien armor"
icon_state = "vox-medic"
item_state = "vox-medic"
desc = "An almost organic looking nonhuman pressure suit."
/obj/item/clothing/gloves/yellow/vox
desc = "These bizarre gauntlets seem to be fitted for... bird claws?"
name = "insulated gauntlets"
icon_state = "gloves-vox"
item_state = "gloves-vox"
siemens_coefficient = 0
permeability_coefficient = 0.05
species_restricted = list(BODYTYPE_VOX,BODYTYPE_VOX_ARMALIS)
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/gloves.dmi',
BODYTYPE_VOX_ARMALIS = 'icons/mob/species/armalis/gloves.dmi'
)
/obj/item/clothing/shoes/magboots/vox
desc = "A pair of heavy, jagged armored foot pieces, seemingly suitable for a velociraptor."
name = "vox magclaws"
item_state = "boots-vox"
icon_state = "boots-vox"
species_restricted = list(BODYTYPE_VOX,BODYTYPE_VOX_ARMALIS)
sprite_sheets = list(
BODYTYPE_VOX = 'icons/mob/species/vox/shoes.dmi',
BODYTYPE_VOX_ARMALIS = 'icons/mob/species/armalis/feet.dmi'
)
action_button_name = "Toggle the magclaws"
/obj/item/clothing/shoes/magboots/vox/attack_self(mob/user)
if(src.magpulse)
item_flags &= ~NOSLIP
magpulse = 0
canremove = 1
to_chat(user, "You relax your deathgrip on the flooring.")
else
//make sure these can only be used when equipped.
if(!ishuman(user))
return
var/mob/living/carbon/human/H = user
if (H.shoes != src)
to_chat(user, "You will have to put on the [src] before you can do that.")
return
item_flags |= NOSLIP
magpulse = 1
canremove = 0 //kinda hard to take off magclaws when you are gripping them tightly.
to_chat(user, "You dig your claws deeply into the flooring, bracing yourself.")
to_chat(user, "It would be hard to take off the [src] without relaxing your grip first.")
user.update_action_buttons()
//In case they somehow come off while enabled.
/obj/item/clothing/shoes/magboots/vox/dropped(mob/user as mob)
..()
if(src.magpulse)
user.visible_message("The [src] go limp as they are removed from [usr]'s feet.", "The [src] go limp as they are removed from your feet.")
item_flags &= ~NOSLIP
magpulse = 0
canremove = 1
/obj/item/clothing/shoes/magboots/vox/examine(mob/user)
..(user)
if (magpulse)
to_chat(user, "It would be hard to take these off without relaxing your grip first.") //theoretically this message should only be seen by the wearer when the claws are equipped.)
@@ -17,7 +17,6 @@
BODYTYPE_UNATHI = 'icons/mob/species/unathi/helmet.dmi',
BODYTYPE_VAURCA = 'icons/mob/species/vaurca/helmet.dmi',
BODYTYPE_IPC = 'icons/mob/species/machine/helmet.dmi',
BODYTYPE_VOX = 'icons/mob/species/vox/head.dmi'
)
/obj/item/clothing/gloves/rig
@@ -34,7 +33,6 @@
BODYTYPE_UNATHI = 'icons/mob/species/unathi/gloves.dmi',
BODYTYPE_VAURCA = 'icons/mob/species/vaurca/gloves.dmi',
BODYTYPE_IPC = 'icons/mob/species/machine/gloves.dmi',
BODYTYPE_VOX = 'icons/mob/species/vox/gloves.dmi'
)
/obj/item/clothing/shoes/magboots/rig
@@ -50,7 +48,6 @@
BODYTYPE_UNATHI = 'icons/mob/species/unathi/shoes.dmi',
BODYTYPE_VAURCA = 'icons/mob/species/vaurca/shoes.dmi',
BODYTYPE_IPC = 'icons/mob/species/machine/shoes.dmi',
BODYTYPE_VOX = 'icons/mob/species/vox/shoes.dmi'
)
/obj/item/clothing/suit/space/rig
@@ -71,7 +68,6 @@
BODYTYPE_UNATHI = 'icons/mob/species/unathi/suit.dmi',
BODYTYPE_VAURCA = 'icons/mob/species/vaurca/suit.dmi',
BODYTYPE_IPC = 'icons/mob/species/machine/suit.dmi',
BODYTYPE_VOX = 'icons/mob/species/vox/suit.dmi'
)
supporting_limbs = list()
@@ -18,7 +18,7 @@
cold_protection = HEAD
min_cold_protection_temperature = SPACE_HELMET_MIN_COLD_PROTECTION_TEMPERATURE
siemens_coefficient = 0.5
species_restricted = list("exclude",BODYTYPE_DIONA,BODYTYPE_VOX,BODYTYPE_GOLEM)
species_restricted = list("exclude",BODYTYPE_DIONA,BODYTYPE_GOLEM)
flash_protection = FLASH_PROTECTION_MAJOR
allow_hair_covering = FALSE
@@ -74,7 +74,7 @@
cold_protection = UPPER_TORSO | LOWER_TORSO | LEGS | FEET | ARMS | HANDS
min_cold_protection_temperature = SPACE_SUIT_MIN_COLD_PROTECTION_TEMPERATURE
siemens_coefficient = 0.5
species_restricted = list("exclude",BODYTYPE_DIONA,BODYTYPE_VOX,BODYTYPE_GOLEM)
species_restricted = list("exclude",BODYTYPE_DIONA,BODYTYPE_GOLEM)
var/list/supporting_limbs //If not-null, automatically splints breaks. Checked when removing the suit.
-3
View File
@@ -66,7 +66,6 @@ obj/item/clothing/suit/apron/overalls/blue
item_state = "chaplain_hoodie"
body_parts_covered = UPPER_TORSO|ARMS
allowed = list(/obj/item/tank/emergency_oxygen,/obj/item/storage/bible,/obj/item/nullrod,/obj/item/reagent_containers/food/drinks/bottle/holywater)
sprite_sheets = list(BODYTYPE_VOX = 'icons/mob/species/vox/suit.dmi')
//Chaplain
/obj/item/clothing/suit/nun
@@ -77,7 +76,6 @@ obj/item/clothing/suit/apron/overalls/blue
body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS
flags_inv = HIDESHOES|HIDEJUMPSUIT
allowed = list(/obj/item/tank/emergency_oxygen,/obj/item/storage/bible,/obj/item/nullrod,/obj/item/reagent_containers/food/drinks/bottle/holywater)
sprite_sheets = list(BODYTYPE_VOX = 'icons/mob/species/vox/suit.dmi')
//Chef
/obj/item/clothing/suit/chef
@@ -143,7 +141,6 @@ obj/item/clothing/suit/apron/overalls/blue
body_parts_covered = UPPER_TORSO|ARMS
allowed = list(/obj/item/tank/emergency_oxygen, /obj/item/device/flashlight,/obj/item/gun/energy,/obj/item/gun/projectile,/obj/item/ammo_magazine,/obj/item/ammo_casing,/obj/item/melee/baton,/obj/item/handcuffs,/obj/item/storage/box/fancy/cigarettes,/obj/item/flame/lighter,/obj/item/device/taperecorder)
armor = list(melee = 50, bullet = 10, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0)
sprite_sheets = list(BODYTYPE_VOX = 'icons/mob/species/vox/suit.dmi')
siemens_coefficient = 0.7
/obj/item/clothing/suit/storage/toggle/det_trench/black
-5
View File
@@ -456,7 +456,6 @@ var/list/worths = list(
/obj/item/clothing/mask/gas/plaguedoctor = 100,
/obj/item/clothing/mask/gas/swat = 200,
/obj/item/clothing/mask/gas/voice = 600,
/obj/item/clothing/mask/gas/swat/vox = 350,
/obj/item/clothing/mask/gas/tactical = 500,
/obj/item/clothing/mask/gas = 50,
/obj/item/clothing/mask/muzzle/tape = 2,
@@ -482,7 +481,6 @@ var/list/worths = list(
/obj/item/clothing/suit/space/void = 2800,
/obj/item/clothing/suit/space/syndicate = 2200,
/obj/item/clothing/suit/space/void/skrell = 3000,
/obj/item/clothing/suit/space/vox = 1000,
/obj/item/clothing/suit/space/cult = 1050,
/obj/item/clothing/suit/space/emergency = 150,
/obj/item/clothing/suit/space = 730,
@@ -552,7 +550,6 @@ var/list/worths = list(
/obj/item/clothing/head/helmet/space/void = 1900,
/obj/item/clothing/head/helmet/space/syndicate = 1200,
/obj/item/clothing/head/helmet/space/deathsquad = 2400,
/obj/item/clothing/head/helmet/space/vox = 1200,
/obj/item/clothing/head/helmet/space/void/skrell = 1200,
/obj/item/clothing/head/helmet/space/cult = 1300,
/obj/item/clothing/head/helmet/space/emergency = 250,
@@ -623,9 +620,7 @@ var/list/worths = list(
/obj/item/organ/internal/heart = 1200,
/obj/item/organ/internal/brain/golem = 3000,
/obj/item/organ/internal/brain = 1200,
/obj/item/organ/pariah_brain = 5,
/obj/item/organ/vaurca/neuralsocket = 1500,
/obj/item/organ/internal/stack/vox = 5000,
/obj/item/organ = 400,
//ITEMS,
/obj/item/slime_extract = 200,
@@ -1730,7 +1730,7 @@ Follow by example and make good judgement based on length which list to include
icon_state = "bald"
gender = NEUTER
species_allowed = list(/datum/species/human,/datum/species/human/offworlder,/datum/species/machine/shell,/datum/species/machine/shell/rogue,/datum/species/zombie,/datum/species/unathi,/datum/species/zombie/unathi,
/datum/species/tajaran,/datum/species/tajaran/zhan_khazan,/datum/species/tajaran/m_sai,/datum/species/zombie/tajara,/datum/species/skrell,/datum/species/zombie/skrell,/datum/species/vox)
/datum/species/tajaran,/datum/species/tajaran/zhan_khazan,/datum/species/tajaran/m_sai,/datum/species/zombie/tajara,/datum/species/skrell,/datum/species/zombie/skrell)
threeOclock
name = "3 O'clock Shadow"
@@ -2350,42 +2350,7 @@ Follow by example and make good judgement based on length which list to include
icon_state = "msai_victory"
chatname = "curls"
//vox hair
vox_quills_kingly
icon = 'icons/mob/human_face/vox_hair.dmi'
name = "Kingly Vox Quills"
icon_state = "vox_kingly"
species_allowed = list(/datum/species/vox)
chatname = "quills"
vox_braid_long
name = "Vox Braid Long"
icon_state = "vox_braid_long"
chatname = "quills"
vox_braid_short
name = "Vox Braid Short"
icon_state = "vox_braid_short"
chatname = "quills"
vox_quills_short
name = "Short Vox Quills"
icon_state = "vox_shortquills"
chatname = "quills"
vox_quills_mohawk
name = "Quill Mohawk"
icon_state = "vox_mohawk"
chatname = "quills"
vox_stubble
name = "Vox Stubble"
icon_state = "vox_stubble"
chatname = "quills"
//vaurca antennae
vaurca_classic
icon = 'icons/mob/human_face/vaurca_hair.dmi'
name = "Classic Antennae"
-1
View File
@@ -8,7 +8,6 @@ var/list/holder_mob_icon_cache = list()
randpixel = 0
center_of_mass = null
slot_flags = 0
sprite_sheets = list(BODYTYPE_VOX = 'icons/mob/species/vox/head.dmi')
origin_tech = null
drop_sound = null
var/mob/living/contained = null
-16
View File
@@ -43,22 +43,6 @@
speaker_mask = B.truename
..(speaker, message, speaker_mask)
/datum/language/vox
name = LANGUAGE_VOX
desc = "The common tongue of the various Vox ships making up the Shoal. It sounds like chaotic shrieking to everyone else."
speech_verb = list("shrieks")
ask_verb = list("creels")
exclaim_verb = list("SHRIEKS")
colour = "vox"
key = "5"
flags = WHITELISTED
syllables = list("ti","ti","ti","hi","hi","ki","ki","ki","ki","ya","ta","ha","ka","ya","chi","cha","kah", \
"SKRE","AHK","EHK","RAWK","KRA","AAA","EEE","KI","II","KRI","KA")
machine_understands = FALSE
/datum/language/vox/get_random_name()
return ..(FEMALE,1,6)
/datum/language/cultcommon
name = LANGUAGE_CULT
desc = "The chants of the occult, the incomprehensible."
@@ -143,10 +143,6 @@ mob/living/carbon/human/proc/change_monitor()
visible_message("<span class='danger'>[src] leaps at [T]!</span>", "<span class='danger'>You leap at [T]!</span>")
throw_at(get_step(get_turf(T), get_turf(src)), 4, 1, src, do_throw_animation = FALSE)
// Only Vox get to shriek. Seriously.
if (isvox(src))
playsound(loc, 'sound/voice/shriek1.ogg', 50, 1)
sleep(5)
if(status_flags & LEAPING)
@@ -27,14 +27,6 @@ INITIALIZE_IMMEDIATE(/mob/living/carbon/human/dummy/mannequin)
h_style = "Unathi Horns"
. = ..(mapload, SPECIES_UNATHI)
/mob/living/carbon/human/vox/Initialize(mapload)
h_style = "Short Vox Quills"
. = ..(mapload, SPECIES_VOX)
/mob/living/carbon/human/voxarmalis/Initialize(mapload)
h_style = "Bald"
. = ..(mapload, SPECIES_VOX_ARMALIS)
/mob/living/carbon/human/diona/Initialize(mapload)
. = ..(mapload, SPECIES_DIONA)
src.gender = NEUTER
@@ -1,138 +0,0 @@
/datum/species/vox
name = SPECIES_VOX
short_name = "vox"
name_plural = "Vox"
icobase = 'icons/mob/human_races/r_vox.dmi'
deform = 'icons/mob/human_races/r_def_vox.dmi'
language = LANGUAGE_VOX
name_language = LANGUAGE_VOX
num_alternate_languages = 1
default_genders = list(NEUTER)
unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws/strong, /datum/unarmed_attack/bite/strong)
rarity_value = 4
blurb = "The Vox are the broken remnants of a once-proud race, now reduced to little more than \
scavenging vermin who prey on isolated stations, ships or planets to keep their own ancient arkships \
alive. They are four to five feet tall, reptillian, beaked, tailed and quilled; human crews often \
refer to them as 'shitbirds' for their violent and offensive nature, as well as their horrible \
smell.<br/><br/>Most humans will never meet a Vox raider, instead learning of this insular species through \
dealing with their traders and merchants; those that do rarely enjoy the experience."
fall_mod = 0.25 //nimble, winged little shitbirds
stamina = 120 // Vox are even faster than unathi and can go longer, but recover slowly
sprint_speed_factor = 3
stamina_recovery = 1
sprint_cost_factor = 1
taste_sensitivity = TASTE_DULL
speech_sounds = list('sound/voice/shriek1.ogg')
speech_chance = 20
warning_low_pressure = 50
hazard_low_pressure = 0
cold_level_1 = 80
cold_level_2 = 50
cold_level_3 = 0
eyes = "vox_eyes_s"
gluttonous = 2
breath_type = GAS_NITROGEN
poison_type = GAS_OXYGEN
siemens_coefficient = 0.2
flags = NO_SCAN
spawn_flags = IS_RESTRICTED
appearance_flags = HAS_EYE_COLOR | HAS_HAIR_COLOR
blood_color = "#2299FC"
flesh_color = "#808D11"
reagent_tag = IS_VOX
inherent_verbs = list(
/mob/living/carbon/human/proc/leap
)
has_organ = list(
BP_HEART = /obj/item/organ/internal/heart/vox,
BP_LUNGS = /obj/item/organ/internal/lungs/vox,
BP_LIVER = /obj/item/organ/internal/liver/vox,
BP_KIDNEYS = /obj/item/organ/internal/kidneys/vox,
BP_STOMACH = /obj/item/organ/internal/stomach,
BP_BRAIN = /obj/item/organ/internal/brain,
BP_EYES = /obj/item/organ/internal/eyes,
"stack" = /obj/item/organ/internal/stack/vox
)
move_trail = /obj/effect/decal/cleanable/blood/tracks/claw
default_h_style = "Short Vox Quills"
/datum/species/vox/before_equip(mob/living/carbon/human/H, visualsOnly, datum/job/J)
H.equip_to_slot_or_del(new /obj/item/clothing/mask/breath(H), slot_wear_mask)
if(H.backbag == 1)
H.equip_to_slot_or_del(new /obj/item/tank/nitrogen(H), slot_back)
H.equip_to_slot_or_del(new /obj/item/storage/box/vox(H), slot_r_hand)
H.internal = H.back
else
H.equip_to_slot_or_del(new /obj/item/tank/nitrogen(H), slot_r_hand)
H.equip_to_slot_or_del(new /obj/item/storage/box/vox(H.back), slot_in_backpack)
H.internal = H.r_hand
H.internals.icon_state = "internal1"
/datum/species/vox/armalis
name = SPECIES_VOX_ARMALIS
name_plural = "Vox"
icobase = 'icons/mob/human_races/r_armalis.dmi'
deform = 'icons/mob/human_races/r_armalis.dmi'
tail = "armalis_tail"
rarity_value = 10
warning_low_pressure = 50
hazard_low_pressure = 0
stamina = 120 // Vox are even faster than unathi and can go longer, but recover slowly
sprint_speed_factor = 3
stamina_recovery = 1
sprint_cost_factor = 0.7
cold_level_1 = 80
cold_level_2 = 50
cold_level_3 = 0
heat_level_1 = 2000
heat_level_2 = 3000
heat_level_3 = 4000
brute_mod = 0.2
burn_mod = 0.2
fall_mod = 0.5
eyes = "blank_eyes"
breath_type = GAS_NITROGEN
poison_type = GAS_OXYGEN
flags = NO_SCAN | NO_PAIN
spawn_flags = IS_RESTRICTED
blood_color = "#2299FC"
flesh_color = "#808D11"
tail = "armalis_tail"
icon_template = 'icons/mob/human_races/r_armalis.dmi'
reagent_tag = IS_VOX
inherent_verbs = list(
/mob/living/carbon/human/proc/leap,
/mob/living/carbon/human/proc/gut,
/mob/living/carbon/human/proc/commune,
/mob/living/carbon/human/proc/quillboar,
/mob/living/carbon/human/proc/sonar_ping
)
/datum/species/vox/armalis/can_commune()
return TRUE
-9
View File
@@ -95,15 +95,6 @@
var/mob/living/carbon/human/H = A
. = H.species && (H.species.flags & IS_MECHANICAL)
/proc/isvox(A)
if(istype(A, /mob/living/carbon/human))
switch(A:get_species())
if (SPECIES_VOX)
return 1
if (SPECIES_VOX_ARMALIS)
return 1
return 0
/mob/proc/is_diona()
return FALSE
-21
View File
@@ -17,24 +17,3 @@
B.ckey = owner.ckey
qdel(src)
//VOX ORGANS.
/obj/item/organ/internal/stack
name = "cortical stack"
icon_state = "brain-prosthetic"
organ_tag = "stack"
parent_organ = BP_HEAD
robotic = 2
vital = 1
var/backup_time = 0
var/datum/mind/backup
origin_tech = list(TECH_ENGINEERING = 5, TECH_DATA=3, TECH_BIO=3)
/obj/item/organ/internal/stack/process()
if(owner && owner.stat != DEAD && !is_broken())
backup_time = world.time
if(owner.mind) backup = owner.mind
/obj/item/organ/internal/stack/vox
name = "vox cortical stack"
vital = 0
-20
View File
@@ -35,23 +35,3 @@
dislocated = -1
vital = 0
//vox organs
/obj/item/organ/internal/heart/vox
icon_state = "vox_heart"
dead_icon = "vox_heart"
/obj/item/organ/internal/lungs/vox
name = "air capillary sack"
icon_state = "vox_lung"
/obj/item/organ/internal/kidneys/vox
name = "filtration bladder"
icon_state = "lungs"
color = "#99ccff"
parent_organ = BP_CHEST
/obj/item/organ/internal/liver/vox
name = "waste tract"
parent_organ = BP_CHEST
color = "#0033cc"
+5 -11
View File
@@ -1,9 +1,7 @@
//Vox pinning weapon.
//Alien pinning weapon.
/obj/item/gun/launcher/spikethrower
name = "spike thrower"
desc = "A vicious alien projectile weapon. Parts of it quiver gelatinously, as though the thing is insectile and alive."
var/last_regen = 0
var/spike_gen_time = 100
var/max_spikes = 3
@@ -46,11 +44,11 @@
icon_state = "spikethrower[spikes]"
/obj/item/gun/launcher/spikethrower/special_check(user)
if(istype(user,/mob/living/carbon/human))
if(ishuman(user))
var/mob/living/carbon/human/H = user
if(H.species && H.species.name != SPECIES_VOX && H.species.name != SPECIES_VOX_ARMALIS)
if(H.species && H.species.name != SPECIES_VAURCA_WARRIOR)
to_chat(user, "<span class='warning'>\The [src] does not respond to you!</span>")
return 0
return FALSE
return ..()
/obj/item/gun/launcher/spikethrower/update_release_force()
@@ -81,15 +79,11 @@
var/mode = 1
sprite_sheets = list(
BODYTYPE_VOX_ARMALIS = 'icons/mob/species/armalis/held.dmi'
)
/obj/item/gun/energy/noisecannon/attack_hand(mob/user as mob)
if(loc != user)
var/mob/living/carbon/human/H = user
if(istype(H))
if(H.species.name == SPECIES_VOX_ARMALIS)
if(H.species.name == SPECIES_VAURCA_WARRIOR)
..()
return
to_chat(user, "<span class='warning'>\The [src] is far too large for you to pick up.</span>")
@@ -196,7 +196,7 @@
src.updateUsrDialog()
return
/obj/item/gun/projectile/dartgun/vox
/obj/item/gun/projectile/dartgun/alien
name = "alien dart gun"
desc = "A small gas-powered dartgun, fitted for nonhuman hands."