From 6a71cd2f577aa00907081c2f8ac3364e1c519e5c Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Wed, 5 Aug 2015 15:54:41 -0500 Subject: [PATCH 01/16] Toki Wo Tomare ZA WARUDO --- code/datums/spells/wizard.dm | 13 +++++++++++++ code/game/gamemodes/wizard/spellbook.dm | 5 +++++ .../reagents/Chemistry-Recipes/Slime_extracts.dm | 2 +- code/modules/research/xenobiology/xenobiology.dm | 5 ++++- 4 files changed, 23 insertions(+), 2 deletions(-) diff --git a/code/datums/spells/wizard.dm b/code/datums/spells/wizard.dm index 20323fc1f8a..3aa0786c23b 100644 --- a/code/datums/spells/wizard.dm +++ b/code/datums/spells/wizard.dm @@ -157,6 +157,19 @@ cast_sound = "sound/magic/ForceWall.ogg" +/obj/effect/proc_holder/spell/aoe_turf/conjure/timestop + name = "Stop Time" + desc = "This spell stops time for everyone except for you, allowing you to move freely while your enemies and even projectiles are frozen." + charge_max = 300 + clothes_req = 1 + invocation = "TOKI WO TOMARE" + invocation_type = "shout" + range = 0 + summon_amt = 1 + action_icon_state = "time" + + summon_type = list(/obj/effect/timestop/wizard) + /obj/effect/proc_holder/spell/aoe_turf/conjure/carp name = "Summon Carp" desc = "This spell conjures a simple carp." diff --git a/code/game/gamemodes/wizard/spellbook.dm b/code/game/gamemodes/wizard/spellbook.dm index 563bdef1fd4..3abb3706ae2 100644 --- a/code/game/gamemodes/wizard/spellbook.dm +++ b/code/game/gamemodes/wizard/spellbook.dm @@ -119,6 +119,11 @@ spell_type = /obj/effect/proc_holder/spell/aoe_turf/repulse log_name = "RP" +/datum/spellbook_entry/timestop + name = "Time Stop" + spell_type = /obj/effect/proc_holder/spell/aoe_turf/conjure/timestop + log_name = "TS" + /datum/spellbook_entry/smoke name = "Smoke" spell_type = /obj/effect/proc_holder/spell/targeted/smoke diff --git a/code/modules/reagents/Chemistry-Recipes/Slime_extracts.dm b/code/modules/reagents/Chemistry-Recipes/Slime_extracts.dm index 46f1d7a1e74..2c5f9aa9533 100644 --- a/code/modules/reagents/Chemistry-Recipes/Slime_extracts.dm +++ b/code/modules/reagents/Chemistry-Recipes/Slime_extracts.dm @@ -562,7 +562,7 @@ var/mob/mob = get_mob_by_key(holder.my_atom.fingerprintslast) var/obj/effect/timestop/T = new /obj/effect/timestop T.loc = get_turf(holder.my_atom) - T.immune = mob + T.immune += mob T.timestop() diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index 63ea9a0a6d3..7b46b8434e9 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -410,7 +410,7 @@ var/mob/living/carbon/human/G = new /mob/living/carbon/human if(prob(50)) G.gender = "female" hardset_dna(G, null, null, null, null, /datum/species/golem/adamantine) - + G.set_cloned_appearance() G.real_name = text("Adamantine Golem ([rand(1, 1000)])") G.dna.species.auto_equip(G) @@ -478,6 +478,9 @@ sleep(1) +/obj/effect/timestop/wizard + duration = 90 + /obj/item/stack/tile/bluespace name = "bluespace floor tile" From 8f81e695e796968843e3a70441f7df659fd4208f Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Wed, 5 Aug 2015 15:55:51 -0500 Subject: [PATCH 02/16] Changelog --- html/changelogs/KORPHAERON-PR-ZAWARUDO.yml | 36 ++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 html/changelogs/KORPHAERON-PR-ZAWARUDO.yml diff --git a/html/changelogs/KORPHAERON-PR-ZAWARUDO.yml b/html/changelogs/KORPHAERON-PR-ZAWARUDO.yml new file mode 100644 index 00000000000..99653734ec8 --- /dev/null +++ b/html/changelogs/KORPHAERON-PR-ZAWARUDO.yml @@ -0,0 +1,36 @@ +################################ +# Example Changelog File +# +# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb. +# +# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.) +# When it is, any changes listed below will disappear. +# +# Valid Prefixes: +# bugfix +# wip (For works in progress) +# tweak +# soundadd +# sounddel +# rscadd (general adding of nice things) +# rscdel (general deleting of nice things) +# imageadd +# imagedel +# spellcheck (typo fixes) +# experiment +# tgs (TG-ported fixes?) +################################# + +# Your name. +author: Kor + +# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again. +delete-after: True + +# Any changes you've made. See valid prefix list above. +# INDENT WITH TWO SPACES. NOT TABS. SPACES. +# SCREW THIS UP AND IT WON'T WORK. +# Also, this gets changed to [] after reading. Just remove the brackets when you add new shit. +# Please surround your changes in double quotes ("). It works without them, but if you use certain characters it screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "The wizard can now stop time." From 3e66d9daa8fd44ffeba1baed84766c8e5a15c3bb Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Wed, 5 Aug 2015 18:01:19 -0500 Subject: [PATCH 03/16] Added cooldown_min --- code/datums/spells/wizard.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/datums/spells/wizard.dm b/code/datums/spells/wizard.dm index 3aa0786c23b..a32bae29911 100644 --- a/code/datums/spells/wizard.dm +++ b/code/datums/spells/wizard.dm @@ -165,6 +165,7 @@ invocation = "TOKI WO TOMARE" invocation_type = "shout" range = 0 + cooldown_min = 90 summon_amt = 1 action_icon_state = "time" @@ -332,4 +333,4 @@ var/mob/living/M = AM M.Weaken(2) M << "You're thrown back by a mystical force!" - spawn(0) AM.throw_at(throwtarget, ((Clamp((maxthrow - (Clamp(distfromcaster - 2, 0, distfromcaster))), 3, maxthrow))), 1,user)//So stuff gets tossed around at the same time. \ No newline at end of file + spawn(0) AM.throw_at(throwtarget, ((Clamp((maxthrow - (Clamp(distfromcaster - 2, 0, distfromcaster))), 3, maxthrow))), 1,user)//So stuff gets tossed around at the same time. From 7fa7be64bcc50735019f925c2c043a4118b5c9d2 Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Wed, 5 Aug 2015 19:09:45 -0500 Subject: [PATCH 04/16] Not sure how half my commit got left out --- code/modules/research/xenobiology/xenobiology.dm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index 7b46b8434e9..b14ad3ee961 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -436,13 +436,17 @@ pixel_x = -64 pixel_y = -64 unacidable = 1 - var/mob/living/immune = null // the one who creates the timestop is immune + var/mob/living/immune = list() // the one who creates the timestop is immune var/freezerange = 2 var/duration = 140 alpha = 125 /obj/effect/timestop/New() ..() + for(var/mob/M in player_list) + for(var/obj/effect/proc_holder/spell/S in M.mind.spell_list) //People with timestop are immune to all timestops + if(istype(S, /obj/effect/proc_holder/spell/aoe_turf/conjure/timestop)) + immune += M timestop() @@ -451,7 +455,7 @@ while(loc) if(duration) for(var/mob/living/M in orange (freezerange, src.loc)) - if(M == immune) + if(M in immune) continue M.stunned = 10 M.anchored = 1 From 6f73d3c9a77ffa2fa0f6616f5ae1b566aadf365e Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Wed, 5 Aug 2015 19:20:27 -0500 Subject: [PATCH 05/16] Coding school adventures --- code/modules/research/xenobiology/xenobiology.dm | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index b14ad3ee961..22d8ae62826 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -443,10 +443,13 @@ /obj/effect/timestop/New() ..() - for(var/mob/M in player_list) - for(var/obj/effect/proc_holder/spell/S in M.mind.spell_list) //People with timestop are immune to all timestops - if(istype(S, /obj/effect/proc_holder/spell/aoe_turf/conjure/timestop)) - immune += M + mobs: + for(var/mob/M in player_list) + spells: + for(var/obj/effect/proc_holder/spell/S in M.mind.spell_list)//People with timestop are immune to all timestops + if(istype(S, /obj/effect/proc_holder/spell/aoe_turf/conjure/timestop)) + immune |= M + break spells timestop() From 2d419a33183d4775fcc3ed3b89f5d7960fc053ab Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Wed, 5 Aug 2015 20:13:04 -0500 Subject: [PATCH 06/16] Removed extra loop label --- code/modules/research/xenobiology/xenobiology.dm | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index 22d8ae62826..cd20f8fcd05 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -443,13 +443,12 @@ /obj/effect/timestop/New() ..() - mobs: - for(var/mob/M in player_list) - spells: - for(var/obj/effect/proc_holder/spell/S in M.mind.spell_list)//People with timestop are immune to all timestops - if(istype(S, /obj/effect/proc_holder/spell/aoe_turf/conjure/timestop)) - immune |= M - break spells + for(var/mob/M in player_list) + spells: + for(var/obj/effect/proc_holder/spell/S in M.mind.spell_list)//People with timestop are immune to all timestops + if(istype(S, /obj/effect/proc_holder/spell/aoe_turf/conjure/timestop)) + immune |= M + break spells timestop() From 35b78b12097e7d96989f6884206ab15eb3da5e24 Mon Sep 17 00:00:00 2001 From: MMMiracles Date: Tue, 11 Aug 2015 01:56:38 -0400 Subject: [PATCH 07/16] Revamps bioterror darts into a non-lethal syringe form. Removed the coniine and spore toxin to make it solely for quiet take-downs (in thoery). --- code/datums/uplink_item.dm | 8 ++++---- .../objects/items/weapons/storage/uplink_kits.dm | 14 ++++++++++++++ .../reagents/reagent_containers/syringes.dm | 5 +++++ html/changelogs/MMMiracles - biomemes.yml | 9 +++++++++ 4 files changed, 32 insertions(+), 4 deletions(-) create mode 100644 html/changelogs/MMMiracles - biomemes.yml diff --git a/code/datums/uplink_item.dm b/code/datums/uplink_item.dm index c996a6bfe89..e6a16f78260 100644 --- a/code/datums/uplink_item.dm +++ b/code/datums/uplink_item.dm @@ -303,10 +303,10 @@ var/list/uplink_items = list() cost = 2 gamemodes = list(/datum/game_mode/nuclear) -/datum/uplink_item/ammo/bulltoxin - name = "Drum Magazine - 12g Bioterror" - desc = "An alternative 8-round toxic magazine for use in the Bulldog shotgun. Contains debilitating toxins to make your target die an excruciatingly rapid death." - item = /obj/item/ammo_box/magazine/m12g/bioterror +/datum/uplink_item/ammo/bioterror + name = "Box of Bioterror Syringes" + desc = "A box full of preloaded syringes, containing various chemicals that seize up the victim's motor and broca system , making it impossible for them to move or speak while in their system." + item = /obj/item/weapon/storage/box/syndie_kit/bioterror cost = 6 gamemodes = list(/datum/game_mode/nuclear) diff --git a/code/game/objects/items/weapons/storage/uplink_kits.dm b/code/game/objects/items/weapons/storage/uplink_kits.dm index becd01a5308..6452091084f 100644 --- a/code/game/objects/items/weapons/storage/uplink_kits.dm +++ b/code/game/objects/items/weapons/storage/uplink_kits.dm @@ -136,6 +136,20 @@ O.update_icon() return +/obj/item/weapon/storage/box/syndie_kit/bioterror + name = "bioterror syringe box" + +/obj/item/weapon/storage/box/syndie_kit/bioterror/New() + ..() + new /obj/item/weapon/reagent_containers/syringe/bioterror(src) + new /obj/item/weapon/reagent_containers/syringe/bioterror(src) + new /obj/item/weapon/reagent_containers/syringe/bioterror(src) + new /obj/item/weapon/reagent_containers/syringe/bioterror(src) + new /obj/item/weapon/reagent_containers/syringe/bioterror(src) + new /obj/item/weapon/reagent_containers/syringe/bioterror(src) + new /obj/item/weapon/reagent_containers/syringe/bioterror(src) + return + /obj/item/weapon/storage/box/syndie_kit/imp_adrenal name = "boxed adrenal implant (with injector)" diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 46b77827093..3bac3f14830 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -221,6 +221,11 @@ desc = "Contains antiviral agents." list_reagents = list("spaceacillin" = 15) +/obj/item/weapon/reagent_containers/syringe/bioterror + name = "bioterror syringe" + desc = "Contains several paralyzing reagents." + list_reagents = list("neurotoxin" = 5, "mutetoxin" = 5, "sodium_thiopental" = 5) + /obj/item/weapon/reagent_containers/syringe/stimulants name = "Stimpack" desc = "Contains stimulants." diff --git a/html/changelogs/MMMiracles - biomemes.yml b/html/changelogs/MMMiracles - biomemes.yml new file mode 100644 index 00000000000..a6e1d4e6005 --- /dev/null +++ b/html/changelogs/MMMiracles - biomemes.yml @@ -0,0 +1,9 @@ + +author: MMMiracles + + +delete-after: True + +changes: + - tweak: "Revamps bioterror darts into a less-lethal, syringe form. Removed the coniine and spore toxins to keep it solely for quiet take-downs." + From ced06e1a2cbc8b0358b095151ef6e87c90e045bd Mon Sep 17 00:00:00 2001 From: KorPhaeron Date: Thu, 13 Aug 2015 09:11:19 -0600 Subject: [PATCH 08/16] Fix --- code/modules/research/xenobiology/xenobiology.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index cd20f8fcd05..8d977d27975 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -443,7 +443,7 @@ /obj/effect/timestop/New() ..() - for(var/mob/M in player_list) + for(var/mob/living/M in player_list) spells: for(var/obj/effect/proc_holder/spell/S in M.mind.spell_list)//People with timestop are immune to all timestops if(istype(S, /obj/effect/proc_holder/spell/aoe_turf/conjure/timestop)) From ca98ac5151f850e1a425f1d60790af54e6ebf1f1 Mon Sep 17 00:00:00 2001 From: Aranclanos Date: Thu, 13 Aug 2015 21:40:00 -0300 Subject: [PATCH 09/16] The staff of change projectile will qdel the mob instead of manually deleting it. Added a warning for when the mob controller removes a null from the mob list. --- code/controllers/subsystem/mobs.dm | 1 + code/modules/projectiles/projectile/magic.dm | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/code/controllers/subsystem/mobs.dm b/code/controllers/subsystem/mobs.dm index 9bae03b30a4..41d9d3fb05c 100644 --- a/code/controllers/subsystem/mobs.dm +++ b/code/controllers/subsystem/mobs.dm @@ -19,4 +19,5 @@ var/datum/subsystem/mobs/SSmob if(thing) thing:Life(seconds) continue + WARNING("Found a null in the mob list. Removing.") mob_list.Remove(thing) \ No newline at end of file diff --git a/code/modules/projectiles/projectile/magic.dm b/code/modules/projectiles/projectile/magic.dm index bbe10e02af3..5c891b9fae0 100644 --- a/code/modules/projectiles/projectile/magic.dm +++ b/code/modules/projectiles/projectile/magic.dm @@ -243,7 +243,7 @@ new_mob << "Your form morphs into that of a [randomize]." - del(M) + qdel(M) return new_mob /obj/item/projectile/magic/animate From 53eb3e4e3c3e4277392ec1e5178c2e8c553301a4 Mon Sep 17 00:00:00 2001 From: Miauw Date: Sat, 15 Aug 2015 17:14:14 +0200 Subject: [PATCH 10/16] Fixes lings being unable to complete their extract objective. --- code/game/gamemodes/changeling/changeling.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm index d93712c1831..3567159b4ef 100644 --- a/code/game/gamemodes/changeling/changeling.dm +++ b/code/game/gamemodes/changeling/changeling.dm @@ -265,7 +265,7 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas //var/list/absorbed_dna = list() //var/list/protected_dna = list() //dna that is not lost when capacity is otherwise full var/dna_max = 6 //How many extra DNA strands the changeling can store for transformation. - var/absorbedcount = 1 //We would require at least 1 sample of compatible DNA to have taken on the form of a human. + var/absorbedcount = 0 var/chem_charges = 20 var/chem_storage = 75 var/chem_recharge_rate = 1 @@ -363,6 +363,7 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas prof.exists_list[slot] = 1 stored_profiles += prof + absorbedcount++ return prof From 651c7985a7ca77c46a075f0c916c0c772d67e68f Mon Sep 17 00:00:00 2001 From: Remie Richards Date: Sat, 15 Aug 2015 16:58:28 +0100 Subject: [PATCH 11/16] Fixes it so that ling team objectives are correctly handed out and correctly find targets. --- code/game/gamemodes/changeling/changeling.dm | 12 ++++---- code/game/gamemodes/objective.dm | 29 ++++++++++++++------ code/game/jobs/jobs.dm | 12 ++++++++ 3 files changed, 39 insertions(+), 14 deletions(-) diff --git a/code/game/gamemodes/changeling/changeling.dm b/code/game/gamemodes/changeling/changeling.dm index d93712c1831..85f241c95b0 100644 --- a/code/game/gamemodes/changeling/changeling.dm +++ b/code/game/gamemodes/changeling/changeling.dm @@ -82,8 +82,10 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas //And then set it up to be handed out in forge_changeling_objectives var/list/team_objectives = typesof(/datum/objective/changeling_team_objective) - /datum/objective/changeling_team_objective var/list/possible_team_objectives = list() - for(var/datum/objective/changeling_team_objective/T in team_objectives) - if(changelings.len >= initial(T.min_lings)) + for(var/T in team_objectives) + var/datum/objective/changeling_team_objective/CTO = T + + if(changelings.len >= initial(CTO.min_lings)) possible_team_objectives += T if(possible_team_objectives.len && prob(20*changelings.len)) @@ -349,7 +351,7 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas prof.dna = new_dna prof.name = H.real_name prof.protected = protect - + var/list/slots = list("head", "wear_mask", "back", "wear_suit", "w_uniform", "shoes", "belt", "gloves", "glasses", "ears", "wear_id", "s_store") for(var/slot in slots) var/obj/item/I = H.vars[slot] @@ -425,7 +427,7 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas /datum/changelingprofile var/name = "a bug" - + var/protected = 0 var/datum/dna/dna = null @@ -435,6 +437,6 @@ var/list/slot2type = list("head" = /obj/item/clothing/head/changeling, "wear_mas var/list/exists_list = list() var/list/item_color_list = list() var/list/item_state_list = list() - + /datum/changelingprofile/Destroy() qdel(dna) diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index 17f812ccf89..82894239a30 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -667,7 +667,7 @@ var/global/list/possible_items_special = list() /datum/objective/changeling_team_objective //Abstract type martyr_compatible = 0 //Suicide is not teamwork! explanation_text = "Changeling Friendship!" - var/min_lings = 3 //Minimum amount of lings for this team objective to be possible + var/min_lings = 1//3 //Minimum amount of lings for this team objective to be possible @@ -701,13 +701,18 @@ var/global/list/possible_items_special = list() var/ling_count = ticker.mode.changelings for(var/datum/mind/M in ticker.minds) - if(department_head in M.assigned_job.department_head) + if(M in ticker.mode.changelings) + continue + if(department_head in get_department_heads(M.assigned_role)) if(ling_count) ling_count-- department_minds += M department_real_names += M.current.real_name + else + break if(!department_minds.len) + log_game("[type] has failed to find department staff, and has removed itself. the round will continue normally") owner.objectives -= src qdel(src) return @@ -724,16 +729,19 @@ var/global/list/possible_items_special = list() var/needed_heads = rand(min_lings,command_positions.len) needed_heads = min(ticker.mode.changelings.len,needed_heads) - for(var/datum/mind/possible_head in ticker.minds) - if(possible_head in ticker.mode.changelings) //Looking at you HoP. + var/list/heads = ticker.mode.get_living_heads() + for(var/datum/mind/head in heads) + if(head in ticker.mode.changelings) //Looking at you HoP. continue - if(possible_head.assigned_job.title in command_positions) - if(needed_heads) - department_minds += possible_head - department_real_names += possible_head.current.real_name - needed_heads-- + if(needed_heads) + department_minds += head + department_real_names += head.current.real_name + needed_heads-- + else + break if(!department_minds.len) + log_game("[type] has failed to find department heads, and has removed itself. the round will continue normally") owner.objectives -= src qdel(src) return @@ -783,6 +791,9 @@ var/global/list/possible_items_special = list() //Check each department member's mind to see if any of them made it to centcomm alive, if they did it's an automatic fail for(var/datum/mind/M in department_minds) + if(M in ticker.mode.changelings) //Lings aren't picked for this, but let's be safe + continue + if(M.current) var/turf/mloc = get_turf(M.current) if(mloc.onCentcom() && (M.current.stat != DEAD)) diff --git a/code/game/jobs/jobs.dm b/code/game/jobs/jobs.dm index 9bcc58643d7..e47d66df179 100644 --- a/code/game/jobs/jobs.dm +++ b/code/game/jobs/jobs.dm @@ -125,3 +125,15 @@ var/list/nonhuman_positions = list( /proc/guest_jobbans(job) return ((job in command_positions) || (job in nonhuman_positions) || (job in security_positions)) + + + +//this is necessary because antags happen before job datums are handed out, but NOT before they come into existence +//so I can't simply use job datum.department_head straight from the mind datum, laaaaame. +/proc/get_department_heads(var/job_title) + if(!job_title) + return list() + + for(var/datum/job/J in SSjob.occupations) + if(J.title == job_title) + return J.department_head //this is a list \ No newline at end of file From 10044fb2d49bd83e8be202c0deeea2fa502e796e Mon Sep 17 00:00:00 2001 From: Remie Richards Date: Sat, 15 Aug 2015 17:00:28 +0100 Subject: [PATCH 12/16] Quick debug removal --- code/game/gamemodes/objective.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/gamemodes/objective.dm b/code/game/gamemodes/objective.dm index 82894239a30..d922bde382d 100644 --- a/code/game/gamemodes/objective.dm +++ b/code/game/gamemodes/objective.dm @@ -667,7 +667,7 @@ var/global/list/possible_items_special = list() /datum/objective/changeling_team_objective //Abstract type martyr_compatible = 0 //Suicide is not teamwork! explanation_text = "Changeling Friendship!" - var/min_lings = 1//3 //Minimum amount of lings for this team objective to be possible + var/min_lings = 3 //Minimum amount of lings for this team objective to be possible From 6503bfc5e97ffbfb64b8fef86e9b67cb96e06582 Mon Sep 17 00:00:00 2001 From: sybil-tgstation13 Date: Sat, 15 Aug 2015 16:06:25 +0000 Subject: [PATCH 13/16] Automatic changelog compile --- html/changelog.html | 2 ++ html/changelogs/.all_changelog.yml | 2 ++ html/changelogs/Miauw-deadpatches.yml | 7 ------- html/changelogs/Miauw-edaggers.yml | 7 ------- 4 files changed, 4 insertions(+), 14 deletions(-) delete mode 100644 html/changelogs/Miauw-deadpatches.yml delete mode 100644 html/changelogs/Miauw-edaggers.yml diff --git a/html/changelog.html b/html/changelog.html index 65158d9c7e1..a38639667d7 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -59,6 +59,8 @@

Miauw updated:

  • Changeling transformations have been upgraded to also include clothing instead of just DNA.
  • +
  • Patches no longer work on dead people.
  • +
  • Added 15-force edaggers that function like pens when off.

MrPerson updated: