MCPcopy Create free account
hub / github.com/bfbbdecomp/bfbb / zPlatform_PaddleStartRotate

Function zPlatform_PaddleStartRotate

src/SB/Game/zPlatform.cpp:381–423  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

379}
380
381void zPlatform_PaddleStartRotate(xEnt* entplat, S32 direction, S32 stutter)
382{
383 zPlatform* plat = (zPlatform*)entplat;
384 F32 time[3];
385
386 if (stutter != 0)
387 {
388 if (direction > 0)
389 {
390 plat->state = ZPLATFORM_STATE_UNK4;
391 }
392 else if (direction < 0)
393 {
394 plat->state = ZPLATFORM_STATE_UNK1;
395 }
396 }
397 else
398 {
399 if (direction > 0)
400 {
401 plat->state = ZPLATFORM_STATE_UNK3;
402 plat->ctr += 1;
403
404 if (plat->ctr >= plat->passet->paddle.countOrient)
405 {
406 plat->ctr = 0;
407 }
408 }
409 else if (direction < 0)
410 {
411 plat->state = ZPLATFORM_STATE_UNK2;
412 plat->ctr -= 1;
413
414 if (plat->ctr < 0)
415 {
416 plat->ctr = plat->passet->paddle.countOrient - 1;
417 }
418 }
419 }
420
421 SolvePaddleMotion(plat, time, -1.0f);
422 plat->tmr = time[0] + time[1] + time[2];
423}
424
425U32 zPlatform_PaddleCollide(xCollis* coll, const xVec3* hitsource, const xVec3* hitvel, U32 worldSpaceNorm)
426{

Callers 2

zPlatform_PaddleCollideFunction · 0.70
zPlatformEventCBFunction · 0.70

Calls 1

SolvePaddleMotionFunction · 0.70

Tested by

no test coverage detected