Playable vox oh no. [MDB IGNORE] (#8674)

* Allowing vox to join as survivalists.

* Adding a crash survivor alt title for survivalist.

* Sideporting vox icons from Bay.

* Updating some vox gear and adjusting vox code for planet spawns.

* Attempting to fix up join checking on latejoin links.

* Crash survivor now loads a pod if it can't find one.

* Nerfs vox cold resistance, they now sit between Tesh and humans.
This commit is contained in:
MistakeNot4892
2022-08-07 17:16:23 +10:00
committed by GitHub
parent f6f00cc9e2
commit 994f58e3c5
41 changed files with 313 additions and 129 deletions

View File

@@ -5,18 +5,43 @@
/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 = 150
var/max_spikes = 5
var/spikes = 5
desc = "A vicious alien projectile weapon, adapted from a tool used for bolting hull sections together. Parts of it quiver gelatinously, as though the thing is insectile and alive."
release_force = 30
icon = 'icons/obj/gun.dmi'
icon_state = "spikethrower3"
item_state = "spikethrower"
fire_sound = 'sound/weapons/bladeslice.ogg'
fire_sound_text = "a strange noise"
fire_sound_text = "a meaty thunk"
var/base_state = "spikethrower"
var/last_regen = 0
var/spike_gen_time = 150
var/max_spikes = 5
var/spikes = 5
/obj/item/gun/launcher/spikethrower/attackby(obj/item/A, mob/user)
if(istype(A, /obj/item/spike))
if(spikes >= max_spikes)
to_chat(user, SPAN_WARNING("\The [src] is already loaded to capacity."))
return TRUE
to_chat(user, SPAN_NOTICE("You insert \the [A] into \the [src]."))
user.drop_from_inventory(A)
qdel(A)
spikes++
update_icon()
return TRUE
return ..()
/obj/item/gun/launcher/spikethrower/small
name = "spike pistol"
desc = "A cut-down version of the infamous spike thrower, adapted from a tool used for bolting hull sections together. Parts of it quiver gelatinously, as though the thing is insectile and alive."
icon_state = "spikepistol3"
base_state = "spikepistol"
w_class = ITEMSIZE_COST_SMALL
slot_flags = SLOT_BACK | SLOT_BELT
spike_gen_time = 180
release_force = 24
max_spikes = 3
spikes = 3
/obj/item/gun/launcher/spikethrower/Initialize()
. = ..()
@@ -38,7 +63,7 @@
. += "It has [spikes] spike\s remaining."
/obj/item/gun/launcher/spikethrower/update_icon()
icon_state = "spikethrower[spikes]"
icon_state = "[base_state][spikes]"
/obj/item/gun/launcher/spikethrower/update_release_force()
return
@@ -67,7 +92,7 @@
list(mode_name="stunning", burst=1, fire_delay=null, move_delay=null, burst_accuracy=list(30), dispersion=null, projectile_type=/obj/item/projectile/beam/stun/darkmatter, charge_cost = 300),
list(mode_name="focused", burst=1, fire_delay=null, move_delay=null, burst_accuracy=list(30), dispersion=null, projectile_type=/obj/item/projectile/beam/darkmatter, charge_cost = 400),
list(mode_name="scatter burst", burst=8, fire_delay=null, move_delay=4, burst_accuracy=list(0, 0, 0, 0, 0, 0, 0, 0), dispersion=list(3, 3, 3, 3, 3, 3, 3, 3, 3), projectile_type=/obj/item/projectile/energy/darkmatter, charge_cost = 300),
)
)
/obj/item/projectile/beam/stun/darkmatter
name = "dark matter wave"
@@ -152,4 +177,4 @@
if(ismob(target))
var/throwdir = get_dir(firer,target)
target.throw_at(get_edge_target_turf(target, throwdir), rand(1,6), 10)
return 1
return 1