Dragging - Fix unintended Cargo dependency and improve ragdoll/disconnection handling #9272
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.
When merged this pull request will:
ace_dragging
depend onace_cargo
. There are functions and stringtable entries fromace_cargo
that are called, see here, here and here. Iface_dragging
isn't supposed to be dependent onace_cargo
, thenace_dragging
will need to be adjusted accordingly.HandleDisconnect
mission EH. In my testing (self-hosted MP)HandleDisconnect
fires too late and when trying to read theQGVAR(isCarrying)/QGVAR(isDragging)
variables, it just returnsfalse
, regardless if a unit if carrying/dragging something or not. This makes it impossible for carried/dragged objects to be dropped properly.PlayerDisconnected
fires before and therefore makes it possible to drop carried/dragged objects correctly. However, I'm unsure if there are any disadvantages toPlayerDisconnected
.FUNC(canDrag)
andFUNC(canCarry)
, where it disables dragging/carrying if a unit is in ragdoll animation. This is to prevent odd behaviour. As it is now, you can try to drag a unit in ragdoll, but they stay in place while you go into the drag animation.IMPORTANT
Component - Add|Fix|Improve|Change|Make|Remove {changes}
.