@@ -2012,7 +2012,7 @@ void AHuman::PreControllerUpdate() {
2012
2012
m_StrideTimer.Reset ();
2013
2013
}
2014
2014
Vector jointPos = m_Pos + RotateOffset (m_pFGLeg->GetParentOffset ());
2015
- m_ArmClimbing[BGROUND] = !m_pFGFootGroup->PushAsLimb (jointPos, m_Vel, m_WalkAngle[FGROUND], m_Paths[FGROUND][movementPath], deltaTime, &restarted, false , Vector (0 .0F , m_Paths[FGROUND][movementPath].GetLowestY ()), pathOffset);
2015
+ m_ArmClimbing[BGROUND] = !m_pFGFootGroup->PushAsLimb (jointPos, m_pFGLeg-> GetMaxLength (), m_Vel, m_WalkAngle[FGROUND], m_Paths[FGROUND][movementPath], deltaTime, &restarted, false , Vector (0 .0F , m_Paths[FGROUND][movementPath].GetLowestY ()), pathOffset);
2016
2016
} else {
2017
2017
m_ArmClimbing[BGROUND] = false ;
2018
2018
}
@@ -2023,7 +2023,7 @@ void AHuman::PreControllerUpdate() {
2023
2023
m_StrideTimer.Reset ();
2024
2024
}
2025
2025
Vector jointPos = m_Pos + RotateOffset (m_pBGLeg->GetParentOffset ());
2026
- m_ArmClimbing[FGROUND] = !m_pBGFootGroup->PushAsLimb (jointPos, m_Vel, m_WalkAngle[BGROUND], m_Paths[BGROUND][movementPath], deltaTime, &restarted, false , Vector (0 .0F , m_Paths[BGROUND][movementPath].GetLowestY ()), pathOffset);
2026
+ m_ArmClimbing[FGROUND] = !m_pBGFootGroup->PushAsLimb (jointPos, m_pBGLeg-> GetMaxLength (), m_Vel, m_WalkAngle[BGROUND], m_Paths[BGROUND][movementPath], deltaTime, &restarted, false , Vector (0 .0F , m_Paths[BGROUND][movementPath].GetLowestY ()), pathOffset);
2027
2027
} else {
2028
2028
if (m_pBGLeg) {
2029
2029
m_pBGFootGroup->FlailAsLimb (m_Pos, RotateOffset (m_pBGLeg->GetParentOffset ()), m_pBGLeg->GetMaxLength (), m_PrevVel, m_AngularVel, m_pBGLeg->GetMass (), deltaTime);
@@ -2072,7 +2072,7 @@ void AHuman::PreControllerUpdate() {
2072
2072
if (m_Paths[FGROUND][CLIMB].PathEnded () || m_Paths[FGROUND][CLIMB].PathIsAtStart ()) {
2073
2073
m_StrideTimer.Reset ();
2074
2074
}
2075
- m_pFGHandGroup->PushAsLimb (m_Pos + Vector (0 , m_pFGArm->GetParentOffset ().m_Y ).RadRotate (-rot), m_Vel, Matrix (), m_Paths[FGROUND][CLIMB], deltaTime, 0 , false );
2075
+ m_pFGHandGroup->PushAsLimb (m_Pos + Vector (0 , m_pFGArm->GetParentOffset ().m_Y ).RadRotate (-rot), m_pFGArm-> GetMaxLength (), m_Vel, Matrix (), m_Paths[FGROUND][CLIMB], deltaTime, 0 , false );
2076
2076
} else {
2077
2077
m_ArmClimbing[FGROUND] = false ;
2078
2078
m_Paths[FGROUND][CLIMB].Terminate ();
@@ -2085,7 +2085,7 @@ void AHuman::PreControllerUpdate() {
2085
2085
if (m_Paths[BGROUND][CLIMB].PathEnded () || m_Paths[BGROUND][CLIMB].PathIsAtStart ()) {
2086
2086
m_StrideTimer.Reset ();
2087
2087
}
2088
- m_pBGHandGroup->PushAsLimb (m_Pos + Vector (0 , m_pBGArm->GetParentOffset ().m_Y ).RadRotate (-rot), m_Vel, Matrix (), m_Paths[BGROUND][CLIMB], deltaTime, 0 , false );
2088
+ m_pBGHandGroup->PushAsLimb (m_Pos + Vector (0 , m_pBGArm->GetParentOffset ().m_Y ).RadRotate (-rot), m_pBGArm-> GetMaxLength (), m_Vel, Matrix (), m_Paths[BGROUND][CLIMB], deltaTime, 0 , false );
2089
2089
} else {
2090
2090
m_ArmClimbing[BGROUND] = false ;
2091
2091
m_Paths[BGROUND][CLIMB].Terminate ();
@@ -2114,7 +2114,7 @@ void AHuman::PreControllerUpdate() {
2114
2114
if (m_Paths[FGROUND][CRAWL].PathEnded () || m_Paths[FGROUND][CRAWL].PathIsAtStart ()) {
2115
2115
m_StrideTimer.Reset ();
2116
2116
}
2117
- m_pFGFootGroup->PushAsLimb (m_Pos + RotateOffset (m_pFGLeg->GetParentOffset ()), m_Vel, m_Rotation, m_Paths[FGROUND][CRAWL], deltaTime);
2117
+ m_pFGFootGroup->PushAsLimb (m_Pos + RotateOffset (m_pFGLeg->GetParentOffset ()), m_pFGLeg-> GetMaxLength (), m_Vel, m_Rotation, m_Paths[FGROUND][CRAWL], deltaTime);
2118
2118
} else {
2119
2119
m_Paths[FGROUND][CRAWL].Terminate ();
2120
2120
}
@@ -2123,17 +2123,17 @@ void AHuman::PreControllerUpdate() {
2123
2123
if (m_Paths[BGROUND][CRAWL].PathEnded () || m_Paths[BGROUND][CRAWL].PathIsAtStart ()) {
2124
2124
m_StrideTimer.Reset ();
2125
2125
}
2126
- m_pBGFootGroup->PushAsLimb (m_Pos + RotateOffset (m_pBGLeg->GetParentOffset ()), m_Vel, m_Rotation, m_Paths[BGROUND][CRAWL], deltaTime);
2126
+ m_pBGFootGroup->PushAsLimb (m_Pos + RotateOffset (m_pBGLeg->GetParentOffset ()), m_pBGLeg-> GetMaxLength (), m_Vel, m_Rotation, m_Paths[BGROUND][CRAWL], deltaTime);
2127
2127
} else {
2128
2128
m_Paths[BGROUND][CRAWL].Terminate ();
2129
2129
}
2130
2130
if (m_pBGArm) {
2131
2131
m_ArmClimbing[BGROUND] = true ;
2132
- m_pBGHandGroup->PushAsLimb (m_Pos + RotateOffset (Vector (0 , m_pBGArm->GetParentOffset ().m_Y )), m_Vel, m_Rotation, m_Paths[BGROUND][ARMCRAWL], deltaTime);
2132
+ m_pBGHandGroup->PushAsLimb (m_Pos + RotateOffset (Vector (0 , m_pBGArm->GetParentOffset ().m_Y )), m_pBGArm-> GetMaxLength (), m_Vel, m_Rotation, m_Paths[BGROUND][ARMCRAWL], deltaTime);
2133
2133
}
2134
2134
if (m_pFGArm && !m_pFGArm->GetHeldDevice () && !(m_Paths[FGROUND][ARMCRAWL].PathEnded () && m_Paths[BGROUND][ARMCRAWL].GetRegularProgress () < 0 .5F )) {
2135
2135
m_ArmClimbing[FGROUND] = true ;
2136
- m_pFGHandGroup->PushAsLimb (m_Pos + RotateOffset (Vector (0 , m_pFGArm->GetParentOffset ().m_Y )), m_Vel, m_Rotation, m_Paths[FGROUND][ARMCRAWL], deltaTime);
2136
+ m_pFGHandGroup->PushAsLimb (m_Pos + RotateOffset (Vector (0 , m_pFGArm->GetParentOffset ().m_Y )), m_pFGArm-> GetMaxLength (), m_Vel, m_Rotation, m_Paths[FGROUND][ARMCRAWL], deltaTime);
2137
2137
}
2138
2138
// Restart the stride if the current one seems to be taking too long.
2139
2139
if (m_StrideTimer.IsPastSimMS (m_Paths[FGROUND][CRAWL].GetTotalPathTime ())) {
@@ -2170,11 +2170,11 @@ void AHuman::PreControllerUpdate() {
2170
2170
m_Paths[BGROUND][CRAWL].Terminate ();
2171
2171
2172
2172
if (m_pFGLeg) {
2173
- m_pFGFootGroup->PushAsLimb (m_Pos.GetFloored () + m_pFGLeg->GetParentOffset ().GetXFlipped (m_HFlipped), m_Vel, Matrix (), m_Paths[FGROUND][PRONE], deltaTime);
2173
+ m_pFGFootGroup->PushAsLimb (m_Pos.GetFloored () + m_pFGLeg->GetParentOffset ().GetXFlipped (m_HFlipped), m_pFGLeg-> GetMaxLength (), m_Vel, Matrix (), m_Paths[FGROUND][PRONE], deltaTime);
2174
2174
}
2175
2175
2176
2176
if (m_pBGLeg) {
2177
- m_pBGFootGroup->PushAsLimb (m_Pos.GetFloored () + m_pBGLeg->GetParentOffset ().GetXFlipped (m_HFlipped), m_Vel, Matrix (), m_Paths[BGROUND][PRONE], deltaTime);
2177
+ m_pBGFootGroup->PushAsLimb (m_Pos.GetFloored () + m_pBGLeg->GetParentOffset ().GetXFlipped (m_HFlipped), m_pBGLeg-> GetMaxLength (), m_Vel, Matrix (), m_Paths[BGROUND][PRONE], deltaTime);
2178
2178
}
2179
2179
2180
2180
} else {
@@ -2187,12 +2187,12 @@ void AHuman::PreControllerUpdate() {
2187
2187
2188
2188
if (m_pFGLeg) {
2189
2189
Vector jointPos = m_Pos.GetFloored () + m_pFGLeg->GetParentOffset ().GetXFlipped (m_HFlipped);
2190
- m_pFGFootGroup->PushAsLimb (jointPos, m_Vel, m_WalkAngle[FGROUND], m_Paths[FGROUND][STAND], deltaTime, nullptr , !m_pBGLeg, Vector (0 .0F , m_Paths[FGROUND][STAND].GetLowestY ()), pathOffset);
2190
+ m_pFGFootGroup->PushAsLimb (jointPos, m_pFGLeg-> GetMaxLength (), m_Vel, m_WalkAngle[FGROUND], m_Paths[FGROUND][STAND], deltaTime, nullptr , !m_pBGLeg, Vector (0 .0F , m_Paths[FGROUND][STAND].GetLowestY ()), pathOffset);
2191
2191
}
2192
2192
2193
2193
if (m_pBGLeg) {
2194
2194
Vector jointPos = m_Pos.GetFloored () + m_pBGLeg->GetParentOffset ().GetXFlipped (m_HFlipped);
2195
- m_pBGFootGroup->PushAsLimb (jointPos, m_Vel, m_WalkAngle[BGROUND], m_Paths[BGROUND][STAND], deltaTime, nullptr , !m_pFGLeg, Vector (0 .0F , m_Paths[FGROUND][STAND].GetLowestY ()), pathOffset);
2195
+ m_pBGFootGroup->PushAsLimb (jointPos, m_pBGLeg-> GetMaxLength (), m_Vel, m_WalkAngle[BGROUND], m_Paths[BGROUND][STAND], deltaTime, nullptr , !m_pFGLeg, Vector (0 .0F , m_Paths[FGROUND][STAND].GetLowestY ()), pathOffset);
2196
2196
}
2197
2197
}
2198
2198
}
0 commit comments