@infernus/core 0.9.8 → 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,8 +1,5 @@
1
- import * as _infernus_wrapper from '@infernus/wrapper';
2
- import { GangZonePos } from '@infernus/wrapper';
3
- export { GangZonePos, IActorAnimation, IActorSpawn, IAttachedData, IAttachedObject, IBounds, ICheckPoint, IMaterial, IMaterialText, IObjectPos, IObjectRotPos, IOffsets, IPlayerClass, IQuat, IRaceCheckPoint, ITextDrawCommonSize, ITextDrawRot, IVehColor, IVehMatrix, IVehSpawnInfo } from '@infernus/wrapper';
4
1
  import * as _infernus_streamer from '@infernus/streamer';
5
- import { StreamerItemTypes, StreamerAreaTypes, MapIconStyles } from '@infernus/streamer';
2
+ import { MapIconStyles, StreamerItemTypes, StreamerAreaTypes } from '@infernus/streamer';
6
3
  export { E_STREAMER, MapIconStyles, MaterialTextSizes, StreamerAreaTypes, StreamerArrayData, StreamerDistances, StreamerItemTypeTuple, StreamerItemTypes, StreamerMiscellaneous, StreamerObjectTypes } from '@infernus/streamer';
7
4
 
8
5
  declare enum ArtworkEnum {
@@ -321,7 +318,7 @@ declare enum WeaponEnum {
321
318
  REASON_CONNECT = 200,
322
319
  REASON_DISCONNECT = 200,
323
320
  REASON_SUICIDE = 255,
324
- WEAPON_FIST = 0,
321
+ FIST = 0,
325
322
  BRASSKNUCKLE = 1,
326
323
  GOLFCLUB = 2,
327
324
  NITESTICK = 3,
@@ -410,17 +407,429 @@ declare enum RecordTypesEnum {
410
407
  ONFOOT = 2
411
408
  }
412
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
+
413
821
  declare class Vehicle {
414
- private _id;
822
+ static readonly vehicles: Map<number, Vehicle>;
415
823
  private static createdCount;
416
824
  private readonly sourceInfo;
417
825
  private readonly isStatic;
826
+ private _id;
418
827
  get id(): number;
419
828
  constructor(veh: IVehicle, isStatic?: boolean);
420
829
  create(ignoreRange?: boolean): void;
421
830
  destroy(): void;
422
- addComponent(componentid: number): number;
423
- removeComponent(componentid: number): number;
831
+ addComponent(componentId: number): number;
832
+ removeComponent(componentId: number): number;
424
833
  getComponentInSlot(slot: CarModTypeEnum): number;
425
834
  static getComponentType(component: number): CarModTypeEnum;
426
835
  linkToInterior(interiorId: number): number;
@@ -431,15 +840,15 @@ declare class Vehicle {
431
840
  getPos(): void | TPos;
432
841
  getHealth(): number;
433
842
  setHealth(health: number): number;
434
- isPlayerIn<P extends Player>(player: P): boolean;
435
- putPlayerIn<P extends Player>(player: P, seatid: number): number;
843
+ isPlayerIn(player: Player): boolean;
844
+ putPlayerIn(player: Player, seatId: number): number;
436
845
  getZAngle(): number;
437
846
  setZAngle(z_angle: number): number;
438
847
  setNumberPlate(numberplate: string): number;
439
- static getPoolSize(): number;
440
- changeColours(colour1: string | number, colour2: string | number): number;
441
- 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;
442
850
  getVelocity(): void | TPos;
851
+ getSpeed(magic?: number): number;
443
852
  setAngularVelocity(X: number, Y: number, Z: number): number;
444
853
  getDamageStatus(): {
445
854
  panels: number;
@@ -450,8 +859,8 @@ declare class Vehicle {
450
859
  updateDamageStatus(panels: number, doors: number, lights: number, tires: number): void;
451
860
  getDistanceFromPoint(X: number, Y: number, Z: number): number;
452
861
  getModel(): number;
453
- static getModelInfo(vehiclemodel: number, infotype: VehicleModelInfoEnum): TPos;
454
- getModelInfo(infotype: VehicleModelInfoEnum): void | TPos;
862
+ static getModelInfo(vehicleModel: number, infoType: VehicleModelInfoEnum): TPos;
863
+ getModelInfo(infoType: VehicleModelInfoEnum): void | TPos;
455
864
  getRotationQuat(): {
456
865
  w: number;
457
866
  x: number;
@@ -459,20 +868,20 @@ declare class Vehicle {
459
868
  z: number;
460
869
  } | undefined;
461
870
  setRespawn(): number;
462
- isStreamedIn<P extends Player>(forplayer: P): boolean;
463
- setParamsCarDoors(driver: boolean, passenger: boolean, backleft: boolean, backright: boolean): number;
464
- 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;
465
874
  getParamsCarDoors(): {
466
875
  driver: 0 | 1 | -1;
467
876
  passenger: 0 | 1 | -1;
468
- backleft: 0 | 1 | -1;
469
- backright: 0 | 1 | -1;
877
+ backLeft: 0 | 1 | -1;
878
+ backRight: 0 | 1 | -1;
470
879
  } | undefined;
471
880
  getParamsCarWindows(): {
472
881
  driver: 0 | 1 | -1;
473
882
  passenger: 0 | 1 | -1;
474
- backleft: 0 | 1 | -1;
475
- backright: 0 | 1 | -1;
883
+ backLeft: 0 | 1 | -1;
884
+ backRight: 0 | 1 | -1;
476
885
  } | undefined;
477
886
  setParamsEx(engine: boolean, lights: boolean, alarm: boolean, doors: boolean, bonnet: boolean, boot: boolean, objective: boolean): number;
478
887
  getParamsEx(): {
@@ -485,66 +894,56 @@ declare class Vehicle {
485
894
  objective: number;
486
895
  } | undefined;
487
896
  getParamsSirenState(): number;
488
- setParamsForPlayer<P extends Player>(player: P, objective: boolean, doorslocked: boolean): number;
897
+ setParamsForPlayer(player: Player, objective: boolean, doorsLocked: boolean): number;
489
898
  isTrailerAttached(): boolean;
490
- changePaintjob(paintjobid: 0 | 1 | 2): number;
491
- attachTrailer<V extends Vehicle>(trailer: V): number;
899
+ changePaintjob(paintjobId: 0 | 1 | 2): number;
900
+ attachTrailer(trailer: Vehicle): number;
492
901
  detachTrailer(): void;
493
- getTrailer<V extends Vehicle>(vehicles: Array<V>): V | undefined;
902
+ getTrailer(): Vehicle | undefined;
494
903
  isValid(): boolean;
495
904
  static isValid(id: number): boolean;
496
- getMatrix(): _infernus_wrapper.IVehMatrix | undefined;
905
+ getMatrix(): IVehMatrix | undefined;
497
906
  getTrainSpeed(): number;
498
907
  getHydraReactorAngle(): number;
499
908
  getLandingGearState(): number;
500
909
  getSirenState(): number;
501
910
  static getModelsUsed: () => number;
502
- getDriver<P extends Player>(players: Map<number, P>): P | undefined;
503
- getLastDriver<P extends Player>(players: Map<number, P>): P | undefined;
504
- 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;
505
914
  isSirenEnabled(): boolean;
506
915
  toggleSirenEnabled(enabled: boolean): number;
916
+ setParamsSirenState(enabled: boolean): number;
507
917
  isDead(): boolean;
918
+ setDead(dead: boolean): boolean;
919
+ setBeenOccupied(occupied: boolean): boolean;
508
920
  getRespawnTick(): number;
921
+ setRespawnTick(ticks: number): number | false;
509
922
  isOccupied(): boolean;
510
923
  hasBeenOccupied(): boolean;
511
924
  getOccupiedTick(): number;
925
+ setOccupiedTick(ticks: number): number;
512
926
  getCab(): number;
513
927
  getRespawnDelay(): number;
514
928
  setRespawnDelay(delay: number): number;
515
929
  getNumberPlate(): string;
516
930
  getInterior(): number;
517
931
  getPaintjob(): number;
518
- getColours(): _infernus_wrapper.IVehColor | undefined;
519
- setSpawnInfo(modelid: number, fX: number, fY: number, fZ: number, fAngle: number, colour1: string | number, colour2: string | number, respawntime?: number, interior?: number, ignoreRange?: boolean): number;
520
- getSpawnInfo(): _infernus_wrapper.IVehSpawnInfo | undefined;
521
- }
522
-
523
- declare class VehicleEvent<P extends Player, V extends Vehicle> {
524
- private readonly vehicles;
525
- private readonly players;
526
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
527
- onDamageStatusUpdate?(vehicle: V, player: P): TCommonCallback;
528
- onDeath?(vehicle: V, killer: P): TCommonCallback;
529
- onMod?(player: P, vehicle: V, componentid: number): TCommonCallback;
530
- onPaintjob?(player: P, vehicle: V, paintjobid: number): TCommonCallback;
531
- onRespray?(player: P, vehicle: V, colour1: number, colour2: number): TCommonCallback;
532
- onSirenStateChange?(player: P, vehicle: V, newstate: boolean): TCommonCallback;
533
- onSpawn?(vehicle: V): TCommonCallback;
534
- onStreamIn?(vehicle: V, forplayer: P): TCommonCallback;
535
- onStreamOut?(vehicle: V, forplayer: P): TCommonCallback;
536
- onPlayerEnter?(player: P, vehicle: V, isPassenger: boolean): TCommonCallback;
537
- onPlayerExit?(player: P, vehicle: V): TCommonCallback;
538
- onNpcEnter?(vehicle: V, seatid: number): TCommonCallback;
539
- onNpcExit?(): TCommonCallback;
540
- onTrailerUpdate?(player: P, vehicle: V): TCommonCallback;
541
- findVehicleById(vehicleid: number): V | undefined;
542
- private findPlayerById;
543
- getVehiclesArr(): Array<V>;
544
- 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[];
545
943
  }
546
944
 
547
945
  declare class DynamicMapIcon {
946
+ static readonly mapIcons: Map<number, DynamicMapIcon>;
548
947
  private sourceInfo;
549
948
  private _id;
550
949
  get id(): number;
@@ -554,19 +953,27 @@ declare class DynamicMapIcon {
554
953
  isValid(): boolean;
555
954
  toggleCallbacks(toggle?: boolean): void | number;
556
955
  isToggleCallbacks(): boolean;
956
+ static getInstance(id: number): DynamicMapIcon | undefined;
957
+ static getInstances(): DynamicMapIcon[];
557
958
  }
558
959
 
559
- declare class DynamicMapIconEvent<P extends Player, M extends DynamicMapIcon> {
560
- private readonly mapIcons;
561
- private readonly players;
562
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
563
- onStreamIn?(mapIcon: M, player: P): TCommonCallback;
564
- onStreamOut?(mapIcon: M, player: P): TCommonCallback;
565
- getMapIconsArr(): Array<M>;
566
- getMapIconsMap(): Map<number, M>;
567
- }
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
+ }>;
568
974
 
569
975
  declare class DynamicPickup {
976
+ static readonly pickups: Map<number, DynamicPickup>;
570
977
  private sourceInfo;
571
978
  private _id;
572
979
  get id(): number;
@@ -576,20 +983,33 @@ declare class DynamicPickup {
576
983
  isValid(): boolean;
577
984
  toggleCallbacks(toggle?: boolean): void | number;
578
985
  isToggleCallbacks(): boolean;
986
+ static getInstance(id: number): DynamicPickup | undefined;
987
+ static getInstances(): DynamicPickup[];
579
988
  }
580
989
 
581
- declare class DynamicPickupEvent<P extends Player, K extends DynamicPickup> {
582
- private readonly pickups;
583
- private readonly players;
584
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
585
- onPlayerPickUp?(player: P, pickup: K): TCommonCallback;
586
- onStreamIn?(pickup: K, player: P): TCommonCallback;
587
- onStreamOut?(pickup: K, player: P): TCommonCallback;
588
- getPickupsArr(): Array<K>;
589
- getPickupsMap(): Map<number, K>;
590
- }
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
+ }>;
591
1010
 
592
1011
  declare class DynamicCheckpoint {
1012
+ static readonly checkpoints: Map<number, DynamicCheckpoint>;
593
1013
  private sourceInfo;
594
1014
  private _id;
595
1015
  get id(): number;
@@ -597,27 +1017,45 @@ declare class DynamicCheckpoint {
597
1017
  create(): void | this;
598
1018
  destroy(): void | this;
599
1019
  isValid(): boolean;
600
- togglePlayer<P extends Player>(player: P, toggle: boolean): void | this;
601
- static togglePlayerAll<P extends Player>(player: P, toggle: boolean): number;
602
- isPlayerIn<P extends Player>(player: P): boolean;
603
- 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;
604
1024
  toggleCallbacks(toggle?: boolean): void | number;
605
1025
  isToggleCallbacks(): boolean;
1026
+ static getInstance(id: number): DynamicCheckpoint | undefined;
1027
+ static getInstances(): DynamicCheckpoint[];
606
1028
  }
607
1029
 
608
- declare class DynamicCheckPointEvent<P extends Player, C extends DynamicCheckpoint> {
609
- private readonly checkpoints;
610
- private readonly players;
611
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
612
- onPlayerEnter?(player: P, checkpoint: C): TCommonCallback;
613
- onPlayerLeave?(player: P, checkpoint: C): TCommonCallback;
614
- onStreamIn?(checkpoint: C, player: P): TCommonCallback;
615
- onStreamOut?(checkpoint: C, player: P): TCommonCallback;
616
- getCheckPointsArr(): Array<C>;
617
- getCheckPointsMap(): Map<number, C>;
618
- }
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
+ }>;
619
1056
 
620
1057
  declare class DynamicRaceCP {
1058
+ static readonly checkpoints: Map<number, DynamicRaceCP>;
621
1059
  private sourceInfo;
622
1060
  private _id;
623
1061
  get id(): number;
@@ -625,27 +1063,192 @@ declare class DynamicRaceCP {
625
1063
  create(): void | this;
626
1064
  destroy(): void | this;
627
1065
  isValid(): boolean;
628
- togglePlayer<P extends Player>(player: P, toggle: boolean): void | this;
629
- static togglePlayerAll<P extends Player>(player: P, toggle: boolean): number;
630
- isPlayerIn<P extends Player>(player: P): boolean;
631
- 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;
632
1070
  toggleCallbacks(toggle?: boolean): void | number;
633
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;
634
1193
  }
635
1194
 
636
- declare class DynamicRaceCPEvent<P extends Player, R extends DynamicRaceCP> {
637
- private readonly raceCPs;
638
- private readonly players;
639
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
640
- onPlayerEnter?(player: P, checkpoint: R): TCommonCallback;
641
- onPlayerLeave?(player: P, checkpoint: R): TCommonCallback;
642
- onStreamIn?(checkpoint: R, player: P): TCommonCallback;
643
- onStreamOut?(checkpoint: R, player: P): TCommonCallback;
644
- getRaceCPsArr(): Array<R>;
645
- 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;
646
1248
  }
647
1249
 
648
1250
  declare class DynamicActor {
1251
+ static readonly actors: Map<number, DynamicActor>;
649
1252
  private sourceInfo;
650
1253
  private _id;
651
1254
  get id(): number;
@@ -653,9 +1256,9 @@ declare class DynamicActor {
653
1256
  create(): void | this;
654
1257
  destroy(): void | this;
655
1258
  isValid(): boolean;
656
- isStreamedIn<P extends Player>(forplayer: P): boolean;
1259
+ isStreamedIn(forPlayer: Player): boolean;
657
1260
  getVirtualWorld(): void | number;
658
- setVirtualWorld(vworld: number): void | number;
1261
+ setVirtualWorld(vWorld: number): void | number;
659
1262
  applyAnimation(animLib: string, animName: string, loop?: boolean, lockX?: boolean, lockY?: boolean, freeze?: boolean): void | number;
660
1263
  clearAnimations(): void | number;
661
1264
  getFacingAngle(): void | number;
@@ -670,28 +1273,44 @@ declare class DynamicActor {
670
1273
  setHealth(health: number): void | number;
671
1274
  isInvulnerable(): boolean;
672
1275
  setInvulnerable(invulnerable?: boolean): void | number;
673
- getPlayerTarget<P extends Player, A extends DynamicActor>(player: P, actors: Map<number, A>): void | A;
674
- 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;
675
1278
  getSkin(): void | number;
676
1279
  setSkin(model: number, ignoreRange?: boolean): void | number;
677
- getSpawnInfo(): void | _infernus_wrapper.IActorSpawn;
678
- getAnimation(): void | _infernus_wrapper.IActorAnimation;
1280
+ getSpawnInfo(): void | IActorSpawn;
1281
+ getAnimation(): void | IActorAnimation;
679
1282
  toggleCallbacks(toggle?: boolean): void | number;
680
1283
  isToggleCallbacks(): boolean;
1284
+ static getInstance(id: number): DynamicActor | undefined;
1285
+ static getInstances(): DynamicActor[];
681
1286
  }
682
1287
 
683
- declare class DynamicActorEvent<P extends Player, A extends DynamicActor> {
684
- private readonly actors;
685
- private readonly players;
686
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
687
- onStreamIn?(actor: A, player: P): TCommonCallback;
688
- onStreamOut?(actor: A, player: P): TCommonCallback;
689
- onPlayerGiveDamage?(player: P, actor: A, amount: number, weaponid: number, bodypart: BodyPartsEnum): TCommonCallback;
690
- getActorsArr(): Array<A>;
691
- getActorsMap(): Map<number, A>;
692
- }
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
+ }>;
693
1311
 
694
1312
  declare class Dynamic3DTextLabel {
1313
+ static readonly texts: Map<number, Dynamic3DTextLabel>;
695
1314
  private sourceInfo;
696
1315
  private _id;
697
1316
  get id(): number;
@@ -699,42 +1318,49 @@ declare class Dynamic3DTextLabel {
699
1318
  create(): void | this;
700
1319
  destroy(): void | this;
701
1320
  isValid(): boolean;
702
- getColour(): void | string | number;
1321
+ getColor(): void | string | number;
703
1322
  getCharset(): void | string;
704
1323
  getText(): void | string;
705
- updateText(colour: string | number, text: string, charset?: string | undefined): void | number;
1324
+ updateText(color: string | number, text: string, charset?: string | undefined): void | number;
706
1325
  toggleCallbacks(toggle?: boolean): void | number;
707
1326
  isToggleCallbacks(): boolean;
1327
+ static getInstance(id: number): Dynamic3DTextLabel | undefined;
1328
+ static getInstances(): Dynamic3DTextLabel[];
708
1329
  }
709
1330
 
710
- declare class Dynamic3dTextLabelEvent<P extends Player, D extends Dynamic3DTextLabel> {
711
- private readonly _3dTexts;
712
- private readonly players;
713
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
714
- onStreamIn?(label: D, player: P): TCommonCallback;
715
- onStreamOut?(label: D, player: P): TCommonCallback;
716
- get3dTextLabelsArr(): Array<D>;
717
- get3dTextLabelsMap(): Map<number, D>;
718
- }
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
+ }>;
719
1345
 
720
1346
  declare class Streamer {
721
1347
  private constructor();
722
1348
  static getTickRate: () => number;
723
1349
  static setTickRate: (rate?: number | undefined) => number;
724
- static getPlayerTickRate<P extends Player>(player: P): number;
725
- static setPlayerTickRate<P extends Player>(player: P, rate?: number): number;
1350
+ static getPlayerTickRate(player: Player): number;
1351
+ static setPlayerTickRate(player: Player, rate?: number): number;
726
1352
  static toggleChunkStream: (toggle?: boolean | undefined) => number;
727
1353
  static isToggleChunkStream: () => boolean;
728
- static getChunkTickRate<P extends Player>(type: StreamerItemTypes, player?: number | P): number;
729
- 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;
730
1356
  static getChunkSize: (type: StreamerItemTypes) => number;
731
1357
  static setChunkSize: (type: StreamerItemTypes, size: number) => number;
732
1358
  static getMaxItems: (type: StreamerItemTypes) => number;
733
1359
  static setMaxItems: (type: StreamerItemTypes, items: number) => number;
734
- static getVisibleItems<P extends Player>(type: StreamerItemTypes, player?: number | P): number;
735
- static setVisibleItems<P extends Player>(type: StreamerItemTypes, items: number, player?: number | P): number;
736
- static getRadiusMultiplier<P extends Player>(type: StreamerItemTypes, player?: number | P): number;
737
- 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;
738
1364
  static getTypePriority: () => number | _infernus_streamer.StreamerItemTypeTuple;
739
1365
  static setTypePriority: (types: _infernus_streamer.StreamerItemTypeTuple) => number;
740
1366
  static getCellDistance: () => number;
@@ -751,28 +1377,28 @@ declare class Streamer {
751
1377
  static isToggleErrorCallback: () => boolean;
752
1378
  static amxUnloadDestroyItems: (toggle: boolean) => number;
753
1379
  static processActiveItems: () => number;
754
- static toggleIdleUpdate<P extends Player>(player: P, toggle: boolean): number;
755
- static isToggleIdleUpdate<P extends Player>(player: P): boolean;
756
- static toggleCameraUpdate<P extends Player>(player: P, toggle: boolean): number;
757
- static isToggleCameraUpdate<P extends Player>(player: P): boolean;
758
- static toggleItemUpdate<P extends Player>(player: P, type: StreamerItemTypes, toggle: boolean): number;
759
- 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;
760
1386
  static getLastUpdateTime(): number;
761
- static update<P extends Player>(player: P, type?: StreamerItemTypes | -1): number;
762
- 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;
763
1389
  static getDistanceToItem: (x: number, y: number, z: number, type: StreamerItemTypes, id: number, dimensions?: 2 | 3 | undefined) => number;
764
- static toggleItem<P extends Player>(player: P, type: StreamerItemTypes, id: number, toggle: boolean): number;
765
- static isToggleItem<P extends Player>(player: P, type: StreamerItemTypes, id: number): boolean;
766
- static toggleAllItems<P extends Player>(player: P, type: StreamerItemTypes, toggle: boolean, exceptions?: number[]): number;
767
- static getItemInternalID<P extends Player>(player: P, type: StreamerItemTypes, streamerid: number): number;
768
- static getItemStreamerID<P extends Player>(player: P, type: StreamerItemTypes, internalid: number): number;
769
- static isItemVisible<P extends Player>(player: P, type: StreamerItemTypes, id: number): boolean;
770
- static destroyAllVisibleItems<P extends Player>(player: P, type: StreamerItemTypes, serverwide?: number): number;
771
- static countVisibleItems<P extends Player>(player: P, type: StreamerItemTypes, serverwide?: number): number;
772
- static destroyAllItems: (type: StreamerItemTypes, serverwide?: number | undefined) => number;
773
- static countItems: (type: StreamerItemTypes, serverwide?: number | undefined) => number;
774
- static getNearbyItems: (x: number, y: number, z: number, type: StreamerItemTypes, items: number[], maxitems?: number | undefined, range?: number | undefined, worldid?: number | undefined) => void;
775
- 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;
776
1402
  static getItemPos: (type: StreamerItemTypes, id: number) => {
777
1403
  x: number;
778
1404
  y: number;
@@ -796,12 +1422,103 @@ declare class Streamer {
796
1422
  static removeArrayData: (type: StreamerItemTypes, id: number, data: _infernus_streamer.StreamerArrayData, value: number) => number;
797
1423
  static getArrayDataLength: (type: StreamerItemTypes, id: number, data: _infernus_streamer.StreamerArrayData) => number;
798
1424
  static getUpperBound: (type: StreamerItemTypes) => number;
799
- static onItemStreamIn: (fn: (type: StreamerItemTypes, id: number, forplayerid: number) => number) => void;
800
- static onItemStreamOut: (fn: (type: StreamerItemTypes, id: number, forplayerid: number) => number) => void;
801
- static onPluginError: (fn: (error: string) => number) => void;
1425
+ static onPluginError: (cb: (ret: {
1426
+ error: string;
1427
+ } & {
1428
+ next: () => CallbackRet;
1429
+ }) => PromisifyCallbackRet) => () => void;
802
1430
  }
803
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
+
804
1520
  declare class DynamicObject {
1521
+ static readonly objects: Map<number, DynamicObject>;
805
1522
  private sourceInfo;
806
1523
  private _id;
807
1524
  get id(): number;
@@ -825,51 +1542,112 @@ declare class DynamicObject {
825
1542
  move(x: number, y: number, z: number, speed: number, rx?: number, ry?: number, rz?: number): void | number;
826
1543
  stop(): void | number;
827
1544
  isMoving(): boolean;
828
- attachCamera<P extends Player>(player: P): void | number;
829
- attachToObject<O extends DynamicObject>(attachto: O, offsetx: number, offsety: number, offsetz: number, rx: number, ry: number, rz: number, syncrotation?: boolean): void | number;
830
- attachToPlayer<P extends Player>(player: P, offsetx: number, offsety: number, offsetz: number, rx: number, ry: number, rz: number): void | number;
831
- attachToVehicle<V extends Vehicle>(vehicle: V, offsetx: number, offsety: number, offsetz: number, rx: number, ry: number, rz: number): void | number;
832
- 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;
833
1550
  isMaterialUsed(materialIndex: number): boolean;
834
1551
  removeMaterial(materialIndex: number): number;
835
- getMaterial(materialIndex: number, txdname: string, texturename: string): void | {
836
- modelid: number;
837
- materialcolor: string | number;
1552
+ getMaterial(materialIndex: number, txdName: string, textureName: string): void | {
1553
+ modelId: number;
1554
+ materialColor: string | number;
838
1555
  };
839
- 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;
840
1557
  isMaterialTextUsed(materialIndex: number): boolean;
841
1558
  removeMaterialText(materialIndex: number): number;
842
1559
  getMaterialText(materialIndex: number): void | {
843
1560
  text: string;
844
- materialsize: number;
845
- fontface: string;
1561
+ materialSize: number;
1562
+ fontFace: string;
846
1563
  bold: number;
847
- fontcolour: number;
848
- backcolour: number;
849
- textalignment: number;
1564
+ fontColor: number;
1565
+ backColor: number;
1566
+ textAlignment: number;
850
1567
  };
851
- setMaterialText(charset: string | undefined, materialIndex: number, text: string, materialSize?: number, fontFace?: string, fontSize?: number, bold?: number, fontColour?: string, backColour?: string, textAlignment?: number): void | number;
852
- 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;
853
1570
  toggleCallbacks(toggle?: boolean): void | number;
854
1571
  isToggleCallbacks(): boolean;
1572
+ setNoCameraCollision(): boolean;
1573
+ getNoCameraCollision(): boolean;
1574
+ static getInstance(id: number): DynamicObject | undefined;
1575
+ static getInstances(): DynamicObject[];
855
1576
  }
856
1577
 
857
- declare class DynamicObjectEvent<P extends Player, O extends DynamicObject> {
858
- private readonly objects;
859
- private readonly players;
860
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
861
- onMoved?(object: O): TCommonCallback;
862
- onPlayerEdit?(player: P, object: O, response: EditResponseTypesEnum, x: number, y: number, z: number, rx: number, ry: number, rz: number): TCommonCallback;
863
- onPlayerSelect?(player: P, object: O, modelid: number, x: number, y: number, z: number): TCommonCallback;
864
- onPlayerShoot?(player: P, weaponid: number, object: O, x: number, y: number, z: number): TCommonCallback;
865
- onPlayerEditAttached?(player: P, response: number, index: number, modelid: number, boneid: number, fOffsetX: number, fOffsetY: number, fOffsetZ: number, fRotX: number, fRotY: number, fRotZ: number, fScaleX: number, fScaleY: number, fScaleZ: number): TCommonCallback;
866
- onStreamIn?(object: O, player: P): TCommonCallback;
867
- onStreamOut?(object: O, player: P): TCommonCallback;
868
- getObjectsArr(): Array<O>;
869
- getObjectsMap(): Map<number, O>;
870
- }
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
+ }>;
871
1648
 
872
1649
  declare class DynamicArea {
1650
+ static readonly areas: Map<number, DynamicArea>;
873
1651
  private sourceInfo;
874
1652
  private _id;
875
1653
  get type(): TDynamicAreaTypes;
@@ -881,63 +1659,74 @@ declare class DynamicArea {
881
1659
  getType(): void | StreamerAreaTypes;
882
1660
  getPolygonPoints(): void | number[];
883
1661
  getPolygonNumberPoints(): void | number;
884
- isPlayerIn<P extends Player>(player: P, recheck?: boolean): boolean;
885
- 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;
886
1664
  isAnyPlayerIn(recheck?: boolean): boolean;
887
1665
  static isAnyPlayerInAny(recheck?: boolean): boolean;
888
- static getPlayerAreas<P extends Player, A extends DynamicArea>(player: P, areas: Map<number, A>): Array<A | undefined>;
889
- static getPlayerAreasNumber<P extends Player>(player: P): any;
1666
+ static getPlayerAreas(player: Player): Array<DynamicArea | undefined>;
1667
+ static getPlayerAreasNumber(player: Player): any;
890
1668
  isPointIn(x: number, y: number, z: number): boolean;
891
1669
  static isPointInAny(x: number, y: number, z: number): boolean;
892
1670
  isLineIn(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number): boolean;
893
1671
  static isLineInAny(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number): boolean;
894
- 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[];
895
1673
  static getNumberForPoint(x: number, y: number, z: number): number;
896
- 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[];
897
1675
  static getNumberForLine(x1: number, y1: number, z1: number, x2: number, y2: number, z2: number): number;
898
- attachToObject<O extends DynamicObject>(obj: O, offsetx?: number, offsety?: number, offsetz?: number): void | number;
899
- attachToPlayer<P extends Player>(player: P, offsetx?: number, offsety?: number, offsetz?: number): void | number;
900
- 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;
901
1679
  toggleSpectateMode(toggle: boolean): void | number;
902
1680
  isToggleSpectateMode(): boolean;
903
1681
  toggleCallbacks(toggle?: boolean): void | number;
904
1682
  isToggleCallbacks(): boolean;
1683
+ static getInstance(id: number): DynamicArea | undefined;
1684
+ static getInstances(): DynamicArea[];
905
1685
  }
906
1686
 
907
- declare class DynamicAreaEvent<P extends Player, A extends DynamicArea> {
908
- private readonly areas;
909
- private readonly players;
910
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
911
- onPlayerEnter?(player: P, area: A): TCommonCallback;
912
- onPlayerLeave?(player: P, area: A): TCommonCallback;
913
- onStreamIn?(area: A, player: P): TCommonCallback;
914
- onStreamOut?(area: A, player: P): TCommonCallback;
915
- getAreasArr(): Array<A>;
916
- getAreasMap(): Map<number, A>;
917
- }
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
+ }>;
918
1713
 
919
1714
  declare class Player {
920
- private _id;
921
- private _isNpc;
922
- private _locale;
923
- private _charset;
924
- private _isRecording;
1715
+ readonly id: number;
1716
+ static readonly players: Map<number, Player>;
1717
+ charset: string;
1718
+ locale: string;
925
1719
  lastDrunkLevel: number;
926
1720
  lastFps: number;
927
- isPaused: boolean;
928
1721
  lastUpdateTick: number;
929
- get id(): number;
930
- get locale(): string;
931
- set locale(value: string);
932
- get charset(): string;
933
- set charset(value: string);
934
- get isRecording(): boolean;
935
- set isRecording(value: boolean);
1722
+ lastUpdateFpsTick: number;
1723
+ isPaused: boolean;
1724
+ isRecording: boolean;
936
1725
  constructor(id: number);
937
- sendClientMessage(colour: string | number, msg: string): number;
938
- static sendClientMessageToAll<P extends Player>(players: Array<P>, colour: string | number, msg: string): void;
939
- sendPlayerMessage<P extends Player>(player: P, message: string): number;
940
- 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;
941
1730
  isNpc(): boolean;
942
1731
  getFps(): number;
943
1732
  getDrunkLevel(): number;
@@ -948,10 +1737,11 @@ declare class Player {
948
1737
  enableStuntBonus(enable: boolean): void;
949
1738
  getInterior(): number;
950
1739
  setInterior(interiorId: number): number;
951
- showPlayerNameTag<P extends Player>(showPlayer: P, show: boolean): void;
952
- setColor(colour: string | number): void;
1740
+ showNameTag(showPlayer: Player, show: boolean): void;
1741
+ setColor(color: string | number): void;
953
1742
  getColor(): number;
954
- setPlayerMarker<P extends Player>(showPlayer: P, colour: string | number): void;
1743
+ setMarker(showPlayer: Player, color: string | number): void;
1744
+ getMarker(targetPlayer: Player): number;
955
1745
  resetMoney(): number;
956
1746
  getMoney(): number;
957
1747
  giveMoney(money: number): number;
@@ -962,15 +1752,15 @@ declare class Player {
962
1752
  toggleClock(toggle: boolean): number;
963
1753
  toggleControllable(toggle: boolean): number;
964
1754
  toggleSpectating(toggle: boolean): number;
965
- spectatePlayer<P extends Player>(targetPlayer: P, mode?: SpectateModesEnum): number;
966
- spectateVehicle<V extends Vehicle>(targetVehicle: V, mode?: SpectateModesEnum): number;
1755
+ spectatePlayer(targetPlayer: Player, mode?: SpectateModesEnum): number;
1756
+ spectateVehicle(targetVehicle: Vehicle, mode?: SpectateModesEnum): number;
967
1757
  forceClassSelection(): void;
968
1758
  kick(): void;
969
1759
  ban(): void;
970
1760
  banEx(reason: string, charset: string): void;
971
1761
  isAdmin(): boolean;
972
1762
  isInRangeOfPoint(range: number, x: number, y: number, z: number): boolean;
973
- isStreamedIn<P extends Player>(forplayer: P): boolean;
1763
+ isStreamedIn(forPlayer: Player): boolean;
974
1764
  setSkin(skinId: number, ignoreRange?: boolean): number;
975
1765
  getSkin(): number;
976
1766
  isInAnyVehicle(): boolean;
@@ -999,7 +1789,7 @@ declare class Player {
999
1789
  hour: number;
1000
1790
  minute: number;
1001
1791
  };
1002
- 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;
1003
1793
  setTeam(team: number): void;
1004
1794
  getTeam(): number;
1005
1795
  setSkillLevel(skill: WeaponSkillsEnum, level: number): void;
@@ -1009,8 +1799,8 @@ declare class Player {
1009
1799
  getVelocity(): TPos;
1010
1800
  getKeys(): {
1011
1801
  keys: KeysEnum;
1012
- updown: KeysEnum;
1013
- leftright: KeysEnum;
1802
+ upDown: KeysEnum;
1803
+ leftRight: KeysEnum;
1014
1804
  };
1015
1805
  getIp(): string;
1016
1806
  getFightingStyle(): FightingStylesEnum;
@@ -1024,24 +1814,23 @@ declare class Player {
1024
1814
  getCameraFrontVector(): TPos;
1025
1815
  getCameraMode(): CameraModesEnum;
1026
1816
  getCameraPos(): TPos;
1027
- getCameraTargetPlayer<P extends Player>(players: Array<P>): P | undefined;
1028
- getCameraTargetVehicle<V extends Vehicle>(vehicles: Array<V>): V | undefined;
1817
+ getCameraTargetPlayer(players: Array<Player>): Player | undefined;
1818
+ getCameraTargetVehicle(vehicles: Array<Vehicle>): Vehicle | undefined;
1029
1819
  getCameraZoom(): number;
1030
1820
  playAudioStream(url: string, posX?: number, posY?: number, posZ?: number, distance?: number): number;
1031
1821
  stopAudioStream(): void;
1032
1822
  playSound(soundid: number, relativeX?: number, relativeY?: number, relativeZ?: number): number;
1033
- static getPoolSize(): number;
1034
1823
  static getMaxPlayers(): number;
1035
- playCrimeReport<P extends Player>(suspect: P, crimeId: number): number;
1824
+ playCrimeReport(suspect: Player, crimeId: number): number;
1036
1825
  interpolateCameraPos(FromX: number, FromY: number, FromZ: number, ToX: number, ToY: number, ToZ: number, time: number, cut?: CameraCutStylesEnum): void;
1037
1826
  interpolateCameraLookAt(FromX: number, FromY: number, FromZ: number, ToX: number, ToY: number, ToZ: number, time: number, cut?: CameraCutStylesEnum): void;
1038
1827
  createExplosion(X: number, Y: number, Z: number, type: number, Radius: number): number;
1039
1828
  static isConnected(id: number): boolean;
1040
1829
  isConnected(): boolean;
1041
1830
  disableRemoteVehicleCollisions(disable: boolean): number;
1042
- getVehicle<V extends Vehicle>(vehicles: Array<V>): V | undefined;
1831
+ getVehicle(vehicles: Array<Vehicle>): Vehicle | undefined;
1043
1832
  getVehicleSeat(): number;
1044
- getSurfingVehicle<V extends Vehicle>(vehicles: Array<V>): V | undefined;
1833
+ getSurfingVehicle(vehicles: Array<Vehicle>): Vehicle | undefined;
1045
1834
  applyAnimation(animLib: string, animName: string, loop?: boolean, lockX?: boolean, lockY?: boolean, freeze?: boolean, forceSync?: boolean): void;
1046
1835
  clearAnimations(forceSync?: boolean): void;
1047
1836
  getAnimationIndex(): number;
@@ -1052,10 +1841,11 @@ declare class Player {
1052
1841
  setShopName(shopName: string): void;
1053
1842
  setPosFindZ(x: number, y: number, z?: number): Promise<number>;
1054
1843
  setWorldBounds(x_max: number, x_min: number, y_max: number, y_min: number): void;
1055
- 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;
1056
1846
  getDistanceFromPoint(X: number, Y: number, Z: number): number;
1057
1847
  getCustomSkin(): number;
1058
- getTargetPlayer<P extends Player>(players: Array<P>): undefined | P;
1848
+ getTargetPlayer(players: Array<Player>): undefined | Player;
1059
1849
  getLastShotVectors(): {
1060
1850
  fOriginX: number;
1061
1851
  fOriginY: number;
@@ -1070,33 +1860,36 @@ declare class Player {
1070
1860
  ammo: number;
1071
1861
  } | undefined;
1072
1862
  getWeaponState(): WeaponStatesEnum;
1073
- giveWeapon(weaponid: WeaponEnum, ammo: number): number;
1074
- setAmmo(weaponid: number, ammo: number): number;
1863
+ giveWeapon(weaponId: WeaponEnum, ammo: number): number;
1864
+ setAmmo(weaponId: number, ammo: number): number;
1075
1865
  getAmmo(): number;
1076
- setArmedWeapon(weaponid: number): number;
1866
+ setArmedWeapon(weaponId: number): number;
1077
1867
  clearDeathMessage(): void;
1078
- sendDeathMessage<P extends Player>(killer: P | InvalidEnum.PLAYER_ID, weapon: WeaponEnum | DamageDeathReasonEnum): void;
1079
- 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;
1080
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;
1081
1871
  redirectDownload(url: string): number;
1082
1872
  sendClientCheck(type: number, memAddr: number, memOffset: number, byteCount: number): void | Promise<IClientResRaw>;
1083
- selectTextDraw(colour: string | number): void;
1873
+ selectTextDraw(color: string | number): void;
1084
1874
  cancelSelectTextDraw(): void;
1085
1875
  beginObjectSelecting(): void;
1086
1876
  endObjectEditing(): void;
1087
- getSurfingObject<O extends DynamicObject>(objects: Map<number, O>): void | O;
1088
- getSurfingPlayerObject<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;
1089
1879
  isAttachedObjectSlotUsed(index: number): boolean;
1090
- 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;
1091
1881
  removeAttachedObject(index: number): number;
1882
+ getAnimationFlags(): number;
1883
+ getLastSyncedTrailerID(): number;
1884
+ getLastSyncedVehicleID(): number;
1092
1885
  toggleWidescreen(set: boolean): number;
1093
- isPlayerWidescreenToggled(): boolean;
1094
- getSpawnInfo(): _infernus_wrapper.IPlayerClass;
1886
+ isWidescreenToggled(): boolean;
1887
+ getSpawnInfo(): IPlayerClass;
1095
1888
  getSkillLevel(skill: WeaponSkillsEnum): number;
1096
1889
  isCheckpointActive(): boolean;
1097
- getCheckpoint(): _infernus_wrapper.ICheckPoint;
1890
+ getCheckpoint(): ICheckPoint;
1098
1891
  isRaceCheckpointActive(): boolean;
1099
- getRaceCheckpoint(): _infernus_wrapper.IRaceCheckPoint;
1892
+ getRaceCheckpoint(): IRaceCheckPoint;
1100
1893
  getWorldBounds(): void;
1101
1894
  isInModShop(): boolean;
1102
1895
  getSirenState(): number;
@@ -1104,8 +1897,8 @@ declare class Player {
1104
1897
  getHydraReactorAngle(): number;
1105
1898
  getTrainSpeed(): number;
1106
1899
  getZAim(): number;
1107
- getSurfingOffsets(): _infernus_wrapper.IOffsets;
1108
- getRotationQuat(): _infernus_wrapper.IQuat;
1900
+ getSurfingOffsets(): IOffsets;
1901
+ getRotationQuat(): IQuat;
1109
1902
  getDialogID(): number;
1110
1903
  getSpectateID(): number;
1111
1904
  getSpectateType(): SpectateModesEnum;
@@ -1119,231 +1912,18 @@ declare class Player {
1119
1912
  toggleGhostMode(toggle: boolean): number;
1120
1913
  getGhostMode(): boolean;
1121
1914
  getBuildingsRemoved(): number;
1122
- getAttachedObject(index: number): _infernus_wrapper.IAttachedObject;
1123
- removeWeapon(weaponid: number): number;
1915
+ getAttachedObject(index: number): IAttachedObject;
1916
+ removeWeapon(weaponId: number): number;
1124
1917
  isUsingOfficialClient(): boolean;
1125
1918
  allowWeapons(allow: boolean): boolean;
1126
1919
  areWeaponsAllowed(): boolean;
1127
1920
  gpci(charset?: string): string;
1128
- }
1129
-
1130
- declare class PlayerEvent<P extends Player> {
1131
- private readonly players;
1132
- private static cmdBus;
1133
- constructor(newPlayerFn: (id: number) => P);
1134
- findPlayerById(playerid: number): P | undefined;
1135
- getPlayersArr(): Array<P>;
1136
- getPlayersMap(): Map<number, P>;
1137
- readonly throttleUpdate: any;
1138
- private static fpsHeartbeat;
1139
- readonly onCommandText: (name: TEventName, fn: TEventFunc<this, P> | TEventFunc<this, P>[]) => (() => void);
1140
- readonly offCommandText: (name: TEventName, fn: TEventFunc<this, P> | TEventFunc<this, P>[]) => void;
1141
- private promiseCommand;
1142
- onConnect?(player: P): TCommonCallback;
1143
- onDisconnect?(player: P, reason: number): TCommonCallback;
1144
- onText?(player: P, text: string): TCommonCallback;
1145
- onCommandReceived?(player: P, command: string): TCommonCallback;
1146
- onCommandPerformed?(player: P, command: string): TCommonCallback;
1147
- onCommandError?(player: P, command: string, err: ICmdErr): TCommonCallback;
1148
- onEnterExitModShop?(player: P, enterexit: number, interiorid: number): TCommonCallback;
1149
- onClickMap?(player: P, fX: number, fY: number, fZ: number): TCommonCallback;
1150
- onClickPlayer?(player: P, clickedPlayer: P, source: number): TCommonCallback;
1151
- onDeath?(player: P, killer: P | InvalidEnum.PLAYER_ID, reason: number): TCommonCallback;
1152
- onGiveDamage?(player: P, damage: P, amount: number, weaponid: WeaponEnum, bodypart: BodyPartsEnum): TCommonCallback;
1153
- onKeyStateChange?(player: P, newkeys: KeysEnum, oldkeys: KeysEnum): TCommonCallback;
1154
- onRequestClass?(player: P, classid: number): TCommonCallback;
1155
- onRequestSpawn?(player: P): TCommonCallback;
1156
- onSpawn?(player: P): TCommonCallback;
1157
- onStateChange?(player: P, newstate: PlayerStateEnum, oldstate: PlayerStateEnum): TCommonCallback;
1158
- onStreamIn?(player: P, forPlayer: P): TCommonCallback;
1159
- onStreamOut?(player: P, forPlayer: P): TCommonCallback;
1160
- onTakeDamage?(player: P, damage: P | InvalidEnum.PLAYER_ID, amount: number, weaponid: WeaponEnum, bodypart: BodyPartsEnum): TCommonCallback;
1161
- onUpdate?(player: P): TCommonCallback;
1162
- onInteriorChange?(player: P, newinteriorid: number, oldinteriorid: number): TCommonCallback;
1163
- onPause?(player: P, timestamp: number): TCommonCallback;
1164
- onResume?(player: P, pauseMs: number): TCommonCallback;
1165
- onRequestDownload?(player: P, type: number, crc: number): TCommonCallback;
1166
- onFinishedDownloading?(player: P, virtualworld: number): TCommonCallback;
1167
- }
1168
-
1169
- interface IDialog {
1170
- style?: DialogStylesEnum;
1171
- caption?: string;
1172
- info?: string;
1173
- button1?: string;
1174
- button2?: string;
1175
- }
1176
- interface IDialogResCommon {
1177
- response: number;
1178
- listitem: number;
1179
- }
1180
- interface IDialogResRaw extends IDialogResCommon {
1181
- inputbuf: number[];
1182
- }
1183
- interface IDialogResResult extends IDialogResCommon {
1184
- inputtext: string;
1185
- }
1186
- interface ICmdErr {
1187
- code: number;
1188
- msg: string;
1189
- }
1190
- interface IVehicle {
1191
- modelid: number;
1192
- x: number;
1193
- y: number;
1194
- z: number;
1195
- z_angle: number;
1196
- colour1: string | number;
1197
- colour2: string | number;
1198
- respawn_delay?: number;
1199
- addsiren?: boolean;
1200
- }
1201
- interface IAnimateInfo {
1202
- n: string;
1203
- d: number;
1204
- }
1205
- interface IGangZone<P extends Player> {
1206
- player?: P;
1207
- minx: number;
1208
- miny: number;
1209
- maxx: number;
1210
- maxy: number;
1211
- }
1212
- interface ICommonTextDrawKey {
1213
- id: number;
1214
- global: boolean;
1215
- }
1216
- interface ITextDraw<P extends Player> {
1217
- player?: P;
1218
- x: number;
1219
- y: number;
1220
- text: string;
1221
- }
1222
- interface IDialogFuncQueue {
1223
- showId: number;
1224
- resolve: (value: IDialogResRaw | PromiseLike<IDialogResRaw>) => void;
1225
- reject: (reason: string) => void;
1226
- }
1227
- interface IDynamic {
1228
- worldid?: TStreamerExtendable;
1229
- interiorid?: TStreamerExtendable;
1230
- playerid?: TStreamerExtendable;
1231
- extended?: boolean;
1232
- }
1233
- interface IDynamicCommon extends IDynamic {
1234
- x: number;
1235
- y: number;
1236
- z: number;
1237
- areaid?: TStreamerExtendable;
1238
- streamdistance?: number;
1239
- priority?: number;
1240
- }
1241
- interface IDynamicMapIcon extends IDynamicCommon {
1242
- type: number;
1243
- colour: string | number;
1244
- style?: MapIconStyles;
1245
- }
1246
- interface IDynamicPickup extends IDynamicCommon {
1247
- type: number;
1248
- modelid: number;
1249
- }
1250
- interface IDynamicCheckPoint extends IDynamicCommon {
1251
- size: number;
1252
- }
1253
- interface IDynamicRaceCp extends IDynamicCheckPoint {
1254
- type: number;
1255
- nextx: number;
1256
- nexty: number;
1257
- nextz: number;
1258
- }
1259
- interface IDynamicActor extends IDynamicCommon {
1260
- r: number;
1261
- modelid: number;
1262
- invulnerable: boolean;
1263
- health: number;
1264
- }
1265
- interface IDynamic3DTextLabel extends IDynamicCommon {
1266
- charset?: string;
1267
- text: string;
1268
- colour: string | number;
1269
- attachedplayer?: number;
1270
- attachedvehicle?: number;
1271
- testlos?: boolean;
1272
- drawdistance: number;
1273
- }
1274
- interface IDynamicObject extends IDynamicCommon {
1275
- charset?: string;
1276
- modelid: number;
1277
- rx: number;
1278
- ry: number;
1279
- rz: number;
1280
- drawdistance?: number;
1281
- }
1282
- interface IClientResRaw {
1283
- actionid: number;
1284
- memaddr: number;
1285
- retndata: number;
1286
- }
1287
- interface IClientFuncQueue {
1288
- resolve: (value: IClientResRaw | PromiseLike<IClientResRaw>) => void;
1289
- reject: (reason: string) => void;
1290
- timeout: NodeJS.Timeout;
1291
- }
1292
- interface ICommonGangZoneKey {
1293
- id: number;
1294
- global: boolean;
1295
- }
1296
- interface IDynamicCircleCommon extends IDynamic {
1297
- x: number;
1298
- y: number;
1299
- size: number;
1300
- }
1301
- interface IDynamicCircle extends IDynamicCircleCommon {
1302
- type: "circle";
1303
- }
1304
- interface IDynamicCylinder extends IDynamicCircleCommon {
1305
- type: "cylinder";
1306
- minz: number;
1307
- maxz: number;
1308
- }
1309
- interface IDynamicSphere extends IDynamicCircleCommon {
1310
- type: "sphere";
1311
- z: number;
1312
- }
1313
- interface IDynamicRectangleCommon extends IDynamic {
1314
- minx: number;
1315
- miny: number;
1316
- maxx: number;
1317
- maxy: number;
1318
- }
1319
- interface IDynamicRectangle extends IDynamicRectangleCommon {
1320
- type: "rectangle";
1321
- }
1322
- interface IDynamicCuboid extends IDynamicRectangleCommon {
1323
- type: "cuboid";
1324
- minz: number;
1325
- maxz: number;
1326
- }
1327
- interface IDynamicPolygon extends IDynamic {
1328
- type: "polygon";
1329
- points: number[];
1330
- minz: number;
1331
- maxz: number;
1332
- }
1333
- interface IDynamicAreaKey {
1334
- id: number;
1335
- type: TDynamicAreaTypes;
1336
- }
1337
-
1338
- interface IFilterScript {
1339
- name: string;
1340
- load: (...args: Array<any>) => any;
1341
- unload: () => any;
1342
- [propName: string | number | symbol]: any;
1921
+ static getInstance(id: number): Player | undefined;
1922
+ static getInstances(): Player[];
1343
1923
  }
1344
1924
 
1345
1925
  type TEventName = string | string[];
1346
- 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>;
1347
1927
  type TLocales = Record<string, Record<string, any>>;
1348
1928
  type TPos = {
1349
1929
  x: number;
@@ -1364,146 +1944,236 @@ declare class I18n {
1364
1944
  $t: (key: string, replaceable?: any[] | undefined | null, locale?: keyof TLocales) => string;
1365
1945
  static isValidate(charset: string): void;
1366
1946
  static encodeToBuf(content: string, charset: string): number[];
1367
- static decodeFromBuf(buf: Buffer | number[], charset: string): string;
1947
+ static decodeFromBuf(buf: Buffer | number[], charset?: string): string;
1368
1948
  static getValidStr(byteArr: number[]): number[];
1369
1949
  static snakeLocaleKeys(locales: TLocales): any;
1370
1950
  }
1371
1951
 
1372
- declare class Dialog<T extends Player> {
1373
- private id;
1374
- private static showingIds;
1375
- private static max_dialogId;
1376
- private dialog;
1377
- static waitingQueue: Map<number, IDialogFuncQueue>;
1378
- constructor(dialog?: IDialog);
1379
- get style(): DialogStylesEnum | undefined;
1380
- set style(v: DialogStylesEnum | undefined);
1381
- get caption(): string | undefined;
1382
- set caption(v: string | undefined);
1383
- get info(): string | undefined;
1384
- set info(v: string | undefined);
1385
- get button1(): string | undefined;
1386
- set button1(v: string | undefined);
1387
- get button2(): string | undefined;
1388
- set button2(v: string | undefined);
1389
- private static delDialogTask;
1390
- show(player: T): Promise<IDialogResResult>;
1391
- static close<T extends Player>(player: T): void;
1392
- }
1393
-
1394
- declare class NpcEvent {
1395
- constructor();
1396
- onConnect?(myplayerid: number): TCommonCallback;
1397
- onDisconnect?(reason: string): TCommonCallback;
1398
- onModeInit?(): TCommonCallback;
1399
- onModeExit?(): TCommonCallback;
1400
- onSpawn?(): TCommonCallback;
1401
- onClientMessage?(colour: number, text: string): TCommonCallback;
1402
- }
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
+ }>;
1403
1980
 
1404
- declare class NpcFunc {
1981
+ declare class Npc {
1405
1982
  private constructor();
1406
1983
  private static recordStatus;
1407
1984
  static readonly connectNPC: (name: string, script: string) => number;
1408
- static startRecordingPlayerData<P extends Player>(player: P, recordtype: RecordTypesEnum, recordname: string): void;
1409
- static stopRecordingPlayerData<P extends Player>(player: P): void;
1985
+ static startRecordingPlayerData(player: Player, recordtype: RecordTypesEnum, recordname: string): void;
1986
+ static stopRecordingPlayerData(player: Player): void;
1410
1987
  static startRecordingPlayback(playbacktype: RecordTypesEnum, recordname: string): void;
1411
1988
  static stopRecordingPlayback(): void;
1412
1989
  static pauseRecordingPlayback(): void;
1413
1990
  static resumeRecordingPlayback(): void;
1414
1991
  }
1415
1992
 
1416
- declare class GameMode {
1417
- static charset: string;
1418
- private initialized;
1419
- constructor();
1420
- isInitialized(): boolean;
1421
- static exit(): void;
1422
- static use: (plugin: IFilterScript, ...options: Array<any>) => typeof GameMode;
1423
- static loadScript: (scriptName: string) => void;
1424
- static unloadScript: (scriptName: string) => void;
1425
- static reloadScript: (scriptName: string) => void;
1426
- static supportAllNickname(): void;
1427
- onInit?(): void;
1428
- onExit?(): void;
1429
- onIncomingConnection?(playerid: number, ipAddress: string, port: number): TCommonCallback;
1430
- onRconCommand?(cmd: string): TCommonCallback;
1431
- onRconLoginAttempt?(ip: string, password: string, success: boolean): TCommonCallback;
1432
- static allowAdminTeleport: (allow: boolean) => void;
1433
- static isAdminTeleportAllowed: () => boolean;
1434
- static allowInteriorWeapons: (allow: boolean) => void;
1435
- static areInteriorWeaponsAllowed: () => boolean;
1436
- static areAllAnimationsEnabled: () => boolean;
1437
- static enableAllAnimations: (enable: boolean) => void;
1438
- static enableStuntBonusForAll: (enable: boolean) => number;
1439
- static enableVehicleFriendlyFire: () => number;
1440
- static enableZoneNames: (enable: boolean) => number;
1441
- static disableInteriorEnterExits: () => number;
1442
- static setGameModeText: (string: string) => number;
1443
- static getGravity: () => number;
1444
- static setGravity: (gravity: number) => number;
1445
- static showNameTags: (show: boolean) => number;
1446
- static disableNameTagLOS: () => number;
1447
- static usePlayerPedAnims: () => number;
1448
- static showPlayerMarkers: (mode: MarkerModesEnum) => number;
1449
- static limitPlayerMarkerRadius: (marker_radius: number) => number;
1450
- static limitGlobalChatRadius: (chat_radius: number) => number;
1451
- static setNameTagDrawDistance: (distance: number) => number;
1452
- static setWeather(weather: number): number;
1453
- static setWorldTime(hour: number): number;
1454
- static setTeamCount: (count: number) => number;
1455
- static sendRconCommand: (command: string) => number;
1456
- 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;
1457
- 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;
1458
- static createExplosion(X: number, Y: number, Z: number, type: number, Radius: number): number;
1459
- static manualVehicleEngineAndLights: () => number;
1460
- static blockIpAddress: (ip_address: string, timems: number) => number;
1461
- static unBlockIpAddress: (ip_address: string) => number;
1462
- static getServerTickRate: () => number;
1463
- static addSimpleModel(virtualworld: number, baseid: number, newid: number, dffname: string, txdname: string): number;
1464
- static addSimpleModelTimed(virtualworld: number, baseid: number, newid: number, dffname: string, txdname: string, timeon: number, timeoff: number): number;
1465
- private static checkSimpleModel;
1466
- static findModelFileNameFromCRC: (crc: number) => string;
1467
- static findTextureFileNameFromCRC: (crc: number) => string;
1468
- static getWeaponName: (weaponid: number) => string;
1469
- static setObjectsDefaultCameraCollision: (disable: boolean) => boolean;
1470
- static vectorSize: (x1: number, y1: number, z1: number, x2: number, y2: number, z2: number) => number;
1471
- static clearBanList: () => void;
1472
- static isBanned: (ipaddress: string) => boolean;
1473
- static isValidNickName: (name: string) => boolean;
1474
- static allowNickNameCharacter: (byte: number, allow: boolean) => void;
1475
- static isNickNameCharacterAllowed: (byte: number) => boolean;
1476
- static addServerRule: (name: string, value: string) => boolean;
1477
- static setServerRule: (name: string, value: string) => boolean;
1478
- static isValidServerRule: (name: string) => boolean;
1479
- static removeServerRule: (name: string) => boolean;
1480
- static getWeaponSlot: (weaponid: number) => number;
1481
- static getAvailableClasses: () => number;
1482
- static getPlayerClass: (classid: number) => boolean | _infernus_wrapper.IPlayerClass;
1483
- 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;
1484
- static toggleChatTextReplacement: (toggle: boolean) => void;
1485
- static chatTextReplacementToggled: () => boolean;
1486
- static getConsoleVarAsString(varname: string): string;
1487
- static getConsoleVarAsInt: (varname: string) => number;
1488
- static getConsoleVarAsBool: (varname: string) => boolean;
1489
- }
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
+ };
1490
2160
 
1491
2161
  declare class NetStats {
1492
2162
  private constructor();
1493
2163
  static getNetworkStats(): string;
1494
- static getPlayerNetworkStats<P extends Player>(player: P): string;
1495
- static getBytesReceived<P extends Player>(player: P): number;
1496
- static getBytesSent<P extends Player>(player: P): number;
1497
- static getConnectionStatus<P extends Player>(player: P): ConnectionStatusEnum;
1498
- static getConnectedTime<P extends Player>(player: P): number;
1499
- static getIpPort<P extends Player>(player: P): string;
1500
- static getMessagesReceived<P extends Player>(player: P): number;
1501
- static getMessagesRecvPerSecond<P extends Player>(player: P): number;
1502
- static getMessagesSent<P extends Player>(player: P): number;
1503
- static getPacketLossPercent<P extends Player>(player: P): number;
1504
- }
1505
-
1506
- 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 {
1507
2177
  private _text;
1508
2178
  private _time;
1509
2179
  private _style;
@@ -1515,17 +2185,17 @@ declare class GameText<P extends Player = Player> {
1515
2185
  set style(value: number);
1516
2186
  constructor(str: string, time: number, style: number);
1517
2187
  static hideForAll(style: number): void;
1518
- static has<P extends Player>(player: P, style: number): boolean;
2188
+ static has(player: Player, style: number): boolean;
1519
2189
  forAll(): void;
1520
- forPlayer(player: P): void;
1521
- hideForPlayer(player: P): boolean;
2190
+ forPlayer(player: Player): void;
2191
+ hideForPlayer(player: Player): boolean;
1522
2192
  }
1523
2193
 
1524
2194
  declare class Menu {
1525
- private static menuCount;
1526
- private _id;
2195
+ private static readonly menus;
1527
2196
  private _itemCount;
1528
2197
  get itemCount(): number;
2198
+ private _id;
1529
2199
  get id(): number;
1530
2200
  private _title;
1531
2201
  get title(): string;
@@ -1553,9 +2223,8 @@ declare class Menu {
1553
2223
  disable(): void | this;
1554
2224
  disableRow(row: number): void;
1555
2225
  isValid(): boolean;
1556
- showForPlayer<P extends Player>(player: P): void | number;
1557
- hideForPlayer<P extends Player>(player: P): void | number;
1558
- 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;
1559
2228
  isDisabled(): boolean;
1560
2229
  isRowDisabled(row: number): boolean;
1561
2230
  getItems(column: number): number;
@@ -1569,75 +2238,113 @@ declare class Menu {
1569
2238
  };
1570
2239
  getColumnHeader(column: number): void | string;
1571
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;
1572
2244
  }
1573
2245
 
1574
- declare class MenuEvent<P extends Player, M extends Menu> {
1575
- private readonly menus;
1576
- private readonly players;
1577
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
1578
- onPlayerExited?(player: P, menu: M): TCommonCallback;
1579
- onPlayerSelectedRow?(player: P, menu: M, row: number): TCommonCallback;
1580
- private findPlayerById;
1581
- findMenuById(menuId: number): M | undefined;
1582
- getMenusArr(): Array<M>;
1583
- getMenusMap(): Map<number, M>;
1584
- }
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
+ }>;
1585
2260
 
1586
- 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);
1587
2266
  private _id;
1588
- private static createdGlobalCount;
1589
- private static createdPlayerCount;
1590
- readonly sourceInfo: IGangZone<P>;
1591
- constructor(gangZone: IGangZone<P>);
1592
2267
  get id(): number;
1593
2268
  create(): void;
1594
2269
  destroy(): void;
1595
- showForAll(colour: string | number): void | this;
1596
- showForPlayer(colour: string | number, player?: P): void | this;
2270
+ showForAll(color: string | number): void | this;
2271
+ showForPlayer(color: string | number, player?: Player): void | this;
1597
2272
  hideForAll(): void | this;
1598
- hideForPlayer(player?: P): void | this;
1599
- flashForAll(flashcolour: string | number): void | this;
1600
- flashForPlayer(player: P, flashcolour: string | number): void | this;
1601
- StopFlashForAll(): void | this;
1602
- 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;
1603
2278
  isValid(): boolean;
1604
- isPlayerIn(player: P): boolean;
1605
- isVisibleForPlayer(player: P): boolean;
1606
- getColourForPlayer(player: P): void | number;
1607
- getFlashColourForPlayer(player: P): void | number;
1608
- 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;
1609
2284
  getPos(): void | GangZonePos;
1610
2285
  useCheck(toggle: boolean): void | this;
1611
- private unregisterEvent;
2286
+ static getInstance(id: number, isGlobal: boolean): GangZone | undefined;
2287
+ static getInstances(isGlobal: boolean): GangZone[];
1612
2288
  }
1613
2289
 
1614
- declare class GangZoneEvent<P extends Player, G extends GangZone<P>> {
1615
- readonly gangZones: Map<ICommonGangZoneKey, G>;
1616
- private readonly players;
1617
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
1618
- onPlayerEnter?(player: P, gangZone: G): TCommonCallback;
1619
- onPlayerLeave?(player: P, gangZone: G): TCommonCallback;
1620
- }
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
+ }>;
1621
2328
 
1622
- declare class TextDraw<P extends Player> {
1623
- private static createdGlobalCount;
1624
- private static createdPlayerCount;
2329
+ declare class TextDraw {
2330
+ static readonly globalTextDraws: Map<number, TextDraw>;
2331
+ static readonly playerTextDraws: Map<number, TextDraw>;
1625
2332
  private readonly sourceInfo;
1626
2333
  private _id;
1627
2334
  get id(): number;
1628
- constructor(textDraw: ITextDraw<P>);
2335
+ constructor(textDraw: ITextDraw);
1629
2336
  create(): void | this;
1630
2337
  destroy(): void | this;
1631
2338
  setFont(style: 0 | 1 | 2 | 3 | TextDrawFontsEnum): void | this;
1632
- setColour(Colour: string | number): void | this;
1633
- setBoxColours(Colour: string | number): void | this;
1634
- 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;
1635
2342
  setAlignment(alignment: TextDrawAlignEnum): void | this;
1636
2343
  setLetterSize(x: number, y: number): void | this;
1637
2344
  setOutline(size: number): void | this;
1638
2345
  setPreviewModel(modelIndex: number): void | this;
1639
2346
  setPreviewRot(fRotX: number, fRotY: number, fRotZ: number, fZoom?: number): void | this;
1640
- setPreviewVehColours(Colour1: string, Colour2: string): void | this;
2347
+ setPreviewVehColors(color1: string, color2: string): void | this;
1641
2348
  setProportional(set?: boolean): void | this;
1642
2349
  setSelectable(set: boolean): void | this;
1643
2350
  setShadow(size: number): void | this;
@@ -1645,21 +2352,20 @@ declare class TextDraw<P extends Player> {
1645
2352
  setTextSize(x: number, y: number): void | this;
1646
2353
  useBox(use: boolean): void | this;
1647
2354
  private static beforeCreateWarn;
1648
- private unregisterEvent;
1649
- show(player?: P): void | this;
1650
- hide(player?: P): void | this;
2355
+ show(player?: Player): void | this;
2356
+ hide(player?: Player): void | this;
1651
2357
  showAll(): void | this;
1652
2358
  hideAll(): void | this;
1653
2359
  isValid(): boolean;
1654
- isVisibleForPlayer<P extends Player>(player: P): boolean;
2360
+ isVisibleForPlayer(player: Player): boolean;
1655
2361
  getString(): string;
1656
2362
  setPos(fX: number, fY: number): void | this;
1657
- getLetterSize(): void | _infernus_wrapper.ITextDrawCommonSize;
1658
- getTextSize(): void | _infernus_wrapper.ITextDrawCommonSize;
1659
- getPos(): void | _infernus_wrapper.ITextDrawCommonSize;
1660
- getColour(): number | void;
1661
- getBoxColour(): number | void;
1662
- 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;
1663
2369
  getShadow(): number | void;
1664
2370
  getOutline(): number | void;
1665
2371
  getFont(): number | void;
@@ -1668,21 +2374,36 @@ declare class TextDraw<P extends Player> {
1668
2374
  isSelectable(): boolean;
1669
2375
  getAlignment(): number | void;
1670
2376
  getPreviewModel(): number | void;
1671
- getPreviewRot(): void | _infernus_wrapper.ITextDrawRot;
1672
- getPreviewVehColours(): void | {
2377
+ getPreviewRot(): void | ITextDrawRot;
2378
+ getPreviewVehColors(): void | {
1673
2379
  color1: number;
1674
2380
  color2: number;
1675
2381
  };
1676
2382
  isGlobal(): boolean;
2383
+ static getInstance(id: number, isGlobal: boolean): TextDraw | undefined;
2384
+ static getInstances(isGlobal: boolean): TextDraw[];
1677
2385
  }
1678
2386
 
1679
- declare class TextDrawEvent<P extends Player, T extends TextDraw<P>> {
1680
- readonly textDraws: Map<ICommonTextDrawKey, T>;
1681
- private readonly players;
1682
- constructor(playersMap: Map<number, P>, destroyOnExit?: boolean);
1683
- onPlayerClick?(player: P, textdraw: T | InvalidEnum.TEXT_DRAW): TCommonCallback;
1684
- }
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
+ }>;
1685
2401
 
1686
2402
  declare const rgba: (value: string | number) => number;
1687
2403
 
1688
- 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 };