Adds and tweaks Vox toys
@@ -33,11 +33,14 @@
|
||||
#define LANGUAGE_SKRELLIAN "Skrellian"
|
||||
#define LANGUAGE_TRADEBAND "Tradeband"
|
||||
#define LANGUAGE_GUTTER "Gutter"
|
||||
#define LANGUAGE_SIGN "Sign Language"
|
||||
#define LANGUAGE_SCHECHI "Schechi"
|
||||
#define LANGUAGE_ROOTLOCAL "Local Rootspeak"
|
||||
#define LANGUAGE_ROOTGLOBAL "Global Rootspeak"
|
||||
#define LANGUAGE_CULT "Cult"
|
||||
#define LANGUAGE_SIGN "Sign Language"
|
||||
#define LANGUAGE_OCCULT "Occult"
|
||||
#define LANGUAGE_CHANGELING "Changeling"
|
||||
#define LANGUAGE_VOX "Vox-Pidgin"
|
||||
|
||||
// Language flags.
|
||||
#define WHITELISTED 1 // Language is available if the speaker is whitelisted.
|
||||
|
||||
@@ -92,4 +92,9 @@
|
||||
siemens_coefficient = 0
|
||||
phoronproof = 1
|
||||
permeability_coefficient = 0.05
|
||||
species_restricted = list("Vox")
|
||||
species_restricted = list("Vox")
|
||||
|
||||
cold_protection = HANDS
|
||||
min_cold_protection_temperature = GLOVES_MIN_COLD_PROTECTION_TEMPERATURE
|
||||
heat_protection = HANDS
|
||||
max_heat_protection_temperature = GLOVES_MAX_HEAT_PROTECTION_TEMPERATURE
|
||||
|
||||
@@ -107,7 +107,6 @@
|
||||
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.
|
||||
|
||||
@@ -36,14 +36,14 @@
|
||||
slowdown = 1
|
||||
phoronproof = 1
|
||||
armor = list(melee = 60, bullet = 50, laser = 40,energy = 15, bomb = 30, bio = 30, rad = 30)
|
||||
siemens_coefficient = 0.6
|
||||
siemens_coefficient = 0.2
|
||||
heat_protection = UPPER_TORSO|LOWER_TORSO|LEGS|FEET|ARMS|HANDS
|
||||
max_heat_protection_temperature = SPACE_SUIT_MAX_HEAT_PROTECTION_TEMPERATURE
|
||||
species_restricted = list("Vox")
|
||||
|
||||
/obj/item/clothing/head/helmet/space/vox
|
||||
armor = list(melee = 60, bullet = 50, laser = 40, energy = 15, bomb = 30, bio = 30, rad = 30)
|
||||
siemens_coefficient = 0.6
|
||||
siemens_coefficient = 0.2
|
||||
item_flags = STOPPRESSUREDAMAGE | THICKMATERIAL | AIRTIGHT | PHORONGUARD
|
||||
flags_inv = 0
|
||||
phoronproof = 1
|
||||
|
||||
@@ -47,6 +47,7 @@
|
||||
icon_state = "vox_rig"
|
||||
armor = list(melee = 60, bullet = 50, laser = 40, energy = 15, bomb = 30, bio = 30, rad = 30)
|
||||
item_flags = THICKMATERIAL
|
||||
siemens_coefficient = 0.2
|
||||
phoronproof = 1
|
||||
|
||||
air_type = /obj/item/weapon/tank/phoron/vox
|
||||
@@ -58,9 +59,11 @@
|
||||
|
||||
/obj/item/clothing/head/helmet/space/rig/vox
|
||||
species_restricted = list("Vox")
|
||||
flags_inv = HIDEMASK|HIDEEARS|HIDEEYES|HIDEFACE
|
||||
phoronproof = 1
|
||||
|
||||
/obj/item/clothing/shoes/magboots/rig/vox
|
||||
name = "talons"
|
||||
species_restricted = list("Vox")
|
||||
phoronproof = 1
|
||||
|
||||
@@ -69,7 +72,6 @@
|
||||
phoronproof = 1
|
||||
|
||||
/obj/item/clothing/gloves/gauntlets/rig/vox
|
||||
name = "talons"
|
||||
siemens_coefficient = 0
|
||||
species_restricted = list("Vox")
|
||||
phoronproof = 1
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
/obj/item/clothing/under/vox
|
||||
has_sensor = 0
|
||||
species_restricted = list("Vox")
|
||||
valid_accessory_slots = list("vox")
|
||||
restricted_accessory_slots = list("vox")
|
||||
phoronproof = 1
|
||||
|
||||
/obj/item/clothing/under/vox/vox_casual
|
||||
@@ -14,4 +16,18 @@
|
||||
name = "alien robes"
|
||||
desc = "Weird and flowing!"
|
||||
icon_state = "vox-casual-2"
|
||||
item_state = "vox-casual-2"
|
||||
item_state = "vox-casual-2"
|
||||
|
||||
//Vox Accessories
|
||||
/obj/item/clothing/accessory/storage/vox
|
||||
name = ""
|
||||
desc = "An alien mesh. Seems to be made up mostly of pockets"
|
||||
// icon_state = "webbing"
|
||||
slot = "vox"
|
||||
|
||||
slots = 5
|
||||
|
||||
/obj/item/clothing/accessory/storage/vox/New()
|
||||
..()
|
||||
hold.max_storage_space = slots * ITEMSIZE_COST_NORMAL
|
||||
hold.max_w_class = ITEMSIZE_NORMAL
|
||||
@@ -1,5 +1,5 @@
|
||||
/datum/language/ling
|
||||
name = "Changeling"
|
||||
name = LANGUAGE_CHANGELING
|
||||
desc = "Although they are normally wary and suspicious of each other, changelings can commune over a distance."
|
||||
speech_verb = "says"
|
||||
colour = "changeling"
|
||||
@@ -38,7 +38,7 @@
|
||||
..(speaker,message,speaker_mask)
|
||||
|
||||
/datum/language/vox
|
||||
name = "Vox-pidgin"
|
||||
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 = "shrieks"
|
||||
ask_verb = "creels"
|
||||
@@ -73,7 +73,7 @@
|
||||
"d'rekkathnor", "khari'd", "gual'te", "nikka", "nikt'o", "barada", "kla'atu", "barhah", "hra" ,"zar'garis", "spiri", "malum")
|
||||
|
||||
/datum/language/cult
|
||||
name = "Occult"
|
||||
name = LANGUAGE_OCCULT
|
||||
desc = "The initiated can share their thoughts by means defying all reason."
|
||||
speech_verb = "intones"
|
||||
ask_verb = "intones"
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
name_plural = "Vox"
|
||||
icobase = 'icons/mob/human_races/r_vox.dmi'
|
||||
deform = 'icons/mob/human_races/r_def_vox.dmi'
|
||||
default_language = "Vox-pidgin"
|
||||
language = "Galactic Common"
|
||||
default_language = LANGUAGE_VOX
|
||||
language = LANGUAGE_GALCOM
|
||||
num_alternate_languages = 1
|
||||
unarmed_types = list(/datum/unarmed_attack/stomp, /datum/unarmed_attack/kick, /datum/unarmed_attack/claws/strong, /datum/unarmed_attack/bite/strong)
|
||||
rarity_value = 4
|
||||
@@ -37,7 +37,7 @@
|
||||
spawn_flags = SPECIES_IS_WHITELISTED
|
||||
appearance_flags = HAS_EYE_COLOR | HAS_HAIR_COLOR
|
||||
|
||||
blood_color = "#2299FC"
|
||||
blood_color = "#9066BD"
|
||||
flesh_color = "#808D11"
|
||||
|
||||
reagent_tag = IS_VOX
|
||||
|
||||
@@ -150,3 +150,19 @@ obj/item/weapon/gun/energy/staff/focus
|
||||
user << "<span class='warning'>The [src.name] will now strike only a single person.</span>"
|
||||
projectile_type = "/obj/item/projectile/forcebolt"
|
||||
*/
|
||||
|
||||
//Vox toys
|
||||
/obj/item/weapon/gun/energy/sonicgun
|
||||
name = "sonic cannon"
|
||||
desc = "A vicious alien sonic weapon. Parts of it quiver gelatinously, as though the thing is insectile and alive."
|
||||
icon_state = "plasma_stun"
|
||||
item_state = "plasma_stun"
|
||||
fire_sound = 'sound/effects/basscannon.ogg'
|
||||
fire_delay = 10
|
||||
|
||||
self_recharge = 1
|
||||
|
||||
firemodes = list(
|
||||
list(mode_name="incapacitate", projectile_type=/obj/item/projectile/energy/sonic/weak, fire_delay=10, charge_cost = 120),
|
||||
list(mode_name="kill", projectile_type=/obj/item/projectile/energy/sonic/strong, fire_delay=20, charge_cost = 240),
|
||||
)
|
||||
@@ -171,4 +171,51 @@
|
||||
|
||||
/obj/item/projectile/energy/plasmastun/on_hit(var/atom/target)
|
||||
bang(target)
|
||||
. = ..()
|
||||
. = ..()
|
||||
|
||||
/obj/item/projectile/energy/sonic
|
||||
name = "sonic pulse"
|
||||
icon_state = "sonic_pulse"
|
||||
armor_penetration = 50
|
||||
kill_count = 8
|
||||
damage_type = BRUTE
|
||||
embed_chance = 0
|
||||
check_armour = "melee"
|
||||
vacuum_traversal = 0
|
||||
var/ear_pain = 10
|
||||
|
||||
/obj/item/projectile/energy/sonic/on_hit(var/atom/target)
|
||||
sonicboom(target, ear_pain)
|
||||
. = ..()
|
||||
|
||||
/obj/item/projectile/energy/sonic/proc/sonicboom(var/mob/living/carbon/M, var/ear_pain)
|
||||
to_chat(M, "<span class='danger'>You hear a loud roar.</span>")
|
||||
var/ear_safety = 0
|
||||
var/ear_effect = ear_pain
|
||||
ear_safety = M.get_ear_protection()
|
||||
if (ear_safety > 1)
|
||||
ear_effect *= 0.5
|
||||
else if (!ear_safety)
|
||||
ear_effect *= 2
|
||||
|
||||
M.adjustEarDamage(ear_effect, ear_effect*2)
|
||||
M.halloss += ear_effect
|
||||
|
||||
if (M.ear_damage >= 15)
|
||||
to_chat(M, "<span class='danger'>Your ears start to ring badly!</span>")
|
||||
M.confused = max(M.confused, 100) //Balance thrown off
|
||||
if (prob(M.ear_damage - 5))
|
||||
to_chat(M, "<span class='danger'>You can't hear anything!</span>")
|
||||
M.sdisabilities |= DEAF
|
||||
else
|
||||
if (M.ear_damage >= 5)
|
||||
to_chat(M, "<span class='danger'>Your ears start to ring!</span>")
|
||||
M.update_icons()
|
||||
|
||||
/obj/item/projectile/energy/sonic/weak
|
||||
damage = 10
|
||||
ear_pain = 20
|
||||
|
||||
/obj/item/projectile/energy/sonic/strong
|
||||
damage = 40
|
||||
ear_pain = 10
|
||||
|
Before Width: | Height: | Size: 3.3 KiB After Width: | Height: | Size: 3.4 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 22 KiB After Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 88 KiB After Width: | Height: | Size: 89 KiB |
|
Before Width: | Height: | Size: 23 KiB After Width: | Height: | Size: 24 KiB |
|
Before Width: | Height: | Size: 1.0 KiB After Width: | Height: | Size: 1.0 KiB |
|
Before Width: | Height: | Size: 155 KiB After Width: | Height: | Size: 156 KiB |
|
Before Width: | Height: | Size: 44 KiB After Width: | Height: | Size: 47 KiB |
|
Before Width: | Height: | Size: 19 KiB After Width: | Height: | Size: 20 KiB |