diff --git a/code/defines/mob/living/silicon/robot.dm b/code/defines/mob/living/silicon/robot.dm index fe98de6ffa..ace55afebf 100644 --- a/code/defines/mob/living/silicon/robot.dm +++ b/code/defines/mob/living/silicon/robot.dm @@ -52,5 +52,5 @@ var/weaponlock_time = 120 var/lawupdate = 1 //Cyborgs will sync their laws with their AI by default var/lockcharge //Used when locking down a borg to preserve cell charge - var/speed = 0 //Cause sec borgs gotta go fast + //var/speed = 0 //Cause sec borgs gotta go fast //No they dont! var/scrambledcodes = 0 // Used to determine if a borg shows up on the robotics console. Setting to one hides them. \ No newline at end of file diff --git a/code/defines/obj/weapon.dm b/code/defines/obj/weapon.dm index a47b0641bc..c649e02ec7 100644 --- a/code/defines/obj/weapon.dm +++ b/code/defines/obj/weapon.dm @@ -1034,6 +1034,12 @@ maxcharge = 500 g_amt = 40 +/obj/item/weapon/cell/secborg + name = "\improper Security borg rechargable D battery" + origin_tech = "powerstorage=0" + maxcharge = 600 //600 max charge / 100 charge per shot = six shots + g_amt = 40 + /obj/item/weapon/cell/high name = "high-capacity power cell" origin_tech = "powerstorage=2" diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm index 06f4b2b319..6c3924d25e 100644 --- a/code/game/machinery/rechargestation.dm +++ b/code/game/machinery/rechargestation.dm @@ -93,7 +93,10 @@ O:icon_state = "flash" if(istype(O,/obj/item/weapon/gun/energy/taser/cyborg)) if(O:power_supply.charge < O:power_supply.maxcharge) - O:power_supply.give(100) + O:power_supply.give(O:charge_cost) + O:update_icon() + else + O:charge_tick = 0 if(istype(O,/obj/item/weapon/melee/baton)) if(O:charges < 10) O:charges += 1 diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 5e80ac31a9..b21daaa41c 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -122,7 +122,7 @@ hands.icon_state = "security" icon_state = "bloodhound" modtype = "Sec" - speed = -1 + //speed = -1 Secborgs have nerfed tasers now, so the speed boost is not necessary nopush = 1 feedback_inc("cyborg_security",1) diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 341092f99a..1498ca3dd0 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -151,6 +151,7 @@ src.modules += new /obj/item/borg/sight/hud/sec(src) src.modules += new /obj/item/weapon/handcuffs/cyborg(src) src.modules += new /obj/item/weapon/melee/baton(src) + src.modules += new /obj/item/weapon/gun/energy/taser/cyborg(src) src.emag = new /obj/item/weapon/gun/energy/laser/cyborg(src) return diff --git a/code/modules/mob/living/silicon/robot/robot_movement.dm b/code/modules/mob/living/silicon/robot/robot_movement.dm index 98042b1229..bd6cf8c3ee 100644 --- a/code/modules/mob/living/silicon/robot/robot_movement.dm +++ b/code/modules/mob/living/silicon/robot/robot_movement.dm @@ -6,9 +6,11 @@ if(..()) return 1 return 0 +/* No longer needed, but I'll leave it here incase we plan to re-use it. /mob/living/silicon/robot/movement_delay() var/tally = 0 //Incase I need to add stuff other than "speed" later tally = speed - return tally \ No newline at end of file + return tally +*/ \ No newline at end of file diff --git a/code/modules/projectiles/guns/energy/stun.dm b/code/modules/projectiles/guns/energy/stun.dm index e3177e7438..251c771a19 100644 --- a/code/modules/projectiles/guns/energy/stun.dm +++ b/code/modules/projectiles/guns/energy/stun.dm @@ -8,19 +8,40 @@ projectile_type = "/obj/item/projectile/energy/electrode" cell_type = "/obj/item/weapon/cell/crap" +/obj/item/weapon/gun/energy/taser/cyborg + name = "taser gun" + desc = "A small, low capacity gun used for non-lethal takedowns." + icon_state = "taser" + fire_sound = 'Taser.ogg' + charge_cost = 100 + projectile_type = "/obj/item/projectile/energy/electrode" + cell_type = "/obj/item/weapon/cell/secborg" + var/charge_tick = 0 + var/recharge_time = 10 //Time it takes for shots to recharge (in seconds) + + New() + ..() + processing_objects.Add(src) -/obj/item/weapon/gun/energy/taser/cyborg/load_into_chamber()//TOOD: change this over to the slowly recharge other cell - if(in_chamber) + Del() + processing_objects.Remove(src) + ..() + + process() //Every [recharge_time] seconds, 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(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 - if(isrobot(src.loc)) - var/mob/living/silicon/robot/R = src.loc - if(R && R.cell) - R.cell.use(charge_cost) - in_chamber = new /obj/item/projectile/energy/electrode(src) - return 1 - return 0 - /obj/item/weapon/gun/energy/stunrevolver diff --git a/html/changelog.html b/html/changelog.html index 209b5695e9..7dd9042e52 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -92,6 +92,15 @@ should be listed in the changelog upon commit tho. Thanks. --> +
+

27 March 2012

+

Nodrak updated:

+ +
+

23 March 2012

Doohl updated: