MCPcopy Create free account
hub / github.com/OpenFodder/openfodder / Sprite_Handle_Player_Adjust_Movement_Speed

Method Sprite_Handle_Player_Adjust_Movement_Speed

Source/Fodder.cpp:15478–15502  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

15476}
15477
15478void cFodder::Sprite_Handle_Player_Adjust_Movement_Speed(sSprite* pSprite) {
15479 Sprite_Handle_Troop_Speed(pSprite);
15480
15481 if (pSprite->field_4F)
15482 return;
15483
15484 if (pSprite->field_50)
15485 return;
15486
15487 int16 Data0 = pSprite->field_10;
15488 Data0 >>= 5;
15489 Data0 -= 1;
15490 Data0 ^= 0x0F;
15491
15492 int16 Data4 = 0;
15493 for (Data4 = 0; Data4 < 0x0E; Data4 += 2) {
15494 if (Data0 == pSprite->field_3C)
15495 break;
15496
15497 Data0 += 2;
15498 Data0 &= 0x0E;
15499 }
15500
15501 pSprite->field_36 = mSprite_Speed_Direction_Modifier[Data4 / 2];
15502}
15503
15504void cFodder::Sprite_Draw_Row_Update(sSprite* pSprite) {
15505 int16 Data4 = 0;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected