nor-shall-our-souls-falter

This commit is contained in:
Fox McCloud
2019-09-17 16:06:09 -04:00
parent 6f637b6014
commit aa49033844
157 changed files with 762 additions and 1057 deletions
+2 -33
View File
@@ -704,33 +704,6 @@
src.interact(user)
/obj/machinery/power/apc/attack_alien(mob/living/carbon/alien/humanoid/user)
if(!user)
return
if(!istype(user,/mob/living/carbon/alien/humanoid))
return
if(indestructible)
return
user.changeNext_move(CLICK_CD_MELEE)
user.do_attack_animation(src)
user.visible_message("<span class='warning'>[user.name] slashes at the [src.name]!", "<span class='notice'>You slash at the [src.name]!</span></span>")
playsound(src.loc, 'sound/weapons/slash.ogg', 100, 1)
var/allcut = wires.IsAllCut()
if(beenhit >= pick(3, 4) && wiresexposed != 1)
wiresexposed = 1
src.update_icon()
src.visible_message("<span class='warning'>The [src.name]'s cover flies open, exposing the wires!</span>")
else if(wiresexposed == 1 && allcut == 0)
wires.CutAll()
src.update_icon()
src.visible_message("<span class='warning'>The [src.name]'s wires are shredded!</span>")
else
beenhit += 1
return
/obj/machinery/power/apc/attack_ghost(mob/user)
if(wiresexposed)
wires.Interact(user)
@@ -1329,12 +1302,8 @@
cell.ex_act(3.0)
return
/obj/machinery/power/apc/blob_act()
if(prob(75))
set_broken()
if(cell && prob(5))
cell.blob_act()
/obj/machinery/power/apc/blob_act(obj/structure/blob/B)
set_broken()
/obj/machinery/power/apc/disconnect_terminal()
if(terminal)
+1 -1
View File
@@ -161,7 +161,7 @@
if(prob(25))
corrupt()
/obj/item/stock_parts/cell/blob_act()
/obj/item/stock_parts/cell/blob_act(obj/structure/blob/B)
ex_act(EXPLODE_DEVASTATE)
/obj/item/stock_parts/cell/proc/get_electrocute_damage()
+4
View File
@@ -32,6 +32,10 @@ var/const/GRAV_NEEDS_WRENCH = 3
if(severity == 1) // Very sturdy.
set_broken()
/obj/machinery/gravity_generator/blob_act(obj/structure/blob/B)
if(prob(20))
set_broken()
/obj/machinery/gravity_generator/tesla_act(power, explosive)
..()
if(explosive)
+17 -30
View File
@@ -113,6 +113,10 @@
else
return ..()
/obj/structure/light_construct/blob_act(obj/structure/blob/B)
if(B && B.loc == loc)
qdel(src)
/obj/machinery/light_construct/small
name = "small light fixture frame"
desc = "A small light fixture under construction."
@@ -397,6 +401,19 @@
if(prob(damage_amount * 5))
break_light_tube()
/obj/machinery/light/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0)
switch(damage_type)
if(BRUTE)
switch(status)
if(LIGHT_EMPTY)
playsound(loc, 'sound/weapons/smash.ogg', 50, TRUE)
if(LIGHT_BROKEN)
playsound(loc, 'sound/effects/hit_on_shattered_glass.ogg', 90, TRUE)
else
playsound(loc, 'sound/effects/glasshit.ogg', 90, TRUE)
if(BURN)
playsound(src.loc, 'sound/items/welder.ogg', 100, TRUE)
// returns whether this light has power
// true if area has power and lightswitch is on
/obj/machinery/light/proc/has_power()
@@ -420,29 +437,7 @@
// ai attack - make lights flicker, because why not
/obj/machinery/light/attack_ai(mob/user)
src.flicker(1)
return
// Aliens smash the bulb but do not get electrocuted./N
/obj/machinery/light/attack_alien(mob/living/carbon/alien/humanoid/user)//So larva don't go breaking light bulbs.
if(status == LIGHT_EMPTY||status == LIGHT_BROKEN)
to_chat(user, "<span class=notice'>That object is useless to you.</span>")
return
else if(status == LIGHT_OK||status == LIGHT_BURNED)
user.do_attack_animation(src)
visible_message("<span class='danger'>[user.name] smashed the light!</span>", "You hear a tinkle of breaking glass")
break_light_tube()
return
/obj/machinery/light/attack_animal(mob/living/simple_animal/M)
if(M.melee_damage_upper == 0) return
if(status == LIGHT_EMPTY||status == LIGHT_BROKEN)
to_chat(M, "<span class='warning'>That object is useless to you.</span>")
return
else if(status == LIGHT_OK||status == LIGHT_BURNED)
M.do_attack_animation(src)
visible_message("<span class='danger'>[M.name] smashed the light!</span>", "You hear a tinkle of breaking glass")
break_light_tube()
return
// attack with hand - remove tube/bulb
// if hands aren't protected and the light is on, burn the player
@@ -572,14 +567,6 @@
break_light_tube()
if(3.0)
break_light_tube()
return
//blob effect
/obj/machinery/light/blob_act()
if(prob(75))
qdel(src)
// timed process
// use power
@@ -25,14 +25,34 @@
shock_field(user)
return 1
/obj/machinery/field/containment/attackby(obj/item/W, mob/user, params)
shock(user)
return TRUE
/obj/machinery/field/containment/blob_act()
return 0
/obj/machinery/field/containment/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0)
switch(damage_type)
if(BURN)
playsound(loc, 'sound/effects/empulse.ogg', 75, TRUE)
if(BRUTE)
playsound(loc, 'sound/effects/empulse.ogg', 75, TRUE)
/obj/machinery/field/containment/blob_act(obj/structure/blob/B)
return FALSE
/obj/machinery/field/containment/ex_act(severity)
return 0
/obj/machinery/field/containment/attack_animal(mob/living/simple_animal/M)
if(!FG1 || !FG2)
qdel(src)
return
if(ismegafauna(M))
M.visible_message("<span class='warning'>[M] glows fiercely as the containment field flickers out!</span>")
FG1.calc_power(INFINITY) //rip that 'containment' field
M.adjustHealth(-M.obj_damage)
else
..()
/obj/machinery/field/containment/Crossed(mob/mover, oldloc)
if(isliving(mover))
@@ -174,6 +174,15 @@
src.use_power = IDLE_POWER_USE */
return 1
/obj/machinery/power/emitter/attack_animal(mob/living/simple_animal/M)
if(ismegafauna(M) && anchored)
state = 0
anchored = FALSE
M.visible_message("<span class='warning'>[M] rips [src] free from its moorings!</span>")
else
..()
if(!anchored)
step(src, get_dir(M, src))
/obj/machinery/power/emitter/process()
if(stat & (BROKEN))
@@ -137,8 +137,17 @@ field_generator power level display
/obj/machinery/field/generator/emp_act()
return 0
/obj/machinery/field/generator/attack_animal(mob/living/simple_animal/M)
if(M.environment_smash & ENVIRONMENT_SMASH_RWALLS && active == FG_OFFLINE && state != FG_UNSECURED)
state = FG_UNSECURED
anchored = FALSE
M.visible_message("<span class='warning'>[M] rips [src] free from its moorings!</span>")
else
..()
if(!anchored)
step(src, get_dir(M, src))
/obj/machinery/field/generator/blob_act()
/obj/machinery/field/generator/blob_act(obj/structure/blob/B)
if(active)
return 0
else
@@ -162,16 +162,10 @@ So, hopefully this is helpful if any more icons are to be added/changed/wonderin
if(3.0)
if(prob(25))
qdel(src)
return
else
return
/obj/structure/particle_accelerator/blob_act()
/obj/machinery/particle_accelerator/control_box/blob_act(obj/structure/blob/B)
if(prob(50))
qdel(src)
return
/obj/structure/particle_accelerator/update_icon()
switch(construction_state)
@@ -340,16 +334,6 @@ So, hopefully this is helpful if any more icons are to be added/changed/wonderin
if(3.0)
if(prob(25))
qdel(src)
return
else
return
/obj/machinery/particle_accelerator/blob_act()
if(prob(50))
qdel(src)
return
/obj/machinery/particle_accelerator/proc/update_state()
return 0
@@ -75,7 +75,7 @@
/obj/singularity/Process_Spacemove() //The singularity stops drifting for no man!
return 0
/obj/singularity/blob_act(severity)
/obj/singularity/blob_act(obj/structure/blob/B)
return
/obj/singularity/ex_act(severity)
@@ -95,6 +95,7 @@
/obj/singularity/bullet_act(obj/item/projectile/P)
qdel(P)
return 0 //Will there be an impact? Who knows. Will we see it? No.
@@ -274,7 +275,7 @@
desc = "[initial(desc)] It glows fiercely with inner fire."
name = "supermatter-charged [initial(name)]"
consumedSupermatter = 1
light_range = 10
set_light(10)
return
+3 -6
View File
@@ -172,12 +172,12 @@
var/turf/tempLoc = get_step(src, reverse_direction(tempDir))
if(istype(tempLoc, /turf/space))
to_chat(user, "<span class='warning'>You can't build a terminal on space.</span>")
return
return
else if(istype(tempLoc))
if(tempLoc.intact)
to_chat(user, "<span class='warning'>You must remove the floor plating first.</span>")
return
return
to_chat(user, "<span class='notice'>You start adding cable to the [src].</span>")
playsound(loc, C.usesound, 50, 1)
@@ -353,9 +353,6 @@
add_fingerprint(user)
ui_interact(user)
/obj/machinery/power/smes/attack_alien(mob/living/carbon/alien/humanoid/user)
return
/obj/machinery/power/smes/ui_interact(mob/user, ui_key = "main", var/datum/nanoui/ui = null, var/force_open = 1)
if(stat & BROKEN)
return
+19 -17
View File
@@ -74,12 +74,15 @@
src.healthcheck()
..()
/obj/machinery/power/solar/blob_act()
src.health--
src.healthcheck()
return
/obj/machinery/power/solar/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0)
switch(damage_type)
if(BRUTE)
if(stat & BROKEN)
playsound(loc, 'sound/effects/hit_on_shattered_glass.ogg', 60, TRUE)
else
playsound(loc, 'sound/effects/glasshit.ogg', 90, TRUE)
if(BURN)
playsound(loc, 'sound/items/welder.ogg', 100, TRUE)
/obj/machinery/power/solar/proc/healthcheck()
if(src.health <= 0)
@@ -154,12 +157,6 @@
if(prob(25) && broken())
new /obj/item/shard(src.loc)
/obj/machinery/power/solar/blob_act()
if(prob(75))
broken()
src.density = 0
/obj/machinery/power/solar/fake/New(var/turf/loc, var/obj/item/solar_assembly/S)
..(loc, S, 0)
@@ -441,6 +438,16 @@
src.attack_hand(user)
return
/obj/machinery/power/solar_control/play_attack_sound(damage_amount, damage_type = BRUTE, damage_flag = 0)
switch(damage_type)
if(BRUTE)
if(stat & BROKEN)
playsound(src.loc, 'sound/effects/hit_on_shattered_glass.ogg', 70, TRUE)
else
playsound(src.loc, 'sound/effects/glasshit.ogg', 75, TRUE)
if(BURN)
playsound(src.loc, 'sound/items/welder.ogg', 100, TRUE)
/obj/machinery/power/solar_control/process()
lastgen = gen
gen = 0
@@ -524,11 +531,6 @@
if(prob(25))
broken()
/obj/machinery/power/solar_control/blob_act()
if(prob(75))
broken()
src.density = 0
//
// MISC
//