| 15175 | } |
| 15176 | |
| 15177 | int16 cFodder::Sprite_Handle_Player_MissionOver(sSprite* pSprite) { |
| 15178 | |
| 15179 | if (!mPhase_Aborted) |
| 15180 | if (!mPhase_Complete) |
| 15181 | return 0; |
| 15182 | |
| 15183 | int16 Data0 = -1; |
| 15184 | int16 Data4 = 8; |
| 15185 | |
| 15186 | Map_Terrain_Get_Type_And_Walkable(pSprite, Data0, Data4); |
| 15187 | |
| 15188 | if (Data4 == eTerrainFeature_Water) { |
| 15189 | Data0 = pSprite->field_20; |
| 15190 | Data0 -= 8; |
| 15191 | |
| 15192 | if (Data0 >= 0) { |
| 15193 | Data0 = 0; |
| 15194 | } |
| 15195 | else { |
| 15196 | Data0 = -Data0; |
| 15197 | if (Data0 > 8) |
| 15198 | Data0 = 8; |
| 15199 | } |
| 15200 | |
| 15201 | pSprite->field_52 = Data0; |
| 15202 | } |
| 15203 | //loc_1F283 |
| 15204 | |
| 15205 | if (pSprite->field_8 == 0x41) |
| 15206 | goto loc_1F3C4; |
| 15207 | |
| 15208 | if (pSprite->field_8 == 0x9F) |
| 15209 | goto loc_1F340; |
| 15210 | |
| 15211 | if (pSprite->field_8 == 0x38) |
| 15212 | goto loc_1F3A2; |
| 15213 | |
| 15214 | pSprite->field_A = 0; |
| 15215 | pSprite->field_36 = 0; |
| 15216 | |
| 15217 | if (!mPhase_Aborted) { |
| 15218 | |
| 15219 | Data0 = tool_RandomGet() & 1; |
| 15220 | if (Data0 == 0) |
| 15221 | goto loc_1F32C; |
| 15222 | |
| 15223 | if (!pSprite->field_52) { |
| 15224 | Data0 = tool_RandomGet() & 1; |
| 15225 | |
| 15226 | if (!Data0) { |
| 15227 | //loc_1F2F9 |
| 15228 | pSprite->field_8 = 0x41; |
| 15229 | Data0 = tool_RandomGet() & 3; |
| 15230 | pSprite->field_A = Data0; |
| 15231 | pSprite->field_2A = 1; |
| 15232 | Sprite_Create_Player_Shadow(pSprite); |
| 15233 | goto loc_1F3C4; |
| 15234 | } |
nothing calls this directly
no outgoing calls
no test coverage detected