| 6327 | } |
| 6328 | |
| 6329 | int16 cFodder::Sprite_Handle_Helicopter_Enemy_Weapon(sSprite* pSprite, sSprite*& pData30) { |
| 6330 | int16 Data0; |
| 6331 | sSprite* Data2C = 0, *Data34 = 0; |
| 6332 | |
| 6333 | if (pSprite->field_6F == eVehicle_Helicopter_Grenade) |
| 6334 | goto loc_25344; |
| 6335 | |
| 6336 | if (pSprite->field_6F == eVehicle_Helicopter_Missile) |
| 6337 | goto loc_253E7; |
| 6338 | |
| 6339 | if (pSprite->field_6F == eVehicle_Helicopter_Homing) |
| 6340 | goto loc_253E7; |
| 6341 | |
| 6342 | loc_25344:; |
| 6343 | pSprite->field_26 = pData30->field_0; |
| 6344 | pSprite->field_26 += 0x14; |
| 6345 | pSprite->field_28 = pData30->field_4; |
| 6346 | pSprite->field_26 -= 0x1E; |
| 6347 | if (pSprite->field_26 < 0) |
| 6348 | pSprite->field_26 = 0; |
| 6349 | |
| 6350 | pSprite->field_2E = pData30->field_0; |
| 6351 | pSprite->field_30 = pData30->field_4; |
| 6352 | if (pSprite->field_20 <= 0x1F) |
| 6353 | goto loc_253D2; |
| 6354 | |
| 6355 | if (mMission_EngineTicks & 0x0F) |
| 6356 | goto loc_253D2; |
| 6357 | |
| 6358 | Sprite_Create_Grenade2(pSprite); |
| 6359 | Data0 = tool_RandomGet() & 0x0F; |
| 6360 | if (!Data0) |
| 6361 | goto loc_253DE; |
| 6362 | |
| 6363 | loc_253D2:; |
| 6364 | return -1; |
| 6365 | |
| 6366 | loc_253DE:; |
| 6367 | return 0; |
| 6368 | |
| 6369 | loc_253E7:; |
| 6370 | pSprite->field_26 = pData30->field_0; |
| 6371 | pSprite->field_28 = pData30->field_4; |
| 6372 | pSprite->field_2E = pData30->field_0; |
| 6373 | pSprite->field_30 = pData30->field_4; |
| 6374 | |
| 6375 | Data0 = mSprite_DistanceTo_Squad0; |
| 6376 | if (Data0 <= 0x3C) |
| 6377 | goto loc_254C7; |
| 6378 | if (Data0 >= 0x8C) |
| 6379 | goto loc_254E7; |
| 6380 | |
| 6381 | if (pSprite->field_20 >= 0x19) { |
| 6382 | if (!(mMission_EngineTicks & 0x0F)) { |
| 6383 | mSprite_Missile_LaunchDistance_X = 0x0E; |
| 6384 | mSprite_Missile_LaunchDistance_Y = -12; |
| 6385 | if (pSprite->field_6F == eVehicle_Helicopter_Homing) { |
| 6386 |
nothing calls this directly
no outgoing calls
no test coverage detected