diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index 50b6e9ba8cc..49aa20e4d9b 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -47,7 +47,32 @@ /obj/item/weapon/storage/backpack/holding/duffle name = "dufflebag of holding" + var/tilted = 0 icon_state = "holdingduffle" + +/obj/item/weapon/storage/backpack/holding/duffle/Initialize() + . = ..() + if(prob(50)) + icon_state = "[icon_state]_tilted" + tilted = 1 + +/obj/item/weapon/storage/backpack/holding/duffle/verb/tilt() + set name = "Adjust Duffelbag Angle" + set desc = "Adjust the angle of your dufflebag for cosmetic effect" + set category = "Object" + set src in usr + if(!usr.canmove || usr.stat || usr.restrained()) + return + if(tilted) + icon_state = "[initial(icon_state)]" + to_chat(usr, "You adjust the angle of \the [src] to rest across your lower back.") + tilted = 0 + else + icon_state = "[icon_state]_tilted" + to_chat(usr, "You adjust the angle of \the [src] to rest diagonally across your back.") + tilted = 1 + update_icon() + usr.update_inv_back() /obj/item/weapon/storage/backpack/holding/attackby(obj/item/weapon/W as obj, mob/user as mob) if(istype(W, /obj/item/weapon/storage/backpack/holding)) @@ -147,7 +172,36 @@ desc = "A large dufflebag for holding extra things." icon_state = "duffle" slowdown = 0.5 + var/tilted = 0 + var/can_tilt = 1 max_storage_space = INVENTORY_DUFFLEBAG_SPACE + +/obj/item/weapon/storage/backpack/dufflebag/Initialize() + . = ..() + if(prob(50)) + icon_state = "[icon_state]_tilted" + tilted = 1 + +/obj/item/weapon/storage/backpack/dufflebag/verb/tilt() + set name = "Adjust Duffelbag Angle" + set desc = "Adjust the angle of your dufflebag for cosmetic effect" + set category = "Object" + set src in usr + if(!usr.canmove || usr.stat || usr.restrained()) + return + if(!can_tilt) + to_chat(usr, "[src] can't be adjusted like that.") + return + if(tilted) + icon_state = "[initial(icon_state)]" + to_chat(usr, "You adjust the angle of \the [src] to rest across your lower back.") + tilted = 0 + else + icon_state = "[icon_state]_tilted" + to_chat(usr, "You adjust the angle of \the [src] to rest diagonally across your back.") + tilted = 1 + update_icon() + usr.update_inv_back() /obj/item/weapon/storage/backpack/dufflebag/syndie name = "black dufflebag" @@ -203,7 +257,7 @@ /obj/item/weapon/storage/backpack/dufflebag/cursed name = "cursed dufflebag" desc = "That probably shouldn't be moving..." - icon_state = "duffle_cursed" + icon_state = "duffle_curse" /* * Satchel Types diff --git a/code/modules/vore/fluffstuff/custom_boxes_vr.dm b/code/modules/vore/fluffstuff/custom_boxes_vr.dm index 0ae6d2d440e..9ab72130f02 100644 --- a/code/modules/vore/fluffstuff/custom_boxes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_boxes_vr.dm @@ -138,6 +138,7 @@ icon = 'icons/vore/custom_items_vr.dmi' item_state = "duffle_med" slowdown = 0 + can_tilt = 0 /obj/item/weapon/storage/backpack/dufflebag/sec/fluff/joanrisu/New() ..() diff --git a/icons/inventory/back/item.dmi b/icons/inventory/back/item.dmi index 73e6fae53fb..7cbb551d6ef 100644 Binary files a/icons/inventory/back/item.dmi and b/icons/inventory/back/item.dmi differ diff --git a/icons/inventory/back/item_vr.dmi b/icons/inventory/back/item_vr.dmi index cbeb1b0bc86..0f6ecc51791 100644 Binary files a/icons/inventory/back/item_vr.dmi and b/icons/inventory/back/item_vr.dmi differ diff --git a/icons/inventory/back/mob.dmi b/icons/inventory/back/mob.dmi index 3789379b867..fac62128ecf 100644 Binary files a/icons/inventory/back/mob.dmi and b/icons/inventory/back/mob.dmi differ diff --git a/icons/inventory/back/mob_vr.dmi b/icons/inventory/back/mob_vr.dmi index 62b4e68d05a..c06fc667db7 100644 Binary files a/icons/inventory/back/mob_vr.dmi and b/icons/inventory/back/mob_vr.dmi differ