diff --git a/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm b/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm index 9f89218af7f..02707f466d9 100644 --- a/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm +++ b/_maps/RandomRuins/LavaRuins/lavaland_biodome_beach.dmm @@ -1367,7 +1367,7 @@ /turf/open/floor/plating/beach/sand, /area/ruin/powered/beach) "Ux" = ( -/obj/item/toy/plush/lizardplushie{ +/obj/item/toy/plush/lizard_plushie/green{ name = "Soaks-The-Rays" }, /turf/open/floor/carpet/orange, diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index fd1b05a5bf2..de104fb7ef0 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -107237,7 +107237,7 @@ /obj/structure/railing{ dir = 10 }, -/obj/item/toy/plush/lizardplushie/space{ +/obj/item/toy/plush/space_lizard_plushie{ name = "Meets-the-Ore" }, /turf/open/space/basic, diff --git a/_maps/map_files/Deltastation/DeltaStation2_skyrat.dmm b/_maps/map_files/Deltastation/DeltaStation2_skyrat.dmm index 29841de164e..fd58f75bc20 100644 --- a/_maps/map_files/Deltastation/DeltaStation2_skyrat.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2_skyrat.dmm @@ -110995,7 +110995,7 @@ /obj/structure/railing{ dir = 10 }, -/obj/item/toy/plush/lizardplushie/space{ +/obj/item/toy/plush/space_lizard_plushie{ name = "Meets-the-Ore" }, /turf/open/space/basic, diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 35982a58e1b..745ee650849 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -14187,7 +14187,7 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/structure/closet/cardboard, /obj/effect/spawner/lootdrop/maintenance/two, -/obj/item/toy/plush/lizardplushie{ +/obj/item/toy/plush/lizard_plushie/green{ name = "Tends-the-Wounds" }, /obj/structure/sign/poster/contraband/lizard{ @@ -25735,7 +25735,7 @@ "gal" = ( /obj/structure/lattice/catwalk, /obj/structure/marker_beacon/burgundy, -/obj/item/toy/plush/lizardplushie/space{ +/obj/item/toy/plush/space_lizard_plushie{ desc = "He stared into the void and listened. He didn't expect an answer..."; name = "Void-Stares-Back" }, @@ -56052,7 +56052,7 @@ /area/service/library) "qqK" = ( /obj/structure/rack, -/obj/item/toy/plush/lizardplushie{ +/obj/item/toy/plush/lizard_plushie/green{ name = "Given-As-Compensation" }, /turf/open/floor/plating, diff --git a/_maps/map_files/MetaStation/MetaStation_skyrat.dmm b/_maps/map_files/MetaStation/MetaStation_skyrat.dmm index 01d1274aec1..47e2d3a06ee 100644 --- a/_maps/map_files/MetaStation/MetaStation_skyrat.dmm +++ b/_maps/map_files/MetaStation/MetaStation_skyrat.dmm @@ -24039,7 +24039,7 @@ /obj/effect/decal/cleanable/dirt/dust, /obj/structure/closet/cardboard, /obj/effect/spawner/lootdrop/maintenance/two, -/obj/item/toy/plush/lizardplushie{ +/obj/item/toy/plush/lizard_plushie/green{ name = "Tends-the-Wounds" }, /obj/structure/sign/poster/contraband/lizard{ @@ -33876,7 +33876,7 @@ "fFr" = ( /obj/structure/lattice/catwalk, /obj/structure/marker_beacon/burgundy, -/obj/item/toy/plush/lizardplushie/space{ +/obj/item/toy/plush/space_lizard_plushie{ desc = "He stared into the void and listened. He didn't expect an answer..."; name = "Void-Stares-Back" }, @@ -54744,7 +54744,7 @@ /area/service/hydroponics) "odQ" = ( /obj/structure/rack, -/obj/item/toy/plush/lizardplushie{ +/obj/item/toy/plush/lizard_plushie/green{ name = "Given-As-Compensation" }, /turf/open/floor/plating, diff --git a/_maps/shuttles/emergency_cruise.dmm b/_maps/shuttles/emergency_cruise.dmm index 141ba3d8afb..19267781c71 100644 --- a/_maps/shuttles/emergency_cruise.dmm +++ b/_maps/shuttles/emergency_cruise.dmm @@ -90,7 +90,7 @@ /turf/open/floor/wood, /area/shuttle/escape) "cZ" = ( -/obj/item/toy/plush/lizardplushie{ +/obj/item/toy/plush/lizard_plushie/green{ name = "Hides-On-Shuttle" }, /turf/open/floor/wood, diff --git a/_maps/shuttles/emergency_skyrat.dmm b/_maps/shuttles/emergency_skyrat.dmm index 9f250b37d14..e866f6b8811 100644 --- a/_maps/shuttles/emergency_skyrat.dmm +++ b/_maps/shuttles/emergency_skyrat.dmm @@ -60,7 +60,7 @@ "bV" = ( /obj/structure/table, /obj/structure/window/spawner, -/obj/item/toy/plush/lizardplushie, +/obj/item/toy/plush/lizard_plushie/green, /obj/item/reagent_containers/food/drinks/bottle/hooch, /obj/structure/window/spawner/west, /turf/open/floor/iron/shuttle/evac{ @@ -308,7 +308,7 @@ "lL" = ( /obj/structure/table, /obj/structure/window/spawner, -/obj/item/toy/plush/lizardplushie/space, +/obj/item/toy/plush/space_lizard_plushie, /obj/item/reagent_containers/food/drinks/bottle/grappa, /obj/structure/window/spawner/east, /turf/open/floor/iron/shuttle/evac{ diff --git a/code/controllers/subsystem/traumas.dm b/code/controllers/subsystem/traumas.dm index 83061ea3f77..ae832fad17d 100644 --- a/code/controllers/subsystem/traumas.dm +++ b/code/controllers/subsystem/traumas.dm @@ -83,7 +83,7 @@ SUBSYSTEM_DEF(traumas) /obj/item/spear, /obj/item/clothing/mask/gas, )), - "lizards" = typecacheof(list(/obj/item/toy/plush/lizardplushie, /obj/item/food/kebab/tail, /obj/item/organ/tail/lizard, + "lizards" = typecacheof(list(/obj/item/toy/plush/lizard_plushie, /obj/item/food/kebab/tail, /obj/item/organ/tail/lizard, /obj/item/reagent_containers/food/drinks/bottle/lizardwine, /obj/item/clothing/head/lizard, /obj/item/clothing/shoes/cowboy/lizard, )), diff --git a/code/datums/greyscale/greyscale_configs.dm b/code/datums/greyscale/greyscale_configs.dm index 02604792b4f..f14f1244e7c 100644 --- a/code/datums/greyscale/greyscale_configs.dm +++ b/code/datums/greyscale/greyscale_configs.dm @@ -202,3 +202,8 @@ /datum/greyscale_config/sombrero/base_worn name = "Base Worn Sombrero Style" json_config = 'code/datums/greyscale/json_configs/sombrero_base_worn.json' + +/datum/greyscale_config/plush_lizard + name = "Plushie Lizard" + icon_file = 'icons/obj/plushes.dmi' + json_config = 'code/datums/greyscale/json_configs/plushie_lizard.json' diff --git a/code/datums/greyscale/json_configs/plushie_lizard.json b/code/datums/greyscale/json_configs/plushie_lizard.json new file mode 100644 index 00000000000..47e86a61d8a --- /dev/null +++ b/code/datums/greyscale/json_configs/plushie_lizard.json @@ -0,0 +1,26 @@ +{ + "": [ + { + "type": "icon_state", + "icon_state": "plushie_lizard_body", + "blend_mode": "overlay", + "color_ids": [ 1 ] + }, + { + "type": "icon_state", + "icon_state": "plushie_lizard_eyes", + "blend_mode": "overlay", + "color_ids": [ 2 ] + }, + { + "type": "icon_state", + "icon_state": "plushie_lizard_tongue", + "blend_mode": "overlay" + }, + { + "type": "icon_state", + "icon_state": "plushie_lizard_pupil", + "blend_mode": "overlay" + } + ] +} diff --git a/code/game/objects/items/plushes.dm b/code/game/objects/items/plushes.dm index e8bb8593deb..8883ecdd0dc 100644 --- a/code/game/objects/items/plushes.dm +++ b/code/game/objects/items/plushes.dm @@ -499,20 +499,43 @@ if(P && istype(P.loc, /turf/open) && !P.clash_target && !clashing) P.clash_of_the_plushies(src) -/obj/item/toy/plush/lizardplushie +/obj/item/toy/plush/lizard_plushie name = "lizard plushie" desc = "An adorable stuffed toy that resembles a lizardperson." - icon_state = "plushie_lizard" - inhand_icon_state = "plushie_lizard" + icon_state = "map_pushie_lizard" + greyscale_config = /datum/greyscale_config/plush_lizard attack_verb_continuous = list("claws", "hisses", "tail slaps") attack_verb_simple = list("claw", "hiss", "tail slap") squeak_override = list('sound/weapons/slash.ogg' = 1) -/obj/item/toy/plush/lizardplushie/space +/obj/item/toy/plush/lizard_plushie/Initialize() + . = ..() + if(!greyscale_colors) + // Generate a random valid lizard color for our plushie friend + var/generated_lizard_color = "#" + random_color() + var/temp_hsv = RGBtoHSV(generated_lizard_color) + + // If our color is too dark, use the classic green lizard plush color + if(ReadHSV(temp_hsv)[3] < ReadHSV("#7F7F7F")[3]) + generated_lizard_color = "#66ff33" + + // Set our greyscale colors to the lizard color we made + black eyes + set_greyscale(colors = list(generated_lizard_color, "#000000")) + +// Preset lizard plushie that uses the original lizard plush green. (Or close to it) +/obj/item/toy/plush/lizard_plushie/green + desc = "An adorable stuffed toy that resembles a green lizardperson. This one fills you with nostalgia and soul." + greyscale_colors = "#66ff33#000000" + +/obj/item/toy/plush/space_lizard_plushie name = "space lizard plushie" desc = "An adorable stuffed toy that resembles a very determined spacefaring lizardperson. To infinity and beyond, little guy." icon_state = "plushie_spacelizard" inhand_icon_state = "plushie_spacelizard" + // space lizards can't hit people with their tail, it's stuck in their suit + attack_verb_continuous = list("claws", "hisses", "bops") + attack_verb_simple = list("claw", "hiss", "bops") + squeak_override = list('sound/weapons/slash.ogg' = 1) /obj/item/toy/plush/snakeplushie name = "snake plushie" diff --git a/code/game/objects/items/storage/boxes.dm b/code/game/objects/items/storage/boxes.dm index 0f538a335f5..1db29fdbe00 100644 --- a/code/game/objects/items/storage/boxes.dm +++ b/code/game/objects/items/storage/boxes.dm @@ -867,7 +867,7 @@ /// the plushies that aren't of things trying to kill you var/list/static/approved_by_corporate = list(/obj/item/toy/plush/carpplushie, // well, maybe they can be something that tries to kill you a little bit /obj/item/toy/plush/slimeplushie, - /obj/item/toy/plush/lizardplushie, + /obj/item/toy/plush/lizard_plushie, /obj/item/toy/plush/snakeplushie, /obj/item/toy/plush/plasmamanplushie, /obj/item/toy/plush/beeplushie, diff --git a/code/modules/mining/abandoned_crates.dm b/code/modules/mining/abandoned_crates.dm index da826e93d87..9a5d02e18fd 100644 --- a/code/modules/mining/abandoned_crates.dm +++ b/code/modules/mining/abandoned_crates.dm @@ -182,7 +182,7 @@ if(75 to 76) new /obj/item/bikehorn/airhorn(src) if(77 to 78) - new /obj/item/toy/plush/lizardplushie(src) + new /obj/item/toy/plush/lizard_plushie(src) if(79 to 80) new /obj/item/stack/sheet/mineral/bananium(src, 10) if(81 to 82) diff --git a/icons/obj/plushes.dmi b/icons/obj/plushes.dmi index faf6d4cbde4..9bcb4474dd8 100644 Binary files a/icons/obj/plushes.dmi and b/icons/obj/plushes.dmi differ diff --git a/modular_skyrat/master_files/code/_globalvars/maint_loot_common.dm b/modular_skyrat/master_files/code/_globalvars/maint_loot_common.dm index 0927052c431..583974ceb2b 100644 --- a/modular_skyrat/master_files/code/_globalvars/maint_loot_common.dm +++ b/modular_skyrat/master_files/code/_globalvars/maint_loot_common.dm @@ -254,7 +254,7 @@ GLOBAL_LIST_INIT(common_loot, list( //common: basic items /obj/item/toy/plush/bubbleplush = 5, /obj/item/toy/plush/carpplushie = 5, /obj/item/toy/plush/goatplushie = 5, - /obj/item/toy/plush/lizardplushie = 5, + /obj/item/toy/plush/lizard_plushie/green = 5, /obj/item/toy/plush/moth = 5, /obj/item/toy/plush/narplush = 5, /obj/item/toy/plush/nukeplushie = 5, diff --git a/modular_skyrat/modules/customization/modules/client/loadout/backpack.dm b/modular_skyrat/modules/customization/modules/client/loadout/backpack.dm index 09ffe4bc3ef..0b49dbb15db 100644 --- a/modular_skyrat/modules/customization/modules/client/loadout/backpack.dm +++ b/modular_skyrat/modules/customization/modules/client/loadout/backpack.dm @@ -185,7 +185,7 @@ /datum/loadout_item/backpack/plushies/plushliz name = "Lizard plushie" - path = /obj/item/toy/plush/lizardplushie + path = /obj/item/toy/plush/lizard_plushie/green /datum/loadout_item/backpack/plushies/plushsnek name = "Snake plushie"