| 14101 | } |
| 14102 | |
| 14103 | void cFodder::Sprite_Handle_Bonus_RankHomingInvin_Squad(sSprite* pSprite) { |
| 14104 | |
| 14105 | if (pSprite->field_38) { |
| 14106 | pSprite->field_18 = eSprite_Explosion; |
| 14107 | return; |
| 14108 | } |
| 14109 | |
| 14110 | int16 Data0 = 0; |
| 14111 | pSprite->field_8 = 0xE6; |
| 14112 | pSprite->field_A = 0; |
| 14113 | if (Map_Get_Distance_Between_Sprite_And_Squadleader(pSprite, Data0)) |
| 14114 | return; |
| 14115 | |
| 14116 | if (mSquad_Selected < 0) |
| 14117 | return; |
| 14118 | |
| 14119 | sSprite** Data28 = mSquads[mSquad_Selected]; |
| 14120 | for (; *Data28 != INVALID_SPRITE_PTR;) { |
| 14121 | |
| 14122 | sSprite* Data2C = *Data28++; |
| 14123 | Data2C->field_75 |= (eSprite_Flag_HomingMissiles | eSprite_Flag_Invincibility); |
| 14124 | |
| 14125 | Data2C->field_46_mission_troop->mRank = 0x0F; |
| 14126 | } |
| 14127 | |
| 14128 | mGUI_Sidebar_Setup = 0; |
| 14129 | mGUI_RefreshSquadRockets[mSquad_Selected] = -1; |
| 14130 | mSquad_Rockets[mSquad_Selected] = 0x32; |
| 14131 | |
| 14132 | Sprite_Destroy_Wrapper(pSprite); |
| 14133 | } |
| 14134 | |
| 14135 | void cFodder::Sprite_Handle_Helicopter_CallPad(sSprite* pSprite) { |
| 14136 | sSprite* Data2C = 0; |
nothing calls this directly
no outgoing calls
no test coverage detected