The Glitterening (#92226)

## About The Pull Request

Adds a number of new capabilities to glitter.

- It can be any colour.
<img width="657" height="398" alt="image"
src="https://github.com/user-attachments/assets/60e80c04-8eee-470c-8953-47f6eda9f83e"
/>

- It can be made in chemistry and dyed by combining it with acetone and
other reagents to give it the average colour of the non-glitter,
not-acetone reagents.
- Multiple colours can be mixed into one reagent datum, randomly
depositing a colour from those in the datum on the floor.
<img width="554" height="507" alt="image"
src="https://github.com/user-attachments/assets/9cc7d1d5-9bec-4b28-af06-310ffb24de49"
/>

- Anyone with glitter reagent in them will cough glitter onto the floor
- Glittery crates will leave a trail of appropriately coloured glitter
when moved
<img width="960" height="259" alt="image"
src="https://github.com/user-attachments/assets/71cc1176-23f9-4ae7-b500-1744b752c014"
/>

Resprited glitter to support these changes and make it not look like gas
(or ass).

## Why It's Good For The Game

It looks cool and raises the bar for chemists maximally pissing off the
janitor as they fill a room with multicoloured glitter and all the
occupants run off to cough more up all over the surrounding area.

## Changelog
🆑
add: Glitter can now be made from plastic polymers and aluminium.
add: Plastic polymer can be made at any temperature, and then heated to
produce sheets.
add: Glitter can now be made any colour, mix 10 units each of glitter
and acetone to change its colour to that of the other reagents in the
beaker.
add: Mixing different colours of glitter will cause a random selection
of those colours to appear on the floor when released.
add: Being exposed to glitter in reagent form causes you to cough up
more glitter onto the floor
add: Dragging glittery crates will now spread a trail of glitter and
angry janitors behind them.
image: Added new glitter sprites (that don't look like gasses)
/🆑
This commit is contained in:
Thunder12345
2025-08-04 20:53:39 -04:00
committed by Roxy
parent ed06501153
commit e7c25d4c40
20 changed files with 462 additions and 307 deletions
@@ -74,9 +74,10 @@
/turf/open/floor/plating/snowed/smoothed/icemoon,
/area/icemoon/underground/explored)
"mQ" = (
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/asteroid/snow/icemoon,
/area/icemoon/underground/explored)
@@ -103,9 +104,10 @@
/area/icemoon/underground/explored)
"pi" = (
/obj/effect/turf_decal/weather/snow/corner,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/ice/icemoon,
/area/icemoon/underground/explored)
@@ -121,17 +123,19 @@
/area/icemoon/underground/explored)
"rx" = (
/obj/structure/flora/rock/pile/icy,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/asteroid/snow/icemoon,
/area/icemoon/underground/explored)
"rI" = (
/obj/effect/decal/cleanable/glass,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/ice/icemoon,
/area/icemoon/underground/explored)
@@ -151,9 +155,10 @@
/turf/open/misc/asteroid/snow/icemoon,
/area/icemoon/underground/explored)
"uN" = (
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/ice/icemoon,
/area/icemoon/underground/explored)
@@ -161,9 +166,10 @@
/obj/effect/turf_decal/weather/snow/corner{
dir = 5
},
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/ice/icemoon,
/area/icemoon/underground/explored)
@@ -171,9 +177,10 @@
/obj/effect/turf_decal/weather/snow/corner{
dir = 1
},
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/ice/icemoon,
/area/icemoon/underground/explored)
@@ -215,9 +222,10 @@
/obj/effect/turf_decal/weather/snow/corner{
dir = 10
},
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/ice/icemoon,
/area/icemoon/underground/explored)
@@ -303,9 +311,10 @@
/obj/effect/turf_decal/weather/snow/corner{
dir = 4
},
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/ice/icemoon,
/area/icemoon/underground/explored)
+57 -38
View File
@@ -2719,9 +2719,10 @@
/area/awaymission/cabin/caves)
"pv" = (
/obj/effect/decal/cleanable/blood/old,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/obj/structure/statue/snow/snowlegion{
anchored = 1;
@@ -3080,16 +3081,18 @@
"ts" = (
/obj/effect/decal/cleanable/blood/old,
/obj/effect/decal/remains/human,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/asteroid/snow/snow_cabin,
/area/awaymission/cabin/caves)
"tC" = (
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/asteroid/snow/snow_cabin,
/area/awaymission/cabin/caves)
@@ -3344,9 +3347,10 @@
/turf/open/floor/plating/snowed/snow_cabin,
/area/awaymission/cabin/snowforest/sovietsurface)
"vJ" = (
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/obj/effect/decal/cleanable/plasma,
/turf/open/misc/asteroid/snow/snow_cabin,
@@ -3457,9 +3461,10 @@
/turf/open/misc/asteroid/snow/snow_cabin,
/area/awaymission/cabin)
"xw" = (
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/obj/structure/statue/snow/snowlegion{
anchored = 1;
@@ -3471,9 +3476,10 @@
"xx" = (
/obj/effect/decal/cleanable/blood/old,
/obj/item/knife/shiv/carrot,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/asteroid/snow/snow_cabin,
/area/awaymission/cabin/caves)
@@ -3684,9 +3690,10 @@
/area/awaymission/cabin/caves)
"zI" = (
/obj/item/weldingtool/mini,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/asteroid/snow/snow_cabin,
/area/awaymission/cabin/caves)
@@ -3926,9 +3933,10 @@
/turf/open/misc/ice/smooth,
/area/awaymission/cabin/caves)
"Dw" = (
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/obj/effect/decal/cleanable/generic,
/turf/open/misc/asteroid/snow/snow_cabin,
@@ -4071,9 +4079,10 @@
/turf/open/floor/plating/snowed/smoothed,
/area/awaymission/cabin/caves)
"EU" = (
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/obj/effect/decal/cleanable/blood/oil,
/turf/open/misc/asteroid/snow/snow_cabin,
@@ -4473,9 +4482,10 @@
/area/awaymission/cabin/caves)
"Lj" = (
/obj/effect/decal/remains/xeno,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/asteroid/snow/snow_cabin,
/area/awaymission/cabin/caves)
@@ -4551,9 +4561,10 @@
/area/awaymission/cabin/snowforest/sovietsurface)
"Mk" = (
/obj/effect/decal/cleanable/blood/old,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/asteroid/snow/snow_cabin,
/area/awaymission/cabin/caves)
@@ -4615,9 +4626,10 @@
/turf/open/floor/wood,
/area/awaymission/cabin)
"Nb" = (
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/obj/effect/decal/remains/xeno/larva,
/turf/open/misc/asteroid/snow/snow_cabin,
@@ -4736,9 +4748,10 @@
/area/awaymission/cabin/snowforest)
"Po" = (
/obj/effect/decal/remains/human,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/asteroid/snow/snow_cabin,
/area/awaymission/cabin/caves)
@@ -4856,9 +4869,10 @@
/area/awaymission/cabin/snowforest/sovietsurface)
"QT" = (
/obj/item/chair/stool,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/asteroid/snow/snow_cabin,
/area/awaymission/cabin/caves)
@@ -4893,9 +4907,10 @@
/turf/open/misc/asteroid/snow/snow_cabin,
/area/awaymission/cabin/snowforest)
"RD" = (
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/mob/living/basic/statue/frosty,
/turf/open/misc/asteroid/snow/snow_cabin,
@@ -5086,9 +5101,10 @@
/turf/open/floor/wood/freezing,
/area/awaymission/cabin/lumbermill)
"SS" = (
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/obj/effect/decal/cleanable/molten_object/large,
/turf/open/misc/asteroid/snow/snow_cabin,
@@ -5148,9 +5164,10 @@
/turf/open/floor/wood,
/area/awaymission/cabin)
"TU" = (
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/obj/effect/decal/cleanable/shreds,
/turf/open/misc/asteroid/snow/snow_cabin,
@@ -5326,9 +5343,10 @@
/area/awaymission/cabin/caves)
"WH" = (
/obj/effect/decal/cleanable/blood/old,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/obj/item/clothing/head/helmet/skull,
/turf/open/misc/asteroid/snow/snow_cabin,
@@ -5424,9 +5442,10 @@
"Yc" = (
/obj/effect/decal/cleanable/blood/old,
/obj/item/melee/baseball_bat,
/obj/effect/decal/cleanable/glitter/blue{
/obj/effect/decal/cleanable/glitter{
desc = "It looks like fancy glitter to me.";
name = "icy wind"
name = "icy wind";
color = "4040ff"
},
/turf/open/misc/asteroid/snow/snow_cabin,
/area/awaymission/cabin/caves)
@@ -761,6 +761,13 @@
/obj/structure/cable,
/turf/open/floor/iron/dark,
/area/station/security/warden)
"amk" = (
/obj/item/radio/intercom/directional/south,
/obj/structure/closet/crate/trashcart/laundry,
/obj/effect/spawner/random/clothing/costume,
/obj/effect/spawner/random/clothing/backpack,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"ams" = (
/obj/effect/turf_decal/bot,
/obj/effect/turf_decal/siding/blue/corner{
@@ -2469,13 +2476,6 @@
/obj/structure/extinguisher_cabinet/directional/south,
/turf/open/floor/iron/dark/smooth_large,
/area/station/service/hydroponics)
"aNF" = (
/obj/item/radio/intercom/directional/south,
/obj/structure/closet/crate/trashcart/laundry,
/obj/effect/spawner/random/clothing/costume,
/obj/effect/spawner/random/clothing/backpack,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"aNL" = (
/obj/effect/turf_decal/tile/dark_blue{
dir = 1
@@ -2899,15 +2899,6 @@
},
/turf/open/floor/wood,
/area/station/maintenance/starboard/central)
"aVv" = (
/obj/effect/decal/cleanable/glitter/pink,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/structure/cable,
/obj/structure/disposalpipe/segment{
dir = 2
},
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"aVy" = (
/obj/structure/sign/directions/security/directional/north{
dir = 2;
@@ -3708,6 +3699,14 @@
/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4,
/turf/open/floor/iron,
/area/station/cargo/storage)
"bhP" = (
/obj/effect/decal/cleanable/glitter{
color = "ff8080"
},
/obj/machinery/power/apc/auto_name/directional/north,
/obj/structure/cable,
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"bhU" = (
/obj/machinery/igniter/incinerator_ordmix,
/obj/machinery/atmospherics/pipe/heat_exchanging/simple/layer4{
@@ -12474,6 +12473,13 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/wood,
/area/station/service/cafeteria)
"dJx" = (
/obj/machinery/power/apc/auto_name/directional/north,
/obj/structure/cable,
/obj/machinery/camera/autoname/directional/north,
/obj/machinery/washing_machine,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"dJB" = (
/obj/effect/spawner/structure/window/reinforced/tinted,
/obj/machinery/door/poddoor/shutters/preopen{
@@ -13002,11 +13008,6 @@
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
/turf/open/floor/iron/smooth,
/area/station/science/robotics)
"dRo" = (
/obj/effect/decal/cleanable/glitter/pink,
/obj/effect/landmark/generic_maintenance_landmark,
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"dRU" = (
/obj/structure/table/wood,
/obj/effect/spawner/random/maintenance,
@@ -13058,6 +13059,12 @@
/obj/structure/ladder,
/turf/open/floor/plating,
/area/station/maintenance/port/fore)
"dSB" = (
/obj/effect/decal/cleanable/glitter{
color = "ff8080"
},
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"dSD" = (
/obj/machinery/door/firedoor,
/obj/structure/cable,
@@ -15957,6 +15964,12 @@
/obj/effect/landmark/start/security_officer,
/turf/open/floor/iron/dark/smooth_large,
/area/station/security/lockers)
"eLk" = (
/obj/structure/table,
/obj/machinery/firealarm/directional/west,
/obj/effect/spawner/random/clothing/gloves,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"eLl" = (
/obj/machinery/door/airlock/command{
name = "Captain's Office"
@@ -17826,12 +17839,6 @@
/obj/effect/spawner/random/structure/grille,
/turf/open/floor/plating,
/area/station/maintenance/department/science/central)
"foP" = (
/obj/effect/decal/cleanable/glitter/pink,
/obj/machinery/power/apc/auto_name/directional/north,
/obj/structure/cable,
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"foR" = (
/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4{
dir = 8
@@ -18269,13 +18276,6 @@
/obj/machinery/portable_atmospherics/scrubber,
/turf/open/floor/iron/dark,
/area/station/hallway/secondary/construction)
"fuy" = (
/obj/structure/extinguisher_cabinet/directional/south,
/obj/structure/closet/crate/trashcart/laundry,
/obj/effect/spawner/random/clothing/backpack,
/obj/effect/spawner/random/clothing/backpack,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"fuP" = (
/obj/machinery/camera/autoname/directional/south,
/turf/open/floor/glass,
@@ -22117,10 +22117,6 @@
/obj/structure/closet/firecloset,
/turf/open/floor/iron,
/area/station/hallway/secondary/construction)
"gzp" = (
/obj/structure/closet/wardrobe/grey,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"gzr" = (
/obj/structure/railing{
dir = 4
@@ -27829,14 +27825,6 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/eighties,
/area/station/maintenance/hallway/abandoned_recreation)
"iiT" = (
/obj/effect/decal/cleanable/glitter/pink,
/obj/machinery/space_heater,
/obj/structure/disposalpipe/segment{
dir = 10
},
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"iiV" = (
/obj/structure/table/wood/poker,
/obj/effect/spawner/random/entertainment/cigarette_pack,
@@ -27852,6 +27840,14 @@
/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4,
/turf/open/floor/iron/dark/textured_large,
/area/station/medical/virology)
"iji" = (
/obj/structure/table,
/obj/item/reagent_containers/cup/glass/mug{
pixel_x = -3;
pixel_y = 4
},
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"ijl" = (
/obj/structure/cable,
/obj/item/restraints/legcuffs/beartrap/prearmed{
@@ -28595,6 +28591,13 @@
/obj/structure/disposalpipe/segment,
/turf/open/floor/wood,
/area/station/hallway/secondary/construction)
"ivy" = (
/obj/effect/decal/cleanable/glitter{
color = "ff8080"
},
/obj/effect/spawner/random/maintenance,
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"ivz" = (
/obj/effect/turf_decal/trimline/brown/filled/line{
dir = 1
@@ -30668,11 +30671,6 @@
},
/turf/open/floor/iron,
/area/station/hallway/primary/starboard)
"iZD" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
/obj/effect/decal/cleanable/glitter/pink,
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"iZH" = (
/turf/open/space,
/area/space)
@@ -31180,6 +31178,13 @@
/obj/effect/landmark/start/hangover,
/turf/open/floor/carpet,
/area/station/commons/lounge)
"jgM" = (
/obj/effect/decal/cleanable/glitter{
color = "ff8080"
},
/obj/effect/landmark/generic_maintenance_landmark,
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"jgR" = (
/obj/structure/bonfire/dense,
/turf/open/floor/plating,
@@ -31663,6 +31668,17 @@
/obj/effect/landmark/start/paramedic,
/turf/open/floor/iron/dark/textured_large,
/area/station/medical/medbay/central)
"joU" = (
/obj/item/tank/internals/plasma/empty,
/obj/effect/decal/cleanable/glitter{
color = "ff8080"
},
/obj/structure/cable,
/obj/structure/disposalpipe/segment{
dir = 4
},
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"jpa" = (
/obj/machinery/vatgrower{
dir = 4
@@ -32497,15 +32513,6 @@
/obj/structure/disposalpipe/segment,
/turf/open/floor/iron,
/area/station/commons/dorms)
"jyZ" = (
/obj/item/tank/internals/plasma/empty,
/obj/effect/decal/cleanable/glitter/pink,
/obj/structure/cable,
/obj/structure/disposalpipe/segment{
dir = 4
},
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"jzi" = (
/obj/effect/landmark/start/hangover,
/turf/open/floor/wood,
@@ -32878,13 +32885,6 @@
/obj/machinery/shower/directional/south,
/turf/open/floor/iron/dark/textured_large,
/area/station/medical/medbay/central)
"jDG" = (
/obj/machinery/power/apc/auto_name/directional/north,
/obj/structure/cable,
/obj/machinery/camera/autoname/directional/north,
/obj/machinery/washing_machine,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"jDL" = (
/obj/effect/turf_decal/siding/dark{
dir = 9
@@ -33466,13 +33466,6 @@
/obj/effect/decal/cleanable/confetti,
/turf/open/floor/plating,
/area/station/maintenance/port/fore)
"jMM" = (
/obj/structure/table,
/obj/structure/bedsheetbin/empty{
pixel_y = 6
},
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"jMO" = (
/obj/structure/lattice/catwalk,
/obj/structure/table/reinforced,
@@ -35261,6 +35254,13 @@
/obj/machinery/camera/autoname/directional/east,
/turf/open/floor/iron/dark,
/area/station/commons/vacant_room/office)
"knD" = (
/obj/machinery/atmospherics/components/unary/vent_scrubber/on,
/obj/effect/decal/cleanable/glitter{
color = "ff8080"
},
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"knI" = (
/obj/effect/turf_decal/trimline/yellow/warning{
dir = 8
@@ -36359,6 +36359,16 @@
dir = 4
},
/area/station/service/chapel)
"kDn" = (
/obj/effect/decal/cleanable/glitter{
color = "ff8080"
},
/obj/structure/cable,
/obj/structure/disposalpipe/segment{
dir = 4
},
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"kDC" = (
/obj/structure/railing/corner/end{
dir = 1
@@ -37838,6 +37848,17 @@
/obj/machinery/door/firedoor,
/turf/open/floor/iron,
/area/station/hallway/primary/aft)
"lcq" = (
/obj/effect/decal/cleanable/glitter{
color = "ff8080"
},
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/structure/cable,
/obj/structure/disposalpipe/segment{
dir = 2
},
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"lcs" = (
/obj/item/storage/box/aquarium_props{
pixel_x = -6;
@@ -38803,14 +38824,6 @@
/obj/effect/turf_decal/delivery,
/turf/open/floor/iron/dark,
/area/station/hallway/secondary/exit/departure_lounge)
"luD" = (
/obj/effect/decal/cleanable/glitter/pink,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/structure/disposalpipe/segment{
dir = 4
},
/turf/open/floor/iron/dark,
/area/station/maintenance/starboard/aft)
"luI" = (
/obj/machinery/atmospherics/components/unary/vent_pump/on/layer4,
/obj/machinery/atmospherics/pipe/heat_exchanging/simple{
@@ -39802,13 +39815,6 @@
},
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"lJW" = (
/obj/structure/table,
/obj/structure/bedsheetbin{
pixel_y = 6
},
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"lKb" = (
/obj/structure/rack,
/obj/effect/spawner/random/maintenance,
@@ -41116,16 +41122,6 @@
},
/turf/open/floor/engine,
/area/station/engineering/supermatter/room)
"mcs" = (
/obj/effect/decal/cleanable/glitter/pink,
/obj/structure/cable,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/structure/sign/directions/engineering/directional/south,
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"mcB" = (
/obj/structure/table/wood,
/obj/item/food/grown/poppy{
@@ -41794,6 +41790,16 @@
/obj/effect/turf_decal/trimline/purple/filled/line,
/turf/open/floor/iron,
/area/station/science/xenobiology/hallway)
"mnk" = (
/obj/effect/decal/cleanable/glitter{
color = "ff8080"
},
/obj/machinery/space_heater,
/obj/structure/disposalpipe/segment{
dir = 10
},
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"mnn" = (
/obj/effect/mapping_helpers/airlock/locked,
/obj/effect/mapping_helpers/airlock/welded,
@@ -44313,14 +44319,6 @@
/obj/structure/railing,
/turf/open/openspace,
/area/station/engineering/atmos/upper)
"ncc" = (
/obj/structure/closet/secure_closet/personal,
/obj/item/clothing/suit/hooded/wintercoat,
/obj/item/clothing/shoes/winterboots,
/obj/machinery/status_display/ai/directional/south,
/obj/effect/spawner/random/clothing/backpack,
/turf/open/floor/iron,
/area/station/commons/dorms)
"nck" = (
/obj/machinery/vending/wallmed/directional/south,
/turf/open/floor/iron/large,
@@ -49021,12 +49019,6 @@
},
/turf/open/floor/iron/dark/herringbone,
/area/station/ai_monitored/turret_protected/aisat_interior)
"oul" = (
/obj/machinery/light/directional/north,
/obj/machinery/light_switch/directional/north,
/obj/structure/closet/wardrobe/white,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"ouo" = (
/obj/machinery/holopad,
/obj/structure/disposalpipe/segment{
@@ -49708,10 +49700,6 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/plating,
/area/station/hallway/secondary/entry)
"oEA" = (
/obj/effect/decal/cleanable/glitter/pink,
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"oEI" = (
/obj/structure/table/reinforced,
/obj/item/reagent_containers/cup/glass/mug/britcup{
@@ -49866,6 +49854,12 @@
},
/turf/open/floor/iron/dark/smooth_large,
/area/station/security/office)
"oHh" = (
/obj/machinery/light/directional/north,
/obj/machinery/light_switch/directional/north,
/obj/structure/closet/wardrobe/white,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"oHu" = (
/obj/structure/sign/departments/restroom/directional/east,
/turf/open/floor/iron/large,
@@ -54227,6 +54221,15 @@
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/turf/open/floor/iron/dark/smooth_large,
/area/station/security/brig)
"pST" = (
/obj/structure/table,
/obj/item/reagent_containers/cup/soda_cans/cola{
pixel_x = -4;
pixel_y = 9
},
/obj/effect/spawner/random/entertainment/coin,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"pSY" = (
/obj/structure/railing/corner/end{
dir = 8
@@ -59330,6 +59333,14 @@
/obj/structure/disposalpipe/segment,
/turf/open/floor/iron,
/area/station/cargo/sorting)
"rwe" = (
/obj/structure/closet/secure_closet/personal,
/obj/item/clothing/suit/hooded/wintercoat,
/obj/item/clothing/shoes/winterboots,
/obj/machinery/status_display/ai/directional/south,
/obj/effect/spawner/random/clothing/backpack,
/turf/open/floor/iron,
/area/station/commons/dorms)
"rwh" = (
/turf/closed/wall/r_wall,
/area/station/security/medical)
@@ -59417,6 +59428,16 @@
/obj/structure/railing/corner,
/turf/open/openspace,
/area/station/commons/fitness/recreation)
"rxt" = (
/obj/effect/decal/cleanable/glitter{
color = "ff8080"
},
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/structure/disposalpipe/segment{
dir = 4
},
/turf/open/floor/iron/dark,
/area/station/maintenance/starboard/aft)
"rxx" = (
/obj/structure/table,
/obj/effect/turf_decal/trimline/blue/filled/line,
@@ -61048,15 +61069,6 @@
/obj/effect/turf_decal/stripes/corner,
/turf/open/floor/engine/hull,
/area/space/nearstation)
"rWA" = (
/obj/structure/table,
/obj/item/reagent_containers/cup/soda_cans/cola{
pixel_x = -4;
pixel_y = 9
},
/obj/effect/spawner/random/entertainment/coin,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"rWD" = (
/obj/item/flashlight/lantern{
pixel_y = 7
@@ -61142,11 +61154,6 @@
},
/turf/open/floor/iron,
/area/station/science/xenobiology/hallway)
"rYa" = (
/obj/effect/decal/cleanable/glitter/pink,
/obj/effect/spawner/random/maintenance,
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"rYd" = (
/obj/effect/turf_decal/tile/red/opposingcorners{
dir = 1
@@ -62171,14 +62178,6 @@
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/turf/open/floor/iron/textured_large,
/area/station/medical/abandoned)
"spm" = (
/obj/effect/decal/cleanable/glitter/pink,
/obj/structure/cable,
/obj/structure/disposalpipe/segment{
dir = 4
},
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"spr" = (
/obj/structure/table,
/obj/item/hand_labeler{
@@ -63997,14 +63996,6 @@
/obj/effect/mapping_helpers/mail_sorting/medbay/cmo_office,
/turf/open/floor/iron/white,
/area/station/medical/medbay/central)
"sSG" = (
/obj/structure/table,
/obj/item/reagent_containers/cup/glass/mug{
pixel_x = -3;
pixel_y = 4
},
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"sSJ" = (
/obj/effect/spawner/random/trash/cigbutt,
/turf/open/floor/carpet,
@@ -64655,6 +64646,13 @@
/obj/effect/spawner/random/structure/shipping_container,
/turf/open/floor/plating,
/area/station/maintenance/port/greater)
"tcW" = (
/obj/structure/closet/secure_closet/personal,
/obj/item/clothing/suit/hooded/wintercoat,
/obj/item/clothing/shoes/winterboots,
/obj/effect/spawner/random/clothing/backpack,
/turf/open/floor/iron,
/area/station/commons/dorms)
"tda" = (
/obj/item/pen,
/obj/item/pen/blue,
@@ -67635,6 +67633,10 @@
"tYh" = (
/turf/open/floor/plating/airless,
/area/station/maintenance/space_hut)
"tYi" = (
/obj/structure/closet/wardrobe/grey,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"tYl" = (
/obj/structure/closet/crate/silvercrate,
/obj/machinery/camera/motion{
@@ -68160,12 +68162,6 @@
/obj/item/reagent_containers/dropper,
/turf/open/floor/iron/dark/smooth_large,
/area/station/medical/pharmacy)
"ugs" = (
/obj/structure/table,
/obj/machinery/firealarm/directional/west,
/obj/effect/spawner/random/clothing/gloves,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"ugE" = (
/obj/effect/turf_decal/siding/dark,
/obj/machinery/airalarm/directional/north,
@@ -68298,6 +68294,18 @@
},
/turf/open/floor/iron,
/area/station/science/lab)
"uiB" = (
/obj/effect/decal/cleanable/glitter{
color = "ff8080"
},
/obj/structure/cable,
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/structure/disposalpipe/segment{
dir = 4
},
/obj/structure/sign/directions/engineering/directional/south,
/turf/open/floor/plating,
/area/station/maintenance/starboard/aft)
"uiH" = (
/obj/structure/disposalpipe/segment{
dir = 4
@@ -71193,6 +71201,13 @@
/obj/effect/decal/cleanable/dirt,
/turf/open/floor/iron/grimy,
/area/station/security/detectives_office/private_investigators_office)
"uXW" = (
/obj/structure/table,
/obj/structure/bedsheetbin/empty{
pixel_y = 6
},
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"uXZ" = (
/obj/effect/spawner/random/structure/closet_maintenance,
/obj/effect/spawner/random/maintenance/three,
@@ -71832,13 +71847,6 @@
},
/turf/open/floor/iron,
/area/station/hallway/secondary/construction)
"vir" = (
/obj/structure/closet/secure_closet/personal,
/obj/item/clothing/suit/hooded/wintercoat,
/obj/item/clothing/shoes/winterboots,
/obj/effect/spawner/random/clothing/backpack,
/turf/open/floor/iron,
/area/station/commons/dorms)
"viv" = (
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden/layer2,
@@ -72357,6 +72365,11 @@
/obj/structure/cable,
/turf/open/floor/plating,
/area/station/maintenance/solars/starboard/fore)
"vpp" = (
/obj/item/radio/intercom/directional/north,
/obj/effect/spawner/random/clothing/wardrobe_closet_colored,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"vpt" = (
/obj/structure/chair/pew/right{
dir = 4
@@ -75832,6 +75845,13 @@
/obj/machinery/light/directional/east,
/turf/open/floor/wood,
/area/station/service/library)
"wqE" = (
/obj/structure/extinguisher_cabinet/directional/south,
/obj/structure/closet/crate/trashcart/laundry,
/obj/effect/spawner/random/clothing/backpack,
/obj/effect/spawner/random/clothing/backpack,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"wqI" = (
/obj/effect/spawner/random/trash/botanical_waste,
/turf/open/floor/plating,
@@ -78055,11 +78075,6 @@
},
/turf/open/floor/iron,
/area/station/hallway/primary/starboard)
"wZG" = (
/obj/item/radio/intercom/directional/north,
/obj/effect/spawner/random/clothing/wardrobe_closet_colored,
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"wZN" = (
/obj/machinery/door/airlock/wood{
name = "Psychology Storage"
@@ -78550,6 +78565,13 @@
},
/turf/open/floor/iron/dark/smooth_large,
/area/station/service/hydroponics)
"xhT" = (
/obj/structure/table,
/obj/structure/bedsheetbin{
pixel_y = 6
},
/turf/open/floor/iron/cafeteria,
/area/station/commons/locker)
"xhX" = (
/obj/machinery/atmospherics/pipe/smart/manifold4w/supply/hidden/layer4,
/obj/effect/decal/cleanable/dirt,
@@ -116072,10 +116094,10 @@ nyA
jph
dcE
dTL
gzp
rWA
ugs
sSG
tYi
pST
eLk
iji
dCm
jqo
eaw
@@ -116329,10 +116351,10 @@ iOE
jph
heR
dTL
wZG
vpp
oNp
sPC
fuy
wqE
dCm
rpL
lHY
@@ -116586,10 +116608,10 @@ jph
jph
dcE
dTL
oul
oHh
sjO
skC
aNF
amk
dCm
dCE
bLf
@@ -116843,10 +116865,10 @@ heR
dcE
dcE
dTL
jDG
dJx
uzN
oqd
jMM
uXW
dCm
nZb
ayn
@@ -117103,7 +117125,7 @@ dTL
uNG
jQu
oqd
lJW
xhT
dCm
emL
bXg
@@ -120444,7 +120466,7 @@ pRO
tqQ
ccZ
qMN
vir
tcW
dCm
tMZ
idM
@@ -120701,7 +120723,7 @@ pRO
gnw
qAd
vfe
ncc
rwe
dCm
cNO
idM
@@ -120958,7 +120980,7 @@ cVN
cVN
dux
ezT
vir
tcW
dCm
ade
rdl
@@ -121215,7 +121237,7 @@ olU
olU
laK
ffR
vir
tcW
dCm
cNO
dCm
@@ -124646,7 +124668,7 @@ koi
boq
wKb
jCK
aVv
lcq
moI
lRp
wKb
@@ -124899,10 +124921,10 @@ eEv
eEv
eEv
wKb
iiT
mnk
aWb
tCE
mcs
uiB
wKb
wKb
wKb
@@ -125158,8 +125180,8 @@ wKb
wKb
wKb
rlR
luD
jyZ
rxt
joU
wKb
hhN
pss
@@ -125412,7 +125434,7 @@ hZf
wKb
eEv
eEv
iZD
knD
wUu
sfL
pwQ
@@ -125667,13 +125689,13 @@ vlc
mgY
mgY
wKb
dRo
jgM
wep
eEv
ebQ
diA
xqo
spm
kDn
wKb
lmL
jyA
@@ -125924,8 +125946,8 @@ wKb
yfj
nuZ
wKb
rYa
oEA
ivy
dSB
trK
msK
ina
@@ -126185,7 +126207,7 @@ wKb
wKb
wKb
wKb
foP
bhP
ilV
bvG
wKb
+14
View File
@@ -1344,3 +1344,17 @@
while(islist(result))
result = pick(result)
return result
/** Takes in two weighted lists and outputs a third list containing the elements of both inputs with their weights blended according to a given proportion.
* Not exact and may have rounding errors, will round to nearest 1/1000.
* */
/proc/blend_weighted_lists(list/listA, list/listB, blend)
var/list/joined_list = listA | listB
listA = counterlist_normalise(listA)
listB = counterlist_normalise(listB)
for(var/element in joined_list)
joined_list[element] = round((listA[element] * (1 - blend) + listB[element] * (blend)) * 1000)
return joined_list
+1 -1
View File
@@ -45,7 +45,7 @@ GLOBAL_LIST_INIT(arcade_prize_pool, list(
/obj/item/restraints/handcuffs/fake = 2,
/obj/item/grenade/chem_grenade/glitter/pink = 1,
/obj/item/grenade/chem_grenade/glitter/blue = 1,
/obj/item/grenade/chem_grenade/glitter/white = 1,
/obj/item/grenade/chem_grenade/glitter = 1,
/obj/item/toy/eightball = 2,
/obj/item/toy/windup_toolbox = 2,
/obj/item/toy/clockwork_watch = 2,
@@ -129,11 +129,11 @@
GLOB.wizard_rain_reagents |= allowed_medicine
// One randomized type is allowed so the whitelist isn't spammed with subtypes
GLOB.wizard_rain_reagents |= pick(subtypesof(/datum/reagent/glitter))
GLOB.wizard_rain_reagents |= pick(subtypesof(/datum/reagent/mutationtoxin))
GLOB.wizard_rain_reagents |= pick(subtypesof(/datum/reagent/plantnutriment))
GLOB.wizard_rain_reagents |= pick(subtypesof(/datum/reagent/impurity))
GLOB.wizard_rain_reagents |= pick(subtypesof(/datum/reagent/drug))
GLOB.wizard_rain_reagents |= pick(typesof(/datum/reagent/glitter/random))
GLOB.wizard_rain_reagents |= pick(typesof(/datum/reagent/uranium))
GLOB.wizard_rain_reagents |= pick(typesof(/datum/reagent/luminescent_fluid))
GLOB.wizard_rain_reagents |= pick(typesof(/datum/reagent/carpet))
@@ -134,3 +134,7 @@
if (existing)
return existing
return new cleanable_type(checkturf)
/turf/proc/spawn_glitter(glitter_colors)
var/obj/effect/decal/cleanable/glitter/new_glitter = spawn_unique_cleanable(/obj/effect/decal/cleanable/glitter)
new_glitter.color = pick_weight(glitter_colors)
@@ -294,22 +294,14 @@ GLOBAL_LIST_EMPTY(nebula_vomits)
/obj/effect/decal/cleanable/glitter
name = "generic glitter pile"
desc = "The herpes of arts and crafts."
icon = 'icons/effects/atmospherics.dmi'
icon_state = "plasma_old"
icon = 'icons/effects/glitter.dmi'
icon_state = "glitter"
gender = NEUTER
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
/obj/effect/decal/cleanable/glitter/pink
name = "pink glitter"
icon_state = "plasma"
/obj/effect/decal/cleanable/glitter/white
name = "white glitter"
icon_state = "nitrous_oxide"
/obj/effect/decal/cleanable/glitter/blue
name = "blue glitter"
icon_state = "freon"
/obj/effect/decal/cleanable/glitter/Initialize(mapload, list/datum/disease/diseases)
. = ..()
add_overlay(mutable_appearance('icons/effects/glitter.dmi', "glitter_sparkle[rand(1,9)]", appearance_flags = EMISSIVE_APPEARANCE_FLAGS))
/obj/effect/decal/cleanable/plasma
name = "stabilized plasma"
@@ -294,6 +294,6 @@
loot = list(
/obj/item/grenade/chem_grenade/glitter/pink,
/obj/item/grenade/chem_grenade/glitter/blue,
/obj/item/grenade/chem_grenade/glitter/white,
/obj/item/grenade/chem_grenade/glitter,
/obj/item/grenade/chem_grenade/colorful
)
+1 -1
View File
@@ -651,7 +651,7 @@ CIGARETTE PACKETS ARE IN FANCY.DM
/// Weighted list of random reagents to add
var/static/list/possible_reagents = list(
/datum/reagent/toxin/fentanyl = 2,
/datum/reagent/glitter = 2,
/datum/reagent/glitter/random = 2,
/datum/reagent/drug/aranesp = 2,
/datum/reagent/consumable/laughter = 2,
/datum/reagent/medicine/insulin = 2,
@@ -587,17 +587,17 @@
beakers += beaker_two
/obj/item/grenade/chem_grenade/glitter
name = "generic glitter grenade"
desc = "You shouldn't see this description."
name = "white glitter grenade"
desc = "For that somnolent glittery look."
stage = GRENADE_READY
var/glitter_type = /datum/reagent/glitter
var/glitter_colors = list(COLOR_WHITE = 100)
/obj/item/grenade/chem_grenade/glitter/Initialize(mapload)
. = ..()
var/obj/item/reagent_containers/cup/beaker/beaker_one = new(src)
var/obj/item/reagent_containers/cup/beaker/beaker_two = new(src)
beaker_one.reagents.add_reagent(glitter_type, 25)
beaker_one.reagents.add_reagent(/datum/reagent/glitter, 25, data = list("colors" = glitter_colors))
beaker_one.reagents.add_reagent(/datum/reagent/potassium, 25)
beaker_two.reagents.add_reagent(/datum/reagent/phosphorus, 25)
beaker_two.reagents.add_reagent(/datum/reagent/consumable/sugar, 25)
@@ -608,17 +608,12 @@
/obj/item/grenade/chem_grenade/glitter/pink
name = "pink glitter bomb"
desc = "For that HOT glittery look."
glitter_type = /datum/reagent/glitter/pink
glitter_colors = list("#ff8080" = 100)
/obj/item/grenade/chem_grenade/glitter/blue
name = "blue glitter bomb"
desc = "For that COOL glittery look."
glitter_type = /datum/reagent/glitter/blue
/obj/item/grenade/chem_grenade/glitter/white
name = "white glitter bomb"
desc = "For that somnolent glittery look."
glitter_type = /datum/reagent/glitter/white
glitter_colors = list("#4040ff" = 100)
/obj/item/grenade/chem_grenade/clf3
name = "clf3 grenade"
@@ -478,14 +478,26 @@
/obj/structure/closet/crate/add_to_roundstart_list()
return
/obj/structure/closet/crate/pink
/obj/structure/closet/crate/glitter
name = "pink crate"
desc = "A glittery pink crate."
icon_state = "pink"
base_icon_state = "pink"
var/glitter_prob = 25
var/glitter_color = "#ff8080"
/obj/structure/closet/crate/lavender
/obj/structure/closet/crate/glitter/Moved(atom/old_loc, movement_dir, forced, list/old_locs, momentum_change)
. = ..()
var/turf/old_turf = get_turf(old_loc)
if(!old_turf)
return
if(prob(glitter_prob))
old_turf.spawn_glitter(list("[glitter_color]" = 100))
/obj/structure/closet/crate/glitter/lavender
name = "lavender crate"
desc = "A glittery purple... no, lavender crate."
icon_state = "lavender"
base_icon_state = "lavender"
glitter_color = "#db80ff"
@@ -185,7 +185,7 @@
/datum/market_item/misc/girlypop/spawn_item(loc, datum/market_purchase/purchase)
. = ..()
var/obj/structure/closet/crate/pink/C = new(loc)
var/obj/structure/closet/crate/glitter/C = new(loc)
for (var/type in list(
/obj/item/poster/contraband/dream,
/obj/item/poster/contraband/beekind,
+1 -3
View File
@@ -32,8 +32,6 @@
/datum/reagent/consumable/condensedcapsaicin,
/datum/reagent/drug/mushroomhallucinogen,
/datum/reagent/lube,
/datum/reagent/glitter/blue,
/datum/reagent/glitter/pink,
/datum/reagent/cryptobiolin,
/datum/reagent/blood,
/datum/reagent/medicine/c2/multiver,
@@ -53,7 +51,7 @@
/datum/reagent/consumable/ethanol/beer,
/datum/reagent/hair_dye,
/datum/reagent/consumable/sugar,
/datum/reagent/glitter/white,
/datum/reagent/glitter/random,
/datum/reagent/gravitum,
/datum/reagent/growthserum,
/datum/reagent/yuck,
+7 -1
View File
@@ -226,7 +226,13 @@ Primarily used in reagents/reaction_agents
/datum/reagent/proc/on_mob_dead(mob/living/carbon/affected_mob, seconds_per_tick)
SHOULD_CALL_PARENT(TRUE)
/// Called after add_reagents creates a new reagent.
/**
* Called after add_reagents creates a new reagent.
*
* Arguments
* * data - if not null, contains reagent data which will be applied to the newly created reagent (this will override any pre-set data).
*/
/datum/reagent/proc/on_new(data)
if(data)
src.data = data
@@ -2556,46 +2556,81 @@
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
/datum/reagent/glitter
name = "Generic Glitter"
description = "if you can see this description, contact a coder."
name = "Glitter"
description = "The herpes of arts and crafts."
data = list("colors"=list(COLOR_WHITE = 100))
color = COLOR_WHITE //pure white
taste_description = "plastic"
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
var/glitter_type = /obj/effect/decal/cleanable/glitter
/datum/reagent/glitter/on_mob_life(mob/living/carbon/affected_mob, seconds_per_tick, times_fired)
. = ..()
if(SPT_PROB(25, seconds_per_tick))
affected_mob.emote("cough")
expose_turf(get_turf(affected_mob), 0)
/datum/reagent/glitter/expose_turf(turf/exposed_turf, reac_volume)
. = ..()
if(!istype(exposed_turf))
return
exposed_turf.spawn_unique_cleanable(glitter_type)
exposed_turf.spawn_glitter(data["colors"])
/datum/reagent/glitter/pink
name = "Pink Glitter"
description = "pink sparkles that get everywhere"
color = "#ff8080" //A light pink color
glitter_type = /obj/effect/decal/cleanable/glitter/pink
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
/datum/reagent/glitter/on_new(data)
. = ..()
/datum/reagent/glitter/white
name = "White Glitter"
description = "white sparkles that get everywhere"
glitter_type = /obj/effect/decal/cleanable/glitter/white
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
if(src.data["colors"])
color = pick(src.data["colors"])
else
color = COLOR_WHITE
/datum/reagent/glitter/blue
name = "Blue Glitter"
description = "blue sparkles that get everywhere"
color = "#4040FF" //A blueish color
glitter_type = /obj/effect/decal/cleanable/glitter/blue
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
/datum/reagent/glitter/on_merge(list/mix_data, amount)
. = ..()
/datum/reagent/glitter/confetti
var/prop_current = (volume-amount)/(volume)
if(mix_data)
data["colors"] = blend_weighted_lists(mix_data["colors"], data["colors"], prop_current)
if(data["colors"])
color = pick(data["colors"])
else
color = COLOR_WHITE
/datum/reagent/glitter/random
name = "Unrandomised Randomised Glitter"
description = "You shouldn't be seeing this, please make an issue report describing how you found it."
var/list/possible_colors = list(
list(COLOR_WHITE = 100),
list("#ff8080" = 100),
list("#4040ff" = 100),
list("#ff5555" = 34, "#55ff55" = 33, "#5555ff" = 33),
)
/datum/reagent/glitter/random/on_new(data)
. = ..()
var/list/color_list = pick(possible_colors)
var/datum/reagents/our_holder = src.holder
var/our_volume = src.volume
var/list/our_data = list("colors" = color_list)
our_holder.remove_reagent(/datum/reagent/glitter/random, our_volume)
our_holder.add_reagent(/datum/reagent/glitter, our_volume, data = our_data)
/datum/reagent/confetti
name = "Confetti"
description = "Tiny plastic flakes that are impossible to sweep up."
color = "#7dd87b"
glitter_type = /obj/effect/decal/cleanable/confetti
chemical_flags = REAGENT_CAN_BE_SYNTHESIZED
/datum/reagent/confetti/expose_turf(turf/exposed_turf, reac_volume)
. = ..()
if(!istype(exposed_turf))
return
exposed_turf.spawn_unique_cleanable(/obj/effect/decal/cleanable/confetti)
/datum/reagent/pax
name = "Pax"
description = "A colorless liquid that suppresses violence in its subjects."
@@ -741,12 +741,17 @@
reaction_tags = REACTION_TAG_EASY | REACTION_TAG_UNIQUE
/datum/chemical_reaction/plastic_polymers
results = list(/datum/reagent/plastic_polymers = 10)
required_reagents = list(/datum/reagent/fuel/oil = 5, /datum/reagent/toxin/acid = 2, /datum/reagent/ash = 3)
reaction_tags = REACTION_TAG_EASY | REACTION_TAG_CHEMICAL
/datum/chemical_reaction/plastic_polymer_hardening
required_reagents = list(/datum/reagent/plastic_polymers = 10)
required_temp = 374 //lazily consistent with soap & other crafted objects generically created with heat.
reaction_flags = REACTION_INSTANT
reaction_tags = REACTION_TAG_EASY | REACTION_TAG_CHEMICAL
/datum/chemical_reaction/plastic_polymers/on_reaction(datum/reagents/holder, datum/equilibrium/reaction, created_volume)
/datum/chemical_reaction/plastic_polymer_hardening/on_reaction(datum/reagents/holder, datum/equilibrium/reaction, created_volume)
new /obj/item/stack/sheet/plastic(get_turf(holder.my_atom), round(created_volume))
/datum/chemical_reaction/pax
@@ -1046,3 +1051,41 @@
thermic_constant = 80
H_ion_release = 2
reaction_tags = REACTION_TAG_EASY
/datum/chemical_reaction/glitter
results = list(/datum/reagent/glitter = 1)
required_reagents = list(/datum/reagent/plastic_polymers = 1, /datum/reagent/aluminium = 1)
required_catalysts = list(/datum/reagent/stabilizing_agent = 1)
reaction_tags = REACTION_TAG_EASY | REACTION_TAG_UNIQUE
/datum/chemical_reaction/glitter_pigmentation
results = list(/datum/reagent/glitter = 1)
required_reagents = list(/datum/reagent/glitter = 1, /datum/reagent/acetone = 1)
mix_message = "the glitter rapidly changes colour!"
reaction_flags = REACTION_INSTANT
reaction_tags = REACTION_TAG_EASY | REACTION_TAG_UNIQUE
/datum/chemical_reaction/glitter_pigmentation/on_reaction(datum/reagents/holder, datum/equilibrium/reaction, created_volume)
. = ..()
var/excluded_volume = 0
var/accumulated_color
for(var/datum/reagent/reagent in holder.reagent_list)
if(is_type_in_list(reagent, required_reagents))
excluded_volume += reagent.volume
for(var/datum/reagent/reagent in holder.reagent_list)
if(!is_type_in_list(reagent, required_reagents))
if(accumulated_color)
accumulated_color = BlendRGB(reagent.color, accumulated_color, (reagent.volume/(holder.total_volume-excluded_volume)))
else
accumulated_color = reagent.color
var/datum/reagent/glitter/glitter = locate(/datum/reagent/glitter) in holder.reagent_list
glitter.data["colors"] = list("[accumulated_color]" = 100)
glitter.color = accumulated_color
@@ -393,7 +393,7 @@
righthand_file = 'icons/mob/inhands/items_righthand.dmi'
w_class = WEIGHT_CLASS_TINY
reagent_flags = NONE
list_reagents = list(/datum/reagent/glitter/confetti = 15)
list_reagents = list(/datum/reagent/confetti = 15)
volume = 15
amount_per_transfer_from_this = 5
can_toggle_range = FALSE
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.8 KiB

@@ -0,0 +1,6 @@
/obj/item/grenade/chem_grenade/glitter/white : /obj/item/grenade/chem_grenade/glitter{@OLD}
/obj/structure/closet/crate/pink : /obj/structure/closet/crate/glitter{@OLD}
/obj/structure/closet/crate/lavender : /obj/structure/closet/crate/glitter/lavender{@OLD}
/obj/effect/decal/cleanable/glitter/white : /obj/effect/decal/cleanable/glitter{@OLD}
/obj/effect/decal/cleanable/glitter/pink : /obj/effect/decal/cleanable/glitter{@OLD;color="ff8080"}
/obj/effect/decal/cleanable/glitter/blue : /obj/effect/decal/cleanable/glitter{@OLD;color="4040ff"}