Player death on direct Health variable modification.#240
Open
Donelast wants to merge 7 commits into
Open
Conversation
Fixed a bug where health and armor wouldn't go above 100. Changed calculations from percentages to absolute values so high stats now display correctly
Previously, the Health value could drop into the negatives when modified directly, which caused the player to become invulnerable. Since s&box attracts newcomers who might use standard visual programming to create entities, they may not realize that damage should be applied via the OnDamage function, and instead simply modify Health directly. To address this, I’ve implemented a check so that if health is directly set below 1, the player dies correctly. This resolves the issue where direct modification resulted in negative health and kept the player alive. Previously, direct changes led to player immortality and negative health values.
Previously, the Health value could drop into the negatives when modified directly, making the player invulnerable. Since s&box attracts newcomers who might use visual programming to create entities, they may not realize that damage should be applied via the OnDamage function. To address this, I’ve implemented a check so that if health is set below 1 directly, the player dies correctly. This resolves the issue of negative health values and immortality.
Member
|
this code is very stinky |
Contributor
Author
|
What do I need to rewrite? |
Contributor
|
What's the point of Would it make sense to use the field keyword and just detect in the property setter whether Health got set to 0 and call the relevant event, aka converting the damage method to a utility that just changes Health? |
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Previously, the Health value could drop into the negatives when modified directly, making the player invulnerable. Since s&box attracts newcomers who might use visual programming to create entities, they may not realize that damage should be applied via the OnDamage function.
To address this, I’ve implemented a check so that if health is set below 1 directly, the player dies correctly. This resolves the issue of negative health values and immortality.