@infernus/core 0.9.8 → 0.10.0-beta.11

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