2019-10-06 21:39:25 +00:00
|
|
|
#pragma once
|
|
|
|
|
2020-05-05 21:27:43 +00:00
|
|
|
#include "ModelInfo.h"
|
|
|
|
|
2019-05-15 14:52:37 +00:00
|
|
|
#define MODELINDICES \
|
2020-05-19 18:56:42 +00:00
|
|
|
X("fire_hydrant", MI_FIRE_HYDRANT) \
|
|
|
|
X("phonesign", MI_PHONESIGN) \
|
|
|
|
X("noparkingsign1", MI_NOPARKINGSIGN1) \
|
|
|
|
X("bussign1", MI_BUSSIGN1) \
|
|
|
|
X("roadworkbarrier1", MI_ROADWORKBARRIER1) \
|
|
|
|
X("dump1", MI_DUMP1) \
|
|
|
|
X("trafficcone", MI_TRAFFICCONE) \
|
|
|
|
X("newsstand1", MI_NEWSSTAND) \
|
|
|
|
X("postbox1", MI_POSTBOX1) \
|
|
|
|
X("bin1", MI_BIN) \
|
|
|
|
X("wastebin", MI_WASTEBIN) \
|
|
|
|
X("phonebooth1", MI_PHONEBOOTH1) \
|
|
|
|
X("parkingmeter", MI_PARKINGMETER) \
|
|
|
|
X("parkingmeterg", MI_PARKINGMETER2) \
|
|
|
|
X("mall_fans", MI_MALLFAN) \
|
|
|
|
X("htl_fan_rotate_nt", MI_HOTELFAN_NIGHT) \
|
|
|
|
X("htl_fan_rotate_dy", MI_HOTELFAN_DAY) \
|
|
|
|
X("hotroomfan", MI_HOTROOMFAN) \
|
|
|
|
X("trafficlight1", MI_TRAFFICLIGHTS) \
|
|
|
|
X("MTraffic4", MI_TRAFFICLIGHTS_VERTICAL) \
|
|
|
|
X("MTraffic1", MI_TRAFFICLIGHTS_MIAMI) \
|
|
|
|
X("MTraffic2", MI_TRAFFICLIGHTS_TWOVERTICAL) \
|
|
|
|
X("lamppost1", MI_SINGLESTREETLIGHTS1) \
|
|
|
|
X("lamppost2", MI_SINGLESTREETLIGHTS2) \
|
|
|
|
X("lamppost3", MI_SINGLESTREETLIGHTS3) \
|
|
|
|
X("doublestreetlght1", MI_DOUBLESTREETLIGHTS) \
|
|
|
|
X("Streetlamp1", MI_STREETLAMP1) \
|
|
|
|
X("Streetlamp2", MI_STREETLAMP2) \
|
|
|
|
X("veg_tree3", MI_TREE2) \
|
|
|
|
X("veg_treea1", MI_TREE3) \
|
|
|
|
X("veg_treeb1", MI_TREE6) \
|
|
|
|
X("veg_treea3", MI_TREE8) \
|
|
|
|
X("doc_crane_cab", MODELID_CRANE_1) \
|
|
|
|
X("doc_crane_cab01", MODELID_CRANE_2) \
|
|
|
|
X("doc_crane_cab02", MODELID_CRANE_3) \
|
|
|
|
X("doc_crane_cab03", MODELID_CRANE_4) \
|
|
|
|
X("boatcranelg0", MODELID_CRANE_5) \
|
|
|
|
X("LODnetopa0", MODELID_CRANE_6) \
|
|
|
|
X("package1", MI_COLLECTABLE1) \
|
|
|
|
X("Money", MI_MONEY) \
|
|
|
|
X("barrel1", MI_CARMINE) \
|
|
|
|
X("dk_paynspraydoor", MI_GARAGEDOOR2) \
|
|
|
|
X("dk_waretankdoor1", MI_GARAGEDOOR3) \
|
|
|
|
X("hav_garagedoor1", MI_GARAGEDOOR4) \
|
|
|
|
X("hav_garagedoor02", MI_GARAGEDOOR5) \
|
|
|
|
X("hav_garagedoor03", MI_GARAGEDOOR6) \
|
|
|
|
X("hav_garagedoor04", MI_GARAGEDOOR7) \
|
|
|
|
X("lh_showdoor03", MI_GARAGEDOOR9) \
|
|
|
|
X("lh_showdoor1", MI_GARAGEDOOR10) \
|
|
|
|
X("lhtankdoor", MI_GARAGEDOOR11) \
|
|
|
|
X("nbtgardoor", MI_GARAGEDOOR12) \
|
|
|
|
X("dk_camjonesdoor", MI_GARAGEDOOR13) \
|
|
|
|
X("nbtgardoor02", MI_GARAGEDOOR14) \
|
|
|
|
X("dt_savedra", MI_GARAGEDOOR15) \
|
|
|
|
X("dt_savedrb", MI_GARAGEDOOR16) \
|
|
|
|
X("dk_bombdoor", MI_GARAGEDOOR18) \
|
|
|
|
X("haiwshpnsdoor", MI_GARAGEDOOR19) \
|
|
|
|
X("wshpnsdoor", MI_GARAGEDOOR20) \
|
|
|
|
X("nbecpnsdoor", MI_GARAGEDOOR21) \
|
|
|
|
X("nbtgardoor03", MI_GARAGEDOOR22) \
|
|
|
|
X("dt_savedrc", MI_GARAGEDOOR23) \
|
|
|
|
X("dt_savedrd", MI_GARAGEDOOR24) \
|
|
|
|
X("man_frntstepGD", MI_GARAGEDOOR25) \
|
|
|
|
X("svegrgedoor", MI_GARAGEDOOR26) \
|
|
|
|
X("barrel2", MI_NAUTICALMINE) \
|
|
|
|
X("briefcase", MI_BRIEFCASE) \
|
|
|
|
X("wglasssmash", MI_GLASS1) \
|
|
|
|
X("glassfx_composh", MI_GLASS8) \
|
|
|
|
X("barrel4", MI_EXPLODINGBARREL) \
|
|
|
|
X("adrenaline", MI_PICKUP_ADRENALINE) \
|
|
|
|
X("bodyarmour", MI_PICKUP_BODYARMOUR) \
|
|
|
|
X("info", MI_PICKUP_INFO) \
|
|
|
|
X("health", MI_PICKUP_HEALTH) \
|
|
|
|
X("bonus", MI_PICKUP_BONUS) \
|
|
|
|
X("bribe", MI_PICKUP_BRIBE) \
|
|
|
|
X("killfrenzy", MI_PICKUP_KILLFRENZY) \
|
|
|
|
X("camerapickup", MI_PICKUP_CAMERA) \
|
|
|
|
X("bigdollar", MI_PICKUP_REVENUE) \
|
|
|
|
X("pickupsave", MI_PICKUP_SAVEGAME) \
|
|
|
|
X("property_locked", MI_PICKUP_PROPERTY) \
|
|
|
|
X("property_fsale", MI_PICKUP_PROPERTY_FORSALE) \
|
|
|
|
X("clothesp", MI_PICKUP_CLOTHES) \
|
|
|
|
X("bollardlight", MI_BOLLARDLIGHT) \
|
|
|
|
X("bar_barrier10", MI_FENCE) \
|
|
|
|
X("bar_barrier12", MI_FENCE2) \
|
|
|
|
X("petrolpump", MI_PETROLPUMP) \
|
|
|
|
X("washgaspump", MI_PETROLPUMP2) \
|
|
|
|
X("bouy", MI_BUOY) \
|
|
|
|
X("parktable1", MI_PARKTABLE) \
|
|
|
|
X("lamppost1", MI_LAMPPOST1) \
|
|
|
|
X("veg_palm04", MI_VEG_PALM01) \
|
|
|
|
X("veg_palwee02", MI_VEG_PALM02) \
|
|
|
|
X("veg_palmkbb11", MI_VEG_PALM03) \
|
|
|
|
X("veg_palmkb4", MI_VEG_PALM04) \
|
|
|
|
X("veg_palm02", MI_VEG_PALM05) \
|
|
|
|
X("veg_palmkb3", MI_VEG_PALM06) \
|
|
|
|
X("veg_palmbig14", MI_VEG_PALM07) \
|
|
|
|
X("veg_palm01", MI_VEG_PALM08) \
|
|
|
|
X("mlamppost", MI_MLAMPPOST) \
|
|
|
|
X("roadworkbarrier1", MI_BARRIER1) \
|
|
|
|
X("littleha_police", MI_LITTLEHA_POLICE) \
|
|
|
|
X("telgrphpole02", MI_TELPOLE02) \
|
|
|
|
X("trafficlight1", MI_TRAFFICLIGHT01) \
|
|
|
|
X("parkbench1", MI_PARKBENCH) \
|
|
|
|
X("plc_stinger", MI_PLC_STINGER) \
|
|
|
|
X("od_lightbeam", MI_LIGHTBEAM) \
|
|
|
|
X("ap_radar1_01", MI_AIRPORTRADAR) \
|
|
|
|
X("rcbomb", MI_RCBOMB) \
|
|
|
|
X("beachball", MI_BEACHBALL) \
|
|
|
|
X("sandcastle1", MI_SANDCASTLE1) \
|
|
|
|
X("sandcastle2", MI_SANDCASTLE2) \
|
|
|
|
X("jellyfish", MI_JELLYFISH) \
|
|
|
|
X("jellyfish01", MI_JELLYFISH01) \
|
|
|
|
X("fish1single", MI_FISH1SINGLE) \
|
|
|
|
X("fish1s", MI_FISH1S) \
|
|
|
|
X("fish2single", MI_FISH2SINGLE) \
|
|
|
|
X("fish2s", MI_FISH2S) \
|
|
|
|
X("fish3single", MI_FISH3SINGLE) \
|
|
|
|
X("fish3s", MI_FISH3S) \
|
|
|
|
X("turtle", MI_TURTLE) \
|
|
|
|
X("dolphin", MI_DOLPHIN) \
|
|
|
|
X("shark", MI_SHARK) \
|
|
|
|
X("submarine", MI_SUBMARINE) \
|
|
|
|
X("Esc_step", MI_ESCALATORSTEP) \
|
|
|
|
X("lounge_wood_up", MI_LOUNGE_WOOD_UP) \
|
|
|
|
X("lounge_towel_up", MI_LOUNGE_TOWEL_UP) \
|
|
|
|
X("lounge_wood_dn", MI_LOUNGE_WOOD_DN) \
|
|
|
|
X("lotion", MI_LOTION) \
|
|
|
|
X("beachtowel01", MI_BEACHTOWEL01) \
|
|
|
|
X("beachtowel02", MI_BEACHTOWEL02) \
|
|
|
|
X("beachtowel03", MI_BEACHTOWEL03) \
|
|
|
|
X("beachtowel04", MI_BEACHTOWEL04) \
|
|
|
|
X("blimp_night", MI_BLIMP_NIGHT) \
|
|
|
|
X("blimp_day", MI_BLIMP_DAY) \
|
|
|
|
X("yt_main_body", MI_YT_MAIN_BODY) \
|
|
|
|
X("yt_main_body2", MI_YT_MAIN_BODY2)
|
2019-05-15 14:52:37 +00:00
|
|
|
|
2020-05-19 18:56:42 +00:00
|
|
|
#define X(name, var) extern int16 var;
|
2019-05-15 14:52:37 +00:00
|
|
|
MODELINDICES
|
|
|
|
#undef X
|
|
|
|
|
|
|
|
// and some hardcoded ones
|
|
|
|
// expand as needed
|
|
|
|
enum
|
|
|
|
{
|
2019-07-09 20:38:05 +00:00
|
|
|
MI_PLAYER = 0,
|
|
|
|
MI_COP,
|
2019-05-15 14:52:37 +00:00
|
|
|
MI_SWAT,
|
|
|
|
MI_FBI,
|
|
|
|
MI_ARMY,
|
|
|
|
MI_MEDIC,
|
|
|
|
MI_FIREMAN,
|
|
|
|
MI_MALE01,
|
2020-05-09 15:05:26 +00:00
|
|
|
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_TAXI_D = 9,
|
|
|
|
MI_PIMP,
|
|
|
|
MI_CRIMINAL01,
|
|
|
|
MI_CRIMINAL02,
|
|
|
|
MI_MALE02,
|
|
|
|
MI_MALE03,
|
|
|
|
MI_FATMALE01,
|
|
|
|
MI_FATMALE02,
|
|
|
|
MI_FEMALE01,
|
|
|
|
MI_FEMALE02,
|
|
|
|
MI_FEMALE03,
|
|
|
|
MI_FATFEMALE01,
|
|
|
|
MI_FATFEMALE02,
|
|
|
|
MI_PROSTITUTE,
|
|
|
|
MI_PROSTITUTE2,
|
|
|
|
MI_P_MAN1,
|
|
|
|
MI_P_MAN2,
|
|
|
|
MI_P_WOM1,
|
|
|
|
MI_P_WOM2,
|
|
|
|
MI_CT_MAN1,
|
|
|
|
MI_CT_MAN2,
|
|
|
|
MI_CT_WOM1,
|
|
|
|
MI_CT_WOM2,
|
|
|
|
MI_LI_MAN1,
|
|
|
|
MI_LI_MAN2,
|
|
|
|
MI_LI_WOM1,
|
|
|
|
MI_LI_WOM2,
|
|
|
|
MI_DOCKER1,
|
|
|
|
MI_DOCKER2,
|
|
|
|
MI_SCUM_MAN,
|
|
|
|
MI_SCUM_WOM,
|
|
|
|
MI_WORKER1,
|
|
|
|
MI_WORKER2,
|
|
|
|
MI_B_MAN1,
|
|
|
|
MI_B_MAN2,
|
|
|
|
MI_B_MAN3,
|
|
|
|
MI_B_WOM1,
|
|
|
|
MI_B_WOM2,
|
|
|
|
MI_B_WOM3,
|
|
|
|
MI_MOD_MAN,
|
|
|
|
MI_MOD_WOM,
|
|
|
|
MI_ST_MAN,
|
|
|
|
MI_ST_WOM,
|
|
|
|
MI_FAN_MAN1,
|
|
|
|
MI_FAN_MAN2,
|
|
|
|
MI_FAN_WOM,
|
|
|
|
MI_HOS_MAN,
|
|
|
|
MI_HOS_WOM,
|
|
|
|
MI_CONST1,
|
|
|
|
MI_CONST2,
|
|
|
|
MI_SHOPPER1,
|
|
|
|
MI_SHOPPER2,
|
|
|
|
MI_SHOPPER3,
|
|
|
|
MI_STUD_MAN,
|
|
|
|
MI_STUD_WOM,
|
|
|
|
MI_CAS_MAN,
|
|
|
|
MI_CAS_WOM,
|
|
|
|
MI_CAMP_MAN,
|
|
|
|
MI_CAMP_WOM,
|
|
|
|
MI_HITMAN,
|
2020-05-16 14:00:40 +00:00
|
|
|
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_GANG01 = 79,
|
|
|
|
MI_GANG02,
|
|
|
|
MI_GANG03,
|
|
|
|
MI_GANG04,
|
|
|
|
MI_GANG05,
|
|
|
|
MI_GANG06,
|
|
|
|
MI_GANG07,
|
|
|
|
MI_GANG08,
|
|
|
|
MI_GANG09,
|
|
|
|
MI_GANG10,
|
|
|
|
MI_GANG11,
|
|
|
|
MI_GANG12,
|
|
|
|
MI_GANG13,
|
|
|
|
MI_GANG14,
|
|
|
|
MI_GANG15,
|
|
|
|
MI_GANG16,
|
|
|
|
MI_GANG17,
|
|
|
|
MI_GANG18,
|
2020-05-16 14:00:40 +00:00
|
|
|
MI_VICE1,
|
2020-05-10 09:25:30 +00:00
|
|
|
MI_VICE2,
|
|
|
|
MI_VICE3,
|
|
|
|
MI_VICE4,
|
|
|
|
MI_VICE5,
|
|
|
|
MI_VICE6,
|
|
|
|
MI_VICE7,
|
|
|
|
MI_VICE8,
|
2020-10-24 18:33:15 +00:00
|
|
|
MI_WFYG1,
|
|
|
|
MI_WFYG2,// = 106, // last regular ped
|
|
|
|
// three more peds possible
|
2020-05-09 15:05:26 +00:00
|
|
|
MI_SPECIAL01 = 109,
|
2020-10-24 18:33:15 +00:00
|
|
|
MI_SPECIAL02,
|
|
|
|
MI_SPECIAL03,
|
|
|
|
MI_SPECIAL04,
|
|
|
|
MI_SPECIAL05,
|
|
|
|
MI_SPECIAL06,
|
|
|
|
MI_SPECIAL07,
|
|
|
|
MI_SPECIAL08,
|
|
|
|
MI_SPECIAL09,
|
|
|
|
MI_SPECIAL10,
|
|
|
|
MI_SPECIAL11,
|
|
|
|
MI_SPECIAL12,
|
|
|
|
MI_SPECIAL13,
|
|
|
|
MI_SPECIAL14,
|
|
|
|
MI_SPECIAL15,
|
|
|
|
MI_SPECIAL16,
|
|
|
|
MI_SPECIAL17,
|
|
|
|
MI_SPECIAL18,
|
|
|
|
MI_SPECIAL19,
|
|
|
|
MI_SPECIAL20,
|
|
|
|
MI_SPECIAL21,// = 129,
|
2019-07-05 12:23:39 +00:00
|
|
|
|
2020-05-19 18:56:42 +00:00
|
|
|
MI_LAST_PED = MI_SPECIAL21,
|
|
|
|
MI_FIRST_VEHICLE,
|
|
|
|
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_SPIDER = MI_FIRST_VEHICLE,
|
|
|
|
MI_LANDSTAL,
|
2019-06-15 22:20:55 +00:00
|
|
|
MI_IDAHO,
|
|
|
|
MI_STINGER,
|
|
|
|
MI_LINERUN,
|
|
|
|
MI_PEREN,
|
|
|
|
MI_SENTINEL,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_PATRIOT,
|
2021-01-09 11:43:09 +00:00
|
|
|
MI_FIRETRUCK,
|
2019-06-15 22:20:55 +00:00
|
|
|
MI_TRASH,
|
|
|
|
MI_STRETCH,
|
|
|
|
MI_MANANA,
|
|
|
|
MI_INFERNUS,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_BLISTA,
|
2019-06-15 22:20:55 +00:00
|
|
|
MI_PONY,
|
|
|
|
MI_MULE,
|
|
|
|
MI_CHEETAH,
|
|
|
|
MI_AMBULAN,
|
|
|
|
MI_FBICAR,
|
|
|
|
MI_MOONBEAM,
|
|
|
|
MI_ESPERANT,
|
|
|
|
MI_TAXI,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_KURUMA,
|
2019-06-15 22:20:55 +00:00
|
|
|
MI_BOBCAT,
|
|
|
|
MI_MRWHOOP,
|
|
|
|
MI_BFINJECT,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_HEARSE,
|
2019-06-15 22:20:55 +00:00
|
|
|
MI_POLICE,
|
|
|
|
MI_ENFORCER,
|
|
|
|
MI_SECURICA,
|
|
|
|
MI_BANSHEE,
|
|
|
|
MI_BUS,
|
|
|
|
MI_RHINO,
|
|
|
|
MI_BARRACKS,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_DODO,
|
2019-06-15 22:20:55 +00:00
|
|
|
MI_COACH,
|
|
|
|
MI_CABBIE,
|
|
|
|
MI_STALLION,
|
|
|
|
MI_RUMPO,
|
|
|
|
MI_RCBANDIT,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_BELLYUP,
|
|
|
|
MI_MRWONGS,
|
|
|
|
MI_MAFIA,
|
|
|
|
MI_YARDIE,
|
|
|
|
MI_YAKUZA,
|
|
|
|
MI_DIABLOS,
|
|
|
|
MI_COLUMB,
|
|
|
|
MI_HOODS,
|
|
|
|
MI_PANLANT,
|
2019-06-15 22:20:55 +00:00
|
|
|
MI_FLATBED,
|
|
|
|
MI_YANKEE,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_BORGNINE,
|
|
|
|
MI_TOYZ,
|
|
|
|
MI_CAMPVAN,
|
|
|
|
MI_BALLOT,
|
|
|
|
MI_SHELBY,
|
|
|
|
MI_PONTIAC,
|
|
|
|
MI_ESPRIT,
|
|
|
|
MI_AMMOTRUK,
|
|
|
|
MI_HOTROD,
|
|
|
|
MI_SINDACCO_CAR,
|
|
|
|
MI_FORELLI_CAR,
|
|
|
|
MI_FERRY,
|
|
|
|
MI_GHOST,
|
|
|
|
MI_SPEEDER,
|
|
|
|
MI_REEFER,
|
|
|
|
MI_PREDATOR,
|
|
|
|
MI_TRAIN,
|
|
|
|
MI_ESCAPE,
|
|
|
|
MI_CHOPPER,
|
|
|
|
MI_AIRTRAIN,
|
|
|
|
MI_DEADDODO,
|
|
|
|
MI_ANGEL,
|
|
|
|
MI_PIZZABOY,
|
|
|
|
MI_NOODLEBOY,
|
2020-05-07 09:33:20 +00:00
|
|
|
MI_PCJ600,
|
|
|
|
MI_FAGGIO,
|
|
|
|
MI_FREEWAY,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_ANGEL2,
|
|
|
|
MI_SANCHEZ2,
|
2020-05-07 09:33:20 +00:00
|
|
|
MI_SANCHEZ,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_RCGOBLIN,
|
|
|
|
MI_RCRAIDER,
|
|
|
|
MI_HUNTER,
|
|
|
|
MI_MAVERICK,
|
|
|
|
MI_POLMAV,
|
|
|
|
MI_VCNMAV,
|
|
|
|
|
|
|
|
MI_LAST_VEHICLE = MI_VCNMAV,
|
|
|
|
|
|
|
|
// HACK HACK, hopefully temporary
|
|
|
|
MI_SEASPAR = -1000,
|
2020-05-07 09:33:20 +00:00
|
|
|
MI_SPARROW,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_RCBARON,
|
|
|
|
MI_TOPFUN,
|
|
|
|
MI_CADDY,
|
|
|
|
MI_BAGGAGE,
|
|
|
|
MI_FBIRANCH,
|
|
|
|
MI_VICECHEE,
|
|
|
|
MI_RIO,
|
|
|
|
MI_SQUALO,
|
|
|
|
MI_JETMAX,
|
2020-05-07 09:33:20 +00:00
|
|
|
MI_COASTG,
|
|
|
|
MI_DINGHY,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_MARQUIS,
|
|
|
|
MI_SKIMMER,
|
|
|
|
MI_TROPIC,
|
|
|
|
MI_SANDKING,
|
|
|
|
MI_VOODOO,
|
|
|
|
MI_CUBAN,
|
2020-05-07 09:33:20 +00:00
|
|
|
MI_PHEONIX,
|
|
|
|
MI_COMET,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_SABRE,
|
|
|
|
MI_VIRGO,
|
|
|
|
MI_RANCHER,
|
|
|
|
MI_BLISTAC,
|
|
|
|
MI_WASHING,
|
|
|
|
MI_ADMIRAL,
|
|
|
|
MI_SABRETUR,
|
2020-05-07 09:33:20 +00:00
|
|
|
MI_DELUXO,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_HOTRING,
|
|
|
|
MI_REGINA,
|
|
|
|
MI_SENTXS,
|
|
|
|
MI_GLENDALE,
|
|
|
|
MI_OCEANIC,
|
|
|
|
MI_HERMES,
|
|
|
|
MI_GREENWOO,
|
|
|
|
MI_LOVEFIST,
|
|
|
|
MI_GANGBUR,
|
2020-05-07 09:33:20 +00:00
|
|
|
MI_BURRITO,
|
|
|
|
MI_SPAND,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_PACKER,
|
|
|
|
MI_WALTON,
|
|
|
|
MI_ROMERO,
|
2020-10-24 18:33:15 +00:00
|
|
|
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_WHEEL_RIM = 237,
|
2020-10-24 18:33:15 +00:00
|
|
|
MI_WHEEL_OFFROAD,
|
|
|
|
MI_WHEEL_TRUCK,
|
|
|
|
|
|
|
|
MI_CAR_DOOR,// = 240,
|
2020-09-23 20:29:56 +00:00
|
|
|
MI_CAR_BUMPER,
|
|
|
|
MI_CAR_PANEL,
|
|
|
|
MI_CAR_BONNET,
|
|
|
|
MI_CAR_BOOT,
|
|
|
|
MI_CAR_WHEEL,
|
|
|
|
MI_BODYPARTA,
|
|
|
|
MI_BODYPARTB,
|
|
|
|
|
2020-10-24 18:33:15 +00:00
|
|
|
MI_WHEEL_SPORT = 250,
|
|
|
|
MI_WHEEL_SALOON,
|
|
|
|
MI_WHEEL_LIGHTVAN,
|
|
|
|
MI_WHEEL_CLASSIC,
|
|
|
|
MI_WHEEL_ALLOY,
|
|
|
|
MI_WHEEL_LIGHTTRUCK,
|
|
|
|
MI_WHEEL_SMALLCAR,
|
|
|
|
|
|
|
|
MI_AIRTRAIN_VLO, // = 257,
|
|
|
|
MI_MOBILE,
|
2019-07-17 21:58:06 +00:00
|
|
|
|
2020-10-24 18:33:15 +00:00
|
|
|
MI_BRASS_KNUCKLES, // 259
|
2020-06-03 21:48:26 +00:00
|
|
|
MI_SCREWDRIVER,
|
|
|
|
MI_GOLFCLUB,
|
2020-05-24 13:14:27 +00:00
|
|
|
MI_NIGHTSTICK,
|
2020-05-23 13:53:20 +00:00
|
|
|
MI_KNIFE,
|
|
|
|
MI_BASEBALL_BAT,
|
2020-06-03 21:48:26 +00:00
|
|
|
MI_HAMMER,
|
|
|
|
MI_MEAT_CLEAVER,
|
|
|
|
MI_MACHETE,
|
|
|
|
MI_KATANA,
|
|
|
|
MI_CHAINSAW,
|
|
|
|
MI_GRENADE,
|
2020-05-23 13:53:20 +00:00
|
|
|
MI_TEARGAS,
|
|
|
|
MI_MOLOTOV,
|
|
|
|
MI_MISSILE,
|
|
|
|
MI_COLT45,
|
|
|
|
MI_PYTHON,
|
|
|
|
MI_RUGER,
|
|
|
|
MI_SHOTGUN,
|
|
|
|
MI_SPAS12_SHOTGUN,
|
|
|
|
MI_STUBBY_SHOTGUN,
|
|
|
|
MI_M4,
|
|
|
|
MI_TEC9,
|
|
|
|
MI_UZI,
|
|
|
|
MI_SILENCEDINGRAM,
|
|
|
|
MI_MP5,
|
|
|
|
MI_SNIPERRIFLE,
|
|
|
|
MI_LASERSCOPE,
|
|
|
|
MI_ROCKETLAUNCHER,
|
|
|
|
MI_FLAMETHROWER,
|
|
|
|
MI_M60,
|
|
|
|
MI_MINIGUN,
|
|
|
|
MI_BOMB,
|
|
|
|
MI_CAMERA,
|
|
|
|
MI_FINGERS,
|
|
|
|
MI_MINIGUN2,
|
2019-06-30 19:06:55 +00:00
|
|
|
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_CUTOBJ01 = 120,
|
2019-07-03 22:16:24 +00:00
|
|
|
MI_CUTOBJ02,
|
|
|
|
MI_CUTOBJ03,
|
|
|
|
MI_CUTOBJ04,
|
|
|
|
MI_CUTOBJ05,
|
2021-01-08 00:41:40 +00:00
|
|
|
MI_CUTOBJ06,
|
|
|
|
MI_CUTOBJ07,
|
|
|
|
MI_CUTOBJ08,
|
|
|
|
MI_CUTOBJ09,
|
|
|
|
MI_CUTOBJ10,
|
2019-07-03 22:16:24 +00:00
|
|
|
|
2021-01-08 00:41:40 +00:00
|
|
|
NUM_DEFAULT_MODELS = 300
|
2019-05-15 14:52:37 +00:00
|
|
|
};
|
|
|
|
|
2019-07-03 22:16:24 +00:00
|
|
|
enum{
|
2020-10-24 18:33:15 +00:00
|
|
|
NUM_OF_SPECIAL_CHARS = 21,
|
2019-07-03 22:16:24 +00:00
|
|
|
NUM_OF_CUTSCENE_OBJECTS = 5
|
|
|
|
};
|
|
|
|
|
2019-05-15 14:52:37 +00:00
|
|
|
void InitModelIndices(void);
|
|
|
|
void MatchModelString(const char *name, int16 id);
|
2019-10-26 18:25:45 +00:00
|
|
|
void TestModelIndices(void);
|
2019-05-15 14:52:37 +00:00
|
|
|
|
|
|
|
inline bool
|
|
|
|
IsGlass(int16 id)
|
|
|
|
{
|
2020-05-05 21:27:43 +00:00
|
|
|
CSimpleModelInfo *mi = (CSimpleModelInfo*)CModelInfo::GetModelInfo(id);
|
2020-05-06 19:54:43 +00:00
|
|
|
return mi->IsBuilding() && (mi->m_isCodeGlass || mi->m_isArtistGlass);
|
2019-05-15 14:52:37 +00:00
|
|
|
}
|
2019-05-17 12:08:18 +00:00
|
|
|
|
|
|
|
inline bool
|
2020-05-20 17:10:05 +00:00
|
|
|
IsTrafficLight(int16 id)
|
2019-05-17 12:08:18 +00:00
|
|
|
{
|
2020-05-20 17:10:05 +00:00
|
|
|
return id == MI_TRAFFICLIGHTS ||
|
|
|
|
id == MI_TRAFFICLIGHTS_VERTICAL ||
|
|
|
|
id == MI_TRAFFICLIGHTS_MIAMI ||
|
|
|
|
id == MI_TRAFFICLIGHTS_TWOVERTICAL;
|
|
|
|
}
|
|
|
|
|
|
|
|
inline bool
|
|
|
|
IsLightWithoutShift(int16 id)
|
|
|
|
{
|
|
|
|
return id == MI_TRAFFICLIGHTS ||
|
|
|
|
id == MI_SINGLESTREETLIGHTS1 ||
|
|
|
|
id == MI_SINGLESTREETLIGHTS2 ||
|
|
|
|
id == MI_SINGLESTREETLIGHTS3 ||
|
|
|
|
id == MI_DOUBLESTREETLIGHTS;
|
|
|
|
}
|
|
|
|
|
|
|
|
inline bool
|
|
|
|
IsLightWithPreRenderEffects(int16 id)
|
|
|
|
{
|
|
|
|
return IsTrafficLight(id) ||
|
|
|
|
id == MI_SINGLESTREETLIGHTS1 ||
|
|
|
|
id == MI_SINGLESTREETLIGHTS2 ||
|
|
|
|
id == MI_SINGLESTREETLIGHTS3 ||
|
|
|
|
id == MI_DOUBLESTREETLIGHTS;
|
|
|
|
}
|
|
|
|
|
|
|
|
inline bool
|
|
|
|
IsLightThatNeedsRepositioning(int16 id)
|
|
|
|
{
|
|
|
|
return id == MI_SINGLESTREETLIGHTS1 ||
|
2019-05-17 12:08:18 +00:00
|
|
|
id == MI_SINGLESTREETLIGHTS2 ||
|
|
|
|
id == MI_SINGLESTREETLIGHTS3 ||
|
2020-05-19 18:56:42 +00:00
|
|
|
id == MI_TRAFFICLIGHTS_MIAMI ||
|
|
|
|
id == MI_TRAFFICLIGHTS_TWOVERTICAL ||
|
|
|
|
id == MI_MLAMPPOST ||
|
|
|
|
id == MI_STREETLAMP1 ||
|
|
|
|
id == MI_STREETLAMP2;
|
2019-05-17 12:08:18 +00:00
|
|
|
}
|
|
|
|
|
2020-05-22 12:27:16 +00:00
|
|
|
inline bool
|
|
|
|
IsLightObject(int16 id)
|
|
|
|
{
|
|
|
|
return id == MI_TRAFFICLIGHTS_MIAMI ||
|
|
|
|
id == MI_MLAMPPOST ||
|
|
|
|
id == MI_SINGLESTREETLIGHTS1 ||
|
|
|
|
id == MI_SINGLESTREETLIGHTS2 ||
|
|
|
|
id == MI_SINGLESTREETLIGHTS3 ||
|
|
|
|
id == MI_DOUBLESTREETLIGHTS ||
|
|
|
|
id == MI_TRAFFICLIGHTS_TWOVERTICAL;
|
|
|
|
}
|
|
|
|
|
2020-06-14 21:15:56 +00:00
|
|
|
inline bool
|
|
|
|
IsLampPost(int16 id)
|
|
|
|
{
|
|
|
|
return id == MI_SINGLESTREETLIGHTS1 ||
|
|
|
|
id == MI_SINGLESTREETLIGHTS2 ||
|
|
|
|
id == MI_SINGLESTREETLIGHTS3 ||
|
|
|
|
id == MI_BOLLARDLIGHT ||
|
|
|
|
id == MI_MLAMPPOST ||
|
|
|
|
id == MI_STREETLAMP1 ||
|
|
|
|
id == MI_STREETLAMP2 ||
|
|
|
|
id == MI_TELPOLE02 ||
|
|
|
|
id == MI_TRAFFICLIGHTS_MIAMI ||
|
|
|
|
id == MI_TRAFFICLIGHTS_TWOVERTICAL;
|
|
|
|
}
|
|
|
|
|
2019-05-17 12:08:18 +00:00
|
|
|
inline bool
|
|
|
|
IsBodyPart(int16 id)
|
|
|
|
{
|
|
|
|
return id == MI_BODYPARTA || id == MI_BODYPARTB;
|
|
|
|
}
|
2019-05-19 19:28:10 +00:00
|
|
|
|
|
|
|
inline bool
|
2020-05-19 18:56:42 +00:00
|
|
|
IsPedModel(int16 id)
|
2019-05-19 19:28:10 +00:00
|
|
|
{
|
2020-05-19 18:56:42 +00:00
|
|
|
return id >= MI_PLAYER && id <= MI_LAST_PED;
|
2019-05-19 19:28:10 +00:00
|
|
|
}
|
2019-06-12 19:17:02 +00:00
|
|
|
inline bool
|
2020-05-19 18:56:42 +00:00
|
|
|
IsPalmTreeModel(int16 id)
|
2019-06-12 19:17:02 +00:00
|
|
|
{
|
2020-05-19 18:56:42 +00:00
|
|
|
return id == MI_VEG_PALM01 ||
|
|
|
|
id == MI_VEG_PALM02 ||
|
|
|
|
id == MI_VEG_PALM03 ||
|
|
|
|
id == MI_VEG_PALM04 ||
|
|
|
|
id == MI_VEG_PALM05 ||
|
|
|
|
id == MI_VEG_PALM06 ||
|
|
|
|
id == MI_VEG_PALM07 ||
|
|
|
|
id == MI_VEG_PALM08;
|
2019-06-12 19:17:02 +00:00
|
|
|
}
|
2019-06-30 19:06:55 +00:00
|
|
|
|
|
|
|
inline bool
|
|
|
|
IsTreeModel(int16 id)
|
|
|
|
{
|
2020-05-19 18:56:42 +00:00
|
|
|
return id == MI_TREE2 ||
|
2019-06-30 19:06:55 +00:00
|
|
|
id == MI_TREE3 ||
|
|
|
|
id == MI_TREE6 ||
|
|
|
|
id == MI_TREE8 ||
|
2020-05-19 18:56:42 +00:00
|
|
|
IsPalmTreeModel(id);
|
2019-06-30 19:06:55 +00:00
|
|
|
}
|
2019-07-12 16:01:22 +00:00
|
|
|
|
|
|
|
inline bool
|
|
|
|
IsPolicePedModel(int16 id)
|
|
|
|
{
|
|
|
|
return id == MI_COP ||
|
|
|
|
id == MI_SWAT ||
|
|
|
|
id == MI_FBI ||
|
|
|
|
id == MI_ARMY;
|
|
|
|
}
|
|
|
|
|
|
|
|
inline bool
|
|
|
|
IsPoliceVehicleModel(int16 id)
|
|
|
|
{
|
|
|
|
return id == MI_CHOPPER ||
|
|
|
|
id == MI_PREDATOR ||
|
|
|
|
id == MI_POLICE ||
|
|
|
|
id == MI_ENFORCER;
|
|
|
|
}
|
2020-04-15 05:03:53 +00:00
|
|
|
|
|
|
|
inline bool
|
|
|
|
IsExplosiveThingModel(int16 id)
|
|
|
|
{
|
|
|
|
return id == MI_EXPLODINGBARREL ||
|
2020-05-22 12:27:16 +00:00
|
|
|
id == MI_PETROLPUMP ||
|
|
|
|
id == MI_PETROLPUMP2;
|
2020-04-16 22:20:34 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
inline bool
|
|
|
|
IsFence(int16 id)
|
|
|
|
{
|
|
|
|
return id == MI_FENCE ||
|
|
|
|
id == MI_FENCE2;
|
2020-06-16 19:58:42 +00:00
|
|
|
}
|