Following up on the previous PR, here are the cleaned changes.
I implemented your suggestion to disable other animation states for AssumeDragCubePosition by doing all the animation initialization within AssumeDragCubePosition via InitializeAnimationSystem on each call. this.part.InitiateAnimation is called within InitializeAnimationSystem disabling the animation states. After that one of the states may be re-enabled - either deployed, semideployed or neither of them.
I tested the code (briefly tbh.) with simple fall tests, including quicksaving and reloading and it seemed to work. Computed drag cube parameters in partdatabase.cfg look sensible as well.
Following up on the previous PR, here are the cleaned changes.
I implemented your suggestion to disable other animation states for
AssumeDragCubePosition
by doing all the animation initialization withinAssumeDragCubePosition
viaInitializeAnimationSystem
on each call.this.part.InitiateAnimation
is called withinInitializeAnimationSystem
disabling the animation states. After that one of the states may be re-enabled - either deployed, semideployed or neither of them.I tested the code (briefly tbh.) with simple fall tests, including quicksaving and reloading and it seemed to work. Computed drag cube parameters in partdatabase.cfg look sensible as well.