mirror of
https://foundry.openuru.org/gitblit/r/CWE-ou-minkata.git
synced 2025-07-14 02:27:40 -04:00
Fix landing behaviors
Looks like Cyan broke these when they fixed superjumps. It appears that LinearVelocity is only good while the PhysicalControllerCore is updating, and it stashes the result for later so nothing else can touch it. Regardless, we need to test AchievedLinearVelocity outside of the update proc.
This commit is contained in:
@ -133,8 +133,10 @@ void plWalkingController::RecalcVelocity(double timeNow, double timePrev, hsBool
|
|||||||
|
|
||||||
if (fController && !fWalkingStrategy->IsOnGround())
|
if (fController && !fWalkingStrategy->IsOnGround())
|
||||||
{
|
{
|
||||||
|
// PhysX Hack: AchievedLinearVelocity is a Cyanic fix for superjumps. LinearVelocity is
|
||||||
|
// always (0,0,0) outside of the controller update proc
|
||||||
fImpactTime = fWalkingStrategy->GetAirTime();
|
fImpactTime = fWalkingStrategy->GetAirTime();
|
||||||
fImpactVelocity = fController->GetLinearVelocity();
|
fImpactVelocity = fController->GetAchievedLinearVelocity();
|
||||||
fClearImpact = false;
|
fClearImpact = false;
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
Reference in New Issue
Block a user