@infernus/core 0.9.3 → 0.10.0-beta.10

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.
package/dist/bundle.d.ts CHANGED
@@ -1,9 +1,5 @@
1
- import * as lodash from 'lodash';
2
- import * as _infernus_wrapper from '@infernus/wrapper';
3
- import { GangZonePos } from '@infernus/wrapper';
4
- export { GangZonePos, IActorAnimation, IActorSpawn, IAttachedData, IAttachedObject, IBounds, ICheckPoint, IMaterial, IMaterialText, IObjectPos, IObjectRotPos, IOffsets, IPlayerClass, IQuat, IRaceCheckPoint, ITextDrawCommonSize, ITextDrawRot, IVehColor, IVehMatrix, IVehSpawnInfo } from '@infernus/wrapper';
5
1
  import * as _infernus_streamer from '@infernus/streamer';
6
- import { StreamerItemTypes, StreamerAreaTypes, MapIconStyles } from '@infernus/streamer';
2
+ import { MapIconStyles, StreamerItemTypes, StreamerAreaTypes } from '@infernus/streamer';
7
3
  export { E_STREAMER, MapIconStyles, MaterialTextSizes, StreamerAreaTypes, StreamerArrayData, StreamerDistances, StreamerItemTypeTuple, StreamerItemTypes, StreamerMiscellaneous, StreamerObjectTypes } from '@infernus/streamer';
8
4
 
9
5
  declare enum ArtworkEnum {
@@ -49,7 +45,7 @@ declare enum InvalidEnum {
49
45
  VEHICLE_ID = 65535,
50
46
  ACTOR_ID = 65535,
51
47
  OBJECT_ID = 65535,
52
- MENU = 255,
48
+ MENU = -1,
53
49
  TEXT_DRAW = 65535,
54
50
  PLAYER_TEXT_DRAW = 65535,
55
51
  GANG_ZONE = -1,
@@ -314,6 +310,15 @@ declare enum VehicleModelInfoEnum {
314
310
  }
315
311
 
316
312
  declare enum WeaponEnum {
313
+ UNKNOWN = -1,
314
+ REASON_VEHICLE = 49,
315
+ REASON_DROWN = 53,
316
+ REASON_COLLISION = 54,
317
+ REASON_SPLAT = 54,
318
+ REASON_CONNECT = 200,
319
+ REASON_DISCONNECT = 200,
320
+ REASON_SUICIDE = 255,
321
+ FIST = 0,
317
322
  BRASSKNUCKLE = 1,
318
323
  GOLFCLUB = 2,
319
324
  NITESTICK = 3,
@@ -354,6 +359,8 @@ declare enum WeaponEnum {
354
359
  SPRAYCAN = 41,
355
360
  FIREEXTINGUISHER = 42,
356
361
  CAMERA = 43,
362
+ NIGHT_VISION_GOGGLES = 44,
363
+ THERMAL_GOGGLES = 45,
357
364
  PARACHUTE = 46
358
365
  }
359
366
  declare enum WeaponSkillsEnum {
@@ -400,17 +407,429 @@ declare enum RecordTypesEnum {
400
407
  ONFOOT = 2
401
408
  }
402
409
 
410
+ type CallbackRet = boolean | number | void;
411
+ type PromisifyCallbackRet = CallbackRet | Promise<CallbackRet>;
412
+ type Options<T extends object> = {
413
+ name: string;
414
+ defaultValue?: boolean;
415
+ identifier?: string;
416
+ isNative?: boolean;
417
+ beforeEach?: (...args: any[]) => Exclude<T, Array<any> | Function>;
418
+ afterEach?: (arg: T) => void;
419
+ };
420
+ declare function defineEvent<T extends object>(options: Options<T>): [(cb: (ret: T & {
421
+ next: () => CallbackRet;
422
+ }) => PromisifyCallbackRet) => () => void, (...args: any[]) => number];
423
+
424
+ type CmdBusCallback = {
425
+ player: Player;
426
+ subcommand: string[];
427
+ next: () => CallbackRet;
428
+ };
429
+ declare const CommandErrors: {
430
+ NOT_EXIST: {
431
+ code: number;
432
+ msg: string;
433
+ };
434
+ REJECTED: {
435
+ code: number;
436
+ msg: string;
437
+ };
438
+ PERFORMED: {
439
+ code: number;
440
+ msg: string;
441
+ };
442
+ };
443
+
444
+ /**
445
+ * You don't need to care about the dialog id.
446
+ * If you need to change the value dynamically, you should do it by setter method.
447
+ */
448
+ declare class Dialog {
449
+ private id;
450
+ private static showingIds;
451
+ private static max_dialogId;
452
+ private dialog;
453
+ static waitingQueue: Map<Player, IDialogFuncQueue>;
454
+ constructor(dialog?: IDialog);
455
+ get style(): DialogStylesEnum | undefined;
456
+ set style(v: DialogStylesEnum | undefined);
457
+ get caption(): string | undefined;
458
+ set caption(v: string | undefined);
459
+ get info(): string | undefined;
460
+ set info(v: string | undefined);
461
+ get button1(): string | undefined;
462
+ set button1(v: string | undefined);
463
+ get button2(): string | undefined;
464
+ set button2(v: string | undefined);
465
+ private static delDialogTask;
466
+ show(player: Player): Promise<IDialogResResult>;
467
+ static close(player: Player): void;
468
+ }
469
+
470
+ declare const PlayerEvent: Readonly<{
471
+ onConnect: (cb: (ret: {
472
+ player: Player;
473
+ } & {
474
+ next: () => CallbackRet;
475
+ }) => PromisifyCallbackRet) => () => void;
476
+ onDisconnect: (cb: (ret: {
477
+ player: Player;
478
+ reason: number;
479
+ } & {
480
+ next: () => CallbackRet;
481
+ }) => PromisifyCallbackRet) => () => void;
482
+ onPause: (cb: (ret: {
483
+ player: Player;
484
+ pausedAt: number;
485
+ } & {
486
+ next: () => CallbackRet;
487
+ }) => PromisifyCallbackRet) => () => void;
488
+ onResume: (cb: (ret: {
489
+ player: Player;
490
+ pausedAt: number;
491
+ now: number;
492
+ diff: number;
493
+ } & {
494
+ next: () => CallbackRet;
495
+ }) => PromisifyCallbackRet) => () => void;
496
+ onUpdate: (cb: (ret: {
497
+ player: Player;
498
+ } & {
499
+ next: () => CallbackRet;
500
+ }) => PromisifyCallbackRet) => () => void;
501
+ onText: (cb: (ret: {
502
+ player: Player;
503
+ text: string;
504
+ buffer: number[];
505
+ } & {
506
+ next: () => CallbackRet;
507
+ }) => PromisifyCallbackRet) => () => void;
508
+ onEnterExitModShop: (cb: (ret: {
509
+ player: Player;
510
+ enterExit: boolean;
511
+ interior: number;
512
+ } & {
513
+ next: () => CallbackRet;
514
+ }) => PromisifyCallbackRet) => () => void;
515
+ onClickMap: (cb: (ret: {
516
+ player: Player;
517
+ fX: number;
518
+ fY: number;
519
+ fZ: number;
520
+ } & {
521
+ next: () => CallbackRet;
522
+ }) => PromisifyCallbackRet) => () => void;
523
+ onClickPlayer: (cb: (ret: {
524
+ player: Player;
525
+ clickedPlayer: Player;
526
+ source: number;
527
+ } & {
528
+ next: () => CallbackRet;
529
+ }) => PromisifyCallbackRet) => () => void;
530
+ onDeath: (cb: (ret: {
531
+ player: Player;
532
+ killer: Player | InvalidEnum.PLAYER_ID;
533
+ reason: number;
534
+ } & {
535
+ next: () => CallbackRet;
536
+ }) => PromisifyCallbackRet) => () => void;
537
+ onGiveDamage: (cb: (ret: {
538
+ player: Player;
539
+ damage: Player;
540
+ amount: number;
541
+ weapon: WeaponEnum;
542
+ bodyPart: BodyPartsEnum;
543
+ } & {
544
+ next: () => CallbackRet;
545
+ }) => PromisifyCallbackRet) => () => void;
546
+ onKeyStateChange: (cb: (ret: {
547
+ player: Player;
548
+ newKeys: KeysEnum;
549
+ oldKeys: KeysEnum;
550
+ } & {
551
+ next: () => CallbackRet;
552
+ }) => PromisifyCallbackRet) => () => void;
553
+ onRequestClass: (cb: (ret: {
554
+ player: Player;
555
+ classId: number;
556
+ } & {
557
+ next: () => CallbackRet;
558
+ }) => PromisifyCallbackRet) => () => void;
559
+ onRequestSpawn: (cb: (ret: {
560
+ player: Player;
561
+ } & {
562
+ next: () => CallbackRet;
563
+ }) => PromisifyCallbackRet) => () => void;
564
+ onSpawn: (cb: (ret: {
565
+ player: Player;
566
+ } & {
567
+ next: () => CallbackRet;
568
+ }) => PromisifyCallbackRet) => () => void;
569
+ onStateChange: (cb: (ret: {
570
+ player: Player;
571
+ newState: PlayerStateEnum;
572
+ oldState: PlayerStateEnum;
573
+ } & {
574
+ next: () => CallbackRet;
575
+ }) => PromisifyCallbackRet) => () => void;
576
+ onStreamIn: (cb: (ret: {
577
+ player: Player;
578
+ forPlayer: Player | undefined;
579
+ } & {
580
+ next: () => CallbackRet;
581
+ }) => PromisifyCallbackRet) => () => void;
582
+ onStreamOut: (cb: (ret: {
583
+ player: Player;
584
+ forPlayer: Player | undefined;
585
+ } & {
586
+ next: () => CallbackRet;
587
+ }) => PromisifyCallbackRet) => () => void;
588
+ onTakeDamage: (cb: (ret: {
589
+ player: Player;
590
+ damage: Player | InvalidEnum.PLAYER_ID;
591
+ amount: number;
592
+ weapon: WeaponEnum;
593
+ bodyPart: BodyPartsEnum;
594
+ } & {
595
+ next: () => CallbackRet;
596
+ }) => PromisifyCallbackRet) => () => void;
597
+ onInteriorChange: (cb: (ret: {
598
+ player: Player;
599
+ newInteriorId: number;
600
+ oldInteriorId: number;
601
+ } & {
602
+ next: () => CallbackRet;
603
+ }) => PromisifyCallbackRet) => () => void;
604
+ onRequestDownload: (cb: (ret: {
605
+ player: Player;
606
+ type: number;
607
+ crc: number;
608
+ } & {
609
+ next: () => CallbackRet;
610
+ }) => PromisifyCallbackRet) => () => void;
611
+ onFinishedDownloading: (cb: (ret: {
612
+ player: Player;
613
+ virtualWorld: number;
614
+ } & {
615
+ next: () => CallbackRet;
616
+ }) => PromisifyCallbackRet) => () => void;
617
+ onCheckResponse: (cb: (ret: {
618
+ player: Player;
619
+ actionId: number;
620
+ memAddr: number;
621
+ data: number;
622
+ } & {
623
+ next: () => CallbackRet;
624
+ }) => PromisifyCallbackRet) => () => void;
625
+ onCommandReceived: (cb: (ret: {
626
+ player: Player;
627
+ command: string;
628
+ } & {
629
+ next: () => CallbackRet;
630
+ }) => PromisifyCallbackRet) => () => void;
631
+ onCommandPerformed: (cb: (ret: {
632
+ player: Player;
633
+ command: string;
634
+ } & {
635
+ next: () => CallbackRet;
636
+ }) => PromisifyCallbackRet) => () => void;
637
+ onCommandError: (cb: (ret: {
638
+ player: Player;
639
+ command: string;
640
+ error: {
641
+ code: number;
642
+ msg: string;
643
+ };
644
+ } & {
645
+ next: () => CallbackRet;
646
+ }) => PromisifyCallbackRet) => () => void;
647
+ onCommandText: (command: string | string[], cb: (ret: CmdBusCallback) => PromisifyCallbackRet) => () => void;
648
+ offCommandText: (command: string | string[]) => void;
649
+ onDialogResponse: (cb: (ret: {
650
+ player: Player;
651
+ dialogId: number;
652
+ response: number;
653
+ listItem: number;
654
+ buffer: number[];
655
+ } & {
656
+ next: () => CallbackRet;
657
+ }) => PromisifyCallbackRet) => () => void;
658
+ }>;
659
+
660
+ interface IDialog {
661
+ style?: DialogStylesEnum;
662
+ caption?: string;
663
+ info?: string;
664
+ button1?: string;
665
+ button2?: string;
666
+ }
667
+ interface IDialogResCommon {
668
+ response: number;
669
+ listItem: number;
670
+ }
671
+ interface IDialogResRaw extends IDialogResCommon {
672
+ buffer: number[];
673
+ }
674
+ interface IDialogResResult extends IDialogResCommon {
675
+ inputText: string;
676
+ }
677
+ interface IVehicle {
678
+ modelId: number;
679
+ x: number;
680
+ y: number;
681
+ z: number;
682
+ z_angle: number;
683
+ color: [string | number, string | number];
684
+ respawn_delay?: number;
685
+ addSiren?: boolean;
686
+ }
687
+ interface IAnimateInfo {
688
+ n: string;
689
+ d: number;
690
+ }
691
+ interface IGangZone {
692
+ player?: Player;
693
+ minX: number;
694
+ minY: number;
695
+ maxX: number;
696
+ maxY: number;
697
+ }
698
+ interface ICommonTextDrawKey {
699
+ id: number;
700
+ global: boolean;
701
+ }
702
+ interface ITextDraw {
703
+ player?: Player;
704
+ x: number;
705
+ y: number;
706
+ text: string;
707
+ }
708
+ interface IDialogFuncQueue {
709
+ showId: number;
710
+ resolve: (value: IDialogResRaw | PromiseLike<IDialogResRaw>) => void;
711
+ reject: (reason: string) => void;
712
+ }
713
+ interface IDynamic {
714
+ worldId?: TStreamerExtendable;
715
+ interiorId?: TStreamerExtendable;
716
+ playerId?: TStreamerExtendable;
717
+ extended?: boolean;
718
+ }
719
+ interface IDynamicCommon extends IDynamic {
720
+ x: number;
721
+ y: number;
722
+ z: number;
723
+ areaId?: TStreamerExtendable;
724
+ streamDistance?: number;
725
+ priority?: number;
726
+ }
727
+ interface IDynamicMapIcon extends IDynamicCommon {
728
+ type: number;
729
+ color: string | number;
730
+ style?: MapIconStyles;
731
+ }
732
+ interface IDynamicPickup extends IDynamicCommon {
733
+ type: number;
734
+ modelId: number;
735
+ }
736
+ interface IDynamicCheckPoint extends IDynamicCommon {
737
+ size: number;
738
+ }
739
+ interface IDynamicRaceCp extends IDynamicCheckPoint {
740
+ type: number;
741
+ nextX: number;
742
+ nextY: number;
743
+ nextZ: number;
744
+ }
745
+ interface IDynamicActor extends IDynamicCommon {
746
+ r: number;
747
+ modelId: number;
748
+ invulnerable: boolean;
749
+ health: number;
750
+ }
751
+ interface IDynamic3DTextLabel extends IDynamicCommon {
752
+ charset?: string;
753
+ text: string;
754
+ color: string | number;
755
+ attachedPlayer?: number;
756
+ attachedVehicle?: number;
757
+ testLos?: boolean;
758
+ drawDistance: number;
759
+ }
760
+ interface IDynamicObject extends IDynamicCommon {
761
+ charset?: string;
762
+ modelId: number;
763
+ rx: number;
764
+ ry: number;
765
+ rz: number;
766
+ drawDistance?: number;
767
+ }
768
+ interface IClientResRaw {
769
+ actionId: number;
770
+ memAddr: number;
771
+ data: number;
772
+ }
773
+ interface IDynamicCircleCommon extends IDynamic {
774
+ x: number;
775
+ y: number;
776
+ size: number;
777
+ }
778
+ interface IDynamicCircle extends IDynamicCircleCommon {
779
+ type: "circle";
780
+ }
781
+ interface IDynamicCylinder extends IDynamicCircleCommon {
782
+ type: "cylinder";
783
+ minZ: number;
784
+ maxZ: number;
785
+ }
786
+ interface IDynamicSphere extends IDynamicCircleCommon {
787
+ type: "sphere";
788
+ z: number;
789
+ }
790
+ interface IDynamicRectangleCommon extends IDynamic {
791
+ minX: number;
792
+ minY: number;
793
+ maxX: number;
794
+ maxY: number;
795
+ }
796
+ interface IDynamicRectangle extends IDynamicRectangleCommon {
797
+ type: "rectangle";
798
+ }
799
+ interface IDynamicCuboid extends IDynamicRectangleCommon {
800
+ type: "cuboid";
801
+ minZ: number;
802
+ maxZ: number;
803
+ }
804
+ interface IDynamicPolygon extends IDynamic {
805
+ type: "polygon";
806
+ points: number[];
807
+ minZ: number;
808
+ maxZ: number;
809
+ }
810
+ interface IDynamicAreaKey {
811
+ id: number;
812
+ type: TDynamicAreaTypes;
813
+ }
814
+ interface IFilterScript {
815
+ name: string;
816
+ load: (...args: Array<any>) => any;
817
+ unload: () => any;
818
+ [propName: string | number | symbol]: any;
819
+ }
820
+
403
821
  declare class Vehicle {
404
- private _id;
822
+ static readonly vehicles: Map<number, Vehicle>;
405
823
  private static createdCount;
406
824
  private readonly sourceInfo;
407
825
  private readonly isStatic;
826
+ private _id;
408
827
  get id(): number;
409
828
  constructor(veh: IVehicle, isStatic?: boolean);
410
829
  create(ignoreRange?: boolean): void;
411
830
  destroy(): void;
412
- addComponent(componentid: number): number;
413
- removeComponent(componentid: number): number;
831
+ addComponent(componentId: number): number;
832
+ removeComponent(componentId: number): number;
414
833
  getComponentInSlot(slot: CarModTypeEnum): number;
415
834
  static getComponentType(component: number): CarModTypeEnum;
416
835
  linkToInterior(interiorId: number): number;
@@ -421,15 +840,15 @@ declare class Vehicle {
421
840
  getPos(): void | TPos;
422
841
  getHealth(): number;
423
842
  setHealth(health: number): number;
424
- isPlayerIn<P extends Player>(player: P): boolean;
425
- putPlayerIn<P extends Player>(player: P, seatid: number): number;
843
+ isPlayerIn(player: Player): boolean;
844
+ putPlayerIn(player: Player, seatId: number): number;
426
845
  getZAngle(): number;
427
846
  setZAngle(z_angle: number): number;
428
847
  setNumberPlate(numberplate: string): number;
429
- static getPoolSize(): number;
430
- changeColours(colour1: string | number, colour2: string | number): number;
431
- setVelocity(X: number, Y: number, Z: number): number;
848
+ changeColors(color1: string | number, color2: string | number): number;
849
+ setVelocity(X: number, Y: number, Z: number): boolean;
432
850
  getVelocity(): void | TPos;
851
+ getSpeed(magic?: number): number;
433
852
  setAngularVelocity(X: number, Y: number, Z: number): number;
434
853
  getDamageStatus(): {
435
854
  panels: number;
@@ -440,8 +859,8 @@ declare class Vehicle {
440
859
  updateDamageStatus(panels: number, doors: number, lights: number, tires: number): void;
441
860
  getDistanceFromPoint(X: number, Y: number, Z: number): number;
442
861
  getModel(): number;
443
- static getModelInfo(vehiclemodel: number, infotype: VehicleModelInfoEnum): TPos;
444
- getModelInfo(infotype: VehicleModelInfoEnum): void | TPos;
862
+ static getModelInfo(vehicleModel: number, infoType: VehicleModelInfoEnum): TPos;
863
+ getModelInfo(infoType: VehicleModelInfoEnum): void | TPos;
445
864
  getRotationQuat(): {
446
865
  w: number;
447
866
  x: number;
@@ -449,20 +868,20 @@ declare class Vehicle {
449
868
  z: number;
450
869
  } | undefined;
451
870
  setRespawn(): number;
452
- isStreamedIn<P extends Player>(forplayer: P): boolean;
453
- setParamsCarDoors(driver: boolean, passenger: boolean, backleft: boolean, backright: boolean): number;
454
- setParamsCarWindows(driver: boolean, passenger: boolean, backleft: boolean, backright: boolean): number;
871
+ isStreamedIn(forPlayer: Player): boolean;
872
+ setParamsCarDoors(driver: boolean, passenger: boolean, backLeft: boolean, backRight: boolean): number;
873
+ setParamsCarWindows(driver: boolean, passenger: boolean, backLeft: boolean, backRight: boolean): number;
455
874
  getParamsCarDoors(): {
456
875
  driver: 0 | 1 | -1;
457
876
  passenger: 0 | 1 | -1;
458
- backleft: 0 | 1 | -1;
459
- backright: 0 | 1 | -1;
877
+ backLeft: 0 | 1 | -1;
878
+ backRight: 0 | 1 | -1;
460
879
  } | undefined;
461
880
  getParamsCarWindows(): {
462
881
  driver: 0 | 1 | -1;
463
882
  passenger: 0 | 1 | -1;
464
- backleft: 0 | 1 | -1;
465
- backright: 0 | 1 | -1;
883
+ backLeft: 0 | 1 | -1;
884
+ backRight: 0 | 1 | -1;
466
885
  } | undefined;
467
886
  setParamsEx(engine: boolean, lights: boolean, alarm: boolean, doors: boolean, bonnet: boolean, boot: boolean, objective: boolean): number;
468
887
  getParamsEx(): {
@@ -475,66 +894,56 @@ declare class Vehicle {
475
894
  objective: number;
476
895
  } | undefined;
477
896
  getParamsSirenState(): number;
478
- setParamsForPlayer<P extends Player>(player: P, objective: boolean, doorslocked: boolean): number;
897
+ setParamsForPlayer(player: Player, objective: boolean, doorsLocked: boolean): number;
479
898
  isTrailerAttached(): boolean;
480
- changePaintjob(paintjobid: 0 | 1 | 2): number;
481
- attachTrailer<V extends Vehicle>(trailer: V): number;
899
+ changePaintjob(paintjobId: 0 | 1 | 2): number;
900
+ attachTrailer(trailer: Vehicle): number;
482
901
  detachTrailer(): void;
483
- getTrailer<V extends Vehicle>(vehicles: Array<V>): V | undefined;
902
+ getTrailer(): Vehicle | undefined;
484
903
  isValid(): boolean;
485
904
  static isValid(id: number): boolean;
486
- getMatrix(): _infernus_wrapper.IVehMatrix | undefined;
905
+ getMatrix(): IVehMatrix | undefined;
487
906
  getTrainSpeed(): number;
488
907
  getHydraReactorAngle(): number;
489
908
  getLandingGearState(): number;
490
909
  getSirenState(): number;
491
910
  static getModelsUsed: () => number;
492
- getDriver<P extends Player>(players: Map<number, P>): P | undefined;
493
- getLastDriver<P extends Player>(players: Map<number, P>): P | undefined;
494
- static getModelCount: (modelid: number) => number;
911
+ getDriver(players: Map<number, Player>): Player | undefined;
912
+ getLastDriver(players: Map<number, Player>): Player | undefined;
913
+ static getModelCount: (modelId: number) => number;
495
914
  isSirenEnabled(): boolean;
496
915
  toggleSirenEnabled(enabled: boolean): number;
916
+ setParamsSirenState(enabled: boolean): number;
497
917
  isDead(): boolean;
918
+ setDead(dead: boolean): boolean;
919
+ setBeenOccupied(occupied: boolean): boolean;
498
920
  getRespawnTick(): number;
921
+ setRespawnTick(ticks: number): number | false;
499
922
  isOccupied(): boolean;
500
923
  hasBeenOccupied(): boolean;
501
924
  getOccupiedTick(): number;
925
+ setOccupiedTick(ticks: number): number;
502
926
  getCab(): number;
503
927
  getRespawnDelay(): number;
504
928
  setRespawnDelay(delay: number): number;
505
929
  getNumberPlate(): string;
506
930
  getInterior(): number;
507
931
  getPaintjob(): number;
508
- getColours(): _infernus_wrapper.IVehColor | undefined;
509
- setSpawnInfo(modelid: number, fX: number, fY: number, fZ: number, fAngle: number, colour1: string | number, colour2: string | number, respawntime?: number, interior?: number, ignoreRange?: boolean): number;
510
- getSpawnInfo(): _infernus_wrapper.IVehSpawnInfo | undefined;
511
- }
512
-
513
- declare class VehicleEvent<P extends Player, V extends Vehicle> {
514
- private readonly vehicles;
515
- private readonly players;
516
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
517
- onDamageStatusUpdate?(vehicle: V, player: P): TCommonCallback;
518
- onDeath?(vehicle: V, killer: P): TCommonCallback;
519
- onMod?(player: P, vehicle: V, componentid: number): TCommonCallback;
520
- onPaintjob?(player: P, vehicle: V, paintjobid: number): TCommonCallback;
521
- onRespray?(player: P, vehicle: V, colour1: number, colour2: number): TCommonCallback;
522
- onSirenStateChange?(player: P, vehicle: V, newstate: boolean): TCommonCallback;
523
- onSpawn?(vehicle: V): TCommonCallback;
524
- onStreamIn?(vehicle: V, forplayer: P): TCommonCallback;
525
- onStreamOut?(vehicle: V, forplayer: P): TCommonCallback;
526
- onPlayerEnter?(player: P, vehicle: V, isPassenger: boolean): TCommonCallback;
527
- onPlayerExit?(player: P, vehicle: V): TCommonCallback;
528
- onNpcEnter?(vehicle: V, seatid: number): TCommonCallback;
529
- onNpcExit?(): TCommonCallback;
530
- onTrailerUpdate?(player: P, vehicle: V): TCommonCallback;
531
- findVehicleById(vehicleid: number): V | undefined;
532
- private findPlayerById;
533
- getVehiclesArr(): Array<V>;
534
- getVehiclesMap(): Map<number, V>;
932
+ getColors(): IVehColor | undefined;
933
+ setSpawnInfo(modelId: number, fX: number, fY: number, fZ: number, fAngle: number, color1: string | number, color2: string | number, respawnTime?: number, interior?: number, ignoreRange?: boolean): number;
934
+ getSpawnInfo(): IVehSpawnInfo | undefined;
935
+ getRandomColorPair(): {
936
+ color: [number, number, number, number];
937
+ } | undefined;
938
+ static getRandomColorPair(modelId: number): {
939
+ color: [number, number, number, number];
940
+ };
941
+ static getInstance(id: number): Vehicle | undefined;
942
+ static getInstances(): Vehicle[];
535
943
  }
536
944
 
537
945
  declare class DynamicMapIcon {
946
+ static readonly mapIcons: Map<number, DynamicMapIcon>;
538
947
  private sourceInfo;
539
948
  private _id;
540
949
  get id(): number;
@@ -544,19 +953,27 @@ declare class DynamicMapIcon {
544
953
  isValid(): boolean;
545
954
  toggleCallbacks(toggle?: boolean): void | number;
546
955
  isToggleCallbacks(): boolean;
956
+ static getInstance(id: number): DynamicMapIcon | undefined;
957
+ static getInstances(): DynamicMapIcon[];
547
958
  }
548
959
 
549
- declare class DynamicMapIconEvent<P extends Player, M extends DynamicMapIcon> {
550
- private readonly mapIcons;
551
- private readonly players;
552
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
553
- onStreamIn?(mapIcon: M, player: P): TCommonCallback;
554
- onStreamOut?(mapIcon: M, player: P): TCommonCallback;
555
- getMapIconsArr(): Array<M>;
556
- getMapIconsMap(): Map<number, M>;
557
- }
960
+ declare const DynamicMapIconEvent: Readonly<{
961
+ onStreamIn: (cb: (ret: {
962
+ player: Player;
963
+ instance: DynamicMapIcon;
964
+ } & {
965
+ next: () => CallbackRet;
966
+ }) => PromisifyCallbackRet) => () => void;
967
+ onStreamOut: (cb: (ret: {
968
+ player: Player;
969
+ instance: DynamicMapIcon;
970
+ } & {
971
+ next: () => CallbackRet;
972
+ }) => PromisifyCallbackRet) => () => void;
973
+ }>;
558
974
 
559
975
  declare class DynamicPickup {
976
+ static readonly pickups: Map<number, DynamicPickup>;
560
977
  private sourceInfo;
561
978
  private _id;
562
979
  get id(): number;
@@ -566,20 +983,33 @@ declare class DynamicPickup {
566
983
  isValid(): boolean;
567
984
  toggleCallbacks(toggle?: boolean): void | number;
568
985
  isToggleCallbacks(): boolean;
986
+ static getInstance(id: number): DynamicPickup | undefined;
987
+ static getInstances(): DynamicPickup[];
569
988
  }
570
989
 
571
- declare class DynamicPickupEvent<P extends Player, K extends DynamicPickup> {
572
- private readonly pickups;
573
- private readonly players;
574
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
575
- onPlayerPickUp?(player: P, pickup: K): TCommonCallback;
576
- onStreamIn?(pickup: K, player: P): TCommonCallback;
577
- onStreamOut?(pickup: K, player: P): TCommonCallback;
578
- getPickupsArr(): Array<K>;
579
- getPickupsMap(): Map<number, K>;
580
- }
990
+ declare const DynamicPickupEvent: Readonly<{
991
+ onPlayerPickUp: (cb: (ret: {
992
+ player: Player;
993
+ pickup: DynamicPickup;
994
+ } & {
995
+ next: () => CallbackRet;
996
+ }) => PromisifyCallbackRet) => () => void;
997
+ onStreamIn: (cb: (ret: {
998
+ player: Player;
999
+ instance: DynamicPickup;
1000
+ } & {
1001
+ next: () => CallbackRet;
1002
+ }) => PromisifyCallbackRet) => () => void;
1003
+ onStreamOut: (cb: (ret: {
1004
+ player: Player;
1005
+ instance: DynamicPickup;
1006
+ } & {
1007
+ next: () => CallbackRet;
1008
+ }) => PromisifyCallbackRet) => () => void;
1009
+ }>;
581
1010
 
582
1011
  declare class DynamicCheckpoint {
1012
+ static readonly checkpoints: Map<number, DynamicCheckpoint>;
583
1013
  private sourceInfo;
584
1014
  private _id;
585
1015
  get id(): number;
@@ -587,27 +1017,45 @@ declare class DynamicCheckpoint {
587
1017
  create(): void | this;
588
1018
  destroy(): void | this;
589
1019
  isValid(): boolean;
590
- togglePlayer<P extends Player>(player: P, toggle: boolean): void | this;
591
- static togglePlayerAll<P extends Player>(player: P, toggle: boolean): number;
592
- isPlayerIn<P extends Player>(player: P): boolean;
593
- static getPlayerVisible<P extends Player, C extends DynamicCheckpoint>(player: P, checkpoints: Map<number, C>): C | undefined;
1020
+ togglePlayer(player: Player, toggle: boolean): void | this;
1021
+ static togglePlayerAll(player: Player, toggle: boolean): number;
1022
+ isPlayerIn(player: Player): boolean;
1023
+ static getPlayerVisible(player: Player): DynamicCheckpoint | undefined;
594
1024
  toggleCallbacks(toggle?: boolean): void | number;
595
1025
  isToggleCallbacks(): boolean;
1026
+ static getInstance(id: number): DynamicCheckpoint | undefined;
1027
+ static getInstances(): DynamicCheckpoint[];
596
1028
  }
597
1029
 
598
- declare class DynamicCheckPointEvent<P extends Player, C extends DynamicCheckpoint> {
599
- private readonly checkpoints;
600
- private readonly players;
601
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
602
- onPlayerEnter?(player: P, checkpoint: C): TCommonCallback;
603
- onPlayerLeave?(player: P, checkpoint: C): TCommonCallback;
604
- onStreamIn?(checkpoint: C, player: P): TCommonCallback;
605
- onStreamOut?(checkpoint: C, player: P): TCommonCallback;
606
- getCheckPointsArr(): Array<C>;
607
- getCheckPointsMap(): Map<number, C>;
608
- }
1030
+ declare const DynamicCheckPointEvent: Readonly<{
1031
+ onPlayerEnter: (cb: (ret: {
1032
+ player: Player;
1033
+ pickup: DynamicCheckpoint;
1034
+ } & {
1035
+ next: () => CallbackRet;
1036
+ }) => PromisifyCallbackRet) => () => void;
1037
+ onPlayerLeave: (cb: (ret: {
1038
+ player: Player;
1039
+ pickup: DynamicCheckpoint;
1040
+ } & {
1041
+ next: () => CallbackRet;
1042
+ }) => PromisifyCallbackRet) => () => void;
1043
+ onStreamIn: (cb: (ret: {
1044
+ player: Player;
1045
+ instance: DynamicCheckpoint;
1046
+ } & {
1047
+ next: () => CallbackRet;
1048
+ }) => PromisifyCallbackRet) => () => void;
1049
+ onStreamOut: (cb: (ret: {
1050
+ player: Player;
1051
+ instance: DynamicCheckpoint;
1052
+ } & {
1053
+ next: () => CallbackRet;
1054
+ }) => PromisifyCallbackRet) => () => void;
1055
+ }>;
609
1056
 
610
1057
  declare class DynamicRaceCP {
1058
+ static readonly checkpoints: Map<number, DynamicRaceCP>;
611
1059
  private sourceInfo;
612
1060
  private _id;
613
1061
  get id(): number;
@@ -615,27 +1063,192 @@ declare class DynamicRaceCP {
615
1063
  create(): void | this;
616
1064
  destroy(): void | this;
617
1065
  isValid(): boolean;
618
- togglePlayer<P extends Player>(player: P, toggle: boolean): void | this;
619
- static togglePlayerAll<P extends Player>(player: P, toggle: boolean): number;
620
- isPlayerIn<P extends Player>(player: P): boolean;
621
- static getPlayerVisible<P extends Player, C extends DynamicRaceCP>(player: P, checkpoints: Map<number, C>): C | undefined;
1066
+ togglePlayer(player: Player, toggle: boolean): void | this;
1067
+ static togglePlayerAll(player: Player, toggle: boolean): number;
1068
+ isPlayerIn(player: Player): boolean;
1069
+ static getPlayerVisible(player: Player): DynamicRaceCP | undefined;
622
1070
  toggleCallbacks(toggle?: boolean): void | number;
623
1071
  isToggleCallbacks(): boolean;
1072
+ static getInstance(id: number): DynamicRaceCP | undefined;
1073
+ static getInstances(): DynamicRaceCP[];
1074
+ }
1075
+
1076
+ declare const DynamicRaceCPEvent: Readonly<{
1077
+ onPlayerEnter: (cb: (ret: {
1078
+ player: Player;
1079
+ pickup: DynamicRaceCP;
1080
+ } & {
1081
+ next: () => CallbackRet;
1082
+ }) => PromisifyCallbackRet) => () => void;
1083
+ onPlayerLeave: (cb: (ret: {
1084
+ player: Player;
1085
+ pickup: DynamicRaceCP;
1086
+ } & {
1087
+ next: () => CallbackRet;
1088
+ }) => PromisifyCallbackRet) => () => void;
1089
+ onStreamIn: (cb: (ret: {
1090
+ player: Player;
1091
+ instance: DynamicRaceCP;
1092
+ } & {
1093
+ next: () => CallbackRet;
1094
+ }) => PromisifyCallbackRet) => () => void;
1095
+ onStreamOut: (cb: (ret: {
1096
+ player: Player;
1097
+ instance: DynamicRaceCP;
1098
+ } & {
1099
+ next: () => CallbackRet;
1100
+ }) => PromisifyCallbackRet) => () => void;
1101
+ }>;
1102
+
1103
+ interface IActorSpawn {
1104
+ skinId: number;
1105
+ fX: number;
1106
+ fY: number;
1107
+ fZ: number;
1108
+ fAngle: number;
1109
+ }
1110
+ interface IActorAnimation {
1111
+ animLib: string;
1112
+ animName: string;
1113
+ fDelta: number;
1114
+ loop: number;
1115
+ lockX: number;
1116
+ lockY: number;
1117
+ freeze: number;
1118
+ time: number;
1119
+ }
1120
+
1121
+ interface IBounds {
1122
+ x_max: number;
1123
+ x_min: number;
1124
+ y_max: number;
1125
+ y_min: number;
1126
+ }
1127
+
1128
+ interface ICheckPoint {
1129
+ fX: number;
1130
+ fY: number;
1131
+ fZ: number;
1132
+ fSize: number;
1133
+ }
1134
+ interface IRaceCheckPoint extends ICheckPoint {
1135
+ fNextX: number;
1136
+ fNextY: number;
1137
+ fNextZ: number;
1138
+ }
1139
+
1140
+ interface GangZonePos {
1141
+ fMinX: number;
1142
+ fMinY: number;
1143
+ fMaxX: number;
1144
+ fMaxY: number;
1145
+ }
1146
+ type GangZoneCb = (playerId: number, zoneId: number) => void;
1147
+
1148
+ interface IObjectPos {
1149
+ fX: number;
1150
+ fY: number;
1151
+ fZ: number;
1152
+ }
1153
+ interface IObjectRotPos extends IObjectPos {
1154
+ fRotX: number;
1155
+ fRotY: number;
1156
+ fRotZ: number;
1157
+ }
1158
+ interface IAttachedObject extends IObjectRotPos {
1159
+ modelId: number;
1160
+ bone: number;
1161
+ fScaleX: number;
1162
+ fScaleY: number;
1163
+ fScaleZ: number;
1164
+ materialColor1: number;
1165
+ materialColor2: number;
1166
+ }
1167
+ interface IMaterial {
1168
+ modelId: number;
1169
+ txdName: string;
1170
+ textureName: string;
1171
+ materialColor: number;
1172
+ }
1173
+ interface IMaterialText {
1174
+ text: string;
1175
+ materialSize: number;
1176
+ fontFace: string;
1177
+ fontsize: number;
1178
+ bold: number;
1179
+ fontColor: number;
1180
+ backColor: number;
1181
+ textAlignment: number;
1182
+ }
1183
+ interface IAttachedData {
1184
+ attached_vehicleId: number;
1185
+ attached_objectId?: number;
1186
+ attached_playerId: number;
1187
+ }
1188
+
1189
+ interface IOffsets {
1190
+ fOffsetX: number;
1191
+ fOffsetY: number;
1192
+ fOffsetZ: number;
624
1193
  }
625
1194
 
626
- declare class DynamicRaceCPEvent<P extends Player, R extends DynamicRaceCP> {
627
- private readonly raceCPs;
628
- private readonly players;
629
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
630
- onPlayerEnter?(player: P, checkpoint: R): TCommonCallback;
631
- onPlayerLeave?(player: P, checkpoint: R): TCommonCallback;
632
- onStreamIn?(checkpoint: R, player: P): TCommonCallback;
633
- onStreamOut?(checkpoint: R, player: P): TCommonCallback;
634
- getRaceCPsArr(): Array<R>;
635
- getRaceCPsMap(): Map<number, R>;
1195
+ interface IPlayerClass {
1196
+ teamId: number;
1197
+ modelId: number;
1198
+ spawn_x: number;
1199
+ spawn_y: number;
1200
+ spawn_z: number;
1201
+ z_angle: number;
1202
+ weapon1: number;
1203
+ weapon1_ammo: number;
1204
+ weapon2: number;
1205
+ weapon2_ammo: number;
1206
+ weapon3: number;
1207
+ weapon3_ammo: number;
1208
+ }
1209
+
1210
+ interface IQuat {
1211
+ w: number;
1212
+ x: number;
1213
+ y: number;
1214
+ z: number;
1215
+ }
1216
+
1217
+ interface ITextDrawCommonSize {
1218
+ fX: number;
1219
+ fY: number;
1220
+ }
1221
+ interface ITextDrawRot {
1222
+ fRotX: number;
1223
+ fRotY: number;
1224
+ fRotZ: number;
1225
+ fZoom: number;
1226
+ }
1227
+
1228
+ interface IVehColor {
1229
+ color1: number;
1230
+ color2: number;
1231
+ }
1232
+ interface IVehSpawnInfo extends IVehColor {
1233
+ fX: number;
1234
+ fY: number;
1235
+ fZ: number;
1236
+ fRot: number;
1237
+ }
1238
+ interface IVehMatrix {
1239
+ rightX: number;
1240
+ rightY: number;
1241
+ rightZ: number;
1242
+ upX: number;
1243
+ upY: number;
1244
+ upZ: number;
1245
+ atX: number;
1246
+ atY: number;
1247
+ atZ: number;
636
1248
  }
637
1249
 
638
1250
  declare class DynamicActor {
1251
+ static readonly actors: Map<number, DynamicActor>;
639
1252
  private sourceInfo;
640
1253
  private _id;
641
1254
  get id(): number;
@@ -643,9 +1256,9 @@ declare class DynamicActor {
643
1256
  create(): void | this;
644
1257
  destroy(): void | this;
645
1258
  isValid(): boolean;
646
- isStreamedIn<P extends Player>(forplayer: P): boolean;
1259
+ isStreamedIn(forPlayer: Player): boolean;
647
1260
  getVirtualWorld(): void | number;
648
- setVirtualWorld(vworld: number): void | number;
1261
+ setVirtualWorld(vWorld: number): void | number;
649
1262
  applyAnimation(animLib: string, animName: string, loop?: boolean, lockX?: boolean, lockY?: boolean, freeze?: boolean): void | number;
650
1263
  clearAnimations(): void | number;
651
1264
  getFacingAngle(): void | number;
@@ -660,28 +1273,44 @@ declare class DynamicActor {
660
1273
  setHealth(health: number): void | number;
661
1274
  isInvulnerable(): boolean;
662
1275
  setInvulnerable(invulnerable?: boolean): void | number;
663
- getPlayerTarget<P extends Player, A extends DynamicActor>(player: P, actors: Map<number, A>): void | A;
664
- getPlayerCameraTarget<P extends Player, A extends DynamicActor>(player: P, actors: Map<number, A>): void | A;
1276
+ getPlayerTarget(player: Player): DynamicActor | undefined;
1277
+ getPlayerCameraTarget(player: Player): DynamicActor | undefined;
665
1278
  getSkin(): void | number;
666
1279
  setSkin(model: number, ignoreRange?: boolean): void | number;
667
- getSpawnInfo(): void | _infernus_wrapper.IActorSpawn;
668
- getAnimation(): void | _infernus_wrapper.IActorAnimation;
1280
+ getSpawnInfo(): void | IActorSpawn;
1281
+ getAnimation(): void | IActorAnimation;
669
1282
  toggleCallbacks(toggle?: boolean): void | number;
670
1283
  isToggleCallbacks(): boolean;
1284
+ static getInstance(id: number): DynamicActor | undefined;
1285
+ static getInstances(): DynamicActor[];
671
1286
  }
672
1287
 
673
- declare class DynamicActorEvent<P extends Player, A extends DynamicActor> {
674
- private readonly actors;
675
- private readonly players;
676
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
677
- onStreamIn?(actor: A, player: P): TCommonCallback;
678
- onStreamOut?(actor: A, player: P): TCommonCallback;
679
- onPlayerGiveDamage?(player: P, actor: A, amount: number, weaponid: number, bodypart: BodyPartsEnum): TCommonCallback;
680
- getActorsArr(): Array<A>;
681
- getActorsMap(): Map<number, A>;
682
- }
1288
+ declare const DynamicActorEvent: Readonly<{
1289
+ onStreamIn: (cb: (ret: {
1290
+ actor: DynamicActor;
1291
+ forPlayer: Player;
1292
+ } & {
1293
+ next: () => CallbackRet;
1294
+ }) => PromisifyCallbackRet) => () => void;
1295
+ onStreamOut: (cb: (ret: {
1296
+ actor: DynamicActor;
1297
+ forPlayer: Player;
1298
+ } & {
1299
+ next: () => CallbackRet;
1300
+ }) => PromisifyCallbackRet) => () => void;
1301
+ onPlayerGiveDamage: (cb: (ret: {
1302
+ player: Player;
1303
+ actor: DynamicActor;
1304
+ amount: number;
1305
+ weapon: WeaponEnum;
1306
+ bodyPart: BodyPartsEnum;
1307
+ } & {
1308
+ next: () => CallbackRet;
1309
+ }) => PromisifyCallbackRet) => () => void;
1310
+ }>;
683
1311
 
684
1312
  declare class Dynamic3DTextLabel {
1313
+ static readonly texts: Map<number, Dynamic3DTextLabel>;
685
1314
  private sourceInfo;
686
1315
  private _id;
687
1316
  get id(): number;
@@ -689,42 +1318,49 @@ declare class Dynamic3DTextLabel {
689
1318
  create(): void | this;
690
1319
  destroy(): void | this;
691
1320
  isValid(): boolean;
692
- getColour(): void | string | number;
1321
+ getColor(): void | string | number;
693
1322
  getCharset(): void | string;
694
1323
  getText(): void | string;
695
- updateText(colour: string | number, text: string, charset?: string | undefined): void | number;
1324
+ updateText(color: string | number, text: string, charset?: string | undefined): void | number;
696
1325
  toggleCallbacks(toggle?: boolean): void | number;
697
1326
  isToggleCallbacks(): boolean;
1327
+ static getInstance(id: number): Dynamic3DTextLabel | undefined;
1328
+ static getInstances(): Dynamic3DTextLabel[];
698
1329
  }
699
1330
 
700
- declare class Dynamic3dTextLabelEvent<P extends Player, D extends Dynamic3DTextLabel> {
701
- private readonly _3dTexts;
702
- private readonly players;
703
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
704
- onStreamIn?(label: D, player: P): TCommonCallback;
705
- onStreamOut?(label: D, player: P): TCommonCallback;
706
- get3dTextLabelsArr(): Array<D>;
707
- get3dTextLabelsMap(): Map<number, D>;
708
- }
1331
+ declare const Dynamic3DTextLabelEvent: Readonly<{
1332
+ onStreamIn: (cb: (ret: {
1333
+ player: Player;
1334
+ instance: Dynamic3DTextLabel;
1335
+ } & {
1336
+ next: () => CallbackRet;
1337
+ }) => PromisifyCallbackRet) => () => void;
1338
+ onStreamOut: (cb: (ret: {
1339
+ player: Player;
1340
+ instance: Dynamic3DTextLabel;
1341
+ } & {
1342
+ next: () => CallbackRet;
1343
+ }) => PromisifyCallbackRet) => () => void;
1344
+ }>;
709
1345
 
710
1346
  declare class Streamer {
711
1347
  private constructor();
712
1348
  static getTickRate: () => number;
713
1349
  static setTickRate: (rate?: number | undefined) => number;
714
- static getPlayerTickRate<P extends Player>(player: P): number;
715
- static setPlayerTickRate<P extends Player>(player: P, rate?: number): number;
1350
+ static getPlayerTickRate(player: Player): number;
1351
+ static setPlayerTickRate(player: Player, rate?: number): number;
716
1352
  static toggleChunkStream: (toggle?: boolean | undefined) => number;
717
1353
  static isToggleChunkStream: () => boolean;
718
- static getChunkTickRate<P extends Player>(type: StreamerItemTypes, player?: number | P): number;
719
- static setChunkTickRate<P extends Player>(type: StreamerItemTypes, rate: number, player?: number | P): number;
1354
+ static getChunkTickRate(type: StreamerItemTypes, player?: number | Player): number;
1355
+ static setChunkTickRate(type: StreamerItemTypes, rate: number, player?: number | Player): number;
720
1356
  static getChunkSize: (type: StreamerItemTypes) => number;
721
1357
  static setChunkSize: (type: StreamerItemTypes, size: number) => number;
722
1358
  static getMaxItems: (type: StreamerItemTypes) => number;
723
1359
  static setMaxItems: (type: StreamerItemTypes, items: number) => number;
724
- static getVisibleItems<P extends Player>(type: StreamerItemTypes, player?: number | P): number;
725
- static setVisibleItems<P extends Player>(type: StreamerItemTypes, items: number, player?: number | P): number;
726
- static getRadiusMultiplier<P extends Player>(type: StreamerItemTypes, player?: number | P): number;
727
- static setRadiusMultiplier<P extends Player>(type: StreamerItemTypes, multiplier: number, player?: number | P): number;
1360
+ static getVisibleItems(type: StreamerItemTypes, player?: number | Player): number;
1361
+ static setVisibleItems(type: StreamerItemTypes, items: number, player?: number | Player): number;
1362
+ static getRadiusMultiplier(type: StreamerItemTypes, player?: number | Player): number;
1363
+ static setRadiusMultiplier(type: StreamerItemTypes, multiplier: number, player?: number | Player): number;
728
1364
  static getTypePriority: () => number | _infernus_streamer.StreamerItemTypeTuple;
729
1365
  static setTypePriority: (types: _infernus_streamer.StreamerItemTypeTuple) => number;
730
1366
  static getCellDistance: () => number;
@@ -741,28 +1377,28 @@ declare class Streamer {
741
1377
  static isToggleErrorCallback: () => boolean;
742
1378
  static amxUnloadDestroyItems: (toggle: boolean) => number;
743
1379
  static processActiveItems: () => number;
744
- static toggleIdleUpdate<P extends Player>(player: P, toggle: boolean): number;
745
- static isToggleIdleUpdate<P extends Player>(player: P): boolean;
746
- static toggleCameraUpdate<P extends Player>(player: P, toggle: boolean): number;
747
- static isToggleCameraUpdate<P extends Player>(player: P): boolean;
748
- static toggleItemUpdate<P extends Player>(player: P, type: StreamerItemTypes, toggle: boolean): number;
749
- static isToggleItemUpdate<P extends Player>(player: P, type: StreamerItemTypes): boolean;
1380
+ static toggleIdleUpdate(player: Player, toggle: boolean): number;
1381
+ static isToggleIdleUpdate(player: Player): boolean;
1382
+ static toggleCameraUpdate(player: Player, toggle: boolean): number;
1383
+ static isToggleCameraUpdate(player: Player): boolean;
1384
+ static toggleItemUpdate(player: Player, type: StreamerItemTypes, toggle: boolean): number;
1385
+ static isToggleItemUpdate(player: Player, type: StreamerItemTypes): boolean;
750
1386
  static getLastUpdateTime(): number;
751
- static update<P extends Player>(player: P, type?: StreamerItemTypes | -1): number;
752
- static updateEx<P extends Player>(player: P, x: number, y: number, z: number, worldid?: number, interiorid?: number, type?: StreamerItemTypes | -1, compensatedtime?: number, freezeplayer?: boolean): number;
1387
+ static update(player: Player, type?: StreamerItemTypes | -1): number;
1388
+ static updateEx(player: Player, x: number, y: number, z: number, worldId?: number, interiorId?: number, type?: StreamerItemTypes | -1, compensatedTime?: number, freezePlayer?: boolean): number;
753
1389
  static getDistanceToItem: (x: number, y: number, z: number, type: StreamerItemTypes, id: number, dimensions?: 2 | 3 | undefined) => number;
754
- static toggleItem<P extends Player>(player: P, type: StreamerItemTypes, id: number, toggle: boolean): number;
755
- static isToggleItem<P extends Player>(player: P, type: StreamerItemTypes, id: number): boolean;
756
- static toggleAllItems<P extends Player>(player: P, type: StreamerItemTypes, toggle: boolean, exceptions?: number[]): number;
757
- static getItemInternalID<P extends Player>(player: P, type: StreamerItemTypes, streamerid: number): number;
758
- static getItemStreamerID<P extends Player>(player: P, type: StreamerItemTypes, internalid: number): number;
759
- static isItemVisible<P extends Player>(player: P, type: StreamerItemTypes, id: number): boolean;
760
- static destroyAllVisibleItems<P extends Player>(player: P, type: StreamerItemTypes, serverwide?: number): number;
761
- static countVisibleItems<P extends Player>(player: P, type: StreamerItemTypes, serverwide?: number): number;
762
- static destroyAllItems: (type: StreamerItemTypes, serverwide?: number | undefined) => number;
763
- static countItems: (type: StreamerItemTypes, serverwide?: number | undefined) => number;
764
- static getNearbyItems: (x: number, y: number, z: number, type: StreamerItemTypes, items: number[], maxitems?: number | undefined, range?: number | undefined, worldid?: number | undefined) => void;
765
- static getAllVisibleItems<P extends Player>(player: P, type: StreamerItemTypes, items: number[]): void;
1390
+ static toggleItem(player: Player, type: StreamerItemTypes, id: number, toggle: boolean): number;
1391
+ static isToggleItem(player: Player, type: StreamerItemTypes, id: number): boolean;
1392
+ static toggleAllItems(player: Player, type: StreamerItemTypes, toggle: boolean, exceptions?: number[]): number;
1393
+ static getItemInternalID(player: Player, type: StreamerItemTypes, streamerId: number): number;
1394
+ static getItemStreamerID(player: Player, type: StreamerItemTypes, internalId: number): number;
1395
+ static isItemVisible(player: Player, type: StreamerItemTypes, id: number): boolean;
1396
+ static destroyAllVisibleItems(player: Player, type: StreamerItemTypes, serverWide?: number): number;
1397
+ static countVisibleItems(player: Player, type: StreamerItemTypes, serverWide?: number): number;
1398
+ static destroyAllItems: (type: StreamerItemTypes, serverWide?: number | undefined) => number;
1399
+ static countItems: (type: StreamerItemTypes, serverWide?: number | undefined) => number;
1400
+ static getNearbyItems: (x: number, y: number, z: number, type: StreamerItemTypes, items: number[], maxItems?: number | undefined, range?: number | undefined, worldId?: number | undefined) => void;
1401
+ static getAllVisibleItems(player: Player, type: StreamerItemTypes, items: number[]): void;
766
1402
  static getItemPos: (type: StreamerItemTypes, id: number) => {
767
1403
  x: number;
768
1404
  y: number;
@@ -786,12 +1422,103 @@ declare class Streamer {
786
1422
  static removeArrayData: (type: StreamerItemTypes, id: number, data: _infernus_streamer.StreamerArrayData, value: number) => number;
787
1423
  static getArrayDataLength: (type: StreamerItemTypes, id: number, data: _infernus_streamer.StreamerArrayData) => number;
788
1424
  static getUpperBound: (type: StreamerItemTypes) => number;
789
- static onItemStreamIn: (fn: (type: StreamerItemTypes, id: number, forplayerid: number) => number) => void;
790
- static onItemStreamOut: (fn: (type: StreamerItemTypes, id: number, forplayerid: number) => number) => void;
791
- static onPluginError: (fn: (error: string) => number) => void;
1425
+ static onPluginError: (cb: (ret: {
1426
+ error: string;
1427
+ } & {
1428
+ next: () => CallbackRet;
1429
+ }) => PromisifyCallbackRet) => () => void;
792
1430
  }
793
1431
 
1432
+ declare const VehicleEvent: Readonly<{
1433
+ onDamageStatusUpdate: (cb: (ret: {
1434
+ vehicle: Vehicle;
1435
+ player: Player;
1436
+ } & {
1437
+ next: () => CallbackRet;
1438
+ }) => PromisifyCallbackRet) => () => void;
1439
+ onDeath: (cb: (ret: {
1440
+ vehicle: Vehicle;
1441
+ killer: Player;
1442
+ } & {
1443
+ next: () => CallbackRet;
1444
+ }) => PromisifyCallbackRet) => () => void;
1445
+ onMod: (cb: (ret: {
1446
+ player: Player;
1447
+ vehicle: Vehicle;
1448
+ componentId: number;
1449
+ } & {
1450
+ next: () => CallbackRet;
1451
+ }) => PromisifyCallbackRet) => () => void;
1452
+ onPaintjob: (cb: (ret: {
1453
+ player: Player;
1454
+ vehicle: Vehicle;
1455
+ paintjobId: number;
1456
+ } & {
1457
+ next: () => CallbackRet;
1458
+ }) => PromisifyCallbackRet) => () => void;
1459
+ onRespray: (cb: (ret: {
1460
+ player: Player;
1461
+ vehicle: Vehicle;
1462
+ color: number[];
1463
+ } & {
1464
+ next: () => CallbackRet;
1465
+ }) => PromisifyCallbackRet) => () => void;
1466
+ onSirenStateChange: (cb: (ret: {
1467
+ player: Player;
1468
+ vehicle: Vehicle;
1469
+ state: boolean;
1470
+ } & {
1471
+ next: () => CallbackRet;
1472
+ }) => PromisifyCallbackRet) => () => void;
1473
+ onSpawn: (cb: (ret: {
1474
+ vehicle: Vehicle;
1475
+ } & {
1476
+ next: () => CallbackRet;
1477
+ }) => PromisifyCallbackRet) => () => void;
1478
+ onStreamIn: (cb: (ret: {
1479
+ vehicle: Vehicle;
1480
+ forPlayer: Player;
1481
+ } & {
1482
+ next: () => CallbackRet;
1483
+ }) => PromisifyCallbackRet) => () => void;
1484
+ onStreamOut: (cb: (ret: {
1485
+ vehicle: Vehicle;
1486
+ forPlayer: Player;
1487
+ } & {
1488
+ next: () => CallbackRet;
1489
+ }) => PromisifyCallbackRet) => () => void;
1490
+ onPlayerEnter: (cb: (ret: {
1491
+ player: Player;
1492
+ vehicle: Vehicle;
1493
+ isPassenger: boolean;
1494
+ } & {
1495
+ next: () => CallbackRet;
1496
+ }) => PromisifyCallbackRet) => () => void;
1497
+ onPlayerExit: (cb: (ret: {
1498
+ player: Player;
1499
+ vehicle: Vehicle;
1500
+ } & {
1501
+ next: () => CallbackRet;
1502
+ }) => PromisifyCallbackRet) => () => void;
1503
+ onNpcEnter: (cb: (ret: {
1504
+ vehicle: Vehicle;
1505
+ seatId: number;
1506
+ } & {
1507
+ next: () => CallbackRet;
1508
+ }) => PromisifyCallbackRet) => () => void;
1509
+ onNpcExit: (cb: (ret: object & {
1510
+ next: () => CallbackRet;
1511
+ }) => PromisifyCallbackRet) => () => void;
1512
+ onTrailerUpdate: (cb: (ret: {
1513
+ player: Player;
1514
+ vehicle: Vehicle;
1515
+ } & {
1516
+ next: () => CallbackRet;
1517
+ }) => PromisifyCallbackRet) => () => void;
1518
+ }>;
1519
+
794
1520
  declare class DynamicObject {
1521
+ static readonly objects: Map<number, DynamicObject>;
795
1522
  private sourceInfo;
796
1523
  private _id;
797
1524
  get id(): number;
@@ -799,6 +1526,7 @@ declare class DynamicObject {
799
1526
  create(): void | this;
800
1527
  destroy(): void | this;
801
1528
  isValid(): boolean;
1529
+ getModel(): number;
802
1530
  getPos(): void | {
803
1531
  x: number;
804
1532
  y: number;
@@ -814,50 +1542,112 @@ declare class DynamicObject {
814
1542
  move(x: number, y: number, z: number, speed: number, rx?: number, ry?: number, rz?: number): void | number;
815
1543
  stop(): void | number;
816
1544
  isMoving(): boolean;
817
- attachCamera<P extends Player>(player: P): void | number;
818
- attachToObject<O extends DynamicObject>(attachto: O, offsetx: number, offsety: number, offsetz: number, rx: number, ry: number, rz: number, syncrotation?: boolean): void | number;
819
- attachToPlayer<P extends Player>(player: P, offsetx: number, offsety: number, offsetz: number, rx: number, ry: number, rz: number): void | number;
820
- attachToVehicle<V extends Vehicle>(vehicle: V, offsetx: number, offsety: number, offsetz: number, rx: number, ry: number, rz: number): void | number;
821
- edit<P extends Player>(player: P): void | number;
1545
+ attachCamera(player: Player): void | number;
1546
+ attachToObject(attachTo: DynamicObject, offsetX: number, offsetY: number, offsetZ: number, rx: number, ry: number, rz: number, syncRotation?: boolean): void | number;
1547
+ attachToPlayer(player: Player, offsetX: number, offsetY: number, offsetZ: number, rx: number, ry: number, rz: number): void | number;
1548
+ attachToVehicle(vehicle: Vehicle, offsetX: number, offsetY: number, offsetZ: number, rx: number, ry: number, rz: number): void | number;
1549
+ edit(player: Player): void | number;
822
1550
  isMaterialUsed(materialIndex: number): boolean;
823
1551
  removeMaterial(materialIndex: number): number;
824
- getMaterial(materialIndex: number, txdname: string, texturename: string): void | {
825
- modelid: number;
826
- materialcolor: string | number;
1552
+ getMaterial(materialIndex: number, txdName: string, textureName: string): void | {
1553
+ modelId: number;
1554
+ materialColor: string | number;
827
1555
  };
828
- setMaterial(materialindex: number, modelid: number, txdname: string, texturename: string, materialcolour?: string): void | number;
1556
+ setMaterial(materialIndex: number, modelId: number, txdName: string, textureName: string, materialColor?: string): void | number;
829
1557
  isMaterialTextUsed(materialIndex: number): boolean;
830
1558
  removeMaterialText(materialIndex: number): number;
831
1559
  getMaterialText(materialIndex: number): void | {
832
1560
  text: string;
833
- materialsize: number;
834
- fontface: string;
1561
+ materialSize: number;
1562
+ fontFace: string;
835
1563
  bold: number;
836
- fontcolour: number;
837
- backcolour: number;
838
- textalignment: number;
1564
+ fontColor: number;
1565
+ backColor: number;
1566
+ textAlignment: number;
839
1567
  };
840
- setMaterialText(charset: string | undefined, materialIndex: number, text: string, materialSize?: number, fontFace?: string, fontSize?: number, bold?: number, fontColour?: string, backColour?: string, textAlignment?: number): void | number;
841
- getPlayerCameraTarget<P extends Player, O extends DynamicObject>(player: P, objMap: Map<number, O>): void | O;
1568
+ setMaterialText(charset: string | undefined, materialIndex: number, text: string, materialSize?: number, fontFace?: string, fontSize?: number, bold?: number, fontColor?: string, backColor?: string, textAlignment?: number): void | number;
1569
+ getPlayerCameraTarget(player: Player): DynamicObject | undefined;
842
1570
  toggleCallbacks(toggle?: boolean): void | number;
843
1571
  isToggleCallbacks(): boolean;
1572
+ setNoCameraCollision(): boolean;
1573
+ getNoCameraCollision(): boolean;
1574
+ static getInstance(id: number): DynamicObject | undefined;
1575
+ static getInstances(): DynamicObject[];
844
1576
  }
845
1577
 
846
- declare class DynamicObjectEvent<P extends Player, O extends DynamicObject> {
847
- private readonly objects;
848
- private readonly players;
849
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
850
- onMoved?(object: O): TCommonCallback;
851
- onPlayerEdit?(player: P, object: O, response: EditResponseTypesEnum, x: number, y: number, z: number, rx: number, ry: number, rz: number): TCommonCallback;
852
- onPlayerSelect?(player: P, object: O, modelid: number, x: number, y: number, z: number): TCommonCallback;
853
- onPlayerShoot?(player: P, weaponid: number, object: O, x: number, y: number, z: number): TCommonCallback;
854
- onStreamIn?(object: O, player: P): TCommonCallback;
855
- onStreamOut?(object: O, player: P): TCommonCallback;
856
- getObjectsArr(): Array<O>;
857
- getObjectsMap(): Map<number, O>;
858
- }
1578
+ declare const DynamicObjectEvent: Readonly<{
1579
+ onMoved: (cb: (ret: {
1580
+ object: DynamicObject;
1581
+ } & {
1582
+ next: () => CallbackRet;
1583
+ }) => PromisifyCallbackRet) => () => void;
1584
+ onPlayerEdit: (cb: (ret: {
1585
+ player: Player;
1586
+ object: DynamicObject;
1587
+ response: number;
1588
+ x: number;
1589
+ y: number;
1590
+ z: number;
1591
+ rX: number;
1592
+ rY: number;
1593
+ rZ: number;
1594
+ } & {
1595
+ next: () => CallbackRet;
1596
+ }) => PromisifyCallbackRet) => () => void;
1597
+ onPlayerSelect: (cb: (ret: {
1598
+ player: Player;
1599
+ object: DynamicObject;
1600
+ modelId: number;
1601
+ x: number;
1602
+ y: number;
1603
+ z: number;
1604
+ } & {
1605
+ next: () => CallbackRet;
1606
+ }) => PromisifyCallbackRet) => () => void;
1607
+ onPlayerShoot: (cb: (ret: {
1608
+ player: Player;
1609
+ object: DynamicObject;
1610
+ weapon: WeaponEnum;
1611
+ x: number;
1612
+ y: number;
1613
+ z: number;
1614
+ } & {
1615
+ next: () => CallbackRet;
1616
+ }) => PromisifyCallbackRet) => () => void;
1617
+ onPlayerEditAttached: (cb: (ret: {
1618
+ player: Player;
1619
+ response: number;
1620
+ index: number;
1621
+ modelId: number;
1622
+ boneId: number;
1623
+ fOffsetX: number;
1624
+ fOffsetY: number;
1625
+ fOffsetZ: number;
1626
+ fRotX: number;
1627
+ fRotY: number;
1628
+ fRotZ: number;
1629
+ fScaleX: number;
1630
+ fScaleY: number;
1631
+ fScaleZ: number;
1632
+ } & {
1633
+ next: () => CallbackRet;
1634
+ }) => PromisifyCallbackRet) => () => void;
1635
+ onStreamIn: (cb: (ret: {
1636
+ player: Player;
1637
+ instance: DynamicObject;
1638
+ } & {
1639
+ next: () => CallbackRet;
1640
+ }) => PromisifyCallbackRet) => () => void;
1641
+ onStreamOut: (cb: (ret: {
1642
+ player: Player;
1643
+ instance: DynamicObject;
1644
+ } & {
1645
+ next: () => CallbackRet;
1646
+ }) => PromisifyCallbackRet) => () => void;
1647
+ }>;
859
1648
 
860
1649
  declare class DynamicArea {
1650
+ static readonly areas: Map<number, DynamicArea>;
861
1651
  private sourceInfo;
862
1652
  private _id;
863
1653
  get type(): TDynamicAreaTypes;
@@ -869,63 +1659,74 @@ declare class DynamicArea {
869
1659
  getType(): void | StreamerAreaTypes;
870
1660
  getPolygonPoints(): void | number[];
871
1661
  getPolygonNumberPoints(): void | number;
872
- isPlayerIn<P extends Player>(player: P, recheck?: boolean): boolean;
873
- static isPlayerInAny<P extends Player>(player: P, recheck?: boolean): boolean;
1662
+ isPlayerIn(player: Player, recheck?: boolean): boolean;
1663
+ static isPlayerInAny(player: Player, recheck?: boolean): boolean;
874
1664
  isAnyPlayerIn(recheck?: boolean): boolean;
875
1665
  static isAnyPlayerInAny(recheck?: boolean): boolean;
876
- static getPlayerAreas<P extends Player, A extends DynamicArea>(player: P, areas: Map<number, A>): Array<A | undefined>;
877
- static getPlayerAreasNumber<P extends Player>(player: P): any;
1666
+ static getPlayerAreas(player: Player): Array<DynamicArea | undefined>;
1667
+ static getPlayerAreasNumber(player: Player): any;
878
1668
  isPointIn(x: number, y: number, z: number): boolean;
879
1669
  static isPointInAny(x: number, y: number, z: number): boolean;
880
1670
  isLineIn(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number): boolean;
881
1671
  static isLineInAny(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number): boolean;
882
- static getForPoint<A extends DynamicArea>(x: number, y: number, z: number, areas: Map<number, A>): Array<A | undefined>;
1672
+ static getForPoint(x: number, y: number, z: number): DynamicArea[];
883
1673
  static getNumberForPoint(x: number, y: number, z: number): number;
884
- static getForLine<A extends DynamicArea>(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number, areas: Map<number, A>): Array<A | undefined>;
1674
+ static getForLine(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number): DynamicArea[];
885
1675
  static getNumberForLine(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number): number;
886
- attachToObject<O extends DynamicObject>(obj: O, offsetx?: number, offsety?: number, offsetz?: number): void | number;
887
- attachToPlayer<P extends Player>(player: P, offsetx?: number, offsety?: number, offsetz?: number): void | number;
888
- attachToVehicle<V extends Vehicle>(vehicle: V, offsetx?: number, offsety?: number, offsetz?: number): void | number;
1676
+ attachToObject(obj: DynamicObject, offsetX?: number, offsetY?: number, offsetZ?: number): void | number;
1677
+ attachToPlayer(player: Player, offsetX?: number, offsetY?: number, offsetZ?: number): void | number;
1678
+ attachToVehicle(vehicle: Vehicle, offsetX?: number, offsetY?: number, offsetZ?: number): void | number;
889
1679
  toggleSpectateMode(toggle: boolean): void | number;
890
1680
  isToggleSpectateMode(): boolean;
891
1681
  toggleCallbacks(toggle?: boolean): void | number;
892
1682
  isToggleCallbacks(): boolean;
1683
+ static getInstance(id: number): DynamicArea | undefined;
1684
+ static getInstances(): DynamicArea[];
893
1685
  }
894
1686
 
895
- declare class DynamicAreaEvent<P extends Player, A extends DynamicArea> {
896
- private readonly areas;
897
- private readonly players;
898
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
899
- onPlayerEnter?(player: P, area: A): TCommonCallback;
900
- onPlayerLeave?(player: P, area: A): TCommonCallback;
901
- onStreamIn?(area: A, player: P): TCommonCallback;
902
- onStreamOut?(area: A, player: P): TCommonCallback;
903
- getAreasArr(): Array<A>;
904
- getAreasMap(): Map<number, A>;
905
- }
1687
+ declare const DynamicAreaEvent: Readonly<{
1688
+ onStreamIn: (cb: (ret: {
1689
+ player: Player;
1690
+ instance: DynamicArea;
1691
+ } & {
1692
+ next: () => CallbackRet;
1693
+ }) => PromisifyCallbackRet) => () => void;
1694
+ onStreamOut: (cb: (ret: {
1695
+ player: Player;
1696
+ instance: DynamicArea;
1697
+ } & {
1698
+ next: () => CallbackRet;
1699
+ }) => PromisifyCallbackRet) => () => void;
1700
+ onPlayerEnter: (cb: (ret: {
1701
+ player: Player;
1702
+ pickup: DynamicArea;
1703
+ } & {
1704
+ next: () => CallbackRet;
1705
+ }) => PromisifyCallbackRet) => () => void;
1706
+ onPlayerLeave: (cb: (ret: {
1707
+ player: Player;
1708
+ pickup: DynamicArea;
1709
+ } & {
1710
+ next: () => CallbackRet;
1711
+ }) => PromisifyCallbackRet) => () => void;
1712
+ }>;
906
1713
 
907
1714
  declare class Player {
908
- private _id;
909
- private _isNpc;
910
- private _locale;
911
- private _charset;
912
- private _isRecording;
1715
+ readonly id: number;
1716
+ static readonly players: Map<number, Player>;
1717
+ charset: string;
1718
+ locale: string;
913
1719
  lastDrunkLevel: number;
914
1720
  lastFps: number;
915
- isPaused: boolean;
916
1721
  lastUpdateTick: number;
917
- get id(): number;
918
- get locale(): string;
919
- set locale(value: string);
920
- get charset(): string;
921
- set charset(value: string);
922
- get isRecording(): boolean;
923
- set isRecording(value: boolean);
1722
+ lastUpdateFpsTick: number;
1723
+ isPaused: boolean;
1724
+ isRecording: boolean;
924
1725
  constructor(id: number);
925
- sendClientMessage(colour: string | number, msg: string): number;
926
- static sendClientMessageToAll<P extends Player>(players: Array<P>, colour: string | number, msg: string): void;
927
- sendPlayerMessage<P extends Player>(player: P, message: string): number;
928
- sendPlayerMessageToAll<P extends Player>(players: Array<P>, message: string): number;
1726
+ sendClientMessage(color: string | number, msg: string): number;
1727
+ static sendClientMessageToAll(color: string | number, msg: string): void;
1728
+ sendMessageToPlayer(player: Player, message: string): number;
1729
+ sendMessageToAll(message: string): number;
929
1730
  isNpc(): boolean;
930
1731
  getFps(): number;
931
1732
  getDrunkLevel(): number;
@@ -936,10 +1737,11 @@ declare class Player {
936
1737
  enableStuntBonus(enable: boolean): void;
937
1738
  getInterior(): number;
938
1739
  setInterior(interiorId: number): number;
939
- showPlayerNameTag<P extends Player>(showPlayer: P, show: boolean): void;
940
- setColor(colour: string | number): void;
1740
+ showNameTag(showPlayer: Player, show: boolean): void;
1741
+ setColor(color: string | number): void;
941
1742
  getColor(): number;
942
- setPlayerMarker<P extends Player>(showPlayer: P, colour: string | number): void;
1743
+ setMarker(showPlayer: Player, color: string | number): void;
1744
+ getMarker(targetPlayer: Player): number;
943
1745
  resetMoney(): number;
944
1746
  getMoney(): number;
945
1747
  giveMoney(money: number): number;
@@ -950,15 +1752,15 @@ declare class Player {
950
1752
  toggleClock(toggle: boolean): number;
951
1753
  toggleControllable(toggle: boolean): number;
952
1754
  toggleSpectating(toggle: boolean): number;
953
- spectatePlayer<P extends Player>(targetPlayer: P, mode?: SpectateModesEnum): number;
954
- spectateVehicle<V extends Vehicle>(targetVehicle: V, mode?: SpectateModesEnum): number;
1755
+ spectatePlayer(targetPlayer: Player, mode?: SpectateModesEnum): number;
1756
+ spectateVehicle(targetVehicle: Vehicle, mode?: SpectateModesEnum): number;
955
1757
  forceClassSelection(): void;
956
1758
  kick(): void;
957
1759
  ban(): void;
958
1760
  banEx(reason: string, charset: string): void;
959
1761
  isAdmin(): boolean;
960
1762
  isInRangeOfPoint(range: number, x: number, y: number, z: number): boolean;
961
- isStreamedIn<P extends Player>(forplayer: P): boolean;
1763
+ isStreamedIn(forPlayer: Player): boolean;
962
1764
  setSkin(skinId: number, ignoreRange?: boolean): number;
963
1765
  getSkin(): number;
964
1766
  isInAnyVehicle(): boolean;
@@ -987,7 +1789,7 @@ declare class Player {
987
1789
  hour: number;
988
1790
  minute: number;
989
1791
  };
990
- removeBuilding(modelid: number, fX: number, fY: number, fZ: number, fRadius: number): void;
1792
+ removeBuilding(modelId: number, fX: number, fY: number, fZ: number, fRadius: number): void;
991
1793
  setTeam(team: number): void;
992
1794
  getTeam(): number;
993
1795
  setSkillLevel(skill: WeaponSkillsEnum, level: number): void;
@@ -997,8 +1799,8 @@ declare class Player {
997
1799
  getVelocity(): TPos;
998
1800
  getKeys(): {
999
1801
  keys: KeysEnum;
1000
- updown: KeysEnum;
1001
- leftright: KeysEnum;
1802
+ upDown: KeysEnum;
1803
+ leftRight: KeysEnum;
1002
1804
  };
1003
1805
  getIp(): string;
1004
1806
  getFightingStyle(): FightingStylesEnum;
@@ -1012,24 +1814,23 @@ declare class Player {
1012
1814
  getCameraFrontVector(): TPos;
1013
1815
  getCameraMode(): CameraModesEnum;
1014
1816
  getCameraPos(): TPos;
1015
- getCameraTargetPlayer<P extends Player>(players: Array<P>): P | undefined;
1016
- getCameraTargetVehicle<V extends Vehicle>(vehicles: Array<V>): V | undefined;
1817
+ getCameraTargetPlayer(players: Array<Player>): Player | undefined;
1818
+ getCameraTargetVehicle(vehicles: Array<Vehicle>): Vehicle | undefined;
1017
1819
  getCameraZoom(): number;
1018
1820
  playAudioStream(url: string, posX?: number, posY?: number, posZ?: number, distance?: number): number;
1019
1821
  stopAudioStream(): void;
1020
1822
  playSound(soundid: number, relativeX?: number, relativeY?: number, relativeZ?: number): number;
1021
- static getPoolSize(): number;
1022
1823
  static getMaxPlayers(): number;
1023
- playCrimeReport<P extends Player>(suspect: P, crimeId: number): number;
1824
+ playCrimeReport(suspect: Player, crimeId: number): number;
1024
1825
  interpolateCameraPos(FromX: number, FromY: number, FromZ: number, ToX: number, ToY: number, ToZ: number, time: number, cut?: CameraCutStylesEnum): void;
1025
1826
  interpolateCameraLookAt(FromX: number, FromY: number, FromZ: number, ToX: number, ToY: number, ToZ: number, time: number, cut?: CameraCutStylesEnum): void;
1026
1827
  createExplosion(X: number, Y: number, Z: number, type: number, Radius: number): number;
1027
1828
  static isConnected(id: number): boolean;
1028
1829
  isConnected(): boolean;
1029
1830
  disableRemoteVehicleCollisions(disable: boolean): number;
1030
- getVehicle<V extends Vehicle>(vehicles: Array<V>): V | undefined;
1831
+ getVehicle(vehicles: Array<Vehicle>): Vehicle | undefined;
1031
1832
  getVehicleSeat(): number;
1032
- getSurfingVehicle<V extends Vehicle>(vehicles: Array<V>): V | undefined;
1833
+ getSurfingVehicle(vehicles: Array<Vehicle>): Vehicle | undefined;
1033
1834
  applyAnimation(animLib: string, animName: string, loop?: boolean, lockX?: boolean, lockY?: boolean, freeze?: boolean, forceSync?: boolean): void;
1034
1835
  clearAnimations(forceSync?: boolean): void;
1035
1836
  getAnimationIndex(): number;
@@ -1040,10 +1841,11 @@ declare class Player {
1040
1841
  setShopName(shopName: string): void;
1041
1842
  setPosFindZ(x: number, y: number, z?: number): Promise<number>;
1042
1843
  setWorldBounds(x_max: number, x_min: number, y_max: number, y_min: number): void;
1043
- setChatBubble(text: string, colour: string | number, drawDistance: number, expireTime: number): void;
1844
+ clearWorldBounds(): boolean;
1845
+ setChatBubble(text: string, color: string | number, drawDistance: number, expireTime: number): void;
1044
1846
  getDistanceFromPoint(X: number, Y: number, Z: number): number;
1045
1847
  getCustomSkin(): number;
1046
- getTargetPlayer<P extends Player>(players: Array<P>): undefined | P;
1848
+ getTargetPlayer(players: Array<Player>): undefined | Player;
1047
1849
  getLastShotVectors(): {
1048
1850
  fOriginX: number;
1049
1851
  fOriginY: number;
@@ -1058,32 +1860,36 @@ declare class Player {
1058
1860
  ammo: number;
1059
1861
  } | undefined;
1060
1862
  getWeaponState(): WeaponStatesEnum;
1061
- giveWeapon(weaponid: WeaponEnum, ammo: number): number;
1062
- setAmmo(weaponid: number, ammo: number): number;
1863
+ giveWeapon(weaponId: WeaponEnum, ammo: number): number;
1864
+ setAmmo(weaponId: number, ammo: number): number;
1063
1865
  getAmmo(): number;
1064
- setArmedWeapon(weaponid: number): number;
1866
+ setArmedWeapon(weaponId: number): number;
1065
1867
  clearDeathMessage(): void;
1066
- sendDeathMessage<P extends Player>(killer: P | InvalidEnum.PLAYER_ID, weapon: WeaponEnum | DamageDeathReasonEnum): void;
1067
- sendDeathMessageToPlayer<P extends Player>(killer: P | InvalidEnum.PLAYER_ID, killee: P | InvalidEnum.PLAYER_ID, weapon: WeaponEnum | DamageDeathReasonEnum): void;
1868
+ sendDeathMessage(killer: Player | InvalidEnum.PLAYER_ID, weapon: WeaponEnum | DamageDeathReasonEnum): void;
1869
+ sendDeathMessageToPlayer(killer: Player | InvalidEnum.PLAYER_ID, killee: Player | InvalidEnum.PLAYER_ID, weapon: WeaponEnum | DamageDeathReasonEnum): void;
1068
1870
  setSpawnInfo(team: number, skin: number, x: number, y: number, z: number, rotation: number, weapon1: WeaponEnum, weapon1_ammo: number, weapon2: WeaponEnum, weapon2_ammo: number, weapon3: WeaponEnum, weapon3_ammo: number): void;
1069
1871
  redirectDownload(url: string): number;
1070
1872
  sendClientCheck(type: number, memAddr: number, memOffset: number, byteCount: number): void | Promise<IClientResRaw>;
1071
- selectTextDraw(colour: string | number): void;
1873
+ selectTextDraw(color: string | number): void;
1072
1874
  cancelSelectTextDraw(): void;
1073
1875
  beginObjectSelecting(): void;
1074
1876
  endObjectEditing(): void;
1075
- getSurfingObject<O extends DynamicObject>(objects: Map<number, O>): void | O;
1877
+ getSurfingObject(objects: Map<number, DynamicObject>): void | DynamicObject;
1878
+ getSurfingPlayerObject(objects: Map<number, DynamicObject>): void | DynamicObject;
1076
1879
  isAttachedObjectSlotUsed(index: number): boolean;
1077
- setAttachedObject(index: number, modelid: number, bone: BoneIdsEnum, fOffsetX: number, fOffsetY: number, fOffsetZ: number, fRotX: number, fRotY: number, fRotZ: number, fScaleX: number, fScaleY: number, fScaleZ: number, materialcolour1: string | number, materialcolour2: string | number): void | number;
1880
+ setAttachedObject(index: number, modelId: number, bone: BoneIdsEnum, fOffsetX: number, fOffsetY: number, fOffsetZ: number, fRotX: number, fRotY: number, fRotZ: number, fScaleX: number, fScaleY: number, fScaleZ: number, materialColor1: string | number, materialColor2: string | number): void | number;
1078
1881
  removeAttachedObject(index: number): number;
1882
+ getAnimationFlags(): number;
1883
+ getLastSyncedTrailerID(): number;
1884
+ getLastSyncedVehicleID(): number;
1079
1885
  toggleWidescreen(set: boolean): number;
1080
- isPlayerWidescreenToggled(): boolean;
1081
- getSpawnInfo(): _infernus_wrapper.IPlayerClass;
1886
+ isWidescreenToggled(): boolean;
1887
+ getSpawnInfo(): IPlayerClass;
1082
1888
  getSkillLevel(skill: WeaponSkillsEnum): number;
1083
1889
  isCheckpointActive(): boolean;
1084
- getCheckpoint(): _infernus_wrapper.ICheckPoint;
1890
+ getCheckpoint(): ICheckPoint;
1085
1891
  isRaceCheckpointActive(): boolean;
1086
- getRaceCheckpoint(): _infernus_wrapper.IRaceCheckPoint;
1892
+ getRaceCheckpoint(): IRaceCheckPoint;
1087
1893
  getWorldBounds(): void;
1088
1894
  isInModShop(): boolean;
1089
1895
  getSirenState(): number;
@@ -1091,8 +1897,8 @@ declare class Player {
1091
1897
  getHydraReactorAngle(): number;
1092
1898
  getTrainSpeed(): number;
1093
1899
  getZAim(): number;
1094
- getSurfingOffsets(): _infernus_wrapper.IOffsets;
1095
- getRotationQuat(): _infernus_wrapper.IQuat;
1900
+ getSurfingOffsets(): IOffsets;
1901
+ getRotationQuat(): IQuat;
1096
1902
  getDialogID(): number;
1097
1903
  getSpectateID(): number;
1098
1904
  getSpectateType(): SpectateModesEnum;
@@ -1106,231 +1912,18 @@ declare class Player {
1106
1912
  toggleGhostMode(toggle: boolean): number;
1107
1913
  getGhostMode(): boolean;
1108
1914
  getBuildingsRemoved(): number;
1109
- getAttachedObject(index: number): _infernus_wrapper.IAttachedObject;
1110
- removeWeapon(weaponid: number): number;
1915
+ getAttachedObject(index: number): IAttachedObject;
1916
+ removeWeapon(weaponId: number): number;
1111
1917
  isUsingOfficialClient(): boolean;
1112
1918
  allowWeapons(allow: boolean): boolean;
1113
1919
  areWeaponsAllowed(): boolean;
1114
1920
  gpci(charset?: string): string;
1115
- }
1116
-
1117
- declare class PlayerEvent<P extends Player> {
1118
- private readonly players;
1119
- private static cmdBus;
1120
- constructor(newPlayerFn: (id: number) => P);
1121
- findPlayerById(playerid: number): P | undefined;
1122
- getPlayersArr(): Array<P>;
1123
- getPlayersMap(): Map<number, P>;
1124
- readonly throttleUpdate: lodash.DebouncedFunc<(player: P) => TCommonCallback | undefined>;
1125
- private static fpsHeartbeat;
1126
- readonly onCommandText: (name: TEventName, fn: TEventFunc<this, P> | TEventFunc<this, P>[]) => (() => void);
1127
- readonly offCommandText: (name: TEventName, fn: TEventFunc<this, P> | TEventFunc<this, P>[]) => void;
1128
- private promiseCommand;
1129
- onConnect?(player: P): TCommonCallback;
1130
- onDisconnect?(player: P, reason: number): TCommonCallback;
1131
- onText?(player: P, text: string): TCommonCallback;
1132
- onCommandReceived?(player: P, command: string): TCommonCallback;
1133
- onCommandPerformed?(player: P, command: string): TCommonCallback;
1134
- onCommandError?(player: P, command: string, err: ICmdErr): TCommonCallback;
1135
- onEnterExitModShop?(player: P, enterexit: number, interiorid: number): TCommonCallback;
1136
- onClickMap?(player: P, fX: number, fY: number, fZ: number): TCommonCallback;
1137
- onClickPlayer?(player: P, clickedPlayer: P, source: number): TCommonCallback;
1138
- onDeath?(player: P, killer: P | InvalidEnum.PLAYER_ID, reason: number): TCommonCallback;
1139
- onGiveDamage?(player: P, damage: P, amount: number, weaponid: WeaponEnum, bodypart: BodyPartsEnum): TCommonCallback;
1140
- onKeyStateChange?(player: P, newkeys: KeysEnum, oldkeys: KeysEnum): TCommonCallback;
1141
- onRequestClass?(player: P, classid: number): TCommonCallback;
1142
- onRequestSpawn?(player: P): TCommonCallback;
1143
- onSpawn?(player: P): TCommonCallback;
1144
- onStateChange?(player: P, newstate: PlayerStateEnum, oldstate: PlayerStateEnum): TCommonCallback;
1145
- onStreamIn?(player: P, forPlayer: P): TCommonCallback;
1146
- onStreamOut?(player: P, forPlayer: P): TCommonCallback;
1147
- onTakeDamage?(player: P, damage: P | InvalidEnum.PLAYER_ID, amount: number, weaponid: WeaponEnum, bodypart: BodyPartsEnum): TCommonCallback;
1148
- onUpdate?(player: P): TCommonCallback;
1149
- onInteriorChange?(player: P, newinteriorid: number, oldinteriorid: number): TCommonCallback;
1150
- onPause?(player: P, timestamp: number): TCommonCallback;
1151
- onResume?(player: P, pauseMs: number): TCommonCallback;
1152
- onRequestDownload?(player: P, type: number, crc: number): TCommonCallback;
1153
- onFinishedDownloading?(player: P, virtualworld: number): TCommonCallback;
1154
- }
1155
-
1156
- interface IDialog {
1157
- style?: DialogStylesEnum;
1158
- caption?: string;
1159
- info?: string;
1160
- button1?: string;
1161
- button2?: string;
1162
- }
1163
- interface IDialogResCommon {
1164
- response: number;
1165
- listitem: number;
1166
- }
1167
- interface IDialogResRaw extends IDialogResCommon {
1168
- inputbuf: number[];
1169
- }
1170
- interface IDialogResResult extends IDialogResCommon {
1171
- inputtext: string;
1172
- }
1173
- interface ICmdErr {
1174
- code: number;
1175
- msg: string;
1176
- }
1177
- interface IVehicle {
1178
- modelid: number;
1179
- x: number;
1180
- y: number;
1181
- z: number;
1182
- z_angle: number;
1183
- colour1: string | number;
1184
- colour2: string | number;
1185
- respawn_delay?: number;
1186
- addsiren?: boolean;
1187
- }
1188
- interface IAnimateInfo {
1189
- n: string;
1190
- d: number;
1191
- }
1192
- interface IGangZone<P extends Player> {
1193
- player?: P;
1194
- minx: number;
1195
- miny: number;
1196
- maxx: number;
1197
- maxy: number;
1198
- }
1199
- interface ICommonTextDrawKey {
1200
- id: number;
1201
- global: boolean;
1202
- }
1203
- interface ITextDraw<P extends Player> {
1204
- player?: P;
1205
- x: number;
1206
- y: number;
1207
- text: string;
1208
- }
1209
- interface IDialogFuncQueue {
1210
- showId: number;
1211
- resolve: (value: IDialogResRaw | PromiseLike<IDialogResRaw>) => void;
1212
- reject: (reason: string) => void;
1213
- }
1214
- interface IDynamic {
1215
- worldid?: TStreamerExtendable;
1216
- interiorid?: TStreamerExtendable;
1217
- playerid?: TStreamerExtendable;
1218
- extended?: boolean;
1219
- }
1220
- interface IDynamicCommon extends IDynamic {
1221
- x: number;
1222
- y: number;
1223
- z: number;
1224
- areaid?: TStreamerExtendable;
1225
- streamdistance?: number;
1226
- priority?: number;
1227
- }
1228
- interface IDynamicMapIcon extends IDynamicCommon {
1229
- type: number;
1230
- colour: string | number;
1231
- style?: MapIconStyles;
1232
- }
1233
- interface IDynamicPickup extends IDynamicCommon {
1234
- type: number;
1235
- modelid: number;
1236
- }
1237
- interface IDynamicCheckPoint extends IDynamicCommon {
1238
- size: number;
1239
- }
1240
- interface IDynamicRaceCp extends IDynamicCheckPoint {
1241
- type: number;
1242
- nextx: number;
1243
- nexty: number;
1244
- nextz: number;
1245
- }
1246
- interface IDynamicActor extends IDynamicCommon {
1247
- r: number;
1248
- modelid: number;
1249
- invulnerable: boolean;
1250
- health: number;
1251
- }
1252
- interface IDynamic3DTextLabel extends IDynamicCommon {
1253
- charset?: string;
1254
- text: string;
1255
- colour: string | number;
1256
- attachedplayer?: number;
1257
- attachedvehicle?: number;
1258
- testlos?: boolean;
1259
- drawdistance: number;
1260
- }
1261
- interface IDynamicObject extends IDynamicCommon {
1262
- charset?: string;
1263
- modelid: number;
1264
- rx: number;
1265
- ry: number;
1266
- rz: number;
1267
- drawdistance?: number;
1268
- }
1269
- interface IClientResRaw {
1270
- actionid: number;
1271
- memaddr: number;
1272
- retndata: number;
1273
- }
1274
- interface IClientFuncQueue {
1275
- resolve: (value: IClientResRaw | PromiseLike<IClientResRaw>) => void;
1276
- reject: (reason: string) => void;
1277
- timeout: NodeJS.Timeout;
1278
- }
1279
- interface ICommonGangZoneKey {
1280
- id: number;
1281
- global: boolean;
1282
- }
1283
- interface IDynamicCircleCommon extends IDynamic {
1284
- x: number;
1285
- y: number;
1286
- size: number;
1287
- }
1288
- interface IDynamicCircle extends IDynamicCircleCommon {
1289
- type: "circle";
1290
- }
1291
- interface IDynamicCylinder extends IDynamicCircleCommon {
1292
- type: "cylinder";
1293
- minz: number;
1294
- maxz: number;
1295
- }
1296
- interface IDynamicSphere extends IDynamicCircleCommon {
1297
- type: "sphere";
1298
- z: number;
1299
- }
1300
- interface IDynamicRectangleCommon extends IDynamic {
1301
- minx: number;
1302
- miny: number;
1303
- maxx: number;
1304
- maxy: number;
1305
- }
1306
- interface IDynamicRectangle extends IDynamicRectangleCommon {
1307
- type: "rectangle";
1308
- }
1309
- interface IDynamicCuboid extends IDynamicRectangleCommon {
1310
- type: "cuboid";
1311
- minz: number;
1312
- maxz: number;
1313
- }
1314
- interface IDynamicPolygon extends IDynamic {
1315
- type: "polygon";
1316
- points: number[];
1317
- minz: number;
1318
- maxz: number;
1319
- }
1320
- interface IDynamicAreaKey {
1321
- id: number;
1322
- type: TDynamicAreaTypes;
1323
- }
1324
-
1325
- interface IFilterScript {
1326
- name: string;
1327
- load: (...args: Array<any>) => any;
1328
- unload: () => any;
1329
- [propName: string | number | symbol]: any;
1921
+ static getInstance(id: number): Player | undefined;
1922
+ static getInstances(): Player[];
1330
1923
  }
1331
1924
 
1332
1925
  type TEventName = string | string[];
1333
- type TEventFunc<EventInstance, P> = (this: EventInstance, player: P, ...args: string[]) => boolean | number | void | Promise<boolean | number | void>;
1926
+ type TEventFunc<EventInstance> = (this: EventInstance, player: Player, ...args: string[]) => boolean | number | void | Promise<boolean | number | void>;
1334
1927
  type TLocales = Record<string, Record<string, any>>;
1335
1928
  type TPos = {
1336
1929
  x: number;
@@ -1351,143 +1944,236 @@ declare class I18n {
1351
1944
  $t: (key: string, replaceable?: any[] | undefined | null, locale?: keyof TLocales) => string;
1352
1945
  static isValidate(charset: string): void;
1353
1946
  static encodeToBuf(content: string, charset: string): number[];
1354
- static decodeFromBuf(buf: Buffer | number[], charset: string): string;
1947
+ static decodeFromBuf(buf: Buffer | number[], charset?: string): string;
1355
1948
  static getValidStr(byteArr: number[]): number[];
1356
- static snakeLocaleKeys(locales: TLocales): lodash.Dictionary<Record<string, any>>;
1357
- }
1358
-
1359
- declare class Dialog<T extends Player> {
1360
- private id;
1361
- private static showingIds;
1362
- private static max_dialogId;
1363
- private dialog;
1364
- static waitingQueue: Map<number, IDialogFuncQueue>;
1365
- constructor(dialog?: IDialog);
1366
- get style(): DialogStylesEnum | undefined;
1367
- set style(v: DialogStylesEnum | undefined);
1368
- get caption(): string | undefined;
1369
- set caption(v: string | undefined);
1370
- get info(): string | undefined;
1371
- set info(v: string | undefined);
1372
- get button1(): string | undefined;
1373
- set button1(v: string | undefined);
1374
- get button2(): string | undefined;
1375
- set button2(v: string | undefined);
1376
- private static delDialogTask;
1377
- show(player: T): Promise<IDialogResResult>;
1378
- static close<T extends Player>(player: T): void;
1949
+ static snakeLocaleKeys(locales: TLocales): any;
1379
1950
  }
1380
1951
 
1381
- declare class NpcEvent {
1382
- constructor();
1383
- onConnect?(myplayerid: number): TCommonCallback;
1384
- onDisconnect?(reason: string): TCommonCallback;
1385
- onModeInit?(): TCommonCallback;
1386
- onModeExit?(): TCommonCallback;
1387
- onSpawn?(): TCommonCallback;
1388
- onClientMessage?(colour: number, text: string): TCommonCallback;
1389
- }
1952
+ declare const NpcEvent: Readonly<{
1953
+ onConnect: (cb: (ret: {
1954
+ myPlayerId: number;
1955
+ } & {
1956
+ next: () => CallbackRet;
1957
+ }) => PromisifyCallbackRet) => () => void;
1958
+ onDisconnect: (cb: (ret: {
1959
+ reason: string;
1960
+ } & {
1961
+ next: () => CallbackRet;
1962
+ }) => PromisifyCallbackRet) => () => void;
1963
+ onModeInit: (cb: (ret: object & {
1964
+ next: () => CallbackRet;
1965
+ }) => PromisifyCallbackRet) => () => void;
1966
+ onModeExit: (cb: (ret: object & {
1967
+ next: () => CallbackRet;
1968
+ }) => PromisifyCallbackRet) => () => void;
1969
+ onSpawn: (cb: (ret: object & {
1970
+ next: () => CallbackRet;
1971
+ }) => PromisifyCallbackRet) => () => void;
1972
+ onClientMessage: (cb: (ret: {
1973
+ color: number;
1974
+ buffer: number[];
1975
+ string: string;
1976
+ } & {
1977
+ next: () => CallbackRet;
1978
+ }) => PromisifyCallbackRet) => () => void;
1979
+ }>;
1390
1980
 
1391
- declare class NpcFunc {
1981
+ declare class Npc {
1392
1982
  private constructor();
1393
1983
  private static recordStatus;
1394
1984
  static readonly connectNPC: (name: string, script: string) => number;
1395
- static startRecordingPlayerData<P extends Player>(player: P, recordtype: RecordTypesEnum, recordname: string): void;
1396
- static stopRecordingPlayerData<P extends Player>(player: P): void;
1985
+ static startRecordingPlayerData(player: Player, recordtype: RecordTypesEnum, recordname: string): void;
1986
+ static stopRecordingPlayerData(player: Player): void;
1397
1987
  static startRecordingPlayback(playbacktype: RecordTypesEnum, recordname: string): void;
1398
1988
  static stopRecordingPlayback(): void;
1399
1989
  static pauseRecordingPlayback(): void;
1400
1990
  static resumeRecordingPlayback(): void;
1401
1991
  }
1402
1992
 
1403
- declare class GameMode {
1404
- static charset: string;
1405
- private initialized;
1406
- constructor();
1407
- isInitialized(): boolean;
1408
- static exit(): void;
1409
- static use: (plugin: IFilterScript, ...options: Array<any>) => typeof GameMode;
1410
- static loadScript: (scriptName: string) => void;
1411
- static unloadScript: (scriptName: string) => void;
1412
- static reloadScript: (scriptName: string) => void;
1413
- static supportAllNickname(): void;
1414
- onInit?(): void;
1415
- onExit?(): void;
1416
- onIncomingConnection?(playerid: number, ipAddress: string, port: number): TCommonCallback;
1417
- onRconCommand?(cmd: string): TCommonCallback;
1418
- onRconLoginAttempt?(ip: string, password: string, success: boolean): TCommonCallback;
1419
- static allowAdminTeleport: (allow: boolean) => void;
1420
- static isAdminTeleportAllowed: () => boolean;
1421
- static allowInteriorWeapons: (allow: boolean) => void;
1422
- static areInteriorWeaponsAllowed: () => boolean;
1423
- static areAllAnimationsEnabled: () => boolean;
1424
- static enableAllAnimations: (enable: boolean) => void;
1425
- static enableStuntBonusForAll: (enable: boolean) => number;
1426
- static enableVehicleFriendlyFire: () => number;
1427
- static enableZoneNames: (enable: boolean) => number;
1428
- static disableInteriorEnterExits: () => number;
1429
- static setGameModeText: (string: string) => number;
1430
- static getGravity: () => number;
1431
- static setGravity: (gravity: number) => number;
1432
- static showNameTags: (show: boolean) => number;
1433
- static disableNameTagLOS: () => number;
1434
- static usePlayerPedAnims: () => number;
1435
- static showPlayerMarkers: (mode: MarkerModesEnum) => number;
1436
- static limitPlayerMarkerRadius: (marker_radius: number) => number;
1437
- static limitGlobalChatRadius: (chat_radius: number) => number;
1438
- static setNameTagDrawDistance: (distance: number) => number;
1439
- static setWeather(weather: number): number;
1440
- static setWorldTime(hour: number): number;
1441
- static setTeamCount: (count: number) => number;
1442
- static sendRconCommand: (command: string) => number;
1443
- static addPlayerClass: (modelid: number, spawn_x: number, spawn_y: number, spawn_z: number, z_angle: number, weapon1: number, weapon1_ammo: number, weapon2: number, weapon2_ammo: number, weapon3: number, weapon3_ammo: number) => number;
1444
- static addPlayerClassEx: (teamid: number, modelid: number, spawn_x: number, spawn_y: number, spawn_z: number, z_angle: number, weapon1: number, weapon1_ammo: number, weapon2: number, weapon2_ammo: number, weapon3: number, weapon3_ammo: number) => number;
1445
- static createExplosion(X: number, Y: number, Z: number, type: number, Radius: number): number;
1446
- static manualVehicleEngineAndLights: () => number;
1447
- static blockIpAddress: (ip_address: string, timems: number) => number;
1448
- static unBlockIpAddress: (ip_address: string) => number;
1449
- static getServerTickRate: () => number;
1450
- static addSimpleModel(virtualworld: number, baseid: number, newid: number, dffname: string, txdname: string): number;
1451
- static addSimpleModelTimed(virtualworld: number, baseid: number, newid: number, dffname: string, txdname: string, timeon: number, timeoff: number): number;
1452
- private static checkSimpleModel;
1453
- static findModelFileNameFromCRC: (crc: number) => string;
1454
- static findTextureFileNameFromCRC: (crc: number) => string;
1455
- static getWeaponName: (weaponid: number) => string;
1456
- static setObjectsDefaultCameraCollision: (disable: boolean) => boolean;
1457
- static vectorSize: (x1: number, y1: number, z1: number, x2: number, y2: number, z2: number) => number;
1458
- static clearBanList: () => void;
1459
- static isBanned: (ipaddress: string) => boolean;
1460
- static isValidNickName: (name: string) => boolean;
1461
- static allowNickNameCharacter: (byte: number, allow: boolean) => void;
1462
- static isNickNameCharacterAllowed: (byte: number) => boolean;
1463
- static addServerRule: (name: string, value: string) => boolean;
1464
- static setServerRule: (name: string, value: string) => boolean;
1465
- static isValidServerRule: (name: string) => boolean;
1466
- static removeServerRule: (name: string) => boolean;
1467
- static getWeaponSlot: (weaponid: number) => number;
1468
- static getAvailableClasses: () => number;
1469
- static getPlayerClass: (classid: number) => boolean | _infernus_wrapper.IPlayerClass;
1470
- static editPlayerClass: (classid: number, teamid: number, modelid: number, spawn_x: number, spawn_y: number, spawn_z: number, z_angle: number, weapon1: number, weapon1_ammo: number, weapon2: number, weapon2_ammo: number, weapon3: number, weapon3_ammo: number) => boolean;
1471
- static toggleChatTextReplacement: (toggle: boolean) => void;
1472
- static chatTextReplacementToggled: () => boolean;
1473
- }
1993
+ declare const GameMode: {
1994
+ use(plugin: IFilterScript, ...options: any[]): {
1995
+ use(plugin: IFilterScript, ...options: any[]): any;
1996
+ loadUseScript: (scriptName: string) => void;
1997
+ reloadUseScript: (scriptName: string) => void;
1998
+ unloadUseScript: (scriptName: string) => void;
1999
+ supportAllNickname(): void;
2000
+ setWeather(weather: number): number;
2001
+ setWorldTime(hour: number): number;
2002
+ getWorldTime: () => number;
2003
+ setTeamCount: (count: number) => number;
2004
+ sendRconCommand: (command: string) => number;
2005
+ addPlayerClass: (modelId: number, spawn_x: number, spawn_y: number, spawn_z: number, z_angle: number, weapon1: number, weapon1_ammo: number, weapon2: number, weapon2_ammo: number, weapon3: number, weapon3_ammo: number) => number;
2006
+ addPlayerClassEx: (teamId: number, modelId: number, spawn_x: number, spawn_y: number, spawn_z: number, z_angle: number, weapon1: number, weapon1_ammo: number, weapon2: number, weapon2_ammo: number, weapon3: number, weapon3_ammo: number) => number;
2007
+ createExplosion(X: number, Y: number, Z: number, type: number, radius: number): number;
2008
+ manualVehicleEngineAndLights: () => number;
2009
+ blockIpAddress: (ip_address: string, timeMs: number) => number;
2010
+ unBlockIpAddress: (ip_address: string) => number;
2011
+ getServerTickRate: () => number;
2012
+ addSimpleModel(virtualWorld: number, baseid: number, newid: number, dffname: string, txdName: string): number;
2013
+ addSimpleModelTimed(virtualWorld: number, baseid: number, newid: number, dffname: string, txdName: string, timeon: number, timeoff: number): number;
2014
+ checkSimpleModel(virtualWorld: number, baseid: number, newid: number, dffname: string, txdName: string, timeon?: number | undefined, timeoff?: number | undefined): number;
2015
+ getConsoleVarAsString(varname: string, charset?: string): string;
2016
+ getRestartTime: () => number;
2017
+ setRestartTime: (seconds: number) => boolean;
2018
+ allowAdminTeleport: (allow: boolean) => void;
2019
+ isAdminTeleportAllowed: () => boolean;
2020
+ allowInteriorWeapons: (allow: boolean) => void;
2021
+ areInteriorWeaponsAllowed: () => boolean;
2022
+ areAllAnimationsEnabled: () => boolean;
2023
+ enableAllAnimations: (enable: boolean) => void;
2024
+ enableStuntBonusForAll: (enable: boolean) => number;
2025
+ enableVehicleFriendlyFire: () => number;
2026
+ enableZoneNames: (enable: boolean) => number;
2027
+ disableInteriorEnterExits: () => number;
2028
+ setGameModeText: (string: string) => number;
2029
+ getGravity: () => number;
2030
+ setGravity: (gravity: number) => number;
2031
+ showNameTags: (show: boolean) => number;
2032
+ disableNameTagLOS: () => number;
2033
+ usePlayerPedAnims: () => number;
2034
+ showPlayerMarkers: (mode: MarkerModesEnum) => number;
2035
+ limitPlayerMarkerRadius: (marker_radius: number) => number;
2036
+ limitGlobalChatRadius: (chat_radius: number) => number;
2037
+ setNameTagDrawDistance: (distance: number) => number;
2038
+ findModelFileNameFromCRC: (crc: number) => string;
2039
+ findTextureFileNameFromCRC: (crc: number) => string;
2040
+ getWeaponName: (weaponId: number) => string;
2041
+ setObjectsDefaultCameraCollision: (disable: boolean) => boolean;
2042
+ vectorSize: (x1: number, y1: number, z1: number, x2: number, y2: number, z2: number) => number;
2043
+ clearBanList: () => void;
2044
+ isBanned: (ipAddress: string) => boolean;
2045
+ isValidNickName: (name: string) => boolean;
2046
+ allowNickNameCharacter: (byte: number, allow: boolean) => void;
2047
+ isNickNameCharacterAllowed: (byte: number) => boolean;
2048
+ addServerRule: (name: string, value: string) => boolean;
2049
+ setServerRule: (name: string, value: string) => boolean;
2050
+ isValidServerRule: (name: string) => boolean;
2051
+ removeServerRule: (name: string) => boolean;
2052
+ getWeaponSlot: (weaponId: number) => number;
2053
+ getAvailableClasses: () => number;
2054
+ getPlayerClass: (classId: number) => boolean | IPlayerClass;
2055
+ editPlayerClass: (classId: number, teamId: number, modelId: number, spawn_x: number, spawn_y: number, spawn_z: number, z_angle: number, weapon1: number, weapon1_ammo: number, weapon2: number, weapon2_ammo: number, weapon3: number, weapon3_ammo: number) => boolean;
2056
+ toggleChatTextReplacement: (toggle: boolean) => void;
2057
+ chatTextReplacementToggled: () => boolean;
2058
+ getConsoleVarAsInt: (varname: string) => number;
2059
+ getConsoleVarAsBool: (varname: string) => boolean;
2060
+ getWeather: () => number;
2061
+ getServerRuleFlag: (rule: string) => number;
2062
+ setServerRuleFlags: (rule: string, flags: number) => boolean;
2063
+ };
2064
+ loadUseScript: (scriptName: string) => void;
2065
+ reloadUseScript: (scriptName: string) => void;
2066
+ unloadUseScript: (scriptName: string) => void;
2067
+ supportAllNickname(): void;
2068
+ setWeather(weather: number): number;
2069
+ setWorldTime(hour: number): number;
2070
+ getWorldTime: () => number;
2071
+ setTeamCount: (count: number) => number;
2072
+ sendRconCommand: (command: string) => number;
2073
+ addPlayerClass: (modelId: number, spawn_x: number, spawn_y: number, spawn_z: number, z_angle: number, weapon1: number, weapon1_ammo: number, weapon2: number, weapon2_ammo: number, weapon3: number, weapon3_ammo: number) => number;
2074
+ addPlayerClassEx: (teamId: number, modelId: number, spawn_x: number, spawn_y: number, spawn_z: number, z_angle: number, weapon1: number, weapon1_ammo: number, weapon2: number, weapon2_ammo: number, weapon3: number, weapon3_ammo: number) => number;
2075
+ createExplosion(X: number, Y: number, Z: number, type: number, radius: number): number;
2076
+ manualVehicleEngineAndLights: () => number;
2077
+ blockIpAddress: (ip_address: string, timeMs: number) => number;
2078
+ unBlockIpAddress: (ip_address: string) => number;
2079
+ getServerTickRate: () => number;
2080
+ addSimpleModel(virtualWorld: number, baseid: number, newid: number, dffname: string, txdName: string): number;
2081
+ addSimpleModelTimed(virtualWorld: number, baseid: number, newid: number, dffname: string, txdName: string, timeon: number, timeoff: number): number;
2082
+ checkSimpleModel(virtualWorld: number, baseid: number, newid: number, dffname: string, txdName: string, timeon?: number | undefined, timeoff?: number | undefined): number;
2083
+ getConsoleVarAsString(varname: string, charset?: string): string;
2084
+ getRestartTime: () => number;
2085
+ setRestartTime: (seconds: number) => boolean;
2086
+ allowAdminTeleport: (allow: boolean) => void;
2087
+ isAdminTeleportAllowed: () => boolean;
2088
+ allowInteriorWeapons: (allow: boolean) => void;
2089
+ areInteriorWeaponsAllowed: () => boolean;
2090
+ areAllAnimationsEnabled: () => boolean;
2091
+ enableAllAnimations: (enable: boolean) => void;
2092
+ enableStuntBonusForAll: (enable: boolean) => number;
2093
+ enableVehicleFriendlyFire: () => number;
2094
+ enableZoneNames: (enable: boolean) => number;
2095
+ disableInteriorEnterExits: () => number;
2096
+ setGameModeText: (string: string) => number;
2097
+ getGravity: () => number;
2098
+ setGravity: (gravity: number) => number;
2099
+ showNameTags: (show: boolean) => number;
2100
+ disableNameTagLOS: () => number;
2101
+ usePlayerPedAnims: () => number;
2102
+ showPlayerMarkers: (mode: MarkerModesEnum) => number;
2103
+ limitPlayerMarkerRadius: (marker_radius: number) => number;
2104
+ limitGlobalChatRadius: (chat_radius: number) => number;
2105
+ setNameTagDrawDistance: (distance: number) => number;
2106
+ findModelFileNameFromCRC: (crc: number) => string;
2107
+ findTextureFileNameFromCRC: (crc: number) => string;
2108
+ getWeaponName: (weaponId: number) => string;
2109
+ setObjectsDefaultCameraCollision: (disable: boolean) => boolean;
2110
+ vectorSize: (x1: number, y1: number, z1: number, x2: number, y2: number, z2: number) => number;
2111
+ clearBanList: () => void;
2112
+ isBanned: (ipAddress: string) => boolean;
2113
+ isValidNickName: (name: string) => boolean;
2114
+ allowNickNameCharacter: (byte: number, allow: boolean) => void;
2115
+ isNickNameCharacterAllowed: (byte: number) => boolean;
2116
+ addServerRule: (name: string, value: string) => boolean;
2117
+ setServerRule: (name: string, value: string) => boolean;
2118
+ isValidServerRule: (name: string) => boolean;
2119
+ removeServerRule: (name: string) => boolean;
2120
+ getWeaponSlot: (weaponId: number) => number;
2121
+ getAvailableClasses: () => number;
2122
+ getPlayerClass: (classId: number) => boolean | IPlayerClass;
2123
+ editPlayerClass: (classId: number, teamId: number, modelId: number, spawn_x: number, spawn_y: number, spawn_z: number, z_angle: number, weapon1: number, weapon1_ammo: number, weapon2: number, weapon2_ammo: number, weapon3: number, weapon3_ammo: number) => boolean;
2124
+ toggleChatTextReplacement: (toggle: boolean) => void;
2125
+ chatTextReplacementToggled: () => boolean;
2126
+ getConsoleVarAsInt: (varname: string) => number;
2127
+ getConsoleVarAsBool: (varname: string) => boolean;
2128
+ getWeather: () => number;
2129
+ getServerRuleFlag: (rule: string) => number;
2130
+ setServerRuleFlags: (rule: string, flags: number) => boolean;
2131
+ onInit: (cb: (ret: object & {
2132
+ next: () => CallbackRet;
2133
+ }) => PromisifyCallbackRet) => () => void;
2134
+ onExit: (cb: (ret: object & {
2135
+ next: () => CallbackRet;
2136
+ }) => PromisifyCallbackRet) => () => void;
2137
+ onIncomingConnection: (cb: (ret: {
2138
+ playerId: number;
2139
+ ipAddress: string;
2140
+ port: number;
2141
+ } & {
2142
+ next: () => CallbackRet;
2143
+ }) => PromisifyCallbackRet) => () => void;
2144
+ onRconCommand: (cb: (ret: {
2145
+ buffer: number[];
2146
+ cmd: string;
2147
+ } & {
2148
+ next: () => CallbackRet;
2149
+ }) => PromisifyCallbackRet) => () => void;
2150
+ onRconLoginAttempt: (cb: (ret: {
2151
+ ip: string;
2152
+ password: string;
2153
+ success: boolean;
2154
+ ipBuffer: number[];
2155
+ passwordBuffer: number[];
2156
+ } & {
2157
+ next: () => CallbackRet;
2158
+ }) => PromisifyCallbackRet) => () => void;
2159
+ };
1474
2160
 
1475
2161
  declare class NetStats {
1476
2162
  private constructor();
1477
2163
  static getNetworkStats(): string;
1478
- static getPlayerNetworkStats<P extends Player>(player: P): string;
1479
- static getBytesReceived<P extends Player>(player: P): number;
1480
- static getBytesSent<P extends Player>(player: P): number;
1481
- static getConnectionStatus<P extends Player>(player: P): ConnectionStatusEnum;
1482
- static getConnectedTime<P extends Player>(player: P): number;
1483
- static getIpPort<P extends Player>(player: P): string;
1484
- static getMessagesReceived<P extends Player>(player: P): number;
1485
- static getMessagesRecvPerSecond<P extends Player>(player: P): number;
1486
- static getMessagesSent<P extends Player>(player: P): number;
1487
- static getPacketLossPercent<P extends Player>(player: P): number;
1488
- }
1489
-
1490
- declare class GameText<P extends Player = Player> {
2164
+ static getPlayerNetworkStats(player: Player): string;
2165
+ static getBytesReceived(player: Player): number;
2166
+ static getBytesSent(player: Player): number;
2167
+ static getConnectionStatus(player: Player): ConnectionStatusEnum;
2168
+ static getConnectedTime(player: Player): number;
2169
+ static getIpPort(player: Player): string;
2170
+ static getMessagesReceived(player: Player): number;
2171
+ static getMessagesRecvPerSecond(player: Player): number;
2172
+ static getMessagesSent(player: Player): number;
2173
+ static getPacketLossPercent(player: Player): number;
2174
+ }
2175
+
2176
+ declare class GameText {
1491
2177
  private _text;
1492
2178
  private _time;
1493
2179
  private _style;
@@ -1499,17 +2185,17 @@ declare class GameText<P extends Player = Player> {
1499
2185
  set style(value: number);
1500
2186
  constructor(str: string, time: number, style: number);
1501
2187
  static hideForAll(style: number): void;
1502
- static has<P extends Player>(player: P, style: number): boolean;
2188
+ static has(player: Player, style: number): boolean;
1503
2189
  forAll(): void;
1504
- forPlayer(player: P): void;
1505
- hideForPlayer(player: P): boolean;
2190
+ forPlayer(player: Player): void;
2191
+ hideForPlayer(player: Player): boolean;
1506
2192
  }
1507
2193
 
1508
2194
  declare class Menu {
1509
- private static menuCount;
1510
- private _id;
2195
+ private static readonly menus;
1511
2196
  private _itemCount;
1512
2197
  get itemCount(): number;
2198
+ private _id;
1513
2199
  get id(): number;
1514
2200
  private _title;
1515
2201
  get title(): string;
@@ -1537,9 +2223,8 @@ declare class Menu {
1537
2223
  disable(): void | this;
1538
2224
  disableRow(row: number): void;
1539
2225
  isValid(): boolean;
1540
- showForPlayer<P extends Player>(player: P): void | number;
1541
- hideForPlayer<P extends Player>(player: P): void | number;
1542
- static getMenu<M extends Menu, P extends Player>(player: P, menus: Array<M>): M | undefined;
2226
+ showForPlayer(player: Player): void | number;
2227
+ hideForPlayer(player: Player): void | number;
1543
2228
  isDisabled(): boolean;
1544
2229
  isRowDisabled(row: number): boolean;
1545
2230
  getItems(column: number): number;
@@ -1553,75 +2238,113 @@ declare class Menu {
1553
2238
  };
1554
2239
  getColumnHeader(column: number): void | string;
1555
2240
  getItem(column: number, item: number): void | string;
2241
+ static getInstance(id: number): Menu | undefined;
2242
+ static getInstances(): Menu[];
2243
+ static getInstanceByPlayer(player: Player): Menu | undefined;
1556
2244
  }
1557
2245
 
1558
- declare class MenuEvent<P extends Player, M extends Menu> {
1559
- private readonly menus;
1560
- private readonly players;
1561
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
1562
- onPlayerExited?(player: P, menu: M): TCommonCallback;
1563
- onPlayerSelectedRow?(player: P, menu: M, row: number): TCommonCallback;
1564
- private findPlayerById;
1565
- findMenuById(menuId: number): M | undefined;
1566
- getMenusArr(): Array<M>;
1567
- getMenusMap(): Map<number, M>;
1568
- }
2246
+ declare const MenuEvent: Readonly<{
2247
+ onPlayerExited: (cb: (ret: {
2248
+ player: Player;
2249
+ } & {
2250
+ next: () => CallbackRet;
2251
+ }) => PromisifyCallbackRet) => () => void;
2252
+ onPlayerSelectedRow: (cb: (ret: {
2253
+ player: Player;
2254
+ menu: Menu;
2255
+ row: number;
2256
+ } & {
2257
+ next: () => CallbackRet;
2258
+ }) => PromisifyCallbackRet) => () => void;
2259
+ }>;
1569
2260
 
1570
- declare class GangZone<P extends Player> {
2261
+ declare class GangZone {
2262
+ static readonly globalGangZones: Map<number, GangZone>;
2263
+ static readonly playerGangZones: Map<number, GangZone>;
2264
+ readonly sourceInfo: IGangZone;
2265
+ constructor(gangZone: IGangZone);
1571
2266
  private _id;
1572
- private static createdGlobalCount;
1573
- private static createdPlayerCount;
1574
- readonly sourceInfo: IGangZone<P>;
1575
- constructor(gangZone: IGangZone<P>);
1576
2267
  get id(): number;
1577
2268
  create(): void;
1578
2269
  destroy(): void;
1579
- showForAll(colour: string | number): void | this;
1580
- showForPlayer(colour: string | number, player?: P): void | this;
2270
+ showForAll(color: string | number): void | this;
2271
+ showForPlayer(color: string | number, player?: Player): void | this;
1581
2272
  hideForAll(): void | this;
1582
- hideForPlayer(player?: P): void | this;
1583
- flashForAll(flashcolour: string | number): void | this;
1584
- flashForPlayer(player: P, flashcolour: string | number): void | this;
1585
- StopFlashForAll(): void | this;
1586
- StopFlashForPlayer(player: P): void | this;
2273
+ hideForPlayer(player?: Player): void | this;
2274
+ flashForAll(flashColor: string | number): void | this;
2275
+ flashForPlayer(player: Player, flashColor: string | number): void | this;
2276
+ stopFlashForAll(): void | this;
2277
+ stopFlashForPlayer(player: Player): void | this;
1587
2278
  isValid(): boolean;
1588
- isPlayerIn(player: P): boolean;
1589
- isVisibleForPlayer(player: P): boolean;
1590
- getColourForPlayer(player: P): void | number;
1591
- getFlashColourForPlayer(player: P): void | number;
1592
- isFlashingForPlayer(player: P): boolean;
2279
+ isPlayerIn(player: Player): boolean;
2280
+ isVisibleForPlayer(player: Player): boolean;
2281
+ getColorForPlayer(player: Player): void | number;
2282
+ getFlashColorForPlayer(player: Player): void | number;
2283
+ isFlashingForPlayer(player: Player): boolean;
1593
2284
  getPos(): void | GangZonePos;
1594
2285
  useCheck(toggle: boolean): void | this;
1595
- private unregisterEvent;
2286
+ static getInstance(id: number, isGlobal: boolean): GangZone | undefined;
2287
+ static getInstances(isGlobal: boolean): GangZone[];
1596
2288
  }
1597
2289
 
1598
- declare class GangZoneEvent<P extends Player, G extends GangZone<P>> {
1599
- readonly gangZones: Map<ICommonGangZoneKey, G>;
1600
- private readonly players;
1601
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
1602
- onPlayerEnter?(player: P, gangZone: G): TCommonCallback;
1603
- onPlayerLeave?(player: P, gangZone: G): TCommonCallback;
1604
- }
2290
+ declare const GangZoneEvent: Readonly<{
2291
+ onPlayerEnterGlobal: (cb: (ret: {
2292
+ player: Player;
2293
+ gangZone: GangZone;
2294
+ } & {
2295
+ next: () => CallbackRet;
2296
+ }) => PromisifyCallbackRet) => () => void;
2297
+ onPlayerLeaveGlobal: (cb: (ret: {
2298
+ player: Player;
2299
+ gangZone: GangZone;
2300
+ } & {
2301
+ next: () => CallbackRet;
2302
+ }) => PromisifyCallbackRet) => () => void;
2303
+ onPlayerEnterPlayer: (cb: (ret: {
2304
+ player: Player;
2305
+ gangZone: GangZone;
2306
+ } & {
2307
+ next: () => CallbackRet;
2308
+ }) => PromisifyCallbackRet) => () => void;
2309
+ onPlayerLeavePlayer: (cb: (ret: {
2310
+ player: Player;
2311
+ gangZone: GangZone;
2312
+ } & {
2313
+ next: () => CallbackRet;
2314
+ }) => PromisifyCallbackRet) => () => void;
2315
+ onPlayerClickGlobal: (cb: (ret: {
2316
+ player: Player;
2317
+ gangZone: GangZone;
2318
+ } & {
2319
+ next: () => CallbackRet;
2320
+ }) => PromisifyCallbackRet) => () => void;
2321
+ onPlayerClickPlayer: (cb: (ret: {
2322
+ player: Player;
2323
+ gangZone: GangZone;
2324
+ } & {
2325
+ next: () => CallbackRet;
2326
+ }) => PromisifyCallbackRet) => () => void;
2327
+ }>;
1605
2328
 
1606
- declare class TextDraw<P extends Player> {
1607
- private static createdGlobalCount;
1608
- private static createdPlayerCount;
2329
+ declare class TextDraw {
2330
+ static readonly globalTextDraws: Map<number, TextDraw>;
2331
+ static readonly playerTextDraws: Map<number, TextDraw>;
1609
2332
  private readonly sourceInfo;
1610
2333
  private _id;
1611
2334
  get id(): number;
1612
- constructor(textDraw: ITextDraw<P>);
2335
+ constructor(textDraw: ITextDraw);
1613
2336
  create(): void | this;
1614
2337
  destroy(): void | this;
1615
2338
  setFont(style: 0 | 1 | 2 | 3 | TextDrawFontsEnum): void | this;
1616
- setColour(Colour: string | number): void | this;
1617
- setBoxColours(Colour: string | number): void | this;
1618
- setBackgroundColours(Colour: string | number): void | this;
2339
+ setColor(color: string | number): void | this;
2340
+ setBoxColors(color: string | number): void | this;
2341
+ setBackgroundColors(color: string | number): void | this;
1619
2342
  setAlignment(alignment: TextDrawAlignEnum): void | this;
1620
2343
  setLetterSize(x: number, y: number): void | this;
1621
2344
  setOutline(size: number): void | this;
1622
2345
  setPreviewModel(modelIndex: number): void | this;
1623
2346
  setPreviewRot(fRotX: number, fRotY: number, fRotZ: number, fZoom?: number): void | this;
1624
- setPreviewVehColours(Colour1: string, Colour2: string): void | this;
2347
+ setPreviewVehColors(color1: string, color2: string): void | this;
1625
2348
  setProportional(set?: boolean): void | this;
1626
2349
  setSelectable(set: boolean): void | this;
1627
2350
  setShadow(size: number): void | this;
@@ -1629,21 +2352,20 @@ declare class TextDraw<P extends Player> {
1629
2352
  setTextSize(x: number, y: number): void | this;
1630
2353
  useBox(use: boolean): void | this;
1631
2354
  private static beforeCreateWarn;
1632
- private unregisterEvent;
1633
- show(player?: P): void | this;
1634
- hide(player?: P): void | this;
2355
+ show(player?: Player): void | this;
2356
+ hide(player?: Player): void | this;
1635
2357
  showAll(): void | this;
1636
2358
  hideAll(): void | this;
1637
2359
  isValid(): boolean;
1638
- isVisibleForPlayer<P extends Player>(player: P): boolean;
2360
+ isVisibleForPlayer(player: Player): boolean;
1639
2361
  getString(): string;
1640
2362
  setPos(fX: number, fY: number): void | this;
1641
- getLetterSize(): void | _infernus_wrapper.ITextDrawCommonSize;
1642
- getTextSize(): void | _infernus_wrapper.ITextDrawCommonSize;
1643
- getPos(): void | _infernus_wrapper.ITextDrawCommonSize;
1644
- getColour(): number | void;
1645
- getBoxColour(): number | void;
1646
- getBackgroundColour(): number | void;
2363
+ getLetterSize(): void | ITextDrawCommonSize;
2364
+ getTextSize(): void | ITextDrawCommonSize;
2365
+ getPos(): void | ITextDrawCommonSize;
2366
+ getColor(): number | void;
2367
+ getBoxColor(): number | void;
2368
+ getBackgroundColor(): number | void;
1647
2369
  getShadow(): number | void;
1648
2370
  getOutline(): number | void;
1649
2371
  getFont(): number | void;
@@ -1652,20 +2374,36 @@ declare class TextDraw<P extends Player> {
1652
2374
  isSelectable(): boolean;
1653
2375
  getAlignment(): number | void;
1654
2376
  getPreviewModel(): number | void;
1655
- getPreviewRot(): void | _infernus_wrapper.ITextDrawRot;
1656
- getPreviewVehColours(): void | {
2377
+ getPreviewRot(): void | ITextDrawRot;
2378
+ getPreviewVehColors(): void | {
1657
2379
  color1: number;
1658
2380
  color2: number;
1659
2381
  };
2382
+ isGlobal(): boolean;
2383
+ static getInstance(id: number, isGlobal: boolean): TextDraw | undefined;
2384
+ static getInstances(isGlobal: boolean): TextDraw[];
1660
2385
  }
1661
2386
 
1662
- declare class TextDrawEvent<P extends Player, T extends TextDraw<P>> {
1663
- readonly textDraws: Map<ICommonTextDrawKey, T>;
1664
- private readonly players;
1665
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
1666
- onPlayerClick?(player: P, textdraw: T | InvalidEnum.TEXT_DRAW): TCommonCallback;
1667
- }
2387
+ declare const TextDrawEvent: Readonly<{
2388
+ onPlayerClickGlobal: (cb: (ret: {
2389
+ player: Player;
2390
+ textDraw: InvalidEnum | TextDraw;
2391
+ } & {
2392
+ next: () => CallbackRet;
2393
+ }) => PromisifyCallbackRet) => () => void;
2394
+ onPlayerClickPlayer: (cb: (ret: {
2395
+ player: Player;
2396
+ textDraw: InvalidEnum | TextDraw;
2397
+ } & {
2398
+ next: () => CallbackRet;
2399
+ }) => PromisifyCallbackRet) => () => void;
2400
+ }>;
1668
2401
 
1669
2402
  declare const rgba: (value: string | number) => number;
1670
2403
 
1671
- export { ArtworkEnum, BodyPartsEnum, BoneIdsEnum, BulletHitTypesEnum, CameraCutStylesEnum, CameraModesEnum, CarModTypeEnum, ClickSourcesEnum, ConnectionStatusEnum, DamageDeathReasonEnum, Dialog, DialogStylesEnum, Dynamic3DTextLabel, Dynamic3dTextLabelEvent, DynamicActor, DynamicActorEvent, DynamicArea, DynamicAreaEvent, DynamicCheckPointEvent, DynamicCheckpoint, DynamicMapIcon, DynamicMapIconEvent, DynamicObject, DynamicObjectEvent, DynamicPickup, DynamicPickupEvent, DynamicRaceCP, DynamicRaceCPEvent, ERecordStatus, EditResponseTypesEnum, FightingStylesEnum, GameMode, GameText, GangZone, GangZoneEvent, I18n, IAnimateInfo, IClientFuncQueue, IClientResRaw, ICmdErr, ICommonGangZoneKey, ICommonTextDrawKey, IDialog, IDialogFuncQueue, IDialogResCommon, IDialogResRaw, IDialogResResult, IDynamic, IDynamic3DTextLabel, IDynamicActor, IDynamicAreaKey, IDynamicCheckPoint, IDynamicCircle, IDynamicCircleCommon, IDynamicCommon, IDynamicCuboid, IDynamicCylinder, IDynamicMapIcon, IDynamicObject, IDynamicPickup, IDynamicPolygon, IDynamicRaceCp, IDynamicRectangle, IDynamicRectangleCommon, IDynamicSphere, IFilterScript, IGangZone, ITextDraw, IVehicle, InvalidEnum, KeysEnum, LimitsEnum, MapIconStylesEnum, MarkerModesEnum, Menu, MenuEvent, NPCPlaybackEnum, NetStats, NpcEvent, NpcFunc, ObjectMaterialAlignmmentEnum, ObjectMaterialTextSizeEnum, Player, PlayerEvent, PlayerStateEnum, RecordTypesEnum, SelectObjectTypesEnum, SpecialActionsEnum, SpectateModesEnum, Streamer, TCommonCallback, TDynamicArea, TDynamicAreaTypes, TEventFunc, TEventName, TLocales, TPos, TStreamerExtendable, TextDraw, TextDrawAlignEnum, TextDrawEvent, TextDrawFontsEnum, Vehicle, VehicleEvent, VehicleModelInfoEnum, VehicleParamsEnum, WeaponEnum, WeaponSkillsEnum, WeaponStatesEnum, rgba };
2404
+ declare function isHolding(newKeys: KeysEnum, key: KeysEnum): boolean;
2405
+ declare function isPressed(newKeys: KeysEnum, oldKeys: KeysEnum, key: KeysEnum): boolean;
2406
+ declare function isPressing(keys: KeysEnum, key: KeysEnum): boolean;
2407
+ declare function isReleased(newKeys: KeysEnum, oldKeys: KeysEnum, key: KeysEnum): boolean;
2408
+
2409
+ export { ArtworkEnum, BodyPartsEnum, BoneIdsEnum, BulletHitTypesEnum, CameraCutStylesEnum, CameraModesEnum, CarModTypeEnum, ClickSourcesEnum, CmdBusCallback, CommandErrors, ConnectionStatusEnum, DamageDeathReasonEnum, Dialog, DialogStylesEnum, Dynamic3DTextLabel, Dynamic3DTextLabelEvent, DynamicActor, DynamicActorEvent, DynamicArea, DynamicAreaEvent, DynamicCheckPointEvent, DynamicCheckpoint, DynamicMapIcon, DynamicMapIconEvent, DynamicObject, DynamicObjectEvent, DynamicPickup, DynamicPickupEvent, DynamicRaceCP, DynamicRaceCPEvent, ERecordStatus, EditResponseTypesEnum, FightingStylesEnum, GameMode, GameText, GangZone, GangZoneCb, GangZoneEvent, GangZonePos, I18n, IActorAnimation, IActorSpawn, IAnimateInfo, IAttachedData, IAttachedObject, IBounds, ICheckPoint, IClientResRaw, ICommonTextDrawKey, IDialog, IDialogFuncQueue, IDialogResCommon, IDialogResRaw, IDialogResResult, IDynamic, IDynamic3DTextLabel, IDynamicActor, IDynamicAreaKey, IDynamicCheckPoint, IDynamicCircle, IDynamicCircleCommon, IDynamicCommon, IDynamicCuboid, IDynamicCylinder, IDynamicMapIcon, IDynamicObject, IDynamicPickup, IDynamicPolygon, IDynamicRaceCp, IDynamicRectangle, IDynamicRectangleCommon, IDynamicSphere, IFilterScript, IGangZone, IMaterial, IMaterialText, IObjectPos, IObjectRotPos, IOffsets, IPlayerClass, IQuat, IRaceCheckPoint, ITextDraw, ITextDrawCommonSize, ITextDrawRot, IVehColor, IVehMatrix, IVehSpawnInfo, IVehicle, InvalidEnum, KeysEnum, LimitsEnum, MapIconStylesEnum, MarkerModesEnum, Menu, MenuEvent, NPCPlaybackEnum, NetStats, Npc, NpcEvent, ObjectMaterialAlignmmentEnum, ObjectMaterialTextSizeEnum, Player, PlayerEvent, PlayerStateEnum, RecordTypesEnum, SelectObjectTypesEnum, SpecialActionsEnum, SpectateModesEnum, Streamer, TCommonCallback, TDynamicArea, TDynamicAreaTypes, TEventFunc, TEventName, TLocales, TPos, TStreamerExtendable, TextDraw, TextDrawAlignEnum, TextDrawEvent, TextDrawFontsEnum, Vehicle, VehicleEvent, VehicleModelInfoEnum, VehicleParamsEnum, WeaponEnum, WeaponSkillsEnum, WeaponStatesEnum, defineEvent, isHolding, isPressed, isPressing, isReleased, rgba };