2020-03-27 21:47:29 +01:00
|
|
|
#ifndef CARS_H
|
|
|
|
#define CARS_H
|
|
|
|
|
2020-04-21 17:28:52 +02:00
|
|
|
#define CAR_INDEX(cp) (int)(cp-car_data)
|
|
|
|
|
2020-04-10 13:56:11 +02:00
|
|
|
// PHYSICS
|
|
|
|
extern _CAR_DATA car_data[22]; // all cars
|
|
|
|
|
|
|
|
// active cars
|
|
|
|
extern _CAR_DATA* active_car_list[20];
|
|
|
|
extern BOUND_BOX bbox[20];
|
|
|
|
extern unsigned char lightsOnDelay[20];
|
|
|
|
|
2020-04-10 01:37:20 +02:00
|
|
|
extern CAR_MODEL NewCarModel[5];
|
|
|
|
extern CAR_MODEL NewLowCarModel[5];
|
|
|
|
|
2020-04-10 02:11:21 +02:00
|
|
|
extern int whichCP; // car poly counter
|
|
|
|
extern int baseSpecCP; // special car poly counter
|
2020-04-10 01:52:35 +02:00
|
|
|
|
2020-04-21 13:06:02 +02:00
|
|
|
extern DENTUVS gTempHDCarUVDump[20][255];
|
|
|
|
extern SVECTOR gTempCarVertDump[20][132];
|
|
|
|
extern DENTUVS gTempLDCarUVDump[20][134];
|
2020-03-27 21:47:29 +01:00
|
|
|
|
2020-04-21 17:28:52 +02:00
|
|
|
extern MODEL *gHubcapModelPtr;
|
|
|
|
extern MODEL *gCleanWheelModelPtr;
|
|
|
|
extern MODEL *gFastWheelModelPtr;
|
|
|
|
extern MODEL *gDamWheelModelPtr;
|
|
|
|
|
2020-04-29 17:03:13 +02:00
|
|
|
extern char LeftLight;
|
|
|
|
extern char RightLight;
|
|
|
|
|
2020-04-07 12:56:13 +02:00
|
|
|
extern void plotNewCarModel(CAR_MODEL *car, int palette); // 0x00020C94
|
2020-03-27 21:47:29 +01:00
|
|
|
|
2020-04-07 12:56:13 +02:00
|
|
|
extern void plotCarPolyB3(int numTris, CAR_POLY *src, SVECTOR *vlist, plotCarGlobals *pg); // 0x000237B8
|
2020-03-27 21:47:29 +01:00
|
|
|
|
2020-04-07 12:56:13 +02:00
|
|
|
extern void plotCarPolyFT3(int numTris, CAR_POLY *src, SVECTOR *vlist, plotCarGlobals *pg); // 0x000238C4
|
2020-03-27 21:47:29 +01:00
|
|
|
|
2020-04-07 12:56:13 +02:00
|
|
|
extern void plotCarPolyGT3(int numTris, CAR_POLY *src, SVECTOR *vlist, SVECTOR *nlist, plotCarGlobals *pg, int palette); // 0x00020EA0
|
2020-03-27 21:47:29 +01:00
|
|
|
|
2020-04-07 12:56:13 +02:00
|
|
|
extern void plotCarPolyGT3nolight(int numTris, CAR_POLY *src, SVECTOR *vlist, plotCarGlobals *pg, int palette); // 0x00023A20
|
2020-03-27 21:47:29 +01:00
|
|
|
|
2020-04-07 12:56:13 +02:00
|
|
|
extern void DrawCar(_CAR_DATA *cp, int view); // 0x000210B8
|
2020-03-27 21:47:29 +01:00
|
|
|
|
2020-04-07 12:56:13 +02:00
|
|
|
extern void DrawCarObject(CAR_MODEL *car, MATRIX *matrix, VECTOR *pos, VECTOR *pos1, int palette, _CAR_DATA *cp, int detail); // 0x000233DC
|
2020-03-27 21:47:29 +01:00
|
|
|
|
2020-04-07 12:56:13 +02:00
|
|
|
extern void DrawCarWheels(_CAR_DATA *cp, MATRIX *RearMatrix, VECTOR *pos, int zclip); // 0x00021AF8
|
2020-03-27 21:47:29 +01:00
|
|
|
|
2020-04-07 12:56:13 +02:00
|
|
|
extern void DrawWheelObject(MODEL *model, SVECTOR *verts, int transparent, int wheelnum); // 0x00022180
|
2020-03-27 21:47:29 +01:00
|
|
|
|
2020-04-07 12:56:13 +02:00
|
|
|
extern void PlayerCarFX(_CAR_DATA *cp); // 0x000234DC
|
2020-03-27 21:47:29 +01:00
|
|
|
|
2020-04-07 12:56:13 +02:00
|
|
|
extern void ComputeCarLightingLevels(_CAR_DATA *cp, char detail); // 0x00022458
|
2020-03-27 21:47:29 +01:00
|
|
|
|
|
|
|
extern void buildNewCars(); // 0x00022860
|
|
|
|
|
2020-04-07 12:56:13 +02:00
|
|
|
extern void buildNewCarFromModel(CAR_MODEL *car, MODEL *model, int first); // 0x00022960
|
2020-03-27 21:47:29 +01:00
|
|
|
|
|
|
|
extern void MangleWheelModels(); // 0x000230C8
|
|
|
|
|
|
|
|
extern void setupLightingMatrices(); // 0x000235F8
|
|
|
|
|
|
|
|
extern void restoreLightingMatrices(); // 0x00023750
|
|
|
|
|
|
|
|
extern char GetCarPalIndex(int tpage); // 0x00023390
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|