Subversion Repositories Games.Carmageddon

Rev

Rev 15 | Go to most recent revision | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. #ifndef _CRUSH_H_
  2. #define _CRUSH_H_
  3.  
  4. #include "dr_types.h"
  5.  
  6. extern float gWobble_spam_y[8];
  7. extern float gWobble_spam_z[8];
  8. extern br_scalar gWheel_circ_to_width;
  9. extern tU8 gSmoke_damage_step[12];
  10. extern int gSteal_ranks[5];
  11.  
  12. int ReadCrushData(FILE* pF, tCrush_data* pCrush_data);
  13.  
  14. float SkipCrushData(FILE* pF);
  15.  
  16. int WriteCrushData(FILE* pF, tCrush_data* pCrush_data);
  17.  
  18. void DisposeCrushData(tCrush_data* pCrush_data);
  19.  
  20. void CrushModelPoint(tCar_spec* pCar, int pModel_index, br_model* pModel, int pCrush_point_index, br_vector3* pEnergy_vector, br_scalar total_energy, tCrush_data* pCrush_data);
  21.  
  22. void CrushModel(tCar_spec* pCar, int pModel_index, br_actor* pActor, br_vector3* pImpact_point, br_vector3* pEnergy_vector, tCrush_data* pCrush_data);
  23.  
  24. void JitModelUpdate(br_actor* actor, br_model* model, br_material* material, void* render_data, br_uint_8 style, int on_screen);
  25.  
  26. void SetModelForUpdate(br_model* pModel, tCar_spec* pCar, int crush_only);
  27.  
  28. void TotallySpamTheModel(tCar_spec* pCar, int pModel_index, br_actor* pActor, tCrush_data* pCrush_data, br_scalar pMagnitude);
  29.  
  30. br_scalar RepairModel(tCar_spec* pCar, int pModel_index, br_actor* pActor, br_vertex* pUndamaged_vertices, br_scalar pAmount, br_scalar* pTotal_deflection);
  31.  
  32. float RepairCar2(tCar_spec* pCar, tU32 pFrame_period, br_scalar* pTotal_deflection);
  33.  
  34. float RepairCar(tU16 pCar_ID, tU32 pFrame_period, br_scalar* pTotal_deflection);
  35.  
  36. void TotallyRepairACar(tCar_spec* pCar);
  37.  
  38. void TotallyRepairCar(void);
  39.  
  40. void CheckLastCar(void);
  41.  
  42. void KnackerThisCar(tCar_spec* pCar);
  43.  
  44. void SetKnackeredFlag(tCar_spec* pCar);
  45.  
  46. void DamageUnit2(tCar_spec* pCar, int pUnit_type, int pDamage_amount);
  47.  
  48. void RecordLastDamage(tCar_spec* pCar);
  49.  
  50. void DoDamage(tCar_spec* pCar, tDamage_type pDamage_type, float pMagnitude, float pNastiness);
  51.  
  52. void CheckPiledriverBonus(tCar_spec* pCar, br_vector3* pImpact_point, br_vector3* pEnergy);
  53.  
  54. tImpact_location CalcModifiedLocation(tCar_spec* pCar);
  55.  
  56. void DoPratcamHit(br_vector3* pHit_vector);
  57.  
  58. void DamageSystems(tCar_spec* pCar, br_vector3* pImpact_point, br_vector3* pEnergy_vector, int pWas_hitting_a_car);
  59.  
  60. tImpact_location GetDirection(br_vector3* pVelocity);
  61.  
  62. void SetSmokeLastDamageLevel(tCar_spec* pCar);
  63.  
  64. void SortOutSmoke(tCar_spec* pCar);
  65.  
  66. void StealCar(tCar_spec* pCar);
  67.  
  68. int DoCrashEarnings(tCar_spec* pCar1, tCar_spec* pCar2);
  69.  
  70. void DoWheelDamage(tU32 pFrame_period);
  71.  
  72. void CrashEarnings(tCar_spec* pCar1, tCar_spec* pCar2);
  73.  
  74. #endif
  75.