Skip to content

Commit

Permalink
[HOTFIX] Фиксы кобуры (#97)
Browse files Browse the repository at this point in the history
* fix

i hate ss13 code

* Кобуру теперь можно надеть на любую форму.
  • Loading branch information
SSensum authored Sep 11, 2023
1 parent fa7bb69 commit 283944f
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 8 deletions.
24 changes: 16 additions & 8 deletions tff_modular/modules/cqd_holsters/code/holster.dm
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,9 @@
icon = 'tff_modular/modules/cqd_holsters/icons/cqd_holster.dmi'
worn_icon = 'tff_modular/modules/cqd_holsters/icons/cqd_holster_worn.dmi'
icon_state = "cqd-holster"
worn_icon_state = null
above_suit = FALSE
w_class = WEIGHT_CLASS_NORMAL
attachment_slot = null

/obj/item/clothing/accessory/cqd_holster/Initialize(mapload)
. = ..()
Expand All @@ -22,17 +22,25 @@
return FALSE
. = ..()

// Этот прок вызываеться при успешном надевании аксессуара, а также при надевании формы. Его я использую для перехвата разных ситуаций специфичных.
// Например чтобы скрыть внешний спрайтик для набберов и тешари.
// Этот прок вызываеться при успешном надевании аксессуара, а также при надевании формы. Его я использую для перехвата разных ситуаций специфичных. Например чтобы скрыть внешний спрайтик для набберов и тешари.
/obj/item/clothing/accessory/cqd_holster/on_uniform_equipped(obj/item/clothing/under/U, user)
. = ..()
// Если всё нормально - то он будет использовать значение icon_state
worn_icon_state = null
/*
Следующий код работает по принципу того, что он перед вызовом родительского прока проверяет носителя формы на определённые факторы. Если владелец попадает под определённые факторы - спрайт-состояние меняется на альтернативное (в нашем случае на скрытое).
ВАЖНОЕ УТОЧНЕНИЕ! Аксессуарам ПЛЕВАТЬ на worn_icon_state, так что мне нужно менять сам icon_state, чтобы скрыть или изменить внешний спрайтик кобуры.
Ввиду такой ситуёвины я просто создал копии обычных айтем-спрайтов кобуры просто с другим icon_state, дабы сами не пропадали при надевании на того, на ком их спрайт будет изменён/скрыт.
*/

icon_state = initial(icon_state)

if(isteshari(user))
worn_icon_state = "hidden"
icon_state = initial(icon_state) + "_hidden"
if(isnabber(user))
worn_icon_state = "hidden"
icon_state = initial(icon_state) + "_hidden"

// Вызываем родительский прок после проверок.
. = ..()

/obj/item/clothing/accessory/cqd_holster/detach(obj/item/clothing/under/U)
// А это костыльный обход багули, который я подглядел у кармашка для ручек.
Expand Down
Binary file modified tff_modular/modules/cqd_holsters/icons/cqd_holster.dmi
Binary file not shown.
Binary file modified tff_modular/modules/cqd_holsters/icons/cqd_holster_aesthetic.dmi
Binary file not shown.
Binary file modified tff_modular/modules/cqd_holsters/icons/cqd_holster_syndicate.dmi
Binary file not shown.

0 comments on commit 283944f

Please sign in to comment.