Files
Aurora.3/code/modules/projectiles/effects.dm
LordFowl bc8871ac2b Shells and Periphery (#1327)
Adds Shells. Adds tags. Adds IPC subspecies. Adds HK-47's. Does not add IPC construction.

Beyond the obvious review of shells, the exact stats of the IPC subspecies need review. They were largely an afterthought, and quickly overshadowed by the shell project.
2016-12-28 02:23:26 +02:00

156 lines
3.7 KiB
Plaintext

/obj/effect/projectile
icon = 'icons/effects/projectiles.dmi'
icon_state = "bolt"
layer = 20
/obj/effect/projectile/New(var/turf/location)
if(istype(location))
loc = location
/obj/effect/projectile/proc/set_transform(var/matrix/M)
if(istype(M))
transform = M
/obj/effect/projectile/proc/activate(var/kill_delay = 3)
spawn(kill_delay)
qdel(src) //see effect_system.dm - sets loc to null and lets GC handle removing these effects
return
//----------------------------
// Laser beam
//----------------------------
/obj/effect/projectile/laser/tracer
icon_state = "beam"
/obj/effect/projectile/laser/muzzle
icon_state = "muzzle_laser"
/obj/effect/projectile/laser/impact
icon_state = "impact_laser"
//----------------------------
// Blue laser beam
//----------------------------
/obj/effect/projectile/laser_blue/tracer
icon_state = "beam_blue"
/obj/effect/projectile/laser_blue/muzzle
icon_state = "muzzle_blue"
/obj/effect/projectile/laser_blue/impact
icon_state = "impact_blue"
//----------------------------
// Omni laser beam
//----------------------------
/obj/effect/projectile/laser_omni/tracer
icon_state = "beam_omni"
/obj/effect/projectile/laser_omni/muzzle
icon_state = "muzzle_omni"
/obj/effect/projectile/laser_omni/impact
icon_state = "impact_omni"
//----------------------------
// Xray laser beam
//----------------------------
/obj/effect/projectile/xray/tracer
icon_state = "xray"
/obj/effect/projectile/xray/muzzle
icon_state = "muzzle_xray"
/obj/effect/projectile/xray/impact
icon_state = "impact_xray"
//----------------------------
// Heavy laser beam
//----------------------------
/obj/effect/projectile/laser_heavy/tracer
icon_state = "beam_heavy"
/obj/effect/projectile/laser_heavy/muzzle
icon_state = "muzzle_beam_heavy"
/obj/effect/projectile/laser_heavy/impact
icon_state = "impact_beam_heavy"
//----------------------------
// Pulse laser beam
//----------------------------
/obj/effect/projectile/laser_pulse/tracer
icon_state = "u_laser"
/obj/effect/projectile/laser_pulse/muzzle
icon_state = "muzzle_u_laser"
/obj/effect/projectile/laser_pulse/impact
icon_state = "impact_u_laser"
//----------------------------
// Pulse muzzle effect only
//----------------------------
/obj/effect/projectile/pulse/muzzle
icon_state = "muzzle_pulse"
//----------------------------
// Emitter beam
//----------------------------
/obj/effect/projectile/emitter/tracer
icon_state = "emitter"
/obj/effect/projectile/emitter/muzzle
icon_state = "muzzle_emitter"
/obj/effect/projectile/emitter/impact
icon_state = "impact_emitter"
//----------------------------
// Stun beam
//----------------------------
/obj/effect/projectile/stun/tracer
icon_state = "stun"
/obj/effect/projectile/stun/muzzle
icon_state = "muzzle_stun"
/obj/effect/projectile/stun/impact
icon_state = "impact_stun"
//----------------------------
// Eye beam
//----------------------------
/obj/effect/projectile/eyelaser/tracer
icon_state = "eye"
/obj/effect/projectile/eyelaser/muzzle
icon_state = "muzzle_eye"
/obj/effect/projectile/eyelaser/impact
icon_state = "impact_eye"
//----------------------------
// Bullet
//----------------------------
/obj/effect/projectile/bullet/muzzle
icon_state = "muzzle_bullet"
// Solar beam
//----------------------------
/obj/effect/projectile/solar/tracer
icon_state = "solar"
/obj/effect/projectile/solar/muzzle
icon_state = "muzzle_solar"
/obj/effect/projectile/solar/impact
icon_state = "impact_solar"
//----------------------------
// Pulse muzzle
//----------------------------
/obj/effect/projectile/pulse_bullet/muzzle
icon_state = "muzzle_pulse"