t2-demo-parser 2.1.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/README.md +170 -7
  2. package/dist/BitStream.d.ts +14 -3
  3. package/dist/BitStream.d.ts.map +1 -1
  4. package/dist/BitStream.js +28 -6
  5. package/dist/BitStream.js.map +1 -1
  6. package/dist/BitWriter.d.ts +29 -0
  7. package/dist/BitWriter.d.ts.map +1 -0
  8. package/dist/BitWriter.js +76 -0
  9. package/dist/BitWriter.js.map +1 -0
  10. package/dist/ClassRegistry.d.ts +23 -28
  11. package/dist/ClassRegistry.d.ts.map +1 -1
  12. package/dist/ClassRegistry.js +75 -84
  13. package/dist/ClassRegistry.js.map +1 -1
  14. package/dist/DataBlockParsers.d.ts.map +1 -1
  15. package/dist/DataBlockParsers.js +51 -76
  16. package/dist/DataBlockParsers.js.map +1 -1
  17. package/dist/DemoParser.d.ts +86 -23
  18. package/dist/DemoParser.d.ts.map +1 -1
  19. package/dist/DemoParser.js +409 -264
  20. package/dist/DemoParser.js.map +1 -1
  21. package/dist/EventParsers.d.ts.map +1 -1
  22. package/dist/EventParsers.js +87 -58
  23. package/dist/EventParsers.js.map +1 -1
  24. package/dist/GhostManager.d.ts +7 -1
  25. package/dist/GhostManager.d.ts.map +1 -1
  26. package/dist/GhostManager.js +231 -146
  27. package/dist/GhostManager.js.map +1 -1
  28. package/dist/HuffmanProcessor.d.ts +15 -0
  29. package/dist/HuffmanProcessor.d.ts.map +1 -1
  30. package/dist/HuffmanProcessor.js +45 -0
  31. package/dist/HuffmanProcessor.js.map +1 -1
  32. package/dist/LiveParser.d.ts +20 -1
  33. package/dist/LiveParser.d.ts.map +1 -1
  34. package/dist/LiveParser.js +31 -12
  35. package/dist/LiveParser.js.map +1 -1
  36. package/dist/PacketParser.d.ts +22 -2
  37. package/dist/PacketParser.d.ts.map +1 -1
  38. package/dist/PacketParser.js +111 -48
  39. package/dist/PacketParser.js.map +1 -1
  40. package/dist/Timeline.d.ts +5 -2
  41. package/dist/Timeline.d.ts.map +1 -1
  42. package/dist/Timeline.js +25 -12
  43. package/dist/Timeline.js.map +1 -1
  44. package/dist/cli.js +3 -0
  45. package/dist/cli.js.map +1 -1
  46. package/dist/dataBlockDataTypes.d.ts +111 -112
  47. package/dist/dataBlockDataTypes.d.ts.map +1 -1
  48. package/dist/dataBlockDataTypes.js.map +1 -1
  49. package/dist/defaultRegistry.d.ts +9 -0
  50. package/dist/defaultRegistry.d.ts.map +1 -0
  51. package/dist/defaultRegistry.js +43 -0
  52. package/dist/defaultRegistry.js.map +1 -0
  53. package/dist/eventDataTypes.d.ts +74 -72
  54. package/dist/eventDataTypes.d.ts.map +1 -1
  55. package/dist/eventDataTypes.js.map +1 -1
  56. package/dist/ghostDataTypes.d.ts +125 -131
  57. package/dist/ghostDataTypes.d.ts.map +1 -1
  58. package/dist/ghostDataTypes.js.map +1 -1
  59. package/dist/index.d.ts +6 -4
  60. package/dist/index.d.ts.map +1 -1
  61. package/dist/index.js +4 -2
  62. package/dist/index.js.map +1 -1
  63. package/dist/types.d.ts +51 -2
  64. package/dist/types.d.ts.map +1 -1
  65. package/dist/types.js +6 -0
  66. package/dist/types.js.map +1 -1
  67. package/package.json +4 -1
  68. package/dist/BitStream.test.d.ts +0 -2
  69. package/dist/BitStream.test.d.ts.map +0 -1
  70. package/dist/BitStream.test.js +0 -419
  71. package/dist/BitStream.test.js.map +0 -1
  72. package/dist/ClassRegistry.test.d.ts +0 -2
  73. package/dist/ClassRegistry.test.d.ts.map +0 -1
  74. package/dist/ClassRegistry.test.js +0 -83
  75. package/dist/ClassRegistry.test.js.map +0 -1
  76. package/dist/DataBlockParsers.test.d.ts +0 -2
  77. package/dist/DataBlockParsers.test.d.ts.map +0 -1
  78. package/dist/DataBlockParsers.test.js +0 -294
  79. package/dist/DataBlockParsers.test.js.map +0 -1
  80. package/dist/DemoParser.test.d.ts +0 -2
  81. package/dist/DemoParser.test.d.ts.map +0 -1
  82. package/dist/DemoParser.test.js +0 -472
  83. package/dist/DemoParser.test.js.map +0 -1
  84. package/dist/GhostStateAccumulator.test.d.ts +0 -2
  85. package/dist/GhostStateAccumulator.test.d.ts.map +0 -1
  86. package/dist/GhostStateAccumulator.test.js +0 -201
  87. package/dist/GhostStateAccumulator.test.js.map +0 -1
  88. package/dist/GhostTracker.test.d.ts +0 -2
  89. package/dist/GhostTracker.test.d.ts.map +0 -1
  90. package/dist/GhostTracker.test.js +0 -64
  91. package/dist/GhostTracker.test.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  import type { Vec3, Color3, Color4, AffineTransform } from "./dataTypes.js";
2
- export interface HudImageEntry {
2
+ export type HudImageEntry = {
3
3
  friendlyName: string;
4
4
  enemyName?: string;
5
5
  renderCenter: boolean;
@@ -7,7 +7,7 @@ export interface HudImageEntry {
7
7
  renderAlways: boolean;
8
8
  renderDistance: boolean;
9
9
  renderName: boolean;
10
- }
10
+ };
11
11
  /**
12
12
  * One ShapeBaseImageData state. Transition values are 1-based state
13
13
  * indices (0 = no transition), in the engine's own packing order —
@@ -15,7 +15,7 @@ export interface HudImageEntry {
15
15
  * (no NotLoaded/Loaded, phantom generic0 pair) and consumers carried a
16
16
  * remap table to compensate.
17
17
  */
18
- export interface ImageState {
18
+ export type ImageState = {
19
19
  name: string;
20
20
  transitionOnNotLoaded: number;
21
21
  transitionOnLoaded: number;
@@ -47,21 +47,19 @@ export interface ImageState {
47
47
  emitterTime?: number;
48
48
  emitterNode?: number;
49
49
  sound: number | null;
50
- }
51
- export interface ParticleKey {
50
+ };
51
+ export type ParticleKey = {
52
52
  r: number;
53
53
  g: number;
54
54
  b: number;
55
55
  a: number;
56
56
  size: number;
57
57
  time: number;
58
- }
59
- export interface SimDataBlock {
60
- [key: string]: unknown;
61
- }
58
+ };
59
+ export type SimDataBlock = {};
62
60
  export interface GameBaseDataBlock extends SimDataBlock {
63
61
  }
64
- export interface ShapeBaseDataBlock extends GameBaseDataBlock {
62
+ export type ShapeBaseDataBlock = GameBaseDataBlock & {
65
63
  crc?: number;
66
64
  shapeName?: string;
67
65
  mass?: number;
@@ -95,8 +93,8 @@ export interface ShapeBaseDataBlock extends GameBaseDataBlock {
95
93
  shieldEffectLifetimeMS?: number;
96
94
  shieldEffectScale?: Vec3;
97
95
  hudImages?: HudImageEntry[];
98
- }
99
- export interface ShapeBaseImageDataBlock extends GameBaseDataBlock {
96
+ };
97
+ export type ShapeBaseImageDataBlock = GameBaseDataBlock & {
100
98
  crc?: number;
101
99
  shapeName?: string;
102
100
  mountPoint?: number;
@@ -126,13 +124,13 @@ export interface ShapeBaseImageDataBlock extends GameBaseDataBlock {
126
124
  casing?: number | null;
127
125
  accuFire?: boolean;
128
126
  states?: ImageState[];
129
- }
127
+ };
130
128
  /**
131
129
  * Field names for the movement/jet/splash sections are binary-verified
132
130
  * against Tribes2.exe (build 25034) initPersistFields offsets — the
133
131
  * retail struct layout differs from the SVN engine source.
134
132
  */
135
- export interface PlayerDataBlock extends ShapeBaseDataBlock {
133
+ export type PlayerDataBlock = ShapeBaseDataBlock & {
136
134
  renderFirstPerson?: boolean;
137
135
  minLookAngle?: number;
138
136
  maxLookAngle?: number;
@@ -150,7 +148,7 @@ export interface PlayerDataBlock extends ShapeBaseDataBlock {
150
148
  maxJetForwardSpeed?: number;
151
149
  maxJetHorizontalPercentage?: number;
152
150
  jetEmitter?: number | null;
153
- jetEffect?: number;
151
+ jetEffect?: number | null;
154
152
  runForce?: number;
155
153
  runEnergyDrain?: number;
156
154
  minRunEnergy?: number;
@@ -204,8 +202,8 @@ export interface PlayerDataBlock extends ShapeBaseDataBlock {
204
202
  /** Heat signature rates (Tribes 2; retail player.cs: 1/4 and 1/3). */
205
203
  heatDecayPerSec?: number;
206
204
  heatIncreasePerSec?: number;
207
- }
208
- export interface VehicleDataBlock extends ShapeBaseDataBlock {
205
+ };
206
+ export type VehicleDataBlock = ShapeBaseDataBlock & {
209
207
  bodyRestitution?: number;
210
208
  bodyFriction?: number;
211
209
  impactSounds?: (number | null)[];
@@ -221,6 +219,9 @@ export interface VehicleDataBlock extends ShapeBaseDataBlock {
221
219
  jetForce?: number;
222
220
  jetEnergyDrain?: number;
223
221
  minJetEnergy?: number;
222
+ triggerDustHeight?: number;
223
+ dustHeight?: number;
224
+ numDmgEmitterAreas?: number;
224
225
  integration?: number;
225
226
  collisionTol?: number;
226
227
  massCenter?: number;
@@ -240,8 +241,8 @@ export interface VehicleDataBlock extends ShapeBaseDataBlock {
240
241
  splashVelEpsilon?: number;
241
242
  collDamageThresholdVel?: number;
242
243
  collDamageMultiplier?: number;
243
- }
244
- export interface FlyingVehicleDataBlock extends VehicleDataBlock {
244
+ };
245
+ export type FlyingVehicleDataBlock = VehicleDataBlock & {
245
246
  jetActivateSound?: number | null;
246
247
  jetDeactivateSound?: number | null;
247
248
  jetEmitters?: (number | null)[];
@@ -261,8 +262,8 @@ export interface FlyingVehicleDataBlock extends VehicleDataBlock {
261
262
  minTrailSpeed?: number;
262
263
  vertThrustMultiple?: number;
263
264
  maxForwardSpeed?: number;
264
- }
265
- export interface HoverVehicleDataBlock extends VehicleDataBlock {
265
+ };
266
+ export type HoverVehicleDataBlock = VehicleDataBlock & {
266
267
  dragForce?: number;
267
268
  mainThrustForce?: number;
268
269
  reverseThrustForce?: number;
@@ -291,8 +292,8 @@ export interface HoverVehicleDataBlock extends VehicleDataBlock {
291
292
  mainThrustEmitterFactor?: number;
292
293
  strafeThrustEmitterFactor?: number;
293
294
  reverseThrustEmitterFactor?: number;
294
- }
295
- export interface WheeledVehicleDataBlock extends VehicleDataBlock {
295
+ };
296
+ export type WheeledVehicleDataBlock = VehicleDataBlock & {
296
297
  tireRadius?: number;
297
298
  tireStaticFriction?: number;
298
299
  tireKineticFriction?: number;
@@ -318,12 +319,12 @@ export interface WheeledVehicleDataBlock extends VehicleDataBlock {
318
319
  steeringReturn?: number;
319
320
  steeringDamping?: number;
320
321
  powerSteeringFactor?: number;
321
- }
322
- export interface StaticShapeDataBlock extends ShapeBaseDataBlock {
322
+ };
323
+ export type StaticShapeDataBlock = ShapeBaseDataBlock & {
323
324
  noIndividualDamage?: boolean;
324
325
  dynamicTypeField?: number;
325
- }
326
- export interface TurretDataBlock extends StaticShapeDataBlock {
326
+ };
327
+ export type TurretDataBlock = StaticShapeDataBlock & {
327
328
  thetaMin?: number;
328
329
  thetaMax?: number;
329
330
  thetaNull?: number;
@@ -331,8 +332,8 @@ export interface TurretDataBlock extends StaticShapeDataBlock {
331
332
  primaryAxis?: number;
332
333
  maxCapacitorEnergy?: number;
333
334
  capacitorRechargeRate?: number;
334
- }
335
- export interface TurretImageDataBlock extends ShapeBaseImageDataBlock {
335
+ };
336
+ export type TurretImageDataBlock = ShapeBaseImageDataBlock & {
336
337
  activationMS?: number;
337
338
  deactivateDelayMS?: number;
338
339
  degPerSecTheta?: number;
@@ -340,8 +341,8 @@ export interface TurretImageDataBlock extends ShapeBaseImageDataBlock {
340
341
  dontFireInsideDamageRadius?: boolean;
341
342
  damageRadius?: number;
342
343
  useCapacitor?: boolean;
343
- }
344
- export interface ItemDataBlock extends ShapeBaseDataBlock {
344
+ };
345
+ export type ItemDataBlock = ShapeBaseDataBlock & {
345
346
  friction?: number;
346
347
  elasticity?: number;
347
348
  sticky?: boolean;
@@ -352,8 +353,8 @@ export interface ItemDataBlock extends ShapeBaseDataBlock {
352
353
  lightTime?: number;
353
354
  lightRadius?: number;
354
355
  lightOnlyStatic?: boolean;
355
- }
356
- export interface ProjectileDataBlock extends GameBaseDataBlock {
356
+ };
357
+ export type ProjectileDataBlock = GameBaseDataBlock & {
357
358
  projectileShapeName?: string;
358
359
  faceViewerLinkTime?: number;
359
360
  lifetime?: number;
@@ -374,12 +375,12 @@ export interface ProjectileDataBlock extends GameBaseDataBlock {
374
375
  underwaterLightColor?: Color3;
375
376
  explodeOnWaterImpact?: boolean;
376
377
  depthTolerance?: number;
377
- }
378
+ };
378
379
  /**
379
380
  * Field names binary-verified against Tribes2.exe (build 25034):
380
381
  * initPersistFields FUN_0062b3c0 / unpackData FUN_0062bea0.
381
382
  */
382
- export interface LinearProjectileDataBlock extends ProjectileDataBlock {
383
+ export type LinearProjectileDataBlock = ProjectileDataBlock & {
383
384
  dryVelocity?: number;
384
385
  wetVelocity?: number;
385
386
  /** Milliseconds, tick-rounded (32ms) by the engine's onAdd. */
@@ -394,8 +395,8 @@ export interface LinearProjectileDataBlock extends ProjectileDataBlock {
394
395
  fizzleUnderwaterMS?: number;
395
396
  activateDelayMS?: number;
396
397
  doDynamicClientHits?: boolean;
397
- }
398
- export interface GrenadeProjectileDataBlock extends ProjectileDataBlock {
398
+ };
399
+ export type GrenadeProjectileDataBlock = ProjectileDataBlock & {
399
400
  armingDelayMS?: number;
400
401
  muzzleVelocity?: number;
401
402
  grenadeElasticity?: number;
@@ -404,8 +405,8 @@ export interface GrenadeProjectileDataBlock extends ProjectileDataBlock {
404
405
  density?: number;
405
406
  gravityMod?: number;
406
407
  lifetimeMS?: number;
407
- }
408
- export interface SeekerProjectileDataBlock extends ProjectileDataBlock {
408
+ };
409
+ export type SeekerProjectileDataBlock = ProjectileDataBlock & {
409
410
  lifetimeMS?: number;
410
411
  muzzleVelocity?: number;
411
412
  turningSpeed?: number;
@@ -426,8 +427,8 @@ export interface SeekerProjectileDataBlock extends ProjectileDataBlock {
426
427
  casingDebris?: number | null;
427
428
  puffEmitter?: number | null;
428
429
  exhaustEmitter?: number | null;
429
- }
430
- export interface SniperProjectileDataBlock extends ProjectileDataBlock {
430
+ };
431
+ export type SniperProjectileDataBlock = ProjectileDataBlock & {
431
432
  maxRifleRange?: number;
432
433
  rifleHeadMultiplier?: number;
433
434
  beamColor?: Color4;
@@ -441,8 +442,8 @@ export interface SniperProjectileDataBlock extends ProjectileDataBlock {
441
442
  pulseSpeed?: number;
442
443
  pulseLength?: number;
443
444
  textures?: string[];
444
- }
445
- export interface ShockLanceProjectileDataBlock extends ProjectileDataBlock {
445
+ };
446
+ export type ShockLanceProjectileDataBlock = ProjectileDataBlock & {
446
447
  zapDuration?: number;
447
448
  boltLength?: number;
448
449
  numParts?: number;
@@ -457,13 +458,13 @@ export interface ShockLanceProjectileDataBlock extends ProjectileDataBlock {
457
458
  texWrap?: number[];
458
459
  textures?: string[];
459
460
  emitter?: number | null;
460
- }
461
+ };
461
462
  /**
462
463
  * Field names binary-verified against Tribes2.exe (build 25034):
463
464
  * initPersistFields FUN_0064a860 / unpackData FUN_0064ae00. The ELF
464
465
  * gun: a wavy main beam with lightning arcs around it.
465
466
  */
466
- export interface ELFProjectileDataBlock extends ProjectileDataBlock {
467
+ export type ELFProjectileDataBlock = ProjectileDataBlock & {
467
468
  beamRange?: number;
468
469
  mainBeamWidth?: number;
469
470
  mainBeamSpeed?: number;
@@ -473,13 +474,13 @@ export interface ELFProjectileDataBlock extends ProjectileDataBlock {
473
474
  /** textures[0..2] — retail: ELFBeam, ELFLightning, BlueImpact. */
474
475
  textures?: string[];
475
476
  emitter?: number | null;
476
- }
477
+ };
477
478
  /**
478
479
  * Field names binary-verified against Tribes2.exe (build 25034):
479
480
  * initPersistFields FUN_00644910 / unpackData FUN_00644c40. The repair
480
481
  * beam: a segmented ribbon (numSegments) with a blur trail.
481
482
  */
482
- export interface RepairProjectileDataBlock extends ProjectileDataBlock {
483
+ export type RepairProjectileDataBlock = ProjectileDataBlock & {
483
484
  beamRange?: number;
484
485
  beamWidth?: number;
485
486
  /** Engine S32 (the old decode read its raw bits as a float). */
@@ -491,8 +492,8 @@ export interface RepairProjectileDataBlock extends ProjectileDataBlock {
491
492
  cutoffAngle?: number;
492
493
  /** textures[0..1] — retail: special/redbump2, special/redflare. */
493
494
  textures?: string[];
494
- }
495
- export interface TargetProjectileDataBlock extends ProjectileDataBlock {
495
+ };
496
+ export type TargetProjectileDataBlock = ProjectileDataBlock & {
496
497
  maxRifleRange?: number;
497
498
  beamColor?: Color4;
498
499
  startBeamWidth?: number;
@@ -503,12 +504,12 @@ export interface TargetProjectileDataBlock extends ProjectileDataBlock {
503
504
  pulseSpeed?: number;
504
505
  pulseLength?: number;
505
506
  textures?: string[];
506
- }
507
+ };
507
508
  /**
508
509
  * Field names binary-verified against Tribes2.exe (build 25034):
509
510
  * initPersistFields FUN_0063fcb0 / unpackData FUN_00640160.
510
511
  */
511
- export interface TracerProjectileDataBlock extends LinearProjectileDataBlock {
512
+ export type TracerProjectileDataBlock = LinearProjectileDataBlock & {
512
513
  tracerLength?: number;
513
514
  tracerWidth?: number;
514
515
  tracerMinPixels?: number;
@@ -521,14 +522,14 @@ export interface TracerProjectileDataBlock extends LinearProjectileDataBlock {
521
522
  renderCross?: boolean;
522
523
  tracerTex0?: string;
523
524
  tracerTex1?: string;
524
- }
525
+ };
525
526
  /**
526
527
  * Field names binary-verified against Tribes2.exe (build 25034):
527
528
  * initPersistFields FUN_00694b40 / unpackData FUN_00694d80. The blaster
528
529
  * bolt: an oriented additive quad (texture0) with an edge-on cross
529
530
  * (texture1) and an untextured motion-blur tail (blur* fields).
530
531
  */
531
- export interface EnergyProjectileDataBlock extends GrenadeProjectileDataBlock {
532
+ export type EnergyProjectileDataBlock = GrenadeProjectileDataBlock & {
532
533
  /** Cross fades in when the view angle cosine exceeds this (0x168). */
533
534
  crossViewAng?: number;
534
535
  crossSize?: number;
@@ -540,8 +541,8 @@ export interface EnergyProjectileDataBlock extends GrenadeProjectileDataBlock {
540
541
  texture0?: string;
541
542
  /** texture[1] — the edge-on cross (e.g. "special/blasterBoltCross"). */
542
543
  texture1?: string;
543
- }
544
- export interface LinearFlareProjectileDataBlock extends LinearProjectileDataBlock {
544
+ };
545
+ export type LinearFlareProjectileDataBlock = LinearProjectileDataBlock & {
545
546
  numFlares?: number;
546
547
  flareColor?: Color4;
547
548
  flareTexture?: string;
@@ -549,8 +550,8 @@ export interface LinearFlareProjectileDataBlock extends LinearProjectileDataBloc
549
550
  size?: number;
550
551
  flareModTexture?: number;
551
552
  smokeSize?: number;
552
- }
553
- export interface BombProjectileDataBlock extends GrenadeProjectileDataBlock {
553
+ };
554
+ export type BombProjectileDataBlock = GrenadeProjectileDataBlock & {
554
555
  smokeDist?: number;
555
556
  noSmoke?: number;
556
557
  boomTime?: number;
@@ -559,14 +560,14 @@ export interface BombProjectileDataBlock extends GrenadeProjectileDataBlock {
559
560
  noSmokeCounter?: number;
560
561
  smokeTexture?: string;
561
562
  bombTexture?: string;
562
- }
563
- export interface FlareProjectileDataBlock extends GrenadeProjectileDataBlock {
563
+ };
564
+ export type FlareProjectileDataBlock = GrenadeProjectileDataBlock & {
564
565
  size?: number;
565
566
  useLensFlare?: boolean;
566
567
  flareTexture?: string;
567
568
  lensFlareTexture?: string;
568
- }
569
- export interface ExplosionDataBlock extends GameBaseDataBlock {
569
+ };
570
+ export type ExplosionDataBlock = GameBaseDataBlock & {
570
571
  dtsFileName?: string;
571
572
  soundProfile?: number | null;
572
573
  particleEmitter?: number | null;
@@ -601,8 +602,8 @@ export interface ExplosionDataBlock extends GameBaseDataBlock {
601
602
  subExplosions?: (number | null)[];
602
603
  times?: number[];
603
604
  sizes?: Vec3[];
604
- }
605
- export interface DebrisDataBlock extends GameBaseDataBlock {
605
+ };
606
+ export type DebrisDataBlock = GameBaseDataBlock & {
606
607
  elasticity?: number;
607
608
  friction?: number;
608
609
  numBounces?: number;
@@ -615,8 +616,6 @@ export interface DebrisDataBlock extends GameBaseDataBlock {
615
616
  snapOnMaxBounce?: boolean;
616
617
  lifetime?: number;
617
618
  lifetimeVariance?: number;
618
- minSpinSpeed_dup?: number;
619
- maxSpinSpeed_dup?: number;
620
619
  velocity?: number;
621
620
  velocityVariance?: number;
622
621
  useRadiusMass?: boolean;
@@ -630,8 +629,8 @@ export interface DebrisDataBlock extends GameBaseDataBlock {
630
629
  emitter0?: number | null;
631
630
  emitter1?: number | null;
632
631
  explosion?: number | null;
633
- }
634
- export interface SplashDataBlock extends GameBaseDataBlock {
632
+ };
633
+ export type SplashDataBlock = GameBaseDataBlock & {
635
634
  scale?: Vec3;
636
635
  delayMS?: number;
637
636
  delayVariance?: number;
@@ -654,8 +653,8 @@ export interface SplashDataBlock extends GameBaseDataBlock {
654
653
  times?: number[];
655
654
  textureName?: string;
656
655
  foamTexture?: string;
657
- }
658
- export interface ShockwaveDataBlock extends GameBaseDataBlock {
656
+ };
657
+ export type ShockwaveDataBlock = GameBaseDataBlock & {
659
658
  scale?: Vec3;
660
659
  delayMS?: number;
661
660
  delayVariance?: number;
@@ -679,8 +678,8 @@ export interface ShockwaveDataBlock extends GameBaseDataBlock {
679
678
  times?: number[];
680
679
  textureName?: string;
681
680
  mapToTexture?: string;
682
- }
683
- export interface ParticleEmitterDataBlock extends GameBaseDataBlock {
681
+ };
682
+ export type ParticleEmitterDataBlock = GameBaseDataBlock & {
684
683
  ejectionPeriodMS?: number;
685
684
  periodVarianceMS?: number;
686
685
  ejectionVelocity?: number;
@@ -698,8 +697,8 @@ export interface ParticleEmitterDataBlock extends GameBaseDataBlock {
698
697
  useEmitterSizes?: boolean;
699
698
  useEmitterColors?: boolean;
700
699
  particles?: (number | null)[];
701
- }
702
- export interface ParticleDataBlock extends GameBaseDataBlock {
700
+ };
701
+ export type ParticleDataBlock = GameBaseDataBlock & {
703
702
  dragCoefficient?: number;
704
703
  windCoefficient?: number;
705
704
  gravityCoefficient?: number;
@@ -713,8 +712,8 @@ export interface ParticleDataBlock extends GameBaseDataBlock {
713
712
  useInvAlpha?: boolean;
714
713
  keys?: ParticleKey[];
715
714
  textures?: string[];
716
- }
717
- export interface AudioDescriptionDataBlock extends SimDataBlock {
715
+ };
716
+ export type AudioDescriptionDataBlock = SimDataBlock & {
718
717
  volume?: number;
719
718
  isLooping?: boolean;
720
719
  loopCount?: number;
@@ -729,14 +728,14 @@ export interface AudioDescriptionDataBlock extends SimDataBlock {
729
728
  coneVector?: Vec3;
730
729
  environmentLevel?: number;
731
730
  type?: number;
732
- }
733
- export interface AudioProfileDataBlock extends SimDataBlock {
731
+ };
732
+ export type AudioProfileDataBlock = SimDataBlock & {
734
733
  description?: number | null;
735
734
  environment?: number | null;
736
735
  sampleEnvironment?: number | null;
737
736
  filename?: string;
738
- }
739
- export interface AudioEnvironmentDataBlock extends SimDataBlock {
737
+ };
738
+ export type AudioEnvironmentDataBlock = SimDataBlock & {
740
739
  useRoom?: boolean;
741
740
  room?: number;
742
741
  roomHF?: number;
@@ -754,8 +753,8 @@ export interface AudioEnvironmentDataBlock extends SimDataBlock {
754
753
  airAbsorption?: number;
755
754
  effectVolume?: number;
756
755
  flags?: number;
757
- }
758
- export interface AudioSampleEnvironmentDataBlock extends SimDataBlock {
756
+ };
757
+ export type AudioSampleEnvironmentDataBlock = SimDataBlock & {
759
758
  direct?: number;
760
759
  directHF?: number;
761
760
  room?: number;
@@ -769,20 +768,20 @@ export interface AudioSampleEnvironmentDataBlock extends SimDataBlock {
769
768
  airAbsorption?: number;
770
769
  outsideVolumeHF?: number;
771
770
  flags?: number;
772
- }
773
- export interface DecalDataBlock extends SimDataBlock {
771
+ };
772
+ export type DecalDataBlock = SimDataBlock & {
774
773
  sizeX?: number;
775
774
  sizeY?: number;
776
775
  textureName?: string;
777
- }
776
+ };
778
777
  export interface CameraDataBlock extends ShapeBaseDataBlock {
779
778
  }
780
779
  export interface SensorDataBlock extends SimDataBlock {
781
780
  }
782
- export interface TriggerDataBlock extends SimDataBlock {
781
+ export type TriggerDataBlock = SimDataBlock & {
783
782
  tickPeriodMS?: number;
784
- }
785
- export interface ForceFieldBareDataBlock extends SimDataBlock {
783
+ };
784
+ export type ForceFieldBareDataBlock = SimDataBlock & {
786
785
  fadeMS?: number;
787
786
  baseTranslucency?: number;
788
787
  powerOffTranslucency?: number;
@@ -800,18 +799,18 @@ export interface ForceFieldBareDataBlock extends SimDataBlock {
800
799
  texture2?: string;
801
800
  texture3?: string;
802
801
  texture4?: string;
803
- }
804
- export interface ParticleEmissionDummyDataBlock extends SimDataBlock {
802
+ };
803
+ export type ParticleEmissionDummyDataBlock = SimDataBlock & {
805
804
  timeMultiple?: number;
806
- }
807
- export interface CommanderIconDataBlock extends SimDataBlock {
805
+ };
806
+ export type CommanderIconDataBlock = SimDataBlock & {
808
807
  baseImage?: string;
809
808
  activeImage?: string;
810
809
  inactiveImage?: string;
811
810
  selectImage?: string;
812
811
  hilightImage?: string;
813
- }
814
- export interface PrecipitationDataBlock extends SimDataBlock {
812
+ };
813
+ export type PrecipitationDataBlock = SimDataBlock & {
815
814
  soundProfile?: number | null;
816
815
  numDrops?: number;
817
816
  maxSize?: number;
@@ -829,16 +828,16 @@ export interface PrecipitationDataBlock extends SimDataBlock {
829
828
  bottomSpeedPer?: number;
830
829
  frontSpeedPer?: number;
831
830
  frontRadiusPer?: number;
832
- }
833
- export interface FireballAtmosphereDataBlock extends SimDataBlock {
831
+ };
832
+ export type FireballAtmosphereDataBlock = SimDataBlock & {
834
833
  emitter?: number | null;
835
- }
836
- export interface LightningDataBlock extends SimDataBlock {
834
+ };
835
+ export type LightningDataBlock = SimDataBlock & {
837
836
  strikeSounds?: (number | null)[];
838
837
  strikeTextures?: string[];
839
838
  thunderSound?: number | null;
840
- }
841
- export interface StationFXVehicleDataBlock extends SimDataBlock {
839
+ };
840
+ export type StationFXVehicleDataBlock = SimDataBlock & {
842
841
  glowTopHeight?: number;
843
842
  glowBottomHeight?: number;
844
843
  glowTopRadius?: number;
@@ -866,8 +865,8 @@ export interface StationFXVehicleDataBlock extends SimDataBlock {
866
865
  rightNodeName3?: string;
867
866
  texture0?: string;
868
867
  texture1?: string;
869
- }
870
- export interface StationFXPersonalDataBlock extends SimDataBlock {
868
+ };
869
+ export type StationFXPersonalDataBlock = SimDataBlock & {
871
870
  glowTopRadius?: number;
872
871
  glowBottomRadius?: number;
873
872
  glowTopHeight?: number;
@@ -882,24 +881,24 @@ export interface StationFXPersonalDataBlock extends SimDataBlock {
882
881
  rightNodeName?: string;
883
882
  texture0?: string;
884
883
  texture1?: string;
885
- }
886
- export interface CannedChatItemDataBlock extends SimDataBlock {
884
+ };
885
+ export type CannedChatItemDataBlock = SimDataBlock & {
887
886
  chatText?: string;
888
- }
887
+ };
889
888
  export interface MissionMarkerDataBlock extends ShapeBaseDataBlock {
890
889
  }
891
- export interface TSShapeConstructorDataBlock extends SimDataBlock {
890
+ export type TSShapeConstructorDataBlock = SimDataBlock & {
892
891
  shape?: string;
893
892
  sequences?: string[];
894
- }
895
- export interface EffectProfileDataBlock extends SimDataBlock {
893
+ };
894
+ export type EffectProfileDataBlock = SimDataBlock & {
896
895
  minDistance?: number;
897
896
  maxDistance?: number;
898
897
  audioScale?: number;
899
898
  directional?: boolean;
900
899
  effectName?: string;
901
- }
902
- export interface JetEffectDataBlock extends GameBaseDataBlock {
900
+ };
901
+ export type JetEffectDataBlock = GameBaseDataBlock & {
903
902
  coolColor?: Color4;
904
903
  hotColor?: Color4;
905
904
  activateTime?: number;
@@ -910,8 +909,8 @@ export interface JetEffectDataBlock extends GameBaseDataBlock {
910
909
  stretch?: number;
911
910
  yOffset?: number;
912
911
  texture?: string;
913
- }
914
- export interface RunningLightDataBlock extends GameBaseDataBlock {
912
+ };
913
+ export type RunningLightDataBlock = GameBaseDataBlock & {
915
914
  radius?: number;
916
915
  color?: Color4;
917
916
  type?: number;
@@ -920,5 +919,5 @@ export interface RunningLightDataBlock extends GameBaseDataBlock {
920
919
  direction?: Vec3;
921
920
  offset?: Vec3;
922
921
  texture?: string;
923
- }
922
+ };
924
923
  //# sourceMappingURL=dataBlockDataTypes.d.ts.map