Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Синди мыло стирает фибры и отпечатки с объекта #13711

Open
wants to merge 32 commits into
base: master
Choose a base branch
from

Conversation

TheDratutiHyDa
Copy link

Описание изменений

Синди мылу добавлено свойство убирать фибры и отпечатки при клике

Почему и что этот ПР улучшит

Добавит новое применение мылу, расширит стелс возможности

Авторство

hyda

Чеинжлог

🆑 hyda

  • tweak: Добавлена возможность стирать отпечатки с объектов при помощи синди мыла

@TauKitty
Copy link
Contributor

Changelog status: ✔️

@TauKitty TauKitty added the Tweak label Jan 10, 2025
Copy link
Member

@volas volas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Еще важное замечание - необходимо использовать для кода отступы TAB-ом, а не пробелами.

Comment on lines 97 to 98
if(user.client && (target in user.client.screen))
to_chat(user, "<span class='notice'>You need to take that [target.name] off before cleaning it.</span>")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Проверять на клиентский screen не очень корректно - итем на нем может оказаться даже если сам предмет не в инвентаре.

Тут несколько вариантов, самое простое наверно проверять, что итем находится на тайле, а не где-то еще

Suggested change
if(user.client && (target in user.client.screen))
to_chat(user, "<span class='notice'>You need to take that [target.name] off before cleaning it.</span>")
if(!isturf(target.loc))
to_chat(user, "<span class='notice'>You need to take that [target.name] off before cleaning it.</span>")

Comment on lines 97 to 108
if(user.client && (target in user.client.screen))
to_chat(user, "<span class='notice'>You need to take that [target.name] off before cleaning it.</span>")
else if(istype(target,/obj/effect/decal/cleanable))
to_chat(user, "<span class='notice'>You scrub \the [target.name] out.</span>")
qdel(target)
if(target.fingerprints)
target.fingerprints = null
if(target.suit_fibers)
target.suit_fibers = null
target.clean_blood()
to_chat(user, "<span class='notice'>You FULLY clean \the [target.name].</span>")
return
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Я еще рекомендую не строить лесенки из if-else, и воспользоваться ранним возвратом, так код будет читаймее. Что-то вроде

if(!isturf(target.loc))
	to_chat(user, "<span class='notice'>You need to take that [target.name] off before cleaning it.</span>")
	return
if(!istype(target,/obj/effect/decal/cleanable))
	to_chat(user, "<span class='notice'>....</span>")
	return

...тут остальной код...

if(target.suit_fibers)
target.suit_fibers = null
target.clean_blood()
to_chat(user, "<span class='notice'>You FULLY clean \the [target.name].</span>")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Сейчас тут нет задержки в действии, и два сообщения
You scrub \the [target.name] out
You FULLY clean \the [target.name]

просто сразу появятся друг за другом. Если хочется добавить задержку - посмотри в коде билда примеры использования do_after()

to_chat(user, "<span class='notice'>You need to take that [target.name] off before cleaning it.</span>")
else if(istype(target,/obj/effect/decal/cleanable))
to_chat(user, "<span class='notice'>You scrub \the [target.name] out.</span>")
qdel(target)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

это точно что-то лишнее, тут ты удаляешь итем который чистишь из игры.

@Chip11-n
Copy link
Contributor

Предлагаю все же оставить хотя бы сообщение, мол "заметны следы затирки", иначе детектив вообще бедолага. И просто, и не обесценивает профу.

@TheDratutiHyDa TheDratutiHyDa requested a review from volas January 10, 2025 17:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants