From 1a395dce03db61589b4ac8256473d18f53d8e7b9 Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Fri, 23 Jan 2015 21:57:00 -0500 Subject: [PATCH 01/11] Odds and Ends Changes --- code/game/machinery/cryo.dm | 19 +++-- code/game/machinery/vending.dm | 5 +- .../items/weapons/grenades/flashbang.dm | 65 ++++++++-------- .../objects/items/weapons/storage/backpack.dm | 6 +- .../objects/items/weapons/storage/belt.dm | 73 +++++++++++++++++- .../closets/secure/engineering.dm | 15 +--- .../crates_lockers/closets/secure/medical.dm | 2 + .../crates_lockers/closets/secure/personal.dm | 2 + .../crates_lockers/closets/secure/security.dm | 4 +- .../crates_lockers/closets/syndicate.dm | 2 + .../crates_lockers/closets/wardrobe.dm | 4 + code/game/turfs/simulated.dm | 21 ++--- code/modules/mob/living/living.dm | 7 +- code/modules/power/lighting.dm | 7 +- icons/mob/belt.dmi | Bin 6470 -> 8907 bytes icons/obj/clothing/belts.dmi | Bin 1636 -> 3506 bytes 16 files changed, 161 insertions(+), 71 deletions(-) diff --git a/code/game/machinery/cryo.dm b/code/game/machinery/cryo.dm index b7cb7faecfc..4cdadbd3552 100644 --- a/code/game/machinery/cryo.dm +++ b/code/game/machinery/cryo.dm @@ -35,7 +35,7 @@ component_parts += new /obj/item/weapon/stock_parts/console_screen(src) component_parts += new /obj/item/stack/cable_coil(src, 1) RefreshParts() - + /obj/machinery/atmospherics/unary/cryo_cell/New() ..() component_parts = list() @@ -53,7 +53,7 @@ for(var/obj/item/weapon/stock_parts/matter_bin/M in component_parts) C += M.rating current_heat_capacity = 50 * C - efficiency = C + efficiency = C /obj/machinery/atmospherics/unary/cryo_cell/initialize() if(node) return @@ -115,6 +115,11 @@ /obj/machinery/atmospherics/unary/cryo_cell/process() ..() + if(occupant) + if(occupant.health >= 100) + on = 0 + go_out() + playsound(src.loc, 'sound/machines/ding.ogg', 50, 1) if(!node) return if(!on) @@ -153,7 +158,7 @@ return ui_interact(user) - + /** * The ui_interact proc is used to open and update Nano UIs @@ -268,15 +273,15 @@ if (istype(G, /obj/item/weapon/screwdriver)) if(occupant || on) user << "The maintenance panel is locked." - return + return default_deconstruction_screwdriver(user, "cell-o", "cell-off", G) - return - + return + if(exchange_parts(user, G)) return default_deconstruction_crowbar(G) - + if(istype(G, /obj/item/weapon/grab)) if(panel_open) user << "\blue Close the maintenance panel first." diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 2c728b50b3c..6cc4ae4352d 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -1105,8 +1105,9 @@ /obj/item/clothing/under/sundress=2,/obj/item/clothing/under/stripeddress = 1, /obj/item/clothing/under/sailordress = 1, /obj/item/clothing/under/redeveninggown = 1, /obj/item/clothing/under/blacktango=1,/obj/item/clothing/suit/jacket=3, /obj/item/clothing/glasses/regular=2,/obj/item/clothing/head/sombrero=1,/obj/item/clothing/suit/poncho=1, /obj/item/clothing/suit/ianshirt=1,/obj/item/clothing/shoes/laceup=2,/obj/item/clothing/shoes/black=4, - /obj/item/clothing/shoes/sandal=1) - contraband = list(/obj/item/clothing/under/syndicate/tacticool=1,/obj/item/clothing/mask/balaclava=1,/obj/item/clothing/head/ushanka=1,/obj/item/clothing/under/soviet=1) + /obj/item/clothing/shoes/sandal=1, + /obj/item/weapon/storage/belt/fannypack=1, /obj/item/weapon/storage/belt/fannypack/blue=1, /obj/item/weapon/storage/belt/fannypack/red=1) + contraband = list(/obj/item/clothing/under/syndicate/tacticool=1,/obj/item/clothing/mask/balaclava=1,/obj/item/clothing/head/ushanka=1,/obj/item/clothing/under/soviet=1,/obj/item/weapon/storage/belt/fannypack/black=1) premium = list(/obj/item/clothing/under/suit_jacket/checkered=1,/obj/item/clothing/head/mailman=1,/obj/item/clothing/under/rank/mailman=1,/obj/item/clothing/suit/jacket/leather=1,/obj/item/clothing/under/pants/mustangjeans=1) refill_canister = /obj/item/weapon/vending_refill/clothing diff --git a/code/game/objects/items/weapons/grenades/flashbang.dm b/code/game/objects/items/weapons/grenades/flashbang.dm index 601e4d5a8f7..f1ccf4a20f5 100644 --- a/code/game/objects/items/weapons/grenades/flashbang.dm +++ b/code/game/objects/items/weapons/grenades/flashbang.dm @@ -68,7 +68,10 @@ if (M.ear_damage >= 5) M << "Your ears start to ring!" -/obj/item/weapon/grenade/flashbang/clusterbang//Created by Polymorph, fixed by Sieve +//////////////////// +//Clusterbang +//////////////////// +/obj/item/weapon/grenade/flashbang/clusterbang desc = "Use of this weapon may constiute a war crime in your area, consult your local captain." name = "clusterbang" icon = 'icons/obj/grenade.dmi' @@ -78,60 +81,60 @@ update_mob() var/numspawned = rand(4,8) var/again = 0 + for(var/more = numspawned,more > 0,more--) if(prob(35)) again++ - numspawned -- + numspawned-- - for(,numspawned > 0, numspawned--) - spawn(0) - new /obj/item/weapon/grenade/flashbang/cluster(src.loc)//Launches flashbangs - playsound(src.loc, 'sound/weapons/armbomb.ogg', 75, 1, -3) + for(var/loop = numspawned, loop > 0, loop--) + new /obj/item/weapon/grenade/flashbang/cluster(loc)//Launches flashbangs + + for(var/loop = again ,loop > 0, loop--) + new /obj/item/weapon/grenade/flashbang/clusterbang/segment(loc)//Creates a 'segment' that launches a few more flashbangs + + playsound(src.loc, 'sound/weapons/armbomb.ogg', 75, 1, -3) - for(,again > 0, again--) - spawn(0) - new /obj/item/weapon/grenade/flashbang/clusterbang/segment(src.loc)//Creates a 'segment' that launches a few more flashbangs - playsound(src.loc, 'sound/weapons/armbomb.ogg', 75, 1, -3) del(src) + +////////////////////// +//Clusterbang segment +////////////////////// /obj/item/weapon/grenade/flashbang/clusterbang/segment desc = "A smaller segment of a clusterbang. Better run." name = "clusterbang segment" icon = 'icons/obj/grenade.dmi' icon_state = "clusterbang_segment" -/obj/item/weapon/grenade/flashbang/clusterbang/segment/New()//Segments should never exist except part of the clusterbang, since these immediately 'do their thing' and asplode +/obj/item/weapon/grenade/flashbang/clusterbang/segment/New() + ..() icon_state = "clusterbang_segment_active" active = 1 - var/stepdist = rand(1,4)//How far to step - var/temploc = src.loc//Saves the current location to know where to step away from - walk_away(src,temploc,stepdist)//I must go, my people need me - var/dettime = rand(15,60) - spawn(dettime) + walk_away(src,loc,rand(1,4)) + spawn(rand(15,60)) prime() - ..() + /obj/item/weapon/grenade/flashbang/clusterbang/segment/prime() update_mob() var/numspawned = rand(4,8) - for(var/more = numspawned,more > 0,more--) - if(prob(35)) - numspawned -- - for(,numspawned > 0, numspawned--) - spawn(0) - new /obj/item/weapon/grenade/flashbang/cluster(src.loc) - playsound(src.loc, 'sound/weapons/armbomb.ogg', 75, 1, -3) + for(var/loop = numspawned ,loop > 0, loop--) + new /obj/item/weapon/grenade/flashbang/cluster(loc) + + playsound(src.loc, 'sound/weapons/armbomb.ogg', 75, 1, -3) + del(src) -/obj/item/weapon/grenade/flashbang/cluster/New()//Same concept as the segments, so that all of the parts don't become reliant on the clusterbang +//////////////////////////////// +//Clusterbang spawned flashbang +//////////////////////////////// +/obj/item/weapon/grenade/flashbang/cluster/New() ..() icon_state = "flashbang_active" active = 1 banglet = 1 - var/stepdist = rand(1,3) - var/temploc = src.loc - walk_away(src,temploc,stepdist) - var/dettime = rand(15,60) - spawn(dettime) - prime() \ No newline at end of file + walk_away(src,loc,rand(1,3)) + spawn(rand(15,60)) + prime() \ No newline at end of file diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index 2718fbec8ec..cfe383edf21 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -217,20 +217,22 @@ icon_override = 'icons/mob/in-hand/duffelbag.dmi' icon_state = "duffel" item_state = "duffel" - storage_slots = 10 // Duffelbags can hold more items. - max_combined_w_class = 25 + storage_slots = 9 // Duffelbags can hold more items. + slowdown = 1 /obj/item/weapon/storage/backpack/duffel/syndimed name = "suspicious duffelbag" desc = "A black and red duffelbag with a red and white cross sewn onto it." icon_state = "duffel-syndimed" item_state = "duffel-syndimed" + slowdown = 0 /obj/item/weapon/storage/backpack/duffel/syndiammo name = "suspicious duffelbag" desc = "A black and red duffelbag with a patch depicting shotgun shells sewn onto it." icon_state = "duffel-syndiammo" item_state = "duffel-syndiammo" + slowdown = 0 /obj/item/weapon/storage/backpack/duffel/captain name = "captain's duffelbag" diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index 4c88b7b2b46..01f5385686e 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -47,7 +47,8 @@ "/obj/item/stack/cable_coil", "/obj/item/device/t_scanner", "/obj/item/device/analyzer", - "/obj/item/taperoll/engineering") + "/obj/item/taperoll/engineering", + "/obj/item/weapon/extinguisher/mini") /obj/item/weapon/storage/belt/utility/full/New() @@ -198,6 +199,18 @@ new /obj/item/ammo_casing/shotgun/beanbag(src) new /obj/item/ammo_casing/shotgun/beanbag(src) +/obj/item/weapon/storage/belt/holster + name = "shoulder holster" + desc = "A holster to conceal a carried handgun. WARNING: Badasses only." + icon_state = "holster" + item_state = "holster" + storage_slots = 1 + max_w_class = 3 + can_hold = list( + "/obj/item/weapon/gun/projectile/automatic/pistol", + "/obj/item/weapon/gun/projectile/revolver/detective" + ) + /obj/item/weapon/storage/belt/wands name = "wand belt" desc = "A belt designed to hold various rods of power. A veritable fanny pack of exotic magic." @@ -220,3 +233,61 @@ for(var/obj/item/weapon/gun/magic/wand/W in contents) //All wands in this pack come in the best possible condition W.max_charges = initial(W.max_charges) W.charges = W.max_charges + +/obj/item/weapon/storage/belt/fannypack + name = "fannypack" + desc = "A dorky fannypack for keeping small items in." + icon_state = "fannypack_leather" + item_state = "fannypack_leather" + storage_slots = 3 + max_w_class = 2 + +/obj/item/weapon/storage/belt/fannypack/black + name = "black fannypack" + icon_state = "fannypack_black" + item_state = "fannypack_black" + +/obj/item/weapon/storage/belt/fannypack/red + name = "red fannypack" + icon_state = "fannypack_red" + item_state = "fannypack_red" + +/obj/item/weapon/storage/belt/fannypack/purple + name = "purple fannypack" + icon_state = "fannypack_purple" + item_state = "fannypack_purple" + +/obj/item/weapon/storage/belt/fannypack/blue + name = "blue fannypack" + icon_state = "fannypack_blue" + item_state = "fannypack_blue" + +/obj/item/weapon/storage/belt/fannypack/orange + name = "orange fannypack" + icon_state = "fannypack_orange" + item_state = "fannypack_orange" + +/obj/item/weapon/storage/belt/fannypack/white + name = "white fannypack" + icon_state = "fannypack_white" + item_state = "fannypack_white" + +/obj/item/weapon/storage/belt/fannypack/green + name = "green fannypack" + icon_state = "fannypack_green" + item_state = "fannypack_green" + +/obj/item/weapon/storage/belt/fannypack/pink + name = "pink fannypack" + icon_state = "fannypack_pink" + item_state = "fannypack_pink" + +/obj/item/weapon/storage/belt/fannypack/cyan + name = "cyan fannypack" + icon_state = "fannypack_cyan" + item_state = "fannypack_cyan" + +/obj/item/weapon/storage/belt/fannypack/yellow + name = "yellow fannypack" + icon_state = "fannypack_yellow" + item_state = "fannypack_yellow" \ No newline at end of file diff --git a/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm b/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm index 0bf9b7570f3..6515018e541 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/engineering.dm @@ -16,10 +16,7 @@ new /obj/item/weapon/storage/backpack/industrial(src) else new /obj/item/weapon/storage/backpack/satchel_eng(src) - if (prob(70)) - new /obj/item/clothing/tie/storage/brown_vest(src) - else - new /obj/item/clothing/tie/storage/webbing(src) + new /obj/item/weapon/storage/backpack/duffel/engineering(src) new /obj/item/blueprints(src) new /obj/item/clothing/under/rank/chief_engineer(src) new /obj/item/clothing/head/hardhat/white(src) @@ -109,10 +106,7 @@ new /obj/item/weapon/storage/backpack/industrial(src) else new /obj/item/weapon/storage/backpack/satchel_eng(src) - if (prob(70)) - new /obj/item/clothing/tie/storage/brown_vest(src) - else - new /obj/item/clothing/tie/storage/webbing(src) + new /obj/item/weapon/storage/backpack/duffel/engineering(src) new /obj/item/weapon/storage/toolbox/mechanical(src) new /obj/item/device/radio/headset/headset_eng(src) new /obj/item/clothing/under/rank/engineer(src) @@ -145,10 +139,7 @@ new /obj/item/weapon/storage/backpack/industrial(src) else new /obj/item/weapon/storage/backpack/satchel_eng(src) - if (prob(70)) - new /obj/item/clothing/tie/storage/brown_vest(src) - else - new /obj/item/clothing/tie/storage/webbing(src) + new /obj/item/weapon/storage/backpack/duffel/engineering(src) new /obj/item/weapon/extinguisher(src) new /obj/item/clothing/suit/storage/hazardvest(src) new /obj/item/clothing/mask/gas(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm index 58eaf2bac09..940fb1409f4 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm @@ -69,6 +69,7 @@ new /obj/item/weapon/storage/backpack/medic(src) else new /obj/item/weapon/storage/backpack/satchel_med(src) + new /obj/item/weapon/storage/backpack/duffel/medical(src) new /obj/item/clothing/under/rank/medical(src) new /obj/item/clothing/suit/storage/labcoat(src) new /obj/item/clothing/shoes/white(src) @@ -128,6 +129,7 @@ new /obj/item/weapon/storage/backpack/medic(src) else new /obj/item/weapon/storage/backpack/satchel_med(src) + new /obj/item/weapon/storage/backpack/duffel/medical(src) new /obj/item/clothing/suit/bio_suit/cmo(src) new /obj/item/clothing/head/bio_hood/cmo(src) new /obj/item/clothing/shoes/white(src) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm index f4a3d553d9d..f48a0e69e4f 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm @@ -7,6 +7,8 @@ /obj/structure/closet/secure_closet/personal/New() ..() spawn(2) + if(prob(50)) + new /obj/item/weapon/storage/backpack/duffel(src) if(prob(50)) new /obj/item/weapon/storage/backpack(src) else diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index 917c8feb815..b227b11df05 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -15,6 +15,7 @@ new /obj/item/weapon/storage/backpack/captain(src) else new /obj/item/weapon/storage/backpack/satchel_cap(src) + new /obj/item/weapon/storage/backpack/duffel/captain(src) new /obj/item/clothing/suit/captunic(src) new /obj/item/clothing/suit/captunic/capjacket(src) new /obj/item/clothing/head/caphat/parade(src) @@ -116,7 +117,6 @@ new /obj/item/weapon/gun/energy/advtaser(src) new /obj/item/weapon/storage/belt/security(src) new /obj/item/taperoll/police(src) - new /obj/item/clothing/tie/holster/armpit(src) return @@ -308,7 +308,7 @@ new /obj/item/ammo_box/c38(src) new /obj/item/weapon/gun/projectile/revolver/detective(src) new /obj/item/taperoll/police(src) - new /obj/item/clothing/tie/holster/armpit(src) + new /obj/item/weapon/storage/belt/holster(src) return /obj/structure/closet/secure_closet/detective/update_icon() diff --git a/code/game/objects/structures/crates_lockers/closets/syndicate.dm b/code/game/objects/structures/crates_lockers/closets/syndicate.dm index 6b166ae729c..01fceded7e6 100644 --- a/code/game/objects/structures/crates_lockers/closets/syndicate.dm +++ b/code/game/objects/structures/crates_lockers/closets/syndicate.dm @@ -43,6 +43,8 @@ new /obj/item/ammo_box/magazine/m10mm(src) new /obj/item/weapon/storage/box/teargas(src) new /obj/item/weapon/storage/box/flashbangs(src) + new /obj/item/weapon/storage/backpack/duffel/syndimed(src) + new /obj/item/weapon/storage/backpack/duffel/syndiammo(src) new /obj/item/weapon/gun/projectile/automatic/bulldog(src) new /obj/item/weapon/gun/projectile/automatic/bulldog(src) new /obj/item/weapon/gun/projectile/automatic/bulldog(src) diff --git a/code/game/objects/structures/crates_lockers/closets/wardrobe.dm b/code/game/objects/structures/crates_lockers/closets/wardrobe.dm index 4f04a5aa85d..7a7accadd10 100644 --- a/code/game/objects/structures/crates_lockers/closets/wardrobe.dm +++ b/code/game/objects/structures/crates_lockers/closets/wardrobe.dm @@ -20,6 +20,8 @@ icon_closed = "red" /obj/structure/closet/wardrobe/red/New() + new /obj/item/weapon/storage/backpack/duffel/security(src) + new /obj/item/weapon/storage/backpack/duffel/security(src) new /obj/item/clothing/under/rank/security(src) new /obj/item/clothing/under/rank/security(src) new /obj/item/clothing/under/rank/security(src) @@ -377,6 +379,8 @@ new /obj/item/clothing/head/soft/grey(src) new /obj/item/clothing/head/soft/grey(src) new /obj/item/clothing/head/soft/grey(src) + if(prob(50)) + new /obj/item/weapon/storage/backpack/duffel(src) return diff --git a/code/game/turfs/simulated.dm b/code/game/turfs/simulated.dm index a129d887128..ef7c9e94f17 100644 --- a/code/game/turfs/simulated.dm +++ b/code/game/turfs/simulated.dm @@ -10,11 +10,11 @@ var/max_fire_temperature_sustained = 0 //The max temperature of the fire which it was subjected to var/dirt = 0 var/dirtoverlay = null - + /turf/simulated/New() ..() levelupdate() - + /turf/simulated/proc/MakeSlippery(var/wet_setting = 1) // 1 = Water, 2 = Lube if(wet >= wet_setting) return @@ -32,7 +32,7 @@ if(wet > wet_setting) return wet = 0 if(wet_overlay) - overlays -= wet_overlay + overlays -= wet_overlay /turf/simulated/proc/AddTracks(var/typepath,var/mob,var/bloodDNA,var/comingdir,var/goingdir) var/obj/effect/decal/cleanable/blood/tracks/tracks = locate(typepath) in src @@ -45,14 +45,15 @@ if (istype(A,/mob/living/carbon)) var/mob/living/carbon/M = A if(M.lying) return - dirt++ - if (dirt >= 50) - var/obj/effect/decal/cleanable/dirt/dirtoverlay = locate(/obj/effect/decal/cleanable/dirt, src) - if (!dirtoverlay) + if(prob(80)) + dirt++ + var/obj/effect/decal/cleanable/dirt/dirtoverlay = locate(/obj/effect/decal/cleanable/dirt, src) + if(dirt >= 100) + if(!dirtoverlay) dirtoverlay = new/obj/effect/decal/cleanable/dirt(src) - dirtoverlay.alpha = 15 - else if (dirt > 50) - dirtoverlay.alpha = min(dirtoverlay.alpha+5, 255) + dirtoverlay.alpha = 10 + else if(dirt > 100) + dirtoverlay.alpha = min(dirtoverlay.alpha+10, 200) if(istype(M, /mob/living/carbon/human)) var/mob/living/carbon/human/H = M if(istype(H.shoes, /obj/item/clothing/shoes/clown_shoes)) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index e5a8cb3c170..791c1b64d88 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -322,15 +322,16 @@ on_fire = 0 suiciding = 0 buckled = initial(src.buckled) - + if(iscarbon(src)) var/mob/living/carbon/C = src C.handcuffed = initial(C.handcuffed) - // restore all of the human's blood + // restore all of the human's blood and reset their shock stage if(ishuman(src)) var/mob/living/carbon/human/human_mob = src human_mob.restore_blood() + human_mob.shock_stage = 0 restore_all_organs() if(stat == 2) @@ -757,6 +758,6 @@ else if(!on && floating) animate(src, pixel_y = initial(pixel_y), time = 10) floating = 0 - + /mob/living/proc/can_use_vents() return "You can't fit into that vent." diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index e6d7f2db875..353ea877b4c 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -516,7 +516,12 @@ else if(M_TK in user.mutations) user << "You telekinetically remove the light [fitting]." else - user << "You try to remove the light [fitting], but it's too hot and you don't want to burn your hand." + user << "You try to remove the light [fitting], but you burn your hand on it!" + + var/datum/organ/external/affecting = H.get_organ("[user.hand ? "l" : "r" ]_hand") + if(affecting.take_damage( 0, 5 )) // 5 burn damage + H.UpdateDamageIcon() + H.updatehealth() return // if burned, don't remove the light else user << "You remove the light [fitting]." diff --git a/icons/mob/belt.dmi b/icons/mob/belt.dmi index 8d6a342c995b7bec7a6acbc4aab08573bc469c79..bbad97bf8bd05455b9b5159cde1eef0766d12d92 100644 GIT binary patch literal 8907 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 literal 6470 zcmcgwXH-+$w%#Dpk#+Lx+XMg@(7zfhGpKplMQ8>)(Sf(`dTTp)**$iCC~qP5Y$gL?UC-abuFWV>yla#(m>+c`{#)HK0t46^<*J zS9|VHiZH^zS3t6U4246oV!kWsgpaYNe7W{cM&+qPBd-jHL7`>RbR{BT7HsoiTdG8) zJnv>7#uN|6bh8&?ig}{CGtyV&3EjK*Lc^MRG#}rjx7-sF#y)5@>NZVSPk8^$i!GLm z3j5TqTY0A2&=vAn+c&Kov-`dKsbKB(T_(ZtOUPC;4s}_7rl95A_2U{+`J#yuxwe^0 zBiYNj*q4Bz5&H7SPY03hh6r+xXhKW=pj<$7l+q-%41JWcFTy`^);*n^?Ga%SV>#vOXnFeP%7 z413(u3||Qcn^$$tmg*mm>)}!sN}_L{Q_GK1;Hk9CdsjDQfAq7=EdxpR9e;PSt|Gyv z8+-ng@msTR6Fi9cu~Ts-nzSR&y;QA5W`YLP2Gq#3P`!~3avtqqdg&`IxPSX(*byWi z0DkTrnc)I}eK7z)oMi-nWZ2&mT+)FHovL=R+f$JOu_{}6*5@5}wLX-a39v(fTiT%u z4l5PQr{qdi41=HR)mr;Lu~(3Hw2+qOSl;V+q+w7)cTaUZ3scguH8~v(f}7v z?85f7w?E_L;9%mh znXX_GG8>+vw(D~gf$y0TO1i6nI8}~I4l(o(AZqaREtF^Wznk{9%Di5?^7f0%%?1`m zBz_&j_dZfVBj6;dGN_k`?C0owmBxZi{%3F-C?d34a#jWL%E$FUJJy&yezL9OL zi(M>g;t4^yH3dMV!b$;F05FOM<7yNQB5T2)y??WS7Wh5ZGs6WL)EMwuGxc%p3SJIM zuv*wr76mNfoB>oZVLP1ak_W86rmAW*GjhV~Y--LO z8^Xu~IU{kDZxi73{Jh5c3Yc5_XXiF00razC>#{aKj*Zutt{ed18!U6RnC(A|$K^p#jKKBo zc2eogk9ro0X*(1$a?ORY#3y;ysm+m5`Rr0?vuK>@g$aB za~MCcRcjwnk(pLee5Vf!y|h#joVR=o{iCYtD;_8&OfyDJ)VUB%wEBBPN|`Km?g>8G z_FaU2nVQ1C{VULjBIk4z%i!qfk}NLx^T=-CwvmXFk}PP^!)$QdA9GNXh($g46U2aA z9y8I^jN09eHbQ>5ZQK@jD{w#C^7l{J2OO+_8{z*tAjB?9&ICA?u0w$PO{{1p{GZ_g zE_g5@uBfNT5?7#zKX?GP4F7{2jSw;bZ0i80(G@5_rxFZ_jzAVgjmBc6$b<-M>&c0N zB8WYsO^3wztNH_o$hvnGIDS1-X@U83jw$kJKdHLq62( z^wLz$)HVl-p8M7cmWXmC1{*+?&YPo1W0DJ*(8=?1)*8aa>Jtlx!DPvWA94qUqfJ}6 zU$FE?&7PWJ%B&tlY!s$_-SB-s%Ua3aWjbOa{DsCiq4S7}`S;rc4H^fF2R>ORfJq= zetCADW^Gt+Q1;iMQ_M^ z|A|@Rn9jFq!+qGB!rnXh8jn!d`VV!C@jKJhE&aYt7E3)CL;OPeT}VH5jz4~vO>Yv^ z>A^9d~Kk-i7-NwbJi{60T3}4I_3E`F_w^i@b-hHCM9`?(CURR<=@H_druyI4okXHHI)%;i8 zdu&yKv_-LoIJg9iuNltu>h{~cL!|wQyXF9H#gbSetm!|*5ex=D3iFk^XrlJBi&!4$ zfAI^0Kd1{QXwN4G5(01CC@}F96%~aol;1^W$zLlbfYQp>+F|`$x4K(e5H6*tS525= z>spgzCsoCAsGkex3sP~p45Qh|QgNWKa(-- zb!Q&Bdm5JdTrcCIu!k6S<@0SLQc=PZdoh8ndXyS_Rs(s;3Q@MM)ccrI$b%A}Dw})y zPu2rJ%JlE$KmQ~G|4kSaL*gq&)Mr8fL_RB;`Gg&#-K~vJB86-W9jb?Q#}6o@$AMS3 z>*hN$OnTA}%M}U|rQ!9bc3P$2_3w3%{e@kXoMe&etuS-uVkU2PEUMOeks__=wU13} zgV5{DfgwGuz8+uYAxJrE?%-c2()|{)6;3R*0?(2bOHzGgoAZk>Z0DnWA7sI=g9vS6 z&BXlw!yA4PmH$Fb(2TEdpDQtWQ&S5mC94T4j`GTlvFRyePJCI&c(J(s3*n2&AtNP11XlQua z&z-UnW{~QGoboJhnc$j-{T6<7p(<5)JQPeUE)^y~>U;^q-@uZ88Hy01vGVvduTde)}uL#h*n7{xBz+1WK&8J!_*9+Nx_VqQy9fK%%*G6_eaY7#J*;X&VC z*C)=Wg7lzze%`(O(dT_0*(e=tZLPsFgn@p8bmTx~6sCLTkQhITXmH-fn&9c%qEr2j z-?M{)$~YbGDe8bw{<@-K*pK5aMQA4nzPp5E*%8%hR+Oz=p~r%Ui!Xv zqQ1_^m1ZTNFLZk}Ubhl3cUI6I@Ec&D5$7 zE~O;^m~5$>t{{AYfd#8Fd{>eHUdamXOuisu28{OxHWW(OCP_jyB|WgvWNdNcl~>1} z_wJ0IPpIzV?)|n_k^XZ7A4fkoNu2@VteNr&+WX5d%zim9ntSg{u4J>6)XX>ei@m~E zzPf3nsV=*oJtZfyuC81PNitH-@v07?@|Qae<=xJnNd-9_7*br%)2LvEDJrl17B8j=Lzkk>D?cO-G5w-w5J~))WT`D)$UoD z9ywt3u;AZd1#Oi!b$#zSMLW zVzM)Z;fwVPwO8W>YvH$2NzItScl|N1syMb(rQErl>VB20Q^aDt z$}N+OU%U39(1TG-Jo8%drKV}hpRb%CqX2MUKxcx6t$!r@Z2|m1F>ZDJ9V39YIH~U4 z?Z=_7=KXz8cPS8e96Yu=z+0rhTl4>7gm2o9v(5>37 z-H}XnZa^D)y57fn>~rB4FS_qYpo(+bs? zBT+tA4D_?JY8!taUVZGcRovjYEL*#IHO90!*rw8VU%H{$#)k!AQ)T^jgn401JKn*= zQOABIO8yP1+safG;=HZ77s#95?v+n_e5_NPyKOT*8C6VC$aMcL$IiW&E7UnwAprtDC;ev!oZaXc9DMj#5C$%= zewJ$%S?XguLCD|HJ`eG#9W>3bgId;i9nH_|z)uk$y2QB)kmn6ivM`wDiP7h~Mx?{O zbaL|%R!LOC{vl_m5ToB$&q#Y-M!?8^dxG&?+q~SCjR%eLLky@X?qfz6OVD{hP~TQ? z1b%bd;s(b(3a9|pl7FhbicSDJIr~?i0lHI6Qu&c{VmSy6?O<@0p)JUG!3&7hwBww<@**RnS&};!SXD zqLg!Tah;(CDMmy@JpI+hVBWFU+*S0yS&;aQ_-qeco#G~y`a9G$O72K>vn72Co`Gitc~VO1J;coF&n6O~G} z&NgENE&sJ12Q#_A#ew!2Rq&QYv@d0qOA^(8xMNYVt)BktYstge&pI{ScnkuQl9FmI z*tDx#%3mLcZ|f2%;TO0b%#9*J(}olV!4*GVPC_|3IZ3gSA_X-oif#M$%2c7xEJh{> zNb?KXfgK|$-R!yQ`>P*P^RTX~URc*1uMU*GeS4Oca@p+9vM4SN!SlXg>;GtS@<$ZC zUC+$%&~x)e%W`CC;`FqQoYj?0j&IJy4{!^gqb)^bx#oGU-Q|P6DT;_kFWB`XKnyJ_ z`#+Iw<-wE2yIqL9KbF=|LnUt2&m7op%q?U4W;7{WY7e$5pro4ucHg{k=J4PzXW*WR zBiZzYXQNCv3O?Q9aj0d1M%w@b=U73CTBIe@#s zJEKZy6%@+4sces9O+zD;2ZIT=+ZMDQT}P>Ij}3EcN+8KEY2(4vKf1K% zDIdu1HJa7}mEn9C%>MlLlNhZC*OT&{FEl?}yH{kP-&Y(otZHEWChnUT=1kQ4uJ(H0 z0+VQrY-n_k;his*Zx{Ub^Mf3)%=jei$&!6vvyFx@)+lCVPZ7dU30Y#0 zP()d>ON-K%B#rNo-}L?c{`j5q-21$rbI)_mJUu87-PPVk`! zFjAO11pWDtgR?z0Y!m~O5-y2}iA^Q~GBPqS7>u8vUs+jsIuC%u;W)I6KEP{cX0|yX z{jC^2kO<4PgE=`ljYI--*}(5*_n@Gln9~Bx&AJ`{p!jMx`T#{PfR~q-1W`gF902Tq z@T(Xg*9o9p0ZP4qDqo<+AF#K#S5#C~Qc_Y;QBhS@P2=IY34s(qp~X;WDHQ6!?Q@Ac zz!4ni1P*rQ3DJiG6+Xayf1oxHP*+zkf zkS#!ry(I#`V2GGHUfwH^$jQmcj%$FHmR2(#p9eIiKMBy**6!rz_vVc&L~!&a0v-JP zZ!-V`1A`F(fdD=dz~d(g23lHLFitXMhzv2)dt#>5VrCD-&1>O20D_l8PT+{VFgFSY zuCK3eYisN3>SCQyUtgcbCHN^+^}Cap>~=Yiagwu~&WH*`rlJV6zrWug82uDg4nQI$&-cj-@r;g+j*X2OMJRSE+>@~C zkh=K7KwfBecGfITc~J48IIh823uYRtB#j@lNL8IsX=Cl+Q2`*IUQnA2v=;-NC4ek3 zDHD}lgvu$V-viKvRZl1YGNW*`p6z&P{dg0*QbprR7w3tFu1|Ck)s{Za^Ia^a0Jezp z))xT7Pcv6p!CvgeOA#hs;T~bWArZd8K>!d_QgFLDhywvl{ro}Ewgn&f{)t5adU(9k z_#?;XkP$WwR81Un!tAR9r>JKYaq}th&-I2xT`3#yE}}uLQdqV4PJQCFn2U5{2j{@D zXulBLty@mFI6?mHFOdq+);di;T7SE%e(g%1+J}Ze*vy*>m(6#=D5U~z;L&D=vN}On zuL{Z09jI}quOTrzS^M4md*}T%U|w@inEljsIgq3tVhQQ;Fz-}|821$`BB5Jf7E7gJ z)&7l*+RAE8w!U#|^U;OakX)HYrHX;PodBx1`c5a+*rr4&7Ea;2etE@B*D2xjCea`* z`1%jSTERzWE&u>{{H%%5#h8-sR5JeJwDb$M%LN(&ms8hq<`PzS+GNNH$rv@2n=`Yx zIqJFhcQo@wNa__YX%Ur5#78p(QLExQ#rGz-kXq4+S3%w=B(iw?}^H~XnQe%sT@eB~tLMb`EYuu#U)l+s_33Xd- zBcsCJPc{_Ppdn0_^J&n^J58E8!jf+uvCC%+@jo86N|)RAa3tz@ChZ%3^FZ|r?y0Lt zYtZ%t8+b5=o|kNgA4d!ssyX9Rg_T91kZBBSQ2?5$xeUs?lBjN{!M5OTH*RkTspl9w zp^Qegy+-mlh)(o=5+jiqP4@uHxzf}qSpiz+1e}obEG{_|| z8+{4?GWb~^(KuR9=;7*97dtz9LD8Lbu)ERpi~9QP{Z7~5CnK3c^B0}`*QUqEW&X_v z8LUJ}?(N0vN8jfM2ca^u1_uZ0cr|-%Vwd3$-YAeOqUF#Il*L&8+UUtbtHta~v`SGJ z8Gji&>mYu`$W0pEF})Nu7rXSmyki0HEe0}OeNy>@m{X@K5eWVyY{1VjDtt?0U*_$4 zx0roOvi@m6?XI!$qF+RY5&3w~g5#W_@k15iX-Gnln@d6|^R@0mci>#>-aG>qJS9?J zC-F3RY0+nnG_V&>+5*Mim9g^#PrZE`6ADk6PnWd{d66T{JH!tn%UaO7yBE`#gf~~~ zaKiJ%_Hgg2FL=AWu|UJ9f+V;q_h)w4tmtj zCtad9yZwJVI-TZ7e0HbUK;`lq%eBMFU|F|d^}MF0oy75-kz1VHj&YXqITa$@t*x9S z5DT^fDozR?YcRxo$^MpF$ahqx2Y5FD29btnH+>h@GZL!X_a15X>fNErh-Z@iOgSj^?gEzSY^~{FQnO53AJb^j zrkmq;3M0^*9mYv63$+|ls0+0qr!7Uv8`_QUCekj-4sFk=fCWIh#)#}pTRQ1_t98#| z*>05M^6OR^(YI&HL{AtKBP@B8EE;|%Z!P>Y9QLdt&+XAYF272?yEu8Q*d9`_bZ^}l|_Pgg~)fKY_!l>8;dWCH&uGi;azI~B-)1CKYOh63e{$r*iTDFw+I`b z!7^Z6mGsA4PQEFCB3r0v^(_eW2H&n2GiY_}W8POT_ zKtr+lo?Wu+T+)_Ei&=w6REr8)B%tHjdiXQxpBRzZn*El^eF9E%#dXic9QHSq%Xq!i z^iBI?jgok^HIeeeHG^&s^-Hat^y-}dt<~`0cQ9?foJY%YlJ}e9e?+jr$dE*grl-)i zf1%}svWKTVvT({Mw_J?ukG3jfJmuG9Q1sI0o~;4qX6{DjyjZI)X_mw7{nEk$?>Byv z?>U6sWlGQXI}R?wK`(VdaP-)}@2BDVF#=QY45F^~u3GOg@{(Mx{#7JnrYcv4?i2m{ zg99lyI$DlCBg|FySSWt`x$ux0pPvJXi(g+^Yh(TEtC4R7+^Nj6RV*Z}{Hrjuipks? zzx(FT0qM%d_+-3K^UP!#h|XB?W{j`?@aCK2eHI%V*Ky2HD~aVdQ30tO{Af;tbe`y1f= zj<7geWem48_%||DJRt(jeT29m!5CxsL8R1n+pTwWwsi>)uvba~^-kTguJ1pOZIj=Si zerk=z{P=5!FDLsb$-^VLi-As~W67Ipsh$lw64KVOTB1KnGU4I;}M^E?E;EQ^ZbMR%4OdjeUY7TuSN0lb73{YGXk51(( zu&9WVjoc;{zz;!FHupAIkbJeVDb)`@GUaA9C*8a8q}-}ZFPd-4ZDdCJh0&{XA?~Z! zJgFdUrCy3_JloOg^9sZuBxCq&098NXQ>0Sw^jL{mYSE+5i!`D55A&BjPbdBnhfCbM z=Bj3CE&Umre6j{af4c*A1y7WSLMLk$*RU2fOJ|5k@vEq%RqTl8;vE?83k6$uA6e~W zA*^sM1g(BDuREP3i!9LUXVeqRxLu|YiKmTZPu|DwhmcHs9Mc#pAo5LDkL?IS1zgIG z#H|{OR#5L&*s5682n&nXmM&+lk&SBA`S|J((j@-EB-u@)`U1WtlthR*u0C?wG|inz zAe=6udRR_Wimx;J=XzFSBq?XEd3~Ce!r-?M?XfFbQeus(*s##ur&5pF)`~2`dp=O< ziTzs=T)S1NQZu;{VFUxeq3Z_^5NQj!CG-Af3txXz@38eo44gp5b delta 1611 zcmV-R2DJII8{`aDiBL{Q4GJ0x0000DNk~Le0001h0001B2m=5B0OF*IdjJ3c-cU?b zMZmzoVgLY8H5<%k06-00nE(Ka003b?AIzBmPY!ZWH6cC~T!n{=h*B$J6Q7Y^Eq~4c z08=y~%$YO)|7JTCU(^K&{}lkp4D+l51<&9qXGP z#eNivQ50KSTi*Tu_uyjWRzqkc8*XlHcsLOI@2bm|kG}u_muWeV=-0C=2@k-ZMWFbss}2$8u@pNuG)m&P6#}LUobx`}&T8am0Hd*YpQW&Js@FF4uV;-xR;(v@z=c`Hz zO(EvxMv7~I377ecCMHY#?9uXHc0>q8VD!mG_702a2{jF1%bamYp)~JcV48DpWhvf0 zKqzy*fuka@2dBLy48O=)ox0}p4y4(N%hkCDM3+Y;v54)bsWOOnUTXDwc(b4twcvPua zSy@?GNmUgY|Dh&jzCm5ee7zxMwr`?ZLPZ3yZA%##z_uf0U;x_-DFXxA9|J%H;t#f6 zDP$o2!Zs5Qh(Fl=CWQ?Eo?L4KqIJkXaa4Gpm8B=Gk@VgC#W{jQVMXI zI)GE-!DoVVhXUvc)Eyn5-{8S#g7ZEF0Q)zYdT%&_1~72cWv|uTp$;(WsLNijkA^zH zxUVjIqv1^`fUhS&0i54mH=lnH1g;a11TIITeE!qvROi72{_wnf{$Ut;{g49u>BA3L z^D_fLFaQL%{q}7;xPQF53_^SX=cYq*D zzywg~AOe2|jQ~)0fFMes0DxY{6|effU*!kdi)z9ai_p}J5kZ78E&68&B8;%$uccjW zHGSv`&EgB8mXn-#8FX?IlRsMLB%}@M{z%X&_Tp02BjeLAL@O&RD=RB2t5>d>l=(W7 zGGC9R%-82qCx6`UqznvT`?r*V0c_)Bv5XUxfdOn=QU->Zu+4-6;xBA7;ehzZ+%{7j zCxl=wY%}42`qKn-0+!MQbb=^eM$rNj;EJN9PB8ar0)$|;n&}C^AM^m2o&XT(0MTM` zOkf?uAM^m`dICU109NX<&t|I`0Z7$l#{hHyw9m^BkAGwh<}F`cb_{?5d_)AH&1SQ@ zqX649Wl98$0>sN*6n$E+`2y^g2?b!jKUX54WrzTPfWCK|&#TWHnn1cm1cXT0_RF@A zK$7f|`%i0l0)XH?*~JS|0}K%m!k?#K(n122*~biFwc0#9JZx6GMOIc;R#sM4 zuS)y<)8R$^zkYlE`uw8)Plvo`6B=Wgq=tLKJSY2uk5q=Kb7K-b;lYzQ36JQ z{kQ#(=hEgc5%6gK{?F{ontz5M4(9Lwed+e+w0~K9D=Vv4tDj6M&_xx`m$v`_002ov JPDHLkV1k{v*2w?> From b19b7fc97361c90575802cb343f6c5f9ebf9d58a Mon Sep 17 00:00:00 2001 From: SamCroswell Date: Sat, 24 Jan 2015 01:16:00 -0500 Subject: [PATCH 02/11] Reverts Incendiary Mitochondria Instead of incendiary mitochondria being an uncounterable and untraceable method of dealing massive mounts of burn damage to someone, it has been reverted to what the power was originally. It will now ignite the user when cast. I realize this isn't very useful, but the alternative is the power being removed altogether. --- code/game/dna/genes/goon_disabilities.dm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/code/game/dna/genes/goon_disabilities.dm b/code/game/dna/genes/goon_disabilities.dm index 68827157d55..b8df3aaf3f1 100644 --- a/code/game/dna/genes/goon_disabilities.dm +++ b/code/game/dna/genes/goon_disabilities.dm @@ -320,11 +320,14 @@ icon_power_button = "genetic_incendiary" /obj/effect/proc_holder/spell/wizard/targeted/immolate/cast(list/targets) - if(!targets.len) + +/* if(!targets.len) Uncomment this to allow the power to be used on targets other than yourself. That said, if you uncomment this I will find you and hurt you. Uncounterable and untracable burn damage with a 60-second cooldown is fun for exactly one person, and that's the person who is using it. usr << "No target found in range." return - var/mob/living/carbon/L = targets[1] + var/mob/living/carbon/L = targets[1] */ + + var/mob/living/carbon/L = usr L.adjust_fire_stacks(0.5) // Same as walking into fire. Was 100 (goon fire) L.visible_message("\red [L.name] suddenly bursts into flames!") From ca960c02d4050725d1d85fd1985c5c1005841745 Mon Sep 17 00:00:00 2001 From: SamCroswell Date: Sat, 24 Jan 2015 01:17:49 -0500 Subject: [PATCH 03/11] Disallow IPC Genetics Use IPCs can no longer gain genetic powers, or use injectors. It was requested I make them unable to use injectors at all because they take toxins damage they can never fix from using the injectors, and it would be pointless for them to use them with genetics powers not working on them anymore. --- code/game/dna/dna2_domutcheck.dm | 2 ++ code/game/objects/items/weapons/dna_injector.dm | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/code/game/dna/dna2_domutcheck.dm b/code/game/dna/dna2_domutcheck.dm index c90e2a9b400..e5a73fc116e 100644 --- a/code/game/dna/dna2_domutcheck.dm +++ b/code/game/dna/dna2_domutcheck.dm @@ -49,6 +49,8 @@ // Use this to force a mut check on a single gene! /proc/genemutcheck(var/mob/living/M, var/block, var/connected=null, var/flags=0) + if(istype(M, /mob/living/carbon/human/machine)) // Would've done this via species instead of type, but the basic mob doesn't have a species, go figure. + return if(!M) return if(block < 0) diff --git a/code/game/objects/items/weapons/dna_injector.dm b/code/game/objects/items/weapons/dna_injector.dm index ff224067b11..00996582a24 100644 --- a/code/game/objects/items/weapons/dna_injector.dm +++ b/code/game/objects/items/weapons/dna_injector.dm @@ -98,7 +98,7 @@ return uses /obj/item/weapon/dnainjector/attack(mob/M as mob, mob/user as mob) - if (!istype(M, /mob)) + if (!istype(M, /mob) || istype(M, /mob/living/carbon/human/machine)) // Would've done this via species instead of type, but the basic mob doesn't have a species, go figure. return if (!(istype(usr, /mob/living/carbon/human) || ticker) && ticker.mode.name != "monkey") user << "\red You don't have the dexterity to do this!" From bb444d9b68375d8b24426925b9519ec112aa70ec Mon Sep 17 00:00:00 2001 From: SamCroswell Date: Sat, 24 Jan 2015 01:38:21 -0500 Subject: [PATCH 04/11] MarkVA's Optimization --- code/game/dna/dna2_domutcheck.dm | 6 ++++-- code/game/dna/genes/goon_disabilities.dm | 13 ++++--------- code/game/objects/items/weapons/dna_injector.dm | 6 ++++-- 3 files changed, 12 insertions(+), 13 deletions(-) diff --git a/code/game/dna/dna2_domutcheck.dm b/code/game/dna/dna2_domutcheck.dm index e5a73fc116e..8ca6e8f99d2 100644 --- a/code/game/dna/dna2_domutcheck.dm +++ b/code/game/dna/dna2_domutcheck.dm @@ -49,8 +49,10 @@ // Use this to force a mut check on a single gene! /proc/genemutcheck(var/mob/living/M, var/block, var/connected=null, var/flags=0) - if(istype(M, /mob/living/carbon/human/machine)) // Would've done this via species instead of type, but the basic mob doesn't have a species, go figure. - return + if(ishuman(M)) // Would've done this via species instead of type, but the basic mob doesn't have a species, go figure. + var/mob/living/carbon/human/H = M + if(H.species.flags & IS_SYNTHETIC) + return if(!M) return if(block < 0) diff --git a/code/game/dna/genes/goon_disabilities.dm b/code/game/dna/genes/goon_disabilities.dm index 455aa80e284..fa534735c73 100644 --- a/code/game/dna/genes/goon_disabilities.dm +++ b/code/game/dna/genes/goon_disabilities.dm @@ -325,19 +325,14 @@ usr << "No target found in range." return -<<<<<<< HEAD - var/mob/living/carbon/L = targets[1] */ - - var/mob/living/carbon/L = usr - -======= var/mob/living/carbon/L = targets[1] if(L) usr.attack_log += text("\[[time_stamp()]\] [usr.real_name] ([usr.ckey]) cast the spell [name] on [L.real_name] ([L.ckey]).") L.attack_log += text("\[[time_stamp()]\] [usr.real_name] ([usr.ckey]) cast the spell [name] on [L.real_name] ([L.ckey]).") - msg_admin_attack("[usr.real_name] ([usr.ckey]) has cast the spell [name] on [L.real_name] ([L.ckey]) (JMP)") ->>>>>>> 7dced99c6f4e987583e38d95ef9e253003f4e314 - L.adjust_fire_stacks(0.5) // Same as walking into fire. Was 100 (goon fire) + msg_admin_attack("[usr.real_name] ([usr.ckey]) has cast the spell [name] on [L.real_name] ([L.ckey]) (JM +*/ + var/mob/living/carbon/L = usr + L.visible_message("\red [L.name] suddenly bursts into flames!") L.on_fire = 1 L.update_icon = 1 diff --git a/code/game/objects/items/weapons/dna_injector.dm b/code/game/objects/items/weapons/dna_injector.dm index 00996582a24..e2b19f317ad 100644 --- a/code/game/objects/items/weapons/dna_injector.dm +++ b/code/game/objects/items/weapons/dna_injector.dm @@ -98,8 +98,10 @@ return uses /obj/item/weapon/dnainjector/attack(mob/M as mob, mob/user as mob) - if (!istype(M, /mob) || istype(M, /mob/living/carbon/human/machine)) // Would've done this via species instead of type, but the basic mob doesn't have a species, go figure. - return + if(ishuman(M)) // Would've done this via species instead of type, but the basic mob doesn't have a species, go figure. + var/mob/living/carbon/human/H = M + if(H.species.flags & IS_SYNTHETIC) + return if (!(istype(usr, /mob/living/carbon/human) || ticker) && ticker.mode.name != "monkey") user << "\red You don't have the dexterity to do this!" return From 5e087778956927c30e06f744c6ef593176931e9f Mon Sep 17 00:00:00 2001 From: SamCroswell Date: Sat, 24 Jan 2015 10:53:41 -0500 Subject: [PATCH 05/11] Re-add Fire Stack. Whoops. --- code/game/dna/genes/goon_disabilities.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/game/dna/genes/goon_disabilities.dm b/code/game/dna/genes/goon_disabilities.dm index fa534735c73..32617d456be 100644 --- a/code/game/dna/genes/goon_disabilities.dm +++ b/code/game/dna/genes/goon_disabilities.dm @@ -333,6 +333,7 @@ */ var/mob/living/carbon/L = usr + L.adjust_fire_stacks(0.5) L.visible_message("\red [L.name] suddenly bursts into flames!") L.on_fire = 1 L.update_icon = 1 From 6ea11601a77e2173192b91e6332f9a32650eba69 Mon Sep 17 00:00:00 2001 From: DZD Date: Sat, 24 Jan 2015 14:53:34 -0500 Subject: [PATCH 06/11] Security and Syndicate Cyborg Changes - Security cyborg's taser now properly draws from a cell that slowly recharges from the cyborg's main battery, rather than drawing directly from the main battery. 6 shots then CLICK until it recharges. - Replaces Syndicate cyborg's recharging energy crossbow with a non-recharging grenade launcher, still stuns, but does a good bit more damage. (TG port) - Replaces the Syndicate cyborg's laser with an LMG. (TG port) - Nerfs cost per projectile to 300 from TG's 20, because a 300 shot recharging clip is utterly overpowered, not to mention the fact that it hardly affected the borg's battery when recharging. - Cost of the cyborg's laser gun prior was 830, so this is still a buff. However it no longer pulls directly from the cyborg's main battery, instead pulling from a 6000 charge battery that slowly recharges from the main battery. --- .../mob/living/silicon/robot/robot_modules.dm | 4 +- .../projectiles/guns/energy/special.dm | 42 ++++++++++++++++++- code/modules/projectiles/guns/energy/stun.dm | 36 ++++------------ .../projectiles/guns/projectile/launchers.dm | 10 ++++- 4 files changed, 61 insertions(+), 31 deletions(-) diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 5538620b138..3c8710caf1a 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -338,9 +338,9 @@ src.modules += new /obj/item/device/flash/cyborg(src) src.modules += new /obj/item/device/flashlight(src) src.modules += new /obj/item/weapon/melee/energy/sword/cyborg(src) - src.modules += new /obj/item/weapon/gun/energy/crossbow/cyborg(src) + src.modules += new /obj/item/weapon/gun/energy/printer(src) + src.modules += new /obj/item/weapon/gun/projectile/revolver/grenadelauncher/multi/cyborg(src) src.modules += new /obj/item/weapon/card/emag(src) - src.modules += new /obj/item/weapon/gun/energy/laser/cyborg(src) src.modules += new /obj/item/weapon/tank/jetpack/carbondioxide(src) src.modules += new /obj/item/weapon/crowbar(src) src.emag = null diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 99dd27d88d6..f020e350b8d 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -256,4 +256,44 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. item_state = null projectile_type = "/obj/item/projectile/beam/disabler" cell_type = "/obj/item/weapon/cell" - charge_cost = 500 \ No newline at end of file + charge_cost = 500 + + + +/* 3d printer 'pseudo guns' for borgs */ + +/obj/item/weapon/gun/energy/printer + name = "cyborg lmg" + desc = "A machinegun that fires 3d-printed flachettes slowly regenerated using a cyborg's internal power source." + icon_state = "l6closed0" + icon = 'icons/obj/gun.dmi' + fire_sound = 'sound/weapons/Gunshot_smg.ogg' + cell_type = "/obj/item/weapon/cell/secborg" + projectile_type = "/obj/item/projectile/bullet/midbullet3" + charge_cost = 400 //Yeah, let's NOT give them a 300 round clip that recharges, 15 is more reasonable and will actually hurt the borg's battery for overuse. + var/charge_tick = 0 + var/recharge_time = 5 + +/obj/item/weapon/gun/energy/printer/update_icon() + return + +/obj/item/weapon/gun/energy/printer/New() + ..() + processing_objects.Add(src) + +/obj/item/weapon/gun/energy/printer/Destroy() + processing_objects.Remove(src) + ..() + +/obj/item/weapon/gun/energy/printer/process() + 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) + if(R.cell.use(charge_cost)) //Take power from the borg... + power_supply.give(charge_cost) //...to recharge the shot + return 1 \ 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 66cbe616edf..ce9e12a51f8 100644 --- a/code/modules/projectiles/guns/energy/stun.dm +++ b/code/modules/projectiles/guns/energy/stun.dm @@ -28,19 +28,19 @@ ..() /obj/item/weapon/gun/energy/taser/cyborg/process() //Every [recharge_time] ticks, recharge a shot for the cyborg - return 1 + charge_tick++ + if(charge_tick < recharge_time) return 0 + charge_tick = 0 -/obj/item/weapon/gun/energy/taser/cyborg/process_chambered() - if(in_chamber) - return 1 + if(!power_supply) return 0 //sanity if(isrobot(src.loc)) var/mob/living/silicon/robot/R = src.loc - if(R && R.cell && R.cell.charge >= 250) - R.cell.use(250) - in_chamber = new /obj/item/projectile/energy/electrode(src) - return 1 - return 0 + if(R && R.cell) + if(R.cell.use(charge_cost)) //Take power from the borg... + power_supply.give(charge_cost) //... to recharge the shot + update_icon() + return 1 /obj/item/weapon/gun/energy/stunrevolver name = "stun revolver" @@ -87,24 +87,6 @@ /obj/item/weapon/gun/energy/crossbow/update_icon() return - -/obj/item/weapon/gun/energy/crossbow/cyborg - desc = "An energy-based crossbow that draws power from the cyborg's internal energy cell directly." - -/obj/item/weapon/gun/energy/crossbow/cyborg/process() - return 1 - -/obj/item/weapon/gun/energy/crossbow/cyborg/process_chambered() - if(in_chamber) - return 1 - if(isrobot(src.loc)) - var/mob/living/silicon/robot/R = src.loc - if(R && R.cell && R.cell.charge >= 250) - R.cell.use(250) - in_chamber = new /obj/item/projectile/energy/bolt(src) - return 1 - return 0 - /obj/item/weapon/gun/energy/crossbow/largecrossbow name = "Energy Crossbow" desc = "A weapon favored by syndicate carp hunters." diff --git a/code/modules/projectiles/guns/projectile/launchers.dm b/code/modules/projectiles/guns/projectile/launchers.dm index 9c5dc867dc4..5e53c71efa9 100644 --- a/code/modules/projectiles/guns/projectile/launchers.dm +++ b/code/modules/projectiles/guns/projectile/launchers.dm @@ -47,4 +47,12 @@ icon_state = "bulldog" item_state = "bulldog" icon_override = 'icons/mob/in-hand/guns.dmi' - mag_type = "/obj/item/ammo_box/magazine/internal/cylinder/grenadelauncher/multi" \ No newline at end of file + mag_type = "/obj/item/ammo_box/magazine/internal/cylinder/grenadelauncher/multi" + +/obj/item/weapon/gun/projectile/revolver/grenadelauncher/multi/cyborg + desc = "A 6-shot grenade launcher." + icon = 'icons/mecha/mecha_equipment.dmi' + icon_state = "mecha_grenadelnchr" + +/obj/item/weapon/gun/projectile/revolver/grenadelauncher/multi/cyborg/attack_self() + return \ No newline at end of file From a7c9c2a7893adee546a421407f3f447f7ce79e2f Mon Sep 17 00:00:00 2001 From: DZD Date: Sat, 24 Jan 2015 14:54:29 -0500 Subject: [PATCH 07/11] Actually makes LMG cost 300 per shot --- code/modules/projectiles/guns/energy/special.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index f020e350b8d..558745deac3 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -270,7 +270,7 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out. fire_sound = 'sound/weapons/Gunshot_smg.ogg' cell_type = "/obj/item/weapon/cell/secborg" projectile_type = "/obj/item/projectile/bullet/midbullet3" - charge_cost = 400 //Yeah, let's NOT give them a 300 round clip that recharges, 15 is more reasonable and will actually hurt the borg's battery for overuse. + charge_cost = 300 //Yeah, let's NOT give them a 300 round clip that recharges, 20 is more reasonable and will actually hurt the borg's battery for overuse. var/charge_tick = 0 var/recharge_time = 5 From 73a1d7ba312e8db9eb392ac3a251a5e42281e78b Mon Sep 17 00:00:00 2001 From: DZD Date: Sat, 24 Jan 2015 17:21:05 -0500 Subject: [PATCH 08/11] Brig Physician Vest - Adds Brig Physician vest, sprite by TheFlagbearer. - Makes changes to Brig Physician locker so that it no longer contains sec gear, now contains one of every kind of medkit, a flash, pepperspray, a brig physician vest, a doctor's jumpsuit, white shoes, and a brig physician headset. --- .../crates_lockers/closets/secure/security.dm | 30 ++++++++++++++++++ code/modules/clothing/suits/jobs.dm | 10 ++++++ icons/mob/suit.dmi | Bin 294165 -> 295069 bytes icons/obj/clothing/suits.dmi | Bin 103166 -> 103386 bytes maps/cyberiad.dmm | 2 +- 5 files changed, 41 insertions(+), 1 deletion(-) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index b227b11df05..a3b3b0dba81 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -190,6 +190,36 @@ new /obj/item/taperoll/police(src) return +/obj/structure/closet/secure_closet/brigdoc + name = "Brig Physician's Locker" + req_access = list(access_security) + icon_state = "securemed1" + icon_closed = "securemed" + icon_locked = "securemed1" + icon_opened = "securemedopen" + icon_broken = "securemedbroken" + icon_off = "securemedoff" + + New() + ..() + sleep(2) + if(prob(50)) + new /obj/item/weapon/storage/backpack/medic(src) + else + new /obj/item/weapon/storage/backpack/satchel_med(src) + new /obj/item/weapon/reagent_containers/spray/pepper(src) + new /obj/item/device/flash(src) + new /obj/item/weapon/storage/firstaid/regular(src) + new /obj/item/weapon/storage/firstaid/fire(src) + new /obj/item/weapon/storage/firstaid/adv(src) + new /obj/item/weapon/storage/firstaid/o2(src) + new /obj/item/weapon/storage/firstaid/toxin(src) + new /obj/item/clothing/suit/storage/brigdoc(src) + new /obj/item/clothing/under/rank/medical(src) + new /obj/item/clothing/shoes/white(src) + new /obj/item/device/radio/headset/headset_sec/alt(src) + return + /obj/structure/closet/secure_closet/blueshield name = "Blueshield's Locker" req_access = list(access_blueshield) diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index 74fe70db365..b1b72376e8c 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -13,6 +13,16 @@ "Vox" = 'icons/mob/species/vox/suit.dmi' ) +//Brig Physician +/obj/item/clothing/suit/storage/brigdoc + name = "brig physician vest" + desc = "A vest often worn by doctors caring for inmates." + icon_state = "brigphysician-vest" + item_state = "brigphysician-vest" + allowed = list(/obj/item/stack/medical, /obj/item/weapon/reagent_containers/dropper, /obj/item/weapon/reagent_containers/hypospray, /obj/item/weapon/reagent_containers/syringe, \ + /obj/item/device/healthanalyzer, /obj/item/device/flashlight, /obj/item/device/radio, /obj/item/weapon/tank/emergency_oxygen) + armor = list(melee = 10, bullet = 0, laser = 0, energy = 0, bomb = 0, bio = 10, rad = 0) + //Botonist /obj/item/clothing/suit/apron name = "apron" diff --git a/icons/mob/suit.dmi b/icons/mob/suit.dmi index b5e727f51d9e805b94979e57bc95594def0fdd45..4fdaf337a72399ec0b5939a6d04279fc1fb07bb2 100644 GIT binary patch delta 22374 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 z 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 TlsMQ;7p8e#SEESXGVFf<>&9CW delta 21448 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 D0>OOG diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index ad099d2e8389eb4e48e49ac2ddb8d271d3c426a6..4ef95d1bda0ad3358ea0cf7530820385befac151 100644 GIT binary patch delta 9050 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 delta 8814 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