* Check the distance between the provided sprite, and the squad leader * * @param pSprite * @param pData0 * * @return 0 if within range, 1 if not */
| 18379 | * @return 0 if within range, 1 if not |
| 18380 | */ |
| 18381 | int16 cFodder::Map_Get_Distance_Between_Sprite_And_Squadleader(sSprite* pSprite, int16& pData0) { |
| 18382 | int16 Data4, Data8, DataC, Data10; |
| 18383 | |
| 18384 | // Current Squad in vehicle? |
| 18385 | if (mSquad_CurrentVehicle) |
| 18386 | return 1; |
| 18387 | |
| 18388 | // No Squad Leader? |
| 18389 | if (mSquad_Leader == INVALID_SPRITE_PTR || mSquad_Leader == 0) |
| 18390 | return 1; |
| 18391 | |
| 18392 | // Vehicle? |
| 18393 | if (mSquad_Leader->field_6E) |
| 18394 | return 1; |
| 18395 | |
| 18396 | // Anim playing? |
| 18397 | if (mSquad_Leader->field_38) |
| 18398 | return 1; |
| 18399 | |
| 18400 | pData0 = pSprite->field_0; |
| 18401 | |
| 18402 | Data4 = pSprite->field_4; |
| 18403 | Data8 = mSquad_Leader->field_0; |
| 18404 | DataC = mSquad_Leader->field_4; |
| 18405 | Data10 = 0x20; |
| 18406 | |
| 18407 | DataC += 2; |
| 18408 | |
| 18409 | Map_Get_Distance_BetweenPoints(pData0, Data4, Data8, Data10, DataC); |
| 18410 | if (pData0 >= 6) |
| 18411 | return 1; |
| 18412 | |
| 18413 | Data4 = 0; |
| 18414 | return 0; |
| 18415 | } |
| 18416 | |
| 18417 | int16 cFodder::Sprite_Create_Rocket(sSprite* pSprite) { |
| 18418 | sSprite* Data2C = 0, *Data30 = 0, *Data34 = 0; |
nothing calls this directly
no outgoing calls
no test coverage detected