@@ -12,7 +12,7 @@ import { getAssetImagePath } from '@src/utils/general';
12
12
import NoteBox from ' @src/components/NoteBox.astro' ;
13
13
14
14
const vehicles = {
15
- " Aircrafts " : {
15
+ " Aircraft " : {
16
16
" Airplanes" : [
17
17
{ id: 592 , name: " Andromada" , modelName: " androm" },
18
18
{ id: 577 , name: " AT-400" , modelName: " at400" },
@@ -276,97 +276,98 @@ const vehicles = {
276
276
title: ' Vehicles' ,
277
277
tableOfContents: false ,
278
278
}} >
279
- <p >This is a list of GTA:SA's vehicle ID numbers, as listed in the <code >vehicles.ide</code > game file.</p >
280
- <p >These vehicle ID numbers are used for several vehicle scripting functions.</p >
281
- <NoteBox type =' tip' >Click on the model image to view the vehicle in 3D.</NoteBox >
279
+ <p >This is a list of GTA:SA's vehicle ID numbers, as listed in the <code >vehicles.ide</code > game file.</p >
280
+ <p >These vehicle ID numbers are used for several <a href =" /reference/Scripting_Functions#Vehicle" >vehicle scripting functions</a >.</p >
281
+ <NoteBox type =' tip' >Click on any model image to view the vehicle in 3D.</NoteBox >
282
+ <NoteBox type =' tip' >Use your browser's search function (<strong >Ctrl+F or Cmd+F</strong >) to quickly find a vehicle by name or ID.</NoteBox >
282
283
283
- <h5 >Table of Contents</h5 >
284
- <ul >
285
- <span >Vehicles</span >
286
- <ul >
287
- { Object .keys (vehicles ).map (category => (
288
- <li >
289
- <a href = { ` #${category } ` } >{ category } </a >
290
- <ul >
291
- { Object .keys (vehicles [category ]).map (subcategory => (
292
- <>
293
- { subcategory !== ' Uncategorized' && (
294
- <li >
295
- <a href = { ` #${subcategory } ` } >{ subcategory } </a >
296
- </li >
297
- )}
298
- </>
299
- ))}
300
- </ul >
301
- </li >
302
- ))}
303
- </ul >
304
- <span >Lua tables</span >
305
- <ul >
306
- <li ><a href =" #lua-all" >All valid vehicle IDs listed here</a ></li >
307
- <li ><a href =" #lua-names" >All vehicle names</a ></li >
308
- <li ><a href =" #lua-model-names" >All vehicle model names</a ></li >
309
- <li ><a href =" #lua-no-lock" >Vehicles that are not lockable</a ></li >
310
- <li ><a href =" #lua-no-plate" >Vehicles without number plates</a ></li >
311
- <li ><a href =" #lua-3-colors" >Vehicles that support up to three different colors</a ></li >
312
- <li ><a href =" #lua-no-siren" >Vehicles that don't support siren lights</a ></li >
313
- <li ><a href =" #lua-no-engine" >Vehicles without engines</a ></li >
314
- <li ><a href =" #lua-2-doors" >Vehicles with 2 physically enterable doors</a ></li >
315
- <li ><a href =" #lua-4-doors" >Vehicles with 4 physically enterable doors</a ></li >
316
- </ul >
317
- </ul >
284
+ <h5 >Table of Contents</h5 >
285
+ <span >Vehicles:</span >
286
+ <ul >
287
+ { Object .keys (vehicles ).map (category => (
288
+ <li >
289
+ <a href = { ` #${category } ` } >{ category } </a >
290
+ <ul >
291
+ { Object .keys (vehicles [category ]).map (subcategory => (
292
+ <>
293
+ { subcategory !== ' Uncategorized' && (
294
+ <li >
295
+ <a href = { ` #${subcategory } ` } >{ subcategory } </a >
296
+ </li >
297
+ )}
298
+ </>
299
+ ))}
300
+ </ul >
301
+ </li >
302
+ ))}
303
+ </ul >
304
+ <span >Lua tables:</span >
305
+ <ul >
306
+ <li ><a href =" #lua-all" >All valid vehicle IDs listed here</a ></li >
307
+ <li ><a href =" #lua-names" >All vehicle names</a ></li >
308
+ <li ><a href =" #lua-model-names" >All vehicle model names</a ></li >
309
+ <li ><a href =" #lua-no-lock" >Vehicles that are not lockable</a ></li >
310
+ <li ><a href =" #lua-no-plate" >Vehicles without number plates</a ></li >
311
+ <li ><a href =" #lua-3-colors" >Vehicles that support up to 3 different colors</a ></li >
312
+ <li ><a href =" #lua-no-siren" >Vehicles that don't support siren lights</a ></li >
313
+ <li ><a href =" #lua-no-engine" >Vehicles without engines</a ></li >
314
+ <li ><a href =" #lua-2-doors" >Vehicles with 2 physically enterable doors</a ></li >
315
+ <li ><a href =" #lua-4-doors" >Vehicles with 4 physically enterable doors</a ></li >
316
+ </ul >
318
317
319
- <div class =" vehicle-othercategory" >
320
- <h3 class =" vehicle-category-othertitle" >Specification</h3 >
321
- <div class =" vehicle-list" >
322
- <div class =" vehicle-item" >
323
- <div class =" vehicle-title" >Vehicle Name</div >
324
- <a target =" _blank" href ={ ` http://gta.rockstarvision.com/vehicleviewer/#sa ` } >
325
- Preview Image
326
- </a >
327
- <div class =" vehicle-details" ><code >ID</code > <code >Model Name</code ></div >
328
- </div >
318
+ <div class =" vehicle-othercategory" >
319
+ <h3 class =" vehicle-category-othertitle" >Specification</h3 >
320
+ <div class =" vehicle-list" >
321
+ <div class =" vehicle-item" >
322
+ <div class =" vehicle-title" >Vehicle Name</div >
323
+ <a target =" _blank" href ={ ` http://gta.rockstarvision.com/vehicleviewer/#sa ` } >
324
+ Preview Image
325
+ </a >
326
+ <div class =" vehicle-details" ><code >ID</code > <code >Model Name</code ></div >
329
327
</div >
330
-
331
- <p ><strong >Vehicle Name</strong >: The friendly capitalized name of the vehicle model, which can be used in functions such as <a href =" /reference/getVehicleName" >getVehicleName</a >, <a href =" /reference/getVehicleNameFromModel" >getVehicleNameFromModel</a > and <a href =" /reference/getVehicleModelFromName" >getVehicleModelFromName</a >.</p >
332
- <p ><strong >Preview Image</strong >: A small picture of the vehicle in-game, wrapped in a link to the Vehicle 3D Model viewer site.</p >
333
- <p ><strong >ID</strong >: The numeric model identifier, which can be used in functions such as <a href =" /reference/getVehicleNameFromModel" >getVehicleNameFromModel</a >, <a href =" /reference/getVehicleModelFromName" >getVehicleModelFromName</a >, <a href =" /reference/createVehicle" >createVehicle</a >, <a href =" /reference/setElementModel" >setElementModel</a > and <a href =" /reference/getElementModel" >getElementModel</a >.</p >
334
- <p ><strong >Model Name</strong >: The name of the vehicle model (<code >DFF</code > and <code >TXD</code > files in <code >gta3.img</code >), which is mainly useful for modding purposes (e.g. <code >glenshit</code >).</p >
335
328
</div >
336
329
337
- { Object .entries (vehicles ).map (([category , subcategories ]) => (
338
- <div class = " vehicle-category" id = { category } >
339
- <h3 class = " vehicle-category-title" >{ category } </h3 >
340
- {
341
- Object .entries (subcategories ).map (([subcategory , vehiclesList ]) => (
342
- <div class = " vehicle-subcategory" id = { subcategory } >
343
- { subcategory !== ' Uncategorized' && (
344
- <h4 class = " vehicle-subcategory-title" >{ subcategory } </h4 >
345
- )}
346
- <div class = " vehicle-list" >
347
- { vehiclesList .map (vehicle => (
348
- <div class = " vehicle-item" id = { vehicle .name } >
349
- <div class = " vehicle-title" >{ vehicle .name } </div >
350
- <a target = " _blank" href = { ` http://gta.rockstarvision.com/vehicleviewer/#sa/${vehicle .id } ` } >
351
- <Image
352
- src = { getAssetImagePath (` Vehicles/${vehicle .id }.png ` )}
353
- alt = { vehicle .name }
354
- class = " vehicle-image"
355
- />
356
- </a >
357
- <div class = " vehicle-details" ><code >{ vehicle .id } </code > <code >{ vehicle .modelName } </code ></div >
358
- </div >
359
- ))}
360
- </div >
361
- </div >
362
- ))
363
- }
364
- </div >
365
- ))}
330
+ <p ><strong >Vehicle Name</strong >: The friendly capitalized name of the vehicle model, which can be used in functions such as <a href =" /reference/getVehicleName" >getVehicleName</a >, <a href =" /reference/getVehicleNameFromModel" >getVehicleNameFromModel</a > and <a href =" /reference/getVehicleModelFromName" >getVehicleModelFromName</a >.</p >
331
+ <p ><strong >Preview Image</strong >: A small picture of the vehicle in-game, wrapped in a link to the Vehicle 3D Model viewer site.</p >
332
+ <p ><strong >ID</strong >: The numeric model identifier, which can be used in functions such as <a href =" /reference/getVehicleNameFromModel" >getVehicleNameFromModel</a >, <a href =" /reference/getVehicleModelFromName" >getVehicleModelFromName</a >, <a href =" /reference/createVehicle" >createVehicle</a >, <a href =" /reference/setElementModel" >setElementModel</a > and <a href =" /reference/getElementModel" >getElementModel</a >.</p >
333
+ <p ><strong >Model Name</strong >: The name of the vehicle model (<code >DFF</code > and <code >TXD</code > files in <code >gta3.img</code >), which is mainly useful for modding purposes (e.g. <code >glenshit</code >).</p >
334
+ </div >
366
335
367
- <section data-pagefind-ignore >
368
- <p id =" lua-all" >Lua table of all the valid vehicle IDs listed on this page:</p >
369
- <Code lang =" lua" code ={ `
336
+ { Object .entries (vehicles ).map (([category , subcategories ]) => (
337
+ <div class = " vehicle-category" id = { category } >
338
+ <h3 class = " vehicle-category-title" >{ category } </h3 >
339
+ {
340
+ Object .entries (subcategories ).map (([subcategory , vehiclesList ]) => (
341
+ <div class = " vehicle-subcategory" id = { subcategory } >
342
+ { subcategory !== ' Uncategorized' && (
343
+ <h4 class = " vehicle-subcategory-title" >{ subcategory } </h4 >
344
+ )}
345
+ <div class = " vehicle-list" >
346
+ { vehiclesList .map (vehicle => (
347
+ <div class = " vehicle-item" id = { vehicle .name } >
348
+ <div class = " vehicle-title" >{ vehicle .name } </div >
349
+ <a target = " _blank" href = { ` http://gta.rockstarvision.com/vehicleviewer/#sa/${vehicle .id } ` } >
350
+ <Image
351
+ src = { getAssetImagePath (` Vehicles/${vehicle .id }.png ` )}
352
+ alt = { vehicle .name }
353
+ class = " vehicle-image"
354
+ />
355
+ </a >
356
+ <div class = " vehicle-details" ><code >{ vehicle .id } </code > <code >{ vehicle .modelName } </code ></div >
357
+ </div >
358
+ ))}
359
+ </div >
360
+ </div >
361
+ ))
362
+ }
363
+ </div >
364
+ ))}
365
+
366
+ <section data-pagefind-ignore >
367
+
368
+ <details id =" lua-all" >
369
+ <summary >Lua table of all the valid vehicle IDs listed on this page</summary >
370
+ <Code lang =" lua" code ={ `
370
371
vehicleIds = {
371
372
400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
372
373
416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433,
@@ -381,8 +382,10 @@ vehicleIds = {
381
382
578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595,
382
383
596, 597, 598, 599, 600, 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611
383
384
} ` } />
385
+ </details >
384
386
385
- <p id =" lua-names" >Lua table of all vehicle names:</p >
387
+ <details id =" lua-names" >
388
+ <summary >Lua table of all vehicle names</summary >
386
389
<Code lang =" lua" code ={ `
387
390
-- (when indexing just do a <vehicle model id you want the name of> - 399 to get the name)
388
391
vehicleNames = {
@@ -406,49 +409,63 @@ vehicleNames = {
406
409
"Picador", "S.W.A.T.", "Alpha", "Phoenix", "Glendale Damaged", "Sadler Damaged", "Baggage Trailer (covered)",
407
410
"Baggage Trailer (Uncovered)", "Trailer (Stairs)", "Boxville Mission", "Farm Trailer", "Street Clean Trailer"
408
411
} ` } />
412
+ </details >
409
413
410
- <p id =" lua-model-names" >Lua table of all vehicle model names:</p >
414
+ <details id =" lua-model-names" >
415
+ <summary >Lua table of all vehicle model names</summary >
411
416
<Code lang =" lua" code ={ `
412
417
-- (when indexing just do a <vehicle model id you want the name of> - 399 to get the model name)
413
418
vehicleModelNames {
414
419
"landstal", "bravura", "buffalo", "linerun", "peren", "sentinel", "dumper", "firetruk", "trash", "stretch", "manana", "infernus", "voodoo", "pony", "mule", "cheetah", "ambulan", "leviathn", "moonbeam", "esperant", "taxi", "washing", "bobcat", "mrwhoop", "bfinject", "hunter", "premier", "enforcer", "securica", "banshee", "predator", "bus", "rhino", "barracks", "hotknife", "artict1", "previon", "coach", "cabbie", "stallion", "rumpo", "rcbandit", "romero", "packer", "monster", "admiral", "squalo", "seaspar", "pizzaboy", "tram", "artict2", "turismo", "speeder", "reefer", "tropic", "flatbed", "yankee", "caddy", "solair", "topfun", "skimmer", "pcj600", "faggio", "freeway", "rcbaron", "rcraider", "glendale", "oceanic", "sanchez", "sparrow", "patriot", "quad", "coastg", "dinghy", "hermes", "sabre", "rustler", "zr350", "walton", "regina", "comet", "bmx", "burrito", "camper", "marquis", "baggage", "dozer", "maverick", "vcnmav", "rancher", "fbiranch", "virgo", "greenwoo", "jetmax", "hotring", "sandking", "blistac", "polmav", "boxville", "benson", "mesa", "rcgoblin", "hotrina", "hotrinb", "bloodra", "rnchlure", "supergt", "elegant", "journey", "bike", "mtbike", "beagle", "cropdust", "stunt", "petro", "rdtrain", "nebula", "majestic", "buccanee", "shamal", "hydra", "fcr900", "nrg500", "copbike", "cement", "towtruck", "fortune", "cadrona", "fbitruck", "willard", "forklift", "tractor", "combine", "feltzer", "remingtn", "slamvan", "blade", "freight", "streak", "vortex", "vincent", "bullet", "clover", "sadler", "firela", "hustler", "intruder", "primo", "cargobob", "tampa", "sunrise", "merit", "utility", "nevada", "yosemite", "windsor", "monstera", "monsterb", "uranus", "jester", "sultan", "stratum", "elegy", "raindanc", "rctiger", "flash", "tahoma", "savanna", "bandito", "freiflat", "streakc", "kart", "mower", "duneride", "sweeper", "broadway", "tornado", "at400", "dft30", "huntley", "stafford", "bf400", "newsvan", "tug", "petrotr", "emperor", "wayfarer", "euros", "hotdog", "club", "freibox", "artict3", "androm", "dodo", "rccam", "launch", "copcarla", "copcarsf", "copcarvg", "copcarru", "picador", "swatvan", "alpha", "phoenix", "glenshit", "sadlshit", "bagboxa", "bagboxb", "tugstair", "boxburg", "farmtr1", "utiltr1"
415
420
} ` } />
421
+ </details >
416
422
417
- <p id =" lua-no-lock" >Lua table of vehicles that are not lockable:</p >
423
+ <details id =" lua-no-lock" >
424
+ <summary >Lua table of vehicles that are not lockable</summary >
418
425
<Code lang =" lua" code ={ `
419
426
nonLockableVehicles = {
420
427
594, 606, 607, 611, 584, 608, 435, 450, 591, 539, 441, 464, 501, 465, 564, 472, 473, 493, 595, 484, 430, 453, 452, 446, 454, 581, 509, 481,
421
428
462, 521, 463, 510, 522, 461, 448, 468, 586, 425, 520
422
429
} ` } />
430
+ </details >
423
431
424
- <p id =" lua-no-plate" >Lua table of vehicles without number plates:</p >
432
+ <details id =" lua-no-plate" >
433
+ <summary >Lua table of vehicles that do not have number plates</summary >
425
434
<Code lang =" lua" code ={ `
426
435
noNumberPlates = {
427
436
592, 553, 577, 488, 511, 497, 548, 563, 512, 476, 593, 447, 425, 519, 520, 460, 417, 469, 487, 513, 509, 481, 510, 472, 473, 493, 595, 484,
428
437
430, 453, 452, 446, 454
429
438
} ` } />
439
+ </details >
430
440
431
- <p id =" lua-3-colors" >Lua table of vehicles that support up to three different colors:</p >
441
+ <details id =" lua-3-colors" >
442
+ <summary >Lua table of vehicles that support up to 3 different colors</summary >
432
443
<Code lang =" lua" code ={ `
433
444
maxColorVehicles = {
434
445
483, 524, 446
435
446
} ` } />
447
+ </details >
436
448
437
- <p id =" lua-no-siren" >Lua table of vehicles that doesn't support siren lights:</p >
449
+ <details id =" lua-no-siren" >
450
+ <summary >Lua table of vehicles that do not support siren lights</summary >
438
451
<Code lang =" lua" code ={ `
439
452
noSirenLights = {
440
453
400, 401, 402, 403, 404, 405, 406, 417, 420, 423, 425, 430, 432, 433, 435, 438, 441, 446, 447, 448, 452, 453, 454, 460, 461, 462, 463, 464,
441
454
465, 468, 469, 472, 473, 476, 481, 484, 487, 488, 493, 497, 501, 509, 510, 511, 512, 513, 519, 520, 521, 522, 523, 528, 537, 538, 539, 544,
442
455
548, 553, 563, 564, 569, 570, 577, 581, 586, 590, 592, 593, 595, 600, 601, 602, 603, 604, 605, 606, 607, 608, 610, 611
443
456
} ` } />
457
+ </details >
444
458
445
- <p id =" lua-no-engine" >Lua table of vehicles without engines:</p >
459
+ <details id =" lua-no-engine" >
460
+ <summary >Lua table of vehicles that do not have engines</summary >
446
461
<Code lang =" lua" code ={ `
447
462
noEngineVehicles = { -- such as bicycles and trailers
448
463
481, 509, 510, 606, 607, 608, 610, 611, 435, 450, 584, 591, 590, 569, 570, 594
449
464
} ` } />
465
+ </details >
450
466
451
- <p id =" lua-2-doors" >Lua table of vehicles with 2 physically enterable doors:</p >
467
+ <details id =" lua-2-doors" >
468
+ <summary >Lua table of vehicles with 2 physically enterable doors</summary >
452
469
<Code lang =" lua" code ={ `
453
470
twoDoorVehicles = { -- boats and bikes not included
454
471
592, 577, 511, 512, 593, 460, 548, 417, 488, 563, 447, 469,
@@ -464,8 +481,10 @@ twoDoorVehicles = { -- boats and bikes not included
464
481
538, 537,
465
482
424, 504, 483, 508, 500, 444, 556, 557, 495,
466
483
} ` } />
484
+ </details >
467
485
468
- <p id =" lua-4-doors" >Lua table of vehicles with 4 physically enterable doors:</p >
486
+ <details id =" lua-4-doors" >
487
+ <summary >Lua table of vehicles with 4 physically enterable doors</summary >
469
488
<Code lang =" lua" code ={ `
470
489
fourDoorVehicles = { -- boats and bikes not included
471
490
487, 497,
@@ -478,13 +497,15 @@ fourDoorVehicles = { -- boats and bikes not included
478
497
567,
479
498
561, 560,
480
499
} ` } />
481
- </section >
500
+ </details >
501
+
502
+ </section >
482
503
483
- <SeeAlsoSection seeAlsoLinks ={ getSeeAlsoLinksFromList ([
484
- ' reference:ID_Lists' ,
485
- ' reference:vehicle' ,
486
- ' external:Web Vehicle 3D Model Viewer:http://gta.rockstarvision.com/vehicleviewer/#sa'
487
- ])} currentId =' ' />
504
+ <SeeAlsoSection seeAlsoLinks ={ getSeeAlsoLinksFromList ([
505
+ ' reference:ID_Lists' ,
506
+ ' reference:vehicle' ,
507
+ ' external:Web Vehicle 3D Model Viewer:http://gta.rockstarvision.com/vehicleviewer/#sa'
508
+ ])} currentId =' ' />
488
509
</StarlightPage >
489
510
490
511
<style >
@@ -512,14 +533,25 @@ fourDoorVehicles = { -- boats and bikes not included
512
533
align-items: flex-start;
513
534
text-align: center;
514
535
}
536
+ @media (max-width: 600px) {
537
+ .vehicle-list {
538
+ justify-content: center;
539
+ }
540
+ .vehicle-category-title,
541
+ .vehicle-othercategory-title,
542
+ .vehicle-subcategory-title {
543
+ text-align: center;
544
+ }
545
+ }
515
546
.vehicle-subcategory-title {
516
547
border-bottom: 1px solid var(--color-mta-orange);
517
548
}
518
549
.vehicle-item {
519
550
padding: 0.2rem;
520
551
margin: 0;
521
552
border: 1px solid var(--sl-color-gray-4);
522
- width: 150px;
553
+ width: 140px;
554
+ font-size: 0.9rem;
523
555
}
524
556
.vehicle-item .vehicle-title {
525
557
margin-bottom: 1rem;
0 commit comments