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

Method Sprite_Handle_Shadow

Source/Fodder.cpp:12275–12308  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

12273}
12274
12275void cFodder::Sprite_Handle_Shadow(sSprite* pSprite) {
12276 sSprite* Data28 = pSprite->field_1A_sprite;
12277
12278 if (Data28->field_18 == eSprite_Explosion) {
12279 Sprite_Destroy_Wrapper(pSprite);
12280 return;
12281 }
12282
12283 if (Data28->field_52) {
12284 Sprite_Destroy_Wrapper(pSprite);
12285 return;
12286 }
12287
12288 pSprite->field_8 = 0x8D;
12289 int16 Data0 = Data28->field_20;
12290
12291 Data0 >>= 3;
12292 Data0 += 1;
12293 if (Data0 > 2)
12294 Data0 = 1;
12295
12296 pSprite->field_A = Data0;
12297 pSprite->field_0 = Data28->field_0;
12298 pSprite->field_4 = Data28->field_4;
12299 Data0 = Data28->field_20;
12300 Data0 >>= 2;
12301 pSprite->field_0 += Data0;
12302 pSprite->field_4 += Data0;
12303 pSprite->field_0 += 5;
12304 pSprite->field_4 -= 3;
12305
12306 if (Data28->field_8 == 0x7C)
12307 pSprite->field_8 = 0x7C;
12308}
12309
12310void cFodder::Sprite_Handle_Enemy_Rocket(sSprite* pSprite) {
12311

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected