From 146d14a26ea5f9d5789958e3fb7561ccc91bf8f4 Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Sun, 24 Jul 2016 09:21:37 -0400 Subject: [PATCH 001/154] Refactor Uplink Refunding --- code/game/objects/items/devices/PDA/PDA.dm | 2 ++ code/game/objects/objs.dm | 3 +++ code/modules/uplink/uplink.dm | 27 ++++++++++++---------- 3 files changed, 20 insertions(+), 12 deletions(-) diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index ec23b878729..22733e18296 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -778,6 +778,8 @@ var/global/list/obj/item/device/pda/PDAs = list() var/obj/item/weapon/photo/P = C photo = P.img user << "You scan \the [C]." + else if(hidden_uplink && hidden_uplink.active) + hidden_uplink.attackby(C, user, params) else return ..() diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index 7e5a331af87..6cc9ed804c4 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -219,3 +219,6 @@ /obj/proc/CanAStarPass() . = !density + +/obj/proc/check_uplink_validity() + return 1 \ No newline at end of file diff --git a/code/modules/uplink/uplink.dm b/code/modules/uplink/uplink.dm index 20156b750b4..8070d55d1d6 100644 --- a/code/modules/uplink/uplink.dm +++ b/code/modules/uplink/uplink.dm @@ -27,6 +27,20 @@ var/global/list/uplinks = list() uplinks -= src return ..() +/obj/item/device/uplink/attackby(obj/item/I, mob/user, params) + for(var/item in subtypesof(/datum/uplink_item)) + var/datum/uplink_item/UI = item + var/path = initial(UI.item) + var/cost = initial(UI.cost) + var/refundable = initial(UI.refundable) + if(I.type == path && refundable && I.check_uplink_validity()) + telecrystals += cost + spent_telecrystals -= cost + user << "[I] refunded." + qdel(I) + return + ..() + /obj/item/device/uplink/interact(mob/user) active = TRUE ui_interact(user) @@ -89,18 +103,7 @@ var/global/list/uplinks = list() // Refund certain items by hitting the uplink with it. /obj/item/device/radio/uplink/attackby(obj/item/I, mob/user, params) - for(var/item in subtypesof(/datum/uplink_item)) - var/datum/uplink_item/UI = item - var/path = initial(UI.item) - var/cost = initial(UI.cost) - var/refundable = initial(UI.refundable) - if(I.type == path && refundable) - hidden_uplink.telecrystals += cost - hidden_uplink.spent_telecrystals -= cost - user << "[I] refunded." - qdel(I) - return - ..() + return hidden_uplink.attackby(I, user, params) // A collection of pre-set uplinks, for admin spawns. /obj/item/device/radio/uplink/New() From 24ca50148dffe0000677e16e5b376b0e512a58f4 Mon Sep 17 00:00:00 2001 From: AnturK Date: Sun, 24 Jul 2016 22:27:41 +0200 Subject: [PATCH 002/154] Never for this round generalization --- code/__HELPERS/game.dm | 9 ++++++--- code/_globalvars/lists/poll_ignore.dm | 3 +++ code/modules/research/xenobiology/xenobiology.dm | 2 +- tgstation.dme | 1 + 4 files changed, 11 insertions(+), 4 deletions(-) create mode 100644 code/_globalvars/lists/poll_ignore.dm diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index f478a81e5ff..342ce021d74 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -397,14 +397,14 @@ return new /datum/projectile_data(src_x, src_y, time, distance, power_x, power_y, dest_x, dest_y) -/proc/pollCandidates(var/Question, var/jobbanType, var/datum/game_mode/gametypeCheck, var/be_special_flag = 0, var/poll_time = 300) +/proc/pollCandidates(var/Question, var/jobbanType, var/datum/game_mode/gametypeCheck, var/be_special_flag = 0, var/poll_time = 300, var/ignore_list = null) var/list/mob/dead/observer/candidates = list() var/time_passed = world.time if (!Question) Question = "Would you like to be a special role?" for(var/mob/dead/observer/G in player_list) - if(!G.key || !G.client) + if(!G.key || !G.client || (ignore_list && G.ckey in ignore_list)) continue if(be_special_flag) if(!(G.client.prefs) || !(be_special_flag in G.client.prefs.be_special)) @@ -417,7 +417,7 @@ continue spawn(0) G << 'sound/misc/notice2.ogg' //Alerting them to their consideration - switch(askuser(G,Question,"Please answer in [poll_time/10] seconds!","Yes","No", StealFocus=0, Timeout=poll_time)) + switch(ignore_list ? askuser(G,Question,"Please answer in [poll_time/10] seconds!","Yes","No","Never for this round", StealFocus=0, Timeout=poll_time) : askuser(G,Question,"Please answer in [poll_time/10] seconds!","Yes","No", StealFocus=0, Timeout=poll_time)) if(1) G << "Choice registered: Yes." if((world.time-time_passed)>poll_time) @@ -427,6 +427,9 @@ candidates += G if(2) G << "Choice registered: No." + if(3) + ignore_list[G.ckey] = 1 + G << "Choice registered: Never for this round." sleep(poll_time) //Check all our candidates, to make sure they didn't log off during the wait period. diff --git a/code/_globalvars/lists/poll_ignore.dm b/code/_globalvars/lists/poll_ignore.dm new file mode 100644 index 00000000000..816a20f2f02 --- /dev/null +++ b/code/_globalvars/lists/poll_ignore.dm @@ -0,0 +1,3 @@ +//Each lists stores ckeys for "Never for this round" option category + +var/list/sentience_potion_ignore = list() //sentience potion query \ No newline at end of file diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index 123694aef90..9c6626ec650 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -184,7 +184,7 @@ user << "You offer the sentience potion to [SM]..." being_used = 1 - var/list/mob/dead/observer/candidates = pollCandidates("Do you want to play as [SM.name]?", ROLE_ALIEN, null, ROLE_ALIEN, 50) + var/list/mob/dead/observer/candidates = pollCandidates("Do you want to play as [SM.name]?", ROLE_ALIEN, null, ROLE_ALIEN, 50, sentience_potion_ignore) // see poll_ignore.dm var/mob/dead/observer/theghost = null if(candidates.len) theghost = pick(candidates) diff --git a/tgstation.dme b/tgstation.dme index a3e5b6149c7..b9f4e975f30 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -90,6 +90,7 @@ #include "code\_globalvars\lists\mobs.dm" #include "code\_globalvars\lists\names.dm" #include "code\_globalvars\lists\objects.dm" +#include "code\_globalvars\lists\poll_ignore.dm" #include "code\_onclick\_defines.dm" #include "code\_onclick\adjacent.dm" #include "code\_onclick\ai.dm" From 69dcf5bd985da0ca42b2f917616d1d4c6648bef4 Mon Sep 17 00:00:00 2001 From: AnturK Date: Mon, 25 Jul 2016 22:13:30 +0200 Subject: [PATCH 003/154] Applies the change to PAI's --- code/_globalvars/lists/poll_ignore.dm | 3 ++- code/controllers/subsystem/pai.dm | 35 +++------------------------ 2 files changed, 6 insertions(+), 32 deletions(-) diff --git a/code/_globalvars/lists/poll_ignore.dm b/code/_globalvars/lists/poll_ignore.dm index 816a20f2f02..2683dfdd4d4 100644 --- a/code/_globalvars/lists/poll_ignore.dm +++ b/code/_globalvars/lists/poll_ignore.dm @@ -1,3 +1,4 @@ //Each lists stores ckeys for "Never for this round" option category -var/list/sentience_potion_ignore = list() //sentience potion query \ No newline at end of file +var/list/sentience_potion_ignore = list() //sentience potion query +var/list/pai_ignore = list() //pai's \ No newline at end of file diff --git a/code/controllers/subsystem/pai.dm b/code/controllers/subsystem/pai.dm index 1978c1b167d..e71bbd8edb4 100644 --- a/code/controllers/subsystem/pai.dm +++ b/code/controllers/subsystem/pai.dm @@ -5,10 +5,7 @@ var/datum/subsystem/pai/SSpai init_order = 20 flags = SS_NO_FIRE|SS_NO_INIT - var/askDelay = 600 - var/const/NEVER_FOR_THIS_ROUND = -1 var/list/candidates = list() - var/list/asked = list() /datum/subsystem/pai/New() NEW_SS_GLOBAL(SSpai) @@ -181,34 +178,10 @@ var/datum/subsystem/pai/SSpai user << browse(dat, "window=findPai") /datum/subsystem/pai/proc/requestRecruits() - for(var/mob/dead/observer/O in player_list) - if(jobban_isbanned(O, ROLE_PAI)) - continue - if(asked[O.ckey]) - if(world.time < asked[O.ckey] + askDelay || asked[O.ckey] == NEVER_FOR_THIS_ROUND) - continue - else - asked.Remove(O.ckey) - if(O.client) - var/hasSubmitted = 0 - for(var/datum/paiCandidate/c in SSpai.candidates) - if(c.key == O.key) - hasSubmitted = 1 - if(!hasSubmitted && (ROLE_PAI in O.client.prefs.be_special)) - question(O.client) - -/datum/subsystem/pai/proc/question(client/C) - set waitfor = 0 - if(!C) - return - asked[C.ckey] = world.time - var/response = tgalert(C, "Someone is requesting a pAI personality. Would you like to play as a personal AI?", "pAI Request", "Yes", "No", "Never for this round", StealFocus=0, Timeout=askDelay) - if(!C) - return //handle logouts that happen whilst the alert is waiting for a response. - if(response == "Yes") - recruitWindow(C.mob) - else if (response == "Never for this round") - asked[C.ckey] = NEVER_FOR_THIS_ROUND + var/list/candidates = pollCandidates("Someone is requesting a pAI personality. Would you like to play as a personal AI?", ROLE_PAI, null, ROLE_PAI,300, ignore_list = pai_ignore) + for(var/V in candidates) + recruitWindow(V) + return /datum/paiCandidate var/name From c6d9df04bace839f000a2fdda2faeee2a9d5b407 Mon Sep 17 00:00:00 2001 From: AnturK Date: Mon, 25 Jul 2016 22:42:06 +0200 Subject: [PATCH 004/154] Switches to assoc lists --- code/__HELPERS/game.dm | 8 ++++---- code/_globalvars/lists/poll_ignore.dm | 6 ++++-- code/controllers/subsystem/pai.dm | 2 +- code/modules/research/xenobiology/xenobiology.dm | 2 +- 4 files changed, 10 insertions(+), 8 deletions(-) diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index 342ce021d74..b35b0834bee 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -397,14 +397,14 @@ return new /datum/projectile_data(src_x, src_y, time, distance, power_x, power_y, dest_x, dest_y) -/proc/pollCandidates(var/Question, var/jobbanType, var/datum/game_mode/gametypeCheck, var/be_special_flag = 0, var/poll_time = 300, var/ignore_list = null) +/proc/pollCandidates(var/Question, var/jobbanType, var/datum/game_mode/gametypeCheck, var/be_special_flag = 0, var/poll_time = 300, var/ignore_category = null) var/list/mob/dead/observer/candidates = list() var/time_passed = world.time if (!Question) Question = "Would you like to be a special role?" for(var/mob/dead/observer/G in player_list) - if(!G.key || !G.client || (ignore_list && G.ckey in ignore_list)) + if(!G.key || !G.client || (ignore_category && G.ckey in poll_ignore[ignore_category])) continue if(be_special_flag) if(!(G.client.prefs) || !(be_special_flag in G.client.prefs.be_special)) @@ -417,7 +417,7 @@ continue spawn(0) G << 'sound/misc/notice2.ogg' //Alerting them to their consideration - switch(ignore_list ? askuser(G,Question,"Please answer in [poll_time/10] seconds!","Yes","No","Never for this round", StealFocus=0, Timeout=poll_time) : askuser(G,Question,"Please answer in [poll_time/10] seconds!","Yes","No", StealFocus=0, Timeout=poll_time)) + switch(ignore_category ? askuser(G,Question,"Please answer in [poll_time/10] seconds!","Yes","No","Never for this round", StealFocus=0, Timeout=poll_time) : askuser(G,Question,"Please answer in [poll_time/10] seconds!","Yes","No", StealFocus=0, Timeout=poll_time)) if(1) G << "Choice registered: Yes." if((world.time-time_passed)>poll_time) @@ -428,7 +428,7 @@ if(2) G << "Choice registered: No." if(3) - ignore_list[G.ckey] = 1 + poll_ignore[ignore_category] += G.ckey G << "Choice registered: Never for this round." sleep(poll_time) diff --git a/code/_globalvars/lists/poll_ignore.dm b/code/_globalvars/lists/poll_ignore.dm index 2683dfdd4d4..e7d565aa36b 100644 --- a/code/_globalvars/lists/poll_ignore.dm +++ b/code/_globalvars/lists/poll_ignore.dm @@ -1,4 +1,6 @@ //Each lists stores ckeys for "Never for this round" option category -var/list/sentience_potion_ignore = list() //sentience potion query -var/list/pai_ignore = list() //pai's \ No newline at end of file +#define POLL_IGNORE_PAI "pai" +#define POLL_IGNORE_SENTIENCE_POTION "sentience_potion" + +var/list/poll_ignore = list(POLL_IGNORE_PAI = list(),POLL_IGNORE_SENTIENCE_POTION = list()) \ No newline at end of file diff --git a/code/controllers/subsystem/pai.dm b/code/controllers/subsystem/pai.dm index e71bbd8edb4..f3dcb49e6c3 100644 --- a/code/controllers/subsystem/pai.dm +++ b/code/controllers/subsystem/pai.dm @@ -178,7 +178,7 @@ var/datum/subsystem/pai/SSpai user << browse(dat, "window=findPai") /datum/subsystem/pai/proc/requestRecruits() - var/list/candidates = pollCandidates("Someone is requesting a pAI personality. Would you like to play as a personal AI?", ROLE_PAI, null, ROLE_PAI,300, ignore_list = pai_ignore) + var/list/candidates = pollCandidates("Someone is requesting a pAI personality. Would you like to play as a personal AI?", ROLE_PAI, null, ROLE_PAI,300, ignore_category = POLL_IGNORE_PAI) for(var/V in candidates) recruitWindow(V) return diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index 9c6626ec650..3c87feff6e9 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -184,7 +184,7 @@ user << "You offer the sentience potion to [SM]..." being_used = 1 - var/list/mob/dead/observer/candidates = pollCandidates("Do you want to play as [SM.name]?", ROLE_ALIEN, null, ROLE_ALIEN, 50, sentience_potion_ignore) // see poll_ignore.dm + var/list/mob/dead/observer/candidates = pollCandidates("Do you want to play as [SM.name]?", ROLE_ALIEN, null, ROLE_ALIEN, 50, POLL_IGNORE_SENTIENCE_POTION) // see poll_ignore.dm var/mob/dead/observer/theghost = null if(candidates.len) theghost = pick(candidates) From 491f06ded602db49d083cfaabe24766b432ee744 Mon Sep 17 00:00:00 2001 From: AnturK Date: Tue, 26 Jul 2016 17:07:06 +0200 Subject: [PATCH 005/154] Defers list init --- code/__HELPERS/game.dm | 5 ++++- code/_globalvars/lists/poll_ignore.dm | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index b35b0834bee..eb441a96b94 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -404,7 +404,7 @@ Question = "Would you like to be a special role?" for(var/mob/dead/observer/G in player_list) - if(!G.key || !G.client || (ignore_category && G.ckey in poll_ignore[ignore_category])) + if(!G.key || !G.client || (ignore_category && poll_ignore[ignore_category] && G.ckey in poll_ignore[ignore_category])) continue if(be_special_flag) if(!(G.client.prefs) || !(be_special_flag in G.client.prefs.be_special)) @@ -428,6 +428,9 @@ if(2) G << "Choice registered: No." if(3) + var/list/L = poll_ignore[ignore_category] + if(!L) + poll_ignore[ignore_category] = list() poll_ignore[ignore_category] += G.ckey G << "Choice registered: Never for this round." sleep(poll_time) diff --git a/code/_globalvars/lists/poll_ignore.dm b/code/_globalvars/lists/poll_ignore.dm index e7d565aa36b..6a765f6bfd3 100644 --- a/code/_globalvars/lists/poll_ignore.dm +++ b/code/_globalvars/lists/poll_ignore.dm @@ -3,4 +3,4 @@ #define POLL_IGNORE_PAI "pai" #define POLL_IGNORE_SENTIENCE_POTION "sentience_potion" -var/list/poll_ignore = list(POLL_IGNORE_PAI = list(),POLL_IGNORE_SENTIENCE_POTION = list()) \ No newline at end of file +var/list/poll_ignore = list() \ No newline at end of file From afeb6d42d188aaa34dede208086a90c7c5e527e4 Mon Sep 17 00:00:00 2001 From: GunHog Date: Wed, 27 Jul 2016 10:30:35 -0500 Subject: [PATCH 006/154] Sad Trombone implant is now buildable! - You may now construct the Sad Trombone implant with a little bananium. --- code/modules/research/designs/medical_designs.dm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/code/modules/research/designs/medical_designs.dm b/code/modules/research/designs/medical_designs.dm index e599fc862c2..1f69d417192 100644 --- a/code/modules/research/designs/medical_designs.dm +++ b/code/modules/research/designs/medical_designs.dm @@ -287,6 +287,16 @@ build_path = /obj/item/weapon/implantcase category = list("Medical Designs") +/datum/design/implantcase + name = "Sad Trombone Implant Case" + desc = "Makes death amusing." + id = "implant_trombone" + req_tech = list("materials" = 2, "biotech" = 3, "programming" = 2) + build_type = PROTOLATHE + materials = list(MAT_GLASS = 500, MAT_BANANIUM = 500) + build_path = /obj/item/weapon/implantcase/sad_trombone + category = list("Medical Designs") + /datum/design/implant_freedom name = "Freedom Implant Case" desc = "A glass case containing an implant." From c77cebb995e6ee228bbc72afd4263e266a102c53 Mon Sep 17 00:00:00 2001 From: GunHog Date: Wed, 27 Jul 2016 17:50:30 -0500 Subject: [PATCH 007/154] Mini-fix Forgot to declare the datum properly. --- code/modules/research/designs/medical_designs.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/research/designs/medical_designs.dm b/code/modules/research/designs/medical_designs.dm index 1f69d417192..70141a7e14d 100644 --- a/code/modules/research/designs/medical_designs.dm +++ b/code/modules/research/designs/medical_designs.dm @@ -287,7 +287,7 @@ build_path = /obj/item/weapon/implantcase category = list("Medical Designs") -/datum/design/implantcase +/datum/design/implant_sadtrombone name = "Sad Trombone Implant Case" desc = "Makes death amusing." id = "implant_trombone" From 06a6b7ef2dc36469ccd4c96fc381bad3391541eb Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Wed, 27 Jul 2016 22:17:08 -0400 Subject: [PATCH 008/154] Fixes diagonal smoothing underlays --- _maps/map_files/generic/lavaland.dmm | 100 +++++++++++++-------------- code/__HELPERS/icon_smoothing.dm | 16 +++-- code/game/turfs/turf.dm | 2 +- 3 files changed, 61 insertions(+), 57 deletions(-) diff --git a/_maps/map_files/generic/lavaland.dmm b/_maps/map_files/generic/lavaland.dmm index c864950a0c5..c1d24040cda 100644 --- a/_maps/map_files/generic/lavaland.dmm +++ b/_maps/map_files/generic/lavaland.dmm @@ -535,10 +535,10 @@ height = 5; id = "laborcamp_away"; name = "labor camp"; - turf_type = /turf/open/floor/plating/lava/smooth; + turf_type = /turf/open/floor/plating/asteroid/basalt/lava_land_surface; width = 9 }, -/turf/open/floor/plating/lava/smooth/lava_land_surface, +/turf/open/floor/plating/asteroid/basalt/lava_land_surface, /area/lavaland/surface/outdoors/explored) "bm" = ( /obj/machinery/door/airlock/glass_security{ @@ -5844,7 +5844,7 @@ af bA bA bA -bA +dq bA bA bA @@ -5853,7 +5853,7 @@ bA dq bA bA -bA +dq bA bA bA @@ -6102,15 +6102,15 @@ af bA bA bA -bA -bA -bA -bA -bA -bA -bA -bA -bA +dq +dq +dq +dq +dq +dq +dq +dq +dq bA af af @@ -6359,15 +6359,15 @@ bA bA bA bA -bA -bA -bA -bA -bA -bA -bA -bA -bA +dq +dq +dq +dq +dq +dq +dq +dq +dq bA bA ab @@ -6616,15 +6616,15 @@ bA bA bA bA -bA -bA -bA -bA -bA -bA -bA -bA -bA +dq +dq +dq +dq +dq +dq +dq +dq +dq bA bA bA @@ -6873,15 +6873,15 @@ af bA bA bA -bA -bA -bA -bA -bA -bA -bA -bA -bA +dq +dq +dq +dq +dq +dq +dq +dq +dq bA af af @@ -7129,17 +7129,17 @@ af af bA bA -bA -bA -bA -bA -bA -bA -bA +dq +dq +dq +dq +dq +dq +dq bl -bA -bA -bA +dq +dq +dq af af af diff --git a/code/__HELPERS/icon_smoothing.dm b/code/__HELPERS/icon_smoothing.dm index fd4b3222026..2e0934a3e18 100644 --- a/code/__HELPERS/icon_smoothing.dm +++ b/code/__HELPERS/icon_smoothing.dm @@ -156,20 +156,24 @@ underlays.Cut() if(fixed_underlay) if(fixed_underlay["space"]) - underlays += image('icons/turf/space.dmi', SPACE_ICON_STATE, layer=src.layer) + underlays += image('icons/turf/space.dmi', SPACE_ICON_STATE, layer=TURF_LAYER) else - underlays += image(fixed_underlay["icon"], fixed_underlay["icon_state"], layer=src.layer) + underlays += image(fixed_underlay["icon"], fixed_underlay["icon_state"], layer=TURF_LAYER) else var/turf/T = get_step(src, turn(adjacencies, 180)) - if(T && T.density) + if(T && (T.density || T.smooth)) T = get_step(src, turn(adjacencies, 135)) - if(T && T.density) + if(T && (T.density || T.smooth)) T = get_step(src, turn(adjacencies, 225)) + if(T && (T.density || T.smooth)) + T = null - if(istype(T, /turf/open/space)) - underlays += image('icons/turf/space.dmi', SPACE_ICON_STATE, layer=src.layer) + if(istype(T, /turf/open/space) && !istype(T, /turf/open/space/transit)) + underlays += image('icons/turf/space.dmi', SPACE_ICON_STATE, layer=TURF_LAYER) else if(T && !T.density && !T.smooth) underlays += T + else if(baseturf && !initial(baseturf.density) && !initial(baseturf.smooth)) + underlays += image(initial(baseturf.icon), initial(baseturf.icon_state), layer=TURF_LAYER) else underlays += DEFAULT_UNDERLAY_IMAGE diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index 218d764dd0e..cf46254a2f5 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -3,7 +3,7 @@ level = 1 var/intact = 1 - var/baseturf = /turf/open/space + var/turf/baseturf = /turf/open/space var/temperature = T20C var/to_be_destroyed = 0 //Used for fire, if a melting temperature was reached, it will be destroyed From bd91c7e68d9a9c637a2e896817f5c82a29ac924d Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Wed, 27 Jul 2016 22:20:05 -0400 Subject: [PATCH 009/154] steam rises off of her --- _maps/map_files/generic/lavaland.dmm | 2 +- code/__HELPERS/icon_smoothing.dm | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/_maps/map_files/generic/lavaland.dmm b/_maps/map_files/generic/lavaland.dmm index c1d24040cda..5d5b80a9a7b 100644 --- a/_maps/map_files/generic/lavaland.dmm +++ b/_maps/map_files/generic/lavaland.dmm @@ -7391,7 +7391,7 @@ an an aO an -fI +an an bm an diff --git a/code/__HELPERS/icon_smoothing.dm b/code/__HELPERS/icon_smoothing.dm index 2e0934a3e18..7f76e50e434 100644 --- a/code/__HELPERS/icon_smoothing.dm +++ b/code/__HELPERS/icon_smoothing.dm @@ -165,8 +165,6 @@ T = get_step(src, turn(adjacencies, 135)) if(T && (T.density || T.smooth)) T = get_step(src, turn(adjacencies, 225)) - if(T && (T.density || T.smooth)) - T = null if(istype(T, /turf/open/space) && !istype(T, /turf/open/space/transit)) underlays += image('icons/turf/space.dmi', SPACE_ICON_STATE, layer=TURF_LAYER) From fd9714345800f544b16c2e8b71f938c053836220 Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Thu, 28 Jul 2016 11:16:13 -0500 Subject: [PATCH 010/154] Simple animals will seek out and smash active turrets --- .../machinery/porta_turret/portable_turret.dm | 8 +++++ .../living/simple_animal/hostile/hostile.dm | 31 +++++++++++++++---- 2 files changed, 33 insertions(+), 6 deletions(-) diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index 8036ba00401..ad8778733da 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -370,6 +370,14 @@ else qdel(src) +/obj/machinery/porta_turret/attack_animal(mob/living/simple_animal/user) + user.changeNext_move(CLICK_CD_MELEE) + if(user.melee_damage_upper == 0) + user.emote("[user.friendly] [src]") + else + user.do_attack_animation(src) + var/damage = rand(user.melee_damage_lower, user.melee_damage_upper) + take_damage(damage) /obj/machinery/porta_turret/take_damage(damage, damage_type = BRUTE, sound_effect = 1) switch(damage_type) diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index fa4f0104228..d4b5f382760 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -86,7 +86,13 @@ if(!search_objects) var/list/Mobs = hearers(vision_range, targets_from) - src //Remove self, so we don't suicide . += Mobs - for(var/M in mechas_list) + + var/hostile_machines = list() + for(var/mecha in mechas_list) + hostile_machines += mecha + for(var/obj/machinery/porta_turret/P in machines) + hostile_machines += P + for(var/M in hostile_machines) if(get_dist(M, targets_from) <= vision_range && can_see(targets_from, M, vision_range)) . += M else @@ -147,11 +153,6 @@ if(see_invisible < the_target.invisibility)//Target's invisible to us, forget it return 0 if(search_objects < 2) - if(istype(the_target, /obj/mecha)) - var/obj/mecha/M = the_target - if(M.occupant)//Just so we don't attack empty mechs - if(CanAttack(M.occupant)) - return 1 if(isliving(the_target)) var/mob/living/L = the_target var/faction_check = faction_check(L) @@ -168,6 +169,24 @@ if(faction_check && !attack_same) return 0 return 1 + + if(istype(the_target, /obj/mecha)) + var/obj/mecha/M = the_target + if(M.occupant)//Just so we don't attack empty mechs + if(CanAttack(M.occupant)) + return 1 + + if(istype(the_target, /obj/machinery/porta_turret)) + var/obj/machinery/porta_turret/P = the_target + if(P.faction in faction) + return 0 + if(P.has_cover &&!P.raised) //Don't attack invincible turrets + return 0 + if(P.stat & BROKEN) //Or turrets that are already broken + return 0 + return 1 + + if(isobj(the_target)) if(is_type_in_list(the_target, wanted_objects)) return 1 From 29253fdd5eac547a1661a0c5954e66b7e3b54927 Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Thu, 28 Jul 2016 11:17:04 -0500 Subject: [PATCH 011/154] Simple animals can be hurt by lightning/tesla --- code/modules/mob/living/carbon/carbon.dm | 2 -- code/modules/mob/living/living.dm | 8 +++++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/living/carbon/carbon.dm b/code/modules/mob/living/carbon/carbon.dm index 961977cc4f2..15193870032 100644 --- a/code/modules/mob/living/carbon/carbon.dm +++ b/code/modules/mob/living/carbon/carbon.dm @@ -58,8 +58,6 @@ if(reagents.has_reagent("teslium")) shock_damage *= 1.5 //If the mob has teslium in their body, shocks are 50% more damaging! take_overall_damage(0,shock_damage) - //src.adjustFireLoss(shock_damage) - //src.updatehealth() visible_message( "[src] was shocked by \the [source]!", \ "You feel a powerful shock coursing through your body!", \ diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 6bc413b72a4..ea3581b73ac 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -437,7 +437,13 @@ Sorry Giacom. Please don't be mad :( /mob/living/proc/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, tesla_shock = 0) - return 0 //only carbon liveforms have this proc + adjustFireLoss(shock_damage) + visible_message( + "[src] was shocked by \the [source]!", \ + "You feel a powerful shock coursing through your body!", \ + "You hear a heavy electrical crack." \ + ) + return shock_damage /mob/living/emp_act(severity) var/list/L = src.get_contents() From 2623614cab22857d90b2f3bf15309e8cfb98c03b Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Thu, 28 Jul 2016 14:43:35 -0400 Subject: [PATCH 012/154] Drakes should no longer attack objects or try to path while swooping --- .../simple_animal/hostile/megafauna/dragon.dm | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm index a8b8f8ad6ef..730b99791d5 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm @@ -90,6 +90,14 @@ Difficulty: Medium var/mob/living/L = target devour(L) +/mob/living/simple_animal/hostile/megafauna/dragon/DestroySurroundings() + if(!swooping) + ..() + +/mob/living/simple_animal/hostile/megafauna/dragon/Goto(target, delay, minimum_distance) + if(!swooping) + ..() + /mob/living/simple_animal/hostile/megafauna/dragon/Process_Spacemove(movement_dir = 0) return 1 @@ -166,16 +174,13 @@ Difficulty: Medium PoolOrNew(/obj/effect/overlay/temp/target, turf) /mob/living/simple_animal/hostile/megafauna/dragon/proc/fire_walls() - var/list/attack_dirs = list(NORTH,EAST,SOUTH,WEST) - if(prob(50)) - attack_dirs = list(NORTH,WEST,SOUTH,EAST) playsound(get_turf(src),'sound/magic/Fireball.ogg', 200, 1) - for(var/d in attack_dirs) + for(var/d in cardinal) addtimer(src, "fire_wall", 0, FALSE, d) -/mob/living/simple_animal/hostile/megafauna/dragon/proc/fire_wall(d) - var/turf/E = get_edge_target_turf(src, d) +/mob/living/simple_animal/hostile/megafauna/dragon/proc/fire_wall(dir) + var/turf/E = get_edge_target_turf(src, dir) var/range = 10 for(var/turf/open/J in getline(src,E)) if(!range) From eee517f5b7ee7968910826b51a2082c68eaaebf6 Mon Sep 17 00:00:00 2001 From: Lularian Date: Thu, 28 Jul 2016 17:28:44 -0500 Subject: [PATCH 013/154] look me in the eyes, please... --- code/game/objects/items/weapons/storage/toolbox.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/weapons/storage/toolbox.dm b/code/game/objects/items/weapons/storage/toolbox.dm index 53693b855b3..74c2ff969ca 100644 --- a/code/game/objects/items/weapons/storage/toolbox.dm +++ b/code/game/objects/items/weapons/storage/toolbox.dm @@ -8,7 +8,7 @@ throwforce = 10 throw_speed = 2 throw_range = 7 - w_class = 4 + w_class = 3 materials = list(MAT_METAL = 500) origin_tech = "combat=1;engineering=1" attack_verb = list("robusted") From 7a43dfd25380493c1584ffb32ca3903a15c84b66 Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Thu, 28 Jul 2016 22:23:39 -0400 Subject: [PATCH 014/154] Makes the clockwork objective printout more accurate --- code/game/gamemodes/clock_cult/clock_cult.dm | 31 ++++++++++---------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/code/game/gamemodes/clock_cult/clock_cult.dm b/code/game/gamemodes/clock_cult/clock_cult.dm index 59a353c1258..4a1540d84f0 100644 --- a/code/game/gamemodes/clock_cult/clock_cult.dm +++ b/code/game/gamemodes/clock_cult/clock_cult.dm @@ -234,7 +234,7 @@ This file's folder contains: if("gateway") clockwork_explanation = "Construct a Gateway to the Celestial Derelict and free Ratvar." if("silicons") - clockwork_explanation = "Ensure that all silicon-based lifeforms on [station_name()] are servants of Ratvar by the end of the shift." + clockwork_explanation = "Ensure that all active silicon-based lifeforms on [station_name()] are servants of Ratvar by the end of the shift." return 1 /datum/game_mode/clockwork_cult/proc/greet_servant(mob/M) //Description of their role @@ -279,27 +279,26 @@ This file's folder contains: for(var/datum/mind/M in servants_of_ratvar) if(M.current && M.current.stat != DEAD && (M.current.onCentcom() || M.current.onSyndieBase())) surviving_servants++ - clockwork_explanation = "Ensure that [required_escapees] servant(s) of Ratvar escape from [station_name()]. [surviving_servants] managed to escape!" + clockwork_explanation = "Ensure that [required_escapees] servant(s) of Ratvar escape from [station_name()]. [surviving_servants] managed to escape!" if(surviving_servants >= required_escapees) return TRUE return FALSE if("silicons") var/total_silicons = 0 - var/converted_silicons = 0 + var/valid_silicons = 0 var/successful = TRUE - for(var/mob/living/silicon/robot/S in living_mob_list) //Only check robots and AIs + for(var/mob/living/silicon/robot/S in mob_list) //Only check robots and AIs total_silicons++ - if(!is_servant_of_ratvar(S)) - successful = FALSE - else - converted_silicons++ - for(var/mob/living/silicon/ai/A in living_mob_list) + if(is_servant_of_ratvar(S) || S.stat == DEAD) + valid_silicons++ + for(var/mob/living/silicon/ai/A in mob_list) total_silicons++ - if(!is_servant_of_ratvar(A)) - successful = FALSE - else - converted_silicons++ - clockwork_explanation = "Ensure that all silicon-based lifeforms on [station_name()] are servants of Ratvar by the end of the shift. [converted_silicons]/[total_silicons] silicons were converted!" + if(is_servant_of_ratvar(A) || A.stat == DEAD) + valid_silicons++ + if(valid_silicons < total_silicons) + successful = FALSE + clockwork_explanation = "Ensure that all active silicon-based lifeforms on [station_name()] are servants of Ratvar by the end of the shift. \ + [valid_silicons]/[total_silicons] silicons were killed or converted!" return successful if("gateway") return ratvar_awakens @@ -323,12 +322,12 @@ This file's folder contains: if(G) half_victory = TRUE if(half_victory) - text += "The crew escaped before Ratvar could rise, but the station was taken over!" + text += "The crew escaped before Ratvar could rise, but the gateway was successfully constructed!" feedback_set_details("round_end_result", "halfwin - round ended before the gateway finished") else text += "Ratvar's servants have failed!" feedback_set_details("round_end_result", "loss - servants failed their objective ([clockwork_objective])") - text += "
The servants' objective was: [clockwork_explanation]
" + text += "
The servants' objective was:
[clockwork_explanation]
" if(servants_of_ratvar.len) text += "Ratvar's servants were:" for(var/datum/mind/M in servants_of_ratvar) From a3d257d778ded6a0af8b0c84cc8025d21c0eb852 Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Fri, 29 Jul 2016 10:17:31 -0400 Subject: [PATCH 015/154] Nar-Sie now calls the shuttle with a shorter timer (#19548) --- code/modules/power/singularity/narsie.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/power/singularity/narsie.dm b/code/modules/power/singularity/narsie.dm index d57d136d73c..0c93c9835d0 100644 --- a/code/modules/power/singularity/narsie.dm +++ b/code/modules/power/singularity/narsie.dm @@ -36,7 +36,7 @@ narsie_spawn_animation() sleep(70) - SSshuttle.emergency.request(null, 0.3) // Cannot recall + SSshuttle.emergency.request(null, 0.1) // Cannot recall /obj/singularity/narsie/large/attack_ghost(mob/dead/observer/user as mob) From 6ab28dfe832314803c46240146b6344b570cc1fd Mon Sep 17 00:00:00 2001 From: WJohn Date: Fri, 29 Jul 2016 10:32:58 -0400 Subject: [PATCH 016/154] Adds tiny fans to lavaland golem ship airlocks. (#19563) --- .../LavaRuins/lavaland_surface_golem_ship.dmm | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/_maps/RandomRuins/LavaRuins/lavaland_surface_golem_ship.dmm b/_maps/RandomRuins/LavaRuins/lavaland_surface_golem_ship.dmm index a2e0660a8bc..c4747776f39 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_surface_golem_ship.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_surface_golem_ship.dmm @@ -257,6 +257,13 @@ "G" = ( /turf/closed/wall/mineral/titanium, /area/ruin/powered/golem_ship) +"H" = ( +/obj/machinery/door/airlock/shuttle, +/obj/structure/fans/tiny, +/turf/open/floor/mineral/titanium/purple{ + baseturf = /turf/open/floor/plating/lava/smooth + }, +/area/ruin/powered/golem_ship) (1,1,1) = {" a @@ -686,8 +693,8 @@ b i i b -j -j +H +H b i i From d6a956979dc570f18465d5cd390ea7ae52ea1046 Mon Sep 17 00:00:00 2001 From: AnturK Date: Fri, 29 Jul 2016 18:50:46 +0200 Subject: [PATCH 017/154] Revert "Fixes Photos more cheaply" (#19568) --- code/__HELPERS/icons.dm | 14 ++------------ code/modules/paperwork/photography.dm | 4 ++-- 2 files changed, 4 insertions(+), 14 deletions(-) diff --git a/code/__HELPERS/icons.dm b/code/__HELPERS/icons.dm index db09c2a3dca..0f4bf8fa162 100644 --- a/code/__HELPERS/icons.dm +++ b/code/__HELPERS/icons.dm @@ -692,11 +692,7 @@ The _flatIcons list is a cache for generated icon files. var/image/copy // Add the atom's icon itself, without pixel_x/y offsets. if(!noIcon) - var/icon/copyicon = icon(curicon, curstate, dir=curdir) - if(IsBlankIcon(copyicon)) - curdir = SOUTH - copy = image(icon=curicon, icon_state=curstate, layer=A.layer) - copy.dir = curdir + copy = image(icon=curicon, icon_state=curstate, layer=A.layer, dir=curdir) copy.color = A.color copy.alpha = A.alpha copy.blend_mode = curblend @@ -919,12 +915,6 @@ var/global/list/friendly_animal_types = list() final_average = BlendRGB(final_average, colour, 1) return final_average -/proc/IsBlankIcon(icon/I) - for(var/y_pixel = 1 to I.Height()) - for(var/x_pixel = 1 to I.Width()) - if(I.GetPixel(x_pixel, y_pixel)) - return 0 - return 1 //Interface for using DrawBox() to draw 1 pixel on a coordinate. //Returns the same icon specifed in the argument, but with the pixel drawn @@ -1016,4 +1006,4 @@ var/global/list/humanoid_icon_cache = list() //Images have dir without being an atom, so they get their own definition. //Lame. /image/proc/setDir(newdir) - dir = newdir + dir = newdir diff --git a/code/modules/paperwork/photography.dm b/code/modules/paperwork/photography.dm index 7004b0afcc9..a23c8b993d9 100644 --- a/code/modules/paperwork/photography.dm +++ b/code/modules/paperwork/photography.dm @@ -258,9 +258,9 @@ holding = "They are holding \a [L.r_hand]" if(!mob_detail) - mob_detail = "You can see [L] on the photo[L.health < (0.75 * L.maxHealth) ? " - [L] looks hurt":""].[holding ? " [holding]":"."]. " + mob_detail = "You can see [L] on the photo[L.health < 75 ? " - [L] looks hurt":""].[holding ? " [holding]":"."]. " else - mob_detail += "You can also see [L] on the photo[L.health < (0.75 * L.maxHealth) ? " - [L] looks hurt":""].[holding ? " [holding]":"."]." + mob_detail += "You can also see [L] on the photo[L.health < 75 ? " - [L] looks hurt":""].[holding ? " [holding]":"."]." return mob_detail From 3684869d182c88cc3fdf4f138d4eaf36bafa0ebb Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 29 Jul 2016 19:46:33 -0400 Subject: [PATCH 018/154] Fixes photo descriptions showing animals with low max health as being injured when they were not. --- code/modules/paperwork/photography.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/paperwork/photography.dm b/code/modules/paperwork/photography.dm index a23c8b993d9..52b39bc2737 100644 --- a/code/modules/paperwork/photography.dm +++ b/code/modules/paperwork/photography.dm @@ -258,9 +258,9 @@ holding = "They are holding \a [L.r_hand]" if(!mob_detail) - mob_detail = "You can see [L] on the photo[L.health < 75 ? " - [L] looks hurt":""].[holding ? " [holding]":"."]. " + mob_detail = "You can see [L] on the photo[L.health < (L.maxHealth * 0.75) ? " - [L] looks hurt":""].[holding ? " [holding]":"."]. " else - mob_detail += "You can also see [L] on the photo[L.health < 75 ? " - [L] looks hurt":""].[holding ? " [holding]":"."]." + mob_detail += "You can also see [L] on the photo[L.health < (L.maxHealth * 0.75) ? " - [L] looks hurt":""].[holding ? " [holding]":"."]." return mob_detail From 5cea7a9305697ba44715561413ec5ad317438bba Mon Sep 17 00:00:00 2001 From: oranges Date: Fri, 29 Jul 2016 19:32:56 +1200 Subject: [PATCH 019/154] Simple mapmerger readme basic guide and some troubleshooting It's not like most people read these commit logs anyway, first person to notice this gets a 10 dollar amazon voucher, pm me in irc with the commit hash. --- tools/mapmerge/README.md | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/tools/mapmerge/README.md b/tools/mapmerge/README.md index 78993824965..d8d696d8939 100644 --- a/tools/mapmerge/README.md +++ b/tools/mapmerge/README.md @@ -1,3 +1,4 @@ +#Map Merger# Before any change to a map, it is good to use the Map Merger tools. In a nutshell, it rewrites the map to minimize differences between different versions of the map (DreamMakers map editor rewrites a lot of the tile keys). This makes the git diff between different map changes much smaller. More recently a new way of laying out the map was invented by Remie, called TGM, this helps to further reduce conflicts in the map files. This is good for a few reasons @@ -9,29 +10,28 @@ This is good for a few reasons However - to do all this is going to require you to put some elbow grease into understanding the map merger tool. -If you have difficulty using these tools, ask for help in [[Community|#coderbus]] +If you have difficulty using these tools, ask for help in #coderbus +#Using the tools# -'''1. Install Python 3.5 or greater''' +##1. Install Python 3.5 or greater## If you don't have Python already installed it can be downloaded from: https://www.python.org/downloads/ - make sure you grab the latest python 3, again, it must be 3.5 or greater +##2. PATH Python## +This step is mostly applicable to windows users, you must make sure you ask the windows installer to add python to your path, [like shown in this example screenshot](https://file.house/DA6H.png) -'''2. PATH Python''' -This step is mostly applicable to windows users, you must make sure you ask the windows installer to add python to your path. - -This image shows the correct setting to ensure is set https://file.house/DA6H.png - -'''3. Prepare Maps''' +If you have already installed python you may need to manually add it to your path as indicated in [this guide](http://superuser.com/questions/143119/how-to-add-python-to-the-windows-path) +##3. Prepare Maps## Run "Prepare Maps.bat" in the tools/mapmerge/ directory. - -'''4. Edit your map''' +##4. Edit your map## Make your changes to the map here. Remember to save them! - -'''5. Clean map''' -Run "Run Map Merge - TGM.bat" in the tools/mapmerge/ directory. - -'''7. Check differences''' +##5. Clean map## +Run "Run Map Merge - TGM.bat" in the tools/mapmerge/ directory. +##7. Check differences## Use your git application of choice to look at the differences between revisions of your code and commit the result. +##8. Commit## +Your map is now ready to be committed, rejoice and wait for conflicts. -'''8. Commit''' -Your map is now ready to be committed, rejoice and wait for conflicts. - +#Common pitfalls# +Open the map in dreameditor before committing the results of the mapmerger - this can cause dreameditor to resave the map back to +dmm, if you're having issues with your map getting stuck in dmm mode, try comitting and pushing the mapmerger changes before +reopening in dreameditor. From fade98ca749a2291836ff0e83fd2374730f27dfa Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Fri, 29 Jul 2016 22:34:19 -0400 Subject: [PATCH 020/154] Megafauna will now seek out and consume corpses --- .../simple_animal/hostile/megafauna/legion.dm | 9 +++++++- .../hostile/megafauna/megafauna.dm | 2 +- .../simple_animal/hostile/mining_mobs.dm | 21 +++++++++++-------- 3 files changed, 21 insertions(+), 11 deletions(-) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm index 03a47675615..750312fc6bf 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm @@ -55,10 +55,17 @@ Difficulty: Medium ..() new/obj/item/device/gps/internal/legion(src) +/mob/living/simple_animal/hostile/megafauna/legion/devour(mob/living/L) + if(ishuman(L)) + var/mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/A = new(loc) + A.infest(L) + else + ..() + /mob/living/simple_animal/hostile/megafauna/legion/OpenFire(the_target) if(world.time >= ranged_cooldown && !charging) if(prob(75)) - var/mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/A = new(src.loc) + var/mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/A = new(loc) A.GiveTarget(target) A.friends = friends A.faction = faction diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm index e93e1435211..e7127c53029 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm @@ -11,7 +11,7 @@ environment_smash = 3 weather_immunities = list("lava","ash") robust_searching = 1 - stat_attack = 1 + stat_attack = 2 atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) minbodytemp = 0 maxbodytemp = INFINITY diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm index 7433759b3f7..055c5c1217c 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm @@ -817,19 +817,22 @@ robust_searching = 1 /mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/Life() - if(isturf(src.loc)) + if(isturf(loc)) for(var/mob/living/carbon/human/H in view(src,1)) //Only for corpse right next to/on same tile if(H.stat == UNCONSCIOUS) - visible_message("[src.name] burrows into the flesh of [H]!") - var/mob/living/simple_animal/hostile/asteroid/hivelord/legion/L = new(H.loc) - visible_message("[L] staggers to their feet!") - H.death() - H.adjustBruteLoss(1000) - L.stored_mob = H - H.forceMove(L) - qdel(src) + infest(H) ..() +/mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/proc/infest(mob/living/carbon/human) + visible_message("[name] burrows into the flesh of [H]!") + var/mob/living/simple_animal/hostile/asteroid/hivelord/legion/L = new(H.loc) + visible_message("[L] staggers to their feet!") + H.death() + H.adjustBruteLoss(1000) + L.stored_mob = H + H.forceMove(L) + qdel(src) + /obj/item/organ/hivelord_core/legion name = "legion's soul" desc = "A strange rock that still crackles with power... its \ From 642013347997cd95b6649da8ee29a227cf062752 Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Fri, 29 Jul 2016 22:44:37 -0400 Subject: [PATCH 021/154] hear --- code/modules/mob/living/simple_animal/hostile/mining_mobs.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm index 055c5c1217c..b725347ac4a 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs.dm @@ -823,7 +823,7 @@ infest(H) ..() -/mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/proc/infest(mob/living/carbon/human) +/mob/living/simple_animal/hostile/asteroid/hivelordbrood/legion/proc/infest(mob/living/carbon/human/H) visible_message("[name] burrows into the flesh of [H]!") var/mob/living/simple_animal/hostile/asteroid/hivelord/legion/L = new(H.loc) visible_message("[L] staggers to their feet!") From e2fc98df20dcec8edd955d3a5aaae8d34cee4de4 Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Fri, 29 Jul 2016 23:14:04 -0400 Subject: [PATCH 022/154] Fixes that one white pixel on bodyparts --- icons/obj/items.dmi | Bin 57940 -> 57933 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/obj/items.dmi b/icons/obj/items.dmi index 8fa90258c6f46a20be89f8d0267d537c163058a2..2d62ed154d49fc798cbb463e116aa19bd3312d64 100644 GIT binary patch delta 1930 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 U8}*TK3?Mu<7ws>U{OnHnANHux`v3p{ From 2cff6b3a83847ab2031ccc4cdbd294dc47408cf7 Mon Sep 17 00:00:00 2001 From: sybil-tgstation13 Date: Sat, 30 Jul 2016 03:24:28 +0000 Subject: [PATCH 023/154] Automatic changelog compile, [ci skip] --- html/changelog.html | 17 ++++++----------- html/changelogs/.all_changelog.yml | 3 +++ html/changelogs/AutoChangeLog-pr-19538.yml | 4 ---- 3 files changed, 9 insertions(+), 15 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-19538.yml diff --git a/html/changelog.html b/html/changelog.html index aa1c2db4ae8..4c2dd2f455f 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -55,6 +55,12 @@ -->
+

30 July 2016

+

astralenigma updated:

+
    +
  • Admins can now turn people into red god.
  • +
+

28 July 2016

Cruix updated:

    @@ -1268,17 +1274,6 @@
    • Chemicals should now have color, instead of just being pink.
    - -

    27 May 2016

    -

    coiax updated:

    -
      -
    • Gatling gun removed from R&D for pressing ceremonial reasons.
    • -
    -

    phil235 updated:

    -
      -
    • Pull and Grab are merged together. Pulling stays unchanged. Using an empty hand with grab intent on a mob will pull them. Using an empty hand with grab intent on a mob that you're already pulling will try to upgrade your grip to aggressive grab>neck grab>kill grab. Aggressive grabs no longer stun you, but they act exactly like a handcuff, preventing you from using your hands until you escape the grip. You can break free from the grip by trying to move or using the resist button.
    • -
    • Someone pulling a restrained mob now swap position with them instead of getting blocked by the mob, unable to even push them.
    • -
GoonStation 13 Development Team diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index a8d4c827c2a..b458232f94e 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -6398,3 +6398,6 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. Warranty void if used in combat. incoming5643: - tweak: viscerator grenades are now more generous with viscerators spawned +2016-07-30: + astralenigma: + - bugfix: Admins can now turn people into red god. diff --git a/html/changelogs/AutoChangeLog-pr-19538.yml b/html/changelogs/AutoChangeLog-pr-19538.yml deleted file mode 100644 index d2871020acd..00000000000 --- a/html/changelogs/AutoChangeLog-pr-19538.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "astralenigma" -delete-after: True -changes: - - bugfix: "Admins can now turn people into red god." From 26343db4e2f64513846d6d537db82cb4f0f2d077 Mon Sep 17 00:00:00 2001 From: tgstation-server Date: Sat, 30 Jul 2016 03:51:30 +0000 Subject: [PATCH 024/154] Automatic changelog generation for PR #19561 [ci skip] --- html/changelogs/AutoChangeLog-pr-19561.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-19561.yml diff --git a/html/changelogs/AutoChangeLog-pr-19561.yml b/html/changelogs/AutoChangeLog-pr-19561.yml new file mode 100644 index 00000000000..61e0a4be339 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-19561.yml @@ -0,0 +1,4 @@ +author: "Bawhoppen" +delete-after: True +changes: + - tweak: "toolboxes fit in backpacks" From a0c9f249361dccf0b54908a1040db38bc650293f Mon Sep 17 00:00:00 2001 From: c0 Date: Sat, 30 Jul 2016 12:28:16 +0300 Subject: [PATCH 025/154] Adds pockets --- code/modules/clothing/spacesuits/hardsuit.dm | 6 +++--- code/modules/clothing/suits/armor.dm | 4 ++-- code/modules/clothing/suits/jobs.dm | 12 ++++++------ code/modules/clothing/suits/labcoat.dm | 2 +- code/modules/clothing/suits/miscellaneous.dm | 10 +++++----- 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index 4df444fa0bc..fbcb89bcff4 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -151,7 +151,7 @@ item_state = "eng_hardsuit" armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 10, bio = 100, rad = 75) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/engine -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket //Atmospherics /obj/item/clothing/head/helmet/space/hardsuit/engine/atmos @@ -197,7 +197,7 @@ max_heat_protection_temperature = FIRE_IMMUNITY_SUIT_MAX_TEMP_PROTECT helmettype = /obj/item/clothing/head/helmet/space/hardsuit/engine/elite jetpack = /obj/item/weapon/tank/jetpack/suit -// pockets = /obj/item/weapon/storage/internal/pocket/big + pockets = /obj/item/weapon/storage/internal/pocket/big //Mining hardsuit @@ -223,7 +223,7 @@ armor = list(melee = 30, bullet = 5, laser = 10, energy = 5, bomb = 50, bio = 100, rad = 50) allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals,/obj/item/weapon/storage/bag/ore,/obj/item/weapon/pickaxe) helmettype = /obj/item/clothing/head/helmet/space/hardsuit/mining -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket //Syndicate hardsuit diff --git a/code/modules/clothing/suits/armor.dm b/code/modules/clothing/suits/armor.dm index b57ec2b4ad9..8e311d9167b 100644 --- a/code/modules/clothing/suits/armor.dm +++ b/code/modules/clothing/suits/armor.dm @@ -36,7 +36,7 @@ armor = list(melee = 30, bullet = 30, laser = 30, energy = 10, bomb = 25, bio = 0, rad = 0) cold_protection = CHEST|GROIN|LEGS|ARMS heat_protection = CHEST|GROIN|LEGS|ARMS -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket strip_delay = 80 /obj/item/clothing/suit/armor/hos/trenchcoat @@ -73,7 +73,7 @@ cold_protection = CHEST|GROIN|LEGS|ARMS heat_protection = CHEST|GROIN|LEGS|ARMS dog_fashion = null -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket /obj/item/clothing/suit/armor/vest/capcarapace name = "captain's carapace" diff --git a/code/modules/clothing/suits/jobs.dm b/code/modules/clothing/suits/jobs.dm index 35042edb026..30eb3b3c64b 100644 --- a/code/modules/clothing/suits/jobs.dm +++ b/code/modules/clothing/suits/jobs.dm @@ -11,7 +11,7 @@ blood_overlay_type = "armor" body_parts_covered = CHEST|GROIN allowed = list(/obj/item/weapon/reagent_containers/spray/plantbgone,/obj/item/device/plant_analyzer,/obj/item/seeds,/obj/item/weapon/reagent_containers/glass/bottle, /obj/item/weapon/reagent_containers/glass/beaker, /obj/item/weapon/cultivator,/obj/item/weapon/reagent_containers/spray/pestspray,/obj/item/weapon/hatchet,/obj/item/weapon/storage/bag/plants) -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket //Captain /obj/item/clothing/suit/captunic @@ -33,7 +33,7 @@ allowed = list(/obj/item/weapon/storage/book/bible, /obj/item/weapon/nullrod, /obj/item/weapon/reagent_containers/food/drinks/bottle/holywater, /obj/item/weapon/storage/fancy/candle_box, /obj/item/candle, /obj/item/weapon/tank/internals/emergency_oxygen) hooded = 1 hoodtype = /obj/item/clothing/head/chaplain_hood -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket /obj/item/clothing/head/chaplain_hood name = "chaplain hood" @@ -52,7 +52,7 @@ body_parts_covered = CHEST|GROIN|LEGS|ARMS|HANDS flags_inv = HIDESHOES|HIDEJUMPSUIT allowed = list(/obj/item/weapon/storage/book/bible, /obj/item/weapon/nullrod, /obj/item/weapon/reagent_containers/food/drinks/bottle/holywater, /obj/item/weapon/storage/fancy/candle_box, /obj/item/candle, /obj/item/weapon/tank/internals/emergency_oxygen) -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket //Chef /obj/item/clothing/suit/toggle/chef @@ -65,7 +65,7 @@ body_parts_covered = CHEST|GROIN|ARMS allowed = list(/obj/item/weapon/kitchen) togglename = "sleeves" -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket //Cook @@ -90,7 +90,7 @@ armor = list(melee = 25, bullet = 10, laser = 25, energy = 10, bomb = 0, bio = 0, rad = 0) cold_protection = CHEST|GROIN|LEGS|ARMS heat_protection = CHEST|GROIN|LEGS|ARMS -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket /obj/item/clothing/suit/det_suit/grey name = "noir trenchcoat" @@ -107,7 +107,7 @@ blood_overlay_type = "armor" allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/device/t_scanner,/obj/item/device/radio) burn_state = FIRE_PROOF -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket //Lawyer /obj/item/clothing/suit/toggle/lawyer diff --git a/code/modules/clothing/suits/labcoat.dm b/code/modules/clothing/suits/labcoat.dm index aa85e571b9e..29708eadebf 100644 --- a/code/modules/clothing/suits/labcoat.dm +++ b/code/modules/clothing/suits/labcoat.dm @@ -8,7 +8,7 @@ allowed = list(/obj/item/device/analyzer,/obj/item/stack/medical,/obj/item/weapon/dnainjector,/obj/item/weapon/reagent_containers/dropper,/obj/item/weapon/reagent_containers/syringe,/obj/item/weapon/reagent_containers/hypospray,/obj/item/device/healthanalyzer,/obj/item/device/flashlight/pen,/obj/item/weapon/reagent_containers/glass/bottle,/obj/item/weapon/reagent_containers/glass/beaker,/obj/item/weapon/reagent_containers/pill,/obj/item/weapon/storage/pill_bottle,/obj/item/weapon/paper,/obj/item/weapon/melee/classic_baton/telescopic,/obj/item/weapon/soap,/obj/item/device/sensor_device,/obj/item/weapon/tank/internals/emergency_oxygen) armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 50, rad = 0) togglename = "buttons" -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket /obj/item/clothing/suit/toggle/labcoat/cmo name = "chief medical officer's labcoat" diff --git a/code/modules/clothing/suits/miscellaneous.dm b/code/modules/clothing/suits/miscellaneous.dm index 862d6d2a645..1cf32dd12bb 100644 --- a/code/modules/clothing/suits/miscellaneous.dm +++ b/code/modules/clothing/suits/miscellaneous.dm @@ -37,7 +37,7 @@ icon_state = "pirate" item_state = "pirate" allowed = list(/obj/item/weapon/melee/energy/sword/pirate, /obj/item/clothing/glasses/eyepatch, /obj/item/weapon/reagent_containers/food/drinks/bottle/rum) -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket /obj/item/clothing/suit/pirate/captain name = "pirate captain coat" @@ -91,7 +91,7 @@ allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/toy) flags_inv = HIDEGLOVES|HIDESHOES|HIDEJUMPSUIT burn_state = FIRE_PROOF -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket /obj/item/clothing/suit/hastur name = "\improper Hastur's robe" @@ -154,7 +154,7 @@ body_parts_covered = CHEST|GROIN|LEGS|ARMS flags_inv = HIDEJUMPSUIT allowed = list(/obj/item/weapon/storage/book/bible, /obj/item/weapon/nullrod, /obj/item/weapon/reagent_containers/food/drinks/bottle/holywater, /obj/item/weapon/storage/fancy/candle_box, /obj/item/candle, /obj/item/weapon/tank/internals/emergency_oxygen) -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket /obj/item/clothing/suit/cardborg @@ -334,7 +334,7 @@ body_parts_covered = CHEST|GROIN|ARMS cold_protection = CHEST|GROIN|ARMS min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket /obj/item/clothing/suit/jacket/leather name = "leather jacket" @@ -422,7 +422,7 @@ armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 10, rad = 0) allowed = list(/obj/item/device/flashlight,/obj/item/weapon/tank/internals/emergency_oxygen,/obj/item/toy,/obj/item/weapon/storage/fancy/cigarettes,/obj/item/weapon/lighter) hooded = 1 -// pockets = /obj/item/weapon/storage/internal/pocket + pockets = /obj/item/weapon/storage/internal/pocket /obj/item/clothing/head/winterhood name = "winter hood" From 29272c92f54fa99de208eb1b9362a4c733709c30 Mon Sep 17 00:00:00 2001 From: oranges Date: Sat, 30 Jul 2016 22:44:02 +1200 Subject: [PATCH 026/154] Revert "listen to me, this is all I really wanted all along" --- code/game/objects/items/weapons/storage/toolbox.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/weapons/storage/toolbox.dm b/code/game/objects/items/weapons/storage/toolbox.dm index 74c2ff969ca..53693b855b3 100644 --- a/code/game/objects/items/weapons/storage/toolbox.dm +++ b/code/game/objects/items/weapons/storage/toolbox.dm @@ -8,7 +8,7 @@ throwforce = 10 throw_speed = 2 throw_range = 7 - w_class = 3 + w_class = 4 materials = list(MAT_METAL = 500) origin_tech = "combat=1;engineering=1" attack_verb = list("robusted") From e230ab19500c93e320770d394fd39c492f4926d9 Mon Sep 17 00:00:00 2001 From: tgstation-server Date: Sat, 30 Jul 2016 10:52:33 +0000 Subject: [PATCH 027/154] Automatic changelog generation for PR #19535 [ci skip] --- html/changelogs/AutoChangeLog-pr-19535.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-19535.yml diff --git a/html/changelogs/AutoChangeLog-pr-19535.yml b/html/changelogs/AutoChangeLog-pr-19535.yml new file mode 100644 index 00000000000..6171ba0a3f3 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-19535.yml @@ -0,0 +1,4 @@ +author: "Gun Hog" +delete-after: True +changes: + - rscadd: "In an effort to reduce the demoralizing effects that accompany the death of a crew member, Nanotrasen has provided the prototype designs for the Sad Trombone implant. It can be fabricated at your station's protolathe, if you manage to secure the ever elusive Bananium ore." From 73d3900b0c86e6d3eec186a1bbe4ca103e32d237 Mon Sep 17 00:00:00 2001 From: tgstation-server Date: Sat, 30 Jul 2016 10:53:10 +0000 Subject: [PATCH 028/154] Automatic changelog generation for PR #19554 [ci skip] --- html/changelogs/AutoChangeLog-pr-19554.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-19554.yml diff --git a/html/changelogs/AutoChangeLog-pr-19554.yml b/html/changelogs/AutoChangeLog-pr-19554.yml new file mode 100644 index 00000000000..6612850ff4c --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-19554.yml @@ -0,0 +1,4 @@ +author: "Kor" +delete-after: True +changes: + - rscadd: "Hostile mobs will now attack turrets." From 60b32ddd858dec006d23efad7458bd7d41f62483 Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Sat, 30 Jul 2016 09:14:53 -0400 Subject: [PATCH 029/154] Simple animals can now have a set amount of damage to deal to objects in place of normal melee damage --- code/game/gamemodes/blob/blobs/blob_mobs.dm | 1 + code/game/gamemodes/clock_cult/clock_structures.dm | 7 +++++-- code/game/gamemodes/handofgod/structures.dm | 7 +++++-- code/game/gamemodes/miniantags/bot_swarm/swarmer.dm | 4 +++- code/game/machinery/deployable.dm | 7 +++++-- code/game/machinery/machinery.dm | 7 +++++-- code/game/mecha/mecha_defense.dm | 4 +++- code/game/objects/items/weapons/holosign_creator.dm | 2 +- code/game/objects/structures/aliens.dm | 7 +++++-- code/game/objects/structures/displaycase.dm | 8 ++++++-- code/game/objects/structures/fireaxe.dm | 7 +++++-- code/game/objects/structures/grille.dm | 7 +++++-- code/game/objects/structures/mirror.dm | 2 +- code/game/objects/structures/tables_racks.dm | 11 ++++++++--- code/game/objects/structures/window.dm | 7 +++++-- .../simple_animal/hostile/megafauna/megafauna.dm | 1 + .../modules/mob/living/simple_animal/simple_animal.dm | 1 + 17 files changed, 65 insertions(+), 25 deletions(-) diff --git a/code/game/gamemodes/blob/blobs/blob_mobs.dm b/code/game/gamemodes/blob/blobs/blob_mobs.dm index 4c93d11e57b..b478f909ee2 100644 --- a/code/game/gamemodes/blob/blobs/blob_mobs.dm +++ b/code/game/gamemodes/blob/blobs/blob_mobs.dm @@ -202,6 +202,7 @@ next_move_modifier = 1.5 //slow-ass attack speed, 3 times higher than how fast the blob can attack melee_damage_lower = 20 melee_damage_upper = 20 + obj_damage = 20 attacktext = "slams" attack_sound = 'sound/effects/blobattack.ogg' verb_say = "gurgles" diff --git a/code/game/gamemodes/clock_cult/clock_structures.dm b/code/game/gamemodes/clock_cult/clock_structures.dm index 148343346cb..df1aede8186 100644 --- a/code/game/gamemodes/clock_cult/clock_structures.dm +++ b/code/game/gamemodes/clock_cult/clock_structures.dm @@ -120,10 +120,13 @@ attack_generic(user, 15) /obj/structure/clockwork/attack_animal(mob/living/simple_animal/M) - if(!M.melee_damage_upper) + if(!M.melee_damage_upper && !M.obj_damage) return playsound(src, 'sound/weapons/Genhit.ogg', 50, 1) - attack_generic(M, M.melee_damage_upper, M.melee_damage_type) + if(M.obj_damage) + attack_generic(M, M.obj_damage, M.melee_damage_type) + else + attack_generic(M, M.melee_damage_upper, M.melee_damage_type) /obj/structure/clockwork/attack_slime(mob/living/simple_animal/slime/user) if(!user.is_adult) diff --git a/code/game/gamemodes/handofgod/structures.dm b/code/game/gamemodes/handofgod/structures.dm index 2e85511d805..79d6615d06b 100644 --- a/code/game/gamemodes/handofgod/structures.dm +++ b/code/game/gamemodes/handofgod/structures.dm @@ -106,10 +106,13 @@ /obj/machinery/attack_animal(mob/living/simple_animal/M) M.changeNext_move(CLICK_CD_MELEE) M.do_attack_animation(src) - if(M.melee_damage_upper > 0) + if(M.melee_damage_upper > 0 || M.obj_damage) M.visible_message("[M.name] smashes against \the [src.name].",\ "You smash against the [src.name].") - take_damage(rand(M.melee_damage_lower,M.melee_damage_upper), M.melee_damage_type, 1) + if(M.obj_damage) + take_damage(M.obj_damage, M.melee_damage_type, 1) + else + take_damage(rand(M.melee_damage_lower,M.melee_damage_upper), M.melee_damage_type, 1) /obj/structure/divine/proc/assign_deity(mob/camera/god/new_deity, alert_old_deity = TRUE) diff --git a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm index eaeac6f604d..1e67bb66c65 100644 --- a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm +++ b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm @@ -462,7 +462,9 @@ /obj/effect/swarmer/destructible/attack_animal(mob/living/simple_animal/S) S.do_attack_animation(src) S.changeNext_move(CLICK_CD_MELEE) - if(S.melee_damage_upper) + if(S.obj_damage) + take_damage(S.obj_damage, S.melee_damage_type, 1) + else if(S.melee_damage_upper) take_damage(rand(S.melee_damage_lower, S.melee_damage_upper), S.melee_damage_type) /mob/living/simple_animal/hostile/swarmer/proc/CreateTrap() diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index e3388b227f0..2966f0b19a0 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -45,11 +45,14 @@ /obj/structure/barricade/attack_animal(mob/living/simple_animal/M) M.changeNext_move(CLICK_CD_MELEE) M.do_attack_animation(src) - if(M.melee_damage_upper == 0 || (M.melee_damage_type != BRUTE && M.melee_damage_type != BURN)) + if(!M.melee_damage_upper && !M.obj_damage || (M.melee_damage_type != BRUTE && M.melee_damage_type != BURN)) return visible_message("[M] [M.attacktext] [src]!") add_logs(M, src, "attacked") - take_damage(M.melee_damage_upper) + if(M.obj_damage) + take_damage(M.obj_damage) + else + take_damage(M.melee_damage_upper) /obj/structure/barricade/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weapon/weldingtool) && user.a_intent != "harm" && material == METAL) diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index ae8e248240f..df69996667d 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -276,10 +276,13 @@ Class Procs: /obj/machinery/attack_animal(mob/living/simple_animal/M) M.changeNext_move(CLICK_CD_MELEE) M.do_attack_animation(src) - if(M.melee_damage_upper > 0) + if(M.melee_damage_upper || M.obj_damage) M.visible_message("[M.name] smashes against \the [src.name].",\ "You smash against the [src.name].") - take_damage(M.melee_damage_upper, M.melee_damage_type, 1) + if(M.obj_damage) + take_damage(M.obj_damage, M.melee_damage_type, 1) + else + take_damage(rand(M.melee_damage_lower,M.melee_damage_upper), M.melee_damage_type, 1) /obj/machinery/attack_paw(mob/living/user) diff --git a/code/game/mecha/mecha_defense.dm b/code/game/mecha/mecha_defense.dm index c5660af67e7..7043e0bf508 100644 --- a/code/game/mecha/mecha_defense.dm +++ b/code/game/mecha/mecha_defense.dm @@ -76,11 +76,13 @@ /obj/mecha/attack_animal(mob/living/simple_animal/user as mob) log_message("Attack by simple animal. Attacker - [user].",1) user.changeNext_move(CLICK_CD_MELEE) - if(user.melee_damage_upper == 0) + if(!user.melee_damage_upper && !user.obj_damage) user.emote("[user.friendly] [src]") else user.do_attack_animation(src) var/damage = rand(user.melee_damage_lower, user.melee_damage_upper) + if(user.obj_damage) + damage = user.obj_damage take_directional_damage(damage, "brute", get_dir(src, user)) check_for_internal_damage(list(MECHA_INT_TEMP_CONTROL,MECHA_INT_TANK_BREACH,MECHA_INT_CONTROL_LOST)) visible_message("[user] [user.attacktext] [src]!") diff --git a/code/game/objects/items/weapons/holosign_creator.dm b/code/game/objects/items/weapons/holosign_creator.dm index 854055af4ee..b62cfd8faf3 100644 --- a/code/game/objects/items/weapons/holosign_creator.dm +++ b/code/game/objects/items/weapons/holosign_creator.dm @@ -140,7 +140,7 @@ qdel(src) /obj/effect/overlay/holograph/attack_animal(mob/living/simple_animal/M) - if(!M.melee_damage_upper) + if(!M.melee_damage_upper && !M.obj_damage) return attack_generic(5, M) diff --git a/code/game/objects/structures/aliens.dm b/code/game/objects/structures/aliens.dm index 2b25f5dfb22..1a74946f921 100644 --- a/code/game/objects/structures/aliens.dm +++ b/code/game/objects/structures/aliens.dm @@ -150,10 +150,13 @@ /obj/structure/alien/resin/attack_animal(mob/living/simple_animal/M) M.changeNext_move(CLICK_CD_MELEE) M.do_attack_animation(src) - if(!M.melee_damage_upper) + if(!M.melee_damage_upper && !M.obj_damage) return visible_message("[M] [M.attacktext] [src]!") - take_damage(M.melee_damage_upper, M.melee_damage_type) + if(M.obj_damage) + take_damage(M.obj_damage, M.melee_damage_type) + else + take_damage(rand(M.melee_damage_lower,M.melee_damage_upper), M.melee_damage_type) /obj/structure/alien/resin/CanPass(atom/movable/mover, turf/target, height=0) return !density diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm index 13b32581dba..0dd4998ac3e 100644 --- a/code/game/objects/structures/displaycase.dm +++ b/code/game/objects/structures/displaycase.dm @@ -177,10 +177,14 @@ /obj/structure/displaycase/attack_animal(mob/living/simple_animal/M) M.changeNext_move(CLICK_CD_MELEE) M.do_attack_animation(src) - if(M.melee_damage_upper > 0) + if(M.melee_damage_upper || M.obj_damage) M.visible_message("[M.name] smashes against \the [src.name].",\ "You smash against the [src.name].") - take_damage(M.melee_damage_upper, M.melee_damage_type, 1) + if(M.obj_damage) + take_damage(M.obj_damage, M.melee_damage_type, 1) + else + take_damage(rand(M.melee_damage_lower,M.melee_damage_upper), M.melee_damage_type, 1) + /obj/structure/displaycase/attack_hand(mob/user) user.changeNext_move(CLICK_CD_MELEE) diff --git a/code/game/objects/structures/fireaxe.dm b/code/game/objects/structures/fireaxe.dm index 0c2d8b52c22..a7b1172c922 100644 --- a/code/game/objects/structures/fireaxe.dm +++ b/code/game/objects/structures/fireaxe.dm @@ -112,11 +112,14 @@ take_damage(20) /obj/structure/fireaxecabinet/attack_animal(mob/living/simple_animal/M) - if(!M.melee_damage_upper) + if(!M.melee_damage_upper && !M.obj_damage) return M.visible_message("[M] smashes against [src].", \ "You smash against [src].") - take_damage(M.melee_damage_upper, M.melee_damage_type) + if(M.obj_damage) + take_damage(M.obj_damage, M.melee_damage_type) + else + take_damage(rand(M.melee_damage_lower,M.melee_damage_upper), M.melee_damage_type) /obj/structure/fireaxecabinet/attack_ai(mob/user) toggle_lock(user) diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index fedae0ed7d6..a3f753c6de1 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -79,13 +79,16 @@ /obj/structure/grille/attack_animal(var/mob/living/simple_animal/M) M.changeNext_move(CLICK_CD_MELEE) - if(M.melee_damage_upper == 0 || (M.melee_damage_type != BRUTE && M.melee_damage_type != BURN)) + if(!M.melee_damage_upper && !M.obj_damage || (M.melee_damage_type != BRUTE && M.melee_damage_type != BURN)) return M.do_attack_animation(src) M.visible_message("[M] smashes against [src].", \ "You smash against [src].", \ "You hear twisting metal.") - take_damage(M.melee_damage_upper, M.melee_damage_type) + if(M.obj_damage) + take_damage(M.obj_damage, M.melee_damage_type) + else + take_damage(rand(M.melee_damage_lower,M.melee_damage_upper), M.melee_damage_type) /obj/structure/grille/mech_melee_attack(obj/mecha/M) diff --git a/code/game/objects/structures/mirror.dm b/code/game/objects/structures/mirror.dm index 2cf60ac8808..f6c5c6691d4 100644 --- a/code/game/objects/structures/mirror.dm +++ b/code/game/objects/structures/mirror.dm @@ -110,7 +110,7 @@ attack_generic(user) /obj/structure/mirror/attack_animal(mob/living/simple_animal/M) - if(M.melee_damage_upper <= 0) + if(!M.melee_damage_upper && !M.obj_damage) return attack_generic(M) diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index cf81ba3b64d..4d8bb9c3702 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -81,8 +81,10 @@ /obj/structure/table/attack_animal(mob/living/simple_animal/user) user.changeNext_move(CLICK_CD_MELEE) user.do_attack_animation(src) - if(user.melee_damage_upper) + if(user.melee_damage_upper || user.obj_damage) var/dmg_dealt = user.melee_damage_upper + if(user.obj_damage) + dmg_dealt = user.obj_damage if(user.environment_smash) dmg_dealt = 100 visible_message("[user] smashes [src]!") @@ -536,13 +538,16 @@ /obj/structure/rack/attack_animal(mob/living/simple_animal/user) user.changeNext_move(CLICK_CD_MELEE) user.do_attack_animation(src) - if(user.melee_damage_upper) + if(user.melee_damage_upper || user.obj_damage) + var/dmg_dealt = user.melee_damage_upper + if(user.obj_damage) + dmg_dealt = user.obj_damage if(user.environment_smash) playsound(src, 'sound/effects/meteorimpact.ogg', 100, 1) visible_message("[user] smashes [src] apart.") rack_destroy() else - take_damage(user.melee_damage_upper, user.melee_damage_type) + take_damage(dmg_dealt, user.melee_damage_type) /obj/structure/rack/attack_tk() // no telehulk sorry diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 4e8a4eb86df..8c89c8f8a0b 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -157,9 +157,12 @@ attack_generic(user, 15) /obj/structure/window/attack_animal(mob/living/simple_animal/M) - if(!M.melee_damage_upper) + if(!M.melee_damage_upper && !M.obj_damage) return - attack_generic(M, M.melee_damage_upper, M.melee_damage_type) + if(M.obj_damage) + attack_generic(M, M.obj_damage, M.melee_damage_type) + else + attack_generic(M, M.melee_damage_upper, M.melee_damage_type) /obj/structure/window/attack_slime(mob/living/simple_animal/slime/user) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm index e93e1435211..e9ad1571a6f 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm @@ -9,6 +9,7 @@ a_intent = "harm" sentience_type = SENTIENCE_BOSS environment_smash = 3 + obj_damage = 75 weather_immunities = list("lava","ash") robust_searching = 1 stat_attack = 1 diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index c772dbef96e..abc97e1c958 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -43,6 +43,7 @@ //LETTING SIMPLE ANIMALS ATTACK? WHAT COULD GO WRONG. Defaults to zero so Ian can still be cuddly var/melee_damage_lower = 0 var/melee_damage_upper = 0 + var/obj_damage = 0 //how much damage this simple animal does to objects, if any var/armour_penetration = 0 //How much armour they ignore, as a flat reduction from the targets armour value var/melee_damage_type = BRUTE //Damage type of a simple mob's melee attack, should it do damage. var/list/damage_coeff = list(BRUTE = 1, BURN = 1, TOX = 1, CLONE = 1, STAMINA = 0, OXY = 1) // 1 for full damage , 0 for none , -1 for 1:1 heal from that source From 13d615a6d62c52928c9e80b416809d4ca8a13811 Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Sat, 30 Jul 2016 09:20:45 -0400 Subject: [PATCH 030/154] Megafauna are no longer less lethal in melee --- .../mob/living/simple_animal/hostile/megafauna/megafauna.dm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm index e93e1435211..dbe8c66c7ef 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/megafauna.dm @@ -43,6 +43,11 @@ else ..() +/mob/living/simple_animal/hostile/megafauna/AttackingTarget() + ..() + if(ranged && prob(50)) + OpenFire() + /mob/living/simple_animal/hostile/megafauna/onShuttleMove() var/turf/oldloc = loc . = ..() From 1d360180efc05be701b524d4139f896d4472d31c Mon Sep 17 00:00:00 2001 From: NikNakFlak Date: Sat, 30 Jul 2016 06:58:13 -0700 Subject: [PATCH 031/154] FixesBAWHOPPENSFUCKUP --- .../turfs/simulated/floor/mineral_floor.dm | 12 ++++++------ icons/turf/floors.dmi | Bin 395642 -> 393080 bytes 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/code/game/turfs/simulated/floor/mineral_floor.dm b/code/game/turfs/simulated/floor/mineral_floor.dm index a6d796e2414..70c49521b35 100644 --- a/code/game/turfs/simulated/floor/mineral_floor.dm +++ b/code/game/turfs/simulated/floor/mineral_floor.dm @@ -74,12 +74,6 @@ //TITANIUM (shuttle) -/turf/open/floor/mineral/titanium - name = "shuttle floor" - icon_state = "shuttlefloor3" - floor_tile = /obj/item/stack/tile/mineral/titanium - icons = list("shuttlefloor3","shuttlefloor3_dam") - /turf/open/floor/mineral/titanium/blue icon_state = "shuttlefloor" icons = list("shuttlefloor","shuttlefloor_dam") @@ -88,6 +82,12 @@ icon_state = "shuttlefloor2" icons = list("shuttlefloor2","shuttlefloor2_dam") +/turf/open/floor/mineral/titanium + name = "shuttle floor" + icon_state = "shuttlefloor3" + floor_tile = /obj/item/stack/tile/mineral/titanium + icons = list("shuttlefloor3","shuttlefloor3_dam") + /turf/open/floor/mineral/titanium/purple icon_state = "shuttlefloor5" icons = list("shuttlefloor5","shuttlefloor5_dam") diff --git a/icons/turf/floors.dmi b/icons/turf/floors.dmi index 4de812785b1d4be604e225666c047e066e6c2beb..f6b8fdb5f35f9cdd2c0495baa4161b5449827ae7 100644 GIT binary patch delta 48548 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

+pQ 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 Date: Sat, 30 Jul 2016 10:36:50 -0400 Subject: [PATCH 032/154] HUDs no longer adjust in size with their atom's transform --- code/modules/mob/mob.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 6977e73153f..84ec266f47d 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -28,7 +28,7 @@ var/next_mob_id = 0 hud_list = list() for(var/hud in hud_possible) var/image/I = image('icons/mob/hud.dmi', src, "") - I.appearance_flags = RESET_COLOR + I.appearance_flags = RESET_COLOR|RESET_TRANSFORM hud_list[hud] = I /mob/proc/Cell() From bcfe0be2d0a43f458843f2ecf219a5d4387a9f9a Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Sat, 30 Jul 2016 13:18:12 -0400 Subject: [PATCH 033/154] Potted plants now layer properly (#19546) * Potted plants now slow you down slightly * we manage to pull her away * no message --- code/game/objects/structures/flora.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/game/objects/structures/flora.dm b/code/game/objects/structures/flora.dm index daac9933bd8..48192946ac6 100644 --- a/code/game/objects/structures/flora.dm +++ b/code/game/objects/structures/flora.dm @@ -228,6 +228,7 @@ name = "potted plant" icon = 'icons/obj/flora/plants.dmi' icon_state = "plant-01" + layer = ABOVE_MOB_LAYER w_class = 5 force = 10 throwforce = 13 From b7c3815023af21d60d9b79acf492a9c7c0415bc4 Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Sat, 30 Jul 2016 16:07:09 -0400 Subject: [PATCH 034/154] Bubblegum's blood spray and Drake fire breath now stop on solid turfs --- .../mob/living/simple_animal/hostile/megafauna/bubblegum.dm | 4 ++-- .../mob/living/simple_animal/hostile/megafauna/dragon.dm | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm index db3fb4e07bb..72d78d1a468 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm @@ -174,8 +174,8 @@ Difficulty: Hard spawn(0) var/turf/E = get_edge_target_turf(src, src.dir) var/range = 10 - for(var/turf/open/J in getline(src,E)) - if(!range) + for(var/turf/J in getline(src,E)) + if(!range || J.density) break playsound(J,'sound/effects/splat.ogg', 100, 1, -1) new /obj/effect/decal/cleanable/blood(J) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm index a8b8f8ad6ef..e29d58dabf5 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/dragon.dm @@ -177,8 +177,8 @@ Difficulty: Medium /mob/living/simple_animal/hostile/megafauna/dragon/proc/fire_wall(d) var/turf/E = get_edge_target_turf(src, d) var/range = 10 - for(var/turf/open/J in getline(src,E)) - if(!range) + for(var/turf/J in getline(src,E)) + if(!range || J.density) break range-- PoolOrNew(/obj/effect/hotspot,J) From b01460c2bfff1459e5f4c192143c5767ed648924 Mon Sep 17 00:00:00 2001 From: ma44 Date: Sat, 30 Jul 2016 19:35:05 -0500 Subject: [PATCH 035/154] Update hydroponics.dm (#19575) --- code/modules/hydroponics/hydroponics.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/hydroponics/hydroponics.dm b/code/modules/hydroponics/hydroponics.dm index 1f63b52ed03..bf371ea0e09 100644 --- a/code/modules/hydroponics/hydroponics.dm +++ b/code/modules/hydroponics/hydroponics.dm @@ -619,7 +619,7 @@ adjustHealth(round(salt * 0.25)) if (myseed) myseed.adjust_production(-round(salt/100)-prob(salt%100)) - myseed.adjust_potency(round(salt*0.15)) + myseed.adjust_potency(round(salt*0.30)) // Ash is also used IRL in gardening, as a fertilizer enhancer and weed killer if(S.has_reagent("ash", 1)) adjustHealth(round(S.get_reagent_amount("ash") * 0.25)) From 7111c4391f59c30d6f95a24171b8596040213aae Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Sat, 30 Jul 2016 20:14:51 -0500 Subject: [PATCH 036/154] Adds disguting tumours to meta and box, lets RD and engineering build in those tumours --- _maps/map_files/MetaStation/MetaStation.dmm | 2354 +++++++++-------- _maps/map_files/TgStation/tgstation.2.1.3.dmm | 1929 +++++++------- code/game/area/Space_Station_13_areas.dm | 4 + code/modules/mining/mine_items.dm | 70 +- 4 files changed, 2228 insertions(+), 2129 deletions(-) diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 0b7a3184c44..ab00758cc74 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -77590,9 +77590,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/turf/open/floor/plasteel/warning/corner{ - dir = 2 - }, +/turf/open/floor/plasteel/floorgrime, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -78688,9 +78686,7 @@ name = "\improper Toxins Lab" }) "cER" = ( -/turf/open/floor/plasteel/warning/corner{ - dir = 8 - }, +/turf/open/floor/plasteel/floorgrime, /area/toxins/mixing{ name = "\improper Toxins Lab" }) @@ -87073,12 +87069,13 @@ name = "\improper Toxins Lab" }) "cSM" = ( +/obj/structure/lattice/catwalk, /obj/structure/cable{ d1 = 1; - d2 = 4; - icon_state = "1-4" + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 }, -/obj/structure/lattice/catwalk, /turf/open/space, /area/solar/starboard) "cSN" = ( @@ -90435,17 +90432,16 @@ /turf/open/floor/plating, /area/shuttle/supply) "cZb" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall15"; - dir = 2 +/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ + dir = 4 }, -/area/shuttle/supply) +/turf/open/floor/plasteel/floorgrime, +/area/toxins/mixing{ + name = "\improper Toxins Lab" + }) "cZc" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall_s9"; - dir = 2 - }, -/area/shuttle/supply) +/turf/closed/wall, +/area/mining_construction) "cZd" = ( /obj/structure/shuttle/engine/propulsion, /turf/open/floor/plating, @@ -90535,21 +90531,12 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/transport) "cZs" = ( -/turf/open/floor/plasteel/shuttle, -/turf/closed/wall/shuttle/interior{ - icon_state = "swall_f10" - }, -/area/shuttle/transport) +/obj/machinery/door/airlock/research, +/turf/open/floor/plasteel, +/area/mining_construction) "cZt" = ( -/obj/structure/shuttle/engine/propulsion{ - icon_state = "propulsion"; - dir = 4 - }, -/turf/closed/wall/shuttle{ - icon_state = "swall_s5"; - dir = 2 - }, -/area/shuttle/transport) +/turf/open/floor/plasteel, +/area/mining_construction) "cZu" = ( /obj/structure/closet/crate, /turf/open/floor/mineral/titanium/blue, @@ -90561,20 +90548,24 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/transport) "cZw" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall_s9"; - dir = 2 +/turf/open/floor/plasteel/warning{ + dir = 4 }, -/area/shuttle/transport) +/area/mining_construction) "cZx" = ( -/turf/closed/wall/mineral/titanium/overspace, -/area/shuttle/abandoned) +/turf/open/floor/plating, +/area/shuttle/auxillary_base) "cZy" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall12"; - dir = 2 +/obj/machinery/button/door{ + id = "mining_base"; + name = "blast doors"; + pixel_x = 4; + pixel_y = 28 }, -/area/shuttle/abandoned) +/turf/open/floor/plasteel/warning{ + dir = 8 + }, +/area/mining_construction) "cZz" = ( /turf/closed/wall/mineral/titanium, /area/shuttle/abandoned) @@ -90584,8 +90575,11 @@ /turf/open/floor/plating, /area/shuttle/abandoned) "cZB" = ( -/turf/closed/wall/mineral/titanium/nodiagonal, -/area/shuttle/abandoned) +/obj/machinery/door/poddoor{ + id = "mining_base" + }, +/turf/open/floor/plating, +/area/mining_construction) "cZC" = ( /obj/machinery/door/airlock/shuttle{ name = "recovery shuttle external airlock" @@ -90613,23 +90607,23 @@ }, /area/atmos) "cZE" = ( -/turf/closed/wall/shuttle{ - icon_state = "swallc2"; - dir = 2 +/obj/machinery/light{ + dir = 8 }, -/area/shuttle/abandoned) +/turf/open/floor/plasteel, +/area/mining_construction) "cZF" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall_s10"; - dir = 2 +/turf/open/floor/plasteel/warning{ + dir = 8 }, -/area/shuttle/abandoned) +/area/mining_construction) "cZG" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall13"; - dir = 2 +/obj/machinery/door/airlock/engineering{ + name = "Construction Area"; + req_access_txt = "32" }, -/area/shuttle/abandoned) +/turf/open/floor/plasteel, +/area/mining_construction) "cZH" = ( /obj/structure/shuttle/engine/propulsion{ icon_state = "propulsion_l"; @@ -90651,17 +90645,15 @@ /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "cZJ" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall11"; - dir = 2 +/turf/open/floor/plating/warnplate{ + dir = 9 }, -/area/shuttle/abandoned) +/area/shuttle/auxillary_base) "cZK" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall3"; - dir = 2 +/turf/open/floor/plating/warnplate{ + dir = 1 }, -/area/shuttle/abandoned) +/area/shuttle/auxillary_base) "cZL" = ( /obj/structure/mirror{ pixel_x = 28; @@ -90874,17 +90866,14 @@ /turf/open/floor/plating/airless, /area/shuttle/abandoned) "daa" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall8"; - dir = 2 +/turf/open/floor/plating/warnplate{ + dir = 5 }, -/area/shuttle/abandoned) +/area/shuttle/auxillary_base) "dab" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall7"; - dir = 2 - }, -/area/shuttle/abandoned) +/obj/machinery/computer/shuttle/mining, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) "dac" = ( /obj/machinery/door/airlock/shuttle{ name = "bathroom" @@ -91113,10 +91102,10 @@ /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "dau" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall2" +/turf/open/floor/plating/warnplate{ + dir = 8 }, -/area/shuttle/abandoned) +/area/shuttle/auxillary_base) "dav" = ( /obj/machinery/portable_atmospherics/canister/oxygen, /obj/effect/decal/cleanable/dirt{ @@ -91150,11 +91139,10 @@ /turf/open/floor/plasteel/bot, /area/shuttle/abandoned) "daz" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall1"; - dir = 2 +/turf/open/floor/plating/warnplate{ + dir = 4 }, -/area/shuttle/abandoned) +/area/shuttle/auxillary_base) "daA" = ( /obj/machinery/door/airlock/shuttle{ name = "bathroom" @@ -91190,17 +91178,25 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "daD" = ( -/turf/closed/wall/shuttle{ - icon_state = "swallc4"; - dir = 2 +/obj/docking_port/stationary{ + area_type = /area/shuttle/auxillary_base; + dir = 8; + dwidth = 3; + height = 5; + id = "mining_base"; + name = "auxillary mining base"; + turf_type = /turf/open/floor/plating; + width = 7 }, -/area/shuttle/abandoned) +/turf/open/floor/plating/warnplate{ + dir = 4 + }, +/area/shuttle/auxillary_base) "daE" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall4"; - dir = 2 - }, -/area/shuttle/abandoned) +/obj/item/device/assault_pod/mining, +/obj/structure/table, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) "daF" = ( /obj/machinery/door/airlock/shuttle{ name = "recovery shuttle interior airlock" @@ -91216,11 +91212,9 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "daG" = ( -/turf/closed/wall/shuttle{ - icon_state = "swallc3"; - dir = 2 - }, -/area/shuttle/abandoned) +/obj/machinery/computer/shuttle/auxillary_base, +/turf/closed/wall, +/area/shuttle/auxillary_base) "daH" = ( /obj/machinery/door/airlock/shuttle{ name = "cargo bay" @@ -91666,11 +91660,10 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "dby" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall_s5"; - dir = 2 +/turf/open/floor/plating/warnplate{ + dir = 10 }, -/area/shuttle/abandoned) +/area/shuttle/auxillary_base) "dbz" = ( /obj/machinery/vending/snack{ pixel_x = -1; @@ -91772,11 +91765,8 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/abandoned) "dbL" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall_s9"; - dir = 2 - }, -/area/shuttle/abandoned) +/turf/open/floor/plating/warnplate, +/area/shuttle/auxillary_base) "dbM" = ( /obj/item/weapon/storage/bag/plants/portaseeder, /obj/structure/table, @@ -92215,22 +92205,29 @@ /turf/open/floor/mineral/titanium, /area/shuttle/abandoned) "dcy" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall7"; - dir = 2 +/turf/open/floor/plating/warnplate{ + dir = 6 }, -/area/shuttle/escape) +/area/shuttle/auxillary_base) "dcz" = ( /obj/structure/grille, /obj/structure/window/shuttle, /turf/open/floor/plating, /area/shuttle/escape) "dcA" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall12"; - dir = 2 +/obj/structure/cable{ + icon_state = "0-2"; + pixel_y = 1; + d2 = 2 }, -/area/shuttle/escape) +/obj/machinery/power/apc{ + dir = 8; + name = "Base Construction APC"; + pixel_x = -25; + pixel_y = 3 + }, +/turf/open/floor/plasteel, +/area/mining_construction) "dcB" = ( /obj/machinery/door/airlock/shuttle{ name = "Emergency Shuttle Airlock" @@ -92263,17 +92260,25 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "dcE" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall8"; - dir = 2 +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 }, -/area/shuttle/escape) +/turf/open/floor/plasteel, +/area/mining_construction) "dcF" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall3"; - dir = 2 +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0; + tag = "" }, -/area/shuttle/escape) +/turf/open/space, +/area/solar/starboard) "dcG" = ( /obj/structure/tank_dispenser/oxygen{ layer = 2.7; @@ -92367,17 +92372,27 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "dcJ" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall4"; - dir = 2 +/obj/machinery/door/airlock/engineering{ + name = "Construction Area"; + req_access_txt = "32" }, -/area/shuttle/escape) +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0; + tag = "" + }, +/turf/open/floor/plating, +/area/mining_construction) "dcK" = ( -/obj/structure/sign/bluecross_2, -/turf/closed/wall/shuttle{ - icon_state = "swall2" +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" }, -/area/shuttle/escape) +/turf/open/floor/plasteel, +/area/mining_construction) "dcL" = ( /obj/structure/table, /obj/item/stack/medical/gauze, @@ -92532,20 +92547,17 @@ /turf/closed/wall/mineral/titanium, /area/shuttle/escape) "ddc" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall1" - }, -/area/shuttle/escape) +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/mining_construction) "ddd" = ( /obj/structure/sign/nosmoking_2, /turf/closed/wall/mineral/titanium, /area/shuttle/escape) "dde" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall_s10"; - dir = 2 - }, -/area/shuttle/escape) +/obj/docking_port/mobile/auxillary_base, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) "ddf" = ( /obj/structure/chair, /turf/open/floor/mineral/titanium, @@ -92602,11 +92614,10 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "ddn" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall11"; - dir = 2 +/turf/open/floor/plasteel/warning{ + dir = 1 }, -/area/shuttle/escape) +/area/mining_construction) "ddo" = ( /obj/structure/sign/bluecross_2, /turf/closed/wall/mineral/titanium, @@ -92815,11 +92826,8 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "ddO" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall15"; - dir = 2 - }, -/area/shuttle/escape) +/turf/open/floor/plating, +/area/space) "ddP" = ( /obj/structure/table, /obj/item/weapon/restraints/handcuffs{ @@ -92959,10 +92967,14 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/escape) "dem" = ( -/turf/closed/wall/shuttle{ - icon_state = "diagonalWall3" +/obj/structure/lattice/catwalk, +/obj/structure/cable{ + d1 = 1; + d2 = 4; + icon_state = "1-4" }, -/area/shuttle/escape) +/turf/open/space, +/area/solar/starboard) "den" = ( /obj/structure/table, /obj/item/weapon/folder/red{ @@ -127806,19 +127818,8 @@ bVE aaf aaf aaf -aaf -aaf aaa aaa -aaf -aaa -aaa -aaf -aaf -aaf -aaa -aaf -aaf aaa aaa aaf @@ -127836,11 +127837,22 @@ aaa aaa aaa aaa +aaf +aaf aaa aaa +aaf aaa aaa +aaf +aaf +aaf aaa +aaf +aaf +aaa +aaa +aaf aaa aaa aaa @@ -128063,6 +128075,25 @@ bVE aaa aaf aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aaf aaf aai @@ -128111,25 +128142,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (135,1,1) = {" aaa @@ -128320,6 +128332,25 @@ aaa aaa aaf aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaf +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aqJ aaa aaa @@ -128368,25 +128399,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (136,1,1) = {" aaa @@ -128577,6 +128589,25 @@ aaf aaf aaf aaf +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aob aaf cUr @@ -128625,25 +128656,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (137,1,1) = {" aaa @@ -128813,7 +128825,7 @@ czX bZQ bVE cCW -cDR +cZb cER bVE cce @@ -128834,6 +128846,25 @@ aaa aaa aaa aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaf +aaf +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa +aaa aqJ aaa cUr @@ -128882,25 +128913,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (138,1,1) = {" aaa @@ -129068,12 +129080,12 @@ bVE bVE ciY cfy -cBP -cCX -cDS -cAK -cBP -cBP +bVE +bVE +cZb +cER +bVE +bVE cHG cgG cQO @@ -129090,7 +129102,26 @@ cQn cRP cRP cSM -aaa +cSM +cSM +cSM +cSM +cSM +cSM +cSM +cSM +cSM +cSM +cSM +cSM +cSM +cSM +cSM +cSM +cSM +cSM +cSM +dem aaf aaf cUr @@ -129116,25 +129147,6 @@ aaa aaa aaa aaa -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa aaa aaa aaa @@ -129325,12 +129337,12 @@ cyn cKw czY bVE -cBP -cSV -cDT -cES -cFC -cBP +bZQ +bVE +cZb +cER +bVE +bZQ bVE bVE bVE @@ -129345,9 +129357,28 @@ cQm cQm cQm aaa +aaf +aaf +aaf +aaf aaa -cSN aaa +dcF +aaf +aaa +aaf +aaa +aaa +aaa +aaa +aaf +aaa +aaa +aaa +aaa +aaf +aaf +cUs aaf aaa cUr @@ -129396,25 +129427,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (140,1,1) = {" aaa @@ -129582,29 +129594,48 @@ bZQ bVE bVE bVE -cSL -cCZ -cDU -cDb -cFD -cBP -aaf -aaf +bZQ +bVE +cZb +cER bVE bVE -chM -bVE -cNb -cNb -cNb -cNb -cNb +cZc +cZc +cZc +cZG +cZG +cZc +cZc +cZc +cZc +cZc +cZc +cZc +cZc +cZc +cZc +cZc +cZc +cZc +cZc +cZc +dcJ +cZc +cZc +cZc +cZc +ddO +ddO aaf aaf aaf aaf -cSN aaa +aaa +aaa +aaa +cUs aaf aaa cUr @@ -129653,25 +129684,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (141,1,1) = {" aaa @@ -129838,21 +129850,41 @@ cxn cyo czl bZQ -cAY -cBR -cCZ -cDV -cDb -cFE -cBP -aaf -aaa -aaf bVE -cLq +bZQ bVE +cZb +cER +cER +cER +cZs +cZt +cZE +cZt +cZt +cZt +cZt +cZt +cZt +cZE +cZt +cZt +cZt +cZt +cZt +cZt +cZE +cZt +dcA +dcE +dcK +cZt +cZt +ddc +cZc +cZc +cZc aaa -aaf aaa aaa aaa @@ -129860,8 +129892,7 @@ aaa aaa aaf aaf -cSN -aaa +cUs aaf aaa aaf @@ -129910,25 +129941,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (142,1,1) = {" aaa @@ -130096,29 +130108,48 @@ bVE bVE czZ bVE -cBS -cCZ -cDW -cBP -cFF -cBP -aaf -aaa -aaf -bVE -chM +bZQ bVE +cZb +cER +cER +cER +cZs +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZw +cZt +cZt +cZc +aaa +aaa +aaa +aaa aaa aaf aaf -aaf -aaf -aaf -aaf -aaf aaa -cSO -cRP +cUs cRP cTZ cUs @@ -130167,25 +130198,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (143,1,1) = {" aaa @@ -130353,23 +130365,42 @@ bZQ bVE cAa bVE -cSU -cDa -cDX -cDb -cFG -cGM +bZQ +bVE +cDR +cER +cER +cER +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZJ +dau +dau +dau +dau +dau +dby +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc aaf aaa aaa -acn -cLr -acn -aaa -aaf -aaa -aaa -aaa aaa aaa aaf @@ -130424,25 +130455,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (144,1,1) = {" aaa @@ -130610,15 +130622,39 @@ cyp bVE cAb bVE -cBU -cDb -cDb cBP -aoa -bnn -aaf -aaa -aaa +cCX +cDS +cAK +cBP +cBP +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZK +cZx +cZx +cZx +cZx +cZx +dbL +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc aaa aaf aaa @@ -130626,11 +130662,6 @@ aaa aaf aaa aaa -aaf -aaa -aaa -aaf -aaa aaa aaa aaf @@ -130681,25 +130712,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (145,1,1) = {" aaa @@ -130867,29 +130879,48 @@ bVE bVE cAa bVE -aaf -aaf -aaf -aoa -aoa -aoa -aaf -aaf -aaf -aaf -aaf +cBP +cSV +cDT +cES +cFC +cBP +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZK +cZx +cZx +cZx +cZx +cZx +dbL +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc +aaa aaf aaf aaf aaa aaa -aaf -aaf -aaf -aaf -aaf aaa -aaf +aaa +aaa aaf aaf cUr @@ -130938,25 +130969,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (146,1,1) = {" aaa @@ -131123,27 +131135,46 @@ aaf aaa aaf acn -aaf -aaf -aaa -aaf -aaf -aaf -aaf -aaf -aaa -aaa -aaa -aaa +cBP +cSL +cCZ +cDU +cDb +cFD +cBP +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZK +cZx +cZx +cZx +cZx +cZx +dbL +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +ddc +cZc aaa aaf aaf aaa aaa aaa -aaf -aaf -aaa aaa aaa aaa @@ -131195,25 +131226,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (147,1,1) = {" aaa @@ -131380,26 +131392,45 @@ aaf aaf aaf acn +cBP +cBR +cCZ +cDV +cDb +cFE +cBP +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +daa +daz +daz +daD +daz +daz +dcy +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc aaa aaa aaa aaa aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -aaa -aaf -aaa aaa aaa aaa @@ -131452,25 +131483,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (148,1,1) = {" aaa @@ -131637,11 +131649,40 @@ aaf aaa aaa aaa -aaa -aaa -aaa -aaa -aaa +cBP +cBS +cCZ +cDW +cBP +cFF +cBP +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +dab +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc aaf aaa aaa @@ -131651,16 +131692,6 @@ aaa aaa aaa aaa -aaf -aaa -aaa -aaf -aaf -aaa -aaf -aaa -aaa -aaa aai aaa cUr @@ -131709,25 +131740,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (149,1,1) = {" aaa @@ -131894,12 +131906,42 @@ aaf aaa aaa aaa -aaa -aaa -aaa -aaa -aaf -aaf +cBP +cSU +cDa +cDX +cDb +cFG +cGM +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc +aaa +aaa aaa aaa aaa @@ -131907,17 +131949,6 @@ aaa aaa aaa aaa -aaf -aaf -aaf -aaf -aqJ -aob -aob -aob -aqJ -aob -aqJ aob aaa aaa @@ -131966,25 +131997,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (150,1,1) = {" aaa @@ -132151,12 +132163,40 @@ aaf aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaf +cBP +cBU +cDb +cDb +cBP +aoa +bnn +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc aaa aaa aaa @@ -132165,15 +132205,6 @@ aaa aaa aaa aaa -aaf -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa aaa aob aqJ @@ -132223,25 +132254,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (151,1,1) = {" aaa @@ -132409,21 +132421,40 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa aaf -aaa +aaf +aoa +aoa +aoa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc +aaf aaa aaa aaa @@ -132480,25 +132511,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (152,1,1) = {" aaa @@ -132666,22 +132678,41 @@ aaf aaa aaa aaa -aaa -aaa +aaf aaa aaf aaf aaf -aaa -aaa -aaa -aaa -aaa +aaf +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc aaa aaf -aaf -aaa -aaa aaa aaa aaa @@ -132737,25 +132768,6 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa "} (153,1,1) = {" aaa @@ -132929,33 +132941,33 @@ aaf aaf aaa aaf -aaf -aaf -aaf -aaf -aaf -aaf -aaf -aac -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +daE +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc aaa aaa aaa @@ -133186,33 +133198,33 @@ aaa aaf aaf aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +daG +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +dde +ddn +cZt +cZc aaa aaa aaa @@ -133443,33 +133455,33 @@ aaa aaa aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc aaa aaa aaa @@ -133700,33 +133712,33 @@ aaa aaa aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc aaa aaa aaa @@ -133957,36 +133969,36 @@ aaa aaa aaf aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aaf aaa aaa aaa @@ -134214,35 +134226,35 @@ aaa aaa aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +ddc +cZc +aaf +aaf aaa aaa aaa @@ -134471,35 +134483,35 @@ aaa aaa aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc +aaf +aaf aaa aaa aaa @@ -134728,34 +134740,34 @@ aaa aaf aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc +aaf aaa aaa aaa @@ -134985,35 +134997,35 @@ aaa aaa aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc +aaf +aaf aaa aaa aaa @@ -135242,34 +135254,34 @@ aaf aaf aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc +aaf aaa aaa aaa @@ -135499,33 +135511,33 @@ aaa aaa aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc aaa aaa aaa @@ -135756,33 +135768,33 @@ aaa aaa aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +ddc +cZc aaa aaa aaa @@ -136013,33 +136025,33 @@ aaa aaa aaf aaf -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +cZx +ddn +cZt +cZc aaa aaa aaa @@ -136270,33 +136282,33 @@ aaa aaa aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZy +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZF +cZt +cZt +cZc aaa aaa aaa @@ -136527,34 +136539,34 @@ aaa aaa aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +cZc +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZB +cZc +cZc +cZc +aaf aaa aaa aaa @@ -136785,33 +136797,33 @@ aaa aaf aaa aaa +aaf +aaf aaa aaa aaa aaa +aaf +aaa +aaa +aaf +aaf +aaf +aaf +aaf aaa aaa aaa +aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aaf +aaf +aaf +aaf +aaf +aaf +aaf +aaf aaa aaa aaa @@ -137040,6 +137052,8 @@ aaa aaa aaa aaf +aaf +aaf aaa aaa aaa @@ -137052,20 +137066,18 @@ aaa aaa aaa aaa +aaf +aaa +aaf +aaf aaa aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aaf +aaf +aaf aaa aaa aaa @@ -137313,7 +137325,7 @@ aaa aaa aaa aaa -aaa +aaf aaa aaa aaa diff --git a/_maps/map_files/TgStation/tgstation.2.1.3.dmm b/_maps/map_files/TgStation/tgstation.2.1.3.dmm index 6f9c860ea8c..5693f5912ab 100644 --- a/_maps/map_files/TgStation/tgstation.2.1.3.dmm +++ b/_maps/map_files/TgStation/tgstation.2.1.3.dmm @@ -5982,11 +5982,10 @@ /turf/open/floor/plating, /area/maintenance/auxsolarstarboard) "amx" = ( -/obj/structure/chair{ - dir = 1 +/turf/open/floor/plating/warnplate{ + dir = 5 }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) +/area/shuttle/auxillary_base) "amy" = ( /obj/structure/chair/stool{ pixel_y = 8 @@ -7788,9 +7787,8 @@ /turf/open/floor/plating, /area/maintenance/fsmaint2) "aqB" = ( -/obj/effect/decal/cleanable/cobweb2, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) +/turf/open/floor/plating/warnplate, +/area/shuttle/auxillary_base) "aqC" = ( /obj/machinery/computer/slot_machine{ balance = 15; @@ -8628,8 +8626,9 @@ /turf/open/floor/plating, /area/maintenance/fsmaint2) "asB" = ( -/turf/closed/wall, -/area/maintenance/electrical) +/obj/machinery/door/airlock/research, +/turf/open/floor/plasteel, +/area/mining_construction) "asC" = ( /turf/open/floor/plasteel/airless, /area/space/nearstation) @@ -9010,11 +9009,9 @@ /turf/open/floor/plating, /area/maintenance/fsmaint2) "atB" = ( -/obj/machinery/door/airlock/maintenance{ - req_access_txt = "12" - }, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) +/obj/machinery/light, +/turf/open/floor/plasteel, +/area/mining_construction) "atC" = ( /obj/item/stack/rods{ amount = 50 @@ -9493,6 +9490,11 @@ d2 = 8; icon_state = "2-8" }, +/obj/structure/cable{ + d1 = 2; + d2 = 4; + icon_state = "2-4" + }, /turf/open/floor/plating, /area/maintenance/fsmaint2) "auI" = ( @@ -11112,12 +11114,9 @@ /turf/open/floor/plating, /area/maintenance/fpmaint2) "ayj" = ( -/obj/structure/table, -/obj/machinery/cell_charger, -/obj/item/weapon/stock_parts/cell/high/plus, -/obj/item/weapon/stock_parts/cell/high/plus, +/obj/docking_port/mobile/auxillary_base, /turf/open/floor/plating, -/area/maintenance/electrical) +/area/shuttle/auxillary_base) "ayk" = ( /turf/open/floor/plasteel/warning, /area/hallway/secondary/entry) @@ -12133,49 +12132,30 @@ name = "\improper Garden" }) "aAy" = ( -/obj/machinery/power/smes{ - charge = 0 - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/turf/open/floor/plating, -/area/maintenance/electrical) +/turf/closed/wall, +/area/mining_construction) "aAz" = ( -/obj/machinery/computer/monitor{ - name = "backup power monitoring console" - }, -/obj/structure/cable{ - icon_state = "0-4"; - d2 = 4 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" - }, -/obj/structure/cable, -/turf/open/floor/plating, -/area/maintenance/electrical) -"aAA" = ( -/obj/structure/cable{ - d1 = 4; - d2 = 8; - icon_state = "4-8"; +/obj/structure/sign/securearea{ + desc = "A warning sign which reads 'EXTERNAL AIRLOCK'"; + icon_state = "space"; + layer = 4; + name = "EXTERNAL AIRLOCK"; pixel_x = 0 }, /turf/closed/wall, -/area/maintenance/electrical) -"aAB" = ( -/obj/machinery/power/smes{ - charge = 0 - }, -/obj/structure/cable{ - d2 = 8; - icon_state = "0-8" +/area/mining_construction) +"aAA" = ( +/obj/machinery/door/poddoor{ + id = "mining_base" }, /turf/open/floor/plating, -/area/maintenance/electrical) +/area/mining_construction) +"aAB" = ( +/obj/machinery/door/poddoor{ + id = "mining_base" + }, +/turf/closed/wall, +/area/mining_construction) "aAC" = ( /obj/structure/sign/securearea{ desc = "A warning sign which reads 'KEEP CLEAR OF DOCKING AREA'."; @@ -12655,9 +12635,14 @@ /turf/open/floor/plating, /area/maintenance/fsmaint2) "aBF" = ( -/obj/machinery/space_heater, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) +/obj/machinery/button/door{ + id = "mining_base"; + name = "blast doors"; + pixel_x = 4; + pixel_y = 28 + }, +/turf/open/floor/plasteel, +/area/mining_construction) "aBG" = ( /obj/machinery/atmospherics/components/unary/vent_pump{ dir = 8; @@ -13181,17 +13166,16 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, +/obj/machinery/light/small{ + dir = 4 + }, /turf/open/floor/plasteel/black, /area/chapel/main) "aCQ" = ( -/obj/machinery/atmospherics/pipe/simple/supply/hidden{ +/turf/open/floor/plasteel/warning{ dir = 4 }, -/obj/machinery/light/small{ - dir = 1 - }, -/turf/open/floor/plasteel/black, -/area/chapel/main) +/area/mining_construction) "aCR" = ( /turf/closed/wall, /area/chapel/main) @@ -13199,8 +13183,8 @@ /turf/closed/wall/mineral/titanium, /area/shuttle/arrival) "aCT" = ( -/turf/closed/wall/mineral/titanium/overspace, -/area/shuttle/arrival) +/turf/open/floor/plating, +/area/shuttle/auxillary_base) "aCU" = ( /obj/machinery/door/airlock/shuttle{ name = "Arrivals Shuttle Airlock" @@ -13213,19 +13197,13 @@ /turf/open/floor/plating, /area/shuttle/arrival) "aCW" = ( -/turf/open/space, -/turf/closed/wall/shuttle{ - dir = 2; - icon_state = "swall_f10"; - layer = 2 +/turf/open/floor/plasteel/warning{ + dir = 8 }, -/area/shuttle/arrival) +/area/mining_construction) "aCX" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall14"; - dir = 2 - }, -/area/shuttle/arrival) +/turf/open/floor/plasteel, +/area/mining_construction) "aCY" = ( /obj/machinery/computer/security, /obj/structure/reagent_dispensers/peppertank{ @@ -13887,11 +13865,11 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/arrival) "aEp" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall11"; - dir = 2 +/obj/machinery/light{ + dir = 8 }, -/area/shuttle/arrival) +/turf/open/floor/plasteel, +/area/mining_construction) "aEq" = ( /obj/machinery/computer/arcade, /turf/open/floor/mineral/titanium/blue, @@ -14445,11 +14423,14 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/arrival) "aFD" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall1"; - dir = 2 +/obj/machinery/light{ + dir = 4; + icon_state = "tube1" }, -/area/shuttle/arrival) +/turf/open/floor/plasteel/warning{ + dir = 8 + }, +/area/mining_construction) "aFE" = ( /obj/structure/chair{ dir = 8 @@ -15965,11 +15946,10 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/arrival) "aIH" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall2"; - dir = 2 +/turf/open/floor/plating/warnplate{ + dir = 9 }, -/area/shuttle/arrival) +/area/shuttle/auxillary_base) "aII" = ( /obj/machinery/atmospherics/components/unary/vent_scrubber{ on = 1; @@ -16583,12 +16563,10 @@ }, /area/chapel/main) "aKf" = ( -/turf/open/space, -/turf/closed/wall/shuttle{ - icon_state = "swall_f5"; - dir = 2 +/turf/open/floor/plating/warnplate{ + dir = 1 }, -/area/shuttle/arrival) +/area/shuttle/auxillary_base) "aKg" = ( /obj/structure/closet/emcloset, /turf/open/floor/mineral/titanium/blue, @@ -17123,18 +17101,14 @@ /turf/open/floor/plating, /area/shuttle/arrival) "aLt" = ( -/turf/open/space, -/turf/closed/wall/shuttle{ - icon_state = "swall_f9"; - dir = 2 - }, -/area/shuttle/arrival) +/obj/machinery/computer/shuttle/mining, +/turf/open/floor/plating, +/area/shuttle/auxillary_base) "aLu" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall13"; - dir = 2 +/turf/open/floor/plating/warnplate{ + dir = 8 }, -/area/shuttle/arrival) +/area/shuttle/auxillary_base) "aLv" = ( /obj/machinery/firealarm{ dir = 8; @@ -37492,11 +37466,10 @@ /turf/open/floor/plating, /area/maintenance/asmaint2) "bEJ" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall12"; - dir = 2 +/turf/open/floor/plating/warnplate{ + dir = 4 }, -/area/shuttle/labor) +/area/shuttle/auxillary_base) "bEK" = ( /obj/machinery/computer/security/mining, /obj/machinery/camera{ @@ -52315,12 +52288,20 @@ /turf/open/floor/plating, /area/maintenance/asmaint2) "ckq" = ( -/turf/open/space, -/turf/closed/wall/shuttle{ +/obj/docking_port/stationary{ + area_type = /area/shuttle/auxillary_base; dir = 8; - icon_state = "diagonalWall3" + dwidth = 3; + height = 5; + id = "mining_base"; + name = "auxillary mining base"; + turf_type = /turf/open/floor/plating; + width = 7 }, -/area/shuttle/syndicate) +/turf/open/floor/plating/warnplate{ + dir = 4 + }, +/area/shuttle/auxillary_base) "ckr" = ( /obj/structure/reagent_dispensers/fueltank, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, @@ -52882,11 +52863,10 @@ /turf/open/floor/plating, /area/maintenance/aft) "clB" = ( -/obj/machinery/door/airlock/external{ - req_access_txt = "13" - }, +/obj/item/device/assault_pod/mining, +/obj/structure/table, /turf/open/floor/plating, -/area/maintenance/aft) +/area/shuttle/auxillary_base) "clC" = ( /obj/structure/cable{ d1 = 1; @@ -54610,8 +54590,9 @@ /turf/closed/wall/mineral/titanium, /area/shuttle/pod_4) "cpe" = ( -/turf/closed/wall/mineral/titanium/overspace, -/area/shuttle/pod_4) +/obj/machinery/computer/shuttle/auxillary_base, +/turf/closed/wall, +/area/shuttle/auxillary_base) "cpf" = ( /obj/machinery/telecomms/allinone{ intercept = 1 @@ -55221,22 +55202,15 @@ /turf/open/floor/plating, /area/engine/engineering) "cqq" = ( -/turf/open/floor/plating, -/obj/structure/shuttle/engine/propulsion/burst{ - dir = 4 +/turf/open/floor/plating/warnplate{ + dir = 10 }, -/turf/closed/wall/shuttle{ - icon_state = "swall_f5"; - dir = 2 - }, -/area/shuttle/pod_4) +/area/shuttle/auxillary_base) "cqr" = ( -/turf/open/space, -/turf/closed/wall/shuttle{ - icon_state = "swall_f9"; - dir = 2 +/turf/open/floor/plating/warnplate{ + dir = 6 }, -/area/shuttle/pod_4) +/area/shuttle/auxillary_base) "cqs" = ( /obj/structure/sign/fire{ pixel_x = 0; @@ -55704,14 +55678,26 @@ /turf/open/floor/plating, /area/shuttle/escape) "cry" = ( -/turf/closed/wall/mineral/titanium/overspace, -/area/shuttle/escape) -"crz" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall_s10"; - dir = 2 +/obj/structure/cable{ + icon_state = "0-2"; + pixel_y = 1; + d2 = 2 }, -/area/shuttle/escape) +/obj/machinery/power/apc{ + dir = 8; + name = "Base Construction APC"; + pixel_x = -25; + pixel_y = 3 + }, +/turf/open/floor/plasteel, +/area/mining_construction) +"crz" = ( +/obj/machinery/door/airlock/engineering{ + name = "Construction Area"; + req_access_txt = "32" + }, +/turf/open/floor/plating, +/area/mining_construction) "crA" = ( /obj/structure/transit_tube/station{ dir = 8; @@ -58367,11 +58353,14 @@ /turf/open/floor/mineral/titanium, /area/shuttle/escape) "cwH" = ( -/turf/open/floor/plasteel/shuttle/white, -/turf/closed/wall/shuttle/interior{ - icon_state = "swall_f5" +/obj/structure/cable{ + d1 = 1; + d2 = 2; + icon_state = "1-2"; + pixel_y = 0 }, -/area/shuttle/escape) +/turf/open/floor/plasteel, +/area/mining_construction) "cwI" = ( /turf/closed/wall/mineral/titanium, /area/shuttle/escape) @@ -58442,23 +58431,46 @@ /turf/open/floor/mineral/titanium, /area/shuttle/escape) "cwT" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall13"; - dir = 2 +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0; + tag = "" }, -/area/shuttle/escape) +/turf/open/floor/plating, +/area/maintenance/fsmaint2) "cwU" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall12"; - dir = 2 +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0; + tag = "" }, -/area/shuttle/escape) +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0; + tag = "" + }, +/turf/open/floor/plating, +/area/maintenance/fsmaint2) "cwV" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall14"; - dir = 2 +/obj/machinery/door/airlock/engineering{ + name = "Construction Area"; + req_access_txt = "32" }, -/area/shuttle/escape) +/obj/structure/cable{ + d1 = 4; + d2 = 8; + icon_state = "4-8"; + pixel_x = 0; + tag = "" + }, +/turf/open/floor/plating, +/area/mining_construction) "cwW" = ( /obj/machinery/status_display, /turf/closed/wall/mineral/titanium, @@ -58558,11 +58570,13 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/warden) "cxl" = ( -/turf/closed/wall/shuttle{ - icon_state = "swall7"; - dir = 2 +/obj/structure/cable{ + d1 = 1; + d2 = 8; + icon_state = "1-8" }, -/area/shuttle/escape) +/turf/open/floor/plasteel, +/area/mining_construction) "cxm" = ( /turf/closed/wall/mineral/titanium/nodiagonal, /area/shuttle/escape) @@ -58632,8 +58646,10 @@ /turf/open/floor/plating, /area/shuttle/transport) "cxx" = ( -/turf/closed/wall/mineral/titanium/overspace, -/area/shuttle/transport) +/obj/structure/grille, +/obj/structure/window/fulltile, +/turf/closed/wall, +/area/maintenance/fsmaint2) "cxy" = ( /turf/open/floor/mineral/titanium/blue, /turf/closed/wall/mineral/titanium/interior, @@ -58683,11 +58699,10 @@ /turf/open/floor/mineral/titanium/blue, /area/shuttle/transport) "cxF" = ( -/turf/open/floor/plasteel/shuttle, -/turf/closed/wall/shuttle/interior{ - icon_state = "swall_f10" +/turf/open/floor/plasteel/warning{ + dir = 1 }, -/area/shuttle/transport) +/area/mining_construction) "cxG" = ( /obj/machinery/door/airlock/external{ cyclelinkeddir = 4; @@ -103994,7 +104009,7 @@ aqz aru alP anf -anf +cwT avE anf anf @@ -104235,7 +104250,7 @@ aaa aaa aaa aaa -aaa +aaf aaa aaa aaf @@ -104251,7 +104266,7 @@ anf anf asy anf -anf +cwU alP alP anf @@ -104491,7 +104506,7 @@ aaa aaa aaa aaa -aaa +aaf aaa aaa aaa @@ -104508,11 +104523,11 @@ aqA anf alP atz -anf +cwT alP awJ anf -alP +cxx aAv anf aCE @@ -104745,31 +104760,31 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -aaa -alP -alP -alP -alP -alP -anf -anf -alP -anf -anf -apE +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +crz +cwV +aAy +aAy +aAy +aAy anf anf aCE @@ -105002,33 +105017,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -alO -apD -aEl -anf -arx -anf -anf -alP -alP +aAy +aBF +aCX +aEp +aCX +aCX +aCX +aCX +aCX +aEp +aCX +aCX +aCX +aCX +aCX +aCX +aEp +aCX +cry +cwH +cxl +aCX +aCX atB -alP -alP -alP +aAy +aAy +aAy aCF aDZ aFw @@ -105259,33 +105274,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -alP -anf -anf -arw -asA -asA -anf -alP -awL -anf -anf -apE -aBF +aAz +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCQ +aCX +aCX +aAy aCH aED aFy @@ -105516,33 +105531,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -alO -aoQ -anf -arv -asz -atA -anf -alP -awK -anf -awD -apE -anf +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aIH +aLu +aLu +aLu +aLu +aLu +cqq +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aCk aEC aFx @@ -105773,33 +105788,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alP -alP -alP +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aKf +aCT +aCT +aCT +aCT +aCT aqB -arx -anf -anf -anf -alP -awM -ayg -ayg -ayg -ayg +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aCl aEe aFw @@ -106030,33 +106045,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alP -aoP -alP -alP -apE -alP -atB -alP -alP -awx -aye -ayd -aAc -ayd +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aKf +aCT +aCT +aCT +aCT +aCT +aqB +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aCI aEd aFw @@ -106287,33 +106302,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -alP -alP -alP -alP -alP -anf -anf -anf -anf -anf -anf -aty -anf -awx -avI -asA -apE -arx +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aKf +aCT +aCT +aCT +aCT +aCT +aqB +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +atB +aAy aCo aEf aFw @@ -106544,33 +106559,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alO +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT amx -anf -anf -anf -anf -alP -alP -alP -asB -asB -asB -avo -awx -avH -asB -asB -asB +bEJ +bEJ +ckq +bEJ +bEJ +cqr +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aCK aEf aFw @@ -106801,33 +106816,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -alP -alP -alP -alP -alP -anf -alP -aqD -arz -asB -atD -auJ -asB -awQ -avK -azt +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aLt +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX aAy -asB aCN aEf aFw @@ -107058,33 +107073,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -aaf -aaf -aaf -alP -anf -alP -aqC -ary -asB -atC -auI -auI -awP -avJ -awO -awO -asB +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aCM aEg aFw @@ -107315,33 +107330,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -alP -anf -alP -alP -alP -asB -atE -auI -auI -awT -avM -azv aAA -asB +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aCE aEi aFw @@ -107572,32 +107587,32 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaf -alP -anf -apE -anf -anf -asB -asB -asB -avL -awR -auI -azu -aAz +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX asB aCO aEh @@ -107829,34 +107844,34 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -alP -aoQ -alP -aqE -arA -asB -atG -auL -avN -axa -auI -azw aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX asB -aCQ +aCO aEk aFB aHn @@ -108086,32 +108101,32 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -alP -alP -alP -alP -alP -asB -atF -auK -auJ -awS -auI -awO -awO +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +clB +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX asB aCP aEj @@ -108343,33 +108358,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaf -aaa -aaa -asB -atH -auM -avO -awU +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cpe +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT ayj -azx -aAB -asB +cxF +aCX +aAy aCR aEm aCR @@ -108600,33 +108615,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -asB -asB -asB -asB -asB -asB -asB -asB -asB +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aCR bfb aCR @@ -108857,33 +108872,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaf -aaa -aaa -atS -apQ -aoV -aoV -atS -apQ -apQ -apQ -atS +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aCR aEn aCR @@ -109114,33 +109129,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -atS -aoV -aoV -aoV -atS -aoV -aoV -apQ -atS +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aaf aaa aaf @@ -109371,33 +109386,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -atS -aoV -aoV -aoV -aaH -aoV -aoV -apQ -atS +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +atB +aAy aaf aaa aaf @@ -109628,33 +109643,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -atS -aoV -aoV -aoV -aaH -aoV -aoV -aoV -atS +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aaf aaa aaf @@ -109885,33 +109900,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaH -aoV -aoV -aoV -atS -aoV -aoV -aoV -atS +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aaf aaa aaf @@ -110142,33 +110157,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -atS -aoV -aoV -aoV -atS -aoV -aoV -aoV -apQ +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aaf aaa aaf @@ -110399,33 +110414,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aae -aaa -atS -aoV -aoV -aoV -atS -aoV -aoV -aoV -aoV +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aaf aaa aaf @@ -110656,33 +110671,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apQ -aoV -aoV -aoV -atS -aoV -aoV -aoV -aoV +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aaf aaa aaf @@ -110912,34 +110927,34 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -apQ -aoV -aoV -aoV -apQ -aoV -aoV -aoV -aoV +aae +aAA +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +atB +aAy aaf aaa aaf @@ -111170,33 +111185,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aoV -aoV -aoV -aoV -apQ -aoV -aoV -aoV -aoV +aAB +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +aCT +cxF +aCX +aAy aaa aaa aaf @@ -111427,33 +111442,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aAz +aCW +aCW +aFD +aCW +aCW +aCW +aCW +aCW +aFD +aCW +aCW +aCW +aCW +aCW +aCW +aFD +aCW +aCW +aCW +aCW +aCW +aCW +aCW +aCX +aCX +aAy aaa aaa aaf @@ -111684,33 +111699,33 @@ aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy +aAy aaa aaa aaa @@ -111944,23 +111959,23 @@ aaa aaa aaa aaa +aaf +aaf +aaa +aaa +aaa +aaf +aaf +aaf aaa aaa aaa aaa aaa +aaf +aaf aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa -aaa +aaf aaa aaa aaa @@ -112200,23 +112215,23 @@ aaa aaa aaa aaa +aaf aaa aaa aaa aaa aaa aaa +aaf aaa aaa aaa +aaf aaa aaa aaa -aaa -aaa -aaa -aaa -aaa +aaf +aaf aaa aaa aaa @@ -112457,22 +112472,22 @@ aaa aaa aaa aaa +aaf aaa aaa aaa aaa aaa aaa +aaf +aaa +aaa +aaf aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa -aaa +aaf aaa aaa aaa @@ -112721,15 +112736,15 @@ aaa aaa aaa aaa +aaf +aaf +aaf +aaf aaa aaa aaa aaa -aaa -aaa -aaa -aaa -aaa +aaf aaa aaa aaa @@ -112978,16 +112993,16 @@ aaa aaa aaa aaa +aaf +aaa +aaf aaa aaa aaa aaa aaa aaa -aaa -aaa -aaa -aaa +aaf aaa aaa aaa @@ -113235,7 +113250,7 @@ aaa aaa aaa aaa -aaa +aaf aaa aaa aaa @@ -113492,7 +113507,7 @@ aaa aaa aaa aaa -aaa +aaf aaa aaa aaa @@ -113749,9 +113764,9 @@ aaa aaa aaa aaa +aaf aaa -aaa -aaa +aaf aaa aaa aaa @@ -114005,9 +114020,9 @@ aaa aaa aaa aaa -aaa -aaa -aaa +aaf +aaf +aaf aaa aaa aaa @@ -114262,7 +114277,7 @@ aaa aaa aaa aaa -aaa +aaf aaa aaa aaa @@ -114519,7 +114534,7 @@ aaa aaa aaa aaa -aaa +aaf aaa aaa aaa diff --git a/code/game/area/Space_Station_13_areas.dm b/code/game/area/Space_Station_13_areas.dm index 7ee4db856d4..1761efdda88 100644 --- a/code/game/area/Space_Station_13_areas.dm +++ b/code/game/area/Space_Station_13_areas.dm @@ -1158,6 +1158,10 @@ var/list/teleportlocs = list() name = "Construction Area" icon_state = "yellow" +/area/mining_construction + name = "Auxillary Base Construction" + icon_state = "yellow" + /area/construction/supplyshuttle name = "Supply Shuttle" icon_state = "yellow" diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index 292fee234dc..3a0612369a0 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -55,7 +55,7 @@ desc = "Used to call and send the mining shuttle." circuit = /obj/item/weapon/circuitboard/computer/mining_shuttle shuttleId = "mining" - possible_destinations = "mining_home;mining_away" + possible_destinations = "mining_home;mining_away;mining_base" no_destination_swap = 1 var/global/list/dumb_rev_heads = list() @@ -500,3 +500,71 @@ anchored = 1 layer = BELOW_MOB_LAYER density = 0 + +///Mining Base//// + +/area/shuttle/auxillary_base + name = "Auxillary Base" + + +/obj/machinery/computer/shuttle/auxillary_base + name = "auxillary base launch control" + icon = 'icons/obj/terminals.dmi' + icon_state = "dorm_available" + shuttleId = "colony_drop" + possible_destinations = null + clockwork = TRUE + +/obj/machinery/computer/shuttle/auxillary_base/Topic(href, href_list) + if(href_list["move"]) + if(z != ZLEVEL_STATION) + usr << "You can't move the base again!" + return 0 + ..() + +/obj/item/device/assault_pod/mining + name = "Landing Field Designator" + icon_state = "gangtool-purple" + item_state = "electronic" + icon = 'icons/obj/device.dmi' + desc = "Deploy to designate the landing zone of the auxillary base." + shuttle_id = "colony_drop" + dwidth = 11 + dheight = 0 + width = 23 + height = 23 + lz_dir = 1 + +/obj/item/device/assault_pod/mining/attack_self(mob/living/user) + var/turf/T = get_turf(user) + if(T.z != ZLEVEL_MINING) + user << "Wouldn't do much good dropping a mining base away from the mining area!" + return + + var/obj/docking_port/stationary/landing_zone = new /obj/docking_port/stationary(T) + landing_zone.id = "colony_drop(\ref[src])" + landing_zone.name = "Landing Zone" + landing_zone.dwidth = dwidth + landing_zone.dheight = dheight + landing_zone.width = width + landing_zone.height = height + landing_zone.setDir(lz_dir) + + for(var/obj/machinery/computer/shuttle/S in machines) + if(S.shuttleId == shuttle_id) + S.possible_destinations = "[landing_zone.id]" + + user << "Landing zone set." + + qdel(src) + + +/area/shuttle/auxillary_base + name = "Auxillary Base" + +/obj/docking_port/mobile/auxillary_base + name = "auxillary base" + id = "colony_drop" + dwidth = 11 + width = 23 + height = 23 \ No newline at end of file From aae09b939be8e70dd2680d1e05c5b30197716279 Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Sat, 30 Jul 2016 23:30:39 -0500 Subject: [PATCH 037/154] Fixes mining shuttle breaking --- _maps/map_files/MetaStation/MetaStation.dmm | 11 +++----- _maps/map_files/TgStation/tgstation.2.1.3.dmm | 26 ++++++++----------- 2 files changed, 15 insertions(+), 22 deletions(-) diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index ab00758cc74..e6cb749bb1b 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -13240,7 +13240,7 @@ "axc" = ( /obj/structure/grille, /obj/structure/window/shuttle, -/turf/open/floor/plating, +/turf/open/floor/pod/light, /area/shuttle/mining) "axd" = ( /turf/open/space, @@ -15477,10 +15477,6 @@ }, /area/library) "aAR" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Mining Shuttle Airlock"; - req_access_txt = "0" - }, /obj/docking_port/mobile{ dir = 8; dwidth = 3; @@ -15498,7 +15494,8 @@ name = "mining shuttle bay"; width = 7 }, -/turf/open/floor/plating, +/obj/machinery/door/airlock/shuttle, +/turf/open/floor/mineral/titanium/blue, /area/shuttle/mining) "aAS" = ( /obj/machinery/door/airlock/external{ @@ -16983,7 +16980,7 @@ /obj/structure/window/reinforced{ dir = 8 }, -/turf/open/floor/plating/airless, +/turf/open/floor/pod/light, /area/shuttle/mining) "aDx" = ( /obj/structure/ore_box, diff --git a/_maps/map_files/TgStation/tgstation.2.1.3.dmm b/_maps/map_files/TgStation/tgstation.2.1.3.dmm index 5693f5912ab..6df7be72240 100644 --- a/_maps/map_files/TgStation/tgstation.2.1.3.dmm +++ b/_maps/map_files/TgStation/tgstation.2.1.3.dmm @@ -11919,10 +11919,9 @@ /area/crew_quarters/sleep) "aAc" = ( /obj/structure/grille, -/obj/structure/window/fulltile, -/obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/turf/open/floor/plating, -/area/maintenance/fsmaint2) +/obj/structure/window/shuttle, +/turf/open/floor/pod/light, +/area/shuttle/labor) "aAd" = ( /obj/machinery/light_switch{ pixel_y = -25 @@ -39628,10 +39627,6 @@ /turf/open/floor/plating, /area/quartermaster/miningdock) "bJc" = ( -/obj/machinery/door/airlock/shuttle{ - name = "Mining Shuttle Airlock"; - req_access_txt = "48" - }, /obj/docking_port/mobile{ dir = 8; dwidth = 3; @@ -39649,7 +39644,8 @@ name = "mining shuttle bay"; width = 7 }, -/turf/open/floor/plating, +/obj/machinery/door/airlock/shuttle, +/turf/open/floor/mineral/titanium/blue, /area/shuttle/labor) "bJd" = ( /obj/machinery/door/airlock/glass_mining{ @@ -40847,7 +40843,7 @@ /area/shuttle/labor) "bLt" = ( /obj/structure/shuttle/engine/heater, -/turf/open/floor/plating, +/turf/open/floor/pod/light, /area/shuttle/labor) "bLu" = ( /obj/structure/rack{ @@ -80158,9 +80154,9 @@ aaa aaa akD akD -ajX +aAc akD -ajX +aAc akD akD aaa @@ -80670,7 +80666,7 @@ bxx bxu bxu bDi -ajX +aAc bGh bHx amI @@ -81186,9 +81182,9 @@ bxx aaa akD akD -ajX +aAc bJc -ajX +aAc akD akD aaa From bed2a5dae495fdd81bc72ac67f08c8b4b8ffcf2d Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Sat, 30 Jul 2016 23:39:11 -0500 Subject: [PATCH 038/154] Can't launch the colony as the clown --- code/modules/mining/mine_items.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index 3a0612369a0..058e56530e8 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -512,6 +512,7 @@ icon = 'icons/obj/terminals.dmi' icon_state = "dorm_available" shuttleId = "colony_drop" + req_access = list(access_heads) possible_destinations = null clockwork = TRUE From ec2f666f29e53269987f0b4ab6c758c0be103d72 Mon Sep 17 00:00:00 2001 From: lordpidey Date: Sun, 31 Jul 2016 01:02:21 -0400 Subject: [PATCH 039/154] Devil agent (#19391) add: Added Devil agent gamemode, where multiple devils are each trying to buy more souls than the next in line. add: If you've already sold your soul, you can sell it again to a different devil. You can even go back and forth for INFINITE POWER. This adds a new gamemode. Devil Agent. It works much like Double Agent, except devils instead of traitors, and instead of killing, the devil simply has to control more souls than the enemy. Also, whether this is included in the rotation depends on the config settings. By default, it will be disabled. --- code/datums/mind.dm | 2 + .../devil/devil agent/devil_agent.dm | 43 +++++ code/game/gamemodes/devil/devil_game_mode.dm | 166 ++++++------------ code/game/gamemodes/devil/devilinfo.dm | 22 +-- code/game/gamemodes/devil/game_mode.dm | 111 ++++++++++++ code/game/gamemodes/devil/objectives.dm | 73 ++++++-- .../gamemodes/devil/true_devil/_true_devil.dm | 3 +- code/modules/admin/admin.dm | 8 +- code/modules/admin/topic.dm | 3 +- code/modules/events/devil.dm | 2 + code/modules/mob/living/carbon/human/human.dm | 7 +- code/modules/mob/living/living.dm | 3 + code/modules/paperwork/contract.dm | 25 +-- code/modules/spells/spell_types/devil.dm | 28 +-- config/game_options.txt | 2 + tgstation.dme | 2 + 16 files changed, 338 insertions(+), 162 deletions(-) create mode 100644 code/game/gamemodes/devil/devil agent/devil_agent.dm create mode 100644 code/game/gamemodes/devil/game_mode.dm diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 50bce2a1f48..0d823aa07a8 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -1197,7 +1197,9 @@ ticker.mode.devils += src special_role = "devil" ticker.mode.finalize_devil(src) + ticker.mode.add_devil_objectives(src, 2) announceDevilLaws() + announce_objectives() if("sintouched") if(ishuman(current)) ticker.mode.sintouched += src diff --git a/code/game/gamemodes/devil/devil agent/devil_agent.dm b/code/game/gamemodes/devil/devil agent/devil_agent.dm new file mode 100644 index 00000000000..dfdb957153a --- /dev/null +++ b/code/game/gamemodes/devil/devil agent/devil_agent.dm @@ -0,0 +1,43 @@ +/datum/game_mode/devil/devil_agents + name = "Devil Agents" + config_tag = "devil_agents" + required_players = 25 + required_enemies = 3 + recommended_enemies = 8 + reroll_friendly = 0 + + traitors_possible = 10 //hard limit on traitors if scaling is turned off + num_modifier = 4 + objective_count = 2 + + var/list/target_list = list() + var/list/late_joining_list = list() + minimum_devils = 3 + + announce_text = "There are devil agents onboard the station, trying to outbid each other!\n\ + + Devils: Purchase souls and interfere with your rivals!\n\ + + Crew: Resist the lure of sin and remain pure!" + +/datum/game_mode/devil/devil_agents/post_setup() + var/i = 0 + for(var/datum/mind/devil in devils) + i++ + if(i + 1 > devils.len) + i = 0 + target_list[devil] = devils[i + 1] + ..() + +/datum/game_mode/devil/devil_agents/add_devil_objectives(datum/mind/devil_mind, quantity) + ..(devil_mind, quantity - give_outsell_objective(devil_mind)) + +/datum/game_mode/devil/devil_agents/proc/give_outsell_objective(datum/mind/devil) + //If you override this method, have it return the number of objectives added. + if(target_list.len && target_list[devil]) // Is a double agent + var/datum/mind/target_mind = target_list[devil] + var/datum/objective/devil/outsell/outsellobjective = new + outsellobjective.owner = devil + outsellobjective.target = target_mind + outsellobjective.update_explanation_text() + devil.objectives += outsellobjective + return 1 + return 0 diff --git a/code/game/gamemodes/devil/devil_game_mode.dm b/code/game/gamemodes/devil/devil_game_mode.dm index 97411e87e66..c64653a986b 100644 --- a/code/game/gamemodes/devil/devil_game_mode.dm +++ b/code/game/gamemodes/devil/devil_game_mode.dm @@ -1,111 +1,61 @@ -/datum/game_mode - var/list/datum/mind/sintouched = list() - var/list/datum/mind/devils = list() - var/devil_ascended = 0 // Number of arch devils on station - -/datum/game_mode/proc/auto_declare_completion_sintouched() - var/text = "" - if(sintouched.len) - text += "
The sintouched were:" - var/list/sintouchedUnique = uniqueList(sintouched) - for(var/S in sintouchedUnique) - var/datum/mind/sintouched_mind = S - text += printplayer(sintouched_mind) - text += printobjectives(sintouched_mind) - text += "
" - text += "
" - world << text - -/datum/game_mode/proc/auto_declare_completion_devils() - /var/text = "" - if(devils.len) - text += "
The devils were:" - for(var/D in devils) - var/datum/mind/devil = D - text += printplayer(devil) - text += printdevilinfo(devil) - text += printobjectives(devil) - text += "
" - world << text - /datum/game_mode/devil + name = "devil" + config_tag = "devil" + antag_flag = ROLE_DEVIL + protected_jobs = list("Lawyer", "Librarian", "Chaplain", "Head of Security", "Captain", "AI") + required_players = 0 + required_enemies = 1 + recommended_enemies = 4 + reroll_friendly = 1 + enemy_minimum_age = 0 + + var/traitors_possible = 4 //hard limit on devils if scaling is turned off + var/num_modifier = 0 // Used for gamemodes, that are a child of traitor, that need more than the usual. + var/objective_count = 2 + var/minimum_devils = 1 + + announce_text = "There are devils onboard the station!\n\ + + Devils: Purchase souls and tempt the crew to sin!\n\ + + Crew: Resist the lure of sin and remain pure!" + +/datum/game_mode/devil/pre_setup() + + if(config.protect_roles_from_antagonist) + restricted_jobs += protected_jobs + if(config.protect_assistant_from_antagonist) + restricted_jobs += "Assistant" + + var/num_devils = 1 + + if(config.traitor_scaling_coeff) + num_devils = max(minimum_devils, min( round(num_players()/(config.traitor_scaling_coeff*3))+ 2 + num_modifier, round(num_players()/(config.traitor_scaling_coeff*1.5)) + num_modifier )) + else + num_devils = max(minimum_devils, min(num_players(), traitors_possible)) + + for(var/j = 0, j < num_devils, j++) + if (!antag_candidates.len) + break + var/datum/mind/devil = pick(antag_candidates) + devils += devil + devil.special_role = traitor_name + devil.restricted_roles = restricted_jobs + + log_game("[devil.key] (ckey) has been selected as a [traitor_name]") + antag_candidates.Remove(devil) + + if(devils.len < required_enemies) + return 0 + return 1 -/datum/game_mode/proc/finalize_devil(datum/mind/devil_mind) - var/mob/living/carbon/human/S = devil_mind.current - var/trueName= randomDevilName() - var/datum/objective/devil/soulquantity/soulquant = new - soulquant.owner = devil_mind - var/datum/objective/devil/obj_2 = pick(new /datum/objective/devil/soulquality(null), new /datum/objective/devil/sintouch(null)) - obj_2.owner = devil_mind - devil_mind.objectives += obj_2 - devil_mind.objectives += soulquant - devil_mind.devilinfo = devilInfo(trueName, 1) - devil_mind.store_memory("Your devilic true name is [devil_mind.devilinfo.truename]
[lawlorify[LAW][devil_mind.devilinfo.ban]]
You may not use violence to coerce someone into selling their soul.
You may not directly and knowingly physically harm a devil, other than yourself.
[lawlorify[LAW][devil_mind.devilinfo.bane]]
[lawlorify[LAW][devil_mind.devilinfo.obligation]]
[lawlorify[LAW][devil_mind.devilinfo.banish]]
") - devil_mind.devilinfo.owner = devil_mind - devil_mind.devilinfo.give_base_spells(1) - spawn(10) - devil_mind.devilinfo.update_hud() - if(devil_mind.assigned_role == "Clown") - S << "Your infernal nature has allowed you to overcome your clownishness." - S.dna.remove_mutation(CLOWNMUT) - -/datum/mind/proc/announceDevilLaws() - if(!devilinfo) - return - current << "You remember your link to the infernal. You are [src.devilinfo.truename], an agent of hell, a devil. And you were sent to the plane of creation for a reason. A greater purpose. Convince the crew to sin, and embroiden Hell's grasp." - current << "However, your infernal form is not without weaknesses." - current << "You may not use violence to coerce someone into selling their soul." - current << "You may not directly and knowingly physically harm a devil, other than yourself." - current << lawlorify[LAW][src.devilinfo.bane] - current << lawlorify[LAW][src.devilinfo.ban] - current << lawlorify[LAW][src.devilinfo.obligation] - current << lawlorify[LAW][src.devilinfo.banish] - current << "

Remember, the crew can research your weaknesses if they find out your devil name.
" - var/obj_count = 1 - current << "Your current objectives:" - for(var/O in objectives) - var/datum/objective/objective = O - current << "Objective #[obj_count]: [objective.explanation_text]" - obj_count++ - -/datum/game_mode/proc/printdevilinfo(datum/mind/ply) - if(!ply.devilinfo) - return "" - var/text = "
The devil's true name is: [ply.devilinfo.truename]
" - text += "The devil's bans were:
" - text += " [lawlorify[LORE][ply.devilinfo.ban]]
" - text += " [lawlorify[LORE][ply.devilinfo.bane]]
" - text += " [lawlorify[LORE][ply.devilinfo.obligation]]
" - text += " [lawlorify[LORE][ply.devilinfo.banish]]
" - return text - -/datum/game_mode/proc/update_devil_icons_added(datum/mind/devil_mind) - var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_DEVIL] - hud.join_hud(devil_mind.current) - set_antag_hud(devil_mind.current, "devil") - -/datum/game_mode/proc/update_devil_icons_removed(datum/mind/devil_mind) - var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_DEVIL] - hud.leave_hud(devil_mind.current) - set_antag_hud(devil_mind.current, null) - -/datum/game_mode/proc/update_sintouch_icons_added(datum/mind/sin_mind) - var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SINTOUCHED] - hud.join_hud(sin_mind.current) - set_antag_hud(sin_mind.current, "sintouched") - -/datum/game_mode/proc/update_sintouch_icons_removed(datum/mind/sin_mind) - var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SINTOUCHED] - hud.leave_hud(sin_mind.current) - set_antag_hud(sin_mind.current, null) - -/datum/game_mode/proc/update_soulless_icons_added(datum/mind/soulless_mind) - var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SOULLESS] - hud.join_hud(soulless_mind.current) - set_antag_hud(soulless_mind.current, "soulless") - -/datum/game_mode/proc/update_soulless_icons_removed(datum/mind/soulless_mind) - var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SOULLESS] - hud.leave_hud(soulless_mind.current) - set_antag_hud(soulless_mind.current, null) +/datum/game_mode/devil/post_setup() + for(var/datum/mind/devil in devils) + spawn(rand(10,100)) + finalize_devil(devil, objective_count) + spawn(100) + add_devil_objectives(devil, objective_count) //This has to be in a separate loop, as we need devil names to be generated before we give objectives in devil agent. + devil.announceDevilLaws() + devil.announce_objectives() + modePlayer += devils + ..() + return 1 diff --git a/code/game/gamemodes/devil/devilinfo.dm b/code/game/gamemodes/devil/devilinfo.dm index 75d5c0ca724..0b9b4b59213 100644 --- a/code/game/gamemodes/devil/devilinfo.dm +++ b/code/game/gamemodes/devil/devilinfo.dm @@ -7,6 +7,8 @@ #define TRUE_DEVIL 2 #define ARCH_DEVIL 3 +#define LOSS_PER_DEATH 2 + #define SOULVALUE soulsOwned.len-reviveNumber #define DEVILRESURRECTTIME 600 @@ -162,16 +164,16 @@ var/global/list/lawlorify = list ( update_hud() /datum/devilinfo/proc/check_regression() - if (form == ARCH_DEVIL) + if(form == ARCH_DEVIL) return //arch devil can't regress - switch(SOULVALUE) - if(-1) - remove_spells() - owner.current << "As punishment for your failures, all of your powers except contract creation have been revoked." - if(BLOOD_THRESHOLD-1) - regress_humanoid() - if(TRUE_THRESHOLD-1) - regress_blood_lizard() + //Yes, fallthrough behavior is intended, so I can't use a switch statement. + if(form == TRUE_DEVIL && SOULVALUE < TRUE_THRESHOLD) + regress_blood_lizard() + if(form == BLOOD_LIZARD && SOULVALUE < BLOOD_THRESHOLD) + regress_humanoid() + if(SOULVALUE < 0) + remove_spells() + owner.current << "As punishment for your failures, all of your powers except contract creation have been revoked." /datum/devilinfo/proc/increase_form() switch(form) @@ -386,7 +388,7 @@ var/global/list/lawlorify = list ( /datum/devilinfo/proc/hellish_resurrection(mob/living/body) message_admins("[owner.name] (true name is: [truename]) is resurrecting using hellish energy.") if(SOULVALUE <= ARCH_THRESHOLD) // once ascended, arch devils do not go down in power by any means. - reviveNumber++ + reviveNumber += LOSS_PER_DEATH update_hud() if(body) body.revive(1,0) diff --git a/code/game/gamemodes/devil/game_mode.dm b/code/game/gamemodes/devil/game_mode.dm new file mode 100644 index 00000000000..5f0846ac1e4 --- /dev/null +++ b/code/game/gamemodes/devil/game_mode.dm @@ -0,0 +1,111 @@ +/datum/game_mode + var/list/datum/mind/sintouched = list() + var/list/datum/mind/devils = list() + var/devil_ascended = 0 // Number of arch devils on station + +/datum/game_mode/proc/auto_declare_completion_sintouched() + var/text = "" + if(sintouched.len) + text += "
The sintouched were:" + var/list/sintouchedUnique = uniqueList(sintouched) + for(var/S in sintouchedUnique) + var/datum/mind/sintouched_mind = S + text += printplayer(sintouched_mind) + text += printobjectives(sintouched_mind) + text += "
" + text += "
" + world << text + +/datum/game_mode/proc/auto_declare_completion_devils() + /var/text = "" + if(devils.len) + text += "
The devils were:" + for(var/D in devils) + var/datum/mind/devil = D + text += printplayer(devil) + text += printdevilinfo(devil) + text += printobjectives(devil) + text += "
" + text += "
" + world << text + + +/datum/game_mode/proc/finalize_devil(datum/mind/devil_mind) + var/mob/living/carbon/human/S = devil_mind.current + var/trueName= randomDevilName() + + devil_mind.devilinfo = devilInfo(trueName, 1) + devil_mind.store_memory("Your devilic true name is [devil_mind.devilinfo.truename]
[lawlorify[LAW][devil_mind.devilinfo.ban]]
You may not use violence to coerce someone into selling their soul.
You may not directly and knowingly physically harm a devil, other than yourself.
[lawlorify[LAW][devil_mind.devilinfo.bane]]
[lawlorify[LAW][devil_mind.devilinfo.obligation]]
[lawlorify[LAW][devil_mind.devilinfo.banish]]
") + devil_mind.devilinfo.owner = devil_mind + devil_mind.devilinfo.give_base_spells(1) + spawn(10) + devil_mind.devilinfo.update_hud() + if(devil_mind.assigned_role == "Clown") + S << "Your infernal nature has allowed you to overcome your clownishness." + S.dna.remove_mutation(CLOWNMUT) + +/datum/game_mode/proc/add_devil_objectives(datum/mind/devil_mind, quantity) + var/list/validtypes = list(/datum/objective/devil/soulquantity, /datum/objective/devil/soulquality, /datum/objective/devil/sintouch, /datum/objective/devil/buy_target) + for(var/i = 1 to quantity) + var/type = pick(validtypes) + var/datum/objective/devil/objective = new type(null) + objective.owner = devil_mind + devil_mind.objectives += objective + if(!istype(objective, /datum/objective/devil/buy_target)) + validtypes -= type //prevent duplicate objectives, EXCEPT for buy_target. + else + objective.find_target() + +/datum/mind/proc/announceDevilLaws() + if(!devilinfo) + return + current << "You remember your link to the infernal. You are [src.devilinfo.truename], an agent of hell, a devil. And you were sent to the plane of creation for a reason. A greater purpose. Convince the crew to sin, and embroiden Hell's grasp." + current << "However, your infernal form is not without weaknesses." + current << "You may not use violence to coerce someone into selling their soul." + current << "You may not directly and knowingly physically harm a devil, other than yourself." + current << lawlorify[LAW][src.devilinfo.bane] + current << lawlorify[LAW][src.devilinfo.ban] + current << lawlorify[LAW][src.devilinfo.obligation] + current << lawlorify[LAW][src.devilinfo.banish] + current << "

Remember, the crew can research your weaknesses if they find out your devil name.
" + +/datum/game_mode/proc/printdevilinfo(datum/mind/ply) + if(!ply.devilinfo) + return "Target is not a devil." + var/text = "
The devil's true name is: [ply.devilinfo.truename]
" + text += "The devil's bans were:
" + text += " [lawlorify[LORE][ply.devilinfo.ban]]
" + text += " [lawlorify[LORE][ply.devilinfo.bane]]
" + text += " [lawlorify[LORE][ply.devilinfo.obligation]]
" + text += " [lawlorify[LORE][ply.devilinfo.banish]]

" + return text + +/datum/game_mode/proc/update_devil_icons_added(datum/mind/devil_mind) + var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_DEVIL] + hud.join_hud(devil_mind.current) + set_antag_hud(devil_mind.current, "devil") + +/datum/game_mode/proc/update_devil_icons_removed(datum/mind/devil_mind) + var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_DEVIL] + hud.leave_hud(devil_mind.current) + set_antag_hud(devil_mind.current, null) + +/datum/game_mode/proc/update_sintouch_icons_added(datum/mind/sin_mind) + var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SINTOUCHED] + hud.join_hud(sin_mind.current) + set_antag_hud(sin_mind.current, "sintouched") + +/datum/game_mode/proc/update_sintouch_icons_removed(datum/mind/sin_mind) + var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SINTOUCHED] + hud.leave_hud(sin_mind.current) + set_antag_hud(sin_mind.current, null) + +/datum/game_mode/proc/update_soulless_icons_added(datum/mind/soulless_mind) + var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SOULLESS] + hud.join_hud(soulless_mind.current) + set_antag_hud(soulless_mind.current, "soulless") + +/datum/game_mode/proc/update_soulless_icons_removed(datum/mind/soulless_mind) + var/datum/atom_hud/antag/hud = huds[ANTAG_HUD_SOULLESS] + hud.leave_hud(soulless_mind.current) + set_antag_hud(soulless_mind.current, null) diff --git a/code/game/gamemodes/devil/objectives.dm b/code/game/gamemodes/devil/objectives.dm index 0a9d7083e92..bd4d3091273 100644 --- a/code/game/gamemodes/devil/objectives.dm +++ b/code/game/gamemodes/devil/objectives.dm @@ -3,29 +3,33 @@ /datum/objective/devil/soulquantity explanation_text = "You shouldn't see this text. Error:DEVIL1" - var/quantity = 4 + target_amount = 4 /datum/objective/devil/soulquantity/New() - quantity = pick(6,8) - explanation_text = "Purchase, and retain control over at least [quantity] souls." + target_amount = pick(6,7,8) + update_explanation_text() + +/datum/objective/devil/soulquantity/update_explanation_text() + explanation_text = "Purchase, and retain control over at least [target_amount] souls." /datum/objective/devil/soulquantity/check_completion() var/count = 0 for(var/S in owner.devilinfo.soulsOwned) var/datum/mind/L = S - if(L.soulOwner != L) + if(L.soulOwner == owner) count++ - return count >= quantity + return count >= target_amount + + /datum/objective/devil/soulquality explanation_text = "You shouldn't see this text. Error:DEVIL2" var/contractType - var/quantity + var/contractName /datum/objective/devil/soulquality/New() contractType = pick(CONTRACT_POWER, CONTRACT_WEALTH, CONTRACT_PRESTIGE, CONTRACT_MAGIC, CONTRACT_REVIVE, CONTRACT_KNOWLEDGE/*, CONTRACT_UNWILLING*/) - var/contractName - quantity = pick(1,2) + target_amount = pick(1,2) switch(contractType) if(CONTRACT_POWER) contractName = "for power" @@ -41,7 +45,10 @@ contractName = "for knowledge" //if(CONTRACT_UNWILLING) //Makes round unfun. // contractName = "against their will" - explanation_text = "Have mortals sign at least [quantity] contracts [contractName]" + update_explanation_text() + +/datum/objective/devil/soulquality/update_explanation_text() + explanation_text = "Have mortals sign at least [target_amount] contracts [contractName]" /datum/objective/devil/soulquality/check_completion() var/count = 0 @@ -49,14 +56,52 @@ var/datum/mind/L = S if(L.soulOwner != L && L.damnation_type == contractType) count++ - return count>=quantity + return count>=target_amount + + /datum/objective/devil/sintouch - var/quantity + explanation_text = "You shouldn't see this text. Error:DEVIL3" /datum/objective/devil/sintouch/New() - quantity = pick(4,5) - explanation_text = "Ensure at least [quantity] mortals are sintouched." + target_amount = pick(4,5) + explanation_text = "Ensure at least [target_amount] mortals are sintouched." /datum/objective/devil/sintouch/check_completion() - return quantity>=ticker.mode.sintouched.len \ No newline at end of file + return target_amount>=ticker.mode.sintouched.len + + + +/datum/objective/devil/buy_target + explanation_text = "You shouldn't see this text. Error:DEVIL4" + +/datum/objective/devil/buy_target/update_explanation_text() + if(target) + explanation_text = "Purchase and retain the soul of [target.name], the [target.assigned_role]." + else + explanation_text = "Free objective." + +/datum/objective/devil/buy_target/check_completion() + return target.soulOwner == owner + + +/datum/objective/devil/outsell + explanation_text = "You shouldn't see this text. Error:DEVIL5" + +/datum/objective/devil/outsell/New() + +/datum/objective/devil/outsell/update_explanation_text() + explanation_text = "Purchase and retain control over more souls than [target.devilinfo.truename], known to mortals as [target.name], the [target.assigned_role]." + +/datum/objective/devil/outsell/check_completion() + var/selfcount = 0 + for(var/S in owner.devilinfo.soulsOwned) + var/datum/mind/L = S + if(L.soulOwner == owner) + selfcount++ + var/targetcount = 0 + for(var/S in target.devilinfo.soulsOwned) + var/datum/mind/L = S + if(L.soulOwner == target) + targetcount++ + return selfcount > targetcount diff --git a/code/game/gamemodes/devil/true_devil/_true_devil.dm b/code/game/gamemodes/devil/true_devil/_true_devil.dm index 474024a4231..a99c95801d1 100644 --- a/code/game/gamemodes/devil/true_devil/_true_devil.dm +++ b/code/game/gamemodes/devil/true_devil/_true_devil.dm @@ -12,7 +12,7 @@ health = 350 maxHealth = 350 ventcrawler = 0 - density = 0 + density = 1 pass_flags = 0 var/ascended = 0 sight = (SEE_TURFS | SEE_OBJS) @@ -45,6 +45,7 @@ /mob/living/carbon/true_devil/Login() ..() mind.announceDevilLaws() + mind.announce_objectives() /mob/living/carbon/true_devil/death(gibbed) diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 90e04375553..844fcd3a1c6 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -703,7 +703,7 @@ var/global/BSACooldown = 0 if(!ai_number) usr << "No AIs located" //Just so you know the thing is actually working and not just ignoring you. -/datum/admins/proc/output_devil_info() +/datum/admins/proc/output_all_devil_info() var/devil_number = 0 for(var/D in ticker.mode.devils) devil_number++ @@ -711,6 +711,12 @@ var/global/BSACooldown = 0 if(!devil_number) usr << "No Devils located" //Just so you know the thing is actually working and not just ignoring you. +/datum/admins/proc/output_devil_info(mob/living/M) + if(istype(M) && M.mind && M.mind.devilinfo) + usr << ticker.mode.printdevilinfo(M.mind) + else + usr << "[M] is not a devil." + /datum/admins/proc/manage_free_slots() if(!check_rights()) return diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index 5526308de7b..618c5303b6f 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -1621,7 +1621,8 @@ output_ai_laws() else if(href_list["admincheckdevilinfo"]) - output_devil_info() + var/mob/M = locate(href_list["admincheckdevilinfo"]) + output_devil_info(M) else if(href_list["adminmoreinfo"]) var/mob/M = locate(href_list["adminmoreinfo"]) diff --git a/code/modules/events/devil.dm b/code/modules/events/devil.dm index 21fad5037da..4f683a8f6f2 100644 --- a/code/modules/events/devil.dm +++ b/code/modules/events/devil.dm @@ -33,7 +33,9 @@ var/mob/living/carbon/human/devil = create_event_devil(spawn_loc) Mind.transfer_to(devil) ticker.mode.finalize_devil(Mind) + ticker.mode.add_devil_objectives(src, 2) Mind.announceDevilLaws() + Mind.announce_objectives() spawned_mobs += devil diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index ab5600cfa12..eb4e7d9c45d 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -1062,12 +1062,7 @@ O = new /datum/objective/sintouched/pride ticker.mode.sintouched += src.mind src.mind.objectives += O - var/obj_count = 1 - src << "Your current objectives:" - for(O in src.mind.objectives) - var/datum/objective/objective = O - src << "Objective #[obj_count]: [objective.explanation_text]" - obj_count++ + src.mind.announce_objectives() /mob/living/carbon/human/check_weakness(obj/item/weapon, mob/living/attacker) . = ..() diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index be826e0fd91..a7036f009e5 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -1036,7 +1036,10 @@ Sorry Giacom. Please don't be mad :( return 1 /mob/living/proc/return_soul() + hellbound = 0 if(mind) + if(mind.soulOwner.devilinfo)//Not sure how this could happen, but whatever. + mind.soulOwner.devilinfo.remove_soul(mind) mind.soulOwner = mind /mob/living/proc/has_bane(banetype) diff --git a/code/modules/paperwork/contract.dm b/code/modules/paperwork/contract.dm index 9974737affd..5817b793899 100644 --- a/code/modules/paperwork/contract.dm +++ b/code/modules/paperwork/contract.dm @@ -3,7 +3,7 @@ /obj/item/weapon/paper/contract throw_range = 3 throw_speed = 3 - var/signed = 0 + var/signed = FALSE var/datum/mind/target flags = NOBLUDGEON @@ -107,7 +107,7 @@ ..() /obj/item/weapon/paper/contract/infernal/update_text() - info = "This shouldn't be seen. Error DEVIL:5" + info = "This shouldn't be seen. Error DEVIL:6" /obj/item/weapon/paper/contract/infernal/power/update_text(var/signature = "____________") info = "
Contract for infernal power



I, [target] of sound mind, do hereby willingly offer my soul to the infernal hells by way of the infernal agent [owner.devilinfo.truename], in exchange for power and physical strength. I understand that upon my demise, my soul shall fall into the infernal hells, and my body may not be resurrected, cloned, or otherwise brought back to life. I also understand that this will prevent my brain from being used in an MMI.


Signed, [signature]" @@ -143,25 +143,28 @@ /obj/item/weapon/paper/contract/infernal/attack(mob/M, mob/living/user) add_fingerprint(user) - if(M == user && target == M.mind && M.mind.soulOwner == M.mind && attempt_signature(user)) + if(M == user && target == M.mind && M.mind.soulOwner != owner && attempt_signature(user)) user.visible_message("[user] slices their wrist with [src], and scrawls their name in blood.", "You slice your wrist open and scrawl your name in blood.") user.blood_volume = max(user.blood_volume - 10, 0) else return ..() /obj/item/weapon/paper/contract/infernal/proc/attempt_signature(mob/living/carbon/human/user) - if(user.IsAdvancedToolUser()) + if(user.IsAdvancedToolUser() && user.is_literate()) if(user.mind == target) - if(user.mind.soulOwner == user.mind) + if(user.mind.soulOwner != owner) if (contractType == CONTRACT_REVIVE) user << "You are already alive, this contract would do nothing." else - user << "You quickly scrawl your name on the contract" - if(FulfillContract()<=0) - user << "But it seemed to have no effect, perhaps even Hell itself cannot grant this boon?" - return 1 + if(signed) + user<< "This contract has already been signed. It may not be signed again." + else + user << "You quickly scrawl your name on the contract" + if(FulfillContract()<=0) + user << "But it seemed to have no effect, perhaps even Hell itself cannot grant this boon?" + return 1 else - user << "You are not in possession of your soul, you may not sell it." + user << "This devil already owns your soul, you may not sell it to them again." else user << "Your signature simply slides off the sheet, it seems this contract is not meant for you to sign." else @@ -196,6 +199,8 @@ /obj/item/weapon/paper/contract/infernal/proc/FulfillContract(mob/living/carbon/human/user = target.current) signed = 1 + if(user.mind.soulOwner != user.mind) //They already sold their soul to someone else? + user.mind.soulOwner.devilinfo.remove_soul(user.mind) //Then they lose their claim. user.mind.soulOwner = owner user.hellbound = contractType user.mind.damnation_type = contractType diff --git a/code/modules/spells/spell_types/devil.dm b/code/modules/spells/spell_types/devil.dm index 87e1d2fcd24..04792d84b6c 100644 --- a/code/modules/spells/spell_types/devil.dm +++ b/code/modules/spells/spell_types/devil.dm @@ -108,12 +108,17 @@ if(istype(user)) if(istype(user.loc, /obj/effect/dummy/slaughter/)) var/continuing = 0 - for(var/mob/living/C in orange(2, get_turf(user.loc))) - if (C.mind && C.mind.soulOwner == C.mind) - continuing = 1 - break + if(istype(get_area(user), /area/shuttle/)) // Can always phase in in a shuttle. + continuing = 1 + else + for(var/mob/living/C in orange(2, get_turf(user.loc))) //Can also phase in when nearby a potential buyer. + if (C.mind && C.mind.soulOwner == C.mind) + continuing = 1 + break if(continuing) - addtimer(user,"infernalphasein",150,TRUE) + user << "You are now phasing in." + if(do_mob(user,user,150)) + user.infernalphasein() else user << "You can only re-appear near a potential signer." revert_cast() @@ -122,21 +127,22 @@ user.notransform = 1 user.fakefire() src << "You begin to phase back into sinful flames." - addtimer(user, "infernalphaseout",150,TRUE,get_turf(user)) + if(do_mob(user,user,150)) + user.infernalphaseout() + else + user << "You must remain still while exiting." + user.ExtinguishMob() start_recharge() return revert_cast() -/mob/living/proc/infernalphaseout(var/turf/mobloc) - if(get_turf(src) != mobloc) - src << "You must remain still while exiting." - return +/mob/living/proc/infernalphaseout() dust_animation() spawn_dust() src.visible_message("[src] disappears in a flashfire!") playsound(get_turf(src), 'sound/magic/enter_blood.ogg', 100, 1, -1) - var/obj/effect/dummy/slaughter/holder = PoolOrNew(/obj/effect/dummy/slaughter,mobloc) + var/obj/effect/dummy/slaughter/holder = PoolOrNew(/obj/effect/dummy/slaughter,loc) src.ExtinguishMob() if(buckled) buckled.unbuckle_mob(src,force=1) diff --git a/config/game_options.txt b/config/game_options.txt index 696eb46c1f8..798460b4c1b 100644 --- a/config/game_options.txt +++ b/config/game_options.txt @@ -96,6 +96,8 @@ PROBABILITY RAGINMAGES 2 PROBABILITY MONKEY 0 PROBABILITY METEOR 0 PROBABILITY EXTENDED 0 +PROBABILITY DEVIL 0 +PROBABILITY DEVIL_AGENTS 0 ## You probably want to keep sandbox off by default for secret and random. PROBABILITY SANDBOX 0 diff --git a/tgstation.dme b/tgstation.dme index b9f4e975f30..dc0efcc497d 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -343,7 +343,9 @@ #include "code\game\gamemodes\devil\devil.dm" #include "code\game\gamemodes\devil\devil_game_mode.dm" #include "code\game\gamemodes\devil\devilinfo.dm" +#include "code\game\gamemodes\devil\game_mode.dm" #include "code\game\gamemodes\devil\objectives.dm" +#include "code\game\gamemodes\devil\devil agent\devil_agent.dm" #include "code\game\gamemodes\devil\imp\imp.dm" #include "code\game\gamemodes\devil\true_devil\_true_devil.dm" #include "code\game\gamemodes\devil\true_devil\inventory.dm" From bdb72c94d55886af5801a40758769786843fe53b Mon Sep 17 00:00:00 2001 From: tgstation-server Date: Sun, 31 Jul 2016 05:02:22 +0000 Subject: [PATCH 040/154] Automatic changelog generation for PR #19391 [ci skip] --- html/changelogs/AutoChangeLog-pr-19391.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-19391.yml diff --git a/html/changelogs/AutoChangeLog-pr-19391.yml b/html/changelogs/AutoChangeLog-pr-19391.yml new file mode 100644 index 00000000000..01e8eec8f8f --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-19391.yml @@ -0,0 +1,5 @@ +author: "lordpidey" +delete-after: True +changes: + - rscadd: "Added Devil agent gamemode, where multiple devils are each trying to buy more souls than the next in line." + - rscadd: "If you've already sold your soul, you can sell it again to a different devil. You can even go back and forth for INFINITE POWER." From 09baaf57ae50ece16d4dc12f0338e41218e9028d Mon Sep 17 00:00:00 2001 From: tgstation-server Date: Sun, 31 Jul 2016 05:03:40 +0000 Subject: [PATCH 041/154] Automatic changelog generation for PR #19578 [ci skip] --- html/changelogs/AutoChangeLog-pr-19578.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-19578.yml diff --git a/html/changelogs/AutoChangeLog-pr-19578.yml b/html/changelogs/AutoChangeLog-pr-19578.yml new file mode 100644 index 00000000000..2910fa30921 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-19578.yml @@ -0,0 +1,4 @@ +author: "Joan" +delete-after: True +changes: + - rscadd: "Megafauna will now seek and consume corpses of enemies to heal or otherwise." From e7ddd053d9f7bdb5f85f19771d4f518d1067fc25 Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Sun, 31 Jul 2016 00:05:06 -0500 Subject: [PATCH 042/154] Fixes drones being hurt by shocks --- code/modules/mob/living/simple_animal/friendly/drone/_drone.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm index fac8d25c9db..5a51f26c481 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm @@ -259,3 +259,6 @@ /mob/living/simple_animal/drone/bee_friendly() // Why would bees pay attention to drones? return 1 + +/mob/living/simple_animal/drone/electrocute_act(shock_damage, obj/source, siemens_coeff = 1, safety = 0, tesla_shock = 0) + return 0 //So they don't die trying to fix wiring \ No newline at end of file From bba7fab257574a84e8766a9854b73c762780f359 Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Sun, 31 Jul 2016 09:57:11 -0400 Subject: [PATCH 043/154] additions --- code/modules/uplink/uplink.dm | 12 ++++++++++-- code/modules/uplink/uplink_item.dm | 2 ++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/code/modules/uplink/uplink.dm b/code/modules/uplink/uplink.dm index 8070d55d1d6..a1b9bf984ad 100644 --- a/code/modules/uplink/uplink.dm +++ b/code/modules/uplink/uplink.dm @@ -30,8 +30,16 @@ var/global/list/uplinks = list() /obj/item/device/uplink/attackby(obj/item/I, mob/user, params) for(var/item in subtypesof(/datum/uplink_item)) var/datum/uplink_item/UI = item - var/path = initial(UI.item) - var/cost = initial(UI.cost) + var/path = null + if(initial(UI.refund_path)) + path = initial(UI.refund_path) + else + path = initial(UI.item) + var/cost = 0 + if(initial(UI.refund_amount)) + cost = initial(UI.refund_amount) + else + cost = initial(UI.cost) var/refundable = initial(UI.refundable) if(I.type == path && refundable && I.check_uplink_validity()) telecrystals += cost diff --git a/code/modules/uplink/uplink_item.dm b/code/modules/uplink/uplink_item.dm index 1f212b7b602..db0d86a9863 100644 --- a/code/modules/uplink/uplink_item.dm +++ b/code/modules/uplink/uplink_item.dm @@ -44,7 +44,9 @@ var/list/uplink_items = list() // Global list so we only initialize this once. var/category = "item category" var/desc = "item description" var/item = null // Path to the item to spawn. + var/refund_path = null // Alternative path for refunds, in case the item purchased isn't what is actually refunded (ie: holoparasites). var/cost = 0 + var/refund_amount = 0 // specified refund amount in case there needs to be a TC penalty for refunds. var/refundable = FALSE var/surplus = 100 // Chance of being included in the surplus crate. var/list/include_modes = list() // Game modes to allow this item in. From 1b9256857c21e7ac50a6420c97083e2ca60a8357 Mon Sep 17 00:00:00 2001 From: unknown Date: Sun, 31 Jul 2016 10:47:36 -0400 Subject: [PATCH 044/154] Made biogenerator recipes into research datums. Added the ability to upload designs into biogenerators. Added make_reagents to design datums. Added Biomass material. --- code/__DEFINES/machines.dm | 1 + code/__DEFINES/misc.dm | 1 + code/datums/material_container.dm | 8 +- code/game/machinery/autolathe.dm | 3 + code/modules/hydroponics/biogenerator.dm | 267 ++++++------------ code/modules/research/designs.dm | 3 +- .../research/designs/biogenerator_designs.dm | 212 ++++++++++++++ code/modules/research/rdconsole.dm | 4 + code/modules/research/research.dm | 16 ++ tgstation.dme | 1 + 10 files changed, 338 insertions(+), 178 deletions(-) create mode 100644 code/modules/research/designs/biogenerator_designs.dm diff --git a/code/__DEFINES/machines.dm b/code/__DEFINES/machines.dm index a0877b8d756..27280edfd79 100644 --- a/code/__DEFINES/machines.dm +++ b/code/__DEFINES/machines.dm @@ -21,4 +21,5 @@ #define AUTOLATHE 4 //Uses glass/metal only. #define CRAFTLATHE 8 //Uses fuck if I know. For use eventually. #define MECHFAB 16 //Remember, objects utilising this flag should have construction_time and construction_cost vars. +#define BIOGENERATOR 32 //Uses biomass //Note: More then one of these can be added to a design but imprinter and lathe designs are incompatable. \ No newline at end of file diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index 794528c3533..b07c05179d9 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -263,6 +263,7 @@ #define MAT_PLASMA "$plasma" #define MAT_BANANIUM "$bananium" #define MAT_TITANIUM "$titanium" +#define MAT_BIOMASS "$biomass" //check_target_facings() return defines diff --git a/code/datums/material_container.dm b/code/datums/material_container.dm index e299c42ab48..c158dfa4820 100644 --- a/code/datums/material_container.dm +++ b/code/datums/material_container.dm @@ -137,6 +137,8 @@ //For spawning mineral sheets; internal use only /datum/material_container/proc/retrieve(sheet_amt, datum/material/M) + if(!M.sheet_type) + return 0 if(sheet_amt > 0) if(M.amount < (sheet_amt * MINERAL_MATERIAL_AMOUNT)) sheet_amt = round(M.amount / MINERAL_MATERIAL_AMOUNT) @@ -267,4 +269,8 @@ /datum/material/titanium name = "Titanium" id = MAT_TITANIUM - sheet_type = /obj/item/stack/sheet/mineral/titanium \ No newline at end of file + sheet_type = /obj/item/stack/sheet/mineral/titanium + +/datum/material/biomass + name = "Biomass" + id = MAT_BIOMASS diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 53e482f751f..b09030852e0 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -342,6 +342,9 @@ return dat /obj/machinery/autolathe/proc/can_build(datum/design/D) + if(D.make_reagents.len) + return 0 + var/coeff = (ispath(D.build_path,/obj/item/stack) ? 1 : prod_coeff) if(D.materials[MAT_METAL] && (materials.amount(MAT_METAL) < (D.materials[MAT_METAL] * coeff))) diff --git a/code/modules/hydroponics/biogenerator.dm b/code/modules/hydroponics/biogenerator.dm index 43fed6a2185..f84a4c72e82 100644 --- a/code/modules/hydroponics/biogenerator.dm +++ b/code/modules/hydroponics/biogenerator.dm @@ -14,9 +14,13 @@ var/efficiency = 0 var/productivity = 0 var/max_items = 40 + var/datum/research/files + var/list/show_categories = list("Food", "Botany Chemicals", "Leather and Cloth") + var/list/timesFiveCategories = list("Food", "Botany Chemicals") /obj/machinery/biogenerator/New() ..() + files = new /datum/research/biogenerator(src) create_reagents(1000) var/obj/item/weapon/circuitboard/machine/B = new /obj/item/weapon/circuitboard/machine/biogenerator(null) B.apply_default_parts(src) @@ -59,6 +63,9 @@ return /obj/machinery/biogenerator/attackby(obj/item/O, mob/user, params) + if(user.a_intent == "harm") + return ..() + if(processing) user << "The biogenerator is currently processing." return @@ -126,11 +133,18 @@ O.loc = src user << "You put [O.name] in [src.name]" return 1 //no afterattack - - else if(user.a_intent != "harm") - user << "You cannot put this in [src.name]!" + else if (istype(O, /obj/item/weapon/disk/design_disk)) + user.visible_message("[user] begins to load \the [O] in \the [src]...", + "You begin to load a design from \the [O]...", + "You hear the chatter of a floppy drive.") + processing = 1 + var/obj/item/weapon/disk/design_disk/D = O + if(do_after(user, 10, target = src)) + files.AddDesign2Known(D.blueprint) + processing = 0 + return 1 else - return ..() + user << "You cannot put this in [src.name]!" /obj/machinery/biogenerator/interact(mob/user) if(stat & BROKEN || panel_open) @@ -142,7 +156,7 @@ else switch(menustat) if("nopoints") - dat += "
You do not have biomass to create products.
Please, put growns into reactor and activate it.
" + dat += "
You do not have enough biomass to create products.
Please, put growns into reactor and activate it.
" menustat = "menu" if("complete") dat += "
Operation complete.
" @@ -154,43 +168,29 @@ dat += "
Not enough space left in container. Unable to create product.
" menustat = "menu" if(beaker) + var/categories = show_categories.Copy() + for(var/V in categories) + categories[V] = list() + for(var/V in files.known_designs) + var/datum/design/D = files.known_designs[V] + for(var/C in categories) + if(C in D.category) + categories[C] += D + dat += "
Biomass: [points] units.

" dat += "ActivateDetach Container" - dat += "

Food:

" - dat += "
" - dat += "10 milk: Makex5 ([20/efficiency])
" - dat += "10 cream: Makex5 ([30/efficiency])
" - dat += "Milk carton: Makex5 ([100/efficiency])
" - dat += "Cream carton: Makex5 ([300/efficiency])
" - dat += "10u black pepper: Makex5 ([25/efficiency])
" - dat += "Pepper mill: Makex5 ([50/efficiency])
" - dat += "Monkey cube: Makex5 ([250/efficiency])" - dat += "
" - dat += "

Botany Chemicals:

" - dat += "
" - dat += "E-Z-Nutrient: Makex5 ([10/efficiency])
" - dat += "Left 4 Zed: Makex5 ([20/efficiency])
" - dat += "Robust Harvest: Makex5 ([25/efficiency])
" - dat += "Weed Killer: Makex5 ([50/efficiency])
" - dat += "Pest Killer: Makex5 ([50/efficiency])
" - dat += "Empty bottle: Makex5 ([5/efficiency])
" - dat += "
" - dat += "

Leather and Cloth:

" - dat += "
" - dat += "Roll of cloth: Makex10 ([50/efficiency])
" - dat += "Wallet: Make ([100/efficiency])
" - dat += "Botanical gloves: Make ([250/efficiency])
" - dat += "Utility belt: Make ([300/efficiency])
" - dat += "Security belt: Make ([300/efficiency])
" - dat += "Medical belt: Make ([300/efficiency])
" - dat += "Janitorial belt: Make ([300/efficiency])
" - dat += "Bandolier belt: Make ([300/efficiency])
" - dat += "Shoulder holster: Make ([400/efficiency])
" - dat += "Leather satchel: Make ([400/efficiency])
" - dat += "Leather jacket: Make ([500/efficiency])
" - dat += "Leather overcoat: Make ([1000/efficiency])
" - dat += "Rice hat: Make ([300/efficiency])
" - dat += "
" + for(var/cat in categories) + dat += "

[cat]:

" + dat += "
" + for(var/V in categories[cat]) + var/datum/design/D = V + dat += "[D.name]: Make" + if(cat in timesFiveCategories) + dat += "x5" + if(ispath(D.build_path, /obj/item/stack)) + dat += "x10" + dat += "([D.materials[MAT_BIOMASS]/efficiency])
" + dat += "
" else dat += "
No container inside, please insert container.
" @@ -207,7 +207,7 @@ return if (src.stat != 0) //NOPOWER etc return - if(src.processing) + if(processing) usr << "The biogenerator is in the process of working." return var/S = 0 @@ -230,142 +230,62 @@ menustat = "void" return -/obj/machinery/biogenerator/proc/check_cost(cost) - if (cost > points) +/obj/machinery/biogenerator/proc/check_cost(list/materials, multiplier = 1, remove_points = 1) + if(materials.len != 1 || materials[1] != MAT_BIOMASS) + return 0 + if (materials[MAT_BIOMASS]*multiplier/efficiency > points) menustat = "nopoints" - return 1 + return 0 else - points -= cost - processing = 1 + if(remove_points) + points -= materials[MAT_BIOMASS]*multiplier/efficiency update_icon() updateUsrDialog() - return 0 - -/obj/machinery/biogenerator/proc/check_container_volume(reagent_amount) - if(beaker.reagents.total_volume + reagent_amount > beaker.reagents.maximum_volume) - menustat = "nobeakerspace" return 1 -/obj/machinery/biogenerator/proc/create_product(create) - switch(create) - if("milk") - if(check_container_volume(10)) - return 0 - else if (check_cost(20/efficiency)) - return 0 - else beaker.reagents.add_reagent("milk",10) - if("bpepper") - if(check_container_volume(10)) - return 0 - else if (check_cost(25/efficiency)) - return 0 - else beaker.reagents.add_reagent("blackpepper",10) - if("cream") - if(check_container_volume(10)) - return 0 - else if (check_cost(30/efficiency)) - return 0 - else beaker.reagents.add_reagent("cream",10) - if("cmilk") - if (check_cost(100/efficiency)) - return 0 - else new/obj/item/weapon/reagent_containers/food/condiment/milk(src.loc) - if("mpepper") - if (check_cost(50/efficiency)) - return 0 - else new/obj/item/weapon/reagent_containers/food/condiment/peppermill(src.loc) - if("ccream") - if (check_cost(300/efficiency)) - return 0 - else new/obj/item/weapon/reagent_containers/food/drinks/bottle/cream(src.loc) - if("meat") - if (check_cost(250/efficiency)) - return 0 - else new/obj/item/weapon/reagent_containers/food/snacks/monkeycube(src.loc) - if("ez") - if (check_cost(10/efficiency)) - return 0 - else new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez(src.loc) - if("l4z") - if (check_cost(20/efficiency)) - return 0 - else new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/l4z(src.loc) - if("rh") - if (check_cost(25/efficiency)) - return 0 - else new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh(src.loc) - if("wk") - if (check_cost(50/efficiency)) - return 0 - else new/obj/item/weapon/reagent_containers/glass/bottle/killer/weedkiller(src.loc) - if("pk") - if (check_cost(50/efficiency)) - return 0 - else new/obj/item/weapon/reagent_containers/glass/bottle/killer/pestkiller(src.loc) - if("empty") - if (check_cost(5/efficiency)) - return 0 - else new/obj/item/weapon/reagent_containers/glass/bottle/nutrient/empty(src.loc) - if("cloth") - if (check_cost(50/efficiency)) - return 0 - else new/obj/item/stack/sheet/cloth(src.loc) - if("tencloth") - if (check_cost(500/efficiency)) - return 0 - else new/obj/item/stack/sheet/cloth/ten(src.loc) - if("wallet") - if (check_cost(100/efficiency)) - return 0 - else new/obj/item/weapon/storage/wallet(src.loc) - if("gloves") - if (check_cost(250/efficiency)) - return 0 - else new/obj/item/clothing/gloves/botanic_leather(src.loc) - if("tbelt") - if (check_cost(300/efficiency)) - return 0 - else new/obj/item/weapon/storage/belt/utility(src.loc) - if("sbelt") - if (check_cost(300/efficiency)) - return 0 - else new/obj/item/weapon/storage/belt/security(src.loc) - if("mbelt") - if (check_cost(300/efficiency)) - return 0 - else new/obj/item/weapon/storage/belt/medical(src.loc) - if("jbelt") - if (check_cost(300/efficiency)) - return 0 - else new/obj/item/weapon/storage/belt/janitor(src.loc) - if("bbelt") - if (check_cost(300/efficiency)) - return 0 - else new/obj/item/weapon/storage/belt/bandolier(src.loc) - if("sholster") - if (check_cost(400/efficiency)) - return 0 - else new/obj/item/weapon/storage/belt/holster(src.loc) - if("satchel") - if (check_cost(400/efficiency)) - return 0 - else new/obj/item/weapon/storage/backpack/satchel(src.loc) - if("jacket") - if (check_cost(500/efficiency)) - return 0 - else new/obj/item/clothing/suit/jacket/leather(src.loc) - if("overcoat") - if (check_cost(1000/efficiency)) - return 0 - else new/obj/item/clothing/suit/jacket/leather/overcoat(src.loc) - if("rice_hat") - if (check_cost(300/efficiency)) - return 0 - else new/obj/item/clothing/head/rice_hat(src.loc) - processing = 0 +/obj/machinery/biogenerator/proc/check_container_volume(list/reagents, multiplier = 1) + var/sum_reagents = 0 + for(var/R in reagents) + sum_reagents += reagents[R] + sum_reagents *= multiplier + + if(beaker.reagents.total_volume + sum_reagents > beaker.reagents.maximum_volume) + menustat = "nobeakerspace" + return 0 + + return 1 + +/obj/machinery/biogenerator/proc/create_product(datum/design/D, amount) + if(!beaker || !loc) + return 0 + + if(ispath(D.build_path, /obj/item/stack)) + if(!check_container_volume(D.make_reagents, amount)) + return 0 + if(!check_cost(D.materials, amount)) + return 0 + + var/obj/item/stack/product = new D.build_path(loc) + product.amount = amount + for(var/R in D.make_reagents) + beaker.reagents.add_reagent(R, D.make_reagents[R]*amount) + else + var/i = amount + while(i > 0) + if(!check_container_volume(D.make_reagents)) + return . + if(!check_cost(D.materials)) + return . + if(D.build_path) + new D.build_path(loc) + for(var/R in D.make_reagents) + beaker.reagents.add_reagent(R, D.make_reagents[R]) + . = 1 + --i + menustat = "complete" update_icon() - return 1 + return . /obj/machinery/biogenerator/proc/detach() if(beaker) @@ -389,13 +309,8 @@ else if(href_list["create"]) var/amount = (text2num(href_list["amount"])) - var/i = amount - var/C = href_list["create"] - if(i <= 0) - return - while(i >= 1) - create_product(C) - i-- + var/datum/design/D = locate(href_list["create"]) + create_product(D, amount) updateUsrDialog() else if(href_list["menu"]) diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm index 59e03a95b58..8d2f17106e7 100644 --- a/code/modules/research/designs.dm +++ b/code/modules/research/designs.dm @@ -34,7 +34,8 @@ other types of metals and chemistry for reagents). var/build_type = null //Flag as to what kind machine the design is built in. See defines. var/list/materials = list() //List of materials. Format: "id" = amount. var/construction_time //Amount of time required for building the object - var/build_path = "" //The file path of the object that gets created + var/build_path = null //The file path of the object that gets created + var/list/make_reagents = list() //Reagents produced. Format: "id" = amount. Currently only supported by the biogenerator. var/list/category = null //Primarily used for Mech Fabricators, but can be used for anything var/list/reagents = list() //List of reagents. Format: "id" = amount. var/maxstack = 1 diff --git a/code/modules/research/designs/biogenerator_designs.dm b/code/modules/research/designs/biogenerator_designs.dm new file mode 100644 index 00000000000..bbac5bda92b --- /dev/null +++ b/code/modules/research/designs/biogenerator_designs.dm @@ -0,0 +1,212 @@ +/////////////////////////////////// +///////Biogenerator Designs /////// +/////////////////////////////////// + +/datum/design/milk + name = "10 milk" + id = "milk" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 20) + make_reagents = list("milk" = 10) + category = list("initial","Food") + +/datum/design/cream + name = "10 cream" + id = "cream" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 30) + make_reagents = list("cream" = 10) + category = list("initial","Food") + +/datum/design/milk_carton + name = "Milk carton" + id = "milk_carton" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 100) + build_path = /obj/item/weapon/reagent_containers/food/condiment/milk + category = list("initial","Food") + +/datum/design/cream_carton + name = "Cream carton" + id = "cream_carton" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 300) + build_path = /obj/item/weapon/reagent_containers/food/drinks/bottle/cream + category = list("initial","Food") + +/datum/design/black_pepper + name = "10u black pepper" + id = "black_pepper" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 25) + make_reagents = list("blackpepper" = 10) + category = list("initial","Food") + +/datum/design/pepper_mill + name = "Pepper mill" + id = "pepper_mill" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 50) + build_path = /obj/item/weapon/reagent_containers/food/condiment/peppermill + make_reagents = list() + category = list("initial","Food") + +/datum/design/monkey_cube + name = "Monkey cube" + id = "mcube" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 250) + build_path = /obj/item/weapon/reagent_containers/food/snacks/monkeycube + category = list("initial", "Food") + +/datum/design/ez_nut + name = "E-Z-Nutrient" + id = "ez_nut" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 10) + build_path = /obj/item/weapon/reagent_containers/glass/bottle/nutrient/ez + category = list("initial","Botany Chemicals") + +/datum/design/l4z_nut + name = "Left 4 Zed" + id = "l4z_nut" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 20) + build_path = /obj/item/weapon/reagent_containers/glass/bottle/nutrient/l4z + category = list("initial","Botany Chemicals") + +/datum/design/rh_nut + name = "Robust Harvest" + id = "rh_nut" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 25) + build_path = /obj/item/weapon/reagent_containers/glass/bottle/nutrient/rh + category = list("initial","Botany Chemicals") + +/datum/design/weed_killer + name = "Weed Killer" + id = "weed_killer" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 50) + build_path = /obj/item/weapon/reagent_containers/glass/bottle/killer/weedkiller + category = list("initial","Botany Chemicals") + +/datum/design/pest_spray + name = "Pest Killer" + id = "pest_spray" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 50) + build_path = /obj/item/weapon/reagent_containers/glass/bottle/killer/pestkiller + category = list("initial","Botany Chemicals") + +/datum/design/botany_bottle + name = "Empty Bottle" + id = "botany_bottle" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 5) + build_path = /obj/item/weapon/reagent_containers/glass/bottle/nutrient/empty + category = list("initial", "Botany Chemicals") + +/datum/design/cloth + name = "Roll of cloth" + id = "cloth" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 50) + build_path = /obj/item/stack/sheet/cloth + category = list("initial","Leather and Cloth") + +/datum/design/wallet + name = "Wallet" + id = "wallet" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 100) + build_path = /obj/item/weapon/storage/wallet + category = list("initial","Leather and Cloth") + +/datum/design/botany_gloves + name = "Botanical gloves" + id = "botany_gloves" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 250) + build_path = /obj/item/clothing/gloves/botanic_leather + category = list("initial","Leather and Cloth") + +/datum/design/toolbelt + name = "Utility Belt" + id = "toolbelt" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 300) + build_path = /obj/item/weapon/storage/belt/utility + category = list("initial","Leather and Cloth") + +/datum/design/secbelt + name = "Security belt" + id = "secbelt" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 300) + build_path = /obj/item/weapon/storage/belt/security + category = list("initial","Leather and Cloth") + +/datum/design/medbelt + name = "Medical belt" + id = "medbel" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 300) + build_path = /obj/item/weapon/storage/belt/medical + category = list("initial","Leather and Cloth") + +/datum/design/janibelt + name = "Janitorial belt" + id = "janibelt" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 300) + build_path = /obj/item/weapon/storage/belt/janitor + category = list("initial","Leather and Cloth") + +/datum/design/bandolier + name = "Bandolier belt" + id = "bandolier" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 300) + build_path = /obj/item/weapon/storage/belt/bandolier + category = list("initial","Leather and Cloth") + +/datum/design/s_holster + name = "Shoulder holster" + id = "s_holster" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 400) + build_path = /obj/item/weapon/storage/belt/holster + category = list("initial","Leather and Cloth") + +/datum/design/leather_satchel + name = "Leather satchel" + id = "leather_satchel" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 400) + build_path = /obj/item/weapon/storage/backpack/satchel + category = list("initial","Leather and Cloth") + +/datum/design/leather_jacket + name = "Leather jacket" + id = "leather_jacket" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 500) + build_path = /obj/item/clothing/suit/jacket/leather + category = list("initial","Leather and Cloth") + +/datum/design/leather_overcoat + name = "Leather overcoat" + id = "leather_overcoat" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 1000) + build_path = /obj/item/clothing/suit/jacket/leather/overcoat + category = list("initial","Leather and Cloth") + +/datum/design/rice_hat + name = "Rice hat" + id = "rice_hat" + build_type = BIOGENERATOR + materials = list(MAT_BIOMASS = 300) + build_path = /obj/item/clothing/head/rice_hat + category = list("initial","Leather and Cloth") diff --git a/code/modules/research/rdconsole.dm b/code/modules/research/rdconsole.dm index e51445ce616..4a186f05f22 100644 --- a/code/modules/research/rdconsole.dm +++ b/code/modules/research/rdconsole.dm @@ -341,6 +341,9 @@ won't update every console in existence) but it's more of a hassle to do. Also, var/datum/design/being_built = files.known_designs[href_list["build"]] var/amount = text2num(href_list["amount"]) + if(being_built.make_reagents.len) + return 0 + if(!linked_lathe || !being_built || !amount) updateUsrDialog() return @@ -682,6 +685,7 @@ won't update every console in existence) but it's more of a hassle to do. Also, if(b_type & PROTOLATHE) dat += "Protolathe
" if(b_type & AUTOLATHE) dat += "Autolathe
" if(b_type & MECHFAB) dat += "Exosuit Fabricator
" + if(b_type & BIOGENERATOR) dat += "Biogenerator
" dat += "Required Materials:
" var/all_mats = d_disk.blueprint.materials + d_disk.blueprint.reagents for(var/M in all_mats) diff --git a/code/modules/research/research.dm b/code/modules/research/research.dm index 13b165cb61c..e96df1dca9f 100644 --- a/code/modules/research/research.dm +++ b/code/modules/research/research.dm @@ -148,6 +148,22 @@ research holder datum. return ..() +//Biogenerator files +/datum/research/biogenerator/New() + for(var/T in (subtypesof(/datum/tech))) + possible_tech += new T(src) + for(var/path in subtypesof(/datum/design)) + var/datum/design/D = new path(src) + possible_designs += D + if((D.build_type & BIOGENERATOR) && ("initial" in D.category)) + AddDesign2Known(D) + +/datum/research/biogenerator/AddDesign2Known(datum/design/D) + if(!(D.build_type & BIOGENERATOR)) + return + ..() + + /*************************************************************** ** Technology Datums ** ** Includes all the various technoliges and what they make. ** diff --git a/tgstation.dme b/tgstation.dme index dc0efcc497d..e84acff0634 100644 --- a/tgstation.dme +++ b/tgstation.dme @@ -1699,6 +1699,7 @@ #include "code\modules\research\stock_parts.dm" #include "code\modules\research\designs\AI_module_designs.dm" #include "code\modules\research\designs\autolathe_designs.dm" +#include "code\modules\research\designs\biogenerator_designs.dm" #include "code\modules\research\designs\comp_board_designs.dm" #include "code\modules\research\designs\machine_designs.dm" #include "code\modules\research\designs\mecha_designs.dm" From 3ac30349f4657da0529091c5a1f39eecaadfc65e Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Sun, 31 Jul 2016 12:37:07 -0400 Subject: [PATCH 045/154] Vanguard now only stuns for 25% of the absorbed stuns, from 50% (#19608) --- code/game/gamemodes/clock_cult/clock_scripture.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/game/gamemodes/clock_cult/clock_scripture.dm b/code/game/gamemodes/clock_cult/clock_scripture.dm index 67aefeac17f..1420cf0dd18 100644 --- a/code/game/gamemodes/clock_cult/clock_scripture.dm +++ b/code/game/gamemodes/clock_cult/clock_scripture.dm @@ -223,10 +223,10 @@ Judgement: 10 servants, 100 CV, and any existing AIs are converted or destroyed -/datum/clockwork_scripture/vanguard //Vanguard: Provides twenty seconds of stun immunity. At the end of the twenty seconds, 50% of all stuns absorbed are applied to the invoker. +/datum/clockwork_scripture/vanguard //Vanguard: Provides twenty seconds of stun immunity. At the end of the twenty seconds, 25% of all stuns absorbed are applied to the invoker. descname = "Self Stun Immunity" name = "Vanguard" - desc = "Provides twenty seconds of stun immunity. At the end of the twenty seconds, the invoker is stunned for the equivalent of 50% of all stuns they absorbed. \ + desc = "Provides twenty seconds of stun immunity. At the end of the twenty seconds, the invoker is stunned for the equivalent of 25% of all stuns they absorbed. \ Excessive absorption will cause unconsciousness." invocations = list("Shield me...", "...from darkness!") channel_time = 30 @@ -251,7 +251,7 @@ Judgement: 10 servants, 100 CV, and any existing AIs are converted or destroyed var/vanguard = invoker.stun_absorption["vanguard"] var/stuns_blocked = 0 if(vanguard) - stuns_blocked = min(vanguard["stuns_absorbed"] * 0.5, 20) + stuns_blocked = min(vanguard["stuns_absorbed"] * 0.25, 20) if(invoker.stat != DEAD) var/message_to_invoker = "You feel your Vanguard quietly fade..." var/otheractiveabsorptions = FALSE From 51aff82ac733f1b81ed80feb4e29fc3c156c6c7e Mon Sep 17 00:00:00 2001 From: tgstation-server Date: Sun, 31 Jul 2016 16:37:08 +0000 Subject: [PATCH 046/154] Automatic changelog generation for PR #19608 [ci skip] --- html/changelogs/AutoChangeLog-pr-19608.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-19608.yml diff --git a/html/changelogs/AutoChangeLog-pr-19608.yml b/html/changelogs/AutoChangeLog-pr-19608.yml new file mode 100644 index 00000000000..e36ab7dd7ec --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-19608.yml @@ -0,0 +1,4 @@ +author: "Joan" +delete-after: True +changes: + - tweak: "Vanguard now only stuns for 25% of absorbed stuns, from 50%." From a6decc14ab16fd184e4cafc0dc4a7c72bbb3a737 Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Sun, 31 Jul 2016 12:37:37 -0400 Subject: [PATCH 047/154] Increases toolbox force by 20% (#19592) --- code/game/objects/items/weapons/storage/toolbox.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/objects/items/weapons/storage/toolbox.dm b/code/game/objects/items/weapons/storage/toolbox.dm index 53693b855b3..62ace83774f 100644 --- a/code/game/objects/items/weapons/storage/toolbox.dm +++ b/code/game/objects/items/weapons/storage/toolbox.dm @@ -4,8 +4,8 @@ icon_state = "red" item_state = "toolbox_red" flags = CONDUCT - force = 10 - throwforce = 10 + force = 12 + throwforce = 12 throw_speed = 2 throw_range = 7 w_class = 4 From 427ac2d63a563fdf19f608dd8e5f55ff67cc57b2 Mon Sep 17 00:00:00 2001 From: tgstation-server Date: Sun, 31 Jul 2016 16:37:38 +0000 Subject: [PATCH 048/154] Automatic changelog generation for PR #19592 [ci skip] --- html/changelogs/AutoChangeLog-pr-19592.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-19592.yml diff --git a/html/changelogs/AutoChangeLog-pr-19592.yml b/html/changelogs/AutoChangeLog-pr-19592.yml new file mode 100644 index 00000000000..7528a9b3439 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-19592.yml @@ -0,0 +1,4 @@ +author: "Joan" +delete-after: True +changes: + - tweak: "Toolboxes are slightly more robust." From 754c620af32f34ba7a73a5efe931aa82f8d67b71 Mon Sep 17 00:00:00 2001 From: Arctophylax Date: Sun, 31 Jul 2016 12:37:48 -0400 Subject: [PATCH 049/154] Fixes Birdboat Atmos (#19585) --- _maps/map_files/BirdStation/BirdStation.dmm | 60 ++++++++++----------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/_maps/map_files/BirdStation/BirdStation.dmm b/_maps/map_files/BirdStation/BirdStation.dmm index 034c1ede772..ba0be3682f0 100644 --- a/_maps/map_files/BirdStation/BirdStation.dmm +++ b/_maps/map_files/BirdStation/BirdStation.dmm @@ -1599,7 +1599,7 @@ "aeh" = ( /turf/open/floor/engine{ name = "high pressure o2 floor"; - initial_gas_mix = "o2=500000" + initial_gas_mix = "o2=500000;TEMP=293.15" }, /area/engine/engineering) "aei" = ( @@ -1608,7 +1608,7 @@ }, /turf/open/floor/engine{ name = "high pressure o2 floor"; - initial_gas_mix = "o2=500000" + initial_gas_mix = "o2=500000;TEMP=293.15" }, /area/engine/engineering) "aej" = ( @@ -1705,14 +1705,14 @@ }, /turf/open/floor/engine{ name = "high pressure o2 floor"; - initial_gas_mix = "o2=500000" + initial_gas_mix = "o2=500000;TEMP=293.15" }, /area/engine/engineering) "aet" = ( /obj/machinery/portable_atmospherics/canister/oxygen, /turf/open/floor/engine{ name = "high pressure o2 floor"; - initial_gas_mix = "o2=500000" + initial_gas_mix = "o2=500000;TEMP=293.15" }, /area/engine/engineering) "aeu" = ( @@ -1727,7 +1727,7 @@ }, /turf/open/floor/engine{ name = "high pressure o2 floor"; - initial_gas_mix = "o2=500000" + initial_gas_mix = "o2=500000;TEMP=293.15" }, /area/engine/engineering) "aev" = ( @@ -1799,7 +1799,7 @@ /obj/machinery/light/small, /turf/open/floor/engine{ name = "high pressure o2 floor"; - initial_gas_mix = "o2=500000" + initial_gas_mix = "o2=500000;TEMP=293.15" }, /area/engine/engineering) "aeE" = ( @@ -2570,7 +2570,7 @@ "agD" = ( /turf/open/floor/engine{ name = "high pressure plasma floor"; - initial_gas_mix = "plasma=240000" + initial_gas_mix = "plasma=240000;TEMP=293.15" }, /area/engine/engineering) "agE" = ( @@ -2579,7 +2579,7 @@ }, /turf/open/floor/engine{ name = "high pressure plasma floor"; - initial_gas_mix = "plasma=240000" + initial_gas_mix = "plasma=240000;TEMP=293.15" }, /area/engine/engineering) "agF" = ( @@ -2739,14 +2739,14 @@ }, /turf/open/floor/engine{ name = "high pressure plasma floor"; - initial_gas_mix = "plasma=240000" + initial_gas_mix = "plasma=240000;TEMP=293.15" }, /area/engine/engineering) "agX" = ( /obj/machinery/portable_atmospherics/canister/toxins, /turf/open/floor/engine{ name = "high pressure plasma floor"; - initial_gas_mix = "plasma=240000" + initial_gas_mix = "plasma=240000;TEMP=293.15" }, /area/engine/engineering) "agY" = ( @@ -2761,7 +2761,7 @@ }, /turf/open/floor/engine{ name = "high pressure plasma floor"; - initial_gas_mix = "plasma=240000" + initial_gas_mix = "plasma=240000;TEMP=293.15" }, /area/engine/engineering) "agZ" = ( @@ -2808,8 +2808,8 @@ "ahf" = ( /obj/structure/cable, /obj/machinery/power/generator{ - cold_dir = 8; - hot_dir = 4 + cold_dir = 4; + hot_dir = 8 }, /turf/open/floor/plasteel, /area/engine/engineering) @@ -2972,7 +2972,7 @@ /obj/machinery/light/small, /turf/open/floor/engine{ name = "high pressure plasma floor"; - initial_gas_mix = "plasma=240000" + initial_gas_mix = "plasma=240000;TEMP=293.15" }, /area/engine/engineering) "ahB" = ( @@ -3271,7 +3271,7 @@ "ain" = ( /turf/open/floor/engine{ name = "high pressure co2 floor"; - initial_gas_mix = "co2=200000" + initial_gas_mix = "co2=200000;TEMP=293.15" }, /area/engine/engineering) "aio" = ( @@ -3280,7 +3280,7 @@ }, /turf/open/floor/engine{ name = "high pressure co2 floor"; - initial_gas_mix = "co2=200000" + initial_gas_mix = "co2=200000;TEMP=293.15" }, /area/engine/engineering) "aip" = ( @@ -3395,14 +3395,14 @@ }, /turf/open/floor/engine{ name = "high pressure co2 floor"; - initial_gas_mix = "co2=200000" + initial_gas_mix = "co2=200000;TEMP=293.15" }, /area/engine/engineering) "aiD" = ( /obj/machinery/portable_atmospherics/canister/carbon_dioxide, /turf/open/floor/engine{ name = "high pressure co2 floor"; - initial_gas_mix = "co2=200000" + initial_gas_mix = "co2=200000;TEMP=293.15" }, /area/engine/engineering) "aiE" = ( @@ -3417,7 +3417,7 @@ }, /turf/open/floor/engine{ name = "high pressure co2 floor"; - initial_gas_mix = "co2=200000" + initial_gas_mix = "co2=200000;TEMP=293.15" }, /area/engine/engineering) "aiF" = ( @@ -3537,7 +3537,7 @@ /obj/machinery/light/small, /turf/open/floor/engine{ name = "high pressure co2 floor"; - initial_gas_mix = "co2=200000" + initial_gas_mix = "co2=200000;TEMP=293.15" }, /area/engine/engineering) "aiW" = ( @@ -3644,7 +3644,7 @@ "aji" = ( /turf/open/floor/engine{ name = "high pressure n2 floor"; - initial_gas_mix = "n2=400000" + initial_gas_mix = "n2=400000;TEMP=293.15" }, /area/engine/engineering) "ajj" = ( @@ -3659,7 +3659,7 @@ }, /turf/open/floor/engine{ name = "high pressure n2 floor"; - initial_gas_mix = "n2=400000" + initial_gas_mix = "n2=400000;TEMP=293.15" }, /area/engine/engineering) "ajk" = ( @@ -3767,14 +3767,14 @@ }, /turf/open/floor/engine{ name = "high pressure n2 floor"; - initial_gas_mix = "n2=400000" + initial_gas_mix = "n2=400000;TEMP=293.15" }, /area/engine/engineering) "ajx" = ( /obj/machinery/portable_atmospherics/canister/nitrogen, /turf/open/floor/engine{ name = "high pressure n2 floor"; - initial_gas_mix = "n2=400000" + initial_gas_mix = "n2=400000;TEMP=293.15" }, /area/engine/engineering) "ajy" = ( @@ -3783,7 +3783,7 @@ }, /turf/open/floor/engine{ name = "high pressure n2 floor"; - initial_gas_mix = "n2=400000" + initial_gas_mix = "n2=400000;TEMP=293.15" }, /area/engine/engineering) "ajz" = ( @@ -3844,7 +3844,7 @@ /obj/machinery/light/small, /turf/open/floor/engine{ name = "high pressure n2 floor"; - initial_gas_mix = "n2=400000" + initial_gas_mix = "n2=400000;TEMP=293.15" }, /area/engine/engineering) "ajI" = ( @@ -4089,7 +4089,7 @@ "akd" = ( /turf/open/floor/engine{ name = "high pressure air floor"; - initial_gas_mix = "o2=10000;n2=40015" + initial_gas_mix = "o2=10000;n2=40015;TEMP=293.15" }, /area/engine/engineering) "ake" = ( @@ -4133,14 +4133,14 @@ }, /turf/open/floor/engine{ name = "high pressure air floor"; - initial_gas_mix = "o2=10000;n2=40015" + initial_gas_mix = "o2=10000;n2=40015;TEMP=293.15" }, /area/engine/engineering) "akm" = ( /obj/machinery/portable_atmospherics/canister/air, /turf/open/floor/engine{ name = "high pressure air floor"; - initial_gas_mix = "o2=10000;n2=40015" + initial_gas_mix = "o2=10000;n2=40015;TEMP=293.15" }, /area/engine/engineering) "akn" = ( @@ -4155,7 +4155,7 @@ }, /turf/open/floor/engine{ name = "high pressure air floor"; - initial_gas_mix = "o2=10000;n2=40015" + initial_gas_mix = "o2=10000;n2=40015;TEMP=293.15" }, /area/engine/engineering) "ako" = ( From b3a124ad6e4b3411de85ef353779bfa79a78b9d3 Mon Sep 17 00:00:00 2001 From: tgstation-server Date: Sun, 31 Jul 2016 16:37:49 +0000 Subject: [PATCH 050/154] Automatic changelog generation for PR #19585 [ci skip] --- html/changelogs/AutoChangeLog-pr-19585.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-19585.yml diff --git a/html/changelogs/AutoChangeLog-pr-19585.yml b/html/changelogs/AutoChangeLog-pr-19585.yml new file mode 100644 index 00000000000..f53bcbe9bca --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-19585.yml @@ -0,0 +1,5 @@ +author: "Arctophylax" +delete-after: True +changes: + - bugfix: "Birdboat's atmospheric tanks now function normally again." + - bugfix: "Birdboat's TEG is now orientated to match the pipe layout." From 3542ac4e486eaa876599ffc149f50222d7dd8c5d Mon Sep 17 00:00:00 2001 From: Robustin Date: Sun, 31 Jul 2016 12:42:13 -0400 Subject: [PATCH 051/154] Removed Amber ERT's thermals (#19595) * Update ert.dm * Update ert.dm --- code/modules/clothing/outfits/ert.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/clothing/outfits/ert.dm b/code/modules/clothing/outfits/ert.dm index 8b6c1e7adc0..3dcf2ea3b19 100644 --- a/code/modules/clothing/outfits/ert.dm +++ b/code/modules/clothing/outfits/ert.dm @@ -28,7 +28,7 @@ id = /obj/item/weapon/card/id/ert suit = /obj/item/clothing/suit/space/hardsuit/ert - glasses = /obj/item/clothing/glasses/thermal/eyepatch + glasses = /obj/item/clothing/glasses/hud/security/sunglasses back = /obj/item/weapon/storage/backpack/captain belt = /obj/item/weapon/storage/belt/security/full backpack_contents = list(/obj/item/weapon/storage/box/engineer=1,\ @@ -42,7 +42,6 @@ if(visualsOnly) return - var/obj/item/device/radio/R = H.ears R.keyslot = new /obj/item/device/encryptionkey/heads/captain R.recalculateChannels() @@ -50,6 +49,7 @@ /datum/outfit/ert/commander/alert name = "ERT Commander - High Alert" + glasses = /obj/item/clothing/glasses/thermal/eyepatch backpack_contents = list(/obj/item/weapon/storage/box/engineer=1,\ /obj/item/weapon/melee/baton/loaded=1,\ /obj/item/clothing/mask/gas/sechailer/swat=1,\ @@ -193,4 +193,4 @@ W.access += access_weapons W.assignment = "Centcom Official" W.registered_name = H.real_name - W.update_label() \ No newline at end of file + W.update_label() From 76f41f70e49d840138d292580a0e35e909e4f187 Mon Sep 17 00:00:00 2001 From: tgstation-server Date: Sun, 31 Jul 2016 16:42:14 +0000 Subject: [PATCH 052/154] Automatic changelog generation for PR #19595 [ci skip] --- html/changelogs/AutoChangeLog-pr-19595.yml | 4 ++++ 1 file changed, 4 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-19595.yml diff --git a/html/changelogs/AutoChangeLog-pr-19595.yml b/html/changelogs/AutoChangeLog-pr-19595.yml new file mode 100644 index 00000000000..95e68444866 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-19595.yml @@ -0,0 +1,4 @@ +author: "Robustin" +delete-after: True +changes: + - rscdel: "Amber ERT Commanders no longer have thermal goggles" From be60a5746eda4340e17a9176f4161fc023ec5063 Mon Sep 17 00:00:00 2001 From: Hatfish Date: Sun, 31 Jul 2016 13:56:17 -0400 Subject: [PATCH 053/154] Copies the sprite for jackboots and renames them to jumpboots to fix a missing sprite issue. --- icons/mob/feet.dmi | Bin 13588 -> 14198 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/mob/feet.dmi b/icons/mob/feet.dmi index f68b23f4ba2bd3f1fa30c9913050b3d451ef6e01..9966a7913d23edce3d11a239b1ef93d955fec451 100644 GIT binary patch literal 14198 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 literal 13588 zcmd6O_d^ri)-`rT5fuTIrUKI85k#aVSTP`=^cJEby>|$ZSV2UH1_(_O=^`ZbUZSGX z2}OE|NC_>p03jqK-|*b~-naY#_kKU*aL$>@OlHqnd#%0qA?m)NE)VxPZZ0k^9?0EW z##~%`z5t((hYtcX+TE2hz~Cv|)YAW!gP*;xi?_dvmnRoj@P~x>%SMfVop?o=vaoc> ze!X{}zJTdVjd4BoP5zNRvFa!EAY7mcerAFpIIOzl}LZjV)bsy%-?(OvJDPnSpSL!ksd z>p`h*`;VjDRzEJC(YOe4<6dIJ%GiC1^4sJ4#OE&=B6_lCUQs^U9|Kj0IPh!PA3l%- zeXb*Y_leBYy_U9)J2!eYwu8CCtx`UI8DF+-Q_?XK8+Cbp-J;IB#!f?*QhayqP@kE{ zN8yoV$lXqrieE75S62y$N|Z~xqaSl6jG5SOM&cN^fVh3FZae(>rYtl_uSdOF2}-Vr z-B>HClkjf-@w+B#6Zt!X{RO3dB9V3Bownm2d%3s23D!RLcH~OOT5=!E+)=f;dStqs zi|afW@wvpQ4ez+8C*mMgQWr`( z#Tw5!UW$A7vfT0f@-mb0y``XBnN-`KYGu@aZhdP9v4`tn%AP1uV0}dC?Agop_SS#4 z(fCbv3@0gH;44-LBWNx8y?=f0`&DMmw<^-@i^@!K6nS~MI|9`%UpCxu41r6Ve=jk% zzRpd0J`ybt8Ln2lCidcx9vC`Bzoy+q)V}YW9oydJ#yKpl*_T)F1oFJ zdB`@SI5~Uy>A-N4VTdYACTmD>ZU|hH>Q)=znjYYqa@q|v+A1$2Q>>w(Apx12n?q;) zh!zaZF~WI5jP>=SC1hk|APETxv8c?ftnX+EuR9UL!y|n?JsH{hiSSECSoiGQTsLpu zl9auBAik1d+k$ZRDhiRM&&~ZunIo6~xu6LbW?Veeh;J7}_)onItx?JRD^`<&lN>PmXMC!LSzL9x@f zS3WrVnWnOyMvH7k5=)V3Eb6lxa#DWIpIDDu3^!)Wk^AH0)UT{N`k1VPjMC0)2WB#> zQDc_Q25IL5)Wi(sFnJFub+!`{?M4_KboZB@eb)_>ioJgtEf(_aT6naAe3lb0wUjnb~| z&9h(I2{Vl@0jjFz5SP3#5bh32ROCURaS;pXDBwuB=pN&~zF*hi!i!a^CiMz0C3(U-}EYU6OZGS(Y8LYIjVSfm(_oNl$7rf&&Ib8+n) z;Q*xcP=fo!f4Iq#kg|I+;WypS>)G&Q^1GV|DS0Ci>i7yw3ZWSo6*%mu67zjbk&J9T z&h|i6=j|WaiPnO=!e@%*MVYak_d+!&IHXaS;%%{*M;=yiMEVNUStfPBvEQIy0d`2rhi)y z&G+L>{_MBX3{+F`lK`o%L1#$MnvBVnrInJ>9fXm=qjX6~0QwCq+zc(u)Lv9XlArFW z31;{j1^5&v_|CptU`#xw`elrBx@i;UGhPVOGpmSgcARcWjSb}q!pN>NcSL7|wUx*>=IC#`Bv=`VFAnKgWnFMy@cTzHUUqCToru zxd2Cp)h3<_*wrQ7-pR=+%Z(^(h%TgS{6?t=59u0?}H)7KW3g0Fodf3+v8K($Xq3n-MVt*t#K z$SEp<>E2YAlYZi!7Ie^RW7R{<2CCM1T)DP zi;=R`BJ8E+6D_w(Na3J@frbY!i#{ zv)Dh+^vclAsJ9$Oz&cJ!S24P&VV@4NdqM6Cjr%!F*JcKDiz1~=3l=@Z^}!h)aNuyM z0aj~B!|B_8d_F!wLIGOyOC@COi9UL9T0c=SfGT^Xn=vt2q$2r4K@EOvf`R@6I{5om zlhf1Lgn;sLfK(Lf;j4$vY2FgTb(e=PXvFlof#@oj*skJL|8c#a4ZE3!f$kSH@NtGO+oBAR_d z8g%c1s~fb9HxY{!Eha%A5Nj(l2dMG=6NwBM(36yu%*)KYX}q$Po10ska@N_sOk!^P ztjZ0mXhEgTdpOV-Itzml*x7s~C;{1}Pq9Oq#Kl~&nN4VDF6(PcOA5VNoG=|3Jx=M7 z>HP!ZWSiv30JyzPinK}ITtzx=o_5GRXzvM!zjFFYy^WEej=IfN=)w}FmRKVUDh%!) z%J3!iR-U$L*@p*F=(F5KQq%UDg&%3)Q|jhXoy(A!sg|#geKqACOsfShTE>Wh?S_Vi zTwPqEEXn`i&fO{drq~#1{oJ+aH*ey#T}|8L>Y;asGVkPl`qaG2vRn*Tl$O5#;K6&0 zqD>9}W&%Yq?^Dt4AS2@(g%kk& z<>Y8I7k~iX=78yjN1Dm0G^Ey(OR``|$=f59UcA~y`ue>M;mnKJ%8H7J3g8v_XdyS| z`%bn2Tz3P7;b(<=dARk?_vMR_P=H=IHB156?o*M#@*^W>8;-d(@8C=u&xf+VU!MrwMcefa_l@@iYH+r2dz4n0*$X zeiL8%Gp5uy;&}P)XVGDzjp>Kjy7oWHxK75|ds-23;UpG)m1*i<-^pY6l$+N{@5Q^8+TSzNp^f#n^TBQeB849|AM*DQ!{ z+E|>~NN`z&`RT}Ws%U2R2$hu?!Je?+i2KJbifNrk=mdaK_^_L~YB_RcOVfjo) zXZL}Lb&MP~{oAW_K2Gvv(*jb-_S5bZ$c||DOy|q$q*o$YP%~)0zAwKVU~&&_TP~YQ z&%V!Q`Rn8JecO*Ih6naOGjyOvnB|+hv|$v`Svu!Grh3&qAcjsH81O^Vza8!GP#c$K zqMq#<5BOp@q8ElE^uPz9HbGA@XM0iruhVm00bN9lW3fwk7- zx-L71xivV5332I=*0;HfR`HDft_v?7D+WEe)f9rrP(d|a=K2yPEz`a4OH`x9{WA|L z@;|e%mTlW^2#d)oc8bgP*N)06tdQrfNcDojB_Ah`FtM|fxLJU!AGNaRx~I>>B>=Xm zw_E+JJf4yfL<%-lp_4G&S=!)4fq%fp=9yQ6Y+iROfI3#p87vMbu3CNxLXN*mPL)`G zcN~vT%x6q&vb46GoiK*)&CSiM5&=e--d|Soxm7kz*`Uzk-cb==i1D+~9@jaXT8vv>vZIvpw&D-!7Wd9{@$_`y(tiE6UxzT zzhCY#uC&e$0HwEf5CBjBr?O$7{{Gt37FLjB4@=+J{`^DLgL};<+)B9fY4~sRVSq4M zJ_?I-@Zv+UAZ%fM^d*L0tPFXQ&P3Hb0A4L#8z!vY+Baey(1Dt9rZ0_QM@MZJl98Nr zMRx1EuI+vJL#o@K#WXet?q|?40}>d9Q~_wvGO}vh;N;Yr(_kU8V%0BEj`5hG`2Tp8yktmKxQgXIais&2I&; z;lMe&$6^}hBMDE!SH2#qw}aW*F1jLa-h4rjmFXt4nM76BU(yz|P-Seei;K&gG8rH4 z$VP#%!I1APHFq-MZ`$U#S7n8_N%Ai^F|qF=^xH6ZcDky3VkzWw?Vi|yZ~eB}HbL5Q zuXdn7*trG-le4?dfE~d(Df%CA2LCsH)#WZ?F=(kFiqi#rvPFV010xc z@7}uf*yg?{$FJBVS(Hd7FNnz&bn-?lTjpCR9l48kb#pWGZjls~Iv8-pOwPiZ@6x?@ z5(ZYu7t-RDAZxI?{&H51PNpOT+>w-V{p+<3*aE%1RS8h4zpdxqf63oXLFG(N&c>7D zvlts*p^nq{N~WmZ+Pj%20v_L|rYQ5ejYTXik-hSFWa#*@`0{!LjS+^<`Y#rR^Z-P0 zW5n@^29iZ(t(RR%3-441epYXUL8?|RWybo&Azt&2ngG|K^0so;Z1GlD!|T7VEqP!y znUi3qI|JkHYyz%fJGPwj^Qk1{nao)Y{jad97wmHE^;cj0CUmXy-&(w&-0*UYpe=Jg zv7iuxbDM$nPMj=ZIeg;+d^ZzkYh#n|b^1Gn#WC!APeZPUt#6iZBMwyky^`OPC?+nD zs5&dF&z2?MH;DUXG4jR0NLE2+_s~YUOiye%!4Y9w(tFZR*K*UxHX!s-R;n}M9yZIm|#}KpXtZy5mt&;raju?xvj>z75SJwh` z&%^QA?o4q**8fQcT?=JV|3@xpMh_w1&HS({6kY)_2@p5~@pIo;*fnZqipIix&u_*h zqQ-48nKi*Bal9EKV8u2#z$FUwInQr%2YGEbtfk6N%l#z@D3m1oH^Y>BUKqCN1e?Jz z;@2+#1~sXu@!4Mf-)qxt_Di!rV}w-wX6{*VxGl?^-vhiV=m+)jDV7_8QoVq`xwQd? zl;!bKxyOvkLfKXM5IjJ}-&d|Q(Q3~bU6~=L6%U?e(w9+|h#&kG!E6=#@(c!ltguiB2oiC- z>ZXx1+b=`~AAT%u0fefINj&&`@Zx|XJ#;Plr~SY9lrP@>T86+R>_#d69ho;VTEur560HV7q=fLySv; z-u#?Cl-O6e5$e14qA9}@|7+ZTYb#VG4F^DACP#vrj~t0ZtF)Y(`x~$8phS#eZ)?!! z0{w;uCvXg8ZmX<9T8@rMCcn0rr^B$+XmKu19;iV}-;%k|9BSZ^OEipql}7$xC97&1y zzchQMz2_kU8k5QBzQMGGiVRca3oZ0z*;B3r35C3^xLqQ@BG%V;k~R@hv!QC<(zhFz zwu+kLYsw!i4CoCt9v6$w*Eg#iADZ-{MB)}RW7>EznL>=qO{dFAR#t!{DDXzI<>U$q znuT4V+RRnELW|9-6WLRy2osZ){Z5GlI?+Y8 z!TPcC#QBk)XwvApVybH>TcjP;-v?5=s#+^}4%0mrR+U|w|G`KtOw{K#<~3`jDfo30 zC`fADA}#f*$Gq>@(parHp?%c5Y+%`~p=p^;pF0FV`u+b0klsZz*Y8_JvlC1Oh(?R1 zaYqbK3WB7h9ZeZ`g7h@EKR{>6A-p4Vi8CVtr26HyMlxKY9CA*12Mepg3aK8HgImFV ze&IhKJM@jxs=1@Q*>o?-V`hvVdeG)j-{{~9?UR|3s@l~mJ5VI8(8JT+*`g>|LgxHj z+sw}h;*U($@evu9FYBQQb)6&9;JLd)uN>%eVO_a$U#v_SOSn!a^>DH(E`M(#hW3cTSxjO4;=7e zh*$#Is`}M_*v57VrzEQx2$E@?Vx$TQm%*+lRB)Ff1pa4LR~xDjB*&4x4~BC_8mNO%la>5)K8cUv;2avYwYkV=V@ppxl% zflH%v^Jf>@9f0+>Y2R`Sw3)oKDVj@xVZy}FE%K)I+Gwv& z(d4tK>yQ@oaS^)&MVBv6_v~X+knARslj!0#OZFHJl(guNh<|`Su7C|Cr?)T0NkWL> z>l98EVw2Pvq^@>RPKEh|skicO+wy66!(QRbk8jNu=jB049Xm>9I#MayuxZ*%2QW%; zP*qjE{r0N?P%JVBa$4Nn-0^8?A{whB*4EZQ5C8o6UVeW5yn=%E?#cVc#*cx)E1>*S zu^AYmqHJnvdRkUr?e;RQ$DyqZ;OUJ~AR*Qd41Vph^{zz?J9ebfQkX{P)P1uecw)4O zg9n~?*(W9lF~)r4z!;!tCQ?>$7wt<6t9iUuSx}AAUW6}=Hi=dcl34ir4B+4=Jf12I z4saJGGLO3z1*}k{LUd&v?yl*h=OuY8wdf6;^xqy|wt*FQ8|OawDRw8+4$fNA1at|C z93DAcT)k{&SIm2XICdI)h%1+a0* z9dOqjf2!$L`!t3-{nS;S=;)4w>;lGP_rQdl4(dKG%(0Lq-!_3(i2C1qu0U6~FCC=KO!gM5oZb3MH` za+5^?<)oO74#LdvSsj92SscyeRuWh zQbP`Y=VL14CNBk*1UxL*(i=I{by8eKLgoja<;)y8ekuFynfL3hDk$q0Cc3jU%-C?~ z@25-kJB|zKxj4TK!!PxfWOqqP9@F`*^wxV~KI3vEE!U8PynPL0wai}*fE-_5IRUso zpho+U>)$J8JgR9!TwHuNclQGP^Uiwna}n728*OZaUEj3p@%`&vjl7{t^-NE}K$=x*?qN|;n-4vp(#nTNh0c%*TWeE|u=6w^tQi;60YAc5WUeaOVJE^+k z9}EvqqZ01q{^%4-6R=&rgD4AL^a}!HXfWk6X9vkXM1>EW!(P6#IZ%os^ZT%H;Vi{h zg<@q3P+iokG~`;+QB`;Ez;@Q77o`Ef0NR2QK!qTo5iP zpBU`dR6NcMtDE9=y=F#V6dI?p$faIY2US1J51)x`Vg!ZaYJGn(ysyu{zLy=_yttu} zySN>;a2X$Dt+mMrZlP}>gdkbaAz3mCC#=^sX9gE^b9U-qPWtulAyh@r>$#EL<~7IW0Yzt?cBDk_4CmqSZEU1K!QnJp ziM;iip_3@%l_^@+bN*Pt>;7y`%3A$v7DshDlrWLOnvd&LX86Us5CgN2km^kO(@Yu#p{9&n3i`+WX*62E@>ozUTm4IY z5ZPmzLdnl(c<-Z$wfti6f{z${xOVwZH;7TC&Ix2A>$huxJHt1E{&DB1B#tGZ$=F&P zZP_o8(Xj4>kit*uC%RrFIL&iBF`Zhh2u<3r-%-E6wyN|AAD(Tkvsm|Dm8&0bS+Y&0 zznKR!?{z%;eMnTPj<0$gF)n=g6T6h;?|?03bk_`1ke$rh{A%<%DFnG32pavu(pC0g z<3gUqE>$gER6Vq}Cf)r#XlI27%E1?-vlfV|<~YPwgr~Gk){Kr$kZsU=EO2fn1L!^Y z&f<)W=3eX{AyFB`$(m^4j$M6(3ty@x%;@zDQLrP_e_9T-Z$H;Z;so;LA+9q~yJ_)% zZzGeZ1oj7BhmE+3^7`Ur&@0UDs+%1A1b^5LiIitDZIG;_lzn@&*H;<|F^_&2R7R|g zYwncY$A-%*juuIld2~N_5)o?xd)BJNb2js&f?9FwLzHw65_0B<1?8e0b2N=GBR(F| zj=Yb=A=izC+X{+k$pN=_GwuK+f-*x`5B(G^M3xW$LOg-z# z%M)Mk8`Wx}W&W_o)%F5vG=Y+rI-JR%|1wbZWRDF}mH=_9<0agy(DmzNathP4p^kkc zGNRYd4w*jFkXi^#`n1@9t4%cX6|c4G}z@{RC3w=fwhI{#2vd2ho8CJ02_4 zbD{my!y6299-$BTO1sp;4$aXvA!6ALw>46tM9evK!E)KbM5Hd{oT`Mn|C)@obvE&X z`qxz!G0Zsk!A-R0G+E0z34Q2}C#52o3b@A<-b&VVoJKgc?g{n&0F6^l1NFeHN1$zB zQ3}V65}u_>kP57rDUI144%yw|0WU84>yIqmnn>nzvqE+(dkT9x)u_e-S$B+`n&$dW zu2@4l;1;?7sBf$nAuhG$IB6&0ee`r%5-B0!GW_Bo~v*?E4jt!FiV=Ap}-WzZwZS(gn z09?;bieUxAqLO)3AG26Z) zQYeXYcPE4mlb0_8DGp{u@hOabI$-^m&)4^H)bCL}H0TE>Ebfdga!Xa+PzCCb{_uld43EKktSplifGNYYxD7Du2%R@{)IrIwhiROdmJRDyG;Gkg3dHmw9re zIze>Xoj+L3^|?qd=gm>>vHKNwiC975-s_3VM?q{;9z1n>p?LysC9-Xp9}jYVm-XBJ zrdzF@d1T$Qr@N5!&u^8P9O$1f6pxI=dJWcsAMZreGgY-@ARW)10#Jqy*EMzT?)UL~ zp$8 zkBsX)7P_*?Y6??GCix1NIn-Z0}5CE{lExjmv6EsFyOIv-QvQ7RN@(XtF6tG zZE#;-Lw^Ks6XtchrPbx83G*X}wFYv{6w*!_V$C2g&%KR$1yocjLSK*Tf&ID$6&wZDjTTlz}*WY^Xwo{`DAKJUn zyxFbfT^8q;L96AnL-=&QWz>wtG~!Q%Z8BgB9M&`s#CU8*1nzqMQM-dD1Sqyl4hDUM zlI!MSP!bQl>5X3YF@xBJ1{^Lm3+X=JH7fLTHi3U5eY*FJuRp0!P4~mwv4>9j^YLK( z-5Sb3YCufB__c52lxnrN-P*));oM*1z=OOj$)q$Y1P=W;W%tH2_R(?<a$BHz@=L!)4Y$Wclpv=+TP7Rd_XSx8b%tD2tTxi}&Qq{~~>xZsy z`FP(1Os@dhT|h9#yyb1!GY^{`7iUd1y{=B9j(YWi{iwSg^;SG$N=pH3t~^@H=HzpO zlxy8RG1eas@Cgd54;g-t)&^hRlmnV7yU3%D{_F+(%%k z{9N;@cNeSLp?}ba?+T*?d0b)S?4aPPG$c-m=@cWPmfqyhH^TCKacwUYIenmJsRTLi zU%uM<1`Z7x0=JA`VhN=8GF}|y?PiKq-YP(HCIxuTX?-te5$XUV#3zU9eHKm8?%NpM zU6j5?5T5Cu3$04aCBPJgv5a;jdn=(Z zmTI<}5Q@asSy~R}KLZL4q1$UJP`tiByL<45f1EDzwXUNV-Q!vIf&|`gdy^8BgZU}k z)P^ir@vkHhr|AA#o|H?np&Q6?PmjR{i(DM~^NKE0rD}G1w_C_w=#7n$><08+YZ$X$ zgn$&->RQa}&pK)}AMYW?tEOBldzz{8h0vdNm~j&DVNYeY#3ueTDdyc&l%WKTfE?pS z+HH==X%}NQ27na#d+jS01K^<8h3W}JC{4qS^3335+n?fPu5A=R+&O^H(wOXW2lg=i zY&sk1XfwC4jA{#3?7(K|m*xrw05os(WM)%_X9_c6V#Yh9dHEF?TbTd#$z=sG$jwE}=OePVyO#Hks66I8OU7=F1Q=p^kQpcMn z{@-;Au*%rLd}`04Od3dRL5VTuu%uN4A=ZaLM}4Uz&YzG4zn?+5R+YKgvi9G-9p0W1 zE$*}n47GO6RdYbLpa8e)Jtp#ZP$;#;qE~YT6}a`WJ&^Gd)6lEX)f#?R@^*WzdyRw( zrvmKSRAX+T5^4;(s-`F1&CqUnYjNb#XO?e?ikbS8*9Rqe-d1;f%zE}&SoxOvP;xBp z1hCgDVYWSZYFJ%YQ`FE&nWIb6I!WOqvH3qiwE$-tcJIaPQO#cJTIo&zB|qGH0JesT zY`--#u;lK^Z8tcF(ELrSA=1l)Bvy^ir(jC*hmBQ_GDsdwft_nu}QUts~&2iKac;x_dI3 z91)yQ%+6pR-E)SxHH*S0lQ~!i@Nn`(+gN+$5R(;MG9nKt5u23J(hNI3TH!OYWTy~h ze7;M5?(Ur48)^H{`jN%O;6+;Zp#9w^Cvna2fTRAvvbbH>^3R3$;mqJ_5_#;}Xs4Fl z&&xC>x%B7TbLkyCy5lVSJ2Bq%ED4tok4#|hB)qJ&F%h<~dH%SNit9^7Elo{-ty7O? z=tL(28Bw`D>BpeavSLJH3SF0-;_=C=yZI4DA_%#YLJz%CF0Jcj;nf$hjd{HY5k&Qi zS^TO^@hUB~7l{t$1}|+Ub!loh?ESDh=F*=t0yh8odZP8rWv$0)_3ph?u^itDw`C#)<6u zq>(!0PH4?kLZO_LX7B2ay8y>$s7$_hqX<)jueCJvRIMz!13%ksQjmIbK@HJOs4I8^ z4GyfxIgJXa+mCz@m>MuKG?eC>>A}i?3S!el5>J&CUZa(uRkMTLXU(%lsyFciGC%AS z5)*`dR2K!9n8}FkvEeF@O6yHs>{aVc-mae>wdLuEpzjKhTpD$)t@+H^;&DWSPpT#Z z>M{gAUq)J$y&WW2^6T{lE|J?md~2LKNW&)NH6VQ(#6nm(s8J;U?*U&)n7q4E5o zp}F}sfiTdGHaBp<^pm>kN0nEVcpZls6O}rRO%7g^oR#+J@|bh9+o9i+{=D}fZ@vYI zdLG%IQvQgjD;{YD9pCE#svD27Nq?qOdi9r-A~+?j`a*2-1hDyVeUx+PvUqkffmHt; R_-__2$Zf-0gc}c^|37;@$&vs7 From f932efdcebe1e85aee60b18008a64d3dcd2c4281 Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Sun, 31 Jul 2016 16:06:29 -0400 Subject: [PATCH 054/154] Soul Vessels can now be used similarly to soulstones --- code/game/gamemodes/clock_cult/clock_items.dm | 47 +++++++++++++++++++ .../gamemodes/clock_cult/clock_scripture.dm | 4 +- .../mob/living/carbon/brain/posibrain.dm | 4 +- 3 files changed, 52 insertions(+), 3 deletions(-) diff --git a/code/game/gamemodes/clock_cult/clock_items.dm b/code/game/gamemodes/clock_cult/clock_items.dm index c8c952393fb..f6ca079b407 100644 --- a/code/game/gamemodes/clock_cult/clock_items.dm +++ b/code/game/gamemodes/clock_cult/clock_items.dm @@ -900,6 +900,7 @@ dead_message = "Its cogwheel, scratched and dented, lies motionless." fluff_names = list("Servant") clockwork = TRUE + autoping = FALSE /obj/item/device/mmi/posibrain/soul_vessel/New() ..() @@ -915,6 +916,52 @@ return 0 ..() +/obj/item/device/mmi/posibrain/soul_vessel/attack(mob/living/target, mob/living/carbon/human/user) + if(!is_servant_of_ratvar(user) || !ishuman(target) || used || (brainmob && brainmob.key)) + ..() + if(is_servant_of_ratvar(target)) + user << "\"It would be more wise to revive your allies, friend.\"" + return + var/mob/living/carbon/human/H = target + var/obj/item/bodypart/head/HE = H.get_bodypart("head") + var/obj/item/organ/brain/B = H.getorgan(/obj/item/organ/brain) + if(!HE) + user << "[H] has no head, and thus no mind!" + return + if(H.stat == CONSCIOUS) + user << "[H] must be dead or unconscious to claim their mind!" + return + if(H.head) + var/obj/item/I = H.head + if(I.flags_inv & HIDEHAIR) + user << "[H]'s head is covered, remove [H.head] first!" + return + if(H.wear_mask) + var/obj/item/I = H.wear_mask + if(I.flags_inv & HIDEHAIR) + user << "[H]'s head is covered, remove [H.wear_mask] first!" + return + if(!B) + user << "[H] has no brain, and thus no mind to claim!" + return + if(!H.key) + user << "[H] has no mind to claim!" + return + playsound(H, 'sound/misc/splort.ogg', 60, 1, -1) + playsound(H, 'sound/magic/clockwork/anima_fragment_attack.ogg', 40, 1, -1) + H.status_flags |= FAKEDEATH //we want to make sure they don't deathgasp and maybe possibly explode + H.death() + H.status_flags &= ~FAKEDEATH + brainmob.name = H.real_name + brainmob.real_name = H.real_name + brainmob.timeofhostdeath = H.timeofdeath + user.visible_message("[user] presses [src] to [H]'s head, ripping through the skull and carefully extracting the brain!", \ + "You extract [H]'s consciousness from their body, trapping it in the soul vessel.") + transfer_personality(H) + B.Remove(H) + qdel(B) + H.update_hair() + /obj/item/clockwork/daemon_shell name = "daemon shell" desc = "A vaguely arachnoid brass shell with a single empty socket in its body." diff --git a/code/game/gamemodes/clock_cult/clock_scripture.dm b/code/game/gamemodes/clock_cult/clock_scripture.dm index 67aefeac17f..ea4bf195a10 100644 --- a/code/game/gamemodes/clock_cult/clock_scripture.dm +++ b/code/game/gamemodes/clock_cult/clock_scripture.dm @@ -707,8 +707,8 @@ Judgement: 10 servants, 100 CV, and any existing AIs are converted or destroyed consumed_components = list("vanguard_cogwheel" = 1, "guvax_capacitor" = 1) whispered = TRUE object_path = /obj/item/device/mmi/posibrain/soul_vessel - creator_message = "You form a soul vessel, which immediately begins drawing in the damned." - usage_tip = "The vessel functions as a servant for tier unlocking but not for invocation." + creator_message = "You form a soul vessel, which can be used in-hand to attract spirits, or used on an unconscious or dead human to extract their consciousness." + usage_tip = "The vessel can be used in-hand, to draw in random spirits, or on an unconscious or dead human to extract their consciousness." tier = SCRIPTURE_SCRIPT diff --git a/code/modules/mob/living/carbon/brain/posibrain.dm b/code/modules/mob/living/carbon/brain/posibrain.dm index 0ee77ea7666..6a17ffa5937 100644 --- a/code/modules/mob/living/carbon/brain/posibrain.dm +++ b/code/modules/mob/living/carbon/brain/posibrain.dm @@ -14,6 +14,7 @@ var/global/posibrain_notif_cooldown = 0 req_access = list(access_robotics) mecha = null//This does not appear to be used outside of reference in mecha.dm. braintype = "Android" + var/autoping = TRUE //if it pings on creation immediately var/begin_activation_message = "You carefully locate the manual activation switch and start the positronic brain's boot process." var/success_message = "The positronic brain pings, and its lights start flashing. Success!" var/fail_message = "The positronic brain buzzes quietly, and the golden lights fade away. Perhaps you could try again?" @@ -148,7 +149,8 @@ var/global/posibrain_notif_cooldown = 0 brainmob.real_name = brainmob.name brainmob.loc = src brainmob.container = src - ping_ghosts("created", TRUE) + if(autoping) + ping_ghosts("created", TRUE) ..() From ecbbc47f02c6b5ae225e9b207c19a7cacc3c1e6a Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Sun, 31 Jul 2016 16:08:04 -0400 Subject: [PATCH 055/154] why does she need these bindings is she such a threat --- code/game/gamemodes/clock_cult/clock_scripture.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/gamemodes/clock_cult/clock_scripture.dm b/code/game/gamemodes/clock_cult/clock_scripture.dm index ea4bf195a10..151850c97fe 100644 --- a/code/game/gamemodes/clock_cult/clock_scripture.dm +++ b/code/game/gamemodes/clock_cult/clock_scripture.dm @@ -708,7 +708,7 @@ Judgement: 10 servants, 100 CV, and any existing AIs are converted or destroyed whispered = TRUE object_path = /obj/item/device/mmi/posibrain/soul_vessel creator_message = "You form a soul vessel, which can be used in-hand to attract spirits, or used on an unconscious or dead human to extract their consciousness." - usage_tip = "The vessel can be used in-hand, to draw in random spirits, or on an unconscious or dead human to extract their consciousness." + usage_tip = "The vessel can be used as a teleport target for Spatial Gateway, though it is generally better-used by placing it in a shell." tier = SCRIPTURE_SCRIPT From ee6f93bd8632d7256fdbdcddd050e1dfb11ca8e3 Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Sun, 31 Jul 2016 16:34:52 -0400 Subject: [PATCH 056/154] of course she does. --- code/game/gamemodes/clock_cult/clock_items.dm | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/code/game/gamemodes/clock_cult/clock_items.dm b/code/game/gamemodes/clock_cult/clock_items.dm index f6ca079b407..fda33edec75 100644 --- a/code/game/gamemodes/clock_cult/clock_items.dm +++ b/code/game/gamemodes/clock_cult/clock_items.dm @@ -883,7 +883,9 @@ /obj/item/device/mmi/posibrain/soul_vessel //Soul vessel: An ancient positronic brain with a lawset catered to serving Ratvar. name = "soul vessel" - desc = "A heavy brass cube with a single protruding cogwheel." + desc = "A heavy brass cube, three inches to a side, with a single protruding cogwheel." + var/clockwork_desc = "A soul vessel, an ancient relic that can attract the souls of the damned or simply rip a mind from an unconscious or dead human.\n\ + If active, can serve as a positronic brain, placable in cyborg shells or clockwork construct shells." icon = 'icons/obj/clockwork_objects.dmi' icon_state = "soul_vessel" req_access = list() @@ -910,6 +912,13 @@ all_clockwork_objects -= src return ..() +/obj/item/device/mmi/posibrain/soul_vessel/examine(mob/user) + if((is_servant_of_ratvar(user) || isobserver(user)) && clockwork_desc) + desc = clockwork_desc + ..() + desc = initial(desc) + + /obj/item/device/mmi/posibrain/soul_vessel/attack_self(mob/living/user) if(!is_servant_of_ratvar(user)) user << "You fiddle around with [src], to no avail." From 95439cb8fe7e7fd6be8c52a7819ec4872bd72494 Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Sun, 31 Jul 2016 16:53:03 -0400 Subject: [PATCH 057/154] Explosive guardian traps will no longer trigger on invalid targets --- .../simple_animal/guardian/types/explosive.dm | 57 ++++++++++--------- 1 file changed, 30 insertions(+), 27 deletions(-) diff --git a/code/modules/mob/living/simple_animal/guardian/types/explosive.dm b/code/modules/mob/living/simple_animal/guardian/types/explosive.dm index 5cbe44e7d25..63b10fa5f7f 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/explosive.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/explosive.dm @@ -37,9 +37,9 @@ if(src.loc == summoner) src << "You must be manifested to create bombs!" return - if(istype(A, /obj/)) + if(isobj(A)) if(bomb_cooldown <= world.time && !stat) - var/obj/item/weapon/guardian_bomb/B = new /obj/item/weapon/guardian_bomb(get_turf(A)) + var/obj/guardian_bomb/B = new /obj/guardian_bomb(get_turf(A)) src << "Success! Bomb armed!" bomb_cooldown = world.time + 200 B.spawner = src @@ -47,49 +47,52 @@ else src << "Your powers are on cooldown! You must wait 20 seconds between bombs." -/obj/item/weapon/guardian_bomb +/obj/guardian_bomb name = "bomb" desc = "You shouldn't be seeing this!" var/obj/stored_obj var/mob/living/simple_animal/hostile/guardian/spawner -/obj/item/weapon/guardian_bomb/proc/disguise(var/obj/A) +/obj/guardian_bomb/proc/disguise(obj/A) A.loc = src stored_obj = A opacity = A.opacity anchored = A.anchored density = A.density appearance = A.appearance - spawn(600) - stored_obj.loc = get_turf(src.loc) - spawner << "Failure! Your trap didn't catch anyone this time." - qdel(src) + addtimer(src, "disable", 600, FALSE) -/obj/item/weapon/guardian_bomb/proc/detonate(var/mob/living/user) - user << "The [src] was boobytrapped!" - spawner << "Success! Your trap caught [user]" - stored_obj.loc = get_turf(src.loc) - playsound(get_turf(src),'sound/effects/Explosion2.ogg', 200, 1) - user.ex_act(2) +/obj/guardian_bomb/proc/disable() + stored_obj.forceMove(get_turf(src)) + spawner << "Failure! Your trap didn't catch anyone this time." qdel(src) -/obj/item/weapon/guardian_bomb/Bump(atom/A) - if(isliving(A) && A != spawner && A != spawner.summoner && !spawner.hasmatchingsummoner(A)) - detonate(A) - else - ..() +/obj/guardian_bomb/proc/detonate(mob/living/user) + if(isliving(user)) + if(user != spawner && user != spawner.summoner && !spawner.hasmatchingsummoner(user)) + user << "The [src] was boobytrapped!" + spawner << "Success! Your trap caught [user]" + var/turf/T = get_turf(src) + stored_obj.forceMove(T) + playsound(T,'sound/effects/Explosion2.ogg', 200, 1) + PoolOrNew(/obj/effect/overlay/temp/explosion, T) + user.ex_act(2) + qdel(src) + else + user << "[src] glows with a strange light, and you don't touch it." -/obj/item/weapon/guardian_bomb/attackby(mob/living/user) - detonate(user) - return - -/obj/item/weapon/guardian_bomb/pickup(mob/living/user) +/obj/guardian_bomb/Bump(atom/A) + detonate(A) ..() - detonate(user) - return -/obj/item/weapon/guardian_bomb/examine(mob/user) +/obj/guardian_bomb/attackby(mob/living/user) + detonate(user) + +/obj/guardian_bomb/attack_hand(mob/living/user) + detonate(user) + +/obj/guardian_bomb/examine(mob/user) stored_obj.examine(user) if(get_dist(user,src)<=2) user << "It glows with a strange light!" From 3f4542d323adafd0214257a3006d90be94c18a77 Mon Sep 17 00:00:00 2001 From: sybil-tgstation13 Date: Sun, 31 Jul 2016 22:11:18 +0000 Subject: [PATCH 058/154] Automatic changelog compile, [ci skip] --- html/changelog.html | 61 ++++++++++++---------- html/changelogs/.all_changelog.yml | 24 +++++++++ html/changelogs/AutoChangeLog-pr-19391.yml | 5 -- html/changelogs/AutoChangeLog-pr-19535.yml | 4 -- html/changelogs/AutoChangeLog-pr-19554.yml | 4 -- html/changelogs/AutoChangeLog-pr-19561.yml | 4 -- html/changelogs/AutoChangeLog-pr-19578.yml | 4 -- html/changelogs/AutoChangeLog-pr-19585.yml | 5 -- html/changelogs/AutoChangeLog-pr-19592.yml | 4 -- html/changelogs/AutoChangeLog-pr-19595.yml | 4 -- html/changelogs/AutoChangeLog-pr-19608.yml | 4 -- 11 files changed, 58 insertions(+), 65 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-19391.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-19535.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-19554.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-19561.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-19578.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-19585.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-19592.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-19595.yml delete mode 100644 html/changelogs/AutoChangeLog-pr-19608.yml diff --git a/html/changelog.html b/html/changelog.html index 4c2dd2f455f..586b4a5a7f9 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -55,6 +55,40 @@ -->
+

31 July 2016

+

Arctophylax updated:

+
    +
  • Birdboat's atmospheric tanks now function normally again.
  • +
  • Birdboat's TEG is now orientated to match the pipe layout.
  • +
+

Bawhoppen updated:

+
    +
  • toolboxes fit in backpacks
  • +
+

Gun Hog updated:

+
    +
  • In an effort to reduce the demoralizing effects that accompany the death of a crew member, Nanotrasen has provided the prototype designs for the Sad Trombone implant. It can be fabricated at your station's protolathe, if you manage to secure the ever elusive Bananium ore.
  • +
+

Joan updated:

+
    +
  • Megafauna will now seek and consume corpses of enemies to heal or otherwise.
  • +
  • Toolboxes are slightly more robust.
  • +
  • Vanguard now only stuns for 25% of absorbed stuns, from 50%.
  • +
+

Kor updated:

+
    +
  • Hostile mobs will now attack turrets.
  • +
+

Robustin updated:

+
    +
  • Amber ERT Commanders no longer have thermal goggles
  • +
+

lordpidey updated:

+
    +
  • Added Devil agent gamemode, where multiple devils are each trying to buy more souls than the next in line.
  • +
  • If you've already sold your soul, you can sell it again to a different devil. You can even go back and forth for INFINITE POWER.
  • +
+

30 July 2016

astralenigma updated:

    @@ -1247,33 +1281,6 @@
    • Engineering, CE and Atmos hardsuits no longer have in-built jetpacks.
    - -

    29 May 2016

    -

    GunHog updated:

    -
      -
    • The CE, RD, and CMO have been issued megaphones.
    • -
    -

    Paprika, Crystalwarrior, Korphaeron and Bawhoppen updated:

    -
      -
    • Pixel projectiles. This is easier to see than explain, so go fire a weapon.
    • -
    -

    Xhuis updated:

    -
      -
    • Ratvar and Nar-Sie now actively seek each other out if they both exist.
    • -
    • Celestial gateway animations have been twweaked.
    • -
    • Ratvar now has a new sound and message upon spawning.
    • -
    • Ratvar now only moves one tile at a time.
    • -
    • The celestial gateway now takes an unreasonably long amount of time.
    • -
    • God clashing is now much more likely to work properly.
    • -
    • Function Call now works as intended.
    • -
    • Break Will now works as intended.
    • -
    • Holy water now properly deconverts servants of Ratvar.
    • -
    • Deconverted servants of Ratvar are no longer considered servants.
    • -
    -

    pudl updated:

    -
      -
    • Chemicals should now have color, instead of just being pink.
    • -
GoonStation 13 Development Team diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index b458232f94e..e24d92fc993 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -6401,3 +6401,27 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. 2016-07-30: astralenigma: - bugfix: Admins can now turn people into red god. +2016-07-31: + Arctophylax: + - bugfix: Birdboat's atmospheric tanks now function normally again. + - bugfix: Birdboat's TEG is now orientated to match the pipe layout. + Bawhoppen: + - tweak: toolboxes fit in backpacks + Gun Hog: + - rscadd: In an effort to reduce the demoralizing effects that accompany the death + of a crew member, Nanotrasen has provided the prototype designs for the Sad + Trombone implant. It can be fabricated at your station's protolathe, if you + manage to secure the ever elusive Bananium ore. + Joan: + - rscadd: Megafauna will now seek and consume corpses of enemies to heal or otherwise. + - tweak: Toolboxes are slightly more robust. + - tweak: Vanguard now only stuns for 25% of absorbed stuns, from 50%. + Kor: + - rscadd: Hostile mobs will now attack turrets. + Robustin: + - rscdel: Amber ERT Commanders no longer have thermal goggles + lordpidey: + - rscadd: Added Devil agent gamemode, where multiple devils are each trying to buy + more souls than the next in line. + - rscadd: If you've already sold your soul, you can sell it again to a different + devil. You can even go back and forth for INFINITE POWER. diff --git a/html/changelogs/AutoChangeLog-pr-19391.yml b/html/changelogs/AutoChangeLog-pr-19391.yml deleted file mode 100644 index 01e8eec8f8f..00000000000 --- a/html/changelogs/AutoChangeLog-pr-19391.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "lordpidey" -delete-after: True -changes: - - rscadd: "Added Devil agent gamemode, where multiple devils are each trying to buy more souls than the next in line." - - rscadd: "If you've already sold your soul, you can sell it again to a different devil. You can even go back and forth for INFINITE POWER." diff --git a/html/changelogs/AutoChangeLog-pr-19535.yml b/html/changelogs/AutoChangeLog-pr-19535.yml deleted file mode 100644 index 6171ba0a3f3..00000000000 --- a/html/changelogs/AutoChangeLog-pr-19535.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Gun Hog" -delete-after: True -changes: - - rscadd: "In an effort to reduce the demoralizing effects that accompany the death of a crew member, Nanotrasen has provided the prototype designs for the Sad Trombone implant. It can be fabricated at your station's protolathe, if you manage to secure the ever elusive Bananium ore." diff --git a/html/changelogs/AutoChangeLog-pr-19554.yml b/html/changelogs/AutoChangeLog-pr-19554.yml deleted file mode 100644 index 6612850ff4c..00000000000 --- a/html/changelogs/AutoChangeLog-pr-19554.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Kor" -delete-after: True -changes: - - rscadd: "Hostile mobs will now attack turrets." diff --git a/html/changelogs/AutoChangeLog-pr-19561.yml b/html/changelogs/AutoChangeLog-pr-19561.yml deleted file mode 100644 index 61e0a4be339..00000000000 --- a/html/changelogs/AutoChangeLog-pr-19561.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Bawhoppen" -delete-after: True -changes: - - tweak: "toolboxes fit in backpacks" diff --git a/html/changelogs/AutoChangeLog-pr-19578.yml b/html/changelogs/AutoChangeLog-pr-19578.yml deleted file mode 100644 index 2910fa30921..00000000000 --- a/html/changelogs/AutoChangeLog-pr-19578.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Joan" -delete-after: True -changes: - - rscadd: "Megafauna will now seek and consume corpses of enemies to heal or otherwise." diff --git a/html/changelogs/AutoChangeLog-pr-19585.yml b/html/changelogs/AutoChangeLog-pr-19585.yml deleted file mode 100644 index f53bcbe9bca..00000000000 --- a/html/changelogs/AutoChangeLog-pr-19585.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: "Arctophylax" -delete-after: True -changes: - - bugfix: "Birdboat's atmospheric tanks now function normally again." - - bugfix: "Birdboat's TEG is now orientated to match the pipe layout." diff --git a/html/changelogs/AutoChangeLog-pr-19592.yml b/html/changelogs/AutoChangeLog-pr-19592.yml deleted file mode 100644 index 7528a9b3439..00000000000 --- a/html/changelogs/AutoChangeLog-pr-19592.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Joan" -delete-after: True -changes: - - tweak: "Toolboxes are slightly more robust." diff --git a/html/changelogs/AutoChangeLog-pr-19595.yml b/html/changelogs/AutoChangeLog-pr-19595.yml deleted file mode 100644 index 95e68444866..00000000000 --- a/html/changelogs/AutoChangeLog-pr-19595.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Robustin" -delete-after: True -changes: - - rscdel: "Amber ERT Commanders no longer have thermal goggles" diff --git a/html/changelogs/AutoChangeLog-pr-19608.yml b/html/changelogs/AutoChangeLog-pr-19608.yml deleted file mode 100644 index e36ab7dd7ec..00000000000 --- a/html/changelogs/AutoChangeLog-pr-19608.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "Joan" -delete-after: True -changes: - - tweak: "Vanguard now only stuns for 25% of absorbed stuns, from 50%." From 0cd263ab6f61b93f56b586838dca0a1ff827806a Mon Sep 17 00:00:00 2001 From: Joan Lung Date: Sun, 31 Jul 2016 18:57:53 -0400 Subject: [PATCH 059/154] Bubblegum's charge will automatically smash through obstacles (#19599) * Bubblegum's charge will automatically smash through obstacles * fuck everything in the area with your giant yaoi hands, bubblegum-sama * these hands --- .../hostile/megafauna/bubblegum.dm | 23 ++++++++++++++---- icons/mob/lavaland/96x96megafauna.dmi | Bin 127453 -> 127065 bytes 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm index 72d78d1a468..874f024d8f4 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm @@ -85,8 +85,8 @@ Difficulty: Hard else if(prob(5+anger_modifier/2)) slaughterlings() - else - if(health > maxHealth/2 && !client && !charging) + else if(!charging) + if(health > maxHealth/2 && !client) charge() else charge() @@ -108,23 +108,35 @@ Difficulty: Hard bloodspell.phased = 1 new/obj/item/device/gps/internal/bubblegum(src) +/mob/living/simple_animal/hostile/megafauna/bubblegum/do_attack_animation(atom/A) + if(charging) + return + ..() + /mob/living/simple_animal/hostile/megafauna/bubblegum/AttackingTarget() if(charging) return ..() +/mob/living/simple_animal/hostile/megafauna/bubblegum/Goto(target, delay, minimum_distance) + if(charging) + return + ..() + /mob/living/simple_animal/hostile/megafauna/bubblegum/Move() if(!stat) playsound(src.loc, 'sound/effects/meteorimpact.ogg', 200, 1) if(charging) PoolOrNew(/obj/effect/overlay/temp/decoy, list(loc,src)) - for(var/turf/T in range(src, 1)) - T.singularity_pull(src, 7) + DestroySurroundings() . = ..() + if(charging) + DestroySurroundings() /mob/living/simple_animal/hostile/megafauna/bubblegum/proc/charge() var/turf/T = get_step_away(target, src) charging = 1 + DestroySurroundings() PoolOrNew(/obj/effect/overlay/temp/dragon_swoop, T) sleep(5) throw_at(T, 7, 1, src, 0) @@ -135,7 +147,8 @@ Difficulty: Hard if(charging) if(istype(A, /turf) || istype(A, /obj) && A.density) A.ex_act(2) - ..() + DestroySurroundings() + ..() /mob/living/simple_animal/hostile/megafauna/bubblegum/throw_impact(atom/A) if(!charging) diff --git a/icons/mob/lavaland/96x96megafauna.dmi b/icons/mob/lavaland/96x96megafauna.dmi index fab005c716794857ddce8b56031f47b9794fe8de..e13419532df40bfd25d4b25c570d197bab4fa4db 100644 GIT binary patch literal 127065 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%0AcsK^@jW(7dOfDI+Ul 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 literal 127453 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
  • kYL0XLkCB$@ol>l)=qN^aXA;>$vaqM$z2Vf;0q}_P)V!Oam9c(zu>w@}l#86|BAhCtTZUl{R6 zbKNemZTb0Sq+n-nCRClIsJ*HkYb4EJAUPqSxhtPhz&8k_TGA{nWLQ=Deuti);mBS_ zTDQrrX|rtkIhB+A=}qaf&$Dt3U#b=7-d42VmX5K=KmY4*KID6C3MAr&SqQ%6`k*WM z-;w!U$il>ZrXwiX+ZUT}32a5c@LJ8l2*Nu2SX9#q?&tfyvMVUc$Odv|9Za=)2i|80 zAa`T+T>!VYo!+>!^6BI?Yf@79UeAns)4S7nA$tbq$Y4*;2@cHnh+e*RJ8W3*w;y97 z-ag=AAu6l4wdJ?_FiH%}3AG^WG;HgV`W*6%C&FKbC_=xnNnKu5U$J?+xm#%HC&(ZAlSdGjWs>BUw70<%42JC-`(;Nnj{ zb{RF!5|E>QwDXK9w7ShI@nTINV&Mi+8fTlb&t&VF@hsNpgE8aYve<%7wxc9Ab!=RQsd|u!+p5 z-Eb#hWX1;@gMu%@|BfOtc5Z3lij6oWD=TFb6w(c|7}EOfB%@t2bvJ07BUe8gk{bq z(kb0tg3{e7AP7izcb6jF-AGA_AYDp#cXxfm@80|U!Sld*&pEvB%Pa)a9%gabL5dSH= zJ>Tcri3jbm7EfrecN#4g5Sl z2>P&krL=?~?)Wpe7-0YuvWSHr426kbs}cnLX@1z!iI0BXPJ`ETSy?j6OOxG0-Wbos zMLWB|+NkS|K1WHAlkSWl5^Y?ES(7RqkNu1akpvzVc<#;it%V{0DL^sK?^6~+m*-0+ ztY=WP#W$EEgBb4Y#65aXmR;T*S)Zoti(Pel>YzzzwU-Az!3Uvf4^^!v*Af{YONzg& zYLY8na6mRgua3)(d^V7>n&U zK1*K~DBLgn1oL*mcDlt12LQ7f_Lt$Vn+w^`P9UFsg-5Gn#{0(!2-WJ|%rE6Z^(xlM zgJQRQ1SNu?&qdalayau=L^Y=FJ8>jWsAsXhBc@`x&h9|@t-mB>A7K%o!O88pSkel( z;JdNhUFl}I_i>U0d~pG5mI%jJ!VA&dPgm{Pph5F@1Ju(*hkcmjo{9gcLdL+eyO*q< zs{Hs6GTxn3^zlISm)PBgH~2b`VpeS(cJz0{%9FeqKnAbC=^ymk?zzw*j`BiAC&*ic z-`;XvrcuGZ$b%KeJ@>e@3Pr1;%vzS>h~@Thw^2uO#YW32Dz@E&S%xJ~CCVyLw~UO| zhUJ5N821~%BAMQB*GW*U*`uQzGsC(BAT8=fV^|EC)^r7%y7|oqDGi3iCFFI zVZTRZsZ$hKA|vxVuIW*qYorB)ajctof4Zl8R7PPvzlK*#q<}Uibn~8kDv%oWlj&<_ zWDiRVQm~4jV_g>DQuT2&D+j5t5LTZM$Z=Ud|M&myVnWBNMt#;M7i3KZ&DtIKdhfv2 z75JTHjL=yKY*a?bhG7OK!M&+i;NeWuD-WU@V){s$BJFsb@==JR-{}te5xSj)G}*TzzZyu%8pt` z5QpnTS&Zl?eaLu6{Q5aV2siLqxFjOaPhr*fdx0|*f_U1=eOuwQ-P@mSGXFebHFV^w z0k{GH*0s0fO$|`r|M&Cu|J3)r)yP*j4&+3e?)5ce%_DXoCa zwo@JP0a91n{@vE=8~OyXnOBv$A`Cknh>)(;iK^FZW4nGuQfe(&!tyr=5I+&6C4rcs zwDyRhP*L@pFW=kfFh2wLkO>V%LJVg{`juYqiUz|DUz{OuV*%lU@lkmKCu{)S$T&ne zObl078Q8i+Sx1gH!+6KdWK|oIOKrj^b$pPjrp(ILk}h^@M=|96FwX>+e8-1lm^5T|WS^5hLMiA~-NX(`Fp`o87 zoOg6B*q>OFD~kXC-KWcf)DBofhnrGE|8X#MHg7$uTlK8uYYe~SejtY-PevR{IoCfF z5%Ii!^QY!$^GyO9dEZ@sso2rhpR3CnAXBGAiJj4=-9lRu(e=DL0W-5-tAO`Qcj(=L z)N@_n7c-_zeZ{sO&^ZqSh22J-S_JuIlp5y4PxuJx|LXGrJZ@A~|6OBx=Jk49Z(g`aj4|D?!!Et_t!UwQupel z{I<1`G9fE!iUg6z#=*kR3~rRcTb%TPhfKHLw19OV9A_nB{-OrIQq;XM-Ytypk}fI#d|%-<@$iI5<0FO+t=;wCItPft8XFGM-p9DyxbBK97*jbV&8m_?vAHEkX;<@ zb`~jzupPn&q*CC37I1Eg6{M!*}UKg;5!aqg}f){_Fkw30sP4Ll(Auvp!{gaa7v0-PU z7dR`^ERU|YMPUTZ6L4gbe;(cZxHt$L?-;G>P6Sx%4(cJbd(9(Bxy?GyL%S`cfxbk| z78VHz-WCnsU393PbNAg=&whB4sBo{i6FQf?mhG6=VIO0GA;zoF|Ds-5}i1!Fbr+K)K{Cvd0O08@(XQZObzMXu$E! z-l~US>=HYCK(*#tpcx->e7He>{w<{H{SLz|M8xKj3-~>0z-&DKQ3qUPL=2UwEzRT7 z5$fk7SimK4pqF_tn@wgJwCmSJBM1y0H^oT}b%`v9y z`3f?+H0}?^)sk5#dV1d$VyN*?{|s~Sr!G9?*v*N_*=8VPG8lFOnh_X7V%ZHcY^$K? zL!y1aO;q|hx0+~6$&36J70L8^?&%uScPMIbWT)RRdg7-2AqInRXFxE-Mf9wQ8O6km zcB-r;!453R39QynTVIfN9`5|9p7~docVF9_A%;gUAe(6La8zrEX@}4B;a*ai0H3GW zIl#wL?BMtdY2mV91f-t_vd9P`7~g&ajWtjufVr`kw{z{mi_iVSf5k!ZV>#9z0qb5p zz|$cfuw$}Lr~Eyi-#-pM=VCjoDUzNrKMWVo@`o6Low?XG8widvUnmmv7!sE`!)P** zO$7?K!B0-;Xm*($;HGHWIiD~Ahq+eid94wU_5ST}#k%P+x9i?fNrJ$!H-O`Wx%m)8 zJN@sTg1h`{ca0i`PtunNp0|W9-Uh!KG6hOWe*;Sa3EfWN4zgT&Ji}_%aY3&V<#U0y zSG=X&k{b$V7)D=sCZ?i;e<&GVD{Vmxhe1zvEZz|xVut|w`A!Qj{hjcW4zPZ$x^+co zP%Gk3cR5|pj3cdZa{dc$bH*VG;ecY64Q7kMdrwb2fnaj%UnRZ|Sws^>FyrEtJw_ep5n;59{(^RUc zUhw8}W$sQ<{KAkMvaIdFPqmaE*Hs9-HK2~%eJ4G^*YmhlrA}S|AYsO{l(0~`_48X+ z(n2M*)gzx)JiDi5>t8mgy#URwmAStJh1&4L&uxc{!zCdnprjf)gCG6FS#|Zu#TyZP z1m%kGMCy#mNT{*tn&R3GE!|9+^aG&QS@;muFW;))?+j$fl09-aIl${5 zSePlDVPLrtZ_XO_682rMMiqm#Q7{L19yO#R)lR}j*-P_#L|J#G1Ca0BzE)0f zs7Y;>`y?W|c_=;)&G2-7x!bJnMn+1ggH-r0nK8)Cb$HrR$O4}3Q{3T#5h)-j->sUW z<$vqcGT;9({(A`oTrwZm^cJYsm;yuKO+=uayJ)VPmI&?ycWbvNij1h}65IAKseID|ey}N^-cyq)*Qscg6i%`Kw;X52xh%{)Q%!}uAVgK(i#O zgTFnWZ;l$G@N1l(!br-j+~+-j%|-ffE4Hx_rGFN?Ex6_*e}*A?v|Y7*2maf6G6HdYzVzt=Q;QO62f zb{tWwS^to&m9$o;({UdfLT(G;_1_@&#Xworn^9JELG?$|N<+@MM?i1QL_*1*I6*?)K6Ul0rv_ z;m+Dq;71kV8t$?#PzU+^;7SYXahSDCy60D5g|^n`V#f$o5nU9JGJ4%-LXe;gP9wxo ze``ka9WA}%`%xiB_m`{{^*5ysFi)J^tXDJwODdmu|Ltq)@m%_lFGYjcY_b{Og&Cuw+if zin?r5+q5=#{Bde0_|v9bYp}t7zE&gQ`yYQPTwE8nP71G2xlnSV<2KL->D`~ph)?BRAyp<=)Te_}y(80d%# z^S$M>6V1N~VP#kJbVq$0seFR>Wn!tyC4Z%zA@-s6JVm#c-$fv#f+gJkS^{3@Nha$^ zY10c4b)0*(FU|*noRK4baU_X-bXa!e$U}~^aHzcy3{maBf35RwF|b1)a462&&)T7v z6Y##6KNYZsmHiiL`h?)O!ZMi0uC6gDzL=>Mel2H6_CSBQygqeO7kcD|IJb`!wCYKM zY#`f|ixDt8FgQq;>e0nde$`*F43*lz-}~t$Zx}*AW+iz>%TRRTue^*qJLy%K@@hFr z!%ni>J5X9dO>9H@LnyJ$uA|4`T`m$DlezyzWf6iu5UOEUdiA#Q1IYS6S8K0tPjj>g z?p4<+HUyIa>i{dR+#|Mxfoj5Zh=8W*vvD&%io4N$i!HPq&a`_BUc zaAwNe-_>z(f^=80^mia!4!55?QB*P@qtqwMqwIJ!?oi?zY^d@a7P6h9%Hc89TO@6=gxm zhWdxt*K$-m15w(PmfDmKnF}zLLBiEps~W6jGjL=>PGJNVOLmEhW<)wbPyDATLQ7g& zmB1np1RzOs?+g^hXD0e&Fhv;ltSAQ)qc7C9J!aWR`tJ7!;GNH^z;iH#JgT2c$;JKa1uc@f8mS& zwDja2ln#X8)e@7Qdmt>@Rfq<`#sd&rFI&w@$U)bBdQ;ld{F~W#$i4!|JnzwOQe3(m%DXhjX3Be_^eg#C3VxvRf+R$;f9rhJl>Dgu0Y){I$2nBg4-SW57TAiFqJq)iqHr)&Q6s-7V z<~RVAPgsz0eF2=GYs}lW1skgS$|yjQ;4<@R4PO2@^oQAs?HfoMwXWcF)b8(3W1$aH zCU0wf|A@i=atn7erWtr^a-glMu4?%Af#{VGosAnJ{Bik#&WGEl@Rath;q@=W81tRHnc? zaCJU(_NqFgH|&r(j(RYGC4GcSP&bVG!hix4I^?OSs_m7kzXXa(L@0`kVCUlS({SR(ec+obFhX zm6#ErW<5|OdFd%sh3dQQcF!hsEEm4bG>|ou;+N@lOPL{bTB~K-Zb#-N-gzadAE(kz zEl8=h?AeY0#}dRzC!C-2`aQiIj2+rp@td9hjwx{Aj%Y=4*dWJFCQWE_`MF8qdAChm zTQKsf-UBSTcfaReYVU`TglPQP^&yR>9CK5QMKHlaeBX9E4PWi-R?pDiKju}TTleb| zvqMK9()8DeVz8fS%ZIwI|B%N@|A^xa9@h@$;9wnevlLHyZfrYHSRAQ1)J@f{7Y@G7xk=matD~AC-t~k1 zM)b+Q&!ue;dG&JX!COerLpyTtEus|70I*fn#H5IEEbN;TSwfJTl&r84iZTKu*V;*A zoYm#RXp!qvGYDKnM7yvZbVBfE>o{+4$>%G5Xp+_g?Ams>U5{9OGd|(c1M?>?A7AQX z`DyQ72it8+;q~Ic#K3$^H?r5Jy?dl`kzH%+e}p;4sY|)YIi%LZY4%e3Qpz@b2VW-t z3J^h7gxtA=vSiMaYiJkF&=^P`5XF^9Svp*&-Wm+2{oW(;R?O_!dQJY`Am!5NG%!BJ zf;parRhHl!@Zor9kQ=gW50PGbDr@UaMHM}n;%3X;-RQSX@LEH>z2k{Qh_vL;AP~@~ zpiHBpo)|4^~5A+yS(EH)hSm2Exhl!_#;oZs?s(dde z>a9(R8MjjnFBF6l5^A$5o>wH>V$^PW9E(z;@844<0;Cypyi92mm&(2ig*4XVWY&es z5|uut^jf}GAnC3(9(B^3OcHlwvoA$c_yk??qU9NX>WD3mktN@XMzE3BE=3HodbK;i znFVjE@iGq>U^C}VzakEeDb(&ieyKoTLwtO6pbVjG&=bfKw_e56Lu}%*#siOhya=0SwTl)rcVMp(4@?g)dH^-h>JwU}s=F(LkA`GjzcU5=z+0V% z0MS?s)S}oE60q!|jRR)DM{719aKdUAj)ZrY%AsPu zDf--=8bmXbGcC~HF%wsL{t}H9(Dj)BgUVcloLgM;B~g-XpMs)PZVlRrxlxwGUZvQm z;dQ^E)4y{zv0?NuGkkU|P6%ANj42r;(hyo@9cs^SeT&(~u6h35)iJT?Rd5xnxtZu-Zbk>gSyxm?4W5hEr1T^&*`5e} zCnVZIFw*+L;g`9WbZGw?t!8y$;{Im*?ilz-Dpfl7A@QnTX@e1mXk4Ir{9_*Kp#UaaRVkf>!VFG^>p6dWSz=Qjd~eQv3nLrM z9E8*tu+Q^_GaDL-gD+%g?fWYeDZH3X({<Pu|P zDC(^}jMmU9R#_PgR%v1)C)NpH7hvZ<6Oa1$b|FZCI{F&DNNleF4DC%105>S$j!*~T}1BV8o81O|r)mQ^7N21bg8x3-# z_xAGXj9m?rm?C~d7WV4|RX4Ia8Qtlt&rhjyST$-tDQ8N3qIXZ-I7g`;IP6Jg-T-rKz(Rp{R*A|WJ1 zgLD7;SJJ2#(%0}@%PwK#|N5x=_epQ6r+Fz3ReSg6vLHfTMKfr*6BBOmcOs7TKXgPq z+RDTJJQ^CZL|EATCbB7821{1&y-D1W1hKD(W7^>;WFiW9VN{5ge4tD!HU{Q;G7=9e z3Upu31YoTe?~bFZeR|m;JlxF<9Wb*m42n&YX|*CefBK%-k!XNm&3?%)QWkV{i z$8}_U7AVr~lAhC39*5CM)O$VC%1B6>82#YD65KM566_%3Gkr?{n$UWCtC~ap1Nge@ zqEh+uuJ^AQmj#f+>&r<8nRrww3sa$0k1LTswy8y)9!sEWzz*UB*d zNKIkz9~Trd4})1NT4)k3amx(3Jh*oG+;!DW%P`ZCL~8_t#ftIRTB687we)0z-Oofz z#+R}#?%)NQD@*{nRq|pr4801Ajm(5C0Zzf}i`o+`R{#Xk>J_Lfn!EWy)6_vccHe5b zZ*3yn8YGY7-u{}GeNqZT{T7HJQs z3Uh*89WW?=_&UKXt^R1iS41fD#QnHVYK69#66zIV*}f^t$GcH4Vye~vFp$d|i9a;c z*26_uS2dxhG_gP}r@_g2u-PHoNc;$z3(Q*O$Tx<#@ml>$b`uRo-Z3xu6VsHTV|r7e zrg|e9{;2pn=0%%RmM0^JqMeywG)>8t1W=!bjQ{nxn0O(x&iF>2)OJ3dXTCQ_9-wL54gSBYC@@P^EIET5H z>G6fP024dER=8EG{IR2D6fyM&{$~_H#jZ~Wjn7U=C_tB%ZGQ(JFB{Gwm;zt#4XZ1a zG_6j2&FT28Zza|T1}61bshhGkbS-_C|LqjLo&LEDs0+m?K{+%6)XGjm$YhY<7c`7& zm!c?Eu#hTihzk*P2u^0@m?Tj{AX8lzwqq#UzR?^#xKjIlj^`aF-^D?dCL;rAX#6Xe zNf=iWoa?=!_>aY~))$%ulq4V>;w7&k9lgKZFNJ+&uR5P0m+3quqyzg4w)TsQX?qXM z6r71_(7~G)yth9OwxVU|RZO%ktXa75WaBpj#3k>Ewnq*TAqVdS6X>Zf=wMhvVxqb@ z*vF@89ip$aT628Aku-q7OoBjQE>V| zFjwVhT>i;t$|fA>nJo?VO4wyc(~FXcns>a6rHPX$Z5d@!W`DQ#?^O4>>7~&@4I-Ia zb;ZHBxi6j?W|PT+Pw5jc*nLMKU7MH)g1H0QARTS6Tzk*ll8R*9sM4WlRH1`dR8W%}>sKkT@B0D&CNVLU$j;NAg0;dT4&}3p%`L?|r z;$PlJ0)m;m3c0T>`8iN!80ouvyKqa^@g7j)Ds?gG2w&j#ju+Xay=UyUF&^hAT%V9` zv?ZY$5*$M%vWxbQQD@?3k&5b&3N2o}V~L76t9Y{)8?~Cm1xd1~`SLC1xq~r_Jk!+? zSLcjj%NaCJi|0n2B?E>2@i+#niJsz_c}H6$`&)b7$84afZMV6gY7eKd!!IqWMyo;n8d(jE+v{KMR$nhNX+HKK z*V#`g{XSrX*J_ri^NsS9MR;8q#wgvatsEGlDy#52s-LTjL*nzmeAjzDC;Ra*Ay-~l zLs()lU|p@n1T69noQMkR14|)K{De24m|Q0B(KYRm3q&I}$0&LAnCQOs9nc2u{Cfhc z-|Ow{;21DH7OP`svKD21jS%3l=b1KE5(AmtZiu1NfeEA)fk2ffyj;uUdWqyM4CJ%8 z=Ge~P==!C5gyDw+hL+=tn^6cy82B6}Go!Q{q`{Dj6eJe?TL;>WWgp!7uvo~+^t9&} zUf}Z%9)!L*C%Ec~|0Pie(X{;{$xT0pX@CfHIZ%DeOp+!%8c~$(UCP5cjlaBTrqFzU z|5#WGJJ`r$_*t#sT-rVtr!S^_JIcaZMRe)~VXscO<${H*0l7 z_?0zpV&u~Di6|jt!k2BzVQ+QFzP=wN#*lh#;tNx~DvrY^;u;_Ii@I-Pc(&|liSRAJ2N#Z0kz+9&g)@A}b2lWf-B04x#+fPGB) zr>0as*a}(;a+0JntUff+gd>NqrC<}iqH%Z8YU}$o@ZFzju*RBh-){Admj3j@VOrYb@cQorKV3QVAe zN4F5VISzOYiSsp#`|w^3fQ8x7(L;c7g0t|#wzqe~ZP_LfZ5stclN%*%hF$3?(sAsp zEIX-UOD(JIe)*rYM1^IIA)RFYckV+277a~=!DJm^ zT=+0uxR4|FjQ#KYewEzivW0XIkSY4O|~kUeUyve zkoegJKCks@&6t>|3k5y4~yI=;`o?o})U>J>c;@Os#xs8@Z174}@ z>h+=48VFHNDS|Lmo);Tjsan%8Eb}9-vi63;#jg%sdGAonM;N?pENi@)$0SS&=&_Qy zL#-^7Y6m!kKepMMxaDCVb`p&sG)TiOst{Pn?zSs10*T*D&unQT+sz*3bVZ@>t}t26 z%J09Ozl=FKhwije4yDI4hjB}XAviz!sjS&T0PUL!>K(ORN(O=h=4P+_g+`Qd>M= z2N7Py9Rt`6^OKS1>PO|Ywz7YnSJ}a33?%2;Ilmz}p5-C}_2Gd7Kbu$WzagBOj92^d zn(afCfB9MZv$yF5Bu-hn|AOqkza~&&0JInzOAnP15#T$UeikF1yYX>6n!Uz<5p9Q}=T7tLHtOJ9TMhTdab>XBnH>9h%)E6mKN5Il|+&$Q?Iz!WHErXkW(_@NzO^}f}03PsOAQAAytak#D1U0 zjkueY7A|h0A>wQVN$s^ittacn+ z0)HLBj6P4wSXwq-fr5m~Zm9RMqsMPflLRtU;@dGB0sF%aync>Q)tps!@7;{C;FDvv zikv+AkML$3U2)B=z$Z%%sbjZN8iCy50Y|9f_El+R-O4UtE`vS-Y*Iof85x<=!oJx1 zK{3Xw77CjN`%{5`EN${o&!|1|$Iug!^K7>jkT}a*5~ySi4D6U>3p5+RSvfcmG}D1s zw*TAv+Z*cyhRe-h`=}Q{ur~#x46OPJz5&Dv`DIuysg9}9JNCU z@i5E$T3OrSY^B^`AeQA@DQfCa%<=ahImUOminT=&$@rLlz0gF&EZDt8jywL>OJ;IG z^`0ExFB)s+%#WwS__zTJ!5X5T|F-5k*>oKzCpnduAU~Iy;n^Ij%|Hln+1cnC##y>m ztgsv@5ZdfD=$1Jo1Dlc9FLcL_fpM5YI18{wDX% zU0N#Gh7L{V#l`y# z6un{S9Z_zBc6bwu(QRLYU;O~O04j=Is(LJ^dGHSm1NQYnA6%7| zo2P+616^+eeuAT9OL$Gcx+O=>2X(EHGDFC5Oq3b_rRU@%&H90}Z%lLZvCHQVNT7`W zG_Bb%fI+U=-u0kEqR)azsr~;&?ai4EKLsP4%1^HwUZ0x$q6#l>_ja9Q_H?>u?a=D> zWfF6*k#E0-BEWM%eKS}17VF|!u^6?Q$J>2vnOLuZ*r3#q4_^j*jk5OY)5rKPQF0<_SW#!@exvA_jJ?c|F^h`_uH z!b1uXW?h%iYV(saEUA86D7^Zq?ZdGWk7rGMJzd;U5Hvfz_gn7$(~QSm)teCppL-6T z4)QGD))(adKR>Ls%FZe*L^>?_z1n}@q2nd^3y&PK^cW#?sja+>`3r)Qx z7!AmsJTAwSyaXWtfmdi!DDPhvjJfg5+o2igM3&}w@}CEf!Nnx z(Uhr|V!$LtdWN}HLQmHj{z!ixfakGfPH7Jb*^9J{Z#06kVOa#y9gH>SzF8X9rZTSc zk7&72XIK>038)L|+6I`U%cr4kmB05Xbos5;OZ4-gC2r-hr!QzQ>NHi<$agGnJC2Bp z$@y~*uE|a^nGQxRYYi)~anJ64cm&nuNowsk50jUF`d1cMRxkg0R8`kfK4wSyZQx$i z{D&|E`drb*0@n6{62rIZS;f^b1GNVO6l&8lu3>ycLs57#s7N9kBm<2yjk*R14i9?_ z^pc17S0gA_1C_yW9Y$_q+R!lJlygrfW)~4=Yp%-Df6L7$L@jn5`kOda1nVGYpK-{m z9P>!VU+@}Zn((@bUBq5?9j>=3)&YVfAKjtMu}oa#pFP&r5iOM#6rHR;&w3d^v*LF$ zQaXQ-<(=EsYP9b{ZXj;L$`4N8|#`jOS3-5qr+c3d8-YZq0g+E{tvudQ4W7$I{ z7qT+&Wb3y7!3O+T)@c>(*JKqH;tlmXOH2_0{rlRzvHE{RKjUy-1?fL?!ze*u2JN)?RH4v8H`4^q^&flf?EU6muhM1zJ4fbTZs6+{8C+5lldxMWNgXw zgy5oXwm;Fl+T%4R9zpoH38bnm=Rw=9DKngNQqwO)EldoLQRmR^J2m#Zo*>4hZ{rIU z#Fe66N8OB1Ul`wv?MOuEU(-^HrhSEaNmAe2qP7VUkya^FubB3wW1M@qH5a298%3E$mN> zX_+U}VaeM|lB{}5_X)FKS?N+-^Cgt-7z`&~+=hrANd)uO2QMAEJ5LQ~Er|g!?7XcBbMq=qRE>k&o;PK* z!{N#m#b^4A#SBFS%r2<>Dggng34!({0!)G=#argkn*3tsta77P^zM zP=S8^Aex5cR4U71XfeW(^QO_KMifAg83=`+B5n=|L3_8~1Wa%syi|UR?}ih}K^}*u zR_e$`#3>z1gP15)=Y~T?kSg`a)+4@2PL@u2_J!AV;_Jl?njoj@h`{u;nI{7hmJYDg zXWa6vB;hhVkCx(NDx(SdGL#P8;XYDjy8l|j@X1`i&ErfpH{%BnRl8Qn#Ti-r@ozdb zp{R`VX&!6l7*!Z^#lpPILLKyI!xPQ7z4>)$QRDsa6HZVfkB=4mmrSaV6)IEC!To0^ z=3?Smyz33D|55qZqMUhn%P=STOa3;2Wy#Iro1@>x^4L=a+XfJ23;C9G(1)bLP65G0 z_GfWW63gO@tP2uFr5|94^gJO8f%4$5qz;IsqVrH0?Dn!euCYE}$zyt<4S}@ngi)Tt z|8o4=#_oO2!=^hU%=Ma$Vyce5Mga#|=dOqXP5Q88L3tWyb${!%~S- z0ug%av#jq1!ajKH9RDKldE(r0bM_*0z8l`5$aZM&5j(J;P^d`u^uM zKkmom=@;{zp|_*6Kk$+Yzv2x{`69rFNarlz)$34GEN}DuxeP~PI>@7Ho zvAjrNDA~pd(G4CE@9)C{C3eA?a=Vv#iN!zcr&ci2Gqtii20El3leS*RW}*~rjBjvZ zs(1!8&0k?PDi7wfS6}dhG){l8a9151o%O<8qHCKvb|I`SvRJlH| zm9RL!>$Alf$48)86WJ!e zDN+bW{9z+`VSDGe8|maW+QsUC`b(xWv+}k9+jH`5XWg3Ghl+ZzfKRW62k1CVe!ihG zqFG}WxLp!dC`Q$$hufXDmi<@|>)>w^i&bDsW^rZ`wJG%L4nb_i*5|{uy%VqUiHL8l z(CVG+O1VU<9XZjE7kY1kf-CPyT!&}krsrz|e-3Pf{eNU}dGo7K+;@y@}uV zGvx}6N_*ela(LjzFm05AP<(s$$JwmU&5;|HzdY(MzZYd*muPVy1LQ=KpxALAAnE4j z88VLgD<=4wATg1jY+d9G3ZC1w_|;T#5{kcf8bfYYaaY_uiF%WFoQKFy)iz7ct7K#xh%8jnRc4RZ#Z(f9iJr%7^yjHU3*E+=9f1H#<4>1f4)Fk-`#I2 zxCn$+S$>2>dd`K*n;x+ZW784gg2jnWXL;Xt|8RPD{O`oI%%JPb+FNt@GkjJD1lu8XA{y?vUmW+cpi0NWt#Q$&x;WYc=uIU z=_)TB^tljPa9)FYhHIG9&Fr-Dlw-)uVA;~x{DBG@2oYo|M1egzkoAwt3>n9AgI_W8 zG{43AQfFt=M{!xRW?eUmk^Xsx#Eo;V|M_}? z5^||)KzDQ42CD`3~2bPb0brhG{>;)k8QN<1WlY2&|MEQbM-0?>`mcT zwLt>m?1tl;B41a()p{wrWO$KeR^jE(Q+p63Sh5;VC`EV*e#dgfQLH{(=)gzpl~Xdh z=HTGei_*3$qZ!LxrFMGKoAXlR5Y->W{=iB?=#<2BZrFJlI+8Fgo!(tILPe2O2O*en zyJVQlCZC$QY)J3}t7Lflgh+WVL%z7a+$^x}euP4W1dNoIU<@yOpe?Vy$5rCqI|QCF zp@ns5T&{Fth(SIJM+YC{)>{UBPnBc?0VWKlnpuBeBDV8nUx3hdT|iqSin5`gV*AMjYth)4cb+r!^qo@TyOTB1&v=R5dxNtZV{bVFS?%n$ zL(;~KxN2`l4wrS4j# zEy~9>hzebB^1O^bwIW1uMU>NYP3`0hZT`{tb|$M<>6%hoTJO6xLHU9cgE6Siyyn$9 zWh982uNGL&Cs4@_u@CGjNk%B7@YtUWF>2NE3}&*tKULo`cxaG<7e|j5 zk+~4}(=y(ah$aWZ^{{*|uMvH_ZO}K&5*(3*n}X zzUC(q!+3b5wlh4>Z>UOb!^_d*b{y04QqME=92uKRGT@CrP{7m_K(?%J#*bRxPJ!8l zY65@^F5_WQ`8=E~A}V!_e_yE<(x&1s>kL$(KV;W+`o

    _pr7A!2`wi3}1)>@{;YcXq2u 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