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

More features and tweaks for broadcasting #6115

Merged
merged 26 commits into from
Apr 24, 2024

Conversation

ihatethisengine
Copy link
Contributor

@ihatethisengine ihatethisengine commented Apr 8, 2024

About the pull request

Turned out that through cameras you can only see speech that you already see without cameras. So I quickly found a way to fix it with the least (for me) amount of crap code.

Explain why it's good for the game

That's pretty much the point of broadcasting.

Testing Photographs and Procedure

2024-04-08_09-56-41
Screenshot_2024-04-10_01-35-26
Screenshot_2024-04-10_01-56-08
Screenshot_2024-04-10_04-14-50

Changelog

🆑 ihatethisengine
add: Combat Correspondent can broadcast speech and emotes.
add: Speech close enough to the camera will be shown above connected TVs as abovehead messages
/:cl:

@github-actions github-actions bot added the Feature Feature coder badge label Apr 8, 2024
fira
fira previously requested changes Apr 8, 2024
code/game/machinery/computer/camera_console.dm Outdated Show resolved Hide resolved
code/game/machinery/computer/camera_console.dm Outdated Show resolved Hide resolved
@ihatethisengine ihatethisengine changed the title Fixes CC not broadcasting speech Fixes CC not broadcasting speech and emotes Apr 8, 2024
@ihatethisengine ihatethisengine marked this pull request as draft April 9, 2024 22:13
@ihatethisengine ihatethisengine marked this pull request as ready for review April 9, 2024 23:04
@ihatethisengine ihatethisengine marked this pull request as draft April 11, 2024 03:40
@ihatethisengine ihatethisengine marked this pull request as ready for review April 11, 2024 04:00
code/game/machinery/computer/camera_console.dm Outdated Show resolved Hide resolved
code/game/machinery/computer/camera_console.dm Outdated Show resolved Hide resolved
code/game/machinery/computer/camera_console.dm Outdated Show resolved Hide resolved
code/game/machinery/computer/camera_console.dm Outdated Show resolved Hide resolved
@ihatethisengine ihatethisengine changed the title Fixes CC not broadcasting speech and emotes More features and tweaks for broadcasting Apr 11, 2024
@ihatethisengine ihatethisengine marked this pull request as draft April 13, 2024 02:02
@ihatethisengine ihatethisengine marked this pull request as ready for review April 13, 2024 02:08
code/datums/emotes.dm Outdated Show resolved Hide resolved
@Drulikar Drulikar added the Testmerge Candidate we'll test this while you're asleep and the server has 10 players label Apr 15, 2024
cm13-github added a commit that referenced this pull request Apr 20, 2024
cm13-github added a commit that referenced this pull request Apr 20, 2024
@ihatethisengine
Copy link
Contributor Author

ihatethisengine commented Apr 20, 2024

Small update. Now instead of creating a new camera every time the broadcast goes live it just toggles the state of the camera. Another advantage of this is that you don't need to wait for CC to go live to tune TV to his camera, you can tune as soon as camera is spawned. It even works well with renaming.

cm13-github added a commit that referenced this pull request Apr 20, 2024
cm13-github added a commit that referenced this pull request Apr 21, 2024
@ihatethisengine
Copy link
Contributor Author

for some reason broadcasting wasn't working one round, this should probably let people to fix it if something goes wrong.

@ihatethisengine
Copy link
Contributor Author

ihatethisengine commented Apr 21, 2024

So what was the bug. Deconstruction (and, well, destroying) calls QDEL_NULL(current) in the Destroy() where current is the current camera. Usually it does nothing with regular cameras because it closes all instances of tgui before qdellng, and when there are no users of tgui the current camera (on normal consoles) is set to null anyway. Although I managed to cause this (QDEL of a normal security camera) on normal consoles too, at least two times, but it wasn't reliable and there is no consistent steps of reproducing. It just can happen. Anyway, I didn't find a single use case for qdelling here, so I think it's safe to just remove it. It shouldn't happen normally anyway.

Alternative solution would be to just set current to null in the child destroy() proc, if you think removing QDEL in the parent is a bad idea.

cm13-github added a commit that referenced this pull request Apr 21, 2024
cm13-github added a commit that referenced this pull request Apr 22, 2024
cm13-github added a commit that referenced this pull request Apr 23, 2024
cm13-github added a commit that referenced this pull request Apr 23, 2024
cm13-github added a commit that referenced this pull request Apr 24, 2024
@harryob harryob enabled auto-merge April 24, 2024 20:07
@Drulikar Drulikar dismissed stale reviews from fira and themself April 24, 2024 20:09

Resolved

@harryob harryob added this pull request to the merge queue Apr 24, 2024
Merged via the queue into cmss13-devs:master with commit 9512952 Apr 24, 2024
26 checks passed
cm13-github added a commit that referenced this pull request Apr 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature Feature coder badge Testmerge Candidate we'll test this while you're asleep and the server has 10 players
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants