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

Method Sprite_Handle_Civilian_Death

Source/Fodder.cpp:6783–6810  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

6781}
6782
6783void cFodder::Sprite_Handle_Civilian_Death(sSprite* pSprite) {
6784
6785 if (pSprite->field_8 != 0xD6) {
6786 word_3B2D1[2] = -1;
6787
6788 if (mGame_Data.mGamePhase_Data.mGoals_Remaining[eObjective_Protect_Civilians - 1])
6789 mPhase_Aborted = true;
6790
6791 if (mGame_Data.mGamePhase_Data.mGoals_Remaining[eObjective_Get_Civilian_Home - 1])
6792 mPhase_Aborted = true;
6793
6794 pSprite->field_8 = 0xD6;
6795 pSprite->field_A = 0;
6796
6797 int16 Data0 = tool_RandomGet() & 7;
6798 int16 Data4 = mSprite_Civilian_Sound_Death[Data0];
6799
6800 Sound_Play(pSprite, Data4, 0x14);
6801 }
6802 else {
6803 //loc_2584A
6804 pSprite->field_A += 1;
6805 if (pSprite->field_A < 9)
6806 return;
6807
6808 Sprite_Destroy_Wrapper(pSprite);
6809 }
6810}
6811
6812void cFodder::sub_2593D(sSprite* pSprite) {
6813 Sprite_XY_Store(pSprite);

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected