-
Notifications
You must be signed in to change notification settings - Fork 4.7k
Fix devices in terminal mispredicting power state #38647
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
Merged
beck-thompson
merged 3 commits into
space-wizards:master
from
Tayrtahn:fix/ispowered-mispredict
Jul 14, 2025
Merged
Fix devices in terminal mispredicting power state #38647
beck-thompson
merged 3 commits into
space-wizards:master
from
Tayrtahn:fix/ispowered-mispredict
Jul 14, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This reverts commit 611e56e.
|
Technically you can do this very normal and very okay way :^) public static bool IsPowered(this EntitySystem system, EntityUid uid, IEntityManager entManager, SharedApcPowerReceiverComponent? receiver = null)
{
var comp = entManager.ComponentFactory.GetRegistration("ApcPowerReceiver");
IComponent? teehee = null;
if (receiver == null && !entManager.TryGetComponent(uid, comp, out teehee))
return true;
receiver = teehee as SharedApcPowerReceiverComponent;
return receiver?.Powered ?? true;
} |
That's very clever and I kinda hate it! |
beck-thompson
approved these changes
Jul 14, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yeah agree with what you said they should be combined but this is clearly a mistake!
FairlySadPanda
pushed a commit
to FairlySadPanda/honk-station-15
that referenced
this pull request
Jul 25, 2025
* The simple solution * The better solution * Revert "The better solution" This reverts commit 611e56e.
Princess-Cheeseballs
pushed a commit
to Princess-Cheeseballs/space-station-14
that referenced
this pull request
Aug 1, 2025
* The simple solution * The better solution * Revert "The better solution" This reverts commit 611e56e.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
A: General Interactions
Area: General in-game interactions that don't relate to another area.
DB: Beginner Friendly
Difficulty: Great for beginners. Unambiguous in scope, and explains how to achieve the result.
P3: Standard
Priority: Default priority for repository items.
S: Approved
Status: Reviewed and approved by at least one maintainer; a PR may require another approval.
size/XS
Denotes a PR that changes 0-9 lines.
T: Bugfix
Type: Bugs and/or bugfixes
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
About the PR
Devices like vending machines and arcade games in the terminal no longer incorrectly state that they do not have power before opening.
Why / Balance
Fixes #38628.
Technical details
Spot the difference:

This PR changes the client version to also return true from that conditional.
Yes, I also think it's silly/bad to have two seemingly-identical static classes that need to be kept in sync - there really should just be a single class in Shared. Unfortunately, the client and server have different
ApcPowerReceiverComponentdefinitions andTryGetComponentdoesn't work with inheritance (so it can't be used withSharedApcPowerReceiverComponent). Try building and running with the reverted commit in this PR if you want to see the problem yourself. This should be dealt with in the future, but for now, this PR just puts the client and server classes back in sync.Requirements