diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index 0eefb88417..6a73abd733 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -42,8 +42,10 @@ GLOBAL_LIST_INIT(metal_recipes, list ( \ new/datum/stack_recipe("beige comfy chair", /obj/structure/chair/comfy/beige, 2, one_per_turf = TRUE, on_floor = TRUE), \ new/datum/stack_recipe("black comfy chair", /obj/structure/chair/comfy/black, 2, one_per_turf = TRUE, on_floor = TRUE), \ new/datum/stack_recipe("brown comfy chair", /obj/structure/chair/comfy/brown, 2, one_per_turf = TRUE, on_floor = TRUE), \ + new/datum/stack_recipe("green comfy chair", /obj/structure/chair/comfy/green, 2, one_per_turf = TRUE, on_floor = TRUE), \ new/datum/stack_recipe("lime comfy chair", /obj/structure/chair/comfy/lime, 2, one_per_turf = TRUE, on_floor = TRUE), \ new/datum/stack_recipe("teal comfy chair", /obj/structure/chair/comfy/teal, 2, one_per_turf = TRUE, on_floor = TRUE), \ + new/datum/stack_recipe("purple comfy chair", /obj/structure/chair/comfy/purple, 2, one_per_turf = TRUE, on_floor = TRUE), \ )), \ null, \ new/datum/stack_recipe("rack parts", /obj/item/rack_parts), \ diff --git a/code/game/objects/structures/beds_chairs/chair.dm b/code/game/objects/structures/beds_chairs/chair.dm index 0d38f5eca6..f419cbd23a 100644 --- a/code/game/objects/structures/beds_chairs/chair.dm +++ b/code/game/objects/structures/beds_chairs/chair.dm @@ -226,9 +226,15 @@ /obj/structure/chair/comfy/black color = rgb(167,164,153) +/obj/structure/chair/comfy/green + color = rgb(81,173,106) + /obj/structure/chair/comfy/lime color = rgb(255,251,0) +/obj/structure/chair/comfy/purple + color = rgb(255,50,230) + /obj/structure/chair/comfy/plywood name = "plywood chair" desc = "A relaxing plywood chair." diff --git a/code/game/objects/structures/beds_chairs/pew.dm b/code/game/objects/structures/beds_chairs/pew.dm index 65440fb5d8..ec257a9898 100644 --- a/code/game/objects/structures/beds_chairs/pew.dm +++ b/code/game/objects/structures/beds_chairs/pew.dm @@ -10,7 +10,7 @@ item_chair = null /obj/structure/chair/pew/left - name = "left wooden pew end" + name = "wooden pew end" icon_state = "pewend_left" var/mutable_appearance/leftpewarmrest @@ -41,7 +41,7 @@ update_leftpewarmrest() /obj/structure/chair/pew/right - name = "left wooden pew end" + name = "wooden pew end" icon_state = "pewend_right" var/mutable_appearance/rightpewarmrest diff --git a/code/game/objects/structures/beds_chairs/sofa.dm b/code/game/objects/structures/beds_chairs/sofa.dm new file mode 100644 index 0000000000..6e39aafdf2 --- /dev/null +++ b/code/game/objects/structures/beds_chairs/sofa.dm @@ -0,0 +1,37 @@ +/obj/structure/chair/corp_sofa + name = "sofa" + desc = "Soft, cushy and cozy. These sofas reek of bland faceless corporatism, but they aren't old and ratty at least." + icon_state = "corp_sofamiddle" + icon = 'icons/obj/sofa.dmi' + buildstackamount = 1 + var/mutable_appearance/armrest + +/obj/structure/chair/corp_sofa/Initialize() + armrest = mutable_appearance(icon, "[icon_state]_armrest", ABOVE_MOB_LAYER) + return ..() + +/obj/structure/chair/corp_sofa/post_buckle_mob(mob/living/M) + . = ..() + update_armrest() + +/obj/structure/chair/corp_sofa/proc/update_armrest() + if(has_buckled_mobs()) + add_overlay(armrest) + else + cut_overlay(armrest) + +/obj/structure/chair/corp_sofa/post_unbuckle_mob() + . = ..() + update_armrest() + +/obj/structure/chair/corp_sofa/left + icon_state = "corp_sofaend_left" + +/obj/structure/chair/corp_sofa/right + icon_state = "corp_sofaend_right" + +/obj/structure/chair/corp_sofa/corner + icon_state = "corp_sofacorner" + +/obj/structure/chair/corp_sofa/corner/handle_layer() //only the armrest/back of this chair should cover the mob. + return diff --git a/icons/obj/sofa.dmi b/icons/obj/sofa.dmi index 13cc43fe4e..244ae12a7e 100644 Binary files a/icons/obj/sofa.dmi and b/icons/obj/sofa.dmi differ diff --git a/tgstation.dme b/tgstation.dme index 6fe8ead35b..73beef27e5 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -79,8 +79,8 @@ #include "code\__DEFINES\obj_flags.dm" #include "code\__DEFINES\pinpointers.dm" #include "code\__DEFINES\pipe_construction.dm" -#include "code\__DEFINES\power.dm" #include "code\__DEFINES\pool.dm" +#include "code\__DEFINES\power.dm" #include "code\__DEFINES\preferences.dm" #include "code\__DEFINES\procpath.dm" #include "code\__DEFINES\profile.dm"