Fix car sliding
This commit is contained in:
parent
745067d8cc
commit
72b28f2bb0
3 changed files with 13 additions and 5 deletions
10
racing.h
10
racing.h
|
@ -1156,11 +1156,13 @@ uint32_t LCR_racingStep(unsigned int input)
|
|||
LCR_racing.carBody.joints[4].velocity[1],
|
||||
LCR_racing.carBody.joints[4].velocity[2]);
|
||||
|
||||
// apply gravity only if wheels are on the ground (prevents sliding a bit):
|
||||
/* Apply gravity like this: if all wheels are on ground, we don't apply
|
||||
gravity to roof. This helps prevent sliding. */
|
||||
|
||||
if (((LCR_racing.wheelCollisions | (LCR_racing.wheelCollisions >> 4))
|
||||
& 0x0f) != 0x0f)
|
||||
TPE_bodyApplyGravity(&(LCR_racing.carBody),LCR_GRAVITY);
|
||||
for (i = 0; i < 5; ++i)
|
||||
if (i < 4 || (((LCR_racing.wheelCollisions |
|
||||
(LCR_racing.wheelCollisions >> 4)) & 0x0f) != 0x0f))
|
||||
LCR_racing.carBody.joints[i].velocity[1] -= LCR_GRAVITY;
|
||||
|
||||
if (LCR_racing.wheelCollisions) // at least one wheel on ground?
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue