Merge remote-tracking branch 'upstream/master' into rebase-to-vg

This commit is contained in:
PJB3005
2017-02-12 16:35:57 +01:00
182 changed files with 2195 additions and 91090 deletions
+3 -2
View File
@@ -53,9 +53,10 @@ var/global/list/rad_collectors = list()
return
..()
/obj/machinery/power/rad_collector/can_be_unfasten_wrench(mob/user)
/obj/machinery/power/rad_collector/can_be_unfasten_wrench(mob/user, silent)
if(loaded_tank)
user << "<span class='warning'>Remove the plasma tank first!</span>"
if(!silent)
user << "<span class='warning'>Remove the plasma tank first!</span>"
return FAILED_UNFASTEN
return ..()
+4 -3
View File
@@ -128,7 +128,7 @@
return 1
/obj/machinery/power/emitter/attack_animal(mob/living/simple_animal/M)
if(ismegafauna(M))
if(ismegafauna(M) && anchored)
state = 0
anchored = FALSE
M.visible_message("<span class='warning'>[M] rips [src] free from its moorings!</span>")
@@ -217,9 +217,10 @@
A.starting = loc
A.fire()
/obj/machinery/power/emitter/can_be_unfasten_wrench(mob/user)
/obj/machinery/power/emitter/can_be_unfasten_wrench(mob/user, silent)
if(state == EM_WELDED)
user << "<span class='warning'>[src] is welded to the floor!</span>"
if(!silent)
user << "<span class='warning'>[src] is welded to the floor!</span>"
return FAILED_UNFASTEN
return ..()
@@ -77,9 +77,10 @@ field_generator power level display
else
user << "<span class='warning'>The [src] needs to be firmly secured to the floor first!</span>"
/obj/machinery/field/generator/can_be_unfasten_wrench(mob/user)
/obj/machinery/field/generator/can_be_unfasten_wrench(mob/user, silent)
if(state == FG_WELDED)
user << "<span class='warning'>[src] is welded to the floor!</span>"
if(!silent)
user << "<span class='warning'>[src] is welded to the floor!</span>"
return FAILED_UNFASTEN
return ..()
+11 -10
View File
@@ -160,7 +160,7 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics,
var/mob/living/carbon/C = A
C.dust()
/proc/tesla_zap(atom/source, zap_range = 3, power, explosive = FALSE)
/proc/tesla_zap(atom/source, zap_range = 3, power, explosive = FALSE, stun_mobs = TRUE)
. = source.dir
if(power < 1000)
return
@@ -251,26 +251,27 @@ var/list/blacklisted_tesla_types = typecacheof(list(/obj/machinery/atmospherics,
//per type stuff:
if(closest_tesla_coil)
closest_tesla_coil.tesla_act(power, explosive)
closest_tesla_coil.tesla_act(power, explosive, stun_mobs)
else if(closest_grounding_rod)
closest_grounding_rod.tesla_act(power, explosive)
closest_grounding_rod.tesla_act(power, explosive, stun_mobs)
else if(closest_mob)
var/shock_damage = Clamp(round(power/400), 10, 90) + rand(-5, 5)
closest_mob.electrocute_act(shock_damage, source, 1, tesla_shock = 1)
closest_mob.electrocute_act(shock_damage, source, 1, tesla_shock = 1, stun = stun_mobs)
if(issilicon(closest_mob))
var/mob/living/silicon/S = closest_mob
S.emp_act(2)
tesla_zap(S, 7, power / 1.5) // metallic folks bounce it further
if(stun_mobs)
S.emp_act(2)
tesla_zap(S, 7, power / 1.5, stun_mobs) // metallic folks bounce it further
else
tesla_zap(closest_mob, 5, power / 1.5)
tesla_zap(closest_mob, 5, power / 1.5, stun_mobs)
else if(closest_machine)
closest_machine.tesla_act(power, explosive)
closest_machine.tesla_act(power, explosive, stun_mobs)
else if(closest_blob)
closest_blob.tesla_act(power, explosive)
closest_blob.tesla_act(power, explosive, stun_mobs)
else if(closest_structure)
closest_structure.tesla_act(power, explosive)
closest_structure.tesla_act(power, explosive, stun_mobs)