Merge pull request #515 from Markolie/master

Adds Syndiborg to Nuke Ops, enables shortcuts for borgs/drones, notifies the AI of borg changes
This commit is contained in:
Fox-McCloud
2014-11-23 02:25:40 -05:00
27 changed files with 287 additions and 216 deletions

View File

@@ -18,31 +18,31 @@
var/charge_tick = 0
var/recharge_time = 10 //Time it takes for shots to recharge (in ticks)
New()
..()
processing_objects.Add(src)
/obj/item/weapon/gun/energy/taser/cyborg/New()
..()
processing_objects.Add(src)
Destroy()
processing_objects.Remove(src)
..()
/obj/item/weapon/gun/energy/taser/cyborg/Destroy()
processing_objects.Remove(src)
..()
process() //Every [recharge_time] ticks, recharge a shot for the cyborg
charge_tick++
if(charge_tick < recharge_time) return 0
charge_tick = 0
/obj/item/weapon/gun/energy/taser/cyborg/process() //Every [recharge_time] ticks, recharge a shot for the cyborg
charge_tick++
if(charge_tick < recharge_time) return 0
charge_tick = 0
if(!power_supply) return 0 //sanity
if(power_supply.charge >= power_supply.maxcharge) return 0 // check if we actually need to recharge
if(!power_supply) return 0 //sanity
if(power_supply.charge >= power_supply.maxcharge) return 0 // check if we actually need to recharge
if(isrobot(src.loc))
var/mob/living/silicon/robot/R = src.loc
if(R && R.cell)
R.cell.use(charge_cost) //Take power from the borg...
power_supply.give(charge_cost) //... to recharge the shot
if(isrobot(src.loc))
var/mob/living/silicon/robot/R = src.loc
if(R && R.cell)
R.cell.use(charge_cost) //Take power from the borg...
power_supply.give(charge_cost) //... to recharge the shot
update_icon()
return 1
update_icon()
return 1
/obj/item/weapon/gun/energy/stunrevolver
@@ -70,30 +70,39 @@
cell_type = "/obj/item/weapon/cell/crap"
var/charge_tick = 0
/obj/item/weapon/gun/energy/crossbow/New()
..()
processing_objects.Add(src)
New()
..()
processing_objects.Add(src)
/obj/item/weapon/gun/energy/crossbow/Destroy()
processing_objects.Remove(src)
..()
/obj/item/weapon/gun/energy/crossbow/process()
charge_tick++
if(charge_tick < 4) return 0
charge_tick = 0
if(!power_supply) return 0
power_supply.give(1000)
return 1
Destroy()
processing_objects.Remove(src)
..()
process()
charge_tick++
if(charge_tick < 4) return 0
charge_tick = 0
if(!power_supply) return 0
power_supply.give(1000)
/obj/item/weapon/gun/energy/crossbow/update_icon()
return
/obj/item/weapon/gun/energy/crossbow/cyborg/process()
..()
return
/obj/item/weapon/gun/energy/crossbow/cyborg/process_chambered()
if(in_chamber)
return 1
update_icon()
return
if(isrobot(src.loc))
var/mob/living/silicon/robot/R = src.loc
if(R && R.cell)
R.cell.use(100)
in_chamber = new /obj/item/projectile/energy/bolt(src)
return 1
return 0
/obj/item/weapon/gun/energy/crossbow/largecrossbow
name = "Energy Crossbow"