diff --git a/code/defines/obj/clothing/gloves.dm b/code/defines/obj/clothing/gloves.dm index 37b17a219bc..29f8957f200 100644 --- a/code/defines/obj/clothing/gloves.dm +++ b/code/defines/obj/clothing/gloves.dm @@ -7,11 +7,14 @@ protective_temperature = 400 heat_transfer_coefficient = 0.25 siemens_coefficient = 0.50 - var/elecgen = 0 - var/uses = 0 +// var/elecgen = 0 //WHAT THE FUCK IS THIS SHIT OH GOD WHY ;-; +// var/uses = 0 //NOPE NOPE NOPE NOPE var/wired = 0 + var/obj/item/weapon/cell/cell = 0 body_parts_covered = HANDS +//(CAPS IS CRUISE CONTROL FOR COOL AS WE ALL KNOW) + /obj/item/clothing/gloves/white name = "White Gloves" desc = "These look pretty fancy." @@ -92,6 +95,8 @@ var/mindrain = 200 var/maxdrain = 400 +//BEEP BEEP IT'S THE COMMENT BRIGADE -Pete +/* /obj/item/clothing/gloves/stungloves/ name = "Stungloves" desc = "These gloves are electrically charged." @@ -100,6 +105,7 @@ siemens_coefficient = 0.30 elecgen = 1 uses = 10 +*/ /obj/item/clothing/gloves/yellow desc = "These gloves are electrically insulated." diff --git a/code/game/objects/items/weapons/stungloves.dm b/code/game/objects/items/weapons/stungloves.dm new file mode 100644 index 00000000000..5af387774a7 --- /dev/null +++ b/code/game/objects/items/weapons/stungloves.dm @@ -0,0 +1,47 @@ +/obj/item/clothing/gloves/attackby(obj/item/weapon/W, mob/user) + if(istype(W, /obj/item/weapon/cable_coil)) + var/obj/item/weapon/cable_coil/C = W + if(!wired) + if(C.amount >= 2) + C.amount -= 2 + wired = 1 + user << "You wrap some wires around [src]." + update_icon() + else + user << "There is not enough wire to cover [src]." + else + user << "[src] are already wired." + + else if(istype(W, /obj/item/weapon/cell)) + if(!wired) + user << "[src] need to be wired first." + else if(!cell) + user.drop_item() + W.loc = src + cell = W + user << "You attach a cell to [src]." + update_icon() + else + user << "[src] already have a cell." + + else if(istype(W, /obj/item/weapon/wirecutters)) + if(cell) + user << "You cut the cell away from [src]." + cell.loc = get_turf(src.loc) + cell = 0 + update_icon() + return + if(wired) //wires disappear into the void because fuck that shit + user << "You cut the wires away from [src]." + wired = 0 + update_icon() + ..() + return + +/obj/item/clothing/gloves/update_icon() //beep beep this'll probably break everything + ..() + overlays = null + if(wired) + overlays += "gloves_wire" + if(cell) + overlays += "gloves_cell" \ No newline at end of file diff --git a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm index 82c89cca204..c66230cf81e 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/humanoid.dm @@ -571,18 +571,24 @@ ..() - if(M.gloves && M.gloves.elecgen == 1)//Stungloves. Any contact will stun the alien. - if(M.gloves.uses > 0) - M.gloves.uses-- - if (weakened < 5) - weakened = 5 - if (stuttering < 5) - stuttering = 5 - if (stunned < 5) - stunned = 5 - for(var/mob/O in viewers(src, null)) - if ((O.client && !( O.blinded ))) - O.show_message("\red [src] has been touched with the stun gloves by [M]!", 1, "\red You hear someone fall.", 2) + if(M.gloves) + if(M.gloves.cell) + if(M.a_intent == "hurt")//Stungloves. Any contact will stun the alien. + if(M.gloves.cell.charge >= 2500) + M.gloves.cell.charge -= 2500 + if (weakened < 5) + weakened = 5 + if (stuttering < 5) + stuttering = 5 + if (stunned < 5) + stunned = 5 + for(var/mob/O in viewers(src, null)) + if ((O.client && !( O.blinded ))) + O.show_message("\red [src] has been touched with the stun gloves by [M]!", 1, "\red You hear someone fall.", 2) + return + else + M << "\red Not enough charge! " + return switch(M.a_intent) diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index 9a8797e9ca1..8a76b1f3caf 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -351,18 +351,24 @@ ..() - if(M.gloves && M.gloves.elecgen == 1)//Stungloves. Any contact will stun the alien. - if(M.gloves.uses > 0) - M.gloves.uses-- - if (weakened < 5) - weakened = 5 - if (stuttering < 5) - stuttering = 5 - if (stunned < 5) - stunned = 5 - for(var/mob/O in viewers(src, null)) - if ((O.client && !( O.blinded ))) - O.show_message("\red [src] has been touched with the stun gloves by [M]!", 1, "\red You hear someone fall.", 2) + if(M.gloves) + if(M.gloves.cell) + if(M.a_intent == "hurt")//Stungloves. Any contact will stun the alien. + if(M.gloves.cell.charge >= 2500) + M.gloves.cell.charge -= 2500 + if (weakened < 5) + weakened = 5 + if (stuttering < 5) + stuttering = 5 + if (stunned < 5) + stunned = 5 + for(var/mob/O in viewers(src, null)) + if ((O.client && !( O.blinded ))) + O.show_message("\red [src] has been touched with the stun gloves by [M]!", 1, "\red You hear someone fall.", 2) + return + else + M << "\red Not enough charge! " + return switch(M.a_intent) diff --git a/code/modules/mob/living/carbon/human/human_attackhand.dm b/code/modules/mob/living/carbon/human/human_attackhand.dm index db1325159c2..4ed7847acb1 100644 --- a/code/modules/mob/living/carbon/human/human_attackhand.dm +++ b/code/modules/mob/living/carbon/human/human_attackhand.dm @@ -9,20 +9,21 @@ visible_message("\red [M] attempted to touch [src]!") return 0 - if((M.gloves && M.gloves.elecgen == 1)) - M.attack_log += text("\[[time_stamp()]\] Stungloved [src.name] ([src.ckey])") - src.attack_log += text("\[[time_stamp()]\] Has been stungloved by [M.name] ([M.ckey])") - - if(M.gloves.uses <= 0) - M.gloves.elecgen = 0 - visible_message("\red [src] has been touched with the stun gloves by [M]!") - M << "\red Not enough charge! " - return - M.gloves.uses-- - var/armorblock = run_armor_check(M.zone_sel.selecting, "energy") - apply_effects(5,5,0,0,5,0,0,armorblock) - visible_message("\red [src] has been touched with the stun gloves by [M]!") - return 1 + if(M.gloves) + if(M.gloves.cell) + if(M.a_intent == "hurt") + if(M.gloves.cell.charge >= 2500) + M.gloves.cell.charge -= 2500 + visible_message("\red [src] has been touched with the stun gloves by [M]!") + M.attack_log += text("\[[time_stamp()]\] Stungloved [src.name] ([src.ckey])") + src.attack_log += text("\[[time_stamp()]\] Has been stungloved by [M.name] ([M.ckey])") + var/armorblock = run_armor_check(M.zone_sel.selecting, "energy") + apply_effects(5,5,0,0,5,0,0,armorblock) + return 1 + else + M << "\red Not enough charge! " + visible_message("\red [src] has been touched with the stun gloves by [M]!") + return switch(M.a_intent) if("help") diff --git a/code/modules/mob/living/carbon/metroid/metroid.dm b/code/modules/mob/living/carbon/metroid/metroid.dm index cc6462af4dc..52c73ce0f24 100644 --- a/code/modules/mob/living/carbon/metroid/metroid.dm +++ b/code/modules/mob/living/carbon/metroid/metroid.dm @@ -452,12 +452,18 @@ - if(M.gloves && M.gloves.elecgen == 1)//Stungloves. Any contact will stun the alien. - if(M.gloves.uses > 0) - M.gloves.uses-- - for(var/mob/O in viewers(src, null)) - if ((O.client && !( O.blinded ))) - O.show_message("\red [src] has been touched with the stun gloves by [M]!", 1, "\red You hear someone fall.", 2) + if(M.gloves) + if(M.gloves.cell) + if(M.a_intent == "hurt")//Stungloves. Any contact will stun the alien. + if(M.gloves.cell.charge >= 2500) + M.gloves.cell.charge -= 2500 + for(var/mob/O in viewers(src, null)) + if ((O.client && !( O.blinded ))) + O.show_message("\red [src] has been touched with the stun gloves by [M]!", 1, "\red You hear someone fall.", 2) + return + else + M << "\red Not enough charge! " + return switch(M.a_intent) diff --git a/code/modules/mob/living/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm index 960e9f91045..8df097ebc90 100644 --- a/code/modules/mob/living/carbon/monkey/monkey.dm +++ b/code/modules/mob/living/carbon/monkey/monkey.dm @@ -156,22 +156,24 @@ if (istype(loc, /turf) && istype(loc.loc, /area/start)) M << "No attacking people at spawn, you jackass." return - if ((M:gloves && M:gloves.elecgen == 1 && M.a_intent == "hurt") /*&& (!istype(src:wear_suit, /obj/item/clothing/suit/judgerobe))*/) - if(M:gloves.uses > 0) - M:gloves.uses-- - if (weakened < 5) - weakened = 5 - if (stuttering < 5) - stuttering = 5 - if (stunned < 5) - stunned = 5 - for(var/mob/O in viewers(src, null)) - if (O.client) - O.show_message("\red [src] has been touched with the stun gloves by [M]!", 1, "\red You hear someone fall", 2) - else - M:gloves.elecgen = 0 - M << "\red Not enough charge! " - return + if(M.gloves) + if(M.gloves.cell) + if(M.a_intent == "hurt") + if(M.gloves.cell.charge >= 2500) + M.gloves.cell.charge -= 2500 + if (weakened < 5) + weakened = 5 + if (stuttering < 5) + stuttering = 5 + if (stunned < 5) + stunned = 5 + for(var/mob/O in viewers(src, null)) + if (O.client) + O.show_message("\red [src] has been touched with the stun gloves by [M]!", 1, "\red You hear someone fall", 2) + return + else + M << "\red Not enough charge! " + return if (M.a_intent == "help") help_shake_act(M) diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index db06a85fbec..e0f5acf4710 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -62,25 +62,6 @@ ..() return - -/obj/item/clothing/gloves/attackby(obj/item/weapon/W, mob/user) - if(istype(W, /obj/item/weapon/cable_coil)) - var/obj/item/weapon/cable_coil/C = W - if(!istype(src, /obj/item/clothing/gloves/yellow)) - if(!wired) - if(C.amount >= 2) - C.amount -= 2 - wired = 1 - user << "You wrap some wires around [src]." - else - user << "There is not enough wire to cover [src]." - else - user << "[src] is already wired." - - else - ..() - return - // the power cable object /obj/structure/cable/New() diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index 1527fc4e053..8ef892942c7 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -77,6 +77,8 @@ //Just because someone gets you occasionally with stun gloves doesn't mean you can put in code to kill everyone who tries to make some. /obj/item/weapon/cell/attackby(obj/item/W, mob/user) ..() +//HONK HONK GLOVES NERF -Pete +/* var/obj/item/clothing/gloves/G = W if(istype(G)) // var/datum/effect/system/spark_spread/s = new /datum/effect/system/spark_spread @@ -98,8 +100,9 @@ use(G.uses*1000) updateicon() user << "\red These gloves are now electrically charged!" +*/ - else if(istype(W, /obj/item/weapon/reagent_containers/syringe)) + if(istype(W, /obj/item/weapon/reagent_containers/syringe)) var/obj/item/weapon/reagent_containers/syringe/S = W user << "You inject the solution into the power cell." diff --git a/html/changelog.html b/html/changelog.html index 712855e1ea4..a8ed9d445a6 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -39,7 +39,7 @@ Credits:
- Coders: TLE, NEO, Errorage, muskets, veryinky, Skie, Noise, Numbers, Agouri, Noka, Urist McDorf, Uhangi, Darem, Mport, rastaf0, Doohl, Superxpdude, Rockdtben, ConstantA
+ Coders: TLE, NEO, Errorage, muskets, veryinky, Skie, Noise, Numbers, Agouri, Noka, Urist McDorf, Uhangi, Darem, Mport, rastaf0, Doohl, Superxpdude, Rockdtben, ConstantA, Petethegoat
Spriters: Agouri, Cheridan, Cruazy Guest, Deeaych, Deuryn, Matty406, Microwave, ShiftyEyesShady, Skie, Uhangi, Veyveyr, Petethegoat
Sounds: Skie, Lasty
Thanks to: CDK Station devs, GoonStation devs, the original SpaceStation developers and Erikat for the title image @@ -54,6 +54,16 @@ Stuff which is in development and not yet visible to players or just code relate (ie. code improvements for expandability, etc.) should not be listed here. They should be listed in the changelog upon commit tho. Thanks. --> +29 October 2011 + + + 27 October 2011
  • Mport updated: diff --git a/icons/obj/clothing/gloves.dmi b/icons/obj/clothing/gloves.dmi index 01e57efc3a4..abead579d61 100644 Binary files a/icons/obj/clothing/gloves.dmi and b/icons/obj/clothing/gloves.dmi differ diff --git a/tgstation.dme b/tgstation.dme index abc0e20a338..3f1bd0001e9 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -627,6 +627,7 @@ #include "code\game\objects\items\weapons\plant_bag.dm" #include "code\game\objects\items\weapons\RCD.dm" #include "code\game\objects\items\weapons\RSF.dm" +#include "code\game\objects\items\weapons\stungloves.dm" #include "code\game\objects\items\weapons\surgery_tools.dm" #include "code\game\objects\items\weapons\swords_axes_etc.dm" #include "code\game\objects\items\weapons\table_rack_parts.dm"