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

Method Sprite_Vehicle_Direction_Update

Source/Fodder.cpp:8434–8461  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

8432}
8433
8434void cFodder::Sprite_Vehicle_Direction_Update(sSprite* pSprite, int16& pData1C) {
8435 int16 Data4 = mSprite_Field10_Saved;
8436 Data4 >>= 5;
8437 Data4 -= 1;
8438 Data4 ^= 0x0F;
8439
8440 int16 Data0 = pSprite->field_A;
8441
8442 Data0 -= Data4;
8443 Data4 = Data0;
8444 Data4 &= 0x0F;
8445 int16 DataC = mDirectionStepTable[Data4];
8446 if (!DataC)
8447 return;
8448
8449 if (DataC == pData1C)
8450 goto loc_2B21D;
8451
8452 if (!pData1C)
8453 goto loc_2B21D;
8454
8455 DataC = pData1C;
8456
8457loc_2B21D:;
8458 pSprite->field_A += DataC;
8459 pSprite->field_A &= 0x0F;
8460
8461}
8462
8463int16 cFodder::Map_Terrain_Get_Moveable_Wrapper(const int8* pMovementData, int16& pX, int16& pY, int16& pData10, int16& pData14) {
8464

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected