Upgrade Update: Bluespace Boogaloo

This commit is contained in:
Iamgoofball
2015-06-05 23:56:09 -07:00
parent adfb237de3
commit b65c7a36df
16 changed files with 364 additions and 77 deletions
+38 -2
View File
@@ -16,11 +16,36 @@
var/active = 0
var/powered = 0
var/fire_delay = 100
var/maximum_fire_delay = 100
var/minimum_fire_delay = 20
var/last_shot = 0
var/shot_number = 0
var/state = 0
var/locked = 0
/obj/machinery/power/emitter/New()
..()
component_parts = list()
component_parts += new /obj/item/weapon/circuitboard/emitter(null)
component_parts += new /obj/item/weapon/stock_parts/micro_laser(null)
component_parts += new /obj/item/weapon/stock_parts/manipulator(null)
RefreshParts()
/obj/machinery/power/emitter/RefreshParts()
var/max_firedelay = 120
var/firedelay = 120
var/min_firedelay = 24
var/power_usage = 350
for(var/obj/item/weapon/stock_parts/micro_laser/L in component_parts)
max_firedelay -= 20 * L.rating
min_firedelay -= 4 * L.rating
firedelay -= 20 * L.rating
maximum_fire_delay = max_firedelay
minimum_fire_delay = min_firedelay
fire_delay = firedelay
for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts)
power_usage -= 50 * M.rating
active_power_usage = power_usage
/obj/machinery/power/emitter/verb/rotate()
set name = "Rotate"
@@ -71,7 +96,7 @@
src.active = 1
user << "<span class='notice'>You turn on \the [src].</span>"
src.shot_number = 0
src.fire_delay = 100
src.fire_delay = maximum_fire_delay
investigate_log("turned <font color='green'>on</font> by [user.key]","singulo")
update_icon()
else
@@ -119,7 +144,7 @@
src.fire_delay = 2
src.shot_number ++
else
src.fire_delay = rand(20,100)
src.fire_delay = rand(minimum_fire_delay,maximum_fire_delay)
src.shot_number = 0
var/obj/item/projectile/beam/emitter/A = PoolOrNew(/obj/item/projectile/beam/emitter,src.loc)
@@ -221,6 +246,17 @@
user << "<span class='danger'>Access denied.</span>"
return
if(default_deconstruction_screwdriver(user, "emitter", "emitter", W))
return
if(exchange_parts(user, W))
return
if(default_pry_open(W))
return
default_deconstruction_crowbar(W)
..()
return