[fixed] Bison's or vehicle's damage owner did not get unset when sitting player died #2038
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.
Status
Description
Fixes #2037
When playing online and dying while sitting on a catapult or a bison, the game correctly runs
onDetach()
inSeats.as
.However,
will yield false, false, false on client and false, true, true on server.
Because the player was already null on server, the damage player didn't get unset.
To fix the issue, this PR adds a check if the detached blob has the tag
"dead"
. When this condition is true we know the player must have died and we need to unset the damage owner.Tested in online, works.
Steps to Test or Reproduce
Play CTF with bots in a server.
Spawn bison and tame it.
Spawn a bomb and place it in your inventory, then sit on the bison to die while sitting.
Notice how any kills the bison gets now will be attributed to you.
After this PR, kills are not attributed to you anymore.