From 9024854e1f35da6496e037a59fb6bc143e271fde Mon Sep 17 00:00:00 2001 From: Techhead Date: Wed, 16 Nov 2016 19:36:18 -0500 Subject: [PATCH 01/22] Fixes lung rupturing in partial pressure or overpressure Also deals with a runtime --- code/modules/mob/living/carbon/human/life.dm | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index beb6f29d7d..6b0663e66a 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -346,11 +346,7 @@ if(should_have_organ(O_LUNGS)) var/obj/item/organ/internal/lungs/L = internal_organs_by_name[O_LUNGS] if(!L.is_bruised() && prob(8)) - if(breath.total_moles) - if(breath.total_moles < BREATH_MOLES / 5 || breath.total_moles > BREATH_MOLES * 5) - rupture_lung() - else - rupture_lung() + rupture_lung() if(should_have_organ("brain")) if(prob(5)) @@ -372,7 +368,10 @@ safe_pressure_min *= 1.5 else if(L.is_bruised()) safe_pressure_min *= 1.25 - + else if(breath.total_moles < BREATH_MOLES / 5 || breath.total_moles > BREATH_MOLES * 5) + if prop(8) + rupture_lung() + var/safe_exhaled_max = 10 var/safe_toxins_max = 0.2 var/SA_para_min = 1 @@ -1672,4 +1671,4 @@ ..() #undef HUMAN_MAX_OXYLOSS -#undef HUMAN_CRIT_MAX_OXYLOSS \ No newline at end of file +#undef HUMAN_CRIT_MAX_OXYLOSS From 070498e913e03097908d541b0d42158fc226355f Mon Sep 17 00:00:00 2001 From: Techhead Date: Wed, 16 Nov 2016 21:06:33 -0500 Subject: [PATCH 02/22] if(prob()), not if prop() Dumb typos are dumb. --- code/modules/mob/living/carbon/human/life.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 6b0663e66a..2ffc6a882d 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -369,9 +369,9 @@ else if(L.is_bruised()) safe_pressure_min *= 1.25 else if(breath.total_moles < BREATH_MOLES / 5 || breath.total_moles > BREATH_MOLES * 5) - if prop(8) + if (prob(8)) rupture_lung() - + var/safe_exhaled_max = 10 var/safe_toxins_max = 0.2 var/SA_para_min = 1 From a67e57e72764f1c8d5e3f0ab394d3498b3f5bc2c Mon Sep 17 00:00:00 2001 From: Anewbe Date: Fri, 18 Nov 2016 22:32:45 -0600 Subject: [PATCH 03/22] Simple fix is good fix --- code/modules/client/preference_setup/loadout/loadout.dm | 2 +- code/modules/client/preference_setup/loadout/loadout_utility.dm | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/code/modules/client/preference_setup/loadout/loadout.dm b/code/modules/client/preference_setup/loadout/loadout.dm index 8f2d5af598..3891bf0562 100644 --- a/code/modules/client/preference_setup/loadout/loadout.dm +++ b/code/modules/client/preference_setup/loadout/loadout.dm @@ -21,7 +21,7 @@ var/list/gear_datums = list() if(!use_name) error("Loadout - Missing display name: [G]") continue - if(!initial(G.cost)) + if(isnull(initial(G.cost))) error("Loadout - Missing cost: [G]") continue if(!initial(G.path)) diff --git a/code/modules/client/preference_setup/loadout/loadout_utility.dm b/code/modules/client/preference_setup/loadout/loadout_utility.dm index 653f925641..7ce24eb116 100644 --- a/code/modules/client/preference_setup/loadout/loadout_utility.dm +++ b/code/modules/client/preference_setup/loadout/loadout_utility.dm @@ -11,6 +11,7 @@ /datum/gear/utility/communicator display_name = "personal communicator" path = /obj/item/device/communicator + cost = 0 /datum/gear/utility/folder_blue display_name = "folder, blue" From 7d86004f8a206eff9be0bb08899ca868c53dd4ba Mon Sep 17 00:00:00 2001 From: Anewbe Date: Fri, 18 Nov 2016 22:33:44 -0600 Subject: [PATCH 04/22] Changelog --- html/changelogs/Anewbe - Comms.yml | 36 ++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 html/changelogs/Anewbe - Comms.yml diff --git a/html/changelogs/Anewbe - Comms.yml b/html/changelogs/Anewbe - Comms.yml new file mode 100644 index 0000000000..adc9a80a15 --- /dev/null +++ b/html/changelogs/Anewbe - Comms.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 +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Anewbe + +# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "Communicators no longer have a loadout cost." \ No newline at end of file From 67532eef54a33b13da4aea173aaffd8faf398340 Mon Sep 17 00:00:00 2001 From: Anewbe Date: Fri, 18 Nov 2016 23:41:38 -0600 Subject: [PATCH 05/22] Unit test fix --- code/unit_tests/loadout_tests.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/unit_tests/loadout_tests.dm b/code/unit_tests/loadout_tests.dm index 7ca778655a..aba7184229 100644 --- a/code/unit_tests/loadout_tests.dm +++ b/code/unit_tests/loadout_tests.dm @@ -9,7 +9,7 @@ if(!initial(G.display_name)) log_unit_test("[G]: Loadout - Missing display name.") failed = 1 - else if(!initial(G.cost)) + else if(isnull(initial(G.cost))) log_unit_test("[G]: Loadout - Missing cost.") failed = 1 else if(!initial(G.path)) From 733f9087998e0375b81711ba304b6094c928710a Mon Sep 17 00:00:00 2001 From: Nerezza Date: Sat, 19 Nov 2016 13:15:14 -0600 Subject: [PATCH 06/22] Accessories on teshari now use the right sprites Teshari can (finally) into webbing, too! Tested and works, only issue is that any accessories not in seromi/ties.dmi will not be visible. This is how everything but jumpsuits handles things for them anyhow. --- .../clothing/under/accessories/accessory.dm | 15 +++++--- html/changelogs/Nerezza - FinallyInto.yml | 37 +++++++++++++++++++ 2 files changed, 47 insertions(+), 5 deletions(-) create mode 100644 html/changelogs/Nerezza - FinallyInto.yml diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index d21a86b731..ee6eba13d6 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -12,6 +12,7 @@ var/image/mob_overlay = null var/overlay_state = null var/concealed_holster = 0 + var/mob/living/carbon/human/wearer = null //To check if the wearer changes, so species spritesheets change properly. sprite_sheets = list("Teshari" = 'icons/mob/species/seromi/ties.dmi') //Teshari can into webbing, too! @@ -21,23 +22,27 @@ /obj/item/clothing/accessory/proc/get_inv_overlay() if(!inv_overlay) - if(!mob_overlay) - get_mob_overlay() - var/tmp_icon_state = "[overlay_state? "[overlay_state]" : "[icon_state]"]" if(icon_override) if("[tmp_icon_state]_tie" in icon_states(icon_override)) tmp_icon_state = "[tmp_icon_state]_tie" - inv_overlay = image(icon = mob_overlay.icon, icon_state = tmp_icon_state, dir = SOUTH) + inv_overlay = image(icon = INV_ACCESSORIES_DEF_ICON, icon_state = tmp_icon_state, dir = SOUTH) return inv_overlay /obj/item/clothing/accessory/proc/get_mob_overlay() - if(!mob_overlay) + if(!mob_overlay || has_suit.loc != wearer) var/tmp_icon_state = "[overlay_state? "[overlay_state]" : "[icon_state]"]" + if(ishuman(has_suit.loc)) + wearer = has_suit.loc + else + wearer = null + if(icon_override) if("[tmp_icon_state]_mob" in icon_states(icon_override)) tmp_icon_state = "[tmp_icon_state]_mob" mob_overlay = image("icon" = icon_override, "icon_state" = "[tmp_icon_state]") + else if(wearer && sprite_sheets[wearer.species.get_bodytype(wearer)]) //Teshari can finally into webbing, too! + mob_overlay = image("icon" = sprite_sheets[wearer.species.get_bodytype(wearer)], "icon_state" = "[tmp_icon_state]") else mob_overlay = image("icon" = INV_ACCESSORIES_DEF_ICON, "icon_state" = "[tmp_icon_state]") return mob_overlay diff --git a/html/changelogs/Nerezza - FinallyInto.yml b/html/changelogs/Nerezza - FinallyInto.yml new file mode 100644 index 0000000000..c7f2631907 --- /dev/null +++ b/html/changelogs/Nerezza - FinallyInto.yml @@ -0,0 +1,37 @@ +################################ +# 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 +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Nerezza + +# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - bugfix: "Teshari wearing webbing now have the correct sprite overlay. More accessories need sprites, however." + - wip: "Teshari sprites no longer show the majority of suit accessories, anyone who wants to pitch in to fix this are invited to do so!" From 8e9416d03e86496133d8df8d92f9d8a1952265bb Mon Sep 17 00:00:00 2001 From: Anewbe Date: Sat, 19 Nov 2016 14:31:57 -0600 Subject: [PATCH 07/22] Drawing blood takes time --- .../reagents/reagent_containers/syringes.dm | 4 +++ html/changelogs/Anewbe - BloodDraw.yml | 36 +++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 html/changelogs/Anewbe - BloodDraw.yml diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 4bf97175d1..fc2f05cb98 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -105,8 +105,12 @@ if(H.species && !H.should_have_organ(O_HEART)) H.reagents.trans_to_obj(src, amount) else + if(!do_mob(user, target, time)) + return B = T.take_blood(src, amount) else + if(!do_mob(user, target, time)) + return B = T.take_blood(src,amount) if (B) diff --git a/html/changelogs/Anewbe - BloodDraw.yml b/html/changelogs/Anewbe - BloodDraw.yml new file mode 100644 index 0000000000..a5b5a55436 --- /dev/null +++ b/html/changelogs/Anewbe - BloodDraw.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 +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Anewbe + +# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - tweak: "Drawing blood with a syringe now takes a moment." \ No newline at end of file From 9bda9333769621f77a32e5a9c2d4c65b7f97e6df Mon Sep 17 00:00:00 2001 From: Nerezza Date: Sat, 19 Nov 2016 15:52:11 -0600 Subject: [PATCH 08/22] Makes jumpsuits hide under space suits under right conditions. Mostly noticeable on tesh wearing voidsuits, bulky jumpsuits were overlayed by the voidsuit making them 'peek' around the latter's icons. Now, spacesuits in general will outright hide jumpsuits with exception only to rigsuits. Yeah I'm looking at you rescue suit, you and your ****ed up icons =3= --- code/game/gamemodes/cult/cult_items.dm | 1 + .../clothing/spacesuits/miscellaneous.dm | 3 +- .../mob/living/carbon/human/update_icons.dm | 9 +++-- html/changelogs/Nerezza - bulkyjumpsuits.yml | 36 +++++++++++++++++++ 4 files changed, 43 insertions(+), 6 deletions(-) create mode 100644 html/changelogs/Nerezza - bulkyjumpsuits.yml diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm index ac3e5c3d61..f463c9bd0f 100644 --- a/code/game/gamemodes/cult/cult_items.dm +++ b/code/game/gamemodes/cult/cult_items.dm @@ -110,6 +110,7 @@ slowdown = 1 armor = list(melee = 60, bullet = 50, laser = 30, energy = 15, bomb = 30, bio = 30, rad = 30) siemens_coefficient = 0 + flags_inv = HIDEGLOVES|HIDEJUMPSUIT|HIDETAIL|HIDETIE|HIDEHOLSTER body_parts_covered = UPPER_TORSO|LOWER_TORSO|LEGS|ARMS|HANDS /obj/item/clothing/suit/space/cult/cultify() diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index c3c30ae381..f4b7101b82 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -76,7 +76,7 @@ body_parts_covered = 0 siemens_coefficient = 0.9 -/obj/item/clothing/suit/space/pirate +/obj/item/clothing/suit/space/pirate //Whhhhyyyyyyy??? name = "pirate coat" desc = "Yarr." icon_state = "pirate" @@ -85,6 +85,7 @@ slowdown = 0 armor = list(melee = 60, bullet = 50, laser = 30,energy = 15, bomb = 30, bio = 30, rad = 30) siemens_coefficient = 0.9 + flags_inv = HIDETAIL|HIDEHOLSTER body_parts_covered = UPPER_TORSO|ARMS //Orange emergency space suit diff --git a/code/modules/mob/living/carbon/human/update_icons.dm b/code/modules/mob/living/carbon/human/update_icons.dm index 11eaf182da..5010b66cbc 100644 --- a/code/modules/mob/living/carbon/human/update_icons.dm +++ b/code/modules/mob/living/carbon/human/update_icons.dm @@ -470,7 +470,7 @@ var/global/list/damage_icon_parts = list() //vvvvvv UPDATE_INV PROCS vvvvvv /mob/living/carbon/human/update_inv_w_uniform(var/update_icons=1) - if(w_uniform && istype(w_uniform, /obj/item/clothing/under) ) + if( (w_uniform && istype(w_uniform, /obj/item/clothing/under)) && !(wear_suit && istype(wear_suit, /obj/item/clothing/suit/space) && wear_suit.flags_inv & HIDEJUMPSUIT && !istype(wear_suit, /obj/item/clothing/suit/space/rig) )) w_uniform.screen_loc = ui_iclothing //determine the icon to use @@ -793,16 +793,15 @@ var/global/list/damage_icon_parts = list() standing.overlays |= A.get_mob_overlay() overlays_standing[SUIT_LAYER] = standing - update_tail_showing(0) else overlays_standing[SUIT_LAYER] = null - update_tail_showing(0) + //Hide/show other layers if necessary update_collar(0) - - //hide/show shoes if necessary + update_inv_w_uniform(0) update_inv_shoes(0) + update_tail_showing(0) if(update_icons) update_icons() diff --git a/html/changelogs/Nerezza - bulkyjumpsuits.yml b/html/changelogs/Nerezza - bulkyjumpsuits.yml new file mode 100644 index 0000000000..9a0372053c --- /dev/null +++ b/html/changelogs/Nerezza - bulkyjumpsuits.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 +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Nerezza + +# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - tweak: "Space suits now hide jumpsuits, so excessively bulky jumpsuits no longer peek through." From 6530f098d42f1004144df2e6388dc0b0a77abede Mon Sep 17 00:00:00 2001 From: Anewbe Date: Sat, 19 Nov 2016 16:41:26 -0600 Subject: [PATCH 09/22] No timer on self --- code/modules/reagents/reagent_containers/syringes.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index fc2f05cb98..308cbe4514 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -105,8 +105,9 @@ if(H.species && !H.should_have_organ(O_HEART)) H.reagents.trans_to_obj(src, amount) else - if(!do_mob(user, target, time)) - return + if(ismob(H) && H != user) + if(!do_mob(user, target, time)) + return B = T.take_blood(src, amount) else if(!do_mob(user, target, time)) From b28878d00280496500862607a5839c5052b97136 Mon Sep 17 00:00:00 2001 From: Techhead Date: Sat, 19 Nov 2016 17:46:59 -0500 Subject: [PATCH 10/22] Prevents null breaths from rupturing lungs. For example, if the human mob is in crit. --- code/modules/mob/living/carbon/human/life.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 2ffc6a882d..ec3721b78a 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -343,7 +343,7 @@ else adjustOxyLoss(HUMAN_CRIT_MAX_OXYLOSS) - if(should_have_organ(O_LUNGS)) + if(breath && should_have_organ(O_LUNGS)) var/obj/item/organ/internal/lungs/L = internal_organs_by_name[O_LUNGS] if(!L.is_bruised() && prob(8)) rupture_lung() From 903a2ca5f7bdb209213cf318363580afd8cfb11f Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 20 Nov 2016 00:11:53 +0000 Subject: [PATCH 11/22] Adds bolt pistols that can be taken in exchange for a random internal organ in character setup --- html/changelog.html | 18 +++++++++ html/changelogs/.all_changelog.yml | 14 +++++++ html/changelogs/Datraen-SupermatterRadio.yml | 5 --- .../Nerezza - DebrainsDronBrains.yml | 37 ------------------- html/changelogs/Nerezza - RoboBuckle.yml | 36 ------------------ html/changelogs/Nerezza - statusdate.yml | 36 ------------------ html/changelogs/Yoshax-THEPLANTS.yml | 36 ------------------ 7 files changed, 32 insertions(+), 150 deletions(-) delete mode 100644 html/changelogs/Datraen-SupermatterRadio.yml delete mode 100644 html/changelogs/Nerezza - DebrainsDronBrains.yml delete mode 100644 html/changelogs/Nerezza - RoboBuckle.yml delete mode 100644 html/changelogs/Nerezza - statusdate.yml delete mode 100644 html/changelogs/Yoshax-THEPLANTS.yml diff --git a/html/changelog.html b/html/changelog.html index a5f0b2ec39..ecabd6edf5 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -53,6 +53,24 @@ -->
+

20 November 2016

+

Datraen updated:

+
    +
  • Global announcer now has access to engineering channel.
  • +
  • Supermatter now uses the global announcer.
  • +
+

Nerezza updated:

+
    +
  • Digital FBP/Cyborg brains no longer drop brains.
  • +
  • Digital FBP/Cyborg brains are tagged with their designation now.
  • +
  • All cyborgs can now unbuckle people from beds/chairs. Just attack the structure with no module selected.
  • +
  • Added the current station date to the Status tab. Ported from Baystation.
  • +
+

Yoshax updated:

+
    +
  • Adds the ability for Hydroponics Trays to enter cryogenic stasis. You can do this by using a multitool on one. Wheh in stasis the plant will be frozen in time, it will neither grow nor die. Now you can have a life!
  • +
+

18 November 2016

Anewbe updated:

    diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index f1d1507807..93eb2f4bb3 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -3064,3 +3064,17 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. that scales with the amount of oxyloss you have. Without oxygen, the brain takes damage and will EVENTUALLY die (but you would most likely die of actual oxyloss before that point.) +2016-11-20: + Datraen: + - tweak: Global announcer now has access to engineering channel. + - tweak: Supermatter now uses the global announcer. + Nerezza: + - bugfix: Digital FBP/Cyborg brains no longer drop brains. + - rscadd: Digital FBP/Cyborg brains are tagged with their designation now. + - bugfix: All cyborgs can now unbuckle people from beds/chairs. Just attack the + structure with no module selected. + - rscadd: Added the current station date to the Status tab. Ported from Baystation. + Yoshax: + - rscadd: Adds the ability for Hydroponics Trays to enter cryogenic stasis. You + can do this by using a multitool on one. Wheh in stasis the plant will be frozen + in time, it will neither grow nor die. Now you can have a life! diff --git a/html/changelogs/Datraen-SupermatterRadio.yml b/html/changelogs/Datraen-SupermatterRadio.yml deleted file mode 100644 index 33a2a4a3a5..0000000000 --- a/html/changelogs/Datraen-SupermatterRadio.yml +++ /dev/null @@ -1,5 +0,0 @@ -author: Datraen -delete-after: True -changes: - - tweak: "Global announcer now has access to engineering channel." - - tweak: "Supermatter now uses the global announcer." diff --git a/html/changelogs/Nerezza - DebrainsDronBrains.yml b/html/changelogs/Nerezza - DebrainsDronBrains.yml deleted file mode 100644 index 3ad82a212d..0000000000 --- a/html/changelogs/Nerezza - DebrainsDronBrains.yml +++ /dev/null @@ -1,37 +0,0 @@ -################################ -# 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 -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Nerezza - -# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - bugfix: "Digital FBP/Cyborg brains no longer drop brains." - - rscadd: "Digital FBP/Cyborg brains are tagged with their designation now." \ No newline at end of file diff --git a/html/changelogs/Nerezza - RoboBuckle.yml b/html/changelogs/Nerezza - RoboBuckle.yml deleted file mode 100644 index c5920a0e4b..0000000000 --- a/html/changelogs/Nerezza - RoboBuckle.yml +++ /dev/null @@ -1,36 +0,0 @@ -################################ -# 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 -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Nerezza - -# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - bugfix: "All cyborgs can now unbuckle people from beds/chairs. Just attack the structure with no module selected." diff --git a/html/changelogs/Nerezza - statusdate.yml b/html/changelogs/Nerezza - statusdate.yml deleted file mode 100644 index d3ae313362..0000000000 --- a/html/changelogs/Nerezza - statusdate.yml +++ /dev/null @@ -1,36 +0,0 @@ -################################ -# 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 -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Nerezza - -# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - rscadd: "Added the current station date to the Status tab. Ported from Baystation." diff --git a/html/changelogs/Yoshax-THEPLANTS.yml b/html/changelogs/Yoshax-THEPLANTS.yml deleted file mode 100644 index 244f38abd0..0000000000 --- a/html/changelogs/Yoshax-THEPLANTS.yml +++ /dev/null @@ -1,36 +0,0 @@ -################################ -# 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 -# maptweak -# spellcheck (typo fixes) -# experiment -################################# - -# Your name. -author: Yoshax - -# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. -# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. -changes: - - rscadd: "Adds the ability for Hydroponics Trays to enter cryogenic stasis. You can do this by using a multitool on one. Wheh in stasis the plant will be frozen in time, it will neither grow nor die. Now you can have a life!" From 98c1bcb6144cc3594c04c963ae75b1940bfd4f76 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 20 Nov 2016 01:39:50 +0000 Subject: [PATCH 12/22] Allows borgs to use toggle lock on closets/crates --- code/game/objects/structures/crates_lockers/closets.dm | 2 +- .../structures/crates_lockers/closets/secure/secure_closets.dm | 2 +- code/game/objects/structures/crates_lockers/crates.dm | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 28fea14370..74746c37d0 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -317,7 +317,7 @@ if(!usr.canmove || usr.stat || usr.restrained()) return - if(ishuman(usr)) + if(ishuman(usr) || isrobot(usr)) src.add_fingerprint(usr) src.toggle(usr) else diff --git a/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm b/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm index 49fe7bbdd3..5a6962f710 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/secure_closets.dm @@ -134,7 +134,7 @@ if(!usr.canmove || usr.stat || usr.restrained()) // Don't use it if you're not able to! Checks for stuns, ghost and restrain return - if(ishuman(usr)) + if(ishuman(usr) || isrobot(usr)) src.add_fingerprint(usr) src.togglelock(usr) else diff --git a/code/game/objects/structures/crates_lockers/crates.dm b/code/game/objects/structures/crates_lockers/crates.dm index 931a990085..62a3c64e48 100644 --- a/code/game/objects/structures/crates_lockers/crates.dm +++ b/code/game/objects/structures/crates_lockers/crates.dm @@ -177,7 +177,7 @@ if(!usr.canmove || usr.stat || usr.restrained()) // Don't use it if you're not able to! Checks for stuns, ghost and restrain return - if(ishuman(usr)) + if(ishuman(usr) || isrobot(usr)) src.add_fingerprint(usr) src.togglelock(usr) else From bf298d9f94864295fca6a203c846034304b70d6a Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 20 Nov 2016 02:50:44 +0000 Subject: [PATCH 13/22] IV Drips are no longer dense --- code/game/machinery/iv_drip.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm index c0f2a284f4..e50688b7a9 100644 --- a/code/game/machinery/iv_drip.dm +++ b/code/game/machinery/iv_drip.dm @@ -2,7 +2,7 @@ name = "\improper IV drip" icon = 'icons/obj/iv_drip.dmi' anchored = 0 - density = 1 + density = 0 /obj/machinery/iv_drip/var/mob/living/carbon/human/attached = null From db9f17b39b3c96a394c9667bdf5805d064087bf0 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 20 Nov 2016 02:51:34 +0000 Subject: [PATCH 14/22] changelog --- html/changelogs/Yoshax-IVDrips.yml | 36 ++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 html/changelogs/Yoshax-IVDrips.yml diff --git a/html/changelogs/Yoshax-IVDrips.yml b/html/changelogs/Yoshax-IVDrips.yml new file mode 100644 index 0000000000..bfa7810a05 --- /dev/null +++ b/html/changelogs/Yoshax-IVDrips.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 +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Yoshax + +# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - tweak: "IV Drips are no longer dense, meaning they can be walked through like chairs." From 9822c9bbdb5137b90e666a22b0b301d6519a5831 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 20 Nov 2016 02:53:05 +0000 Subject: [PATCH 15/22] changelog --- html/changelogs/Yoshax-Robots.yml | 36 +++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 html/changelogs/Yoshax-Robots.yml diff --git a/html/changelogs/Yoshax-Robots.yml b/html/changelogs/Yoshax-Robots.yml new file mode 100644 index 0000000000..c18c6a14b5 --- /dev/null +++ b/html/changelogs/Yoshax-Robots.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 +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Yoshax + +# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - tweak: "Robots can now use the toggle lock verb on crates and lockers." From 2c6d023fc78b3f329f3f200000ea48f6ca0ff1b2 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 20 Nov 2016 17:23:50 +0000 Subject: [PATCH 16/22] Changes an attack_ai to attack_robot --- code/game/objects/structures/crates_lockers/closets.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index 74746c37d0..df4fcc83f6 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -288,8 +288,8 @@ src.add_fingerprint(user) return -/obj/structure/closet/attack_ai(mob/user) - if(istype(user, /mob/living/silicon/robot) && Adjacent(user)) // Robots can open/close it, but not the AI. +/obj/structure/closet/attack_robot(mob/user) + if(Adjacent(user)) attack_hand(user) /obj/structure/closet/relaymove(mob/user as mob) From 55c0fc86a3e7cca747e9bd04c4b2977683f2f5b0 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 20 Nov 2016 18:59:06 +0000 Subject: [PATCH 17/22] Fixes up and implements the experimental welding tool --- code/datums/supplypacks/engineering.dm | 12 ++++++++++++ code/game/jobs/job/engineering.dm | 1 + code/game/machinery/vending.dm | 2 +- .../objects/items/weapons/storage/toolbox.dm | 2 +- code/game/objects/items/weapons/tools.dm | 19 ++++++++++++------- 5 files changed, 27 insertions(+), 9 deletions(-) diff --git a/code/datums/supplypacks/engineering.dm b/code/datums/supplypacks/engineering.dm index e42b1d1794..f2920424a1 100644 --- a/code/datums/supplypacks/engineering.dm +++ b/code/datums/supplypacks/engineering.dm @@ -45,6 +45,18 @@ containertype = /obj/structure/closet/crate containername = "Mechanical maintenance crate" +/datum/supply_packs/eng/adv_welding + name = "Advanced Welding Supplies" + contains = list( + /obj/item/weapon/weldingtool/experimental = 2, + /obj/item/clothing/head/welding = 2, + /obj/item/weapon/weldpack = 2, + /obj/item/clothing/glasses/welding = 2 + ) + cost = 20 + containertype = /obj/structure/closet/crate + containername = "Advanced Welding Supplies crate + /datum/supply_packs/eng/fueltank name = "Fuel tank crate" contains = list(/obj/structure/reagent_dispensers/fueltank) diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index db9d51290f..6387e84399 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -42,6 +42,7 @@ H.equip_to_slot_or_del(new /obj/item/clothing/head/hardhat/white(H), slot_head) H.equip_to_slot_or_del(new /obj/item/weapon/storage/belt/utility/full(H), slot_belt) H.equip_to_slot_or_del(new /obj/item/clothing/gloves/black(H), slot_gloves) + H.equip_to_slot_or_del(new /obj/item/weapon/weldingtool/experimental(H), slot_r_store) return 1 equip_survival(var/mob/living/carbon/human/H) diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index ee5d9b44ea..865d2058df 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -968,7 +968,7 @@ /obj/item/device/flashlight/glowstick = 3, /obj/item/device/flashlight/glowstick/red = 3, /obj/item/device/flashlight/glowstick/blue = 3, /obj/item/device/flashlight/glowstick/orange =3, /obj/item/device/flashlight/glowstick/yellow = 3) contraband = list(/obj/item/weapon/weldingtool/hugetank = 2,/obj/item/clothing/gloves/fyellow = 2,) - premium = list(/obj/item/clothing/gloves/yellow = 1) + premium = list(/obj/item/clothing/gloves/yellow = 1, /obj/item/weapon/weldingtool/experimental = 2) /obj/machinery/vending/engivend name = "Engi-Vend" diff --git a/code/game/objects/items/weapons/storage/toolbox.dm b/code/game/objects/items/weapons/storage/toolbox.dm index 8e6e5ca682..fac5e9fb70 100644 --- a/code/game/objects/items/weapons/storage/toolbox.dm +++ b/code/game/objects/items/weapons/storage/toolbox.dm @@ -74,7 +74,7 @@ new /obj/item/clothing/gloves/yellow(src) new /obj/item/weapon/screwdriver(src) new /obj/item/weapon/wrench(src) - new /obj/item/weapon/weldingtool(src) + new /obj/item/weapon/weldingtool/experimental(src) new /obj/item/weapon/crowbar(src) new /obj/item/weapon/wirecutters(src) new /obj/item/device/multitool(src) diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index c61ee90918..c39053b5aa 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -390,16 +390,21 @@ w_class = ITEMSIZE_NORMAL origin_tech = list(TECH_ENGINEERING = 4, TECH_PHORON = 3) matter = list(DEFAULT_WALL_MATERIAL = 70, "glass" = 120) - var/last_gen = 0 + var/nextrefueltick = 0 +/obj/item/weapon/weldingtool/experimental/New() + processing_objects |= src + ..() +/obj/item/weapon/weldingtool/experimental/Destroy() + processing_objects -= src + ..() -/obj/item/weapon/weldingtool/experimental/proc/fuel_gen()//Proc to make the experimental welder generate fuel, optimized as fuck -Sieve - var/gen_amount = ((world.time-last_gen)/25) - reagents += (gen_amount) - if(reagents > max_fuel) - reagents = max_fuel - +/obj/item/weapon/weldingtool/experimental/process() + ..() + if(get_fuel() < max_fuel && nextrefueltick < world.time) + nextrefueltick = world.time + 10 + reagents.add_reagent("fuel", 1) /* * Crowbar */ From 503028a35bbccd6f5ccf73e7f0161df0c6608665 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 20 Nov 2016 19:00:29 +0000 Subject: [PATCH 18/22] Adds changelog --- code/datums/supplypacks/engineering.dm | 2 +- html/changelogs/Yoshax-Welding.yml | 36 ++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 html/changelogs/Yoshax-Welding.yml diff --git a/code/datums/supplypacks/engineering.dm b/code/datums/supplypacks/engineering.dm index f2920424a1..40a98966ab 100644 --- a/code/datums/supplypacks/engineering.dm +++ b/code/datums/supplypacks/engineering.dm @@ -55,7 +55,7 @@ ) cost = 20 containertype = /obj/structure/closet/crate - containername = "Advanced Welding Supplies crate + containername = "Advanced Welding Supplies crate" /datum/supply_packs/eng/fueltank name = "Fuel tank crate" diff --git a/html/changelogs/Yoshax-Welding.yml b/html/changelogs/Yoshax-Welding.yml new file mode 100644 index 0000000000..6ef87f5355 --- /dev/null +++ b/html/changelogs/Yoshax-Welding.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 +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Yoshax + +# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - rscadd: "There is now an experimental welding tool, it regenerates its fuel on its own! One is given to the Chief Engineer, more can be ordered from cargo in a new crate or acquired from the YouTool as a premium product." From d2ea8568a86b299fafde6fcac8b19f7b6fa489e3 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 20 Nov 2016 19:41:25 +0000 Subject: [PATCH 19/22] All robots now get crowbars, flashes and fire extinguishers --- code/modules/events/event_dynamic.dm | 8 +- .../modules/mob/living/silicon/robot/robot.dm | 2 +- .../mob/living/silicon/robot/robot_modules.dm | 145 ++++++++---------- .../mob/living/silicon/robot/syndicate.dm | 2 +- 4 files changed, 68 insertions(+), 89 deletions(-) diff --git a/code/modules/events/event_dynamic.dm b/code/modules/events/event_dynamic.dm index 99b4855d73..9f8eca869c 100644 --- a/code/modules/events/event_dynamic.dm +++ b/code/modules/events/event_dynamic.dm @@ -196,13 +196,13 @@ var/list/event_last_fired = list() if(istype(M, /mob/living/silicon/robot)) var/mob/living/silicon/robot/R = M if(R.module) - if(istype(R.module, /obj/item/weapon/robot_module/engineering)) + if(istype(R.module, /obj/item/weapon/robot_module/robot/engineering)) active_with_role["Engineer"]++ - else if(istype(R.module, /obj/item/weapon/robot_module/security)) + else if(istype(R.module, /obj/item/weapon/robot_module/robot/security)) active_with_role["Security"]++ - else if(istype(R.module, /obj/item/weapon/robot_module/medical)) + else if(istype(R.module, /obj/item/weapon/robot_module/robot/medical)) active_with_role["Medical"]++ - else if(istype(R.module, /obj/item/weapon/robot_module/research)) + else if(istype(R.module, /obj/item/weapon/robot_module/robot/research)) active_with_role["Scientist"]++ if(M.mind.assigned_role in engineering_positions) diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 2e666cff99..27a98d5d01 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -826,7 +826,7 @@ . = ..() if(module) - if(module.type == /obj/item/weapon/robot_module/janitor) + if(module.type == /obj/item/weapon/robot_module/robot/janitor) var/turf/tile = loc if(isturf(tile)) tile.clean_blood() diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 879f3f4cc5..274d0c7391 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -1,16 +1,16 @@ var/global/list/robot_modules = list( - "Standard" = /obj/item/weapon/robot_module/standard, - "Service" = /obj/item/weapon/robot_module/clerical/butler, - "Clerical" = /obj/item/weapon/robot_module/clerical/general, - "Research" = /obj/item/weapon/robot_module/research, - "Miner" = /obj/item/weapon/robot_module/miner, - "Crisis" = /obj/item/weapon/robot_module/medical/crisis, - "Surgeon" = /obj/item/weapon/robot_module/medical/surgeon, - "Security" = /obj/item/weapon/robot_module/security/general, - "Combat" = /obj/item/weapon/robot_module/security/combat, - "Engineering" = /obj/item/weapon/robot_module/engineering/general, - "Construction" = /obj/item/weapon/robot_module/engineering/construction, - "Janitor" = /obj/item/weapon/robot_module/janitor + "Standard" = /obj/item/weapon/robot_module/robot/standard, + "Service" = /obj/item/weapon/robot_module/robot/clerical/butler, + "Clerical" = /obj/item/weapon/robot_module/robot/clerical/general, + "Research" = /obj/item/weapon/robot_module/robot/research, + "Miner" = /obj/item/weapon/robot_module/robot/miner, + "Crisis" = /obj/item/weapon/robot_module/robot/medical/crisis, + "Surgeon" = /obj/item/weapon/robot_module/robot/medical/surgeon, + "Security" = /obj/item/weapon/robot_module/robot/security/general, + "Combat" = /obj/item/weapon/robot_module/robot/security/combat, + "Engineering" = /obj/item/weapon/robot_module/robot/engineering/general, + "Construction" = /obj/item/weapon/robot_module/robot/engineering/construction, + "Janitor" = /obj/item/weapon/robot_module/robot/janitor ) /obj/item/weapon/robot_module @@ -149,6 +149,13 @@ var/global/list/robot_modules = list( if(!can_be_pushed) R.status_flags |= CANPUSH +// Cyborgs (non-drones), default loadout. This will be given to every module. +/obj/item/weapon/robot_module/robot/New() + ..() + src.modules += new /obj/item/device/flash(src) + src.modules += new /obj/item/weapon/crowbar(src) + src.modules += new /obj/item/weapon/extinguisher(src) + /obj/item/weapon/robot_module/standard name = "standard robot module" sprites = list( "Basic" = "robot_old", @@ -157,24 +164,21 @@ var/global/list/robot_modules = list( "Drone" = "drone-standard" ) -/obj/item/weapon/robot_module/standard/New() - src.modules += new /obj/item/device/flash(src) +/obj/item/weapon/robot_module/robot/standard/New() + ..() src.modules += new /obj/item/weapon/melee/baton/loaded(src) - src.modules += new /obj/item/weapon/extinguisher(src) src.modules += new /obj/item/weapon/wrench(src) - src.modules += new /obj/item/weapon/crowbar(src) src.modules += new /obj/item/device/healthanalyzer(src) src.emag = new /obj/item/weapon/melee/energy/sword(src) - ..() -/obj/item/weapon/robot_module/medical +/obj/item/weapon/robot_module/robot/medical name = "medical robot module" channels = list("Medical" = 1) networks = list(NETWORK_MEDICAL) subsystems = list(/mob/living/silicon/proc/subsystem_crew_monitor) can_be_pushed = 0 -/obj/item/weapon/robot_module/medical/surgeon +/obj/item/weapon/robot_module/robot/medical/surgeon name = "surgeon robot module" sprites = list( "Basic" = "Medbot", @@ -184,8 +188,8 @@ var/global/list/robot_modules = list( "Drone" = "drone-surgery" ) -/obj/item/weapon/robot_module/medical/surgeon/New() - src.modules += new /obj/item/device/flash(src) +/obj/item/weapon/robot_module/medical/robot/surgeon/New() + ..() src.modules += new /obj/item/device/healthanalyzer(src) src.modules += new /obj/item/weapon/reagent_containers/borghypo(src) src.modules += new /obj/item/weapon/scalpel(src) @@ -198,7 +202,6 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/weapon/circular_saw(src) src.modules += new /obj/item/weapon/surgicaldrill(src) src.modules += new /obj/item/weapon/gripper/no_use/organ(src) - src.modules += new /obj/item/weapon/extinguisher/mini(src) src.emag = new /obj/item/weapon/reagent_containers/spray(src) src.emag.reagents.add_reagent("pacid", 250) src.emag.name = "Polyacid spray" @@ -217,15 +220,13 @@ var/global/list/robot_modules = list( src.modules += N src.modules += B - ..() - -/obj/item/weapon/robot_module/medical/surgeon/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) +/obj/item/weapon/robot_module/medical/robot/surgeon/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) if(src.emag) var/obj/item/weapon/reagent_containers/spray/PS = src.emag PS.reagents.add_reagent("pacid", 2 * amount) ..() -/obj/item/weapon/robot_module/medical/crisis +/obj/item/weapon/robot_module/robot/medical/crisis name = "crisis robot module" sprites = list( "Basic" = "Medbot", @@ -236,8 +237,8 @@ var/global/list/robot_modules = list( "Drone - Chemistry" = "drone-chemistry" ) -/obj/item/weapon/robot_module/medical/crisis/New() - src.modules += new /obj/item/device/flash(src) +/obj/item/weapon/robot_module/medical/robot/crisis/New() + ..() src.modules += new /obj/item/borg/sight/hud/med(src) src.modules += new /obj/item/device/healthanalyzer(src) src.modules += new /obj/item/device/reagent_scanner/adv(src) @@ -248,7 +249,6 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/weapon/reagent_containers/syringe(src) src.modules += new /obj/item/weapon/gripper/no_use/organ(src) src.modules += new /obj/item/weapon/gripper/chemistry(src) - src.modules += new /obj/item/weapon/extinguisher/mini(src) src.emag = new /obj/item/weapon/reagent_containers/spray(src) src.emag.reagents.add_reagent("pacid", 250) src.emag.name = "Polyacid spray" @@ -272,9 +272,7 @@ var/global/list/robot_modules = list( src.modules += B src.modules += S - ..() - -/obj/item/weapon/robot_module/medical/crisis/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) +/obj/item/weapon/robot_module/medical/robot/crisis/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) var/obj/item/weapon/reagent_containers/syringe/S = locate() in src.modules if(S.mode == 2) @@ -290,7 +288,7 @@ var/global/list/robot_modules = list( ..() -/obj/item/weapon/robot_module/engineering +/obj/item/weapon/robot_module/robot/engineering name = "engineering robot module" channels = list("Engineering" = 1) networks = list(NETWORK_ENGINEERING) @@ -303,18 +301,16 @@ var/global/list/robot_modules = list( "Drone" = "drone-engineer" ) -/obj/item/weapon/robot_module/engineering/construction +/obj/item/weapon/robot_module/robot/engineering/construction name = "construction robot module" no_slip = 1 /obj/item/weapon/robot_module/engineering/construction/New() - src.modules += new /obj/item/device/flash(src) + ..() src.modules += new /obj/item/borg/sight/meson(src) - src.modules += new /obj/item/weapon/extinguisher(src) src.modules += new /obj/item/weapon/rcd/borg(src) src.modules += new /obj/item/weapon/screwdriver(src) src.modules += new /obj/item/weapon/wrench(src) - src.modules += new /obj/item/weapon/crowbar(src) src.modules += new /obj/item/weapon/weldingtool/largetank(src) src.modules += new /obj/item/weapon/pickaxe/plasmacutter(src) src.modules += new /obj/item/device/pipe_painter(src) @@ -348,16 +344,12 @@ var/global/list/robot_modules = list( RG.synths = list(metal, glass) src.modules += RG +/obj/item/weapon/robot_module/robot/engineering/general/New() ..() - -/obj/item/weapon/robot_module/engineering/general/New() - src.modules += new /obj/item/device/flash(src) src.modules += new /obj/item/borg/sight/meson(src) - src.modules += new /obj/item/weapon/extinguisher(src) src.modules += new /obj/item/weapon/weldingtool/largetank(src) src.modules += new /obj/item/weapon/screwdriver(src) src.modules += new /obj/item/weapon/wrench(src) - src.modules += new /obj/item/weapon/crowbar(src) src.modules += new /obj/item/weapon/wirecutters(src) src.modules += new /obj/item/device/multitool(src) src.modules += new /obj/item/device/t_scanner(src) @@ -405,9 +397,7 @@ var/global/list/robot_modules = list( RG.synths = list(metal, glass) src.modules += RG - ..() - -/obj/item/weapon/robot_module/security +/obj/item/weapon/robot_module/robot/security name = "security robot module" channels = list("Security" = 1) networks = list(NETWORK_SECURITY) @@ -415,7 +405,7 @@ var/global/list/robot_modules = list( can_be_pushed = 0 supported_upgrades = list(/obj/item/borg/upgrade/tasercooler) -/obj/item/weapon/robot_module/security/general +/obj/item/weapon/robot_module/robot/security/general sprites = list( "Basic" = "secborg", "Red Knight" = "Security", @@ -426,7 +416,7 @@ var/global/list/robot_modules = list( ) /obj/item/weapon/robot_module/security/general/New() - src.modules += new /obj/item/device/flash(src) + ..() src.modules += new /obj/item/borg/sight/hud/sec(src) src.modules += new /obj/item/weapon/handcuffs/cyborg(src) src.modules += new /obj/item/weapon/melee/baton/robot(src) @@ -434,9 +424,8 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/taperoll/police(src) src.modules += new /obj/item/weapon/reagent_containers/spray/pepper(src) src.emag = new /obj/item/weapon/gun/energy/laser/mounted(src) - ..() -/obj/item/weapon/robot_module/security/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) +/obj/item/weapon/robot_module/robot/security/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) var/obj/item/device/flash/F = locate() in src.modules if(F.broken) F.broken = 0 @@ -454,7 +443,7 @@ var/global/list/robot_modules = list( if(B && B.bcell) B.bcell.give(amount) -/obj/item/weapon/robot_module/janitor +/obj/item/weapon/robot_module/robot/janitor name = "janitorial robot module" channels = list("Service" = 1) sprites = list( @@ -464,8 +453,8 @@ var/global/list/robot_modules = list( "Drone" = "drone-janitor" ) -/obj/item/weapon/robot_module/janitor/New() - src.modules += new /obj/item/device/flash(src) +/obj/item/weapon/robot_module/robot/janitor/New() + ..() src.modules += new /obj/item/weapon/soap/nanotrasen(src) src.modules += new /obj/item/weapon/storage/bag/trash(src) src.modules += new /obj/item/weapon/mop(src) @@ -473,16 +462,15 @@ var/global/list/robot_modules = list( src.emag = new /obj/item/weapon/reagent_containers/spray(src) src.emag.reagents.add_reagent("lube", 250) src.emag.name = "Lube spray" - ..() -/obj/item/weapon/robot_module/janitor/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) +/obj/item/weapon/robot_module/robot/janitor/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) var/obj/item/device/lightreplacer/LR = locate() in src.modules LR.Charge(R, amount) if(src.emag) var/obj/item/weapon/reagent_containers/spray/S = src.emag S.reagents.add_reagent("lube", 2 * amount) -/obj/item/weapon/robot_module/clerical +/obj/item/weapon/robot_module/robot/clerical name = "service robot module" channels = list("Service" = 1) languages = list( @@ -496,7 +484,7 @@ var/global/list/robot_modules = list( LANGUAGE_SCHECHI = 1 ) -/obj/item/weapon/robot_module/clerical/butler +/obj/item/weapon/robot_module/robot/clerical/butler sprites = list( "Waitress" = "Service", "Kent" = "toiletbot", "Bro" = "Brobot", @@ -506,8 +494,8 @@ var/global/list/robot_modules = list( "Drone - Hydro" = "drone-hydro" ) -/obj/item/weapon/robot_module/clerical/butler/New() - src.modules += new /obj/item/device/flash(src) +/obj/item/weapon/robot_module/robot/clerical/butler/New() + ..() src.modules += new /obj/item/weapon/gripper/service(src) src.modules += new /obj/item/weapon/reagent_containers/glass/bucket(src) src.modules += new /obj/item/weapon/material/minihoe(src) @@ -537,9 +525,8 @@ var/global/list/robot_modules = list( R.my_atom = src.emag R.add_reagent("beer2", 50) src.emag.name = "Mickey Finn's Special Brew" - ..() -/obj/item/weapon/robot_module/clerical/general +/obj/item/weapon/robot_module/robot/clerical/general name = "clerical robot module" sprites = list( "Waitress" = "Service", @@ -551,7 +538,7 @@ var/global/list/robot_modules = list( ) /obj/item/weapon/robot_module/clerical/general/New() - src.modules += new /obj/item/device/flash(src) + ..() src.modules += new /obj/item/weapon/pen/robopen(src) src.modules += new /obj/item/weapon/form_printer(src) src.modules += new /obj/item/weapon/gripper/paperwork(src) @@ -568,7 +555,7 @@ var/global/list/robot_modules = list( var/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer/B = src.emag B.reagents.add_reagent("beer2", 2 * amount) -/obj/item/weapon/robot_module/miner +/obj/item/weapon/robot_module/robot/miner name = "miner robot module" channels = list("Supply" = 1) networks = list(NETWORK_MINE) @@ -581,7 +568,7 @@ var/global/list/robot_modules = list( supported_upgrades = list(/obj/item/borg/upgrade/jetpack) /obj/item/weapon/robot_module/miner/New() - src.modules += new /obj/item/device/flash(src) + ..() src.modules += new /obj/item/borg/sight/material(src) src.modules += new /obj/item/weapon/wrench(src) src.modules += new /obj/item/weapon/screwdriver(src) @@ -590,11 +577,9 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/weapon/storage/bag/sheetsnatcher/borg(src) src.modules += new /obj/item/weapon/gripper/miner(src) src.modules += new /obj/item/weapon/mining_scanner(src) - src.modules += new /obj/item/weapon/crowbar(src) src.emag = new /obj/item/weapon/pickaxe/plasmacutter(src) - ..() -/obj/item/weapon/robot_module/research +/obj/item/weapon/robot_module/robot/research name = "research module" channels = list("Science" = 1) sprites = list( @@ -602,8 +587,8 @@ var/global/list/robot_modules = list( "Drone" = "drone-science" ) -/obj/item/weapon/robot_module/research/New() - src.modules += new /obj/item/device/flash(src) +/obj/item/weapon/robot_module/robot/research/New() + ..() src.modules += new /obj/item/weapon/portable_destructive_analyzer(src) src.modules += new /obj/item/weapon/gripper/research(src) src.modules += new /obj/item/weapon/gripper/no_use/organ/robotics(src) @@ -614,12 +599,10 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/weapon/weldingtool/largetank(src) src.modules += new /obj/item/weapon/screwdriver(src) src.modules += new /obj/item/weapon/wrench(src) - src.modules += new /obj/item/weapon/crowbar(src) src.modules += new /obj/item/weapon/wirecutters(src) src.modules += new /obj/item/device/multitool(src) src.modules += new /obj/item/weapon/scalpel(src) src.modules += new /obj/item/weapon/circular_saw(src) - src.modules += new /obj/item/weapon/extinguisher/mini(src) src.modules += new /obj/item/weapon/reagent_containers/syringe(src) src.modules += new /obj/item/weapon/reagent_containers/glass/beaker/large(src) src.emag = new /obj/item/weapon/hand_tele(src) @@ -639,9 +622,7 @@ var/global/list/robot_modules = list( C.synths = list(wire) src.modules += C - ..() - -/obj/item/weapon/robot_module/syndicate +/obj/item/weapon/robot_module/robot/syndicate name = "illegal robot module" hide_on_manifest = 1 languages = list( @@ -659,9 +640,9 @@ var/global/list/robot_modules = list( ) var/id -/obj/item/weapon/robot_module/syndicate/New(var/mob/living/silicon/robot/R) +/obj/item/weapon/robot_module/robot/syndicate/New(var/mob/living/silicon/robot/R) + ..() loc = R - src.modules += new /obj/item/device/flash(src) src.modules += new /obj/item/weapon/melee/energy/sword(src) src.modules += new /obj/item/weapon/gun/energy/pulse_rifle/destroyer(src) src.modules += new /obj/item/weapon/card/emag(src) @@ -671,19 +652,19 @@ var/global/list/robot_modules = list( id = R.idcard src.modules += id - ..() -/obj/item/weapon/robot_module/syndicate/Destroy() +/obj/item/weapon/robot_module/robot/syndicate/Destroy() src.modules -= id id = null return ..() -/obj/item/weapon/robot_module/security/combat +/obj/item/weapon/robot_module/robot/security/combat name = "combat robot module" hide_on_manifest = 1 sprites = list("Combat Android" = "droid-combat") -/obj/item/weapon/robot_module/security/combat/New() +/obj/item/weapon/robot_module/robot/security/combat/New() + ..() src.modules += new /obj/item/device/flash(src) src.modules += new /obj/item/borg/sight/thermal(src) src.modules += new /obj/item/weapon/gun/energy/laser/mounted(src) @@ -691,7 +672,6 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/borg/combat/shield(src) src.modules += new /obj/item/borg/combat/mobility(src) src.emag = new /obj/item/weapon/gun/energy/lasercannon/mounted(src) - ..() /obj/item/weapon/robot_module/drone name = "drone module" @@ -700,6 +680,7 @@ var/global/list/robot_modules = list( networks = list(NETWORK_ENGINEERING) /obj/item/weapon/robot_module/drone/New(var/mob/living/silicon/robot/robot) + ..() src.modules += new /obj/item/weapon/weldingtool(src) src.modules += new /obj/item/weapon/screwdriver(src) src.modules += new /obj/item/weapon/wrench(src) @@ -774,8 +755,6 @@ var/global/list/robot_modules = list( P.synths = list(plastic) src.modules += P - ..() - /obj/item/weapon/robot_module/drone/construction name = "construction drone module" hide_on_manifest = 1 @@ -783,8 +762,8 @@ var/global/list/robot_modules = list( languages = list() /obj/item/weapon/robot_module/drone/construction/New() - src.modules += new /obj/item/weapon/rcd/borg(src) ..() + src.modules += new /obj/item/weapon/rcd/borg(src) /obj/item/weapon/robot_module/drone/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) var/obj/item/device/lightreplacer/LR = locate() in src.modules diff --git a/code/modules/mob/living/silicon/robot/syndicate.dm b/code/modules/mob/living/silicon/robot/syndicate.dm index af46cd6fcf..acd441171b 100644 --- a/code/modules/mob/living/silicon/robot/syndicate.dm +++ b/code/modules/mob/living/silicon/robot/syndicate.dm @@ -20,7 +20,7 @@ laws = new /datum/ai_laws/syndicate_override overlays.Cut() init_id() - new /obj/item/weapon/robot_module/syndicate(src) + new /obj/item/weapon/robot_module/robot/syndicate(src) radio.keyslot = new /obj/item/device/encryptionkey/syndicate(radio) radio.recalculateChannels() From af68191c2470f46fccee9415835a1ee1dbfeb808 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 20 Nov 2016 19:41:32 +0000 Subject: [PATCH 20/22] Changelog --- html/changelogs/Yoshax-BotsBotsBots.yml | 36 +++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 html/changelogs/Yoshax-BotsBotsBots.yml diff --git a/html/changelogs/Yoshax-BotsBotsBots.yml b/html/changelogs/Yoshax-BotsBotsBots.yml new file mode 100644 index 0000000000..c78e0e9445 --- /dev/null +++ b/html/changelogs/Yoshax-BotsBotsBots.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 +# maptweak +# spellcheck (typo fixes) +# experiment +################################# + +# Your name. +author: Yoshax + +# 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, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. +# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. +changes: + - tweak: "All robots now get crowbars, flashes and fire extinguishers." From f4bf14c4e6e72d3753dfe1cd5196cfe2f23e52b9 Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 20 Nov 2016 20:01:28 +0000 Subject: [PATCH 21/22] cleans up some missed stuff --- code/modules/mob/living/silicon/robot/emote.dm | 4 ++-- .../mob/living/silicon/robot/robot_modules.dm | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/code/modules/mob/living/silicon/robot/emote.dm b/code/modules/mob/living/silicon/robot/emote.dm index 7f2102a860..36a7e4511d 100644 --- a/code/modules/mob/living/silicon/robot/emote.dm +++ b/code/modules/mob/living/silicon/robot/emote.dm @@ -220,7 +220,7 @@ m_type = 1 if("law") - if (istype(module,/obj/item/weapon/robot_module/security)) + if (istype(module,/obj/item/weapon/robot_module/robot/security)) message = "shows its legal authorization barcode." playsound(src.loc, 'sound/voice/biamthelaw.ogg', 50, 0) @@ -229,7 +229,7 @@ src << "You are not THE LAW, pal." if("halt") - if (istype(module,/obj/item/weapon/robot_module/security)) + if (istype(module,/obj/item/weapon/robot_module/robot/security)) message = "[src]'s speakers skreech, \"Halt! Security!\"." playsound(src.loc, 'sound/voice/halt.ogg', 50, 0) diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 274d0c7391..45af995df8 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -156,7 +156,7 @@ var/global/list/robot_modules = list( src.modules += new /obj/item/weapon/crowbar(src) src.modules += new /obj/item/weapon/extinguisher(src) -/obj/item/weapon/robot_module/standard +/obj/item/weapon/robot_module/robot/standard name = "standard robot module" sprites = list( "Basic" = "robot_old", "Android" = "droid", @@ -188,7 +188,7 @@ var/global/list/robot_modules = list( "Drone" = "drone-surgery" ) -/obj/item/weapon/robot_module/medical/robot/surgeon/New() +/obj/item/weapon/robot_module/robot/medical/surgeon/New() ..() src.modules += new /obj/item/device/healthanalyzer(src) src.modules += new /obj/item/weapon/reagent_containers/borghypo(src) @@ -237,7 +237,7 @@ var/global/list/robot_modules = list( "Drone - Chemistry" = "drone-chemistry" ) -/obj/item/weapon/robot_module/medical/robot/crisis/New() +/obj/item/weapon/robot_module/robot/medical/crisis/New() ..() src.modules += new /obj/item/borg/sight/hud/med(src) src.modules += new /obj/item/device/healthanalyzer(src) @@ -272,7 +272,7 @@ var/global/list/robot_modules = list( src.modules += B src.modules += S -/obj/item/weapon/robot_module/medical/robot/crisis/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) +/obj/item/weapon/robot_module/robot/medical/crisis/respawn_consumable(var/mob/living/silicon/robot/R, var/amount) var/obj/item/weapon/reagent_containers/syringe/S = locate() in src.modules if(S.mode == 2) @@ -305,7 +305,7 @@ var/global/list/robot_modules = list( name = "construction robot module" no_slip = 1 -/obj/item/weapon/robot_module/engineering/construction/New() +/obj/item/weapon/robot_module/robot/engineering/construction/New() ..() src.modules += new /obj/item/borg/sight/meson(src) src.modules += new /obj/item/weapon/rcd/borg(src) @@ -415,7 +415,7 @@ var/global/list/robot_modules = list( "Drone" = "drone-sec" ) -/obj/item/weapon/robot_module/security/general/New() +/obj/item/weapon/robot_module/robot/security/general/New() ..() src.modules += new /obj/item/borg/sight/hud/sec(src) src.modules += new /obj/item/weapon/handcuffs/cyborg(src) @@ -537,7 +537,7 @@ var/global/list/robot_modules = list( "Drone" = "drone-service" ) -/obj/item/weapon/robot_module/clerical/general/New() +/obj/item/weapon/robot_module/robot/clerical/general/New() ..() src.modules += new /obj/item/weapon/pen/robopen(src) src.modules += new /obj/item/weapon/form_printer(src) @@ -567,7 +567,7 @@ var/global/list/robot_modules = list( ) supported_upgrades = list(/obj/item/borg/upgrade/jetpack) -/obj/item/weapon/robot_module/miner/New() +/obj/item/weapon/robot_module/robot/miner/New() ..() src.modules += new /obj/item/borg/sight/material(src) src.modules += new /obj/item/weapon/wrench(src) From 804c67fc004c15ff500374df9e6530d015f67ffb Mon Sep 17 00:00:00 2001 From: Yoshax Date: Sun, 20 Nov 2016 20:30:19 +0000 Subject: [PATCH 22/22] Removes crate, removes from vending, changes changelog --- code/datums/supplypacks/engineering.dm | 12 ------------ code/game/machinery/vending.dm | 2 +- code/modules/research/designs.dm | 9 +++++++++ html/changelogs/Yoshax-Welding.yml | 2 +- 4 files changed, 11 insertions(+), 14 deletions(-) diff --git a/code/datums/supplypacks/engineering.dm b/code/datums/supplypacks/engineering.dm index 40a98966ab..e42b1d1794 100644 --- a/code/datums/supplypacks/engineering.dm +++ b/code/datums/supplypacks/engineering.dm @@ -45,18 +45,6 @@ containertype = /obj/structure/closet/crate containername = "Mechanical maintenance crate" -/datum/supply_packs/eng/adv_welding - name = "Advanced Welding Supplies" - contains = list( - /obj/item/weapon/weldingtool/experimental = 2, - /obj/item/clothing/head/welding = 2, - /obj/item/weapon/weldpack = 2, - /obj/item/clothing/glasses/welding = 2 - ) - cost = 20 - containertype = /obj/structure/closet/crate - containername = "Advanced Welding Supplies crate" - /datum/supply_packs/eng/fueltank name = "Fuel tank crate" contains = list(/obj/structure/reagent_dispensers/fueltank) diff --git a/code/game/machinery/vending.dm b/code/game/machinery/vending.dm index 865d2058df..ee5d9b44ea 100644 --- a/code/game/machinery/vending.dm +++ b/code/game/machinery/vending.dm @@ -968,7 +968,7 @@ /obj/item/device/flashlight/glowstick = 3, /obj/item/device/flashlight/glowstick/red = 3, /obj/item/device/flashlight/glowstick/blue = 3, /obj/item/device/flashlight/glowstick/orange =3, /obj/item/device/flashlight/glowstick/yellow = 3) contraband = list(/obj/item/weapon/weldingtool/hugetank = 2,/obj/item/clothing/gloves/fyellow = 2,) - premium = list(/obj/item/clothing/gloves/yellow = 1, /obj/item/weapon/weldingtool/experimental = 2) + premium = list(/obj/item/clothing/gloves/yellow = 1) /obj/machinery/vending/engivend name = "Engi-Vend" diff --git a/code/modules/research/designs.dm b/code/modules/research/designs.dm index 1c72024342..38f3022c9c 100644 --- a/code/modules/research/designs.dm +++ b/code/modules/research/designs.dm @@ -349,6 +349,7 @@ other types of metals and chemistry for reagents). materials = list(DEFAULT_WALL_MATERIAL = 3000, "glass" = 1000, "diamond" = 2000) build_path = /obj/item/weapon/pickaxe/diamonddrill sort_string = "KAAAE" + /////////////////////////////////// /////////Shield Generators///////// /////////////////////////////////// @@ -731,6 +732,14 @@ other types of metals and chemistry for reagents). build_path = /obj/item/weapon/storage/box/syndie_kit/chameleon sort_string = "VASBA" +/datum/design/item/experimental_welder + name = "Expiermental Welding Tool" + desc = "A welding tool that generate fuel for itself." + id = "expwelder" + req_tech = list(TECH_ENGINEERING = 4, TECH_PHORON = 3, TECH_MATERIAL = 4) + materials = list(DEFAULT_WALL_MATERIAL = 70, "glass" = 120, "phoron" = 100) + build_path = /obj/item/weapon/weldingtool/experimental + sort_string = "VASCA" /* CIRCUITS BELOW */ diff --git a/html/changelogs/Yoshax-Welding.yml b/html/changelogs/Yoshax-Welding.yml index 6ef87f5355..c81949c2eb 100644 --- a/html/changelogs/Yoshax-Welding.yml +++ b/html/changelogs/Yoshax-Welding.yml @@ -33,4 +33,4 @@ delete-after: True # Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries. # Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog. changes: - - rscadd: "There is now an experimental welding tool, it regenerates its fuel on its own! One is given to the Chief Engineer, more can be ordered from cargo in a new crate or acquired from the YouTool as a premium product." + - rscadd: "There is now an experimental welding tool, it regenerates its fuel on its own! One is given to the Chief Engineer, produced in Research, or found in Syndicate toolboxes."