From d61bbe807d3aa16e7c43a7541cbf31ead45e57f8 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Sun, 17 Mar 2019 21:30:10 -0400 Subject: [PATCH 001/108] [Goonchem] Pills, Bottles, Patches, and Pillbottles --- code/game/objects/items/weapons/dice.dm | 1 + .../objects/items/weapons/storage/boxes.dm | 14 ++ .../objects/items/weapons/storage/firstaid.dm | 77 ++++++---- .../crates_lockers/closets/secure/medical.dm | 4 + code/modules/client/asset_cache.dm | 2 +- .../chemistry/machinery/chem_master.dm | 131 ++++++++++-------- .../reagents/reagent_containers/pill.dm | 2 +- nano/templates/chem_master.tmpl | 4 +- 8 files changed, 143 insertions(+), 92 deletions(-) diff --git a/code/game/objects/items/weapons/dice.dm b/code/game/objects/items/weapons/dice.dm index d93ebcf3214..666c14801d8 100644 --- a/code/game/objects/items/weapons/dice.dm +++ b/code/game/objects/items/weapons/dice.dm @@ -3,6 +3,7 @@ desc = "Contains all the luck you'll ever need." icon = 'icons/obj/dice.dmi' icon_state = "dicebag" + can_hold = list(/obj/item/dice) /obj/item/storage/pill_bottle/dice/New() ..() diff --git a/code/game/objects/items/weapons/storage/boxes.dm b/code/game/objects/items/weapons/storage/boxes.dm index 5a5d1c5ba63..afe4bc1ce13 100644 --- a/code/game/objects/items/weapons/storage/boxes.dm +++ b/code/game/objects/items/weapons/storage/boxes.dm @@ -773,6 +773,20 @@ new /obj/item/storage/pill_bottle( src ) new /obj/item/storage/pill_bottle( src ) +/obj/item/storage/box/patch_packs + name = "box of patch packs" + desc = "It has pictures of patch packs on its front." + +/obj/item/storage/box/patch_packs/New() + ..() + new /obj/item/storage/pill_bottle/patch_pack(src) + new /obj/item/storage/pill_bottle/patch_pack(src) + new /obj/item/storage/pill_bottle/patch_pack(src) + new /obj/item/storage/pill_bottle/patch_pack(src) + new /obj/item/storage/pill_bottle/patch_pack(src) + new /obj/item/storage/pill_bottle/patch_pack(src) + new /obj/item/storage/pill_bottle/patch_pack(src) + /obj/item/storage/box/bodybags name = "body bags" desc = "This box contains body bags." diff --git a/code/game/objects/items/weapons/storage/firstaid.dm b/code/game/objects/items/weapons/storage/firstaid.dm index 66f7e9b9492..3d920c3395c 100644 --- a/code/game/objects/items/weapons/storage/firstaid.dm +++ b/code/game/objects/items/weapons/storage/firstaid.dm @@ -234,6 +234,7 @@ /* * Pill Bottles */ + /obj/item/storage/pill_bottle name = "pill bottle" desc = "It's an airtight container for storing medication." @@ -241,18 +242,38 @@ icon = 'icons/obj/chemical.dmi' item_state = "contsolid" w_class = WEIGHT_CLASS_SMALL - can_hold = list(/obj/item/reagent_containers/food/pill, /obj/item/dice, /obj/item/paper) - allow_quick_gather = 1 - use_to_pickup = 1 - storage_slots = 14 - display_contents_with_number = 1 + can_hold = list(/obj/item/reagent_containers/food/pill) + cant_hold = list(/obj/item/reagent_containers/food/pill/patch) + allow_quick_gather = TRUE + use_to_pickup = TRUE + storage_slots = 50 + max_combined_w_class = 50 + display_contents_with_number = TRUE var/base_name = "" var/label_text = "" + var/applying_meds = FALSE //To Prevent spam clicking and generating runtimes from apply a deleting pill multiple times. + var/rapid_intake_message = "unscrews the cap on the pill bottle and begins dumping the entire contents down their throat!" + var/rapid_post_instake_message = "downs the entire bottle of pills in one go!" /obj/item/storage/pill_bottle/New() ..() base_name = name +/obj/item/storage/pill_bottle/attack(mob/M, mob/user) + if(iscarbon(M) && contents.len) + if(applying_meds) + to_chat(user, "You are already applying meds.") + return + applying_meds = TRUE + for(var/obj/item/reagent_containers/food/pill/P in contents) + if(P.attack(M, user)) + applying_meds = FALSE + else + applying_meds = FALSE + break + else + return ..() + /obj/item/storage/pill_bottle/ert/New() ..() new /obj/item/reagent_containers/food/pill/salicylic(src) @@ -262,27 +283,21 @@ new /obj/item/reagent_containers/food/pill/charcoal(src) new /obj/item/reagent_containers/food/pill/charcoal(src) -/obj/item/storage/pill_bottle/MouseDrop(obj/over_object as obj) //Quick pillbottle fix. -Agouri - if(ishuman(usr)) //Can monkeys even place items in the pocket slots? Leaving this in just in case~ - var/mob/M = usr - if(!( istype(over_object, /obj/screen) )) - return ..() - if((!( M.restrained() ) && !( M.stat ) /*&& M.pocket == src*/)) - switch(over_object.name) - if("r_hand") - M.unEquip(src) - M.put_in_r_hand(src) - if("l_hand") - M.unEquip(src) - M.put_in_l_hand(src) - src.add_fingerprint(usr) - return - if(over_object == usr && in_range(src, usr) || usr.contents.Find(src)) - if(usr.s_active) - usr.s_active.close(usr) - src.show_to(usr) - return - return +/obj/item/storage/pill_bottle/MouseDrop(obj/over_object as obj) // Best utilized if you're a cantankerous doctor with a Vicodin habit. + if(iscarbon(over_object)) + var/mob/living/carbon/C = over_object + if(loc == C && src == C.get_active_hand()) + if(!contents.len) + to_chat(C, "There is nothing in [src]!") + return + C.visible_message("[C] [rapid_intake_message]") + if(do_mob(C, C, 100)) // 10 seconds + for(var/obj/item/reagent_containers/food/pill/P in contents) + P.attack(C, C) + C.visible_message("[C] [rapid_post_instake_message]") + return + + return ..() /obj/item/storage/pill_bottle/attackby(var/obj/item/I, mob/user as mob, params) if(istype(I, /obj/item/pen) || istype(I, /obj/item/flashlight/pen)) @@ -294,7 +309,7 @@ label_text = tmp_label update_name_label() else - ..() + return ..() /obj/item/storage/pill_bottle/proc/update_name_label() if(label_text == "") @@ -302,6 +317,14 @@ else name = "[base_name] ([label_text])" +/obj/item/storage/pill_bottle/patch_pack + name = "Patch Pack" + icon_state = "solid" + can_hold = list(/obj/item/reagent_containers/food/pill/patch) + cant_hold = list() + rapid_intake_message = "flips the lid of the Patch Pack open and begins rapidly stamping patches on themselves!" + rapid_post_instake_message = "stamps the entire contents of the Patch Pack all over their entire body!" + /obj/item/storage/pill_bottle/charcoal name = "Pill bottle (Charcoal)" desc = "Contains pills used to counter toxins." diff --git a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm index 551a8b30d9d..d0fdebebe9a 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm @@ -13,6 +13,8 @@ ..() new /obj/item/storage/box/autoinjectors(src) new /obj/item/storage/box/syringes(src) + new /obj/item/storage/box/pillbottles(src) + new /obj/item/storage/box/patch_packs(src) new /obj/item/reagent_containers/dropper(src) new /obj/item/reagent_containers/dropper(src) new /obj/item/reagent_containers/glass/beaker(src) @@ -216,6 +218,8 @@ ..() new /obj/item/storage/box/pillbottles(src) new /obj/item/storage/box/pillbottles(src) + new /obj/item/storage/box/patch_packs(src) + new /obj/item/storage/box/patch_packs(src) /obj/structure/closet/secure_closet/medical_wall diff --git a/code/modules/client/asset_cache.dm b/code/modules/client/asset_cache.dm index 0c3fed01011..300443714ab 100644 --- a/code/modules/client/asset_cache.dm +++ b/code/modules/client/asset_cache.dm @@ -294,7 +294,7 @@ You can set verify to TRUE if you want send() to sleep until the client has the /datum/asset/chem_master/register() for(var/i = 1 to 20) assets["pill[i].png"] = icon('icons/obj/chemical.dmi', "pill[i]") - for(var/i in list("bottle", "small_bottle", "wide_bottle", "round_bottle")) + for(var/i in list("bottle", "small_bottle", "wide_bottle", "round_bottle", "reagent_bottle")) assets["[i].png"] = icon('icons/obj/chemical.dmi', "[i]") for(var/asset_name in assets) register_asset(asset_name, assets[asset_name]) diff --git a/code/modules/reagents/chemistry/machinery/chem_master.dm b/code/modules/reagents/chemistry/machinery/chem_master.dm index 2bd9f6d4af8..707ead485ff 100644 --- a/code/modules/reagents/chemistry/machinery/chem_master.dm +++ b/code/modules/reagents/chemistry/machinery/chem_master.dm @@ -1,7 +1,7 @@ /obj/machinery/chem_master name = "\improper ChemMaster 3000" - density = 1 - anchored = 1 + density = TRUE + anchored = TRUE icon = 'icons/obj/chemical.dmi' icon_state = "mixer0" use_power = IDLE_POWER_USE @@ -9,28 +9,27 @@ var/obj/item/reagent_containers/beaker = null var/obj/item/storage/pill_bottle/loaded_pill_bottle = null var/mode = 0 - var/condi = 0 + var/condi = FALSE var/useramount = 30 // Last used amount var/pillamount = 10 var/patchamount = 10 var/bottlesprite = "bottle" var/pillsprite = "1" var/client/has_sprites = list() - var/printing = null + var/printing = FALSE /obj/machinery/chem_master/New() + ..() create_reagents(100) update_icon() /obj/machinery/chem_master/ex_act(severity) switch(severity) - if(1.0) + if(1) qdel(src) - return - if(2.0) + if(2) if(prob(50)) qdel(src) - return /obj/machinery/chem_master/update_icon() overlays.Cut() @@ -50,43 +49,43 @@ stat |= NOPOWER update_icon() -/obj/machinery/chem_master/attackby(obj/item/B, mob/user, params) - if(default_unfasten_wrench(user, B)) +/obj/machinery/chem_master/attackby(obj/item/I, mob/user, params) + if(default_unfasten_wrench(user, I)) power_change() return - if(istype(B, /obj/item/reagent_containers/glass) || istype(B, /obj/item/reagent_containers/food/drinks/drinkingglass)) - + if(istype(I, /obj/item/reagent_containers/glass) || istype(I, /obj/item/reagent_containers/food/drinks/drinkingglass)) if(beaker) to_chat(user, "A beaker is already loaded into the machine.") return if(!user.drop_item()) - to_chat(user, "[B] is stuck to you!") + to_chat(user, "[I] is stuck to you!") return - beaker = B - B.forceMove(src) + beaker = I + I.forceMove(src) to_chat(user, "You add the beaker to the machine!") SSnanoui.update_uis(src) update_icon() - else if(istype(B, /obj/item/storage/pill_bottle)) - + else if(istype(I, /obj/item/storage/pill_bottle)) if(loaded_pill_bottle) - to_chat(user, "A pill bottle is already loaded into the machine.") + to_chat(user, "A [loaded_pill_bottle] is already loaded into the machine.") return if(!user.drop_item()) - to_chat(user, "[B] is stuck to you!") + to_chat(user, "[I] is stuck to you!") return - loaded_pill_bottle = B - B.forceMove(src) - to_chat(user, "You add the pill bottle into the dispenser slot!") + + loaded_pill_bottle = I + I.forceMove(src) + to_chat(user, "You add [I] into the dispenser slot!") SSnanoui.update_uis(src) - return + else + return ..() /obj/machinery/chem_master/Topic(href, href_list) if(..()) - return 1 + return TRUE add_fingerprint(usr) usr.set_machine(src) @@ -103,8 +102,8 @@ return if(href_list["print_p"]) - if(!(printing)) - printing = 1 + if(!printing) + printing = TRUE visible_message("[src] rattles and prints out a sheet of paper.") playsound(loc, 'sound/goonstation/machines/printer_dotmatrix.ogg', 50, 1) var/obj/item/paper/P = new /obj/item/paper(loc) @@ -125,7 +124,7 @@ P.info += "Description: [href_list["desc"]]" P.info += "

Notes:
" P.name = "Chemical Analysis - [href_list["name"]]" - printing = null + printing = FALSE if(beaker) var/datum/reagents/R = beaker.reagents @@ -203,10 +202,13 @@ if(count == null) return count = isgoodnumber(count) - if(count > 20) count = 20 //Pevent people from creating huge stacks of pills easily. Maybe move the number to defines? - if(count <= 0) return - var/amount_per_pill = reagents.total_volume/count - if(amount_per_pill > 50) amount_per_pill = 50 + if(count > 20) + count = 20 //Pevent people from creating huge stacks of pills easily. Maybe move the number to defines? + if(count <= 0) + return + var/amount_per_pill = reagents.total_volume / count + if(amount_per_pill > 100) + amount_per_pill = 100 var/name = input(usr,"Name:","Name your pill!","[reagents.get_master_reagent_name()] ([amount_per_pill]u)") as text|null if(!name) return @@ -216,18 +218,19 @@ to_chat(usr, "Not enough reagents to create these pills!") return var/obj/item/reagent_containers/food/pill/P = new/obj/item/reagent_containers/food/pill(loc) - if(!name) name = reagents.get_master_reagent_name() + if(!name) + name = reagents.get_master_reagent_name() P.name = "[name] pill" P.pixel_x = rand(-7, 7) //random position P.pixel_y = rand(-7, 7) P.icon_state = "pill"+pillsprite - reagents.trans_to(P,amount_per_pill) - if(loaded_pill_bottle) + reagents.trans_to(P, amount_per_pill) + if(loaded_pill_bottle && loaded_pill_bottle.type == /obj/item/storage/pill_bottle) if(loaded_pill_bottle.contents.len < loaded_pill_bottle.storage_slots) P.forceMove(loaded_pill_bottle) updateUsrDialog() else - var/name = input(usr,"Name:","Name your bag!",reagents.get_master_reagent_name()) as text|null + var/name = input(usr, "Name:", "Name your bag!", reagents.get_master_reagent_name()) as text|null if(!name) return name = reject_bad_text(name) @@ -236,7 +239,7 @@ P.originalname = name P.name = "[name] pack" P.desc = "A small condiment pack. The label says it contains [name]." - reagents.trans_to(P,10) + reagents.trans_to(P, 10) else if(href_list["createpatch"] || href_list["createpatch_multiple"]) if(!condi) var/count = 1 @@ -247,10 +250,12 @@ count = isgoodnumber(count) if(!count || count <= 0) return - if(count > 20) count = 20 //Pevent people from creating huge stacks of patches easily. Maybe move the number to defines? + if(count > 20) + count = 20 //Pevent people from creating huge stacks of patches easily. Maybe move the number to defines? var/amount_per_patch = reagents.total_volume/count - if(amount_per_patch > 40) amount_per_patch = 40 - var/name = input(usr,"Name:","Name your patch!","[reagents.get_master_reagent_name()] ([amount_per_patch]u)") as text|null + if(amount_per_patch > 40) + amount_per_patch = 40 + var/name = input(usr, "Name:", "Name your patch!", "[reagents.get_master_reagent_name()] ([amount_per_patch]u)") as text|null if(!name) return name = reject_bad_text(name) @@ -263,24 +268,30 @@ P.pixel_y = rand(-7, 7) reagents.trans_to(P,amount_per_patch) if(is_medical_patch) - P.instant_application = 1 + P.instant_application = TRUE P.icon_state = "bandaid_med" + if(loaded_pill_bottle && loaded_pill_bottle.type == /obj/item/storage/pill_bottle/patch_pack) + if(loaded_pill_bottle.contents.len < loaded_pill_bottle.storage_slots) + P.forceMove(loaded_pill_bottle) + updateUsrDialog() + else if(href_list["createbottle"]) if(!condi) - var/name = input(usr,"Name:","Name your bottle!",reagents.get_master_reagent_name()) as text|null + var/name = input(usr, "Name:", "Name your bottle!", reagents.get_master_reagent_name()) as text|null if(!name) return name = reject_bad_text(name) - var/obj/item/reagent_containers/glass/bottle/P = new/obj/item/reagent_containers/glass/bottle(loc) - if(!name) name = reagents.get_master_reagent_name() + var/obj/item/reagent_containers/glass/bottle/reagent/P = new/obj/item/reagent_containers/glass/bottle/reagent(loc) + if(!name) + name = reagents.get_master_reagent_name() P.name = "[name] bottle" P.pixel_x = rand(-7, 7) //random position P.pixel_y = rand(-7, 7) P.icon_state = bottlesprite - reagents.trans_to(P,30) + reagents.trans_to(P, 50) else var/obj/item/reagent_containers/food/condiment/P = new/obj/item/reagent_containers/food/condiment(loc) - reagents.trans_to(P,50) + reagents.trans_to(P, 50) else if(href_list["change_pill"]) #define MAX_PILL_SPRITE 20 //max icon state of the pill sprites var/dat = "" @@ -299,7 +310,7 @@ else if(href_list["change_bottle"]) var/dat = "
" var/j = 0 - for(var/i in list("bottle", "small_bottle", "wide_bottle", "round_bottle")) + for(var/i in list("bottle", "small_bottle", "wide_bottle", "round_bottle", "reagent_bottle")) j++ if(j == 1) dat += "" @@ -318,7 +329,6 @@ usr << browse(null, "window=chem_master_iconsel") SSnanoui.update_uis(src) - return /obj/machinery/chem_master/attack_ai(mob/user) return attack_hand(user) @@ -328,11 +338,10 @@ /obj/machinery/chem_master/attack_hand(mob/user) if(..()) - return 1 + return TRUE ui_interact(user) - return -/obj/machinery/chem_master/ui_interact(mob/user, ui_key = "main", datum/nanoui/ui = null, force_open = 1) +/obj/machinery/chem_master/ui_interact(mob/user, ui_key = "main", datum/nanoui/ui = null, force_open = TRUE) var/datum/asset/chem_master/assets = get_asset_datum(/datum/asset/chem_master) assets.send(user) @@ -380,15 +389,15 @@ return 0 /obj/machinery/chem_master/proc/chemical_safety_check(datum/reagents/R) - var/all_safe = 1 + var/all_safe = TRUE for(var/datum/reagent/A in R.reagent_list) if(!GLOB.safe_chem_list.Find(A.id)) - all_safe = 0 + all_safe = FALSE return all_safe /obj/machinery/chem_master/condimaster name = "\improper CondiMaster 3000" - condi = 1 + condi = TRUE /obj/machinery/chem_master/constructable name = "ChemMaster 2999" @@ -403,9 +412,9 @@ component_parts += new /obj/item/reagent_containers/glass/beaker(null) component_parts += new /obj/item/reagent_containers/glass/beaker(null) -/obj/machinery/chem_master/constructable/attackby(obj/item/B, mob/user, params) +/obj/machinery/chem_master/constructable/attackby(obj/item/I, mob/user, params) - if(default_deconstruction_screwdriver(user, "mixer0_nopower", "mixer0", B)) + if(default_deconstruction_screwdriver(user, "mixer0_nopower", "mixer0", I)) if(beaker) beaker.forceMove(get_turf(src)) beaker = null @@ -415,15 +424,15 @@ loaded_pill_bottle = null return - if(exchange_parts(user, B)) + if(exchange_parts(user, I)) return if(panel_open) - if(istype(B, /obj/item/crowbar)) - default_deconstruction_crowbar(B) - return 1 + if(iscrowbar(I)) + default_deconstruction_crowbar(I) + return TRUE else to_chat(user, "You can't use the [name] while it's panel is opened!") - return 1 + return TRUE else - ..() + return ..() diff --git a/code/modules/reagents/reagent_containers/pill.dm b/code/modules/reagents/reagent_containers/pill.dm index 71b0532650b..78e65c82591 100644 --- a/code/modules/reagents/reagent_containers/pill.dm +++ b/code/modules/reagents/reagent_containers/pill.dm @@ -8,7 +8,7 @@ icon_state = null item_state = "pill" possible_transfer_amounts = null - volume = 50 + volume = 100 consume_sound = null taste = FALSE diff --git a/nano/templates/chem_master.tmpl b/nano/templates/chem_master.tmpl index 1ccfcadfe70..385237727db 100644 --- a/nano/templates/chem_master.tmpl +++ b/nano/templates/chem_master.tmpl @@ -42,7 +42,7 @@
- {{:helper.link('Create pill (50u max)', 'arrow-right', {'createpill': 1})}} + {{:helper.link('Create pill (100u max)', 'arrow-right', {'createpill': 1})}} {{:helper.link('Multiple', 'arrow-right', {'createpill_multiple': 1})}} @@ -64,7 +64,7 @@
- {{:helper.link('Create bottle (30u max)', 'arrow-right', {'createbottle': 1})}} + {{:helper.link('Create bottle (50u max)', 'arrow-right', {'createbottle': 1})}} {{:helper.link('Style', 'pencil', {'change_bottle': 1})}} From d8fce5bcdb2ae037a7335c3bcf9e9b3b39483737 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Sun, 17 Mar 2019 23:31:53 -0400 Subject: [PATCH 002/108] don't map things in when you can add them to the code --- _maps/map_files/cyberiad/cyberiad.dmm | 2 -- .../objects/structures/crates_lockers/closets/secure/medical.dm | 1 + 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm index ac402732149..332a6341d2f 100644 --- a/_maps/map_files/cyberiad/cyberiad.dmm +++ b/_maps/map_files/cyberiad/cyberiad.dmm @@ -49566,11 +49566,9 @@ pixel_y = 0; step_size = 0 }, -/obj/item/storage/box/pillbottles, /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 }, -/obj/item/storage/box/iv_bags, /turf/simulated/floor/plasteel{ tag = "icon-whitebluefull"; icon_state = "whitebluefull" diff --git a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm index d0fdebebe9a..9cbd43bf098 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/medical.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/medical.dm @@ -15,6 +15,7 @@ new /obj/item/storage/box/syringes(src) new /obj/item/storage/box/pillbottles(src) new /obj/item/storage/box/patch_packs(src) + new /obj/item/storage/box/iv_bags(src) new /obj/item/reagent_containers/dropper(src) new /obj/item/reagent_containers/dropper(src) new /obj/item/reagent_containers/glass/beaker(src) From c5f5fef912204169d7b0cfdb2b3a505821c8752b Mon Sep 17 00:00:00 2001 From: AffectedArc07 Date: Mon, 18 Mar 2019 17:28:01 +0000 Subject: [PATCH 003/108] Alphabetical prefs --- code/__DEFINES/role_preferences.dm | 53 ++++++++++--------- code/modules/client/preference/preferences.dm | 46 ++++++++-------- 2 files changed, 49 insertions(+), 50 deletions(-) diff --git a/code/__DEFINES/role_preferences.dm b/code/__DEFINES/role_preferences.dm index 7eaf300277a..65372fed1c8 100644 --- a/code/__DEFINES/role_preferences.dm +++ b/code/__DEFINES/role_preferences.dm @@ -48,32 +48,33 @@ //The gamemode specific ones are just so the gamemodes can query whether a player is old enough //(in game days played) to play that role var/global/list/special_roles = list( - ROLE_TRAITOR = /datum/game_mode/traitor, - ROLE_OPERATIVE = /datum/game_mode/nuclear, - ROLE_CHANGELING = /datum/game_mode/changeling, - ROLE_WIZARD = /datum/game_mode/wizard, - ROLE_REV = /datum/game_mode/revolution, - ROLE_ALIEN, - ROLE_PAI, - ROLE_CULTIST = /datum/game_mode/cult, - ROLE_BLOB = /datum/game_mode/blob, - ROLE_NINJA, -// ROLE_MONKEY = /datum/game_mode/monkey, Sooner or later these are going to get ported -// ROLE_GANG = /datum/game_mode/gang, - ROLE_SHADOWLING = /datum/game_mode/shadowling, - ROLE_ABDUCTOR = /datum/game_mode/abduction, + ROLE_ABDUCTOR = /datum/game_mode/abduction, // Abductor + ROLE_BLOB = /datum/game_mode/blob, // Blob + ROLE_CHANGELING = /datum/game_mode/changeling, // Changeling + ROLE_BORER, // Cortical borer + ROLE_CULTIST = /datum/game_mode/cult, // Cultist + ROLE_DEVIL = /datum/game_mode/devil/devil_agents, // Devil + ROLE_GSPIDER, // Giant spider + ROLE_GUARDIAN, // Guardian + ROLE_MORPH, // Morph + ROLE_OPERATIVE = /datum/game_mode/nuclear, // Operative + ROLE_PAI, // PAI + ROLE_POSIBRAIN, // Positronic brain + ROLE_REVENANT, // Revenant + ROLE_REV = /datum/game_mode/revolution, // Revolutionary + ROLE_SENTIENT, // Sentient animal + ROLE_SHADOWLING = /datum/game_mode/shadowling, // Shadowling + ROLE_DEMON, // Slaguther demon + ROLE_NINJA, // Space ninja + ROLE_TRADER, // Trader + ROLE_TRAITOR = /datum/game_mode/traitor, // Traitor + ROLE_VAMPIRE = /datum/game_mode/vampire, // Vampire + ROLE_RAIDER = /datum/game_mode/heist, // Vox raider + ROLE_ALIEN, // Xenomorph + ROLE_WIZARD = /datum/game_mode/wizard, // Wizard + // UNUSED/BROKEN ANTAGS // ROLE_HOG_GOD = /datum/game_mode/hand_of_god, // ROLE_HOG_CULTIST = /datum/game_mode/hand_of_god, - ROLE_RAIDER = /datum/game_mode/heist, - ROLE_VAMPIRE = /datum/game_mode/vampire, - ROLE_BORER, - ROLE_DEMON, - ROLE_SENTIENT, - ROLE_POSIBRAIN, - ROLE_REVENANT, - ROLE_GUARDIAN, - ROLE_MORPH, - ROLE_TRADER, - ROLE_GSPIDER, - ROLE_DEVIL = /datum/game_mode/devil/devil_agents, +// ROLE_MONKEY = /datum/game_mode/monkey, Sooner or later these are going to get ported +// ROLE_GANG = /datum/game_mode/gang, ) diff --git a/code/modules/client/preference/preferences.dm b/code/modules/client/preference/preferences.dm index 0a09f4504bb..caf98b866cc 100644 --- a/code/modules/client/preference/preferences.dm +++ b/code/modules/client/preference/preferences.dm @@ -435,37 +435,35 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts dat += "
" if(TAB_GAME) // General Preferences + // LEFT SIDE OF THE PAGE dat += "
" dat += "

General Settings

" - dat += "Fancy NanoUI: [(nanoui_fancy) ? "Yes" : "No"]
" - dat += "Ghost-Item Attack Animation: [(show_ghostitem_attack) ? "Yes" : "No"]
" - dat += "Window Flashing: [(windowflashing) ? "Yes" : "No"]
" - dat += "Custom UI settings:
" - dat += " - UI Style: [UI_style]
" - dat += " - Color: [UI_style_color]
__

" - dat += " - Alpha (transparency): [UI_style_alpha]
" - dat += "
" - dat += "Play admin midis: [(sound & SOUND_MIDI) ? "Yes" : "No"]
" - dat += "Play lobby music: [(sound & SOUND_LOBBY) ? "Yes" : "No"]
" + dat += "Attack Animations: [(show_ghostitem_attack) ? "Yes" : "No"]
" if(user.client.holder) - dat += "Adminhelp sound: " - dat += "[(sound & SOUND_ADMINHELP)?"On":"Off"]
" - - if(check_rights(R_ADMIN,0)) - dat += "OOC:     Change
" - if(config.allow_Metadata) - dat += "OOC notes: Edit
" + dat += "Adminhelp sound: [(sound & SOUND_ADMINHELP)?"On":"Off"]
" if(unlock_content) dat += "BYOND Membership Publicity: [(toggles & MEMBER_PUBLIC) ? "Public" : "Hidden"]
" + dat += "Custom UI settings:
" + dat += " - Alpha (transparency): [UI_style_alpha]
" + dat += " - Color: [UI_style_color]    
" + dat += " - UI Style: [UI_style]
" + dat += "Deadchat Anonymity: [ghost_anonsay ? "Anonymous" : "Not Anonymous"]
" if(user.client.donator_level >= DONATOR_LEVEL_ONE) dat += "Donator Publicity: [(toggles & DONATOR_PUBLIC) ? "Public" : "Hidden"]
" - - dat += "Randomized character slot: [randomslot ? "Yes" : "No"]
" - dat += "Ghost ears: [(toggles & CHAT_GHOSTEARS) ? "All Speech" : "Nearest Creatures"]
" - dat += "Ghost sight: [(toggles & CHAT_GHOSTSIGHT) ? "All Emotes" : "Nearest Creatures"]
" - dat += "Ghost radio: [(toggles & CHAT_GHOSTRADIO) ? "All Chatter" : "Nearest Speakers"]
" - dat += "Deadchat anonymity: [ghost_anonsay ? "Anonymous" : "Not Anonymous"]
" + dat += "Fancy NanoUI: [(nanoui_fancy) ? "Yes" : "No"]
" dat += "FPS: [clientfps]
" + dat += "Ghost Ears: [(toggles & CHAT_GHOSTEARS) ? "All Speech" : "Nearest Creatures"]
" + dat += "Ghost Sight: [(toggles & CHAT_GHOSTSIGHT) ? "All Emotes" : "Nearest Creatures"]
" + dat += "Ghost Radio: [(toggles & CHAT_GHOSTRADIO) ? "All Chatter" : "Nearest Speakers"]
" + if(check_rights(R_ADMIN,0)) + dat += "OOC Color:     Change
" + if(config.allow_Metadata) + dat += "OOC Notes: Edit
" + dat += "Play Admin MIDIs: [(sound & SOUND_MIDI) ? "Yes" : "No"]
" + dat += "Play Lobby Music: [(sound & SOUND_LOBBY) ? "Yes" : "No"]
" + dat += "Randomized Character Slot: [randomslot ? "Yes" : "No"]
" + dat += "Window Flashing: [(windowflashing) ? "Yes" : "No"]
" + // RIGHT SIDE OF THE PAGE dat += "
" dat += "

Special Role Settings

" if(jobban_isbanned(user, "Syndicate")) @@ -554,7 +552,7 @@ var/global/list/special_role_times = list( //minimum age (in days) for accounts dat += "Reset Setup" dat += "" - var/datum/browser/popup = new(user, "preferences", "
Character Setup
", 820, 640) + var/datum/browser/popup = new(user, "preferences", "
Character Setup
", 820, 660) popup.set_content(dat) popup.open(0) From 29aa1ccef700e4460a2006d40a4b50603c885bcd Mon Sep 17 00:00:00 2001 From: AzuleUtama <44248086+AzuleUtama@users.noreply.github.com> Date: Mon, 18 Mar 2019 20:22:38 +0000 Subject: [PATCH 004/108] Removed MMI from surgery bag, made it Roboticist only --- code/datums/uplink_item.dm | 13 +++++++++++-- code/game/objects/items/weapons/storage/backpack.dm | 1 - 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/code/datums/uplink_item.dm b/code/datums/uplink_item.dm index a22bdd371a6..e421028f71a 100644 --- a/code/datums/uplink_item.dm +++ b/code/datums/uplink_item.dm @@ -351,6 +351,15 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) cost = 12 job = list("Research Director") +//Roboticist + name = "Syndicate MMI" + desc = "A syndicate developed man-machine-interface which will make any cyborg it is inserted into follow the standard syndicate lawset." + reference = "SMMI" + item = /obj/item/mmi/syndie + cost = 2 + job = list("Roboticist") + surplus = 0 + //Librarian /datum/uplink_item/jobspecific/etwenty name = "The E20" @@ -1160,10 +1169,10 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) /datum/uplink_item/device_tools/surgerybag name = "Syndicate Surgery Duffelbag" - desc = "The Syndicate surgery duffelbag is a toolkit containing all surgery tools, a straitjacket, and a muzzle." + desc = "The Syndicate surgery duffelbag comes with a full set of surgery tools, a straightjacket and a muzzle. The bag itself is also made of very light materials and won't slow you down while it is equipped." reference = "SSDB" item = /obj/item/storage/backpack/duffel/syndie/surgery - cost = 4 + cost = 2 /datum/uplink_item/device_tools/bonerepair name = "Prototype Bone Repair Kit" diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index 2d06c0fde80..8df4b17251d 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -367,7 +367,6 @@ new /obj/item/FixOVein(src) new /obj/item/clothing/suit/straight_jacket(src) new /obj/item/clothing/mask/muzzle(src) - new /obj/item/mmi/syndie(src) /obj/item/storage/backpack/duffel/syndie/surgery_fake //for maint spawns name = "surgery duffelbag" From 277722508aac4807bbeef93b2f7a320c1e123282 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Mon, 18 Mar 2019 20:06:15 -0400 Subject: [PATCH 005/108] [Goonchem] Reagent Temperature --- code/LINDA/LINDA_fire.dm | 4 ++ code/__HELPERS/unsorted.dm | 4 +- code/_onclick/item_attack.dm | 4 +- code/game/atoms.dm | 5 ++- code/game/gamemodes/blob/blobs/blob_mobs.dm | 2 +- code/game/gamemodes/blob/blobs/core.dm | 2 +- code/game/gamemodes/blob/blobs/node.dm | 2 +- code/game/gamemodes/blob/blobs/shield.dm | 10 ++--- code/game/gamemodes/blob/theblob.dm | 2 +- code/game/gamemodes/wizard/artefact.dm | 2 +- code/game/machinery/atmoalter/canister.dm | 1 + code/game/machinery/doors/airlock_types.dm | 1 + code/game/machinery/doors/windowdoor.dm | 2 +- code/game/machinery/firealarm.dm | 1 + code/game/mecha/mecha.dm | 1 + .../objects/effects/decals/Cleanable/misc.dm | 3 +- code/game/objects/effects/decals/cleanable.dm | 15 +------- .../effects/effect_system/effects_foam.dm | 5 ++- code/game/objects/effects/effects.dm | 3 -- code/game/objects/effects/glowshroom.dm | 1 + code/game/objects/effects/snowcloud.dm | 6 ++- code/game/objects/effects/spiders.dm | 1 + code/game/objects/items/candle.dm | 3 +- .../objects/items/devices/taperecorder.dm | 5 ++- code/game/objects/items/flag.dm | 2 +- code/game/objects/items/latexballoon.dm | 2 +- .../objects/items/stacks/sheets/mineral.dm | 3 +- code/game/objects/items/toys.dm | 5 ++- code/game/objects/items/weapons/cigs.dm | 3 +- code/game/objects/items/weapons/lighters.dm | 3 +- code/game/objects/obj_defense.dm | 7 ++-- code/game/objects/structures/aliens.dm | 2 + code/game/objects/structures/bedsheet_bin.dm | 2 +- code/game/objects/structures/false_walls.dm | 1 + code/game/objects/structures/girders.dm | 1 + code/game/objects/structures/grille.dm | 2 +- code/game/objects/structures/mineral_doors.dm | 1 + code/game/objects/structures/statues.dm | 4 +- code/game/objects/structures/window.dm | 2 +- code/game/turfs/simulated/floor/mineral.dm | 1 + code/game/turfs/simulated/walls_mineral.dm | 1 + code/modules/events/spacevine.dm | 1 + code/modules/food_and_drinks/drinks/drinks.dm | 11 ------ .../drinks/drinks/drinkingglass.dm | 2 +- .../drinks/drinks/shotglass.dm | 2 +- code/modules/hydroponics/grown/misc.dm | 3 +- code/modules/hydroponics/grown/towercap.dm | 3 +- code/modules/mining/ore.dm | 2 +- .../living/carbon/alien/special/facehugger.dm | 2 +- code/modules/mob/living/living_defense.dm | 3 +- code/modules/mob/living/silicon/robot/life.dm | 2 +- code/modules/paperwork/paper.dm | 2 +- code/modules/paperwork/paperbin.dm | 2 +- code/modules/power/lighting.dm | 1 + code/modules/reagents/chem_splash.dm | 3 +- code/modules/reagents/chemistry/holder.dm | 35 ++++++++++++++--- .../chemistry/machinery/chem_heater.dm | 38 +++++++------------ code/modules/reagents/chemistry/reagents.dm | 3 ++ .../chemistry/reagents/pyrotechnic.dm | 10 +++-- .../reagents/chemistry/recipes/drinks.dm | 4 +- .../reagents/chemistry/recipes/drugs.dm | 8 ++-- .../reagents/chemistry/recipes/food.dm | 10 ++--- .../reagents/chemistry/recipes/medicine.dm | 10 ++--- .../reagents/chemistry/recipes/others.dm | 20 +++++----- .../chemistry/recipes/pyrotechnics.dm | 14 +++---- .../reagents/chemistry/recipes/toxins.dm | 12 +++--- code/modules/reagents/reagent_containers.dm | 5 --- .../reagent_containers/glass_containers.dm | 10 +---- code/modules/reagents/reagent_dispenser.dm | 3 +- 69 files changed, 182 insertions(+), 166 deletions(-) diff --git a/code/LINDA/LINDA_fire.dm b/code/LINDA/LINDA_fire.dm index ada5e6a9e5f..13e20785d33 100644 --- a/code/LINDA/LINDA_fire.dm +++ b/code/LINDA/LINDA_fire.dm @@ -1,5 +1,7 @@ /atom/proc/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + if(reagents) + reagents.temperature_reagents(exposed_temperature) return null @@ -10,6 +12,8 @@ /turf/simulated/hotspot_expose(exposed_temperature, exposed_volume, soh) var/datum/gas_mixture/air_contents = return_air() + if(reagents) + reagents.temperature_reagents(exposed_temperature, 10, 300) if(!air_contents) return 0 if(active_hotspot) diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index d9039e8c004..a22c4cf3f99 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -1165,7 +1165,7 @@ var/global/list/common_tools = list( if(istype(W, /obj/item/weldingtool)) var/obj/item/weldingtool/O = W if(O.isOn()) - return 3800 + return 2500 else return 0 if(istype(W, /obj/item/lighter)) @@ -1207,7 +1207,7 @@ var/global/list/common_tools = list( else return 0 if(istype(W, /obj/item/assembly/igniter)) - return 1000 + return 20000 else return 0 diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index 76ef6bf5031..d47bc134774 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -123,7 +123,9 @@ // Proximity_flag is 1 if this afterattack was called on something adjacent, in your square, or on your person. // Click parameters is the params string from byond Click() code, see that documentation. /obj/item/proc/afterattack(atom/target, mob/user, proximity_flag, click_parameters) - return + if(is_hot(src) && target.reagents && !ismob(target) && proximity_flag) + to_chat(user, "You heat [target].") + target.reagents.temperature_reagents(is_hot(src)) /obj/item/proc/get_clamped_volume() if(w_class) diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 58197cbadf1..91132a5f9bd 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -311,8 +311,9 @@ /atom/proc/blob_act(obj/structure/blob/B) SEND_SIGNAL(src, COMSIG_ATOM_BLOB_ACT, B) -/atom/proc/fire_act() - return +/atom/proc/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + if(reagents) + reagents.temperature_reagents(exposed_temperature) /atom/proc/emag_act() return diff --git a/code/game/gamemodes/blob/blobs/blob_mobs.dm b/code/game/gamemodes/blob/blobs/blob_mobs.dm index e3b1d082623..8b4fae279a3 100644 --- a/code/game/gamemodes/blob/blobs/blob_mobs.dm +++ b/code/game/gamemodes/blob/blobs/blob_mobs.dm @@ -46,7 +46,7 @@ pressure_resistance = 100 //100 kPa difference required to push throw_pressure_limit = 120 //120 kPa difference required to throw -/mob/living/simple_animal/hostile/blob/blobspore/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) +/mob/living/simple_animal/hostile/blob/blobspore/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) ..() adjustBruteLoss(Clamp(0.01 * exposed_temperature, 1, 5)) diff --git a/code/game/gamemodes/blob/blobs/core.dm b/code/game/gamemodes/blob/blobs/core.dm index 644383f344d..4bdc2cafddd 100644 --- a/code/game/gamemodes/blob/blobs/core.dm +++ b/code/game/gamemodes/blob/blobs/core.dm @@ -45,7 +45,7 @@ GLOB.poi_list.Remove(src) return ..() -/obj/structure/blob/core/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) +/obj/structure/blob/core/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) return /obj/structure/blob/core/update_icon() diff --git a/code/game/gamemodes/blob/blobs/node.dm b/code/game/gamemodes/blob/blobs/node.dm index 19ac320287a..32b6ce1f408 100644 --- a/code/game/gamemodes/blob/blobs/node.dm +++ b/code/game/gamemodes/blob/blobs/node.dm @@ -20,7 +20,7 @@ var/image/C = new('icons/mob/blob.dmi', "blob_node_overlay") src.overlays += C -/obj/structure/blob/node/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) +/obj/structure/blob/node/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) return /obj/structure/blob/node/Destroy() diff --git a/code/game/gamemodes/blob/blobs/shield.dm b/code/game/gamemodes/blob/blobs/shield.dm index 1fb293be2cf..696a33d94b9 100644 --- a/code/game/gamemodes/blob/blobs/shield.dm +++ b/code/game/gamemodes/blob/blobs/shield.dm @@ -3,9 +3,9 @@ icon = 'icons/mob/blob.dmi' icon_state = "blob_idle" desc = "Some blob creature thingy" - health = 75 + health = 75 fire_resist = 2 - var/maxHealth = 75 + var/maxHealth = 75 /obj/structure/blob/shield/update_icon() if(health <= 0) @@ -13,7 +13,7 @@ return return -/obj/structure/blob/shield/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) +/obj/structure/blob/shield/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) return /obj/structure/blob/shield/CanPass(atom/movable/mover, turf/target, height=0) @@ -42,11 +42,11 @@ P.setAngle(new_angle_s) P.firer = src //so people who fired the lasers are not immune to them when it reflects visible_message("[P] reflects off [src]!") - return -1// complete projectile permutation + return -1// complete projectile permutation else playsound(src, P.hitsound, 50, 1) visible_message("[src] is hit by \a [P]!") take_damage(P.damage, P.damage_type) - + /obj/structure/blob/shield/reflective/bullet_act() return diff --git a/code/game/gamemodes/blob/theblob.dm b/code/game/gamemodes/blob/theblob.dm index 7d55f2fe1c9..ba3ad1dada8 100644 --- a/code/game/gamemodes/blob/theblob.dm +++ b/code/game/gamemodes/blob/theblob.dm @@ -45,7 +45,7 @@ Life() return -/obj/structure/blob/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) +/obj/structure/blob/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) ..() var/damage = Clamp(0.01 * exposed_temperature, 0, 4) take_damage(damage, BURN) diff --git a/code/game/gamemodes/wizard/artefact.dm b/code/game/gamemodes/wizard/artefact.dm index 5ed9af46fe1..dbe3146dd7f 100644 --- a/code/game/gamemodes/wizard/artefact.dm +++ b/code/game/gamemodes/wizard/artefact.dm @@ -868,7 +868,7 @@ var/global/list/multiverse = list() var/area/A = get_area(src) to_chat(victim, "You feel a dark presence from [A.name]") -/obj/item/voodoo/fire_act() +/obj/item/voodoo/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) if(target) target.adjust_fire_stacks(20) target.IgniteMob() diff --git a/code/game/machinery/atmoalter/canister.dm b/code/game/machinery/atmoalter/canister.dm index 1be5fa5e43a..95e609ee524 100644 --- a/code/game/machinery/atmoalter/canister.dm +++ b/code/game/machinery/atmoalter/canister.dm @@ -244,6 +244,7 @@ update_flag return 0 /obj/machinery/portable_atmospherics/canister/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > temperature_resistance) health -= 5 healthcheck() diff --git a/code/game/machinery/doors/airlock_types.dm b/code/game/machinery/doors/airlock_types.dm index 53fab536afd..8e3c7f76342 100644 --- a/code/game/machinery/doors/airlock_types.dm +++ b/code/game/machinery/doors/airlock_types.dm @@ -171,6 +171,7 @@ assemblytype = /obj/structure/door_assembly/door_assembly_plasma /obj/machinery/door/airlock/plasma/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > 300) PlasmaBurn(exposed_temperature) diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index 1ab22f341b6..21ff909796f 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -205,9 +205,9 @@ qdel(src) /obj/machinery/door/window/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > T0C + (reinf ? 1600 : 800)) take_damage(round(exposed_volume / 200), BURN, 0, 0) - ..() /obj/machinery/door/window/attack_ai(mob/user) return attack_hand(user) diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm index b949028c713..f1651d5bb99 100644 --- a/code/game/machinery/firealarm.dm +++ b/code/game/machinery/firealarm.dm @@ -52,6 +52,7 @@ FIRE ALARM playsound(loc, 'sound/effects/sparks4.ogg', 50, 1) /obj/machinery/firealarm/temperature_expose(datum/gas_mixture/air, temperature, volume) + ..() if(!emagged && detecting && temperature > T0C + 200) alarm() // added check of detector status here diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index e8e4ae6027b..6cfd1d63942 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -721,6 +721,7 @@ check_for_internal_damage(list(MECHA_INT_FIRE, MECHA_INT_TEMP_CONTROL, MECHA_INT_CONTROL_LOST, MECHA_INT_SHORT_CIRCUIT), 1) /obj/mecha/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > max_temperature) log_message("Exposed to dangerous temperature.", 1) take_damage(5, "fire") diff --git a/code/game/objects/effects/decals/Cleanable/misc.dm b/code/game/objects/effects/decals/Cleanable/misc.dm index aef1999ff69..d601283a703 100644 --- a/code/game/objects/effects/decals/Cleanable/misc.dm +++ b/code/game/objects/effects/decals/Cleanable/misc.dm @@ -90,7 +90,8 @@ icon_state = "cobweb1" burntime = 1 -/obj/effect/decal/cleanable/cobweb/fire_act() +/obj/effect/decal/cleanable/cobweb/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() qdel(src) /obj/effect/decal/cleanable/molten_object diff --git a/code/game/objects/effects/decals/cleanable.dm b/code/game/objects/effects/decals/cleanable.dm index 130a50cac89..52ec24df16c 100644 --- a/code/game/objects/effects/decals/cleanable.dm +++ b/code/game/objects/effects/decals/cleanable.dm @@ -35,22 +35,9 @@ if(!reagents.total_volume && !noclear) //scooped up all of it qdel(src) return - if(is_hot(W)) //todo: make heating a reagent holder proc - if(istype(W, /obj/item/clothing/mask/cigarette)) - return - else - src.reagents.chem_temp += 15 - src.reagents.handle_reactions() - to_chat(user, "You heat [src] with [W]!") /obj/effect/decal/cleanable/ex_act() if(reagents) for(var/datum/reagent/R in reagents.reagent_list) R.on_ex_act() - ..() - -/obj/effect/decal/cleanable/fire_act() - if(reagents) - reagents.chem_temp += 30 - reagents.handle_reactions() - ..() + ..() \ No newline at end of file diff --git a/code/game/objects/effects/effect_system/effects_foam.dm b/code/game/objects/effects/effect_system/effects_foam.dm index e765e59442d..4b07d2a2a98 100644 --- a/code/game/objects/effects/effect_system/effects_foam.dm +++ b/code/game/objects/effects/effect_system/effects_foam.dm @@ -84,7 +84,10 @@ // foam disolves when heated // except metal foams -/obj/effect/particle_effect/foam/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) +/obj/effect/particle_effect/foam/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) //Don't heat the reagents inside + return + +/obj/effect/particle_effect/foam/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) // overriden to prevent weird behaviors with heating reagents inside if(!metal && prob(max(0, exposed_temperature - 475))) flick("[icon_state]-disolve", src) diff --git a/code/game/objects/effects/effects.dm b/code/game/objects/effects/effects.dm index a08e7fac021..21b9759df62 100644 --- a/code/game/objects/effects/effects.dm +++ b/code/game/objects/effects/effects.dm @@ -12,8 +12,5 @@ /obj/effect/take_damage(damage_amount, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, attack_dir) return -/obj/effect/fire_act() - return - /obj/effect/attack_hulk(mob/living/carbon/human/user, does_attack_animation = FALSE) return FALSE \ No newline at end of file diff --git a/code/game/objects/effects/glowshroom.dm b/code/game/objects/effects/glowshroom.dm index 4cf5e79cc77..464d5c277fd 100644 --- a/code/game/objects/effects/glowshroom.dm +++ b/code/game/objects/effects/glowshroom.dm @@ -180,6 +180,7 @@ qdel(src) /obj/structure/glowshroom/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > 300) endurance -= 5 CheckEndurance() diff --git a/code/game/objects/effects/snowcloud.dm b/code/game/objects/effects/snowcloud.dm index a67bbd3c5f7..08a64d62f17 100644 --- a/code/game/objects/effects/snowcloud.dm +++ b/code/game/objects/effects/snowcloud.dm @@ -113,7 +113,8 @@ else return ..() -/obj/effect/snow/fire_act() +/obj/effect/snow/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() qdel(src) /obj/effect/snow/ex_act(severity) @@ -133,7 +134,8 @@ ..() qdel(src) -/obj/item/snowball/fire_act() +/obj/item/snowball/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() qdel(src) /obj/item/snowball/ex_act(severity) diff --git a/code/game/objects/effects/spiders.dm b/code/game/objects/effects/spiders.dm index 7ea087eb8cb..f0233bb0f9e 100644 --- a/code/game/objects/effects/spiders.dm +++ b/code/game/objects/effects/spiders.dm @@ -69,6 +69,7 @@ qdel(src) /obj/structure/spider/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > 300) health -= 5 healthcheck() diff --git a/code/game/objects/items/candle.dm b/code/game/objects/items/candle.dm index f4f527c1b7f..85780484264 100644 --- a/code/game/objects/items/candle.dm +++ b/code/game/objects/items/candle.dm @@ -51,7 +51,8 @@ light("[user] tilts [C] and lights [src] with it.") -/obj/item/candle/fire_act() +/obj/item/candle/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() if(!lit) light() //honk diff --git a/code/game/objects/items/devices/taperecorder.dm b/code/game/objects/items/devices/taperecorder.dm index 4eaf0e79dce..d3d0a2fe6bb 100644 --- a/code/game/objects/items/devices/taperecorder.dm +++ b/code/game/objects/items/devices/taperecorder.dm @@ -47,7 +47,7 @@ update_icon() -/obj/item/taperecorder/fire_act() +/obj/item/taperecorder/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) mytape.ruin() //Fires destroy the tape return ..() @@ -262,7 +262,8 @@ var/list/timestamp = list() var/ruined = 0 -/obj/item/tape/fire_act() +/obj/item/tape/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() ruin() /obj/item/tape/attack_self(mob/user) diff --git a/code/game/objects/items/flag.dm b/code/game/objects/items/flag.dm index 4f8abd4ac49..3ba466b7eec 100644 --- a/code/game/objects/items/flag.dm +++ b/code/game/objects/items/flag.dm @@ -21,7 +21,7 @@ user.visible_message("[user] [rolled ? "rolls up" : "unfurls"] [src].", "You [rolled ? "roll up" : "unfurl"] [src].", "You hear fabric rustling.") update_icon() -/obj/item/flag/fire_act(global_overlay = FALSE) +/obj/item/flag/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = FALSE) ..() update_icon() diff --git a/code/game/objects/items/latexballoon.dm b/code/game/objects/items/latexballoon.dm index d7585608ec7..771ccce0f6b 100644 --- a/code/game/objects/items/latexballoon.dm +++ b/code/game/objects/items/latexballoon.dm @@ -50,9 +50,9 @@ burst() /obj/item/latexballon/temperature_expose(datum/gas_mixture/air, temperature, volume) + ..() if(temperature > T0C+100) burst() - return /obj/item/latexballon/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/tank)) diff --git a/code/game/objects/items/stacks/sheets/mineral.dm b/code/game/objects/items/stacks/sheets/mineral.dm index 615882021b4..c7a27b5650e 100644 --- a/code/game/objects/items/stacks/sheets/mineral.dm +++ b/code/game/objects/items/stacks/sheets/mineral.dm @@ -179,7 +179,8 @@ var/global/list/datum/stack_recipe/adamantine_recipes = list( else return ..() -/obj/item/stack/sheet/mineral/plasma/fire_act() +/obj/item/stack/sheet/mineral/plasma/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() atmos_spawn_air(SPAWN_HEAT | SPAWN_TOXINS, amount*10) qdel(src) diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index b4405a9fbe5..67fcacbe91a 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -275,7 +275,8 @@ playsound(src, 'sound/effects/snap.ogg', 50, 1) qdel(src) -/obj/item/toy/snappop/fire_act() +/obj/item/toy/snappop/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() pop_burst() /obj/item/toy/snappop/throw_impact(atom/hit_atom) @@ -1689,5 +1690,5 @@ obj/item/toy/cards/deck/syndicate/black /obj/item/restraints/handcuffs/toy desc = "Toy handcuffs. Plastic and extremely cheaply made." throwforce = 0 - breakouttime = 0 + breakouttime = 0 ignoresClumsy = TRUE \ No newline at end of file diff --git a/code/game/objects/items/weapons/cigs.dm b/code/game/objects/items/weapons/cigs.dm index bfe91b5a81b..1378b5c004d 100644 --- a/code/game/objects/items/weapons/cigs.dm +++ b/code/game/objects/items/weapons/cigs.dm @@ -61,7 +61,8 @@ LIGHTERS ARE IN LIGHTERS.DM return ..() -/obj/item/clothing/mask/cigarette/fire_act() +/obj/item/clothing/mask/cigarette/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() light() /obj/item/clothing/mask/cigarette/attackby(obj/item/W as obj, mob/user as mob, params) diff --git a/code/game/objects/items/weapons/lighters.dm b/code/game/objects/items/weapons/lighters.dm index 0b348510b8e..a2d8b03da84 100644 --- a/code/game/objects/items/weapons/lighters.dm +++ b/code/game/objects/items/weapons/lighters.dm @@ -166,7 +166,8 @@ location.hotspot_expose(700, 5) return -/obj/item/match/fire_act() +/obj/item/match/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() matchignite() /obj/item/match/proc/matchignite() diff --git a/code/game/objects/obj_defense.dm b/code/game/objects/obj_defense.dm index 3ab8de69f7f..246fc5df75d 100644 --- a/code/game/objects/obj_defense.dm +++ b/code/game/objects/obj_defense.dm @@ -93,7 +93,7 @@ /obj/move_crushed(atom/movable/pusher, force = MOVE_FORCE_DEFAULT, direction) collision_damage(pusher, force, direction) return TRUE - + /obj/proc/collision_damage(atom/movable/pusher, force = MOVE_FORCE_DEFAULT, direction) var/amt = max(0, ((force - (move_resist * MOVE_FORCE_CRUSH_RATIO)) / (move_resist * MOVE_FORCE_CRUSH_RATIO)) * 10) take_damage(amt, BRUTE) @@ -163,14 +163,15 @@ //// FIRE -/obj/fire_act(global_overlay=1) +/obj/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() if(!burn_state) burn_state = ON_FIRE SSfires.processing[src] = src burn_world_time = world.time + burntime*rand(10,20) if(global_overlay) overlays += fire_overlay - return 1 + return TRUE /obj/proc/burn() empty_object_contents(1, loc) diff --git a/code/game/objects/structures/aliens.dm b/code/game/objects/structures/aliens.dm index 1738344ae60..c6359f7246e 100644 --- a/code/game/objects/structures/aliens.dm +++ b/code/game/objects/structures/aliens.dm @@ -157,6 +157,7 @@ new /obj/structure/alien/weeds(T, linked_node) /obj/structure/alien/weeds/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > 300) take_damage(5, BURN, 0, 0) @@ -294,6 +295,7 @@ Burst(kill = TRUE) /obj/structure/alien/egg/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > 500) take_damage(5, BURN, 0, 0) diff --git a/code/game/objects/structures/bedsheet_bin.dm b/code/game/objects/structures/bedsheet_bin.dm index 61113a4864a..8c4f40a7b62 100644 --- a/code/game/objects/structures/bedsheet_bin.dm +++ b/code/game/objects/structures/bedsheet_bin.dm @@ -245,7 +245,7 @@ LINEN BINS else icon_state = "linenbin-full" -/obj/structure/bedsheetbin/fire_act() +/obj/structure/bedsheetbin/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) if(!amount) return ..() diff --git a/code/game/objects/structures/false_walls.dm b/code/game/objects/structures/false_walls.dm index 6851cd3cfc5..9b777d45b58 100644 --- a/code/game/objects/structures/false_walls.dm +++ b/code/game/objects/structures/false_walls.dm @@ -249,6 +249,7 @@ qdel(src) /obj/structure/falsewall/plasma/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > 300) burnbabyburn() diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index b46324a838c..b3468668f5a 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -48,6 +48,7 @@ qdel(src) /obj/structure/girder/temperature_expose(datum/gas_mixture/air, exposed_temperature) + ..() var/temp_check = exposed_temperature if(temp_check >= GIRDER_MELTING_TEMP) take_damage(10) diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index 8d3e178fe58..c06e5d82244 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -261,10 +261,10 @@ return 0 /obj/structure/grille/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(!broken) if(exposed_temperature > T0C + 1500) take_damage(1, BURN, 0, 0) - ..() /obj/structure/grille/hitby(atom/movable/AM) if(istype(AM, /obj)) diff --git a/code/game/objects/structures/mineral_doors.dm b/code/game/objects/structures/mineral_doors.dm index e0e9ba1b6a7..5e6e72929fe 100644 --- a/code/game/objects/structures/mineral_doors.dm +++ b/code/game/objects/structures/mineral_doors.dm @@ -229,6 +229,7 @@ return ..() /obj/structure/mineral_door/transparent/plasma/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > 300) TemperatureAct(exposed_temperature) diff --git a/code/game/objects/structures/statues.dm b/code/game/objects/structures/statues.dm index 090327d1c7f..88adc9643ba 100644 --- a/code/game/objects/structures/statues.dm +++ b/code/game/objects/structures/statues.dm @@ -169,6 +169,7 @@ icon_state = "xeno" /obj/structure/statue/plasma/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > 300) PlasmaBurn(exposed_temperature) @@ -359,7 +360,8 @@ else return ..() -/obj/structure/snowman/built/fire_act() +/obj/structure/snowman/built/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() qdel(src) diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index cf87454a97c..ad655a39b64 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -461,9 +461,9 @@ var/global/wcCommon = pick(list("#379963", "#0d8395", "#58b5c3", "#49e46e", "#8f overlays += crack_overlay /obj/structure/window/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > (T0C + heat_resistance)) take_damage(round(exposed_volume / 100), BURN, 0, 0) - ..() /obj/structure/window/GetExplosionBlock() return reinf && fulltile ? real_explosion_block : 0 diff --git a/code/game/turfs/simulated/floor/mineral.dm b/code/game/turfs/simulated/floor/mineral.dm index 38f1bdc14a1..d201a38d697 100644 --- a/code/game/turfs/simulated/floor/mineral.dm +++ b/code/game/turfs/simulated/floor/mineral.dm @@ -33,6 +33,7 @@ icons = list("plasma","plasma_dam") /turf/simulated/floor/mineral/plasma/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > 300) PlasmaBurn() diff --git a/code/game/turfs/simulated/walls_mineral.dm b/code/game/turfs/simulated/walls_mineral.dm index 3049cb552df..609e5b782c0 100644 --- a/code/game/turfs/simulated/walls_mineral.dm +++ b/code/game/turfs/simulated/walls_mineral.dm @@ -107,6 +107,7 @@ atmos_spawn_air(SPAWN_HEAT | SPAWN_TOXINS, 400) /turf/simulated/wall/mineral/plasma/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume)//Doesn't fucking work because walls don't interact with air :( + ..() if(exposed_temperature > 300) PlasmaBurn(exposed_temperature) diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm index 55e87f575b0..7d52d7cd969 100644 --- a/code/modules/events/spacevine.dm +++ b/code/modules/events/spacevine.dm @@ -684,6 +684,7 @@ wither() /obj/structure/spacevine/temperature_expose(null, temp, volume) + ..() var/override = 0 for(var/datum/spacevine_mutation/SM in mutations) override += SM.process_temperature(src, temp, volume) diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index 2c9c2480a4b..52a4a9dcd35 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -106,17 +106,6 @@ return FALSE -/obj/item/reagent_containers/food/drinks/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/clothing/mask/cigarette)) //ciggies are weird - return FALSE - if(is_hot(I)) - if(reagents) - reagents.chem_temp += 15 - to_chat(user, "You heat [src] with [I].") - reagents.handle_reactions() - else - return ..() - /obj/item/reagent_containers/food/drinks/examine(mob/user) if(!..(user, 1)) return diff --git a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm index f5bd0e8e4eb..bdc473d774e 100644 --- a/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm +++ b/code/modules/food_and_drinks/drinks/drinks/drinkingglass.dm @@ -27,7 +27,7 @@ else ..() -/obj/item/reagent_containers/food/drinks/drinkingglass/fire_act() +/obj/item/reagent_containers/food/drinks/drinkingglass/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) if(!reagents.total_volume) return ..() diff --git a/code/modules/food_and_drinks/drinks/drinks/shotglass.dm b/code/modules/food_and_drinks/drinks/drinks/shotglass.dm index 393543b093c..cd158c70e74 100644 --- a/code/modules/food_and_drinks/drinks/drinks/shotglass.dm +++ b/code/modules/food_and_drinks/drinks/drinks/shotglass.dm @@ -51,7 +51,7 @@ if(A.volume >= 5 && A.alcohol_perc >= 0.35) //Only an approximation to if something's flammable but it will do return TRUE -/obj/item/reagent_containers/food/drinks/drinkingglass/shotglass/fire_act(global_overlay = FALSE) +/obj/item/reagent_containers/food/drinks/drinkingglass/shotglass/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = FALSE) if(!isShotFlammable() || burn_state == ON_FIRE) //You can't light a shot that's not flammable! return ..() diff --git a/code/modules/hydroponics/grown/misc.dm b/code/modules/hydroponics/grown/misc.dm index 605f5082522..0d60c7d864f 100644 --- a/code/modules/hydroponics/grown/misc.dm +++ b/code/modules/hydroponics/grown/misc.dm @@ -151,5 +151,4 @@ /obj/item/reagent_containers/food/snacks/grown/cherry_bomb/proc/prime() icon_state = "cherry_bomb_lit" playsound(src, 'sound/goonstation/misc/fuse.ogg', seed.potency, 0) - reagents.chem_temp = 1000 //Sets off the black powder - reagents.handle_reactions() + reagents.set_reagent_temp(1000) //Sets off the black powder \ No newline at end of file diff --git a/code/modules/hydroponics/grown/towercap.dm b/code/modules/hydroponics/grown/towercap.dm index f71cd6ed86a..4ed9d963274 100644 --- a/code/modules/hydroponics/grown/towercap.dm +++ b/code/modules/hydroponics/grown/towercap.dm @@ -153,7 +153,8 @@ Burn() processing_objects.Add(src) -/obj/structure/bonfire/fire_act(exposed_temperature, exposed_volume) +/obj/structure/bonfire/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() StartBurning() /obj/structure/bonfire/Crossed(atom/movable/AM) diff --git a/code/modules/mining/ore.dm b/code/modules/mining/ore.dm index 08b81e1fd78..dda5fb47f78 100644 --- a/code/modules/mining/ore.dm +++ b/code/modules/mining/ore.dm @@ -52,7 +52,7 @@ F.attackby(OB, AM) return ..() -/obj/item/stack/ore/fire_act() +/obj/item/stack/ore/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) ..() if(isnull(refined_type)) return diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm index 5294e3bda91..04dcb0c60ef 100644 --- a/code/modules/mob/living/carbon/alien/special/facehugger.dm +++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm @@ -65,9 +65,9 @@ var/const/MAX_ACTIVE_TIME = 400 return /obj/item/clothing/mask/facehugger/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(exposed_temperature > 300) Die() - return /obj/item/clothing/mask/facehugger/equipped(mob/M) Attach(M) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index f65faaba70d..0641ce380f5 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -179,7 +179,8 @@ var/turf/location = get_turf(src) location.hotspot_expose(700, 50, 1) -/mob/living/fire_act() +/mob/living/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() adjust_fire_stacks(3) IgniteMob() diff --git a/code/modules/mob/living/silicon/robot/life.dm b/code/modules/mob/living/silicon/robot/life.dm index 752cdc0f631..5f37177f674 100644 --- a/code/modules/mob/living/silicon/robot/life.dm +++ b/code/modules/mob/living/silicon/robot/life.dm @@ -230,7 +230,7 @@ if(on_fire) overlays += image("icon"='icons/mob/OnFire.dmi', "icon_state"="Generic_mob_burning") -/mob/living/silicon/robot/fire_act() +/mob/living/silicon/robot/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) if(!on_fire) //Silicons don't gain stacks from hotspots, but hotspots can ignite them IgniteMob() diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 36af97b0972..87dd368c17d 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -401,7 +401,7 @@ add_fingerprint(user) -/obj/item/paper/fire_act() +/obj/item/paper/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) ..() if(burn_state >= FLAMMABLE) //Only render paper that's burnable to be hard to read. info = "[stars(info)]" diff --git a/code/modules/paperwork/paperbin.dm b/code/modules/paperwork/paperbin.dm index a3f41c0ac25..e8643c97cff 100644 --- a/code/modules/paperwork/paperbin.dm +++ b/code/modules/paperwork/paperbin.dm @@ -12,7 +12,7 @@ var/amount = 30 //How much paper is in the bin. var/list/papers = list() //List of papers put in the bin for reference. -/obj/item/paper_bin/fire_act() +/obj/item/paper_bin/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) if(!amount) return ..() diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index dcd884da879..8dda1ed8731 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -586,6 +586,7 @@ // called when on fire /obj/machinery/light/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() if(prob(max(0, exposed_temperature - 673))) //0% at <400C, 100% at >500C broken() diff --git a/code/modules/reagents/chem_splash.dm b/code/modules/reagents/chem_splash.dm index e586e6f806b..c73ffc72ced 100644 --- a/code/modules/reagents/chem_splash.dm +++ b/code/modules/reagents/chem_splash.dm @@ -25,8 +25,7 @@ for(var/datum/reagents/R in reactants) R.trans_to(splash_holder, R.total_volume, threatscale, 1, 1) total_temp += R.chem_temp - splash_holder.chem_temp = (total_temp/reactants.len) + extra_heat // Average temperature of reagents + extra heat. - splash_holder.handle_reactions() // React them now. + splash_holder.set_reagent_temp((total_temp / reactants.len) + extra_heat) // Average temperature of reagents + extra heat. if(splash_holder.total_volume && affected_range >= 0) //The possible reactions didnt use up all reagents, so we spread it around. var/datum/effect_system/steam_spread/steam = new /datum/effect_system/steam_spread() diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index fa2a8d71a9a..426c9ae3a8b 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -9,7 +9,7 @@ var/const/INGEST = 2 var/total_volume = 0 var/maximum_volume = 100 var/atom/my_atom = null - var/chem_temp = 300 + var/chem_temp = T20C var/list/datum/reagent/addiction_list = new/list() var/flags @@ -166,6 +166,30 @@ var/const/INGEST = 2 handle_reactions() return amount +/datum/reagents/proc/set_reagent_temp(new_temp = T0C, react = TRUE) + chem_temp = new_temp + if(react) + temperature_react() + handle_reactions() + +/datum/reagents/proc/temperature_react() //Calls the temperature reaction procs without changing the temp. + for(var/datum/reagent/current_reagent in reagent_list) + current_reagent.reaction_temperature(chem_temp, 100) + +/datum/reagents/proc/temperature_reagents(exposed_temperature, divisor = 35, change_cap = 15) //This is what you use to change the temp of a reagent holder. + //Do not manually change the reagent unless you know what youre doing. + var/difference = abs(chem_temp - exposed_temperature) + var/change = min(max((difference / divisor), 1), change_cap) + if(exposed_temperature > chem_temp) + chem_temp += change + else if(exposed_temperature < chem_temp) + chem_temp -= change + + chem_temp = max(min(chem_temp, 10000), 0) //Cap for the moment. + temperature_react() + + handle_reactions() + /datum/reagents/proc/trans_id_to(obj/target, reagent, amount=1, preserve_data=1)//Not sure why this proc didn't exist before. It does now! /N if(!target) return @@ -194,8 +218,7 @@ var/const/INGEST = 2 /datum/reagents/proc/metabolize(mob/living/M) if(M) - chem_temp = M.bodytemperature - handle_reactions() + temperature_reagents(M.bodytemperature - 30) // a bitfield filled in by each reagent's `on_mob_life` to find out which states to update var/update_flags = STATUS_UPDATE_NONE @@ -548,14 +571,14 @@ var/const/INGEST = 2 var/amt = list_reagents[r_id] add_reagent(r_id, amt, data) -/datum/reagents/proc/add_reagent(reagent, amount, list/data=null, reagtemp = 300, no_react = 0) +/datum/reagents/proc/add_reagent(reagent, amount, list/data=null, reagtemp = T20C, no_react = 0) if(!isnum(amount)) return 1 update_total() if(total_volume + amount > maximum_volume) amount = (maximum_volume - total_volume) //Doesnt fit in. Make it disappear. Shouldnt happen. Will happen. if(amount <= 0) return 0 - chem_temp = round(((amount * reagtemp) + (total_volume * chem_temp)) / (total_volume + amount)) //equalize with new chems + chem_temp = (chem_temp * total_volume + reagtemp * amount) / (total_volume + amount) //equalize with new chems for(var/A in reagent_list) @@ -567,6 +590,7 @@ var/const/INGEST = 2 my_atom.on_reagent_change() R.on_merge(data) if(!no_react) + temperature_react() handle_reactions() return 0 @@ -585,6 +609,7 @@ var/const/INGEST = 2 if(my_atom) my_atom.on_reagent_change() if(!no_react) + temperature_react() handle_reactions() return 0 else diff --git a/code/modules/reagents/chemistry/machinery/chem_heater.dm b/code/modules/reagents/chemistry/machinery/chem_heater.dm index 1b84afb3d74..ba329f30c0e 100644 --- a/code/modules/reagents/chemistry/machinery/chem_heater.dm +++ b/code/modules/reagents/chemistry/machinery/chem_heater.dm @@ -7,8 +7,7 @@ use_power = IDLE_POWER_USE idle_power_usage = 40 var/obj/item/reagent_containers/beaker = null - var/desired_temp = 300 - var/heater_coefficient = 0.03 + var/desired_temp = T0C var/on = FALSE /obj/machinery/chem_heater/New() @@ -19,34 +18,22 @@ component_parts += new /obj/item/stock_parts/console_screen(null) RefreshParts() -/obj/machinery/chem_heater/upgraded/New() - ..() - component_parts = list() - component_parts += new /obj/item/circuitboard/chem_heater(null) - component_parts += new /obj/item/stock_parts/micro_laser/ultra(null) - component_parts += new /obj/item/stock_parts/console_screen(null) - RefreshParts() - -/obj/machinery/chem_heater/RefreshParts() - heater_coefficient = 0.03 - for(var/obj/item/stock_parts/micro_laser/M in component_parts) - heater_coefficient *= M.rating - /obj/machinery/chem_heater/process() ..() if(stat & NOPOWER) return - var/state_change = 0 + var/state_change = FALSE if(on) if(beaker) - if(beaker.reagents.chem_temp > desired_temp) - beaker.reagents.chem_temp += min(-1, max((desired_temp - beaker.reagents.chem_temp) * heater_coefficient, -15)) - if(beaker.reagents.chem_temp < desired_temp) - beaker.reagents.chem_temp += max(1, min((desired_temp - beaker.reagents.chem_temp) * heater_coefficient, 15)) - beaker.reagents.chem_temp = round(beaker.reagents.chem_temp) //stops stuff like 456.12312312302 - - beaker.reagents.handle_reactions() - state_change = 1 + if(!beaker.reagents.total_volume) + on = FALSE + SSnanoui.update_uis(src) + return + beaker.reagents.temperature_reagents(desired_temp) + beaker.reagents.temperature_reagents(desired_temp) + if(abs(beaker.reagents.chem_temp - desired_temp) <= 3) + on = FALSE + state_change = TRUE if(state_change) SSnanoui.update_uis(src) @@ -54,7 +41,6 @@ /obj/machinery/chem_heater/proc/eject_beaker() if(beaker) beaker.forceMove(get_turf(src)) - beaker.reagents.handle_reactions() beaker = null icon_state = "mixer0b" on = FALSE @@ -111,6 +97,8 @@ return 0 if(href_list["toggle_on"]) + if(!beaker.reagents.total_volume) + return on = !on . = 1 diff --git a/code/modules/reagents/chemistry/reagents.dm b/code/modules/reagents/chemistry/reagents.dm index 7e76217fe15..79c23d8dfad 100644 --- a/code/modules/reagents/chemistry/reagents.dm +++ b/code/modules/reagents/chemistry/reagents.dm @@ -33,6 +33,9 @@ . = ..() holder = null +/datum/reagent/proc/reaction_temperature(exposed_temperature, exposed_volume) //By default we do nothing. + return + /datum/reagent/proc/reaction_mob(mob/living/M, method = TOUCH, volume) //Some reagents transfer on touch, others don't; dependent on if they penetrate the skin or not. if(holder) //for catching rare runtimes if(method == TOUCH && penetrates_skin) diff --git a/code/modules/reagents/chemistry/reagents/pyrotechnic.dm b/code/modules/reagents/chemistry/reagents/pyrotechnic.dm index 857b15330d4..b0dd577db9f 100644 --- a/code/modules/reagents/chemistry/reagents/pyrotechnic.dm +++ b/code/modules/reagents/chemistry/reagents/pyrotechnic.dm @@ -224,8 +224,9 @@ /datum/reagent/cryostylane/on_tick() if(holder.has_reagent("oxygen")) holder.remove_reagent("oxygen", 1) - holder.chem_temp -= 10 - holder.handle_reactions() + holder.remove_reagent("cryostylane", 1) + holder.temperature_reagents(holder.chem_temp - 200) + holder.temperature_reagents(holder.chem_temp - 200) ..() /datum/reagent/cryostylane/reaction_turf(turf/T, volume) @@ -249,8 +250,9 @@ /datum/reagent/pyrosium/on_tick() if(holder.has_reagent("oxygen")) holder.remove_reagent("oxygen", 1) - holder.chem_temp += 10 - holder.handle_reactions() + holder.remove_reagent("pyrosium", 1) + holder.temperature_reagents(holder.chem_temp + 200) + holder.temperature_reagents(holder.chem_temp + 200) ..() /datum/reagent/firefighting_foam diff --git a/code/modules/reagents/chemistry/recipes/drinks.dm b/code/modules/reagents/chemistry/recipes/drinks.dm index c348db060ff..2f3eda996b0 100644 --- a/code/modules/reagents/chemistry/recipes/drinks.dm +++ b/code/modules/reagents/chemistry/recipes/drinks.dm @@ -229,7 +229,7 @@ id = "flamingmoe" result = "flamingmoe" required_reagents = list("vodka" = 1, "gin" = 1, "cognac" = 1, "tequila" = 1, "salglu_solution" = 1) //Close enough - min_temp = 374 //Fire makes it good! + min_temp = T0C + 100 //Fire makes it good! result_amount = 5 mix_sound = 'sound/goonstation/misc/drinkfizz.ogg' mix_message = "The concoction bursts into flame!" @@ -701,7 +701,7 @@ id = "applejack" result = "applejack" required_reagents = list("cider" = 2) - max_temp = 270 + max_temp = T0C result_amount = 1 mix_message = "The drink darkens as the water freezes, leaving the concentrated cider behind." mix_sound = null diff --git a/code/modules/reagents/chemistry/recipes/drugs.dm b/code/modules/reagents/chemistry/recipes/drugs.dm index e44ace8f511..aa0a9c21714 100644 --- a/code/modules/reagents/chemistry/recipes/drugs.dm +++ b/code/modules/reagents/chemistry/recipes/drugs.dm @@ -15,7 +15,7 @@ result_amount = 5 mix_message = "The mixture violently reacts, leaving behind a few crystalline shards." mix_sound = 'sound/goonstation/effects/crystalshatter.ogg' - min_temp = 390 + min_temp = T0C + 100 /datum/chemical_reaction/crank/on_reaction(datum/reagents/holder, created_volume) var/turf/T = get_turf(holder.my_atom) @@ -30,7 +30,7 @@ required_reagents = list("diphenhydramine" = 1, "morphine" = 1, "cleaner" = 1, "potassium" = 1, "phosphorus" = 1, "fuel" = 1) result_amount = 6 mix_message = "The mixture dries into a pale blue powder." - min_temp = 380 + min_temp = T0C + 100 mix_sound = 'sound/goonstation/misc/fuse.ogg' /datum/chemical_reaction/methamphetamine @@ -39,7 +39,7 @@ result = "methamphetamine" required_reagents = list("ephedrine" = 1, "iodine" = 1, "phosphorus" = 1, "hydrogen" = 1) result_amount = 4 - min_temp = 374 + min_temp = T0C + 100 /datum/chemical_reaction/methamphetamine/on_reaction(datum/reagents/holder) var/turf/T = get_turf(holder.my_atom) @@ -57,7 +57,7 @@ result = "bath_salts" required_reagents = list("????" = 1, "saltpetre" = 1, "msg" = 1, "cleaner" = 1, "enzyme" = 1, "mugwort" = 1, "mercury" = 1) result_amount = 6 - min_temp = 374 + min_temp = T0C + 100 mix_message = "Tiny cubic crystals precipitate out of the mixture. Huh." mix_sound = 'sound/goonstation/misc/fuse.ogg' diff --git a/code/modules/reagents/chemistry/recipes/food.dm b/code/modules/reagents/chemistry/recipes/food.dm index ec732bba858..5b5efc105d6 100644 --- a/code/modules/reagents/chemistry/recipes/food.dm +++ b/code/modules/reagents/chemistry/recipes/food.dm @@ -124,7 +124,7 @@ result = "corn_syrup" required_reagents = list("corn_starch" = 1, "sacid" = 1) result_amount = 2 - min_temp = 374 + min_temp = T0C + 100 mix_message = "The mixture forms a viscous, clear fluid!" /datum/chemical_reaction/vhfcs @@ -176,7 +176,7 @@ result = "hydrogenated_soybeanoil" required_reagents = list("soybeanoil" = 1, "hydrogen" = 1) result_amount = 2 - min_temp = 520 + min_temp = T0C + 250 mix_message = "The mixture emits a burnt, oily smell." /datum/chemical_reaction/meatslurry @@ -194,7 +194,7 @@ result = "gravy" required_reagents = list("porktonium" = 1, "corn_starch" = 1, "milk" = 1) result_amount = 3 - min_temp = 374 + min_temp = T0C + 100 mix_message = "The substance thickens and takes on a meaty odor." /datum/chemical_reaction/beff @@ -221,7 +221,7 @@ result = "enzyme" required_reagents = list("vomit" = 1, "sugar" = 1) result_amount = 2 - min_temp = 750 + min_temp = T0C + 480 mix_message = "The mixture emits a horrible smell as you heat up the contents. Luckily, enzymes don't stink." mix_sound = 'sound/goonstation/misc/fuse.ogg' @@ -231,6 +231,6 @@ result = "enzyme" required_reagents = list("green_vomit" = 1, "sugar" = 1) result_amount = 2 - min_temp = 750 + min_temp = T0C + 480 mix_message = "The mixture emits a horrible smell as you heat up the contents. Luckily, enzymes don't stink." mix_sound = 'sound/goonstation/misc/fuse.ogg' diff --git a/code/modules/reagents/chemistry/recipes/medicine.dm b/code/modules/reagents/chemistry/recipes/medicine.dm index 864733f6555..0897de76566 100644 --- a/code/modules/reagents/chemistry/recipes/medicine.dm +++ b/code/modules/reagents/chemistry/recipes/medicine.dm @@ -50,7 +50,7 @@ required_reagents = list("ash" = 1, "sodiumchloride" = 1) result_amount = 2 mix_message = "The mixture yields a fine black powder." - min_temp = 380 + min_temp = T0C + 100 mix_sound = 'sound/goonstation/misc/fuse.ogg' /datum/chemical_reaction/silver_sulfadiazine @@ -92,7 +92,7 @@ result = "calomel" required_reagents = list("mercury" = 1, "chlorine" = 1) result_amount = 2 - min_temp = 374 + min_temp = T0C + 100 mix_message = "Stinging vapors rise from the solution." /datum/chemical_reaction/potass_iodide @@ -135,7 +135,7 @@ result = "perfluorodecalin" required_reagents = list("hydrogen" = 1, "fluorine" = 1, "oil" = 1) result_amount = 3 - min_temp = 370 + min_temp = T0C + 100 mix_message = "The mixture rapidly turns into a dense pink liquid." mix_sound = 'sound/goonstation/misc/drinkfizz.ogg' @@ -195,7 +195,7 @@ result = null required_reagents = list("strange_reagent" = 1, "synthflesh" = 1, "blood" = 1) result_amount = 3 - min_temp = 374 + min_temp = T0C + 100 /datum/chemical_reaction/life/on_reaction(datum/reagents/holder, created_volume) chemical_mob_spawn(holder, 1, "Life") @@ -263,7 +263,7 @@ result = "liquid_solder" required_reagents = list("ethanol" = 1, "copper" = 1, "silver" = 1) result_amount = 3 - min_temp = 370 + min_temp = T0C + 100 mix_message = "The solution gently swirls with a metallic sheen." /datum/chemical_reaction/corazone diff --git a/code/modules/reagents/chemistry/recipes/others.dm b/code/modules/reagents/chemistry/recipes/others.dm index 0259ed89e86..e06dec7de3f 100644 --- a/code/modules/reagents/chemistry/recipes/others.dm +++ b/code/modules/reagents/chemistry/recipes/others.dm @@ -74,7 +74,7 @@ result = "diethylamine" required_reagents = list ("ammonia" = 1, "ethanol" = 1) result_amount = 2 - min_temp = 374 + min_temp = T0C + 100 mix_message = "A horrible smell pours forth from the mixture." /datum/chemical_reaction/space_cleaner @@ -98,7 +98,7 @@ id = "plastic_polymers" result = null required_reagents = list("oil" = 5, "sacid" = 2, "ash" = 3) - min_temp = 374 + min_temp = T0C + 100 result_amount = 1 /datum/chemical_reaction/plastic_polymers/on_reaction(datum/reagents/holder, created_volume) @@ -177,7 +177,7 @@ result = "ash" required_reagents = list("oil" = 1) result_amount = 0.5 - min_temp = 480 + min_temp = T0C + 600 mix_sound = null no_message = 1 @@ -195,7 +195,7 @@ result = null required_reagents = list("nutriment" = 1, "colorful_reagent" = 1, "strange_reagent" = 1, "blood" = 1) result_amount = 3 - min_temp = 374 + min_temp = T0C + 100 /datum/chemical_reaction/corgium/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) @@ -208,7 +208,7 @@ result = null required_reagents = list("egg" = 1, "colorful_reagent" = 1, "chicken_soup" = 1, "strange_reagent" = 1, "blood" = 1) result_amount = 5 - min_temp = 374 + min_temp = T0C + 100 mix_message = "The substance turns an airy sky-blue and foams up into a new shape." /datum/chemical_reaction/flaptonium/on_reaction(datum/reagents/holder, created_volume) @@ -244,7 +244,7 @@ id = "soapification" result = null required_reagents = list("liquidgibs" = 10, "lye" = 10) // requires two scooped gib tiles - min_temp = 374 + min_temp = T0C + 100 result_amount = 1 @@ -257,7 +257,7 @@ id = "candlefication" result = null required_reagents = list("liquidgibs" = 5, "oxygen" = 5) // - min_temp = 374 + min_temp = T0C + 100 result_amount = 1 /datum/chemical_reaction/candlefication/on_reaction(datum/reagents/holder, created_volume) @@ -295,7 +295,7 @@ id = "jestosterone" result = "jestosterone" required_reagents = list("blood" = 1, "sodiumchloride" = 1, "banana" = 1, "lube" = 1, "space_drugs" = 1) //Or one freshly-squeezed clown - min_temp = 374 + min_temp = T0C + 100 result_amount = 5 mix_message = "The substance quickly shifts colour, cycling from red, to yellow, to green, to blue, and finally settles at a vibrant fuchsia." @@ -338,7 +338,7 @@ result = "ice" required_reagents = list("water" = 1) result_amount = 1 - max_temp = 273 + max_temp = T0C mix_message = "Ice forms as the water freezes." mix_sound = null @@ -348,7 +348,7 @@ result = "water" required_reagents = list("ice" = 1) result_amount = 1 - min_temp = 301 // In Space.....ice melts at 82F...don't ask + min_temp = T0C + 29 // In Space.....ice melts at 82F...don't ask mix_message = "Water pools as the ice melts." mix_sound = null diff --git a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm index 362aebfcc10..36225f6924f 100644 --- a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm +++ b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm @@ -80,7 +80,7 @@ result = "clf3" required_reagents = list("chlorine" = 1, "fluorine" = 3) result_amount = 2 - min_temp = 424 + min_temp = T0C + 150 /datum/chemical_reaction/clf3/on_reaction(datum/reagents/holder, created_volume) var/turf/T = get_turf(holder.my_atom) @@ -107,7 +107,7 @@ result = "sorium_vortex" required_reagents = list("sorium" = 1) result_amount = 1 - min_temp = 474 + min_temp = T0C + 200 /datum/chemical_reaction/sorium_vortex/on_reaction(datum/reagents/holder, created_volume) var/turf/simulated/T = get_turf(holder.my_atom) @@ -134,7 +134,7 @@ result = "ldm_vortex" required_reagents = list("liquid_dark_matter" = 1) result_amount = 1 - min_temp = 474 + min_temp = T0C + 200 /datum/chemical_reaction/ldm_vortex/on_reaction(datum/reagents/holder, created_volume) var/turf/simulated/T = get_turf(holder.my_atom) @@ -155,7 +155,7 @@ result = null required_reagents = list("blackpowder" = 1) result_amount = 1 - min_temp = 474 + min_temp = T0C + 200 no_message = 1 mix_sound = null @@ -202,7 +202,7 @@ datum/chemical_reaction/flash_powder id = "flash_powder_flash" result = null required_reagents = list("flash_powder" = 1) - min_temp = 374 + min_temp = T0C + 100 /datum/chemical_reaction/flash_powder_flash/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) @@ -256,7 +256,7 @@ datum/chemical_reaction/flash_powder name = "smoke_powder_smoke" id = "smoke_powder_smoke" required_reagents = list("smoke_powder" = 1) - min_temp = 374 + min_temp = T0C + 100 secondary = 1 result_amount = 1 forbidden_reagents = list("stimulants") @@ -307,7 +307,7 @@ datum/chemical_reaction/flash_powder id = "sonic_powder_deafen" result = null required_reagents = list("sonic_powder" = 1) - min_temp = 374 + min_temp = T0C + 100 /datum/chemical_reaction/sonic_powder_deafen/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) diff --git a/code/modules/reagents/chemistry/recipes/toxins.dm b/code/modules/reagents/chemistry/recipes/toxins.dm index 1531c80542a..54e3ce4fdb8 100644 --- a/code/modules/reagents/chemistry/recipes/toxins.dm +++ b/code/modules/reagents/chemistry/recipes/toxins.dm @@ -4,7 +4,7 @@ result = "formaldehyde" required_reagents = list("ethanol" = 1, "oxygen" = 1, "silver" = 1) result_amount = 3 - min_temp = 420 + min_temp = T0C + 150 mix_message = "Ugh, it smells like the morgue in here." /datum/chemical_reaction/neurotoxin2 @@ -13,7 +13,7 @@ result = "neurotoxin2" required_reagents = list("space_drugs" = 1) result_amount = 1 - min_temp = 674 + min_temp = T0C + 400 mix_sound = null no_message = 1 @@ -23,7 +23,7 @@ result = "cyanide" required_reagents = list("oil" = 1, "ammonia" = 1, "oxygen" = 1) result_amount = 3 - min_temp = 380 + min_temp = T0C + 100 mix_message = "The mixture gives off a faint scent of almonds." mix_sound = 'sound/goonstation/misc/drinkfizz.ogg' @@ -49,7 +49,7 @@ result = "facid" required_reagents = list("sacid" = 1, "fluorine" = 1, "hydrogen" = 1, "potassium" = 1) result_amount = 4 - min_temp = 380 + min_temp = T0C + 100 mix_message = "The mixture deepens to a dark blue, and slowly begins to corrode its container." /datum/chemical_reaction/initropidril @@ -83,7 +83,7 @@ required_reagents = list("chlorine" = 1, "fuel" = 1, "oxygen" = 1, "phosphorus" = 1, "fluorine" = 1, "hydrogen" = 1, "acetone" = 1, "atrazine" = 1) result_amount = 3 mix_message = "The mixture yields a colorless, odorless liquid." - min_temp = 374 + min_temp = T0C + 100 mix_sound = 'sound/goonstation/misc/drinkfizz.ogg' /datum/chemical_reaction/sarin/on_reaction(datum/reagents/holder) @@ -139,7 +139,7 @@ required_reagents = list("plasma" = 1, "silver" = 1, "blackpowder" = 1) result_amount = 3 mix_message = "A jet of sparks flies from the mixture as it merges into a flickering slurry." - min_temp = 400 + min_temp = T0C + 130 mix_sound = null /datum/chemical_reaction/teslium/on_reaction(datum/reagents/holder, created_volume) diff --git a/code/modules/reagents/reagent_containers.dm b/code/modules/reagents/reagent_containers.dm index 6d58e42d539..a350d75a4b4 100644 --- a/code/modules/reagents/reagent_containers.dm +++ b/code/modules/reagents/reagent_containers.dm @@ -44,11 +44,6 @@ R.on_ex_act() ..() -/obj/item/reagent_containers/fire_act() - reagents.chem_temp += 30 - reagents.handle_reactions() - ..() - /obj/item/reagent_containers/attack_self(mob/user) if(has_lid) if(is_open_container()) diff --git a/code/modules/reagents/reagent_containers/glass_containers.dm b/code/modules/reagents/reagent_containers/glass_containers.dm index 23ec5f5cadb..cc866f7a2c7 100644 --- a/code/modules/reagents/reagent_containers/glass_containers.dm +++ b/code/modules/reagents/reagent_containers/glass_containers.dm @@ -124,13 +124,6 @@ /obj/item/reagent_containers/glass/attackby(obj/item/I, mob/user, params) - if(istype(I, /obj/item/clothing/mask/cigarette)) //ciggies are weird - return - if(is_hot(I)) - if(reagents) - reagents.chem_temp += 15 - to_chat(user, "You heat [src] with [I].") - reagents.handle_reactions() if(istype(I, /obj/item/pen) || istype(I, /obj/item/flashlight/pen)) var/tmp_label = sanitize(input(user, "Enter a label for [name]","Label",label_text)) if(length(tmp_label) > MAX_NAME_LEN) @@ -210,8 +203,7 @@ /obj/item/reagent_containers/glass/beaker/proc/heat_beaker() if(reagents) - reagents.chem_temp += 30 - reagents.handle_reactions() + reagents.temperature_reagents(4000) /obj/item/reagent_containers/glass/beaker/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/assembly_holder) && can_assembly) diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index da9f408a7c3..d7fa514d29d 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -99,7 +99,8 @@ /obj/structure/reagent_dispensers/fueltank/ex_act() boom() -/obj/structure/reagent_dispensers/fueltank/fire_act() +/obj/structure/reagent_dispensers/fueltank/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume, global_overlay = TRUE) + ..() boom() /obj/structure/reagent_dispensers/fueltank/tesla_act() From cc1b49eed6da060dc346438a437724fff0316e95 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Mon, 18 Mar 2019 23:19:13 -0400 Subject: [PATCH 006/108] fix --- code/game/objects/items/weapons/tools.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index e90a7bb4b6d..7fb2a50e65a 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -469,7 +469,7 @@ /obj/item/weldingtool/afterattack(atom/O, mob/user, proximity) if(!proximity) return - + ..() if(welding) remove_fuel(1) var/turf/location = get_turf(user) From e98f1b36e25f1062639ab95bf4328e779df5fddd Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Tue, 19 Mar 2019 00:15:59 -0400 Subject: [PATCH 007/108] this for now --- code/modules/reagents/chemistry/holder.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index 426c9ae3a8b..9586dec9bc9 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -218,7 +218,7 @@ var/const/INGEST = 2 /datum/reagents/proc/metabolize(mob/living/M) if(M) - temperature_reagents(M.bodytemperature - 30) + set_reagent_temp(M.bodytemperature) // a bitfield filled in by each reagent's `on_mob_life` to find out which states to update var/update_flags = STATUS_UPDATE_NONE From de09634df161f4f6e42c656aa19facb432586075 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Tue, 19 Mar 2019 01:53:30 -0400 Subject: [PATCH 008/108] fixes black powder --- code/modules/reagents/chemistry/recipes/pyrotechnics.dm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm index 36225f6924f..8248a88b349 100644 --- a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm +++ b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm @@ -162,16 +162,16 @@ /datum/chemical_reaction/blackpowder_explosion/on_reaction(datum/reagents/holder, created_volume) var/location = get_turf(holder.my_atom) do_sparks(2, 1, location) - sleep(rand(20,30)) - blackpowder_detonate(holder, created_volume) + spawn(rand(5, 15)) + blackpowder_detonate(holder, created_volume) /proc/blackpowder_detonate(datum/reagents/holder, created_volume) - var/turf/simulated/T = get_turf(holder.my_atom) + var/turf/T = get_turf(holder.my_atom) var/ex_severe = round(created_volume / 100) var/ex_heavy = round(created_volume / 42) var/ex_light = round(created_volume / 20) var/ex_flash = round(created_volume / 8) - explosion(T,ex_severe,ex_heavy,ex_light,ex_flash, 1) + explosion(T, ex_severe, ex_heavy,ex_light, ex_flash, 1) // If this black powder is in a decal, remove the decal, because it just exploded if(istype(holder.my_atom, /obj/effect/decal/cleanable/dirt/blackpowder)) spawn(0) From d69b6ea31082fa07e812106b1a6ef0d6e9cda641 Mon Sep 17 00:00:00 2001 From: Kyep Date: Tue, 19 Mar 2019 02:12:38 -0700 Subject: [PATCH 009/108] Fixes blobbernaut exploit --- code/game/gamemodes/blob/blobs/blob_mobs.dm | 9 +++++++++ code/game/gamemodes/blob/theblob.dm | 9 +++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/code/game/gamemodes/blob/blobs/blob_mobs.dm b/code/game/gamemodes/blob/blobs/blob_mobs.dm index e3b1d082623..94999bda5bb 100644 --- a/code/game/gamemodes/blob/blobs/blob_mobs.dm +++ b/code/game/gamemodes/blob/blobs/blob_mobs.dm @@ -12,6 +12,7 @@ minbodytemp = 0 maxbodytemp = 360 universal_speak = 1 //So mobs can understand them when a blob uses Blob Broadcast + sentience_type = SENTIENCE_OTHER var/mob/camera/blob/overmind = null /mob/living/simple_animal/hostile/blob/proc/adjustcolors(var/a_color) @@ -21,6 +22,14 @@ /mob/living/simple_animal/hostile/blob/blob_act() return + +/mob/living/simple_animal/hostile/blob/AttackingTarget() + if(ckey) + if(istype(target, /obj/structure/blob)) + return FALSE + return ..() + + //////////////// // BLOB SPORE // //////////////// diff --git a/code/game/gamemodes/blob/theblob.dm b/code/game/gamemodes/blob/theblob.dm index 7d55f2fe1c9..b5212c8708f 100644 --- a/code/game/gamemodes/blob/theblob.dm +++ b/code/game/gamemodes/blob/theblob.dm @@ -31,8 +31,13 @@ /obj/structure/blob/CanPass(atom/movable/mover, turf/target, height=0) - if(height==0) return 1 - if(istype(mover) && mover.checkpass(PASSBLOB)) return 1 + if(height==0) + return 1 + if(istype(mover) && mover.checkpass(PASSBLOB)) + var/mob/living/L = mover + if(istype(L) && L.ckey) + return 0 + return 1 return 0 /obj/structure/blob/CanAStarPass(ID, dir, caller) From eedc8afa8e9d7256162730997fb294a4373aa973 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Tue, 19 Mar 2019 14:58:53 -0400 Subject: [PATCH 010/108] reagents mob temp --- .../mob/living/carbon/human/human_defense.dm | 9 ++++++ code/modules/reagents/chemistry/holder.dm | 29 +++++++++++++++++++ .../chemistry/machinery/chem_heater.dm | 6 ++-- 3 files changed, 41 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 965a2c81ab2..84764bfddaa 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -513,3 +513,12 @@ emp_act return TRUE if(check_mask && wear_mask && (wear_mask.flags_cover & MASKCOVERSMOUTH)) return TRUE + +/mob/living/carbon/human/proc/reagent_safety_check(hot = TRUE) + if(wear_mask) + to_chat(src, "Your [wear_mask.name] protects you from the [hot ? "hot" : "cold"] liquid!") + return FALSE + if(head) + to_chat(src, "Your [head.name] protects you from the [hot ? "hot" : "cold"] liquid!") + return FALSE + return TRUE \ No newline at end of file diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index 9586dec9bc9..95dece3ad75 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -554,6 +554,35 @@ var/const/INGEST = 2 react_type = "OBJ" else return + + if(react_type == "LIVING" && ishuman(A)) + var/mob/living/carbon/human/H = A + if(method == TOUCH) + var/obj/item/organ/external/head/affecting = H.get_organ("head") + if(affecting) + if(chem_temp > H.dna.species.heat_level_1) + if(H.reagent_safety_check()) + to_chat(H, "You are scalded by the hot chemicals!") + affecting.receive_damage(0, round(log(chem_temp / 50) * 10)) + H.emote("scream") + H.adjust_bodytemperature(min(max((chem_temp - T0C) - 20, 5), 500)) + else if(chem_temp < H.dna.species.cold_level_1) + if(H.reagent_safety_check(FALSE)) + to_chat(H, "You are frostbitten by the freezing cold chemicals!") + affecting.receive_damage(0, round(log(T0C - chem_temp / 50) * 10)) + H.emote("scream") + H.adjust_bodytemperature(- min(max(T0C - chem_temp - 20, 5), 500)) + + if(method == INGEST) + if(chem_temp > H.dna.species.heat_level_1) + to_chat(H, "You scald yourself trying to consume the boiling hot substance!") + H.adjustFireLoss(7) + H.adjust_bodytemperature(min(max((chem_temp - T0C) - 20, 5), 700)) + else if(chem_temp < H.dna.species.cold_level_1) + to_chat(H, "You frostburn yourself trying to consume the freezing cold substance!") + H.adjustFireLoss(7) + H.adjust_bodytemperature(- min(max((T0C - chem_temp) - 20, 5), 700)) + for(var/datum/reagent/R in reagent_list) switch(react_type) if("LIVING") diff --git a/code/modules/reagents/chemistry/machinery/chem_heater.dm b/code/modules/reagents/chemistry/machinery/chem_heater.dm index ba329f30c0e..2db474b39c4 100644 --- a/code/modules/reagents/chemistry/machinery/chem_heater.dm +++ b/code/modules/reagents/chemistry/machinery/chem_heater.dm @@ -94,11 +94,11 @@ /obj/machinery/chem_heater/Topic(href, href_list) if(..()) - return 0 + return FALSE if(href_list["toggle_on"]) if(!beaker.reagents.total_volume) - return + return FALSE on = !on . = 1 @@ -110,7 +110,7 @@ var/target = input("Please input the target temperature", name) as num desired_temp = Clamp(target, 0, 1000) else - return 0 + return FALSE . = 1 if(href_list["eject_beaker"]) From 122c17a0065a5ca70b431c8cc8d6a21997936ca2 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Tue, 19 Mar 2019 18:23:04 -0400 Subject: [PATCH 011/108] oh no fox lost it --- code/LINDA/LINDA_fire.dm | 141 +++++++++++++++++- code/__HELPERS/game.dm | 13 ++ code/__HELPERS/unsorted.dm | 17 +++ code/_onclick/item_attack.dm | 7 +- code/game/turfs/simulated/floor.dm | 3 + code/game/turfs/simulated/walls.dm | 22 +-- code/game/turfs/simulated/walls_mineral.dm | 3 + code/game/turfs/turf.dm | 3 + .../reagents/chemistry/reagents/misc.dm | 12 ++ .../chemistry/reagents/paradise_pop.dm | 4 +- .../chemistry/reagents/pyrotechnic.dm | 113 +++++++++++--- code/modules/reagents/chemistry/recipes.dm | 23 ++- .../reagents/chemistry/recipes/drugs.dm | 5 +- .../reagents/chemistry/recipes/others.dm | 10 -- .../chemistry/recipes/pyrotechnics.dm | 12 +- code/modules/reagents/reagent_dispenser.dm | 24 ++- 16 files changed, 323 insertions(+), 89 deletions(-) diff --git a/code/LINDA/LINDA_fire.dm b/code/LINDA/LINDA_fire.dm index 13e20785d33..dad05f32c99 100644 --- a/code/LINDA/LINDA_fire.dm +++ b/code/LINDA/LINDA_fire.dm @@ -69,21 +69,24 @@ /obj/effect/hotspot/proc/perform_exposure() var/turf/simulated/location = loc - if(!istype(location) || !(location.air)) return 0 + if(!istype(location) || !(location.air)) + return FALSE - if(volume > CELL_VOLUME*0.95) bypassing = 1 - else bypassing = 0 + if(volume > CELL_VOLUME * 0.95) + bypassing = TRUE + else + bypassing = FALSE if(bypassing) if(!just_spawned) - volume = location.air.fuel_burnt*FIRE_GROWTH_RATE + volume = location.air.fuel_burnt * FIRE_GROWTH_RATE temperature = location.air.temperature else - var/datum/gas_mixture/affected = location.air.remove_ratio(volume/location.air.volume) + var/datum/gas_mixture/affected = location.air.remove_ratio(volume / location.air.volume) affected.temperature = temperature affected.react() temperature = affected.temperature - volume = affected.fuel_burnt*FIRE_GROWTH_RATE + volume = affected.fuel_burnt * FIRE_GROWTH_RATE location.assume_air(affected) for(var/A in loc) @@ -93,7 +96,7 @@ color = heat2color(temperature) set_light(l_color = color) - return 0 + return FALSE /obj/effect/hotspot/process() @@ -186,3 +189,127 @@ ..() if(isliving(L)) L.fire_act() + +/proc/fireflash(atom/center, radius, temp) + if(!temp) + temp = rand(2800, 3200) + for(var/turf/T in view(radius, get_turf(center))) + if(istype(T, /turf/space)) + continue + if(locate(/obj/effect/hotspot) in T) + continue + if(!can_line(get_turf(center), T, radius + 1)) + continue + + var/obj/effect/hotspot/H = new(T) + H.temperature = temp + H.volume = 400 + if(istype(T, /turf/simulated)) + var/turf/simulated/S = T + S.active_hotspot = H + + T.hotspot_expose(H.temperature, H.volume) + + if(istype(T, /turf/simulated/floor)) + var/turf/simulated/floor/F = T + F.burn_tile() + + for(var/mob/living/L in T) + L.adjust_fire_stacks(3) + L.IgniteMob() + L.bodytemperature = max(temp / 3, L.bodytemperature) + +/proc/fireflash_s(atom/center, radius, temp, falloff) + if(temp < T0C + 60) + return list() + var/list/open = list() + var/list/affected = list() + var/list/closed = list() + var/turf/Ce = get_turf(center) + var/max_dist = radius + if(falloff) + max_dist = min((temp - (T0C + 60)) / falloff, radius) + open[Ce] = 0 + while(open.len) + var/turf/T = open[1] + var/dist = open[T] + open -= T + closed += T + + if(isspaceturf(T)) + continue + if(dist > max_dist) + continue + if(!ff_cansee(Ce, T)) + continue + + var/obj/effect/hotspot/existing_hotspot = locate(/obj/effect/hotspot) in T + var/prev_temp = 0 + var/need_expose = 0 + var/expose_temp = 0 + if(!existing_hotspot) + var/obj/effect/hotspot/H = new(T) + need_expose = TRUE + H.temperature = temp - dist * falloff + expose_temp = H.temperature + H.volume = 400 + if(istype(T, /turf/simulated)) + var/turf/simulated/S = T + S.active_hotspot = H + existing_hotspot = H + + else if(existing_hotspot.temperature < temp - dist * falloff) + expose_temp = (temp - dist * falloff) - existing_hotspot.temperature + prev_temp = existing_hotspot.temperature + if(expose_temp > prev_temp * 3) + need_expose = TRUE + existing_hotspot.temperature = temp - dist * falloff + + affected[T] = existing_hotspot.temperature + if(need_expose && expose_temp) + T.hotspot_expose(expose_temp, existing_hotspot.volume) + if(istype(T, /turf/simulated/floor)) + var/turf/simulated/floor/F = T + F.burn_tile() + for(var/mob/living/L in T) + L.adjust_fire_stacks(3) + L.bodytemperature = (2 * L.bodytemperature + temp) / 3 + + if(T.density) + continue + for(var/obj/O in T) + if(O.density) + continue + if(dist == max_dist) + continue + + for(var/dir in cardinal) + var/turf/link = get_step(T, dir) + if (!link) + continue + var/dx = link.x - Ce.x + var/dy = link.y - Ce.y + var/target_dist = max((dist + 1 + sqrt(dx * dx + dy * dy)) / 2, dist) + if(!(link in closed)) + if(link in open) + if(open[link] > target_dist) + open[link] = target_dist + else + open[link] = target_dist + + return affected + +/proc/fireflash_sm(atom/center, radius, temp, falloff, capped = TRUE, bypass_rng = FALSE) + var/list/affected = fireflash_s(center, radius, temp, falloff) + for(var/turf/simulated/T in affected) + var/mytemp = affected[T] + var/melt = 1643.15 // default steel melting point + var/divisor = melt + if(mytemp >= melt * 2) + var/chance = mytemp / divisor + if(capped) + chance = min(chance, 30) + if(prob(chance) || bypass_rng) + T.visible_message("[T] melts!") + T.burn_down() + return affected \ No newline at end of file diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index 79b7da3c10c..c7c3bbf5256 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -74,6 +74,19 @@ //turfs += centerturf return atoms +/proc/ff_cansee(atom/A, atom/B) + var/AT = get_turf(A) + var/BT = get_turf(B) + if(AT == BT) + return 1 + var/list/line = getline(A, B) + for(var/turf/T in line) + if(T == AT || T == BT) + break + if(T.density) + return FALSE + return TRUE + /proc/get_dist_euclidian(atom/Loc1 as turf|mob|obj,atom/Loc2 as turf|mob|obj) var/dx = Loc1.x - Loc2.x var/dy = Loc1.y - Loc2.y diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index a22c4cf3f99..287de3fb424 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -216,6 +216,23 @@ Turf and target are seperate in case you want to teleport some distance from a t line+=locate(px,py,M.z) return line +//Same as the thing below just for density and without support for atoms. +/proc/can_line(atom/source, atom/target, length = 5) + var/turf/current = get_turf(source) + var/turf/target_turf = get_turf(target) + var/steps = 0 + + while(current != target_turf) + if(steps > length) + return FALSE + if(!current) + return FALSE + if(current.density) + return FALSE + current = get_step_towards(current, target_turf) + steps++ + return TRUE + //Returns whether or not a player is a guest using their ckey as an input /proc/IsGuestKey(key) if(findtext(key, "Guest-", 1, 7) != 1) //was findtextEx diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm index d47bc134774..47036da9cf8 100644 --- a/code/_onclick/item_attack.dm +++ b/code/_onclick/item_attack.dm @@ -12,6 +12,9 @@ return /obj/item/proc/pre_attackby(atom/A, mob/living/user, params) //do stuff before attackby! + if(is_hot(src) && A.reagents && !ismob(A)) + to_chat(user, "You heat [A] with [src].") + A.reagents.temperature_reagents(is_hot(src)) return TRUE //return FALSE to avoid calling attackby after this proc does stuff // No comment @@ -123,9 +126,7 @@ // Proximity_flag is 1 if this afterattack was called on something adjacent, in your square, or on your person. // Click parameters is the params string from byond Click() code, see that documentation. /obj/item/proc/afterattack(atom/target, mob/user, proximity_flag, click_parameters) - if(is_hot(src) && target.reagents && !ismob(target) && proximity_flag) - to_chat(user, "You heat [target].") - target.reagents.temperature_reagents(is_hot(src)) + return /obj/item/proc/get_clamped_volume() if(w_class) diff --git a/code/game/turfs/simulated/floor.dm b/code/game/turfs/simulated/floor.dm index d26a24b39a2..6b3dc1e93ff 100644 --- a/code/game/turfs/simulated/floor.dm +++ b/code/game/turfs/simulated/floor.dm @@ -79,6 +79,9 @@ var/list/icons_to_ignore_at_floor_init = list("damaged1","damaged2","damaged3"," src.hotspot_expose(1000,CELL_VOLUME) return +/turf/simulated/floor/burn_down() + ex_act(2) + /turf/simulated/floor/is_shielded() for(var/obj/structure/A in contents) if(A.level == 3) diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 4c855ac1f15..6fddc40dfa9 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -201,6 +201,11 @@ for(var/i=0, i T0C + 600) + var/turf/T = get_turf(holder.my_atom) + holder.my_atom.visible_message("The oil burns!") + fireflash(T, min(max(0, volume / 40), 8)) + var/datum/effect_system/smoke_spread/bad/BS = new + BS.set_up(1, 0, T) + BS.start() + if(holder) + holder.add_reagent("ash", round(volume * 0.5)) + holder.del_reagent(id) + /datum/reagent/oil/reaction_turf(turf/T, volume) if(volume >= 3 && !isspaceturf(T) && !locate(/obj/effect/decal/cleanable/blood/oil) in T) new /obj/effect/decal/cleanable/blood/oil(T) diff --git a/code/modules/reagents/chemistry/reagents/paradise_pop.dm b/code/modules/reagents/chemistry/reagents/paradise_pop.dm index 08f01bdd381..204848e1fe9 100644 --- a/code/modules/reagents/chemistry/reagents/paradise_pop.dm +++ b/code/modules/reagents/chemistry/reagents/paradise_pop.dm @@ -29,7 +29,7 @@ /datum/reagent/consumable/drink/apple_pocalypse/on_mob_life(mob/living/M) if(prob(1)) var/turf/simulated/T = get_turf(M) - goonchem_vortex(T, 0, 2, 1) + goonchem_vortex(T, 1, 0) to_chat(M, "You briefly feel super-massive, like a black hole. Probably just your imagination...") ..() @@ -119,7 +119,7 @@ /datum/reagent/consumable/drink/grape_granade/on_mob_life(mob/living/M) if(prob(1)) var/turf/simulated/T = get_turf(M) - goonchem_vortex(T, 1, 1, 2) + goonchem_vortex(T, 0, 0) M.emote("burp") to_chat(M, "You feel ready to burst! Oh wait, just a burp...") else if(prob(25)) diff --git a/code/modules/reagents/chemistry/reagents/pyrotechnic.dm b/code/modules/reagents/chemistry/reagents/pyrotechnic.dm index b0dd577db9f..7761772a44c 100644 --- a/code/modules/reagents/chemistry/reagents/pyrotechnic.dm +++ b/code/modules/reagents/chemistry/reagents/pyrotechnic.dm @@ -8,6 +8,43 @@ drink_name = "Glass of welder fuel" drink_desc = "Unless you are an industrial tool, this is probably not safe for consumption." taste_message = "mistakes" + var/max_radius = 7 + var/min_radius = 0 + var/volume_radius_modifier = -0.15 + var/volume_radius_multiplier = 0.09 + var/explosion_threshold = 100 + var/min_explosion_radius = 0 + var/max_explosion_radius = 4 + var/volume_explosion_radius_multiplier = 0.005 + var/volume_explosion_radius_modifier = 0 + var/combustion_temp = T0C + 200 + +/datum/reagent/fuel/reaction_temperature(exposed_temperature, exposed_volume) + if(exposed_temperature > combustion_temp) + if(volume < 1) + if(holder) + holder.del_reagent(id) + return + var/turf/T = get_turf(holder.my_atom) + var/radius = min(max(min_radius, volume * volume_radius_multiplier + volume_radius_modifier), max_radius) + fireflash_sm(T, radius, 2200 + radius * 250, radius * 50) + if(holder && volume >= explosion_threshold) + if(holder.my_atom) + holder.my_atom.visible_message("[holder.my_atom] explodes!") + message_admins("Fuel explosion ([holder.my_atom], reagent type: [id]) at [COORD(holder.my_atom.loc)]. Last touched by: [holder.my_atom.fingerprintslast ? "[holder.my_atom.fingerprintslast]" : "*null*"].") + log_game("Fuel explosion ([holder.my_atom], reagent type: [id]) at [COORD(holder.my_atom.loc)]. Last touched by: [holder.my_atom.fingerprintslast ? "[holder.my_atom.fingerprintslast]" : "*null*"].") + holder.my_atom.investigate_log("A fuel explosion, last touched by [holder.my_atom.fingerprintslast ? "[holder.my_atom.fingerprintslast]" : "*null*"], triggered at [COORD(holder.my_atom.loc)].", INVESTIGATE_BOMB) + var/boomrange = min(max(min_explosion_radius, round(volume * volume_explosion_radius_multiplier + volume_explosion_radius_modifier)), max_explosion_radius) + explosion(T, -1, -1, boomrange, 1) + if(holder) + holder.del_reagent(id) + +/datum/reagent/fuel/reaction_turf(turf/T, volume) //Don't spill the fuel, or you'll regret it + if(isspaceturf(T)) + return + if(!T.reagents) + T.create_reagents(50) + T.reagents.add_reagent("fuel", volume) /datum/reagent/fuel/reaction_mob(mob/living/M, method=TOUCH, volume)//Splashing people with welding fuel to make them easy to ignite! if(method == TOUCH) @@ -23,6 +60,12 @@ color = "#7A2B94" taste_message = "corporate assets going to waste" +/datum/reagent/plasma/reaction_temperature(exposed_temperature, exposed_volume) + if(exposed_temperature >= T0C + 100) + fireflash(get_turf(holder.my_atom), min(max(0, volume / 10), 8)) + if(holder) + holder.del_reagent(id) + /datum/reagent/plasma/on_mob_life(mob/living/M) var/update_flags = STATUS_UPDATE_NONE update_flags |= M.adjustToxLoss(1*REAGENTS_EFFECT_MULTIPLIER, FALSE) @@ -48,11 +91,27 @@ process_flags = ORGANIC | SYNTHETIC taste_message = "rust" -/datum/reagent/thermite/reaction_turf(turf/simulated/wall/W, volume) - if(volume >= 5 && istype(W)) - W.thermite = 1 - W.overlays.Cut() - W.overlays = image('icons/effects/effects.dmi', icon_state = "thermite") +/datum/reagent/thermite/reaction_temperature(exposed_temperature, exposed_volume) + var/turf/simulated/S = holder.my_atom + if(!istype(S)) + return + + if(exposed_temperature >= T0C + 100) + var/datum/reagents/Holder = holder + var/Id = id + var/Volume = volume + Holder.del_reagent(Id) + fireflash_sm(S, 0, rand(20000, 25000) + Volume * 2500, 0, 0, 1) + +/datum/reagent/thermite/reaction_turf(turf/simulated/S, volume) + if(istype(S)) + if(!S.reagents) + S.create_reagents(volume) + S.reagents.add_reagent("thermite", volume) + S.overlays.Cut() + S.overlays = image('icons/effects/effects.dmi', icon_state = "thermite") + if(S.active_hotspot) + S.reagents.temperature_reagents(S.active_hotspot.temperature, S.active_hotspot.volume, 10, 300) /datum/reagent/glycerol name = "Glycerol" @@ -87,21 +146,11 @@ update_flags |= M.adjustFireLoss(burndmg, FALSE) return ..() | update_flags -/datum/reagent/clf3/reaction_turf(turf/simulated/T, volume) - if(prob(1) && istype(T, /turf/simulated/floor/plating)) - var/turf/simulated/floor/plating/F = T - F.ChangeTurf(/turf/space) - if(istype(T, /turf/simulated/floor)) - var/turf/simulated/floor/F = T - if(prob(volume/10)) - F.make_plating() - if(istype(F, /turf/simulated/floor)) - new /obj/effect/hotspot(F) - if(prob(volume/10) && istype(T, /turf/simulated/wall)) - var/turf/simulated/wall/W = T - W.ChangeTurf(/turf/simulated/floor) - if(istype(T, /turf/simulated/shuttle)) - new /obj/effect/hotspot(T) +/datum/reagent/clf3/reaction_turf(turf/T, volume) + if(volume < 3) + return + var/radius = min((volume - 3) * 0.15, 3) + fireflash_sm(T, radius, 4500 + volume * 500, 350) /datum/reagent/clf3/reaction_mob(mob/living/M, method=TOUCH, volume) if(method == TOUCH) @@ -116,6 +165,15 @@ reagent_state = LIQUID color = "#FFA500" +/datum/reagent/sorium/reaction_turf(turf/T, volume) // oh no + if(prob(75)) + return + if(isspaceturf(T)) + return + if(!T.reagents) + T.create_reagents(50) + T.reagents.add_reagent("sorium", 5) + /datum/reagent/sorium_vortex name = "sorium_vortex" id = "sorium_vortex" @@ -130,6 +188,15 @@ color = "#800080" taste_message = "the end of the world" +/datum/reagent/liquid_dark_matter/reaction_turf(turf/T, volume) //Oh gosh, why + if(prob(75)) + return + if(isspaceturf(T)) + return + if(!T.reagents) + T.create_reagents(50) + T.reagents.add_reagent("liquid_dark_matter", 5) + /datum/reagent/ldm_vortex name = "LDM Vortex" id = "ldm_vortex" @@ -292,6 +359,12 @@ color = "#500064" // rgb: 80, 0, 100 taste_message = "corporate assets going to waste" +/datum/reagent/plasma_dust/reaction_temperature(exposed_temperature, exposed_volume) + if(exposed_temperature >= T0C + 100) + fireflash(get_turf(holder.my_atom), min(max(0, volume / 10), 8)) + if(holder) + holder.del_reagent(id) + /datum/reagent/plasma_dust/on_mob_life(mob/living/M) var/update_flags = STATUS_UPDATE_NONE update_flags |= M.adjustToxLoss(3, FALSE) diff --git a/code/modules/reagents/chemistry/recipes.dm b/code/modules/reagents/chemistry/recipes.dm index 3464b145f6a..78f46884273 100644 --- a/code/modules/reagents/chemistry/recipes.dm +++ b/code/modules/reagents/chemistry/recipes.dm @@ -65,17 +65,16 @@ var/list/chemical_mob_spawn_nicecritters = list() // and possible friendly mobs for(var/j = 1, j <= rand(1, 3), j++) step(C, pick(NORTH,SOUTH,EAST,WEST)) -/proc/goonchem_vortex(turf/simulated/T, setting_type, range, pull_times) - for(var/atom/movable/X in orange(range, T)) +/proc/goonchem_vortex(turf/T, setting_type, volume) + if(setting_type) + playsound(T, 'sound/effects/whoosh.ogg', 25, 1) //credit to Robinhood76 of Freesound.org for this. + else + playsound(T, 'sound/effects/bang.ogg', 25, 1) + for(var/atom/movable/X in view(2 + setting_type + (volume > 30 ? 1 : 0), T)) if(istype(X, /obj/effect)) continue //stop pulling smoke and hotspots please - if(istype(X, /atom/movable)) - if((X) && !X.anchored && X.move_resist <= MOVE_FORCE_DEFAULT) - if(setting_type) - playsound(T, 'sound/effects/bang.ogg', 25, 1) - for(var/i = 0, i < pull_times, i++) - step_away(X,T) - else - playsound(T, 'sound/effects/whoosh.ogg', 25, 1) //credit to Robinhood76 of Freesound.org for this. - for(var/i = 0, i < pull_times, i++) - step_towards(X,T) \ No newline at end of file + if(X && !X.anchored && X.move_resist <= MOVE_FORCE_DEFAULT) + if(setting_type) + X.throw_at(T, 20 + round(volume * 2), 1 + round(volume / 10)) + else + X.throw_at(get_edge_target_turf(T, get_dir(T, X)), 20 + round(volume * 2), 1 + round(volume / 10)) \ No newline at end of file diff --git a/code/modules/reagents/chemistry/recipes/drugs.dm b/code/modules/reagents/chemistry/recipes/drugs.dm index aa0a9c21714..d2499a06c54 100644 --- a/code/modules/reagents/chemistry/recipes/drugs.dm +++ b/code/modules/reagents/chemistry/recipes/drugs.dm @@ -19,9 +19,8 @@ /datum/chemical_reaction/crank/on_reaction(datum/reagents/holder, created_volume) var/turf/T = get_turf(holder.my_atom) - for(var/turf/turf in range(1,T)) - new /obj/effect/hotspot(turf) - explosion(T,0,0,2) + fireflash(holder.my_atom, 1) + explosion(T, 0, 0, 2) /datum/chemical_reaction/krokodil name = "Krokodil" diff --git a/code/modules/reagents/chemistry/recipes/others.dm b/code/modules/reagents/chemistry/recipes/others.dm index e06dec7de3f..c40c1213793 100644 --- a/code/modules/reagents/chemistry/recipes/others.dm +++ b/code/modules/reagents/chemistry/recipes/others.dm @@ -171,16 +171,6 @@ mix_message = "The mixture bubbles and gives off an unpleasant medicinal odor." mix_sound = 'sound/goonstation/misc/drinkfizz.ogg' -/datum/chemical_reaction/ash - name = "Ash" - id = "ash" - result = "ash" - required_reagents = list("oil" = 1) - result_amount = 0.5 - min_temp = T0C + 600 - mix_sound = null - no_message = 1 - /datum/chemical_reaction/colorful_reagent name = "colorful_reagent" id = "colorful_reagent" diff --git a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm index 8248a88b349..6c0c1566414 100644 --- a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm +++ b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm @@ -83,9 +83,7 @@ min_temp = T0C + 150 /datum/chemical_reaction/clf3/on_reaction(datum/reagents/holder, created_volume) - var/turf/T = get_turf(holder.my_atom) - for(var/turf/turf in range(1,T)) - new /obj/effect/hotspot(turf) + fireflash(holder.my_atom, 1, 7000) /datum/chemical_reaction/sorium name = "Sorium" @@ -98,7 +96,7 @@ if(holder.has_reagent("stabilizing_agent")) return var/turf/simulated/T = get_turf(holder.my_atom) - goonchem_vortex(T, 1, min(10, created_volume), min(11, created_volume + 1)) + goonchem_vortex(T, 0, created_volume) holder.remove_reagent("sorium", created_volume) /datum/chemical_reaction/sorium_vortex @@ -111,7 +109,7 @@ /datum/chemical_reaction/sorium_vortex/on_reaction(datum/reagents/holder, created_volume) var/turf/simulated/T = get_turf(holder.my_atom) - goonchem_vortex(T, 1, min(10, created_volume), min(11, created_volume + 1)) + goonchem_vortex(T, 0, created_volume) holder.remove_reagent("sorium_vortex", created_volume) /datum/chemical_reaction/liquid_dark_matter @@ -125,7 +123,7 @@ if(holder.has_reagent("stabilizing_agent")) return var/turf/simulated/T = get_turf(holder.my_atom) - goonchem_vortex(T, 0, min(10, created_volume), min(11, created_volume + 1)) + goonchem_vortex(T, 1, created_volume) holder.remove_reagent("liquid_dark_matter", created_volume) /datum/chemical_reaction/ldm_vortex @@ -138,7 +136,7 @@ /datum/chemical_reaction/ldm_vortex/on_reaction(datum/reagents/holder, created_volume) var/turf/simulated/T = get_turf(holder.my_atom) - goonchem_vortex(T, 0, min(10, created_volume), min(11, created_volume + 1)) + goonchem_vortex(T, 1, created_volume) holder.remove_reagent("ldm_vortex", created_volume) /datum/chemical_reaction/blackpowder diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index d7fa514d29d..098708bde57 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -22,6 +22,12 @@ reagents.add_reagent(reagent_id, tank_volume) ..() +/obj/structure/reagent_dispensers/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) + ..() + if(reagents) + for(var/i in 1 to 8) + reagents.temperature_reagents(exposed_temperature, exposed_volume) + /obj/structure/reagent_dispensers/proc/boom() visible_message("[src] ruptures!") chem_splash(loc, 5, list(reagents)) @@ -68,6 +74,7 @@ desc = "A tank full of industrial welding fuel. Do not consume." icon_state = "fuel" reagent_id = "fuel" + tank_volume = 4000 var/obj/item/assembly_holder/rig = null var/accepts_rig = 1 @@ -85,13 +92,13 @@ boom() /obj/structure/reagent_dispensers/fueltank/boom(var/rigtrigger = FALSE) // Prevent case where someone who rigged the tank is blamed for the explosion when the rig isn't what triggered the explosion - if(reagents.has_reagent("fuel")) - if(rigtrigger == TRUE) // If the explosion is triggered by an assembly holder - message_admins("A fueltank, last rigged by [lastrigger], exploded at [COORD(loc)]") // Then admin is informed of the last person who rigged the fuel tank - log_game("A fueltank, last rigged by [lastrigger], exploded at [COORD(loc)]") - investigate_log("A fueltank, last rigged by [lastrigger], exploded at [COORD(loc)]", INVESTIGATE_BOMB) - explosion(loc, 0, 1, 5, 7, 10, flame_range = 5) - qdel(src) + if(rigtrigger == TRUE) // If the explosion is triggered by an assembly holder + message_admins("A fueltank, last rigged by [lastrigger], was triggered at [COORD(loc)]") // Then admin is informed of the last person who rigged the fuel tank + log_game("A fueltank, last rigged by [lastrigger], triggered at [COORD(loc)]") + investigate_log("A fueltank, last rigged by [lastrigger], triggered at [COORD(loc)]", INVESTIGATE_BOMB) + if(reagents) + reagents.set_reagent_temp(1000) //uh-oh + qdel(src) /obj/structure/reagent_dispensers/fueltank/blob_act() boom() @@ -168,7 +175,7 @@ investigate_log("[key_name(user)] triggered a fueltank explosion at [COORD(loc)]", INVESTIGATE_BOMB) boom() else - ..() + return ..() /obj/structure/reagent_dispensers/fueltank/Move() ..() @@ -296,3 +303,4 @@ anchored = 1 density = 0 accepts_rig = 0 + tank_volume = 1000 From 23954aece6496ee4d944cf1a0f3ea49dbf706b40 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Wed, 20 Mar 2019 00:19:12 -0400 Subject: [PATCH 012/108] that's a lot of fire --- .../reagents/chemistry/reagents/alcohol.dm | 4 +- .../chemistry/reagents/pyrotechnic.dm | 163 ++++++++++++------ .../reagents/chemistry/reagents/water.dm | 3 +- .../chemistry/recipes/pyrotechnics.dm | 56 +++--- 4 files changed, 147 insertions(+), 79 deletions(-) diff --git a/code/modules/reagents/chemistry/reagents/alcohol.dm b/code/modules/reagents/chemistry/reagents/alcohol.dm index 88e2d685f57..d2fb4eec567 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol.dm @@ -1126,7 +1126,7 @@ /datum/reagent/consumable/ethanol/dragons_breath/reaction_mob(mob/living/M, method=TOUCH, volume) if(method == INGEST && prob(20)) if(M.on_fire) - M.adjust_fire_stacks(3) + M.adjust_fire_stacks(6) /datum/reagent/consumable/ethanol/dragons_breath/on_mob_life(mob/living/M) var/update_flags = STATUS_UPDATE_NONE @@ -1148,7 +1148,7 @@ if(prob(2 * volume)) to_chat(M, "OH GOD OH GOD PLEASE NO!!") if(M.on_fire) - M.adjust_fire_stacks(5) + M.adjust_fire_stacks(20) if(prob(50)) to_chat(M, "IT BURNS!!!!") M.visible_message("[M] is consumed in flames!") diff --git a/code/modules/reagents/chemistry/reagents/pyrotechnic.dm b/code/modules/reagents/chemistry/reagents/pyrotechnic.dm index 7761772a44c..f9c98130549 100644 --- a/code/modules/reagents/chemistry/reagents/pyrotechnic.dm +++ b/code/modules/reagents/chemistry/reagents/pyrotechnic.dm @@ -1,3 +1,80 @@ +/datum/reagent/phlogiston + name = "phlogiston" + id = "phlogiston" + description = "It appears to be liquid fire." + reagent_state = LIQUID + color = "#FFAF00" + process_flags = ORGANIC | SYNTHETIC + var/temp_fire = 4000 + var/temp_deviance = 1000 + var/size_divisor = 40 + var/mob_burning = 6.6 // 33 + +/datum/reagent/phlogiston/reaction_turf(turf/T, volume) + if(holder.chem_temp <= T0C - 50) + return + var/radius = min(max(0, volume / size_divisor), 8) + fireflash_sm(T, radius, rand(temp_fire - temp_deviance, temp_fire + temp_deviance), 500) + +/datum/reagent/phlogiston/reaction_mob(mob/living/M, method = TOUCH, volume) + if(holder.chem_temp <= T0C - 50) + return + M.adjust_fire_stacks(mob_burning) + M.IgniteMob() + if(method == INGEST) + M.adjustFireLoss(min(max(15, volume * 3), 45)) + to_chat(M, "It burns!") + M.emote("scream") + +/datum/reagent/phlogiston/on_mob_life(mob/living/M) + if(holder.chem_temp <= T0C - 50) + return + M.adjust_fire_stacks(0.4) + M.IgniteMob() + return ..() + +/datum/reagent/phlogiston/firedust + name = "phlogiston dust" + id = "phlogiston_dust" + description = "And this is solid fire. However that works." + temp_fire = 1500 + temp_deviance = 500 + size_divisor = 80 + mob_burning = 3 // 15 + +/datum/reagent/napalm + name = "napalm" + id = "napalm" + description = "A highly flammable jellied fuel." + reagent_state = LIQUID + process_flags = ORGANIC | SYNTHETIC + color = "#C86432" + +/datum/reagent/napalm/reaction_temperature(exposed_temperature, exposed_volume) + if(exposed_temperature > T0C + 100) + var/radius = min(max(0, volume * 0.15), 8) + fireflash_sm(get_turf(holder.my_atom), radius, rand(3000, 6000), 500) + if(holder) + holder.del_reagent(id) + +/datum/reagent/napalm/reaction_turf(turf/T, volume) + if(isspaceturf(T)) + return + if(!T.reagents) + T.create_reagents(volume) + T.reagents.add_reagent("napalm", volume) + +/datum/reagent/napalm/reaction_mob(mob/living/M, method = TOUCH, volume) + if(method == TOUCH) + if(M.on_fire) + M.adjust_fire_stacks(14) + M.emote("scream") + +/datum/reagent/napalm/on_mob_life(mob/living/M) + if(M.on_fire) + M.adjust_fire_stacks(2) + return ..() + /datum/reagent/fuel name = "Welding fuel" id = "fuel" @@ -8,6 +85,7 @@ drink_name = "Glass of welder fuel" drink_desc = "Unless you are an industrial tool, this is probably not safe for consumption." taste_message = "mistakes" + process_flags = ORGANIC | SYNTHETIC var/max_radius = 7 var/min_radius = 0 var/volume_radius_modifier = -0.15 @@ -19,6 +97,11 @@ var/volume_explosion_radius_modifier = 0 var/combustion_temp = T0C + 200 +/datum/reagent/fuel/on_mob_life(mob/living/M) + if(M.on_fire) + M.adjust_fire_stacks(0.4) + return ..() + /datum/reagent/fuel/reaction_temperature(exposed_temperature, exposed_volume) if(exposed_temperature > combustion_temp) if(volume < 1) @@ -48,9 +131,8 @@ /datum/reagent/fuel/reaction_mob(mob/living/M, method=TOUCH, volume)//Splashing people with welding fuel to make them easy to ignite! if(method == TOUCH) - M.adjust_fire_stacks(volume / 10) - return - ..() + if(M.on_fire) + M.adjust_fire_stacks(6) /datum/reagent/plasma name = "Plasma" @@ -76,10 +158,10 @@ C.adjustPlasma(10) return ..() | update_flags -/datum/reagent/plasma/reaction_mob(mob/living/M, method=TOUCH, volume)//Splashing people with plasma is stronger than fuel! +/datum/reagent/plasma/reaction_mob(mob/living/M, method = TOUCH, volume)//Splashing people with plasma is stronger than fuel! if(method == TOUCH) - M.adjust_fire_stacks(volume / 5) - ..() + if(M.on_fire) + M.adjust_fire_stacks(6) /datum/reagent/thermite @@ -91,6 +173,11 @@ process_flags = ORGANIC | SYNTHETIC taste_message = "rust" +/datum/reagent/thermite/reaction_mob(mob/living/M, method= TOUCH, volume) + if(method == TOUCH) + if(M.on_fire) + M.adjust_fire_stacks(20) + /datum/reagent/thermite/reaction_temperature(exposed_temperature, exposed_volume) var/turf/simulated/S = holder.my_atom if(!istype(S)) @@ -140,11 +227,9 @@ taste_message = null /datum/reagent/clf3/on_mob_life(mob/living/M) - var/update_flags = STATUS_UPDATE_NONE - M.adjust_fire_stacks(2) - var/burndmg = max(0.3*M.fire_stacks, 0.3) - update_flags |= M.adjustFireLoss(burndmg, FALSE) - return ..() | update_flags + if(M.on_fire) + M.adjust_fire_stacks(1) + return ..() /datum/reagent/clf3/reaction_turf(turf/T, volume) if(volume < 3) @@ -152,11 +237,14 @@ var/radius = min((volume - 3) * 0.15, 3) fireflash_sm(T, radius, 4500 + volume * 500, 350) -/datum/reagent/clf3/reaction_mob(mob/living/M, method=TOUCH, volume) - if(method == TOUCH) - M.adjust_fire_stacks(min(volume/5, 10)) +/datum/reagent/clf3/reaction_mob(mob/living/M, method = TOUCH, volume) + if(method == TOUCH || method == INGEST) + M.adjust_fire_stacks(10) M.IgniteMob() - M.bodytemperature += 30 + if(method == INGEST) + M.adjustFireLoss(min(max(30, volume * 6), 90)) + to_chat(M, "It burns!") + M.emote("scream") /datum/reagent/sorium name = "Sorium" @@ -224,6 +312,7 @@ description = "Makes a very bright flash." reagent_state = LIQUID color = "#FFFF00" + penetrates_skin = TRUE /datum/reagent/smoke_powder name = "Smoke Powder" @@ -238,42 +327,7 @@ description = "Makes a deafening noise." reagent_state = LIQUID color = "#0000FF" - -/datum/reagent/phlogiston - name = "Phlogiston" - id = "phlogiston" - description = "Catches you on fire and makes you ignite." - reagent_state = LIQUID - color = "#FF9999" - process_flags = ORGANIC | SYNTHETIC - -/datum/reagent/phlogiston/on_mob_life(mob/living/M) - var/update_flags = STATUS_UPDATE_NONE - M.adjust_fire_stacks(1) - var/burndmg = max(0.3*M.fire_stacks, 0.3) - update_flags |= M.adjustFireLoss(burndmg, FALSE) - return ..() | update_flags - -/datum/reagent/phlogiston/reaction_mob(mob/living/M, method=TOUCH, volume) - M.adjust_fire_stacks(1) - M.IgniteMob() - ..() - -/datum/reagent/napalm - name = "Napalm" - id = "napalm" - description = "Very flammable." - reagent_state = LIQUID - color = "#FF9999" - process_flags = ORGANIC | SYNTHETIC - -/datum/reagent/napalm/on_mob_life(mob/living/M) - M.adjust_fire_stacks(1) - return ..() - -/datum/reagent/napalm/reaction_mob(mob/living/M, method=TOUCH, volume) - if(method == TOUCH) - M.adjust_fire_stacks(min(volume/4, 20)) + penetrates_skin = TRUE /datum/reagent/cryostylane name = "Cryostylane" @@ -296,6 +350,10 @@ holder.temperature_reagents(holder.chem_temp - 200) ..() +/datum/reagent/cryostylane/reaction_mob(mob/living/M, method = TOUCH, volume) + if(method == TOUCH) + M.ExtinguishMob() + /datum/reagent/cryostylane/reaction_turf(turf/T, volume) if(volume >= 5) for(var/mob/living/carbon/slime/M in T) @@ -333,8 +391,7 @@ /datum/reagent/firefighting_foam/reaction_mob(mob/living/M, method=TOUCH, volume) // Put out fire if(method == TOUCH) - M.adjust_fire_stacks(-(volume / 5)) // more effective than water - M.ExtinguishMob() + M.adjust_fire_stacks(-10) // more effective than water /datum/reagent/firefighting_foam/reaction_obj(obj/O, volume) O.extinguish() diff --git a/code/modules/reagents/chemistry/reagents/water.dm b/code/modules/reagents/chemistry/reagents/water.dm index 6d8ea272cfe..5623023659b 100644 --- a/code/modules/reagents/chemistry/reagents/water.dm +++ b/code/modules/reagents/chemistry/reagents/water.dm @@ -23,8 +23,7 @@ /datum/reagent/water/reaction_mob(mob/living/M, method=TOUCH, volume) if(method == TOUCH) // Put out fire - M.adjust_fire_stacks(-(volume / 10)) - M.ExtinguishMob() + M.adjust_fire_stacks(-(volume * 0.2)) if(ishuman(M)) var/mob/living/carbon/human/H = M diff --git a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm index 6c0c1566414..55c7de4d326 100644 --- a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm +++ b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm @@ -212,6 +212,40 @@ datum/chemical_reaction/flash_powder continue C.Stun(5) +/datum/chemical_reaction/phlogiston + name = "Phlogiston" + id = "phlogiston" + result = "phlogiston" + required_reagents = list("phosphorus" = 1, "plasma" = 1, "sacid" = 1, "stabilizing_agent" = 1) + result_amount = 4 + mix_message = "The substance becomes sticky and extremely warm." + +/datum/chemical_reaction/phlogiston_dust + name = "Phlogiston Dust" + id = "phlogiston_dust" + result = "phlogiston_dust" + required_reagents = list("phlogiston" = 1, "charcoal" = 1, "phosphorus" = 1, "sulfur" = 1) + result_amount = 2 + mix_message = "The substance becomes a pile of burning dust." + +/datum/chemical_reaction/phlogiston_fire //This MUST be above the smoke recipe. + name = "Phlogiston Fire" + id = "phlogiston_fire" + result = "phlogiston" + required_reagents = list("phosphorus" = 1, "plasma" = 1, "sacid" = 1) + mix_message = "The substance erupts into wild flames." + +/datum/chemical_reaction/phlogiston_fire/on_reaction(datum/reagents/holder, created_volume) + fireflash(get_turf(holder.my_atom), min(max(2, round(created_volume / 10)), 8)) + +/datum/chemical_reaction/napalm + name = "Napalm" + id = "napalm" + result = "napalm" + required_reagents = list("fuel" = 1, "sugar" = 1, "ethanol" = 1) + result_amount = 3 + mix_message = "The mixture congeals into a sticky gel." + /datum/chemical_reaction/smoke_powder name = "smoke_powder" id = "smoke_powder" @@ -337,28 +371,6 @@ datum/chemical_reaction/flash_powder if(ears.ear_damage >= 5) to_chat(M, "Your ears start to ring!") - -/datum/chemical_reaction/phlogiston - name = "phlogiston" - id = "phlogiston" - result = "phlogiston" - required_reagents = list("phosphorus" = 1, "sacid" = 1, "plasma" = 1) - result_amount = 3 - -/datum/chemical_reaction/phlogiston/on_reaction(datum/reagents/holder, created_volume) - if(holder.has_reagent("stabilizing_agent")) - return - var/turf/simulated/T = get_turf(holder.my_atom) - for(var/turf/simulated/turf in range(min(created_volume/10,4),T)) - new /obj/effect/hotspot(turf) - -/datum/chemical_reaction/napalm - name = "Napalm" - id = "napalm" - result = "napalm" - required_reagents = list("sugar" = 1, "fuel" = 1, "ethanol" = 1 ) - result_amount = 1 - /datum/chemical_reaction/cryostylane name = "cryostylane" id = "cryostylane" From 6caec96c2a60790ccc8e721bd218273f4a88ad1a Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Wed, 20 Mar 2019 01:56:46 -0400 Subject: [PATCH 013/108] fixed --- code/game/objects/items/weapons/tools.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 7fb2a50e65a..5eb7a5b30ff 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -469,7 +469,6 @@ /obj/item/weldingtool/afterattack(atom/O, mob/user, proximity) if(!proximity) return - ..() if(welding) remove_fuel(1) var/turf/location = get_turf(user) From 535a0bf84f48f710a74ea26f3967bdb1ce93ab62 Mon Sep 17 00:00:00 2001 From: AzuleUtama <44248086+AzuleUtama@users.noreply.github.com> Date: Wed, 20 Mar 2019 19:06:30 +0000 Subject: [PATCH 014/108] oopsies i did a silly --- code/datums/uplink_item.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/datums/uplink_item.dm b/code/datums/uplink_item.dm index e421028f71a..392908127d0 100644 --- a/code/datums/uplink_item.dm +++ b/code/datums/uplink_item.dm @@ -352,6 +352,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) job = list("Research Director") //Roboticist +/datum/uplink_item/jobspecific/syndiemmi name = "Syndicate MMI" desc = "A syndicate developed man-machine-interface which will make any cyborg it is inserted into follow the standard syndicate lawset." reference = "SMMI" From aba98f6cb2441c63125926f0414f6a3287337b5f Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Wed, 20 Mar 2019 17:11:30 -0400 Subject: [PATCH 015/108] fake hotspots --- code/LINDA/LINDA_fire.dm | 46 ++++++++++++++----- .../chemistry/reagents/pyrotechnic.dm | 10 ++-- code/modules/reagents/reagent_dispenser.dm | 7 +-- 3 files changed, 44 insertions(+), 19 deletions(-) diff --git a/code/LINDA/LINDA_fire.dm b/code/LINDA/LINDA_fire.dm index dad05f32c99..7c56277e7ab 100644 --- a/code/LINDA/LINDA_fire.dm +++ b/code/LINDA/LINDA_fire.dm @@ -59,11 +59,14 @@ var/temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST var/just_spawned = 1 var/bypassing = 0 + var/fake = FALSE + var/burn_time = 0 /obj/effect/hotspot/New() ..() - SSair.hotspots += src - perform_exposure() + if(!fake) + SSair.hotspots += src + perform_exposure() dir = pick(cardinal) air_update_turf() @@ -162,7 +165,8 @@ /obj/effect/hotspot/Destroy() set_light(0) SSair.hotspots -= src - DestroyTurf() + if(!fake) + DestroyTurf() if(istype(loc, /turf/simulated)) var/turf/simulated/T = loc if(T.active_hotspot == src) @@ -190,6 +194,15 @@ if(isliving(L)) L.fire_act() +/obj/effect/hotspot/fake // Largely for the fireflash procs below + fake = TRUE + burn_time = 30 + +/obj/effect/hotspot/fake/New() + ..() + if(burn_time) + QDEL_IN(src, burn_time) + /proc/fireflash(atom/center, radius, temp) if(!temp) temp = rand(2800, 3200) @@ -201,14 +214,18 @@ if(!can_line(get_turf(center), T, radius + 1)) continue - var/obj/effect/hotspot/H = new(T) + var/obj/effect/hotspot/fake/H = new(T) H.temperature = temp H.volume = 400 - if(istype(T, /turf/simulated)) - var/turf/simulated/S = T - S.active_hotspot = H + H.color = heat2color(H.temperature) + H.set_light(l_color = H.color) T.hotspot_expose(H.temperature, H.volume) + for(var/atom/A in T) + if(isliving(A)) + continue + if(A != H) + A.fire_act(null, H.temperature, H.volume) if(istype(T, /turf/simulated/floor)) var/turf/simulated/floor/F = T @@ -248,14 +265,13 @@ var/need_expose = 0 var/expose_temp = 0 if(!existing_hotspot) - var/obj/effect/hotspot/H = new(T) + var/obj/effect/hotspot/fake/H = new(T) need_expose = TRUE H.temperature = temp - dist * falloff expose_temp = H.temperature H.volume = 400 - if(istype(T, /turf/simulated)) - var/turf/simulated/S = T - S.active_hotspot = H + H.color = heat2color(H.temperature) + H.set_light(l_color = H.color) existing_hotspot = H else if(existing_hotspot.temperature < temp - dist * falloff) @@ -264,15 +280,23 @@ if(expose_temp > prev_temp * 3) need_expose = TRUE existing_hotspot.temperature = temp - dist * falloff + existing_hotspot.color = heat2color(existing_hotspot.temperature) + existing_hotspot.set_light(l_color = existing_hotspot.color) affected[T] = existing_hotspot.temperature if(need_expose && expose_temp) T.hotspot_expose(expose_temp, existing_hotspot.volume) + for(var/atom/A in T) + if(isliving(A)) + continue + if(A != existing_hotspot) + A.fire_act(null, expose_temp, existing_hotspot.volume) if(istype(T, /turf/simulated/floor)) var/turf/simulated/floor/F = T F.burn_tile() for(var/mob/living/L in T) L.adjust_fire_stacks(3) + L.IgniteMob() L.bodytemperature = (2 * L.bodytemperature + temp) / 3 if(T.density) diff --git a/code/modules/reagents/chemistry/reagents/pyrotechnic.dm b/code/modules/reagents/chemistry/reagents/pyrotechnic.dm index f9c98130549..fb58e351a03 100644 --- a/code/modules/reagents/chemistry/reagents/pyrotechnic.dm +++ b/code/modules/reagents/chemistry/reagents/pyrotechnic.dm @@ -198,7 +198,7 @@ S.overlays.Cut() S.overlays = image('icons/effects/effects.dmi', icon_state = "thermite") if(S.active_hotspot) - S.reagents.temperature_reagents(S.active_hotspot.temperature, S.active_hotspot.volume, 10, 300) + S.reagents.temperature_reagents(S.active_hotspot.temperature, 10, 300) /datum/reagent/glycerol name = "Glycerol" @@ -344,8 +344,8 @@ /datum/reagent/cryostylane/on_tick() if(holder.has_reagent("oxygen")) - holder.remove_reagent("oxygen", 1) - holder.remove_reagent("cryostylane", 1) + holder.remove_reagent("oxygen", 2) + holder.remove_reagent("cryostylane", 2) holder.temperature_reagents(holder.chem_temp - 200) holder.temperature_reagents(holder.chem_temp - 200) ..() @@ -374,8 +374,8 @@ /datum/reagent/pyrosium/on_tick() if(holder.has_reagent("oxygen")) - holder.remove_reagent("oxygen", 1) - holder.remove_reagent("pyrosium", 1) + holder.remove_reagent("oxygen", 2) + holder.remove_reagent("pyrosium", 2) holder.temperature_reagents(holder.chem_temp + 200) holder.temperature_reagents(holder.chem_temp + 200) ..() diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index 098708bde57..b3c98f82b54 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -26,7 +26,8 @@ ..() if(reagents) for(var/i in 1 to 8) - reagents.temperature_reagents(exposed_temperature, exposed_volume) + if(reagents) + reagents.temperature_reagents(exposed_temperature) /obj/structure/reagent_dispensers/proc/boom() visible_message("[src] ruptures!") @@ -91,8 +92,8 @@ investigate_log("[key_name(P.firer)] triggered a fueltank explosion with [P.name] at [COORD(loc)]", INVESTIGATE_BOMB) boom() -/obj/structure/reagent_dispensers/fueltank/boom(var/rigtrigger = FALSE) // Prevent case where someone who rigged the tank is blamed for the explosion when the rig isn't what triggered the explosion - if(rigtrigger == TRUE) // If the explosion is triggered by an assembly holder +/obj/structure/reagent_dispensers/fueltank/boom(rigtrigger = FALSE) // Prevent case where someone who rigged the tank is blamed for the explosion when the rig isn't what triggered the explosion + if(rigtrigger) // If the explosion is triggered by an assembly holder message_admins("A fueltank, last rigged by [lastrigger], was triggered at [COORD(loc)]") // Then admin is informed of the last person who rigged the fuel tank log_game("A fueltank, last rigged by [lastrigger], triggered at [COORD(loc)]") investigate_log("A fueltank, last rigged by [lastrigger], triggered at [COORD(loc)]", INVESTIGATE_BOMB) From c3d93ef4481d83ac108894416df03fe73bc37745 Mon Sep 17 00:00:00 2001 From: Kyep Date: Thu, 21 Mar 2019 06:16:26 -0700 Subject: [PATCH 016/108] Makes blob monsters no longer spawn in xenobio --- code/game/gamemodes/blob/blobs/blob_mobs.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/game/gamemodes/blob/blobs/blob_mobs.dm b/code/game/gamemodes/blob/blobs/blob_mobs.dm index 94999bda5bb..a0e9ab2b5a0 100644 --- a/code/game/gamemodes/blob/blobs/blob_mobs.dm +++ b/code/game/gamemodes/blob/blobs/blob_mobs.dm @@ -13,6 +13,7 @@ maxbodytemp = 360 universal_speak = 1 //So mobs can understand them when a blob uses Blob Broadcast sentience_type = SENTIENCE_OTHER + gold_core_spawnable = CHEM_MOB_SPAWN_INVALID var/mob/camera/blob/overmind = null /mob/living/simple_animal/hostile/blob/proc/adjustcolors(var/a_color) From b2a6d883bdf2e7ebceb999675c6e1fb654bd6138 Mon Sep 17 00:00:00 2001 From: Kyep Date: Thu, 21 Mar 2019 07:44:19 -0700 Subject: [PATCH 017/108] deletes blobmob checks on move/attack --- code/game/gamemodes/blob/blobs/blob_mobs.dm | 7 ------- code/game/gamemodes/blob/theblob.dm | 3 --- 2 files changed, 10 deletions(-) diff --git a/code/game/gamemodes/blob/blobs/blob_mobs.dm b/code/game/gamemodes/blob/blobs/blob_mobs.dm index a0e9ab2b5a0..ce95494b8ac 100644 --- a/code/game/gamemodes/blob/blobs/blob_mobs.dm +++ b/code/game/gamemodes/blob/blobs/blob_mobs.dm @@ -24,13 +24,6 @@ return -/mob/living/simple_animal/hostile/blob/AttackingTarget() - if(ckey) - if(istype(target, /obj/structure/blob)) - return FALSE - return ..() - - //////////////// // BLOB SPORE // //////////////// diff --git a/code/game/gamemodes/blob/theblob.dm b/code/game/gamemodes/blob/theblob.dm index b5212c8708f..35f4296be6c 100644 --- a/code/game/gamemodes/blob/theblob.dm +++ b/code/game/gamemodes/blob/theblob.dm @@ -34,9 +34,6 @@ if(height==0) return 1 if(istype(mover) && mover.checkpass(PASSBLOB)) - var/mob/living/L = mover - if(istype(L) && L.ckey) - return 0 return 1 return 0 From a34f1054cef5a44a67fdac3b67b811137c6071dd Mon Sep 17 00:00:00 2001 From: Tails2091 Date: Thu, 21 Mar 2019 14:35:00 -0400 Subject: [PATCH 018/108] Add Cat/Corgi emotes and sounds Organized creature sounds into creature sound folder. --- code/game/objects/items/toys.dm | 4 +- code/modules/clothing/head/misc.dm | 2 +- code/modules/clothing/masks/gasmask.dm | 2 +- .../mob/living/simple_animal/friendly/cat.dm | 36 +++++++++++++++++ .../living/simple_animal/friendly/corgi.dm | 38 ++++++++++++++++++ .../living/simple_animal/friendly/diona.dm | 2 +- .../living/simple_animal/friendly/mouse.dm | 4 +- sound/creatures/cat_meow.ogg | Bin 0 -> 8335 bytes sound/{misc => creatures}/caw.ogg | Bin sound/creatures/dog_bark1.ogg | Bin 0 -> 7861 bytes sound/creatures/dog_bark2.ogg | Bin 0 -> 12094 bytes sound/creatures/dog_yelp.ogg | Bin 0 -> 8173 bytes sound/{misc => creatures}/hoot.ogg | Bin .../mousesqueak.ogg} | Bin sound/{misc => creatures}/nymphchirp.ogg | Bin 15 files changed, 81 insertions(+), 7 deletions(-) create mode 100644 sound/creatures/cat_meow.ogg rename sound/{misc => creatures}/caw.ogg (100%) create mode 100644 sound/creatures/dog_bark1.ogg create mode 100644 sound/creatures/dog_bark2.ogg create mode 100644 sound/creatures/dog_yelp.ogg rename sound/{misc => creatures}/hoot.ogg (100%) rename sound/{effects/mousesqueek.ogg => creatures/mousesqueak.ogg} (100%) rename sound/{misc => creatures}/nymphchirp.ogg (100%) diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 0c742d49236..1651a561bbd 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -1155,7 +1155,7 @@ obj/item/toy/cards/deck/syndicate/black if(!cooldown) //for the sanity of everyone var/message = pick("You won't get away this time, Griffin!", "Stop right there, criminal!", "Hoot! Hoot!", "I am the night!") to_chat(user, "You pull the string on the [src].") - playsound(user, 'sound/misc/hoot.ogg', 25, 1) + playsound(user, 'sound/creatures/hoot.ogg', 25, 1) visible_message("[bicon(src)] [message]") cooldown = 1 spawn(30) cooldown = 0 @@ -1174,7 +1174,7 @@ obj/item/toy/cards/deck/syndicate/black if(!cooldown) //for the sanity of everyone var/message = pick("You can't stop me, Owl!", "My plan is flawless! The vault is mine!", "Caaaawwww!", "You will never catch me!") to_chat(user, "You pull the string on the [src].") - playsound(user, 'sound/misc/caw.ogg', 25, 1) + playsound(user, 'sound/creatures/caw.ogg', 25, 1) visible_message("[bicon(src)] [message]") cooldown = 1 spawn(30) cooldown = 0 diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm index e5c81eb8d18..ff497f909ba 100644 --- a/code/modules/clothing/head/misc.dm +++ b/code/modules/clothing/head/misc.dm @@ -424,7 +424,7 @@ /obj/item/clothing/head/griffin/proc/caw() if(cooldown < world.time - 20) // A cooldown, to stop people being jerks - playsound(src.loc, 'sound/misc/caw.ogg', 50, 1) + playsound(src.loc, 'sound/creatures/caw.ogg', 50, 1) cooldown = world.time diff --git a/code/modules/clothing/masks/gasmask.dm b/code/modules/clothing/masks/gasmask.dm index 76db9086ebd..cb12bb6ae0f 100644 --- a/code/modules/clothing/masks/gasmask.dm +++ b/code/modules/clothing/masks/gasmask.dm @@ -187,7 +187,7 @@ /obj/item/clothing/mask/gas/owl_mask/proc/hoot() if(cooldown < world.time - 35) // A cooldown, to stop people being jerks - playsound(src.loc, 'sound/misc/hoot.ogg', 50, 1) + playsound(src.loc, 'sound/creatures/hoot.ogg', 50, 1) cooldown = world.time // ******************************************************************** diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index e1d61c5aa55..be70338664d 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -11,6 +11,7 @@ speak_emote = list("purrs", "meows") emote_hear = list("meows", "mews") emote_see = list("shakes its head", "shivers") + var/meow_sound = 'sound/creatures/cat_meow.ogg' //Used in emote. speak_chance = 1 turns_per_move = 5 see_in_dark = 6 @@ -146,6 +147,40 @@ stop_automated_movement = 1 walk_to(src,movement_target,0,3) +/mob/living/simple_animal/pet/cat/emote(act, m_type=1, message = null) + if(stat != CONSCIOUS) + return + + var/on_CD = 0 + act = lowertext(act) + switch(act) + if("meow") + on_CD = handle_emote_CD() + if("hiss") + on_CD = handle_emote_CD() + if("purr") + on_CD = handle_emote_CD() + else + on_CD = 0 + + if(on_CD == 1) + return + + switch(act) + if("meow") + message = "[src] meows!" + m_type = 2 //audible + playsound(src, meow_sound, 50, 0.75) + if("hiss") + message = "[src] hisses!" + m_type = 2 + if("purr") + message = "[src] purrs." + m_type = 2 + if("help") + to_chat(src, "scream, meow, hiss, purr") + + ..() /mob/living/simple_animal/pet/cat/Proc name = "Proc" @@ -168,6 +203,7 @@ icon_living = "Syndicat" icon_dead = "Syndicat_dead" icon_resting = "Syndicat_rest" + meow_sound = null //Need robo-meow. gender = FEMALE mutations = list(BREATHLESS) faction = list("syndicate") diff --git a/code/modules/mob/living/simple_animal/friendly/corgi.dm b/code/modules/mob/living/simple_animal/friendly/corgi.dm index e26a004e2c3..7cb9d709228 100644 --- a/code/modules/mob/living/simple_animal/friendly/corgi.dm +++ b/code/modules/mob/living/simple_animal/friendly/corgi.dm @@ -13,6 +13,8 @@ speak_emote = list("barks", "woofs") emote_hear = list("barks", "woofs", "yaps","pants") emote_see = list("shakes its head", "shivers") + var/bark_sound = list('sound/creatures/dog_bark1.ogg','sound/creatures/dog_bark2.ogg') //Used in emote. + var/yelp_sound = 'sound/creatures/dog_yelp.ogg' //Used on death. speak_chance = 1 turns_per_move = 10 butcher_results = list(/obj/item/reagent_containers/food/snacks/meat/corgi = 3) @@ -394,6 +396,40 @@ return valid +/mob/living/simple_animal/pet/corgi/death(gibbed) + playsound(src, yelp_sound, 75, 1) + ..() + +/mob/living/simple_animal/pet/corgi/emote(act, m_type=1, message = null) + if(stat != CONSCIOUS) + return + + var/on_CD = 0 + act = lowertext(act) + switch(act) + if("bark") + on_CD = handle_emote_CD() + if("growl") + on_CD = handle_emote_CD() + else + on_CD = 0 + + if(on_CD == 1) + return + + switch(act) + if("bark") + message = "[src] [pick(src.speak_emote)]!" + m_type = 2 //audible + playsound(src, pick(src.bark_sound), 50, 0.85) + if("growl") + message = "[src] growls!" + m_type = 2 //audible + if("help") + to_chat(src, "scream, bark, growl") + + ..() + //IAN! SQUEEEEEEEEE~ /mob/living/simple_animal/pet/corgi/Ian @@ -567,6 +603,8 @@ desc = "It's a borgi." icon_state = "borgi" icon_living = "borgi" + bark_sound = null //No robo-bjork... + yelp_sound = null //Or robo-Yelp. var/emagged = 0 atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0) minbodytemp = 0 diff --git a/code/modules/mob/living/simple_animal/friendly/diona.dm b/code/modules/mob/living/simple_animal/friendly/diona.dm index 0ca0d287ede..49ab7f83f6d 100644 --- a/code/modules/mob/living/simple_animal/friendly/diona.dm +++ b/code/modules/mob/living/simple_animal/friendly/diona.dm @@ -32,7 +32,7 @@ melee_damage_upper = 8 attacktext = "bites" attack_sound = 'sound/weapons/bite.ogg' - var/chirp_sound = 'sound/misc/nymphchirp.ogg' //used in emote + var/chirp_sound = 'sound/creatures/nymphchirp.ogg' //used in emote speed = 0 stop_automated_movement = 0 diff --git a/code/modules/mob/living/simple_animal/friendly/mouse.dm b/code/modules/mob/living/simple_animal/friendly/mouse.dm index e6cc5fb8dc8..d5d981f5df7 100644 --- a/code/modules/mob/living/simple_animal/friendly/mouse.dm +++ b/code/modules/mob/living/simple_animal/friendly/mouse.dm @@ -9,7 +9,7 @@ speak_emote = list("squeeks","squeaks","squiks") emote_hear = list("squeeks","squeaks","squiks") emote_see = list("runs in a circle", "shakes", "scritches at something") - var/squeak_sound = 'sound/effects/mousesqueek.ogg' + var/squeak_sound = 'sound/creatures/mousesqueak.ogg' speak_chance = 1 turns_per_move = 5 see_in_dark = 6 @@ -72,7 +72,6 @@ desc = "It's a small [mouse_color] rodent, often seen hiding in maintenance areas and making a nuisance of itself." /mob/living/simple_animal/mouse/proc/splat() - playsound(src, squeak_sound, 40, 1) src.health = 0 src.stat = DEAD src.icon_dead = "mouse_[mouse_color]_splat" @@ -100,6 +99,7 @@ /mob/living/simple_animal/mouse/death(gibbed) // Only execute the below if we successfully died + playsound(src, squeak_sound, 40, 1) . = ..(gibbed) if(!.) return FALSE diff --git a/sound/creatures/cat_meow.ogg b/sound/creatures/cat_meow.ogg new file mode 100644 index 0000000000000000000000000000000000000000..f52cbd2a172ffa153b8e7cdc0dd677612d864f29 GIT binary patch literal 8335 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 literal 0 HcmV?d00001 diff --git a/sound/misc/caw.ogg b/sound/creatures/caw.ogg similarity index 100% rename from sound/misc/caw.ogg rename to sound/creatures/caw.ogg diff --git a/sound/creatures/dog_bark1.ogg b/sound/creatures/dog_bark1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..809f3897c889e6e3872aa0edfcf84b217f9aea98 GIT binary patch literal 7861 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 literal 0 HcmV?d00001 diff --git a/sound/creatures/dog_yelp.ogg b/sound/creatures/dog_yelp.ogg new file mode 100644 index 0000000000000000000000000000000000000000..22f1586014dc1d5e10922c07d737356dda6cb4f4 GIT binary patch literal 8173 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 T!j%(W?87{abg!SP5{3RB?L8k{ literal 0 HcmV?d00001 diff --git a/sound/misc/hoot.ogg b/sound/creatures/hoot.ogg similarity index 100% rename from sound/misc/hoot.ogg rename to sound/creatures/hoot.ogg diff --git a/sound/effects/mousesqueek.ogg b/sound/creatures/mousesqueak.ogg similarity index 100% rename from sound/effects/mousesqueek.ogg rename to sound/creatures/mousesqueak.ogg diff --git a/sound/misc/nymphchirp.ogg b/sound/creatures/nymphchirp.ogg similarity index 100% rename from sound/misc/nymphchirp.ogg rename to sound/creatures/nymphchirp.ogg From 46e550d025fa46699edaa07c6cc66bd4d5b45a15 Mon Sep 17 00:00:00 2001 From: Tails2091 Date: Thu, 21 Mar 2019 14:41:35 -0400 Subject: [PATCH 019/108] Cat and Mouse choose from emote_hear list --- code/modules/mob/living/simple_animal/friendly/cat.dm | 2 +- code/modules/mob/living/simple_animal/friendly/mouse.dm | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/mob/living/simple_animal/friendly/cat.dm b/code/modules/mob/living/simple_animal/friendly/cat.dm index be70338664d..bc801b229f0 100644 --- a/code/modules/mob/living/simple_animal/friendly/cat.dm +++ b/code/modules/mob/living/simple_animal/friendly/cat.dm @@ -168,7 +168,7 @@ switch(act) if("meow") - message = "[src] meows!" + message = "[src] [pick(emote_hear)]!" m_type = 2 //audible playsound(src, meow_sound, 50, 0.75) if("hiss") diff --git a/code/modules/mob/living/simple_animal/friendly/mouse.dm b/code/modules/mob/living/simple_animal/friendly/mouse.dm index d5d981f5df7..c0c8f4312a5 100644 --- a/code/modules/mob/living/simple_animal/friendly/mouse.dm +++ b/code/modules/mob/living/simple_animal/friendly/mouse.dm @@ -124,7 +124,7 @@ switch(act) if("squeak") - message = "\The [src] squeaks!" + message = "\The [src] [pick(emote_hear)]!" m_type = 2 //audible playsound(src, squeak_sound, 40, 1) if("help") From f77fbe9d0ce760e0bf6b5265c5f605dc129d05ee Mon Sep 17 00:00:00 2001 From: Tails2091 Date: Thu, 21 Mar 2019 15:21:48 -0400 Subject: [PATCH 020/108] Added license information --- sound/creatures/license.txt | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 sound/creatures/license.txt diff --git a/sound/creatures/license.txt b/sound/creatures/license.txt new file mode 100644 index 00000000000..119e4e3d21c --- /dev/null +++ b/sound/creatures/license.txt @@ -0,0 +1,2 @@ +dog_yelp.ogg is DogYelp.wav, by TobiasKosmos (https://freesound.org/people/TobiasKosmos/sounds/163280/). It has been licensed under CC-BY 3.0 license. +It has been cropped, EQ'd, and compressed to .ogg for in-game use. \ No newline at end of file From 85b9fe2ebe45f4bfa2a82d6d73fb109452c102d9 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Thu, 21 Mar 2019 16:28:46 -0400 Subject: [PATCH 021/108] lower fire damage --- code/modules/mob/living/carbon/_defines.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/carbon/_defines.dm b/code/modules/mob/living/carbon/_defines.dm index 163ce8f7c8d..483502965da 100644 --- a/code/modules/mob/living/carbon/_defines.dm +++ b/code/modules/mob/living/carbon/_defines.dm @@ -4,7 +4,7 @@ #define HEAT_DAMAGE_LEVEL_1 2 //Amount of damage applied when your body temperature just passes the 360.15k safety point #define HEAT_DAMAGE_LEVEL_2 3 //Amount of damage applied when your body temperature passes the 400K point -#define HEAT_DAMAGE_LEVEL_3 10 //Amount of damage applied when your body temperature passes the 1000K point +#define HEAT_DAMAGE_LEVEL_3 5 //Amount of damage applied when your body temperature passes the 1000K point #define COLD_DAMAGE_LEVEL_1 0.5 //Amount of damage applied when your body temperature just passes the 260.15k safety point #define COLD_DAMAGE_LEVEL_2 1.5 //Amount of damage applied when your body temperature passes the 200K point From a0c445d7eb8aaf7878a30eb0039c44c780cc1c0b Mon Sep 17 00:00:00 2001 From: Eman Date: Fri, 22 Mar 2019 16:31:53 +0100 Subject: [PATCH 022/108] Hatching as a shadowling will reset your HUD. This is only useful in those cases where, for some reason, you are a monkey and use the shadowling hatch ability. Without this change, upon doing the above mentioned thing, your HUD would still be using the monkey version. --- code/game/gamemodes/shadowling/special_shadowling_abilities.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/game/gamemodes/shadowling/special_shadowling_abilities.dm b/code/game/gamemodes/shadowling/special_shadowling_abilities.dm index a561fe6a273..29a2c9aadca 100644 --- a/code/game/gamemodes/shadowling/special_shadowling_abilities.dm +++ b/code/game/gamemodes/shadowling/special_shadowling_abilities.dm @@ -107,6 +107,8 @@ var/list/possibleShadowlingNames = list("U'ruan", "Y`shej", "Nex", "Hel-uae", "N H.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/collective_mind(null)) H.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/shadowling_regenarmor(null)) H.mind.AddSpell(new /obj/effect/proc_holder/spell/targeted/shadowling_extend_shuttle(null)) + H.hud_used = new /datum/hud/human(H, ui_style2icon(H.client.prefs.UI_style), H.client.prefs.UI_style_color, H.client.prefs.UI_style_alpha) + H.hud_used.show_hud(H.hud_used.hud_version) /obj/effect/proc_holder/spell/targeted/shadowling_ascend name = "Ascend" From 515fb581633892ac23e2224774f30604e67fde60 Mon Sep 17 00:00:00 2001 From: Eman Date: Fri, 22 Mar 2019 16:52:14 +0100 Subject: [PATCH 023/108] Can now collar any animal that has gained sentience. This makes it so that upon becoming sentient, either by the xenobiology sentience/transference potion or by the random sentience event, it is possible to put a collar on you. --- code/modules/events/sentience.dm | 1 + code/modules/research/xenobiology/xenobiology.dm | 2 ++ 2 files changed, 3 insertions(+) diff --git a/code/modules/events/sentience.dm b/code/modules/events/sentience.dm index 59fbbc01e55..419bebfe2c1 100644 --- a/code/modules/events/sentience.dm +++ b/code/modules/events/sentience.dm @@ -33,6 +33,7 @@ SA.key = SG.key SA.universal_speak = 1 SA.sentience_act() + SA.can_collar = 1 SA.maxHealth = max(SA.maxHealth + 200) SA.melee_damage_lower = max(SA.melee_damage_lower + 15) SA.melee_damage_upper = max(SA.melee_damage_upper + 15) diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index 0c67888b444..f60954a83a6 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -205,6 +205,7 @@ SM.faction = user.faction SM.master_commander = user SM.sentience_act() + SM.can_collar = 1 to_chat(SM, "All at once it makes sense: you know what you are and who you are! Self awareness is yours!") to_chat(SM, "You are grateful to be self aware and owe [user] a great debt. Serve [user], and assist [user.p_them()] in completing [user.p_their()] goals at any cost.") if(SM.flags_2 & HOLOGRAM_2) //Check to see if it's a holodeck creature @@ -254,6 +255,7 @@ SM.universal_speak = 1 SM.faction = user.faction SM.sentience_act() //Same deal here as with sentience + SM.can_collar = 1 user.death() to_chat(SM, "In a quick flash, you feel your consciousness flow into [SM]!") to_chat(SM, "You are now [SM]. Your allegiances, alliances, and roles are still the same as they were prior to consciousness transfer!") From 9cf063d6efbc96a33f184121c0e42f43698c3fa8 Mon Sep 17 00:00:00 2001 From: Eman Date: Fri, 22 Mar 2019 17:07:42 +0100 Subject: [PATCH 024/108] Terror Spiders can no longer be offered sentience potions. Gateway mission terror spiders can currently be effortlessly gibbed by giving them a sentience potion and waiting for them to "become sentient", except that when that happens, they explode. Easily abusable, eh? This commit changes this. --- .../simple_animal/hostile/terror_spiders/terror_spiders.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm b/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm index 562c90588f8..c797d51ce3b 100644 --- a/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm +++ b/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm @@ -71,6 +71,9 @@ var/global/list/ts_spiderling_list = list() speak_emote = list("hisses") emote_hear = list("hisses") + // Sentience Type + sentience_type = SENTIENCE_OTHER + // Languages are handled in terror_spider/New() // Interaction keywords From f14359a0ddc180091ac3242e79430beab9e3b689 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Fri, 22 Mar 2019 14:33:36 -0400 Subject: [PATCH 025/108] effects fixes smoke layer --- .../effect_system/effects_chem_smoke.dm | 1 + .../temporary_visuals/miscellaneous.dm | 18 ++++++++++++++++++ code/modules/reagents/chemistry/recipes.dm | 2 ++ icons/goonstation/effects/64x64.dmi | Bin 5895 -> 10868 bytes 4 files changed, 21 insertions(+) diff --git a/code/game/objects/effects/effect_system/effects_chem_smoke.dm b/code/game/objects/effects/effect_system/effects_chem_smoke.dm index d68692a03e6..4b720a607ea 100644 --- a/code/game/objects/effects/effect_system/effects_chem_smoke.dm +++ b/code/game/objects/effects/effect_system/effects_chem_smoke.dm @@ -7,6 +7,7 @@ icon_state = "smoke" density = FALSE opacity = FALSE + layer = ABOVE_MOB_LAYER animate_movement = NO_STEPS var/matrix/first = matrix() var/matrix/second = matrix() diff --git a/code/game/objects/effects/temporary_visuals/miscellaneous.dm b/code/game/objects/effects/temporary_visuals/miscellaneous.dm index 8b9314e9a6f..880043c8be6 100644 --- a/code/game/objects/effects/temporary_visuals/miscellaneous.dm +++ b/code/game/objects/effects/temporary_visuals/miscellaneous.dm @@ -211,3 +211,21 @@ pixel_x = rand(-4,4) pixel_y = rand(-4,4) animate(src, pixel_y = pixel_y + 32, alpha = 0, time = 25) + +/obj/effect/temp_visual/shockwave + name = "shockwave" + icon = 'icons/goonstation/effects/64x64.dmi' + icon_state = "shockwave" + randomdir = FALSE + pixel_y = -16 + pixel_x = -16 + duration = 20 + +/obj/effect/temp_visual/implosion + name = "implosion" + icon = 'icons/goonstation/effects/64x64.dmi' + icon_state = "implosion" + randomdir = FALSE + pixel_y = -16 + pixel_x = -16 + duration = 20 \ No newline at end of file diff --git a/code/modules/reagents/chemistry/recipes.dm b/code/modules/reagents/chemistry/recipes.dm index 78f46884273..288abeb5f4d 100644 --- a/code/modules/reagents/chemistry/recipes.dm +++ b/code/modules/reagents/chemistry/recipes.dm @@ -67,8 +67,10 @@ var/list/chemical_mob_spawn_nicecritters = list() // and possible friendly mobs /proc/goonchem_vortex(turf/T, setting_type, volume) if(setting_type) + new /obj/effect/temp_visual/implosion(T) playsound(T, 'sound/effects/whoosh.ogg', 25, 1) //credit to Robinhood76 of Freesound.org for this. else + new /obj/effect/temp_visual/shockwave(T) playsound(T, 'sound/effects/bang.ogg', 25, 1) for(var/atom/movable/X in view(2 + setting_type + (volume > 30 ? 1 : 0), T)) if(istype(X, /obj/effect)) diff --git a/icons/goonstation/effects/64x64.dmi b/icons/goonstation/effects/64x64.dmi index e1b168bbc116b3a920bef64a5940a130049e19b3..17910cfdfb18f9a46c1faf45c042c73383df7a8c 100644 GIT binary patch literal 10868 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 QVG!_ormO`mRk95IA6L%VaR2}S literal 5895 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 A7XSbN From 552967716b654822e4837c3128c22e8d786eb001 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Fri, 22 Mar 2019 14:56:44 -0400 Subject: [PATCH 026/108] helpers --- code/LINDA/LINDA_fire.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/LINDA/LINDA_fire.dm b/code/LINDA/LINDA_fire.dm index 7c56277e7ab..3d0ec87a8a2 100644 --- a/code/LINDA/LINDA_fire.dm +++ b/code/LINDA/LINDA_fire.dm @@ -207,7 +207,7 @@ if(!temp) temp = rand(2800, 3200) for(var/turf/T in view(radius, get_turf(center))) - if(istype(T, /turf/space)) + if(isspaceturf(T)) continue if(locate(/obj/effect/hotspot) in T) continue @@ -227,7 +227,7 @@ if(A != H) A.fire_act(null, H.temperature, H.volume) - if(istype(T, /turf/simulated/floor)) + if(isfloorturf(T)) var/turf/simulated/floor/F = T F.burn_tile() @@ -291,7 +291,7 @@ continue if(A != existing_hotspot) A.fire_act(null, expose_temp, existing_hotspot.volume) - if(istype(T, /turf/simulated/floor)) + if(isfloorturf(T)) var/turf/simulated/floor/F = T F.burn_tile() for(var/mob/living/L in T) From 489359d6d104eedf7c7b4198b743fc6effc88049 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Fri, 22 Mar 2019 16:00:56 -0400 Subject: [PATCH 027/108] Adds Unidentified Gas in Deep Space --- _maps/map_files/MetaStation/z3.dmm | 14 ++++++++++++-- _maps/map_files/cyberiad/z3.dmm | 14 ++++++++++++-- .../components/unary_devices/tank.dm | 18 ++++++++++++++++-- icons/atmos/tank.dmi | Bin 8826 -> 10224 bytes 4 files changed, 40 insertions(+), 6 deletions(-) diff --git a/_maps/map_files/MetaStation/z3.dmm b/_maps/map_files/MetaStation/z3.dmm index c2a11075ee8..c1e20ddacaa 100644 --- a/_maps/map_files/MetaStation/z3.dmm +++ b/_maps/map_files/MetaStation/z3.dmm @@ -1060,6 +1060,16 @@ /obj/structure/girder, /turf/simulated/floor/plating/airless, /area/AIsattele) +"gw" = ( +/obj/machinery/atmospherics/unary/portables_connector{ + dir = 1 + }, +/turf/simulated/floor/plating/airless, +/area/AIsattele) +"AV" = ( +/obj/machinery/atmospherics/unary/tank/oxygen_agent_b, +/turf/simulated/floor/plating/airless, +/area/AIsattele) (1,1,1) = {" aa @@ -55476,8 +55486,8 @@ aa ay em em -er -eB +AV +gw eG em em diff --git a/_maps/map_files/cyberiad/z3.dmm b/_maps/map_files/cyberiad/z3.dmm index b517ac3154b..31314bf545a 100644 --- a/_maps/map_files/cyberiad/z3.dmm +++ b/_maps/map_files/cyberiad/z3.dmm @@ -4065,6 +4065,16 @@ /obj/structure/girder, /turf/simulated/floor/plating/airless, /area/AIsattele) +"we" = ( +/obj/machinery/atmospherics/unary/portables_connector{ + dir = 1 + }, +/turf/simulated/floor/plating/airless, +/area/AIsattele) +"LU" = ( +/obj/machinery/atmospherics/unary/tank/oxygen_agent_b, +/turf/simulated/floor/plating/airless, +/area/AIsattele) (1,1,1) = {" aa @@ -58481,8 +58491,8 @@ aa aT iF iF -iK -iT +LU +we iW iF iF diff --git a/code/ATMOSPHERICS/components/unary_devices/tank.dm b/code/ATMOSPHERICS/components/unary_devices/tank.dm index bf0c3c8e06d..deb194af6e7 100644 --- a/code/ATMOSPHERICS/components/unary_devices/tank.dm +++ b/code/ATMOSPHERICS/components/unary_devices/tank.dm @@ -16,7 +16,7 @@ if(!istype(T)) return add_underlay(T, node, dir) - + /obj/machinery/atmospherics/unary/tank/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/analyzer)) atmosanalyzer_scan(air_contents, user) @@ -94,4 +94,18 @@ trace_gas.moles = (25*ONE_ATMOSPHERE)*(air_contents.volume)/(R_IDEAL_GAS_EQUATION*air_contents.temperature) air_contents.trace_gases += trace_gas - \ No newline at end of file + +/obj/machinery/atmospherics/unary/tank/oxygen_agent_b + name = "Unidentified Gas Tank" + desc = "A large vessel containing an unknown pressurized gas." + icon_state = "agent_b_map" + +/obj/machinery/atmospherics/unary/tank/oxygen_agent_b/New() + ..() + icon_state = "agent_b" + air_contents.volume = volume + air_contents.temperature = T20C + + var/datum/gas/oxygen_agent_b/trace_gas = new + trace_gas.moles = (50 * ONE_ATMOSPHERE) * (air_contents.volume) / (R_IDEAL_GAS_EQUATION * air_contents.temperature) + air_contents.trace_gases += trace_gas \ No newline at end of file diff --git a/icons/atmos/tank.dmi b/icons/atmos/tank.dmi index bf98899fb8e2ad42952bd7d07792bcd401c85289..3a6e2031cbc0669d55bb92205c99baa64d7b24d8 100644 GIT binary patch literal 10224 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 I$Cly$1F~0olK=n! literal 8826 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%0D9ex*$NHA}ZF#CDp;|03~}w_GJ-Vh;0K zAY3*u8`bagbgF5MRH0E}q2^RyBFa4r7~ZGgRJ?lRPS(bz^j+-sq+@U8B@!?fs>@J> z@`F@S6yc}$axkFJoj;Vw#R9FIZVL#sCStz?v8y3>u*IFquA4DoBK~x)Zo2VH1xAwd zLlp$n=KwAWhIleBUi7vscY&i~B6y&`2R>|UV@y;~k0Lb-kMREF!)zc1se4*GX181a zmX}^1;FPcR&|Q*T6F~(EP0QI`NQr+COW_)uJ5VI{)xCNpx+!8Lt!CbTK8fM+_R_~+ zn31FNkL+SFpN3XxyJDZZs#=Xt8!~(&1+X=XOMOKd(On;}XrEc^X{P1zq zQ$JmSZT@pGBoI=!tQARmo~&K^VVEzeCP0reQVb*z3=qW?imjGiEh(L}ar4mUJQcdF z>GYPrhDP4@6{JKu(X(_S@MTK1TI}@_8tF`eKMC0~iar0e!4z@r0)Eibh=)x-Y)4NNnzt zm(|#)_bM|J)ZG%=^s2PL41Q(#01iKh$6?xEax+N~*3O6wHN)3$Ge>s*Dl2|6Yc0fFt$`izMC6c#M{hv+A|(~GrXS&ddKhQB;=-f+?v0K%=FgTaEpW`lk)aA)P;ZS(c8aPhU@wgJ zlSv`3`3T(YY5N!Xmf`0DBNJ|93L|gJNo=S9!b%@sJ8{lZ-YQW7yy^ZNYmT$5P^vmA zSkE}R{g16VEMJwO9@R2xkjtPtjy+_humpPAtlPfsj5u@*G?aRHq4;_E9z&r}UnY}Y zPH%=68sHTR9(-$hzwOse=AEJ#)iQnqHWSovRUhJp*EcJqXgI!fKQs%#BG4zwJk97|vcx1Z}$aFe`Sp(#-2@)G yCJZRn<@1z2_qN7CD&4|9H{-o~31^WH82LCe&KwCp!y-w9G^8Wz>l(~-p From 585dcb435549ad9716bed69cc66c91e974a06618 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Fri, 22 Mar 2019 23:25:45 -0400 Subject: [PATCH 028/108] sprite --- .../objects/items/weapons/storage/firstaid.dm | 2 +- icons/obj/chemical.dmi | Bin 36539 -> 36899 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/items/weapons/storage/firstaid.dm b/code/game/objects/items/weapons/storage/firstaid.dm index 3d920c3395c..5e81c320041 100644 --- a/code/game/objects/items/weapons/storage/firstaid.dm +++ b/code/game/objects/items/weapons/storage/firstaid.dm @@ -319,7 +319,7 @@ /obj/item/storage/pill_bottle/patch_pack name = "Patch Pack" - icon_state = "solid" + icon_state = "patch_pack" can_hold = list(/obj/item/reagent_containers/food/pill/patch) cant_hold = list() rapid_intake_message = "flips the lid of the Patch Pack open and begins rapidly stamping patches on themselves!" diff --git a/icons/obj/chemical.dmi b/icons/obj/chemical.dmi index f692814d18c64efa250846bcc98f1744cfe5fa92..61390f3805725e1d1b04cff50458efbb5280b9c3 100644 GIT binary patch delta 17489 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 v Date: Sat, 23 Mar 2019 14:38:27 +0100 Subject: [PATCH 029/108] fixed the atmos not updating --- code/game/objects/structures/holosign.dm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/code/game/objects/structures/holosign.dm b/code/game/objects/structures/holosign.dm index 0b730a539b9..36b15796924 100644 --- a/code/game/objects/structures/holosign.dm +++ b/code/game/objects/structures/holosign.dm @@ -82,7 +82,8 @@ /obj/structure/holosign/barrier/atmos/Destroy() var/turf/T = get_turf(src) - T.air_update_turf(TRUE) + spawn(0) + T.air_update_turf(TRUE) return ..() /obj/structure/holosign/barrier/cyborg From 8b0334209de5e64ede7ddffa4f262c7ab164750d Mon Sep 17 00:00:00 2001 From: joep van der velden Date: Sat, 23 Mar 2019 14:44:37 +0100 Subject: [PATCH 030/108] fixes the inflatable bug as well --- code/game/objects/structures/inflatable.dm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/code/game/objects/structures/inflatable.dm b/code/game/objects/structures/inflatable.dm index 4ea0fc34e2d..bc006d9dd3b 100644 --- a/code/game/objects/structures/inflatable.dm +++ b/code/game/objects/structures/inflatable.dm @@ -27,10 +27,12 @@ /obj/structure/inflatable/Initialize(location) ..() - air_update_turf(1) + air_update_turf(TRUE) /obj/structure/inflatable/Destroy() - air_update_turf(1) + var/turf/T = get_turf(src) + spawn(0) + T.air_update_turf(TRUE) return ..() /obj/structure/inflatable/CanPass(atom/movable/mover, turf/target, height=0) From d04254a668c713acfc0da664e4e70585221f6de8 Mon Sep 17 00:00:00 2001 From: joep van der velden Date: Sat, 23 Mar 2019 15:10:58 +0100 Subject: [PATCH 031/108] fixes more --- code/game/machinery/doors/spacepod.dm | 4 +++- .../effects/effect_system/effects_foam.dm | 4 +++- code/game/objects/structures/aliens.dm | 4 +++- code/game/objects/structures/inflatable.dm | 22 ++++--------------- code/game/objects/structures/plasticflaps.dm | 8 ++++--- code/modules/mining/mine_items.dm | 4 +++- 6 files changed, 21 insertions(+), 25 deletions(-) diff --git a/code/game/machinery/doors/spacepod.dm b/code/game/machinery/doors/spacepod.dm index 5aea5b477ed..0e82417b017 100644 --- a/code/game/machinery/doors/spacepod.dm +++ b/code/game/machinery/doors/spacepod.dm @@ -15,7 +15,9 @@ return 0 /obj/structure/spacepoddoor/Destroy() - air_update_turf(1) + var/turf/T = get_turf(src) + spawn(0) + T.air_update_turf(TRUE) return ..() /obj/structure/spacepoddoor/CanPass(atom/movable/A, turf/T) diff --git a/code/game/objects/effects/effect_system/effects_foam.dm b/code/game/objects/effects/effect_system/effects_foam.dm index e765e59442d..f44070147a4 100644 --- a/code/game/objects/effects/effect_system/effects_foam.dm +++ b/code/game/objects/effects/effect_system/effects_foam.dm @@ -178,7 +178,9 @@ air_update_turf(1) /obj/structure/foamedmetal/Destroy() - air_update_turf(1) + var/turf/T = get_turf(src) + spawn(0) + T.air_update_turf(TRUE) return ..() /obj/structure/foamedmetal/Move() diff --git a/code/game/objects/structures/aliens.dm b/code/game/objects/structures/aliens.dm index 1738344ae60..f782f58d68d 100644 --- a/code/game/objects/structures/aliens.dm +++ b/code/game/objects/structures/aliens.dm @@ -56,7 +56,9 @@ ..() /obj/structure/alien/resin/Destroy() - air_update_turf(1) + var/turf/T = get_turf(src) + spawn(0) + T.air_update_turf(TRUE) return ..() /obj/structure/alien/resin/Move() diff --git a/code/game/objects/structures/inflatable.dm b/code/game/objects/structures/inflatable.dm index bc006d9dd3b..345388807dd 100644 --- a/code/game/objects/structures/inflatable.dm +++ b/code/game/objects/structures/inflatable.dm @@ -22,7 +22,8 @@ icon = 'icons/obj/inflatable.dmi' icon_state = "wall" - + var/torn = /obj/item/inflatable/torn + var/intact = /obj/item/inflatable var/health = 50.0 /obj/structure/inflatable/Initialize(location) @@ -124,13 +125,13 @@ playsound(loc, 'sound/machines/hiss.ogg', 75, 1) if(violent) visible_message("[src] rapidly deflates!") - var/obj/item/inflatable/torn/R = new /obj/item/inflatable/torn(loc) + var/obj/item/inflatable/torn/R = new torn(loc)///obj/item/inflatable/torn(loc) src.transfer_fingerprints_to(R) qdel(src) else visible_message("[src] slowly deflates.") spawn(50) - var/obj/item/inflatable/R = new /obj/item/inflatable(loc) + var/obj/item/inflatable/R = new intact(loc)///obj/item/inflatable(loc) src.transfer_fingerprints_to(R) qdel(src) @@ -240,21 +241,6 @@ else icon_state = "door_closed" -/obj/structure/inflatable/door/deflate(var/violent=0) - playsound(loc, 'sound/machines/hiss.ogg', 75, 1) - if(violent) - visible_message("[src] rapidly deflates!") - var/obj/item/inflatable/door/torn/R = new /obj/item/inflatable/door/torn(loc) - src.transfer_fingerprints_to(R) - qdel(src) - else - visible_message("[src] slowly deflates.") - spawn(50) - var/obj/item/inflatable/door/R = new /obj/item/inflatable/door(loc) - src.transfer_fingerprints_to(R) - qdel(src) - air_update_turf(1) - /obj/item/inflatable/torn name = "torn inflatable wall" desc = "A folded membrane which rapidly expands into a large cubical shape on activation. It is too torn to be usable." diff --git a/code/game/objects/structures/plasticflaps.dm b/code/game/objects/structures/plasticflaps.dm index 19b6dc02617..4fe5bfd93d1 100644 --- a/code/game/objects/structures/plasticflaps.dm +++ b/code/game/objects/structures/plasticflaps.dm @@ -125,12 +125,14 @@ desc = "Heavy duty, airtight, plastic flaps." /obj/structure/plasticflaps/mining/Initialize() - air_update_turf(1) + air_update_turf(TRUE) ..() /obj/structure/plasticflaps/mining/Destroy() - air_update_turf(1) + var/turf/T = get_turf(src) + spawn(0) + T.air_update_turf(TRUE) return ..() /obj/structure/plasticflaps/mining/CanAtmosPass(turf/T) - return 0 + return FALSE diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index c3c276a5766..3f3c4b95252 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -529,7 +529,9 @@ /obj/structure/fans/Destroy() arbitraryatmosblockingvar = 0 - air_update_turf(1) + var/turf/T = get_turf(src) + spawn(0) + T.air_update_turf(TRUE) return ..() /obj/structure/fans/CanAtmosPass(turf/T) From f4168349e22d026645c1ff5e6ffcfbeaa960cac9 Mon Sep 17 00:00:00 2001 From: joep van der velden Date: Sat, 23 Mar 2019 15:16:59 +0100 Subject: [PATCH 032/108] correct inflatable deflate items --- code/game/objects/structures/inflatable.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/game/objects/structures/inflatable.dm b/code/game/objects/structures/inflatable.dm index 345388807dd..10e9dda5e98 100644 --- a/code/game/objects/structures/inflatable.dm +++ b/code/game/objects/structures/inflatable.dm @@ -167,6 +167,8 @@ icon = 'icons/obj/inflatable.dmi' icon_state = "door_closed" + torn = /obj/item/inflatable/door/torn + intact = /obj/item/inflatable/door var/state = 0 //closed, 1 == open var/isSwitchingStates = 0 From c05103c3f2be47111776171bd3ddd27ed356d7ca Mon Sep 17 00:00:00 2001 From: farie82 Date: Sat, 23 Mar 2019 15:18:00 +0100 Subject: [PATCH 033/108] comments be gone --- code/game/objects/structures/inflatable.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/objects/structures/inflatable.dm b/code/game/objects/structures/inflatable.dm index 10e9dda5e98..a00734eba5f 100644 --- a/code/game/objects/structures/inflatable.dm +++ b/code/game/objects/structures/inflatable.dm @@ -125,13 +125,13 @@ playsound(loc, 'sound/machines/hiss.ogg', 75, 1) if(violent) visible_message("[src] rapidly deflates!") - var/obj/item/inflatable/torn/R = new torn(loc)///obj/item/inflatable/torn(loc) + var/obj/item/inflatable/torn/R = new torn(loc) src.transfer_fingerprints_to(R) qdel(src) else visible_message("[src] slowly deflates.") spawn(50) - var/obj/item/inflatable/R = new intact(loc)///obj/item/inflatable(loc) + var/obj/item/inflatable/R = new intact(loc) src.transfer_fingerprints_to(R) qdel(src) From a7bcf37b93aa8ac6aa67c9d03b0c166aa14164eb Mon Sep 17 00:00:00 2001 From: Arkatos1 Date: Sat, 23 Mar 2019 17:16:59 +0100 Subject: [PATCH 034/108] Swarmer are now locked on their HARM intent and are able to open airlocks and windoors --- code/game/gamemodes/miniantags/bot_swarm/swarmer.dm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm index cfa5ce3af84..9c9ea85d512 100644 --- a/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm +++ b/code/game/gamemodes/miniantags/bot_swarm/swarmer.dm @@ -96,10 +96,12 @@ attack_sound = 'sound/effects/empulse.ogg' friendly = "pinches" speed = 0 + a_intent = INTENT_HARM + can_change_intents = 0 faction = list("swarmer") projectiletype = /obj/item/projectile/beam/disabler pass_flags = PASSTABLE - mob_size = MOB_SIZE_TINY + mob_size = MOB_SIZE_SMALL ventcrawler = 2 ranged = 1 light_color = LIGHT_COLOR_CYAN From 1e7945ba47f7d578166bdf01fb6804d35e9e95d0 Mon Sep 17 00:00:00 2001 From: ParadiseSS13-Bot Date: Sat, 23 Mar 2019 18:49:40 +0000 Subject: [PATCH 035/108] Automatic changelog compile, [ci skip] --- html/changelog.html | 1 + html/changelogs/.all_changelog.yml | 1 + html/changelogs/AutoChangeLog-pr-11104.yml | 4 ---- 3 files changed, 2 insertions(+), 4 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-11104.yml diff --git a/html/changelog.html b/html/changelog.html index db8890e9e97..6868fbefba6 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -77,6 +77,7 @@

farie82 updated:

  • When disarming a bomb from a guardian you now don't pickup an empty object.
  • +
  • no more organ: spam sorry admins

22 March 2019

diff --git a/html/changelogs/.all_changelog.yml b/html/changelogs/.all_changelog.yml index e784dbd014a..5e716d5eabc 100644 --- a/html/changelogs/.all_changelog.yml +++ b/html/changelogs/.all_changelog.yml @@ -9425,3 +9425,4 @@ DO NOT EDIT THIS FILE BY HAND! AUTOMATICALLY GENERATED BY ss13_genchangelog.py. - bugfix: Lockboxes actually close when locked now. farie82: - bugfix: When disarming a bomb from a guardian you now don't pickup an empty object. + - bugfix: 'no more organ: spam sorry admins' diff --git a/html/changelogs/AutoChangeLog-pr-11104.yml b/html/changelogs/AutoChangeLog-pr-11104.yml deleted file mode 100644 index ef19d356477..00000000000 --- a/html/changelogs/AutoChangeLog-pr-11104.yml +++ /dev/null @@ -1,4 +0,0 @@ -author: "farie82" -delete-after: True -changes: - - bugfix: "no more organ: spam sorry admins" From 2fc549ffcdd762a830fb59d0346dd368a66df8f7 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 23 Mar 2019 14:29:02 -0500 Subject: [PATCH 036/108] Adds a few food. --- .../food_and_drinks/food/foods/seafood.dm | 18 ++++++++++++++++++ .../food_and_drinks/recipes/recipes_grill.dm | 19 +++++++++++++++++++ .../recipes/recipes_microwave.dm | 7 +++++++ 3 files changed, 44 insertions(+) diff --git a/code/modules/food_and_drinks/food/foods/seafood.dm b/code/modules/food_and_drinks/food/foods/seafood.dm index d06f1eeb77b..9e4407d9602 100644 --- a/code/modules/food_and_drinks/food/foods/seafood.dm +++ b/code/modules/food_and_drinks/food/foods/seafood.dm @@ -97,6 +97,24 @@ bitesize = 3 list_reagents = list("nutriment" = 2) +/obj/item/reagent_containers/food/snacks/shrimp_skewer + name = "shrimp skewer" + desc = "Four shrimp lightly grilled on a skewer. Yummy!" + trash = /obj/item/stack/rods + icon = 'icons/obj/food/seafood.dmi' + icon_state = "shrimpskewer" + bitesize = 3 + list_reagents = list("nutriment" = 8) + +/obj/item/reagent_containers/food/snacks/fish_skewer + name = "fish skewer" + desc = "A whole fish battered and grilled on a skewer. Hope you're hungry!" + trash = /obj/item/stack/rods + icon = 'icons/obj/food/seafood.dmi' + icon_state = "fishskewer" + bitesize = 3 + list_reagents = list("protein" = 6, "vitamin" = 4) + /obj/item/reagent_containers/food/snacks/sliceable/Ebi_maki name = "ebi makiroll" desc = "A large unsliced roll of Ebi Sushi." diff --git a/code/modules/food_and_drinks/recipes/recipes_grill.dm b/code/modules/food_and_drinks/recipes/recipes_grill.dm index 921c2c86e99..e5c4cb6bce5 100644 --- a/code/modules/food_and_drinks/recipes/recipes_grill.dm +++ b/code/modules/food_and_drinks/recipes/recipes_grill.dm @@ -226,3 +226,22 @@ /obj/item/reagent_containers/food/snacks/catfishmeat, ) result = /obj/item/reagent_containers/food/snacks/sushi_Tai + +/datum/recipe/grill/shrimp_skewer + items = list( + /obj/item/reagent_containers/food/snacks/shrimp, + /obj/item/reagent_containers/food/snacks/shrimp, + /obj/item/reagent_containers/food/snacks/shrimp, + /obj/item/reagent_containers/food/snacks/shrimp, + /obj/item/stack/rods, + ) + result = /obj/item/reagent_containers/food/snacks/shrimp_skewer + +/datum/recipe/grill/fish_skewer + reagents = list("flour" = 10) + items = list( + /obj/item/reagent_containers/food/snacks/salmonmeat, + /obj/item/reagent_containers/food/snacks/salmonmeat, + /obj/item/stack/rods, + ) + result = /obj/item/reagent_containers/food/snacks/fish_skewer \ No newline at end of file diff --git a/code/modules/food_and_drinks/recipes/recipes_microwave.dm b/code/modules/food_and_drinks/recipes/recipes_microwave.dm index 81fbe20e3d4..44c572b34e7 100644 --- a/code/modules/food_and_drinks/recipes/recipes_microwave.dm +++ b/code/modules/food_and_drinks/recipes/recipes_microwave.dm @@ -133,6 +133,13 @@ ) result = /obj/item/reagent_containers/food/snacks/baseballburger +/datum/recipe/microwave/cheeseburger + items = list( + /obj/item/reagent_containers/food/snacks/monkeyburger, + /obj/item/reagent_containers/food/snacks/cheesewedge, + ) + result = /obj/item/reagent_containers/food/snacks/cheeseburger + /datum/recipe/microwave/hotdog items = list( /obj/item/reagent_containers/food/snacks/bun, From 6b4d074458c84789aa6f20f6c0a7e9b4929f833a Mon Sep 17 00:00:00 2001 From: Tails2091 Date: Sat, 23 Mar 2019 15:46:37 -0400 Subject: [PATCH 037/108] Merged license.txt files. --- sound/Attributions.txt | 6 +++++- sound/ambience/license.txt | 2 -- sound/creatures/license.txt | 2 -- 3 files changed, 5 insertions(+), 5 deletions(-) delete mode 100644 sound/ambience/license.txt delete mode 100644 sound/creatures/license.txt diff --git a/sound/Attributions.txt b/sound/Attributions.txt index 262699e9c3f..729562855ba 100644 --- a/sound/Attributions.txt +++ b/sound/Attributions.txt @@ -1 +1,5 @@ -items/thermal_drill.ogg was sampled from Builders Drilling.wav under a Sampling Plus 1.0 license. It was uploaded by Koops on 2010-05-10. Source (http://soundbible.com/1420-Builders-Drilling.html) \ No newline at end of file +items/thermal_drill.ogg was sampled from Builders Drilling.wav under a Sampling Plus 1.0 license. It was uploaded by Koops on 2010-05-10. Source (http://soundbible.com/1420-Builders-Drilling.html) + +ambience/aurora_caelus.ogg is Music for Manatees by Kevin Macleod. It is under a CC-BY 3.0 license. It has been cropped and fades out. + +creatures/dog_yelp.ogg is DogYelp.wav. It is under a CC-BY 3.0 license. It has been cropped, EQ'd, and compressed to .ogg. Source (https://freesound.org/people/TobiasKosmos/sounds/163280/) \ No newline at end of file diff --git a/sound/ambience/license.txt b/sound/ambience/license.txt deleted file mode 100644 index 5376422f21f..00000000000 --- a/sound/ambience/license.txt +++ /dev/null @@ -1,2 +0,0 @@ -aurora_caelus.ogg is Music for Manatees, by Kevin Macleod. It has been licensed under CC-BY 3.0 license. - It has been cropped for use ingame, and also fades out. \ No newline at end of file diff --git a/sound/creatures/license.txt b/sound/creatures/license.txt deleted file mode 100644 index 119e4e3d21c..00000000000 --- a/sound/creatures/license.txt +++ /dev/null @@ -1,2 +0,0 @@ -dog_yelp.ogg is DogYelp.wav, by TobiasKosmos (https://freesound.org/people/TobiasKosmos/sounds/163280/). It has been licensed under CC-BY 3.0 license. -It has been cropped, EQ'd, and compressed to .ogg for in-game use. \ No newline at end of file From 70c30c0a85e9ce89fe2b357d52e7b89c20974a27 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Sat, 23 Mar 2019 19:09:12 -0400 Subject: [PATCH 038/108] Updates Fire Sprites and Hotspots --- code/LINDA/LINDA_fire.dm | 8 ++++---- icons/goonstation/effects/fire.dmi | Bin 8161 -> 318242 bytes 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/code/LINDA/LINDA_fire.dm b/code/LINDA/LINDA_fire.dm index ada5e6a9e5f..28c4ed07b40 100644 --- a/code/LINDA/LINDA_fire.dm +++ b/code/LINDA/LINDA_fire.dm @@ -44,12 +44,12 @@ anchored = 1 mouse_opacity = MOUSE_OPACITY_TRANSPARENT unacidable = 1//So you can't melt fire with acid. - icon = 'icons/effects/fire.dmi' + icon = 'icons/goonstation/effects/fire.dmi' icon_state = "1" - layer = TURF_LAYER - + layer = MASSIVE_OBJ_LAYER + alpha = 250 blend_mode = BLEND_ADD - light_range = 3 + light_range = 2 var/volume = 125 var/temperature = FIRE_MINIMUM_TEMPERATURE_TO_EXIST diff --git a/icons/goonstation/effects/fire.dmi b/icons/goonstation/effects/fire.dmi index 48a1f9b90e6d711f602716796d60572dfd95906d..03d0de0e38d92ec49ade4006dcb85b63cea63591 100644 GIT binary patch literal 318242 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 z�}JwUykF>_zc{s)I~#^7(%%4r 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%0D4p_EMe?tJe3QPfJXh;y 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
+

24 March 2019

+

farie82 updated:

+
    +
  • Holo firedoors now update atmos correctly after being destroyed
  • +
  • Inflatable walls/doors now update atmos correctly after being destroyed
  • +
  • Alien resin walls now update atmos correctly after being destroyed
  • +
  • Foamed metal walls now update atmos correctly after being destroyed
  • +
  • Pod doors (shouldn't ever happen) now update atmos correctly after being destroyed
  • +
  • Mining flaps now update atmos correctly after being destroyed
  • +
+

23 March 2019

Arkatos updated:

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 HR)_vSM`lm7 literal 8161 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 BHTM7j From 2d59383ffff7ef252737711a582827f95bb132a8 Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 23 Mar 2019 21:19:34 -0500 Subject: [PATCH 039/108] Disallows larva from pulling. --- code/modules/mob/living/carbon/alien/larva/larva.dm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/code/modules/mob/living/carbon/alien/larva/larva.dm b/code/modules/mob/living/carbon/alien/larva/larva.dm index a64750ad93d..5ebaaffac0c 100644 --- a/code/modules/mob/living/carbon/alien/larva/larva.dm +++ b/code/modules/mob/living/carbon/alien/larva/larva.dm @@ -93,6 +93,9 @@ /mob/living/carbon/alien/larva/show_inv(mob/user as mob) return +/mob/living/carbon/alien/larva/start_pulling(atom/movable/AM, state, force = move_force, supress_message = FALSE) + return FALSE + /* Commented out because it's duplicated in life.dm /mob/living/carbon/alien/larva/proc/grow() // Larvae can grow into full fledged Xenos if they survive long enough -- TLE if(icon_state == "larva_l" && !canmove) // This is a shit death check. It is made of shit and death. Fix later. From c18ee8ccc69a2f0cac4d549f079c1507710f8ccd Mon Sep 17 00:00:00 2001 From: Unknown Date: Sat, 23 Mar 2019 23:58:15 -0500 Subject: [PATCH 040/108] Fixes #11054 --- icons/obj/clothing/hats.dmi | Bin 105301 -> 105926 bytes icons/obj/clothing/suits.dmi | Bin 147254 -> 150329 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/icons/obj/clothing/hats.dmi b/icons/obj/clothing/hats.dmi index 3004a130246515dac5f32f73a03d21983c13637d..418f221c78fe9f90b159606a6851baf5691d2a15 100644 GIT binary patch delta 10584 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 diff --git a/icons/obj/clothing/suits.dmi b/icons/obj/clothing/suits.dmi index 7a728d811c33452ce9a9fc60a79718c775fa20f0..a3e93ba32af3b0d1a0c720667ba2511cfcdc5840 100644 GIT binary patch delta 15167 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 dro(aG-;~TaG3L!9fDbt-~L{e*nPfb436E delta 12067 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 From 40466fc5281d8607b4e67b49df5fe851e9e0f889 Mon Sep 17 00:00:00 2001 From: Fox McCloud Date: Sun, 24 Mar 2019 02:21:45 -0400 Subject: [PATCH 041/108] makes agent B not suck --- code/datums/gas_mixture.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/gas_mixture.dm b/code/datums/gas_mixture.dm index a10c3a8358f..7a7571999cf 100644 --- a/code/datums/gas_mixture.dm +++ b/code/datums/gas_mixture.dm @@ -117,7 +117,7 @@ What are the archived variables for? trace_gas.moles -= reaction_rate*0.05 - temperature -= (reaction_rate*20000)/heat_capacity() + temperature += (reaction_rate*20000)/heat_capacity() reacting = 1 From f903290e1ca26c9fbc7c7cd65f4aad8d0eafbeee Mon Sep 17 00:00:00 2001 From: joep van der velden Date: Sun, 24 Mar 2019 07:59:39 +0100 Subject: [PATCH 042/108] better way --- code/game/machinery/doors/spacepod.dm | 5 ++--- code/game/objects/effects/effect_system/effects_foam.dm | 5 ++--- code/game/objects/structures/aliens.dm | 5 ++--- code/game/objects/structures/holosign.dm | 5 ++--- code/game/objects/structures/inflatable.dm | 5 ++--- code/game/objects/structures/plasticflaps.dm | 5 ++--- code/modules/mining/mine_items.dm | 4 +--- 7 files changed, 13 insertions(+), 21 deletions(-) diff --git a/code/game/machinery/doors/spacepod.dm b/code/game/machinery/doors/spacepod.dm index 0e82417b017..ae966070f22 100644 --- a/code/game/machinery/doors/spacepod.dm +++ b/code/game/machinery/doors/spacepod.dm @@ -16,9 +16,8 @@ /obj/structure/spacepoddoor/Destroy() var/turf/T = get_turf(src) - spawn(0) - T.air_update_turf(TRUE) - return ..() + . = ..() + T.air_update_turf(TRUE) /obj/structure/spacepoddoor/CanPass(atom/movable/A, turf/T) if(istype(A, /obj/spacepod)) diff --git a/code/game/objects/effects/effect_system/effects_foam.dm b/code/game/objects/effects/effect_system/effects_foam.dm index f44070147a4..0a8436867be 100644 --- a/code/game/objects/effects/effect_system/effects_foam.dm +++ b/code/game/objects/effects/effect_system/effects_foam.dm @@ -179,9 +179,8 @@ /obj/structure/foamedmetal/Destroy() var/turf/T = get_turf(src) - spawn(0) - T.air_update_turf(TRUE) - return ..() + . = ..() + T.air_update_turf(TRUE) /obj/structure/foamedmetal/Move() var/turf/T = loc diff --git a/code/game/objects/structures/aliens.dm b/code/game/objects/structures/aliens.dm index f782f58d68d..111da862e97 100644 --- a/code/game/objects/structures/aliens.dm +++ b/code/game/objects/structures/aliens.dm @@ -57,9 +57,8 @@ /obj/structure/alien/resin/Destroy() var/turf/T = get_turf(src) - spawn(0) - T.air_update_turf(TRUE) - return ..() + . = ..() + T.air_update_turf(TRUE) /obj/structure/alien/resin/Move() var/turf/T = loc diff --git a/code/game/objects/structures/holosign.dm b/code/game/objects/structures/holosign.dm index 36b15796924..e5c0fc85722 100644 --- a/code/game/objects/structures/holosign.dm +++ b/code/game/objects/structures/holosign.dm @@ -82,9 +82,8 @@ /obj/structure/holosign/barrier/atmos/Destroy() var/turf/T = get_turf(src) - spawn(0) - T.air_update_turf(TRUE) - return ..() + . = ..() + T.air_update_turf(TRUE) /obj/structure/holosign/barrier/cyborg name = "Energy Field" diff --git a/code/game/objects/structures/inflatable.dm b/code/game/objects/structures/inflatable.dm index a00734eba5f..f4efa5452b0 100644 --- a/code/game/objects/structures/inflatable.dm +++ b/code/game/objects/structures/inflatable.dm @@ -32,9 +32,8 @@ /obj/structure/inflatable/Destroy() var/turf/T = get_turf(src) - spawn(0) - T.air_update_turf(TRUE) - return ..() + . = ..() + T.air_update_turf(TRUE) /obj/structure/inflatable/CanPass(atom/movable/mover, turf/target, height=0) return 0 diff --git a/code/game/objects/structures/plasticflaps.dm b/code/game/objects/structures/plasticflaps.dm index 4fe5bfd93d1..91e2d552859 100644 --- a/code/game/objects/structures/plasticflaps.dm +++ b/code/game/objects/structures/plasticflaps.dm @@ -130,9 +130,8 @@ /obj/structure/plasticflaps/mining/Destroy() var/turf/T = get_turf(src) - spawn(0) - T.air_update_turf(TRUE) - return ..() + . = ..() + T.air_update_turf(TRUE) /obj/structure/plasticflaps/mining/CanAtmosPass(turf/T) return FALSE diff --git a/code/modules/mining/mine_items.dm b/code/modules/mining/mine_items.dm index 3f3c4b95252..c3c276a5766 100644 --- a/code/modules/mining/mine_items.dm +++ b/code/modules/mining/mine_items.dm @@ -529,9 +529,7 @@ /obj/structure/fans/Destroy() arbitraryatmosblockingvar = 0 - var/turf/T = get_turf(src) - spawn(0) - T.air_update_turf(TRUE) + air_update_turf(1) return ..() /obj/structure/fans/CanAtmosPass(turf/T) From f736c060537d695dba803d669751cce0f3d27619 Mon Sep 17 00:00:00 2001 From: ParadiseSS13-Bot Date: Sun, 24 Mar 2019 03:16:44 -0400 Subject: [PATCH 043/108] Automatic changelog generation for PR #11103 [ci skip] --- html/changelogs/AutoChangeLog-pr-11103.yml | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 html/changelogs/AutoChangeLog-pr-11103.yml diff --git a/html/changelogs/AutoChangeLog-pr-11103.yml b/html/changelogs/AutoChangeLog-pr-11103.yml new file mode 100644 index 00000000000..4b1f4dbd0f3 --- /dev/null +++ b/html/changelogs/AutoChangeLog-pr-11103.yml @@ -0,0 +1,9 @@ +author: "farie82" +delete-after: True +changes: + - bugfix: "Holo firedoors now update atmos correctly after being destroyed" + - bugfix: "Inflatable walls/doors now update atmos correctly after being destroyed" + - bugfix: "Alien resin walls now update atmos correctly after being destroyed" + - bugfix: "Foamed metal walls now update atmos correctly after being destroyed" + - bugfix: "Pod doors (shouldn't ever happen) now update atmos correctly after being destroyed" + - bugfix: "Mining flaps now update atmos correctly after being destroyed" From 2e2ba986b573ba1200df76c9747033278ebabb8a Mon Sep 17 00:00:00 2001 From: ParadiseSS13-Bot Date: Sun, 24 Mar 2019 07:35:02 +0000 Subject: [PATCH 044/108] Automatic changelog compile, [ci skip] --- html/changelog.html | 11 +++++++++++ html/changelogs/.all_changelog.yml | 9 +++++++++ html/changelogs/AutoChangeLog-pr-11103.yml | 9 --------- 3 files changed, 20 insertions(+), 9 deletions(-) delete mode 100644 html/changelogs/AutoChangeLog-pr-11103.yml diff --git a/html/changelog.html b/html/changelog.html index 6868fbefba6..836fe6f2362 100644 --- a/html/changelog.html +++ b/html/changelog.html @@ -56,6 +56,17 @@ -->