CleverRaven / Cataclysm-DDA

Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world.
http://cataclysmdda.org
Other
10.61k stars 4.17k forks source link

Let light through but not sight #56633

Open Fris0uman opened 2 years ago

Fris0uman commented 2 years ago

Is your feature request related to a problem? Please describe.

Standing in front of stained glass windows in broad day light and yet I'm still in darkness.

image

It would be nice if the engine could support letting light through a tile without making the tile see through

Solution you would like.

Being able to have some terrain/furniture obstruct sight without bloking light completly. It could allow stained glass to let light through but alos stuff like having some light pass throguh boarded up windows or under doors.

Describe alternatives you have considered.

No response

Additional context

No response

Zireael07 commented 2 years ago

Would also be useful for frosted glass windows, e.g. in changing rooms and bathrooms

RAldrich commented 2 years ago

This is reasonably straightforward on the player vision side of things, the lighting code is already split between light transparency and vision transparency, and supports translucency / light attenuation. I have working version that lets light through but prevents player vision.

I still need to figure out the monster vision code half of it, as they seem to be able to be able to asymmetrically see the player for 6 tiles or so.

That monster behavior might actually be desirable though, insofar as it lets them see motion behind the window? I'll probably try to figure out why it's happening either way before I post a PR for this.

github-actions[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not bump or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.