PA sprites

This commit is contained in:
Cyantime
2018-01-29 00:33:09 -05:00
parent e9886625fa
commit 5b358cb7c5
6 changed files with 22 additions and 38 deletions
@@ -4,7 +4,7 @@
name = "Accelerated Particles"
desc = "Small things moving very fast."
icon = 'icons/obj/machines/particle_accelerator2.dmi'
icon_state = "particle"//Need a new icon for this
icon_state = "particle1"//Need a new icon for this
anchored = 1
density = 1
var/movement_range = 10
@@ -19,22 +19,25 @@
var/movetotarget = 1
/obj/effect/accelerated_particle/weak
icon_state = "particle0"
movement_range = 8
energy = 5
/obj/effect/accelerated_particle/strong
icon_state = "particle2"
movement_range = 15
energy = 15
/obj/effect/accelerated_particle/powerful
icon_state = "particle3"
movement_range = 25
energy = 50
/obj/effect/accelerated_particle/New(loc, dir = 2)
src.loc = loc
src.set_dir(dir)
if(movement_range > 20)
movement_range = 20
spawn(0)
move(1)
return
/obj/effect/accelerated_particle/Bump(atom/A)
@@ -58,18 +61,15 @@
PC.parent.plasma_temperature += mega_energy
PC.parent.energy += energy
loc = null
return
/obj/effect/accelerated_particle/Bumped(atom/A)
if(ismob(A))
Bump(A)
return
/obj/effect/accelerated_particle/ex_act(severity)
qdel(src)
return
/obj/effect/accelerated_particle/singularity_act()
return
@@ -79,7 +79,6 @@
M.apply_effect((radiation*3),IRRADIATE,0)
M.updatehealth()
//M << "<font color='red'>You feel odd.</font>"
return
/obj/effect/accelerated_particle/proc/move(var/lag)
@@ -3,8 +3,4 @@
desc_holder = "This is where the Alpha particles are accelerated to <b><i>radical speeds</i></b>."
icon = 'icons/obj/machines/particle_accelerator2.dmi'
icon_state = "fuel_chamber"
reference = "fuel_chamber"
/obj/structure/particle_accelerator/fuel_chamber/update_icon()
..()
return
reference = "fuel_chamber"
@@ -56,11 +56,10 @@
active = 0
connected_parts = list()
return
/obj/machinery/particle_accelerator/control_box/update_icon()
if(active)
icon_state = "[reference]p1"
icon_state = "[reference]p[strength]"
else
if(use_power)
if(assembled)
@@ -77,7 +76,6 @@
icon_state = "[reference]w"
else
icon_state = "[reference]c"
return
/obj/machinery/particle_accelerator/control_box/Topic(href, href_list)
..()
@@ -94,9 +92,9 @@
if(href_list["togglep"])
if(!wires.IsIndexCut(PARTICLE_TOGGLE_WIRE))
src.toggle_power()
toggle_power()
else if(href_list["scan"])
src.part_scan()
part_scan()
else if(href_list["strengthup"])
if(!wires.IsIndexCut(PARTICLE_STRENGTH_WIRE))
@@ -106,9 +104,8 @@
if(!wires.IsIndexCut(PARTICLE_STRENGTH_WIRE))
remove_strength()
src.updateDialog()
src.update_icon()
return
updateDialog()
update_icon()
/obj/machinery/particle_accelerator/control_box/proc/strength_change()
for(var/obj/structure/particle_accelerator/part in connected_parts)
@@ -144,7 +141,6 @@
update_use_power(0)
else if(!stat && construction_state == 3)
update_use_power(1)
return
/obj/machinery/particle_accelerator/control_box/process()
@@ -152,13 +148,12 @@
//a part is missing!
if( length(connected_parts) < 6 )
investigate_log("lost a connected part; It <font color='red'>powered down</font>.","singulo")
src.toggle_power()
toggle_power()
return
//emit some particles
for(var/obj/structure/particle_accelerator/particle_emitter/PE in connected_parts)
if(PE)
PE.emit_particle(src.strength)
return
/obj/machinery/particle_accelerator/control_box/proc/part_scan()
@@ -211,11 +206,11 @@
/obj/machinery/particle_accelerator/control_box/proc/toggle_power()
src.active = !src.active
active = !active
investigate_log("turned [active?"<font color='red'>ON</font>":"<font color='green'>OFF</font>"] by [usr ? usr.key : "outside forces"]","singulo")
message_admins("PA Control Computer turned [active ?"ON":"OFF"] by [key_name(usr, usr.client)](<A HREF='?_src_=holder;adminmoreinfo=\ref[usr]'>?</A>) in ([x],[y],[z] - <A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[x];Y=[y];Z=[z]'>JMP</a>)",0,1)
log_game("PA Control Computer turned [active ?"ON":"OFF"] by [usr.ckey]([usr]) in ([x],[y],[z])")
if(src.active)
if(active)
update_use_power(2)
for(var/obj/structure/particle_accelerator/part in connected_parts)
part.strength = src.strength
@@ -20,20 +20,16 @@
icon_state = "emitter_right"
reference = "emitter_right"
/obj/structure/particle_accelerator/particle_emitter/update_icon()
..()
return
/obj/structure/particle_accelerator/particle_emitter/proc/set_delay(var/delay)
if(delay && delay >= 0)
src.fire_delay = delay
fire_delay = delay
return 1
return 0
/obj/structure/particle_accelerator/particle_emitter/proc/emit_particle(var/strength = 0)
if((src.last_shot + src.fire_delay) <= world.time)
src.last_shot = world.time
if((last_shot + fire_delay) <= world.time)
last_shot = world.time
var/obj/effect/accelerated_particle/A = null
var/turf/T = get_step(src,dir)
switch(strength)
@@ -43,6 +39,8 @@
A = new/obj/effect/accelerated_particle(T, dir)
if(2)
A = new/obj/effect/accelerated_particle/strong(T, dir)
if(3)
A = new/obj/effect/accelerated_particle/powerful(T, dir)
if(A)
A.set_dir(src.dir)
return 1
@@ -3,8 +3,4 @@
desc_holder = "This uses electromagnetic waves to focus the Alpha-Particles."
icon = 'icons/obj/machines/particle_accelerator2.dmi'
icon_state = "power_box"
reference = "power_box"
/obj/structure/particle_accelerator/power_box/update_icon()
..()
return
reference = "power_box"