Skip to content

Commit

Permalink
return of nanofrost with a bunch of other stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
SirNightKnight committed Feb 10, 2025
1 parent f25d15d commit 922f3f9
Show file tree
Hide file tree
Showing 32 changed files with 204 additions and 79 deletions.
2 changes: 1 addition & 1 deletion _maps/RandomRuins/SpaceRuins/syndicate_depot.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -4054,7 +4054,7 @@
},
/obj/machinery/airalarm/directional/north,
/obj/effect/mapping_helpers/airalarm/syndicate_access,
/obj/item/tank/jetpack/oxygen/harness,
/obj/item/tank/jetpack/harness,
/obj/item/clothing/suit/space/syndicate/black/red,
/obj/item/clothing/head/helmet/space/syndicate/black/red,
/turf/open/floor/wood,
Expand Down
4 changes: 4 additions & 0 deletions _maps/map_files/Blueshift/Blueshift.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -16450,6 +16450,10 @@
/obj/effect/turf_decal/tile/yellow/half/contrasted{
dir = 4
},
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/turf/open/floor/iron/dark/side{
dir = 8
},
Expand Down
4 changes: 4 additions & 0 deletions _maps/map_files/BoxStation/BoxStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -33808,6 +33808,10 @@
/obj/item/electronics/airlock,
/obj/item/electronics/airlock,
/obj/item/stock_parts/cell/high,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/turf/open/floor/plating,
/area/station/engineering/main)
"kVE" = (
Expand Down
5 changes: 5 additions & 0 deletions _maps/map_files/Deltastation/DeltaStation2.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -276,6 +276,10 @@
},
/obj/item/gps/engineering,
/obj/effect/turf_decal/bot,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/turf/open/floor/iron,
/area/station/engineering/main)
"adf" = (
Expand Down Expand Up @@ -59349,6 +59353,7 @@
/obj/machinery/door/airlock/maintenance_hatch{
name = "Robotics Maintenance"
},
/obj/item/tank/jetpack/oxygen,
/turf/open/floor/iron,
/area/station/science/robotics/lab)
"nYC" = (
Expand Down
4 changes: 4 additions & 0 deletions _maps/map_files/KiloStation/KiloStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -46634,6 +46634,10 @@
/obj/effect/turf_decal/tile/neutral/anticorner/contrasted{
dir = 4
},
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/turf/open/floor/iron/dark,
/area/station/engineering/main)
"oCI" = (
Expand Down
4 changes: 4 additions & 0 deletions _maps/map_files/MetaStation/MetaStation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -40755,6 +40755,10 @@
},
/obj/item/gps,
/obj/structure/closet/crate/engineering,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/turf/open/floor/plating,
/area/station/engineering/main)
"obb" = (
Expand Down
4 changes: 4 additions & 0 deletions _maps/map_files/Ouroboros/Ouroboros.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -8521,6 +8521,10 @@
},
/obj/structure/closet/crate/engineering,
/obj/item/gps/engineering,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/turf/open/floor/plating,
/area/station/engineering/storage_shared)
"cBM" = (
Expand Down
4 changes: 4 additions & 0 deletions _maps/map_files/Theseus/Theseus.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -53787,6 +53787,10 @@
/obj/effect/decal/cleanable/cobweb,
/obj/effect/turf_decal/bot,
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/turf/open/floor/plating,
/area/station/engineering/storage)
"pXO" = (
Expand Down
10 changes: 9 additions & 1 deletion _maps/map_files/Voidraptor/VoidRaptor.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -71651,6 +71651,10 @@
dir = 1
},
/obj/structure/closet/crate/engineering,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/turf/open/floor/engine,
/area/station/engineering/main)
"tQV" = (
Expand Down Expand Up @@ -76358,6 +76362,10 @@
/obj/item/disk/vacuum_upgrade/biomass,
/turf/open/floor/iron/white,
/area/station/science/xenobiology)
"vgn" = (
/obj/item/tank/jetpack/oxygen,
/turf/open/floor/catwalk_floor/iron_smooth,
/area/station/maintenance/department/medical)
"vgq" = (
/obj/structure/table/wood,
/obj/item/paper_bin{
Expand Down Expand Up @@ -111561,7 +111569,7 @@ hPi
hPi
kAJ
sAM
odD
vgn
ycv
sAM
uwo
Expand Down
2 changes: 1 addition & 1 deletion _maps/map_files/generic/CentCom.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -22640,7 +22640,7 @@
/area/centcom/central_command_areas/evacuation)
"iiK" = (
/obj/structure/table/reinforced,
/obj/item/tank/jetpack/oxygen/harness{
/obj/item/tank/jetpack/harness{
pixel_y = 10;
pixel_x = -2
},
Expand Down
2 changes: 2 additions & 0 deletions _maps/map_files/tramstation/tramstation.dmm
Original file line number Diff line number Diff line change
Expand Up @@ -39152,6 +39152,8 @@
pixel_x = 3;
pixel_y = 3
},
/obj/item/tank/jetpack/oxygen,
/obj/item/tank/jetpack/oxygen,
/turf/open/floor/plating,
/area/station/engineering/main)
"lgR" = (
Expand Down
6 changes: 3 additions & 3 deletions code/game/machinery/suit_storage_unit.dm
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@

/obj/machinery/suit_storage_unit/atmos
mask_type = /obj/item/clothing/mask/gas/atmos
storage_type = /obj/item/watertank/atmos
storage_type = /obj/item/clothing/shoes/magboots //monkestation edit
suit_type = /obj/item/clothing/suit/space/hardsuit/atmos //Monkestation Edit
mod_type = /obj/item/mod/control/pre_equipped/atmospheric

Expand All @@ -99,7 +99,7 @@
mask_type = /obj/item/clothing/mask/gas/sechailer
mod_type = /obj/item/mod/control/pre_equipped/security
suit_type = /obj/item/clothing/suit/space/hardsuit/sec //monkestation edit
storage_type = /obj/item/tank/jetpack/oxygen/security //monkestation edit
storage_type = /obj/item/tank/jetpack/security //monkestation edit

/obj/machinery/suit_storage_unit/hos
mask_type = /obj/item/clothing/mask/gas/sechailer
Expand Down Expand Up @@ -132,7 +132,7 @@

/obj/machinery/suit_storage_unit/syndicate
mask_type = /obj/item/clothing/mask/gas/syndicate
storage_type = /obj/item/tank/jetpack/oxygen/harness
storage_type = /obj/item/tank/jetpack/harness //monkestation edit
mod_type = /obj/item/mod/control/pre_equipped/nuclear

/obj/machinery/suit_storage_unit/interdyne
Expand Down
7 changes: 2 additions & 5 deletions code/game/objects/effects/decals/cleanable/misc.dm
Original file line number Diff line number Diff line change
Expand Up @@ -241,15 +241,12 @@
name = "blue glitter"
icon_state = "freon"

//MONKESTATION EDIT START: MADE THE EFFECT NOT FLOUR, IT'S PAIN
//MONKESTATION EDIT START: MADE THE EFFECT NOT FLOUR, IT'S PAIN!
/obj/effect/decal/cleanable/plasma
name = "stabilized plasma"
desc = "A puddle of stabilized plasma."
icon_state = "purpleglow"
icon = 'monkestation/icons/effects/stablized_plasma.dmi'
light_power = 3
light_outer_range = 2
light_color = LIGHT_COLOR_PURPLE
icon = 'monkestation/icons/effects/stabilized_plasma.dmi'
//MONKESTATION EDIT STOP

/obj/effect/decal/cleanable/insectguts
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -228,7 +228,7 @@
/obj/effect/particle_effect/fluid/foam/firefighting
name = "firefighting foam"
lifetime = 20 //doesn't last as long as normal foam
result_type = /obj/effect/decal/cleanable/plasma
//result_type = /obj/effect/decal/cleanable/plasma: monkestation removal
allow_duplicate_results = FALSE
slippery_foam = FALSE
/// The amount of plasma gas this foam has absorbed. To be deposited when the foam dissipates.
Expand All @@ -246,7 +246,7 @@
return

var/obj/effect/hotspot/hotspot = locate() in location
if(!(hotspot && location.air))
if(!location.air) //monkestation edit: doesnt require a hotspot
return

QDEL_NULL(hotspot)
Expand All @@ -261,12 +261,17 @@
air.garbage_collect()
location.air_update_turf(FALSE, FALSE)

//MONKESTATION EDIT START
/obj/effect/particle_effect/fluid/foam/firefighting/make_result()
var/atom/movable/deposit = ..()
if(istype(deposit) && deposit.reagents && absorbed_plasma > 0)
deposit.reagents.add_reagent(/datum/reagent/stable_plasma, absorbed_plasma)
absorbed_plasma = 0
return deposit
. = ..()
if(absorbed_plasma > 5)
var/turf/open/exposed_turf = loc
var/obj/effect/decal/cleanable/plasma/reagentdecal = new(exposed_turf)
reagentdecal = locate() in exposed_turf
if(reagentdecal)
reagentdecal.reagents.add_reagent(/datum/reagent/stable_plasma, absorbed_plasma)
absorbed_plasma = 0
//MONKESTATION EDIT STOP

/obj/effect/particle_effect/fluid/foam/firefighting/foam_mob(mob/living/foaming, seconds_per_tick)
if(!istype(foaming))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -255,25 +255,18 @@
/////////////////////////////////////////////
// Nanofrost smoke
/////////////////////////////////////////////

//MONKESTATION EDIT START
/// Light blue, transparent smoke which is usually paired with a blast that chills every turf in the area.
/obj/effect/particle_effect/fluid/smoke/freezing
name = "nanofrost smoke"
color = "#B2FFFF"
opacity = FALSE

/// A factory which produces light blue, transparent smoke and a blast that chills every turf in the area.
/datum/effect_system/fluid_spread/smoke/freezing
effect_type = /obj/effect/particle_effect/fluid/smoke/freezing
/// The radius in which to chill every open turf.
/// The radius in which to chill every open turf.
var/blast = 0
/// The temperature to set the turfs air temperature to.
var/temperature = 2
var/temperature = 253.15 // -20C
/// Whether to weld every vent and air scrubber in the affected area shut.
var/weldvents = TRUE
/// Whether to make sure each affected turf is actually within range before cooling it.
var/distcheck = TRUE

/**
* Chills an open turf.
*
Expand All @@ -285,14 +278,13 @@
* Arguments:
* - [chilly][/turf/open]: The open turf to chill
*/
/datum/effect_system/fluid_spread/smoke/freezing/proc/Chilled(turf/open/chilly)
/obj/effect/particle_effect/fluid/smoke/freezing/proc/Chilled(turf/open/chilly)
if(!istype(chilly))
return

if(chilly.air)
var/datum/gas_mixture/air = chilly.air
if(!distcheck || get_dist(location, chilly) < blast) // Otherwise we'll get silliness like people using Nanofrost to kill people through walls with cold air
air.temperature = temperature
air.temperature = temperature

var/list/gases = air.gases
if(gases[/datum/gas/plasma])
Expand All @@ -307,7 +299,7 @@

if(weldvents)
for(var/obj/machinery/atmospherics/components/unary/comp in chilly)
if(!isnull(comp.welded) && !comp.welded) //must be an unwelded vent pump or vent scrubber.
if(!comp.welded) //must be an unwelded vent pump or vent scrubber.
comp.welded = TRUE
comp.update_appearance()
comp.visible_message(span_danger("[comp] is frozen shut!"))
Expand All @@ -318,22 +310,23 @@
for(var/obj/item/potential_tinder in chilly)
potential_tinder.extinguish()

/datum/effect_system/fluid_spread/smoke/freezing/set_up(range = 5, amount = DIAMOND_AREA(range), atom/holder, atom/location, blast_radius = 0)
/obj/effect/particle_effect/fluid/smoke/freezing/process(seconds_per_tick)
. = ..()
blast = blast_radius
Chilled(get_turf(src))

/datum/effect_system/fluid_spread/smoke/freezing/start(log = FALSE)
if(blast)
for(var/turf/T in RANGE_TURFS(blast, location))
Chilled(T)
return ..()
/// A factory which produces light blue, transparent smoke and a blast that chills every turf in the area.
/datum/effect_system/fluid_spread/smoke/freezing
effect_type = /obj/effect/particle_effect/fluid/smoke/freezing

/// A variant of the base freezing smoke formerly used by the vent decontamination event.
/datum/effect_system/fluid_spread/smoke/freezing/decon
temperature = 293.15
distcheck = FALSE
weldvents = FALSE
//MONKESTATION EDIT STOP

//MONKESTATION REMOVAL: unused code that i broke
/// A variant of the base freezing smoke formerly used by the vent decontamination event.
// /datum/effect_system/fluid_spread/smoke/freezing/decon
// temperature = 293.15
// distcheck = FALSE
// weldvents = FALSE
//MONKESTATION REMOVAL

/////////////////////////////////////////////
// Sleep smoke
Expand Down
16 changes: 14 additions & 2 deletions code/game/objects/items/grenades/smokebomb.dm
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,16 @@
///It's extremely important to keep this list up to date. It helps to generate the insightful description of the smokebomb
var/list/bruh_moment = list("Dank", "Hip", "Lit", "Based", "Robust", "Bruh", "Gamer") //monkestation edit
var/writing_utensil = "crayon" //monkestation edit
//monkestation addition: var for smoke type
var/smoke_type = /datum/effect_system/fluid_spread/smoke/bad
//monkestation addition: var for if we have the dumb... i mean insightful bruh description
var/bruh_description = TRUE

///Here we generate the extremely insightful description.
/obj/item/grenade/smokebomb/Initialize(mapload)
. = ..()
desc = "'[pick(bruh_moment)]' is scribbled on it in [writing_utensil]." //monkestation edit
if(bruh_description)
desc = "'[pick(bruh_moment)]' is scribbled on it in [writing_utensil]." //monkestation edit

///Here we generate some smoke and also damage blobs??? for some reason. Honestly not sure why we do that.
/obj/item/grenade/smokebomb/detonate(mob/living/lanced_by)
Expand All @@ -27,7 +32,7 @@

update_mob()
playsound(src, 'sound/effects/smoke.ogg', 50, TRUE, -3)
var/datum/effect_system/fluid_spread/smoke/bad/smoke = new
var/datum/effect_system/fluid_spread/smoke/smoke = new smoke_type
smoke.set_up(4, holder = src, location = src)
smoke.start()
qdel(smoke) //And deleted again. Sad really.
Expand All @@ -43,4 +48,11 @@
//dumb list name but i respect the joke
bruh_moment = list("Cover up", "Plausible Deniability", "Clown B-Gone", "Smoke Em!", "Syndicate Repellant")
writing_utensil = "chalk"

/obj/item/grenade/smokebomb/nanofrost
name = "nanofrost smoke grenade"
icon_state = "smokeblue"
smoke_type = /datum/effect_system/fluid_spread/smoke/freezing
desc = "A NanoFrost™ smoke grenade. The smoke neutralizes aireborne plasma by turning it into nitrogen and seals vents. Handy for dealing with fires."
bruh_description = FALSE
//MONKESTATION EDIT STOP
11 changes: 11 additions & 0 deletions code/game/objects/items/storage/boxes/engineering_boxes.dm
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,17 @@
for(var/i in 1 to 7)
new/obj/item/grenade/chem_grenade/smart_metal_foam(src)

//MONKESTATION EDIT START
/obj/item/storage/box/nanofrost
name = "box of nanofrost grenades"
desc = "A box of A NanoFrost™ smoke grenades. Nanotrasen's response to frequent plasma related fires onboard their research stations."
icon_state = "plasticbox"
illustration = "grenade"
/obj/item/storage/box/nanofrost/PopulateContents()
for(var/i in 1 to 7)
new/obj/item/grenade/smokebomb/nanofrost(src)
//MONKESTATION EDIT STOP

/obj/item/storage/box/material
name = "box of materials"
illustration = "implant"
Expand Down
Loading

0 comments on commit 922f3f9

Please sign in to comment.