")
//animals
- if(isanimal(target) || is_type_in_typecache(target,non_simple_animals))
+ if(isanimal(target) || is_type_in_typecache(target, non_simple_animals))
if(isanimal(target))
var/mob/living/simple_animal/A = target
if(!A.healable)//simple approximation of being animal not a robot or similar
@@ -190,7 +189,7 @@ var/list/non_simple_animals = typecacheof(list(/mob/living/carbon/human/monkey,/
if(user in power_lottery)
return
var/list/L = list()
- var/list/possible_powers = list(VAULT_TOXIN,VAULT_NOBREATH,VAULT_FIREPROOF,VAULT_STUNTIME,VAULT_ARMOUR)
+ var/list/possible_powers = list(VAULT_SPACEIMMUNE,VAULT_XRAY,VAULT_TELEKINESIS,VAULT_PSYCHIC,VAULT_SPEED)
L += pick_n_take(possible_powers)
L += pick_n_take(possible_powers)
power_lottery[user] = L
@@ -248,29 +247,35 @@ var/list/non_simple_animals = typecacheof(list(/mob/living/carbon/human/monkey,/
else
return ..()
-/obj/machinery/dna_vault/proc/upgrade(mob/living/carbon/human/H,upgrade_type)
+/obj/machinery/dna_vault/proc/upgrade(mob/living/carbon/human/H, upgrade_type)
if(!(upgrade_type in power_lottery[H]))
return
- var/datum/species/S = H.dna.species
+ to_chat(H, "[src] stabilizes your genes, granting you the ability to have multiple powers.")
+ H.ignore_gene_stability = 1
switch(upgrade_type)
- if(VAULT_TOXIN)
- to_chat(H, "You feel resistant to airborne toxins.")
- S.tox_mod = 0
- S.virus_immune = 1
- if(VAULT_NOBREATH)
- to_chat(H, "Your lungs feel great.")
- S.flags |= NO_BREATHE
- if(VAULT_FIREPROOF)
- to_chat(H, "Your feel fireproof.")
- S.burn_mod = 0.5
- S.heat_level_1 = 999999999
- S.heat_level_2 = 999999999
- S.heat_level_3 = 999999999
- S.heat_level_3_breathe = 999999999
- if(VAULT_STUNTIME)
- to_chat(H, "Nothing can keep you down for long.")
- S.stun_mod = 0.5
- if(VAULT_ARMOUR)
- to_chat(H, "Your feel tough.")
- S.armor = 30
- power_lottery[H] = list()
\ No newline at end of file
+ if(VAULT_SPACEIMMUNE)
+ to_chat(H, "You suddenly don't feel the need to breathe anymore. Your body also feels very warm.")
+ grant_power(H, NOBREATHBLOCK, NO_BREATH)
+ grant_power(H, COLDBLOCK, RESIST_COLD)
+ if(VAULT_XRAY)
+ to_chat(H, "You can suddenly see through walls.")
+ grant_power(H, XRAYBLOCK, XRAY)
+ if(VAULT_TELEKINESIS)
+ to_chat(H, "You gain the ability to control objects from a distance.")
+ grant_power(H, TELEBLOCK, TK)
+ if(VAULT_PSYCHIC)
+ to_chat(H, "Your mind expands, giving you psychic powers.")
+ grant_power(H, REMOTETALKBLOCK, REMOTE_TALK)
+ grant_power(H, REMOTEVIEWBLOCK, REMOTE_VIEW)
+ grant_power(H, EMPATHBLOCK, EMPATH)
+ grant_power(H, PSYRESISTBLOCK, PSY_RESIST)
+ if(VAULT_SPEED)
+ to_chat(H, "You feel very fast and agile.")
+ grant_power(H, JUMPBLOCK, JUMPY)
+ grant_power(H, INCREASERUNBLOCK, RUN)
+ power_lottery[H] = list()
+
+/obj/machinery/dna_vault/proc/grant_power(mob/living/carbon/human/H, block, power)
+ H.dna.SetSEState(block, 1, 1)
+ H.mutations |= power
+ genemutcheck(H, block, null, MUTCHK_FORCED)
\ No newline at end of file
diff --git a/code/modules/station_goals/shield.dm b/code/modules/station_goals/shield.dm
index 5348f5f9a69..9b5478285ed 100644
--- a/code/modules/station_goals/shield.dm
+++ b/code/modules/station_goals/shield.dm
@@ -12,13 +12,12 @@
You can order the satellites and control systems through cargo shuttle.
"}
-
/datum/station_goal/station_shield/on_report()
//Unlock
- var/datum/supply_packs/P = shuttle_master.supply_packs[/datum/supply_packs/misc/shield_sat]
+ var/datum/supply_packs/P = shuttle_master.supply_packs["[/datum/supply_packs/misc/shield_sat]"]
P.special_enabled = TRUE
- P = shuttle_master.supply_packs[/datum/supply_packs/misc/shield_sat_control]
+ P = shuttle_master.supply_packs["[/datum/supply_packs/misc/shield_sat_control]"]
P.special_enabled = TRUE
/datum/station_goal/station_shield/check_completion()
@@ -33,7 +32,7 @@
for(var/obj/machinery/satellite/meteor_shield/A in machines)
if(!A.active || (A.z != STATION_LEVEL))
continue
- coverage |= view(A.kill_range,A)
+ coverage |= view(A.kill_range, A)
return coverage.len
/obj/item/weapon/circuitboard/machine/computer/sat_control
@@ -45,6 +44,8 @@
name = "Satellite control"
desc = "Used to control the satellite network."
circuit = /obj/item/weapon/circuitboard/machine/computer/sat_control
+ icon_screen = "accelerator"
+ icon_keyboard = "accelerator_key"
var/notice
/obj/machinery/computer/sat_control/attack_hand(mob/user)
@@ -156,7 +157,7 @@
if(get_dist(M,src) > kill_range)
continue
if(!emagged && space_los(M))
- Beam(get_turf(M),icon_state="sat_beam",time=5,maxdistance=kill_range)
+ Beam(get_turf(M), icon_state="sat_beam", time=5, maxdistance=kill_range)
qdel(M)
/obj/machinery/satellite/meteor_shield/toggle(user)
diff --git a/icons/obj/machines/artillery.dmi b/icons/obj/machines/artillery.dmi
deleted file mode 100644
index 887af9fdc07..00000000000
Binary files a/icons/obj/machines/artillery.dmi and /dev/null differ
diff --git a/nano/templates/bluespace_artillery.tmpl b/nano/templates/bluespace_artillery.tmpl
deleted file mode 100644
index 344a6d1fd48..00000000000
--- a/nano/templates/bluespace_artillery.tmpl
+++ /dev/null
@@ -1,26 +0,0 @@
-
-Bluespace Artillery Control
-
-
Target Lock
-
{{:data.target}}
-
-
-
Fire Cooldown
-
- {{if data.reloadtime_mins > 0 || data.reloadtime_mins == 0 && data.reloadtime_secs > 0}}
- {{:data.reloadtime_mins}}:{{:data.reloadtime_secs}}
- {{else}}
- Ready
- {{/if}}
-
-
-
- {{:helper.link('Select Target', 'exclamation-triangle', { 'area' : 1 })}}
- {{:helper.link('Fire', 'exclamation-triangle', { 'fire' : 1 }, data.reloadtime_mins > 0 || data.reloadtime_mins == 0 && data.reloadtime_secs > 0 ? 'disabled' : '')}}
-
-
-Deployment of weapon authorized by Nanotrasen Naval Command. Remember, friendly fire is grounds for termination of your contract and life.
-
diff --git a/paradise.dme b/paradise.dme
index d7bbae0330b..961f9bead81 100644
--- a/paradise.dme
+++ b/paradise.dme
@@ -1089,7 +1089,6 @@
#include "code\modules\atmos_automation\implementation\scrubbers.dm"
#include "code\modules\atmos_automation\implementation\sensors.dm"
#include "code\modules\atmos_automation\implementation\vent_pump.dm"
-#include "code\modules\awaymissions\bluespaceartillery.dm"
#include "code\modules\awaymissions\corpse.dm"
#include "code\modules\awaymissions\exile.dm"
#include "code\modules\awaymissions\gateway.dm"