@panda0day/fivex 0.2.1 → 0.3.1
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/client/entities/entity.d.ts +3 -2
- package/dist/client/entities/entity.d.ts.map +1 -1
- package/dist/client/entities/entity.js +6 -3
- package/dist/client/entities/entity.js.map +1 -1
- package/dist/client/entities/local-player.d.ts +1 -0
- package/dist/client/entities/local-player.d.ts.map +1 -1
- package/dist/client/entities/local-player.js +3 -0
- package/dist/client/entities/local-player.js.map +1 -1
- package/dist/client/entities/vehicle.d.ts +46 -2
- package/dist/client/entities/vehicle.d.ts.map +1 -1
- package/dist/client/entities/vehicle.js +135 -3
- package/dist/client/entities/vehicle.js.map +1 -1
- package/dist/client/managers/client-pool.d.ts +1 -0
- package/dist/client/managers/client-pool.d.ts.map +1 -1
- package/dist/client/managers/client-pool.js +11 -0
- package/dist/client/managers/client-pool.js.map +1 -1
- package/dist/client/managers/vehicle-pool.d.ts +5 -0
- package/dist/client/managers/vehicle-pool.d.ts.map +1 -1
- package/dist/client/managers/vehicle-pool.js +21 -0
- package/dist/client/managers/vehicle-pool.js.map +1 -1
- package/dist/server/core.d.ts +2 -0
- package/dist/server/core.d.ts.map +1 -1
- package/dist/server/core.js +2 -0
- package/dist/server/core.js.map +1 -1
- package/dist/server/entities/object.d.ts +1 -0
- package/dist/server/entities/object.d.ts.map +1 -1
- package/dist/server/entities/object.js +3 -0
- package/dist/server/entities/object.js.map +1 -1
- package/dist/server/entities/ped.d.ts +1 -0
- package/dist/server/entities/ped.d.ts.map +1 -1
- package/dist/server/entities/ped.js +3 -0
- package/dist/server/entities/ped.js.map +1 -1
- package/dist/server/entities/vehicle.d.ts +15 -0
- package/dist/server/entities/vehicle.d.ts.map +1 -1
- package/dist/server/entities/vehicle.js +47 -1
- package/dist/server/entities/vehicle.js.map +1 -1
- package/dist/server/managers/object-pool.d.ts +13 -0
- package/dist/server/managers/object-pool.d.ts.map +1 -0
- package/dist/server/managers/object-pool.js +32 -0
- package/dist/server/managers/object-pool.js.map +1 -0
- package/dist/server/managers/ped-pool.d.ts +13 -0
- package/dist/server/managers/ped-pool.d.ts.map +1 -0
- package/dist/server/managers/ped-pool.js +32 -0
- package/dist/server/managers/ped-pool.js.map +1 -0
- package/dist/server/managers/vehicle-pool.d.ts +5 -0
- package/dist/server/managers/vehicle-pool.d.ts.map +1 -1
- package/dist/server/managers/vehicle-pool.js +18 -0
- package/dist/server/managers/vehicle-pool.js.map +1 -1
- package/dist/shared/pool-base.d.ts +2 -0
- package/dist/shared/pool-base.d.ts.map +1 -1
- package/dist/shared/pool-base.js +15 -0
- package/dist/shared/pool-base.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { type IVector3, Vector3 } from "../../shared";
|
|
2
2
|
export declare class Entity {
|
|
3
|
-
|
|
4
|
-
constructor(
|
|
3
|
+
protected _handle: number;
|
|
4
|
+
constructor(_handle: number);
|
|
5
|
+
get handle(): number;
|
|
5
6
|
get exists(): boolean;
|
|
6
7
|
get model(): number;
|
|
7
8
|
get isNetworked(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/client/entities/entity.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,QAAQ,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEtD,qBAAa,MAAM;
|
|
1
|
+
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/client/entities/entity.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,QAAQ,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEtD,qBAAa,MAAM;IACN,SAAS,CAAC,OAAO,EAAE,MAAM;gBAAf,OAAO,EAAE,MAAM;IAErC,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,WAAW,IAAI,OAAO,CAEzB;IAED,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAEvB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,QAAQ,CAAC,CAAC,EAAE,QAAQ,EAEvB;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,OAAO,CAAC,CAAC,EAAE,MAAM,EAEpB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,MAAM,CAAC,CAAC,EAAE,MAAM,EAEnB;IAED,MAAM,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAI7B,YAAY,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAInC,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAI7B,UAAU,IAAI,IAAI;IAIlB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,GAAG,MAAM;IAK5C,MAAM,IAAI,IAAI;CAGd"}
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
/// <reference types="@citizenfx/client" />
|
|
2
2
|
import { Vector3 } from "../../shared";
|
|
3
3
|
export class Entity {
|
|
4
|
-
|
|
5
|
-
constructor(
|
|
6
|
-
this.
|
|
4
|
+
_handle;
|
|
5
|
+
constructor(_handle) {
|
|
6
|
+
this._handle = _handle;
|
|
7
|
+
}
|
|
8
|
+
get handle() {
|
|
9
|
+
return this._handle;
|
|
7
10
|
}
|
|
8
11
|
get exists() {
|
|
9
12
|
return DoesEntityExist(this.handle);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.js","sourceRoot":"","sources":["../../../src/client/entities/entity.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAE3C,OAAO,EAAiB,OAAO,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,OAAO,MAAM;
|
|
1
|
+
{"version":3,"file":"entity.js","sourceRoot":"","sources":["../../../src/client/entities/entity.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAE3C,OAAO,EAAiB,OAAO,EAAE,MAAM,cAAc,CAAC;AAEtD,MAAM,OAAO,MAAM;IACI;IAAtB,YAAsB,OAAe;QAAf,YAAO,GAAP,OAAO,CAAQ;IAAG,CAAC;IAEzC,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,OAAO,CAAC;IACrB,CAAC;IAED,IAAI,MAAM;QACT,OAAO,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,KAAK;QACR,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,WAAW;QACd,OAAO,2BAA2B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,IAAI,KAAK;QACR,OAAO,6BAA6B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnD,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IAC1D,CAAC;IAED,IAAI,QAAQ,CAAC,CAAW;QACvB,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,QAAQ,CAAC,CAAW;QACvB,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;IACxD,CAAC;IAED,IAAI,OAAO;QACV,OAAO,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,OAAO,CAAC,CAAS;QACpB,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,MAAM;QACT,OAAO,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,MAAM,CAAC,CAAS;QACnB,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,CAAC,MAAe;QACrB,oBAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,YAAY,CAAC,MAAe;QAC3B,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,QAAQ,CAAC,KAAa;QACrB,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC3C,CAAC;IAED,UAAU;QACT,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED,UAAU,CAAC,KAAwB;QAClC,MAAM,CAAC,GAAG,KAAK,YAAY,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;QAC3D,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,MAAM;QACL,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3B,CAAC;CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-player.d.ts","sourceRoot":"","sources":["../../../src/client/entities/local-player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,qBAAa,WAAY,SAAQ,GAAG;;IAKnC,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,cAAc,IAAI,OAAO,GAAG,IAAI,CAGnC;CACD"}
|
|
1
|
+
{"version":3,"file":"local-player.d.ts","sourceRoot":"","sources":["../../../src/client/entities/local-player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,qBAAa,WAAY,SAAQ,GAAG;;IAKnC,IAAI,MAAM,WAET;IAED,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,cAAc,IAAI,OAAO,GAAG,IAAI,CAGnC;CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-player.js","sourceRoot":"","sources":["../../../src/client/entities/local-player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,OAAO,WAAY,SAAQ,GAAG;IACnC;QACC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,cAAc;QACjB,MAAM,GAAG,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAClD,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,CAAC;CACD"}
|
|
1
|
+
{"version":3,"file":"local-player.js","sourceRoot":"","sources":["../../../src/client/entities/local-player.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,MAAM,OAAO,WAAY,SAAQ,GAAG;IACnC;QACC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IACtB,CAAC;IAED,IAAI,MAAM;QACT,OAAO,WAAW,EAAE,CAAC;IACtB,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,cAAc;QACjB,MAAM,GAAG,GAAG,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAClD,OAAO,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAC5C,CAAC;CACD"}
|
|
@@ -1,8 +1,52 @@
|
|
|
1
1
|
import { Entity } from "./entity";
|
|
2
2
|
export declare class Vehicle extends Entity {
|
|
3
3
|
get speed(): number;
|
|
4
|
-
get
|
|
5
|
-
|
|
4
|
+
get maxSpeed(): number;
|
|
5
|
+
get currentGear(): number;
|
|
6
|
+
get class(): number;
|
|
7
|
+
get vehicleType(): string;
|
|
8
|
+
get driver(): number;
|
|
9
|
+
getPedInSeat(seat: number): number;
|
|
10
|
+
isSeatFree(seat: number): boolean;
|
|
11
|
+
get maxPassengers(): number;
|
|
12
|
+
get bodyHealth(): number;
|
|
13
|
+
set bodyHealth(v: number);
|
|
14
|
+
get engineHealth(): number;
|
|
15
|
+
set engineHealth(v: number);
|
|
16
|
+
get tankHealth(): number;
|
|
17
|
+
set tankHealth(v: number);
|
|
18
|
+
get fuelLevel(): number;
|
|
19
|
+
set fuelLevel(v: number);
|
|
20
|
+
get engineRunning(): boolean;
|
|
21
|
+
set engineOn(on: boolean);
|
|
6
22
|
repair(): void;
|
|
23
|
+
setUndriveable(toggle: boolean): void;
|
|
24
|
+
setHandbrake(toggle: boolean): void;
|
|
25
|
+
placeOnGround(): void;
|
|
26
|
+
get numberPlate(): string;
|
|
27
|
+
set numberPlate(text: string);
|
|
28
|
+
get livery(): number;
|
|
29
|
+
set livery(index: number);
|
|
30
|
+
get dirtLevel(): number;
|
|
31
|
+
set dirtLevel(v: number);
|
|
32
|
+
get windowTint(): number;
|
|
33
|
+
set windowTint(tint: number);
|
|
34
|
+
get colours(): [number, number];
|
|
35
|
+
setColours(primary: number, secondary: number): void;
|
|
36
|
+
setCustomPrimaryColour(r: number, g: number, b: number): void;
|
|
37
|
+
setCustomSecondaryColour(r: number, g: number, b: number): void;
|
|
38
|
+
get wheelType(): number;
|
|
39
|
+
set wheelType(type: number);
|
|
40
|
+
setModKit(kit: number): void;
|
|
41
|
+
getMod(modType: number): number;
|
|
42
|
+
setMod(modType: number, modIndex: number, customTires?: boolean): void;
|
|
43
|
+
toggleMod(modType: number, toggle: boolean): void;
|
|
44
|
+
setNeonEnabled(index: number, toggle: boolean): void;
|
|
45
|
+
setNeonColour(r: number, g: number, b: number): void;
|
|
46
|
+
setTyreSmokeColour(r: number, g: number, b: number): void;
|
|
47
|
+
get locked(): boolean;
|
|
48
|
+
setDoorsLocked(locked: boolean): void;
|
|
49
|
+
setDoorsLockedForAllPlayers(locked: boolean): void;
|
|
50
|
+
setAlarm(active: boolean): void;
|
|
7
51
|
}
|
|
8
52
|
//# sourceMappingURL=vehicle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vehicle.d.ts","sourceRoot":"","sources":["../../../src/client/entities/vehicle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,OAAQ,SAAQ,MAAM;IAClC,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,QAAQ,IAAI,OAAO,CAEtB;IAED,IAAI,QAAQ,CAAC,CAAC,EAAE,OAAO,EAEtB;IAED,MAAM,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"vehicle.d.ts","sourceRoot":"","sources":["../../../src/client/entities/vehicle.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,14 +3,146 @@ export class Vehicle extends Entity {
|
|
|
3
3
|
get speed() {
|
|
4
4
|
return GetEntitySpeed(this.handle);
|
|
5
5
|
}
|
|
6
|
-
get
|
|
6
|
+
get maxSpeed() {
|
|
7
|
+
return GetVehicleMaxSpeed(this.handle);
|
|
8
|
+
}
|
|
9
|
+
get currentGear() {
|
|
10
|
+
return GetVehicleCurrentGear(this.handle);
|
|
11
|
+
}
|
|
12
|
+
get class() {
|
|
13
|
+
return GetVehicleClass(this.handle);
|
|
14
|
+
}
|
|
15
|
+
get vehicleType() {
|
|
16
|
+
return GetVehicleType(this.handle);
|
|
17
|
+
}
|
|
18
|
+
get driver() {
|
|
19
|
+
return GetPedInVehicleSeat(this.handle, -1);
|
|
20
|
+
}
|
|
21
|
+
getPedInSeat(seat) {
|
|
22
|
+
return GetPedInVehicleSeat(this.handle, seat);
|
|
23
|
+
}
|
|
24
|
+
isSeatFree(seat) {
|
|
25
|
+
return IsVehicleSeatFree(this.handle, seat);
|
|
26
|
+
}
|
|
27
|
+
get maxPassengers() {
|
|
28
|
+
return GetVehicleMaxNumberOfPassengers(this.handle);
|
|
29
|
+
}
|
|
30
|
+
get bodyHealth() {
|
|
31
|
+
return GetVehicleBodyHealth(this.handle);
|
|
32
|
+
}
|
|
33
|
+
set bodyHealth(v) {
|
|
34
|
+
SetVehicleBodyHealth(this.handle, v);
|
|
35
|
+
}
|
|
36
|
+
get engineHealth() {
|
|
37
|
+
return GetVehicleEngineHealth(this.handle);
|
|
38
|
+
}
|
|
39
|
+
set engineHealth(v) {
|
|
40
|
+
SetVehicleEngineHealth(this.handle, v);
|
|
41
|
+
}
|
|
42
|
+
get tankHealth() {
|
|
43
|
+
return GetVehiclePetrolTankHealth(this.handle);
|
|
44
|
+
}
|
|
45
|
+
set tankHealth(v) {
|
|
46
|
+
SetVehiclePetrolTankHealth(this.handle, v);
|
|
47
|
+
}
|
|
48
|
+
get fuelLevel() {
|
|
49
|
+
return GetVehicleFuelLevel(this.handle);
|
|
50
|
+
}
|
|
51
|
+
set fuelLevel(v) {
|
|
52
|
+
SetVehicleFuelLevel(this.handle, v);
|
|
53
|
+
}
|
|
54
|
+
get engineRunning() {
|
|
7
55
|
return GetIsVehicleEngineRunning(this.handle);
|
|
8
56
|
}
|
|
9
|
-
set engineOn(
|
|
10
|
-
SetVehicleEngineOn(this.handle,
|
|
57
|
+
set engineOn(on) {
|
|
58
|
+
SetVehicleEngineOn(this.handle, on, true, true);
|
|
11
59
|
}
|
|
12
60
|
repair() {
|
|
13
61
|
SetVehicleFixed(this.handle);
|
|
14
62
|
}
|
|
63
|
+
setUndriveable(toggle) {
|
|
64
|
+
SetVehicleUndriveable(this.handle, toggle);
|
|
65
|
+
}
|
|
66
|
+
setHandbrake(toggle) {
|
|
67
|
+
SetVehicleHandbrake(this.handle, toggle);
|
|
68
|
+
}
|
|
69
|
+
placeOnGround() {
|
|
70
|
+
SetVehicleOnGroundProperly(this.handle);
|
|
71
|
+
}
|
|
72
|
+
get numberPlate() {
|
|
73
|
+
return GetVehicleNumberPlateText(this.handle);
|
|
74
|
+
}
|
|
75
|
+
set numberPlate(text) {
|
|
76
|
+
SetVehicleNumberPlateText(this.handle, text);
|
|
77
|
+
}
|
|
78
|
+
get livery() {
|
|
79
|
+
return GetVehicleLivery(this.handle);
|
|
80
|
+
}
|
|
81
|
+
set livery(index) {
|
|
82
|
+
SetVehicleLivery(this.handle, index);
|
|
83
|
+
}
|
|
84
|
+
get dirtLevel() {
|
|
85
|
+
return GetVehicleDirtLevel(this.handle);
|
|
86
|
+
}
|
|
87
|
+
set dirtLevel(v) {
|
|
88
|
+
SetVehicleDirtLevel(this.handle, v);
|
|
89
|
+
}
|
|
90
|
+
get windowTint() {
|
|
91
|
+
return GetVehicleWindowTint(this.handle);
|
|
92
|
+
}
|
|
93
|
+
set windowTint(tint) {
|
|
94
|
+
SetVehicleWindowTint(this.handle, tint);
|
|
95
|
+
}
|
|
96
|
+
get colours() {
|
|
97
|
+
return GetVehicleColours(this.handle);
|
|
98
|
+
}
|
|
99
|
+
setColours(primary, secondary) {
|
|
100
|
+
SetVehicleColours(this.handle, primary, secondary);
|
|
101
|
+
}
|
|
102
|
+
setCustomPrimaryColour(r, g, b) {
|
|
103
|
+
SetVehicleCustomPrimaryColour(this.handle, r, g, b);
|
|
104
|
+
}
|
|
105
|
+
setCustomSecondaryColour(r, g, b) {
|
|
106
|
+
SetVehicleCustomSecondaryColour(this.handle, r, g, b);
|
|
107
|
+
}
|
|
108
|
+
get wheelType() {
|
|
109
|
+
return GetVehicleWheelType(this.handle);
|
|
110
|
+
}
|
|
111
|
+
set wheelType(type) {
|
|
112
|
+
SetVehicleWheelType(this.handle, type);
|
|
113
|
+
}
|
|
114
|
+
setModKit(kit) {
|
|
115
|
+
SetVehicleModKit(this.handle, kit);
|
|
116
|
+
}
|
|
117
|
+
getMod(modType) {
|
|
118
|
+
return GetVehicleMod(this.handle, modType);
|
|
119
|
+
}
|
|
120
|
+
setMod(modType, modIndex, customTires = false) {
|
|
121
|
+
SetVehicleMod(this.handle, modType, modIndex, customTires);
|
|
122
|
+
}
|
|
123
|
+
toggleMod(modType, toggle) {
|
|
124
|
+
ToggleVehicleMod(this.handle, modType, toggle);
|
|
125
|
+
}
|
|
126
|
+
setNeonEnabled(index, toggle) {
|
|
127
|
+
SetVehicleNeonLightEnabled(this.handle, index, toggle);
|
|
128
|
+
}
|
|
129
|
+
setNeonColour(r, g, b) {
|
|
130
|
+
SetVehicleNeonLightsColour(this.handle, r, g, b);
|
|
131
|
+
}
|
|
132
|
+
setTyreSmokeColour(r, g, b) {
|
|
133
|
+
SetVehicleTyreSmokeColor(this.handle, r, g, b);
|
|
134
|
+
}
|
|
135
|
+
get locked() {
|
|
136
|
+
return GetVehicleDoorLockStatus(this.handle) === 2;
|
|
137
|
+
}
|
|
138
|
+
setDoorsLocked(locked) {
|
|
139
|
+
SetVehicleDoorsLocked(this.handle, locked ? 2 : 1);
|
|
140
|
+
}
|
|
141
|
+
setDoorsLockedForAllPlayers(locked) {
|
|
142
|
+
SetVehicleDoorsLockedForAllPlayers(this.handle, locked);
|
|
143
|
+
}
|
|
144
|
+
setAlarm(active) {
|
|
145
|
+
SetVehicleAlarm(this.handle, active);
|
|
146
|
+
}
|
|
15
147
|
}
|
|
16
148
|
//# sourceMappingURL=vehicle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vehicle.js","sourceRoot":"","sources":["../../../src/client/entities/vehicle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,OAAO,OAAQ,SAAQ,MAAM;IAClC,IAAI,KAAK;QACR,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,QAAQ,CAAC,
|
|
1
|
+
{"version":3,"file":"vehicle.js","sourceRoot":"","sources":["../../../src/client/entities/vehicle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,OAAO,OAAQ,SAAQ,MAAM;IAClC,IAAI,KAAK;QACR,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,QAAQ;QACX,OAAO,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,WAAW;QACd,OAAO,qBAAqB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,KAAK;QACR,OAAO,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,WAAW;QACd,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,MAAM;QACT,OAAO,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,YAAY,CAAC,IAAY;QACxB,OAAO,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,UAAU,CAAC,IAAY;QACtB,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,+BAA+B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,UAAU;QACb,OAAO,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,UAAU,CAAC,CAAS;QACvB,oBAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,YAAY;QACf,OAAO,sBAAsB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,YAAY,CAAC,CAAS;QACzB,sBAAsB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACxC,CAAC;IAED,IAAI,UAAU;QACb,OAAO,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,UAAU,CAAC,CAAS;QACvB,0BAA0B,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,SAAS,CAAC,CAAS;QACtB,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,aAAa;QAChB,OAAO,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,QAAQ,CAAC,EAAW;QACvB,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IAED,MAAM;QACL,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED,cAAc,CAAC,MAAe;QAC7B,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED,YAAY,CAAC,MAAe;QAC3B,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,aAAa;QACZ,0BAA0B,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,WAAW;QACd,OAAO,yBAAyB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,WAAW,CAAC,IAAY;QAC3B,yBAAyB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,IAAI,MAAM;QACT,OAAO,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,MAAM,CAAC,KAAa;QACvB,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,SAAS,CAAC,CAAS;QACtB,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACrC,CAAC;IAED,IAAI,UAAU;QACb,OAAO,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,IAAI,UAAU,CAAC,IAAY;QAC1B,oBAAoB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,OAAO;QACV,OAAO,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAgC,CAAC;IACtE,CAAC;IAED,UAAU,CAAC,OAAe,EAAE,SAAiB;QAC5C,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACpD,CAAC;IAED,sBAAsB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;QACrD,6BAA6B,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACrD,CAAC;IAED,wBAAwB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;QACvD,+BAA+B,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,SAAS;QACZ,OAAO,mBAAmB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,IAAI,SAAS,CAAC,IAAY;QACzB,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAED,SAAS,CAAC,GAAW;QACpB,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACpC,CAAC;IAED,MAAM,CAAC,OAAe;QACrB,OAAO,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,OAAe,EAAE,QAAgB,EAAE,WAAW,GAAG,KAAK;QAC5D,aAAa,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IAC5D,CAAC;IAED,SAAS,CAAC,OAAe,EAAE,MAAe;QACzC,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;IAED,cAAc,CAAC,KAAa,EAAE,MAAe;QAC5C,0BAA0B,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IACxD,CAAC;IAED,aAAa,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;QAC5C,0BAA0B,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAClD,CAAC;IAED,kBAAkB,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS;QACjD,wBAAwB,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,IAAI,MAAM;QACT,OAAO,wBAAwB,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IACpD,CAAC;IAED,cAAc,CAAC,MAAe;QAC7B,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACpD,CAAC;IAED,2BAA2B,CAAC,MAAe;QAC1C,kCAAkC,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzD,CAAC;IAED,QAAQ,CAAC,MAAe;QACvB,eAAe,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC,CAAC;CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-pool.d.ts","sourceRoot":"","sources":["../../../src/client/managers/client-pool.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"client-pool.d.ts","sourceRoot":"","sources":["../../../src/client/managers/client-pool.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,8BAAsB,UAAU,CAAC,CAAC,CAAE,SAAQ,IAAI,CAAC,CAAC,CAAC;IAClD,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;IAMrC,oBAAoB,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,EAAE,MAAM,EAAE,KAAK;CAWzD"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/// <reference types="@citizenfx/client" />
|
|
2
|
+
import { Vector3 } from "../../shared";
|
|
2
3
|
import { Pool } from "../../shared/pool-base";
|
|
3
4
|
export class ClientPool extends Pool {
|
|
4
5
|
atNetId(netId) {
|
|
@@ -7,5 +8,15 @@ export class ClientPool extends Pool {
|
|
|
7
8
|
const handle = NetworkGetEntityFromNetworkId(netId);
|
|
8
9
|
return handle !== 0 ? this.wrap(handle) : undefined;
|
|
9
10
|
}
|
|
11
|
+
forEachInStreamRange(fn, radius) {
|
|
12
|
+
const origin = Vector3.from(GetEntityCoords(PlayerPedId(), false));
|
|
13
|
+
const r2 = radius * radius;
|
|
14
|
+
this.ids().forEach((id) => {
|
|
15
|
+
const item = this.wrap(id);
|
|
16
|
+
if (item.position.distanceToSquared(origin) <= r2) {
|
|
17
|
+
fn(item);
|
|
18
|
+
}
|
|
19
|
+
});
|
|
20
|
+
}
|
|
10
21
|
}
|
|
11
22
|
//# sourceMappingURL=client-pool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client-pool.js","sourceRoot":"","sources":["../../../src/client/managers/client-pool.ts"],"names":[],"mappings":"AAAA,2CAA2C;
|
|
1
|
+
{"version":3,"file":"client-pool.js","sourceRoot":"","sources":["../../../src/client/managers/client-pool.ts"],"names":[],"mappings":"AAAA,2CAA2C;AAE3C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAE9C,MAAM,OAAgB,UAAc,SAAQ,IAAO;IAClD,OAAO,CAAC,KAAa;QACpB,IAAI,CAAC,yBAAyB,CAAC,KAAK,CAAC;YAAE,OAAO,SAAS,CAAC;QACxD,MAAM,MAAM,GAAG,6BAA6B,CAAC,KAAK,CAAC,CAAC;QACpD,OAAO,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACrD,CAAC;IAED,oBAAoB,CAAC,EAAqB,EAAE,MAAa;QACxD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;QACnE,MAAM,EAAE,GAAG,MAAM,GAAG,MAAM,CAAC;QAE3B,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE;YACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3B,IAAK,IAAY,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC5D,EAAE,CAAC,IAAI,CAAC,CAAC;YACV,CAAC;QACF,CAAC,CAAC,CAAC;IACJ,CAAC;CACD"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
+
import { type IVector3 } from "../../shared";
|
|
1
2
|
import { Vehicle } from "../entities/vehicle";
|
|
2
3
|
import { ClientPool } from "./client-pool";
|
|
3
4
|
export declare class VehiclePool extends ClientPool<Vehicle> {
|
|
4
5
|
protected ids(): number[];
|
|
5
6
|
protected wrap(id: number): Vehicle;
|
|
6
7
|
at(handle: number): Vehicle;
|
|
8
|
+
getClosest(to: IVector3): Vehicle | undefined;
|
|
9
|
+
getInRange(to: IVector3, radius: number): Vehicle[];
|
|
10
|
+
getByModel(model: string | number): Vehicle[];
|
|
11
|
+
new(model: string | number, position: IVector3): Promise<Vehicle | null>;
|
|
7
12
|
}
|
|
8
13
|
//# sourceMappingURL=vehicle-pool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vehicle-pool.d.ts","sourceRoot":"","sources":["../../../src/client/managers/vehicle-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,qBAAa,WAAY,SAAQ,UAAU,CAAC,OAAO,CAAC;IACnD,SAAS,CAAC,GAAG,IAAI,MAAM,EAAE;IAIzB,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAInC,EAAE,CAAC,MAAM,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"vehicle-pool.d.ts","sourceRoot":"","sources":["../../../src/client/managers/vehicle-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAW,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,qBAAa,WAAY,SAAQ,UAAU,CAAC,OAAO,CAAC;IACnD,SAAS,CAAC,GAAG,IAAI,MAAM,EAAE;IAIzB,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAInC,EAAE,CAAC,MAAM,EAAE,MAAM;IAIjB,UAAU,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS;IAI7C,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,EAAE;IASnD,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE;IAKvC,GAAG,CACR,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,QAAQ,EAAE,QAAQ,GAChB,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC;CAkB1B"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Vector3 } from "../../shared";
|
|
1
2
|
import { Vehicle } from "../entities/vehicle";
|
|
2
3
|
import { ClientPool } from "./client-pool";
|
|
3
4
|
export class VehiclePool extends ClientPool {
|
|
@@ -10,5 +11,25 @@ export class VehiclePool extends ClientPool {
|
|
|
10
11
|
at(handle) {
|
|
11
12
|
return new Vehicle(handle);
|
|
12
13
|
}
|
|
14
|
+
getClosest(to) {
|
|
15
|
+
return this.getClosestBy(to, (v) => v.position);
|
|
16
|
+
}
|
|
17
|
+
getInRange(to, radius) {
|
|
18
|
+
const origin = Vector3.from(to);
|
|
19
|
+
const r2 = radius * radius;
|
|
20
|
+
return this.toArray().filter((v) => v.position.distanceToSquared(origin) <= r2);
|
|
21
|
+
}
|
|
22
|
+
getByModel(model) {
|
|
23
|
+
const hash = typeof model === "string" ? GetHashKey(model) : model;
|
|
24
|
+
return this.toArray().filter((v) => v.model === hash);
|
|
25
|
+
}
|
|
26
|
+
async new(model, position) {
|
|
27
|
+
const hash = typeof model === "string" ? GetHashKey(model) : model;
|
|
28
|
+
RequestModel(hash);
|
|
29
|
+
while (!HasModelLoaded(hash))
|
|
30
|
+
await new Promise((resolve) => setTimeout(resolve, 0));
|
|
31
|
+
const handle = CreateVehicle(hash, position.x, position.y, position.z, 0, false, false);
|
|
32
|
+
return handle !== 0 ? new Vehicle(handle) : null;
|
|
33
|
+
}
|
|
13
34
|
}
|
|
14
35
|
//# sourceMappingURL=vehicle-pool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vehicle-pool.js","sourceRoot":"","sources":["../../../src/client/managers/vehicle-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,OAAO,WAAY,SAAQ,UAAmB;IACzC,GAAG;QACZ,OAAO,WAAW,CAAC,UAAU,CAAa,CAAC;IAC5C,CAAC;IAES,IAAI,CAAC,EAAU;QACxB,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC;IAED,EAAE,CAAC,MAAc;QAChB,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;CACD"}
|
|
1
|
+
{"version":3,"file":"vehicle-pool.js","sourceRoot":"","sources":["../../../src/client/managers/vehicle-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,OAAO,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,OAAO,WAAY,SAAQ,UAAmB;IACzC,GAAG;QACZ,OAAO,WAAW,CAAC,UAAU,CAAa,CAAC;IAC5C,CAAC;IAES,IAAI,CAAC,EAAU;QACxB,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC;IAED,EAAE,CAAC,MAAc;QAChB,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,UAAU,CAAC,EAAY;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,UAAU,CAAC,EAAY,EAAE,MAAc;QACtC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,EAAE,GAAG,MAAM,GAAG,MAAM,CAAC;QAE3B,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAC3B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,CACjD,CAAC;IACH,CAAC;IAED,UAAU,CAAC,KAAsB;QAChC,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACnE,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,GAAG,CACR,KAAsB,EACtB,QAAkB;QAElB,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAEnE,YAAY,CAAC,IAAI,CAAC,CAAC;QACnB,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC;YAC3B,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;QAExD,MAAM,MAAM,GAAG,aAAa,CAC3B,IAAI,EACJ,QAAQ,CAAC,CAAC,EACV,QAAQ,CAAC,CAAC,EACV,QAAQ,CAAC,CAAC,EACV,CAAC,EACD,KAAK,EACL,KAAK,CACL,CAAC;QACF,OAAO,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClD,CAAC;CACD"}
|
package/dist/server/core.d.ts
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Vector3 } from "../shared";
|
|
2
2
|
import { BlipManager } from "./blips";
|
|
3
3
|
import { EventManager } from "./managers/event-manager";
|
|
4
|
+
import { ObjectPool } from "./managers/object-pool";
|
|
4
5
|
import { PlayerPool } from "./managers/player-pool";
|
|
5
6
|
import { VehiclePool } from "./managers/vehicle-pool";
|
|
6
7
|
export declare class Core {
|
|
@@ -9,5 +10,6 @@ export declare class Core {
|
|
|
9
10
|
readonly Vector3: typeof Vector3;
|
|
10
11
|
readonly blips: BlipManager;
|
|
11
12
|
readonly vehicles: VehiclePool;
|
|
13
|
+
readonly objects: ObjectPool;
|
|
12
14
|
}
|
|
13
15
|
//# sourceMappingURL=core.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/server/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,qBAAa,IAAI;IAChB,QAAQ,CAAC,MAAM,eAAsB;IACrC,QAAQ,CAAC,OAAO,aAAoB;IACpC,QAAQ,CAAC,OAAO,iBAAW;IAC3B,QAAQ,CAAC,KAAK,cAAqB;IAEnC,QAAQ,CAAC,QAAQ,cAAqB;
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/server/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,qBAAa,IAAI;IAChB,QAAQ,CAAC,MAAM,eAAsB;IACrC,QAAQ,CAAC,OAAO,aAAoB;IACpC,QAAQ,CAAC,OAAO,iBAAW;IAC3B,QAAQ,CAAC,KAAK,cAAqB;IAEnC,QAAQ,CAAC,QAAQ,cAAqB;IACtC,QAAQ,CAAC,OAAO,aAAoB;CACpC"}
|
package/dist/server/core.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Vector3 } from "../shared";
|
|
2
2
|
import { BlipManager } from "./blips";
|
|
3
3
|
import { EventManager } from "./managers/event-manager";
|
|
4
|
+
import { ObjectPool } from "./managers/object-pool";
|
|
4
5
|
import { PlayerPool } from "./managers/player-pool";
|
|
5
6
|
import { VehiclePool } from "./managers/vehicle-pool";
|
|
6
7
|
export class Core {
|
|
@@ -9,5 +10,6 @@ export class Core {
|
|
|
9
10
|
Vector3 = Vector3;
|
|
10
11
|
blips = new BlipManager();
|
|
11
12
|
vehicles = new VehiclePool();
|
|
13
|
+
objects = new ObjectPool();
|
|
12
14
|
}
|
|
13
15
|
//# sourceMappingURL=core.js.map
|
package/dist/server/core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/server/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,MAAM,OAAO,IAAI;IACP,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;IAC5B,OAAO,GAAG,IAAI,UAAU,EAAE,CAAC;IAC3B,OAAO,GAAG,OAAO,CAAC;IAClB,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC;IAE1B,QAAQ,GAAG,IAAI,WAAW,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../src/server/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,MAAM,OAAO,IAAI;IACP,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;IAC5B,OAAO,GAAG,IAAI,UAAU,EAAE,CAAC;IAC3B,OAAO,GAAG,OAAO,CAAC;IAClB,KAAK,GAAG,IAAI,WAAW,EAAE,CAAC;IAE1B,QAAQ,GAAG,IAAI,WAAW,EAAE,CAAC;IAC7B,OAAO,GAAG,IAAI,UAAU,EAAE,CAAC;CACpC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../src/server/entities/object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,UAAW,SAAQ,MAAM;
|
|
1
|
+
{"version":3,"file":"object.d.ts","sourceRoot":"","sources":["../../../src/server/entities/object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,UAAW,SAAQ,MAAM;IACrC,IAAI,KAAK,WAER;CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"object.js","sourceRoot":"","sources":["../../../src/server/entities/object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,OAAO,UAAW,SAAQ,MAAM;
|
|
1
|
+
{"version":3,"file":"object.js","sourceRoot":"","sources":["../../../src/server/entities/object.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,OAAO,UAAW,SAAQ,MAAM;IACrC,IAAI,KAAK;QACR,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ped.d.ts","sourceRoot":"","sources":["../../../src/server/entities/ped.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,GAAI,SAAQ,MAAM;IAC9B,IAAI,MAAM,IAAI,MAAM,CAEnB;CACD"}
|
|
1
|
+
{"version":3,"file":"ped.d.ts","sourceRoot":"","sources":["../../../src/server/entities/ped.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,GAAI,SAAQ,MAAM;IAC9B,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;CACD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ped.js","sourceRoot":"","sources":["../../../src/server/entities/ped.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,OAAO,GAAI,SAAQ,MAAM;IAC9B,IAAI,MAAM;QACT,OAAO,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;CACD"}
|
|
1
|
+
{"version":3,"file":"ped.js","sourceRoot":"","sources":["../../../src/server/entities/ped.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,OAAO,GAAI,SAAQ,MAAM;IAC9B,IAAI,KAAK;QACR,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,MAAM;QACT,OAAO,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClC,CAAC;CACD"}
|
|
@@ -1,18 +1,33 @@
|
|
|
1
1
|
import { Entity } from "./entity";
|
|
2
2
|
export declare class Vehicle extends Entity {
|
|
3
3
|
get driver(): number;
|
|
4
|
+
getPedInSeat(seat: number): number;
|
|
4
5
|
get bodyHealth(): number;
|
|
5
6
|
set bodyHealth(v: number);
|
|
6
7
|
get engineHealth(): number;
|
|
7
8
|
get tankHealth(): number;
|
|
8
9
|
get numberPlate(): string;
|
|
9
10
|
set numberPlate(text: string);
|
|
11
|
+
get vehicleType(): string;
|
|
12
|
+
get totalRepairs(): number;
|
|
10
13
|
get livery(): number;
|
|
11
14
|
get dirtLevel(): number;
|
|
12
15
|
set dirtLevel(v: number);
|
|
16
|
+
get windowTint(): number;
|
|
17
|
+
get model(): number;
|
|
18
|
+
get colours(): [number, number];
|
|
13
19
|
setColours(primary: number, secondary: number): void;
|
|
20
|
+
get customPrimaryColour(): [number, number, number];
|
|
21
|
+
setCustomPrimaryColour(r: number, g: number, b: number): void;
|
|
22
|
+
get customSecondaryColour(): [number, number, number];
|
|
23
|
+
setCustomSecondaryColour(r: number, g: number, b: number): void;
|
|
24
|
+
get extraColours(): [number, number];
|
|
14
25
|
get engineRunning(): boolean;
|
|
26
|
+
get handbrake(): boolean;
|
|
27
|
+
get locked(): boolean;
|
|
15
28
|
setDoorsLocked(locked: boolean): void;
|
|
29
|
+
setDoorBroken(doorIndex: number, deleteDoor?: boolean): void;
|
|
16
30
|
setAlarm(active: boolean): void;
|
|
31
|
+
get owner(): number;
|
|
17
32
|
}
|
|
18
33
|
//# sourceMappingURL=vehicle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vehicle.d.ts","sourceRoot":"","sources":["../../../src/server/entities/vehicle.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"vehicle.d.ts","sourceRoot":"","sources":["../../../src/server/entities/vehicle.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,qBAAa,OAAQ,SAAQ,MAAM;IAClC,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAIlC,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,UAAU,CAAC,CAAC,EAAE,MAAM,EAEvB;IAED,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,WAAW,CAAC,IAAI,EAAE,MAAM,EAE3B;IAED,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,SAAS,CAAC,CAAC,EAAE,MAAM,EAEtB;IAED,IAAI,UAAU,IAAI,MAAM,CAEvB;IAED,IAAI,KAAK,WAER;IAED,IAAI,OAAO,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAE9B;IAED,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAIpD,IAAI,mBAAmB,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAMlD;IAED,sBAAsB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAI7D,IAAI,qBAAqB,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAMpD;IAED,wBAAwB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI;IAI/D,IAAI,YAAY,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAEnC;IAED,IAAI,aAAa,IAAI,OAAO,CAE3B;IAED,IAAI,SAAS,IAAI,OAAO,CAEvB;IAED,IAAI,MAAM,IAAI,OAAO,CAEpB;IAED,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAIrC,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,UAAQ,GAAG,IAAI;IAI1D,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,IAAI;IAI/B,IAAI,KAAK,IAAI,MAAM,CAElB;CACD"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
+
/// <reference types="@citizenfx/server" />
|
|
1
2
|
import { Entity } from "./entity";
|
|
2
3
|
export class Vehicle extends Entity {
|
|
3
4
|
get driver() {
|
|
4
|
-
return
|
|
5
|
+
return GetPedInVehicleSeat(this.handle, -1);
|
|
6
|
+
}
|
|
7
|
+
getPedInSeat(seat) {
|
|
8
|
+
return GetPedInVehicleSeat(this.handle, seat);
|
|
5
9
|
}
|
|
6
10
|
get bodyHealth() {
|
|
7
11
|
return GetVehicleBodyHealth(this.handle);
|
|
@@ -21,6 +25,12 @@ export class Vehicle extends Entity {
|
|
|
21
25
|
set numberPlate(text) {
|
|
22
26
|
SetVehicleNumberPlateText(this.handle, text);
|
|
23
27
|
}
|
|
28
|
+
get vehicleType() {
|
|
29
|
+
return GetVehicleType(this.handle);
|
|
30
|
+
}
|
|
31
|
+
get totalRepairs() {
|
|
32
|
+
return GetVehicleTotalRepairs(this.handle);
|
|
33
|
+
}
|
|
24
34
|
get livery() {
|
|
25
35
|
return GetVehicleLivery(this.handle);
|
|
26
36
|
}
|
|
@@ -30,17 +40,53 @@ export class Vehicle extends Entity {
|
|
|
30
40
|
set dirtLevel(v) {
|
|
31
41
|
SetVehicleDirtLevel(this.handle, v);
|
|
32
42
|
}
|
|
43
|
+
get windowTint() {
|
|
44
|
+
return GetVehicleWindowTint(this.handle);
|
|
45
|
+
}
|
|
46
|
+
get model() {
|
|
47
|
+
return GetEntityModel(this.handle);
|
|
48
|
+
}
|
|
49
|
+
get colours() {
|
|
50
|
+
return GetVehicleColours(this.handle);
|
|
51
|
+
}
|
|
33
52
|
setColours(primary, secondary) {
|
|
34
53
|
SetVehicleColours(this.handle, primary, secondary);
|
|
35
54
|
}
|
|
55
|
+
get customPrimaryColour() {
|
|
56
|
+
return GetVehicleCustomPrimaryColour(this.handle);
|
|
57
|
+
}
|
|
58
|
+
setCustomPrimaryColour(r, g, b) {
|
|
59
|
+
SetVehicleCustomPrimaryColour(this.handle, r, g, b);
|
|
60
|
+
}
|
|
61
|
+
get customSecondaryColour() {
|
|
62
|
+
return GetVehicleCustomSecondaryColour(this.handle);
|
|
63
|
+
}
|
|
64
|
+
setCustomSecondaryColour(r, g, b) {
|
|
65
|
+
SetVehicleCustomSecondaryColour(this.handle, r, g, b);
|
|
66
|
+
}
|
|
67
|
+
get extraColours() {
|
|
68
|
+
return GetVehicleExtraColours(this.handle);
|
|
69
|
+
}
|
|
36
70
|
get engineRunning() {
|
|
37
71
|
return GetIsVehicleEngineRunning(this.handle);
|
|
38
72
|
}
|
|
73
|
+
get handbrake() {
|
|
74
|
+
return GetVehicleHandbrake(this.handle);
|
|
75
|
+
}
|
|
76
|
+
get locked() {
|
|
77
|
+
return GetVehicleDoorLockStatus(this.handle) === 2;
|
|
78
|
+
}
|
|
39
79
|
setDoorsLocked(locked) {
|
|
40
80
|
SetVehicleDoorsLocked(this.handle, locked ? 2 : 1);
|
|
41
81
|
}
|
|
82
|
+
setDoorBroken(doorIndex, deleteDoor = false) {
|
|
83
|
+
SetVehicleDoorBroken(this.handle, doorIndex, deleteDoor);
|
|
84
|
+
}
|
|
42
85
|
setAlarm(active) {
|
|
43
86
|
SetVehicleAlarm(this.handle, active);
|
|
44
87
|
}
|
|
88
|
+
get owner() {
|
|
89
|
+
return NetworkGetEntityOwner(this.handle);
|
|
90
|
+
}
|
|
45
91
|
}
|
|
46
92
|
//# sourceMappingURL=vehicle.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vehicle.js","sourceRoot":"","sources":["../../../src/server/entities/vehicle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,MAAM,OAAO,OAAQ,SAAQ,MAAM;IAClC,IAAI,MAAM;QACT,OAAO,
|
|
1
|
+
{"version":3,"file":"vehicle.js","sourceRoot":"","sources":["../../../src/server/entities/vehicle.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type IVector3 } from "../../shared";
|
|
2
|
+
import { GameObject } from "../entities/object";
|
|
3
|
+
import { ServerPool } from "./server-pool";
|
|
4
|
+
export declare class ObjectPool extends ServerPool<GameObject> {
|
|
5
|
+
protected ids(): number[];
|
|
6
|
+
protected wrap(id: number): GameObject;
|
|
7
|
+
at(handle: number): GameObject;
|
|
8
|
+
getClosest(to: IVector3): GameObject | undefined;
|
|
9
|
+
getInRange(to: IVector3, radius: number): GameObject[];
|
|
10
|
+
getByModel(model: string | number): GameObject[];
|
|
11
|
+
new(model: string | number, position: IVector3, isNetwork?: boolean, netMissionEntity?: boolean, doorFlag?: boolean): GameObject | undefined;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=object-pool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object-pool.d.ts","sourceRoot":"","sources":["../../../src/server/managers/object-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAW,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,qBAAa,UAAW,SAAQ,UAAU,CAAC,UAAU,CAAC;IACrD,SAAS,CAAC,GAAG,IAAI,MAAM,EAAE;IAIzB,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU;IAItC,EAAE,CAAC,MAAM,EAAE,MAAM;IAIjB,UAAU,CAAC,EAAE,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS;IAIhD,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,UAAU,EAAE;IAStD,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,EAAE;IAKhD,GAAG,CACF,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,QAAQ,EAAE,QAAQ,EAClB,SAAS,GAAE,OAAc,EACzB,gBAAgB,GAAE,OAAc,EAChC,QAAQ,GAAE,OAAc,GACtB,UAAU,GAAG,SAAS;CAczB"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Vector3 } from "../../shared";
|
|
2
|
+
import { GameObject } from "../entities/object";
|
|
3
|
+
import { ServerPool } from "./server-pool";
|
|
4
|
+
export class ObjectPool extends ServerPool {
|
|
5
|
+
ids() {
|
|
6
|
+
return GetAllObjects();
|
|
7
|
+
}
|
|
8
|
+
wrap(id) {
|
|
9
|
+
return new GameObject(id);
|
|
10
|
+
}
|
|
11
|
+
at(handle) {
|
|
12
|
+
return new GameObject(handle);
|
|
13
|
+
}
|
|
14
|
+
getClosest(to) {
|
|
15
|
+
return this.getClosestBy(to, (p) => p.position);
|
|
16
|
+
}
|
|
17
|
+
getInRange(to, radius) {
|
|
18
|
+
const origin = Vector3.from(to);
|
|
19
|
+
const r2 = radius * radius;
|
|
20
|
+
return this.toArray().filter((v) => v.position.distanceToSquared(origin) <= r2);
|
|
21
|
+
}
|
|
22
|
+
getByModel(model) {
|
|
23
|
+
const hash = typeof model === "string" ? GetHashKey(model) : model;
|
|
24
|
+
return this.toArray().filter((v) => v.model === hash);
|
|
25
|
+
}
|
|
26
|
+
new(model, position, isNetwork = true, netMissionEntity = true, doorFlag = true) {
|
|
27
|
+
const hash = typeof model === "string" ? GetHashKey(model) : model;
|
|
28
|
+
const handle = CreateObject(hash, position.x, position.y, position.z, isNetwork, netMissionEntity, doorFlag);
|
|
29
|
+
return handle !== 0 ? new GameObject(handle) : undefined;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=object-pool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"object-pool.js","sourceRoot":"","sources":["../../../src/server/managers/object-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,OAAO,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,OAAO,UAAW,SAAQ,UAAsB;IAC3C,GAAG;QACZ,OAAO,aAAa,EAAc,CAAC;IACpC,CAAC;IAES,IAAI,CAAC,EAAU;QACxB,OAAO,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;IAED,EAAE,CAAC,MAAc;QAChB,OAAO,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC;IAC/B,CAAC;IAED,UAAU,CAAC,EAAY;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,UAAU,CAAC,EAAY,EAAE,MAAc;QACtC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,EAAE,GAAG,MAAM,GAAG,MAAM,CAAC;QAE3B,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAC3B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,CACjD,CAAC;IACH,CAAC;IAED,UAAU,CAAC,KAAsB;QAChC,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACnE,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,GAAG,CACF,KAAsB,EACtB,QAAkB,EAClB,YAAqB,IAAI,EACzB,mBAA4B,IAAI,EAChC,WAAoB,IAAI;QAExB,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACnE,MAAM,MAAM,GAAG,YAAY,CAC1B,IAAI,EACJ,QAAQ,CAAC,CAAC,EACV,QAAQ,CAAC,CAAC,EACV,QAAQ,CAAC,CAAC,EACV,SAAS,EACT,gBAAgB,EAChB,QAAQ,CACR,CAAC;QAEF,OAAO,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAC1D,CAAC;CACD"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { type IVector3 } from "../../shared";
|
|
2
|
+
import { Ped } from "../entities/ped";
|
|
3
|
+
import { ServerPool } from "./server-pool";
|
|
4
|
+
export declare class PedPool extends ServerPool<Ped> {
|
|
5
|
+
protected ids(): number[];
|
|
6
|
+
protected wrap(id: number): Ped;
|
|
7
|
+
at(handle: number): Ped;
|
|
8
|
+
getClosest(to: IVector3): Ped | undefined;
|
|
9
|
+
getInRange(to: IVector3, radius: number): Ped[];
|
|
10
|
+
getByModel(model: string | number): Ped[];
|
|
11
|
+
new(model: string | number, position: IVector3, heading: number, isNetwork?: boolean, bScriptHostPed?: boolean): Ped | undefined;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=ped-pool.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ped-pool.d.ts","sourceRoot":"","sources":["../../../src/server/managers/ped-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAW,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,qBAAa,OAAQ,SAAQ,UAAU,CAAC,GAAG,CAAC;IAC3C,SAAS,CAAC,GAAG,IAAI,MAAM,EAAE;IAIzB,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,GAAG;IAI/B,EAAE,CAAC,MAAM,EAAE,MAAM;IAIjB,UAAU,CAAC,EAAE,EAAE,QAAQ,GAAG,GAAG,GAAG,SAAS;IAIzC,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,GAAG,EAAE;IAS/C,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,GAAG,EAAE;IAKzC,GAAG,CACF,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,OAAc,EACzB,cAAc,GAAE,OAAc;CAe/B"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Vector3 } from "../../shared";
|
|
2
|
+
import { Ped } from "../entities/ped";
|
|
3
|
+
import { ServerPool } from "./server-pool";
|
|
4
|
+
export class PedPool extends ServerPool {
|
|
5
|
+
ids() {
|
|
6
|
+
return GetAllPeds();
|
|
7
|
+
}
|
|
8
|
+
wrap(id) {
|
|
9
|
+
return new Ped(id);
|
|
10
|
+
}
|
|
11
|
+
at(handle) {
|
|
12
|
+
return new Ped(handle);
|
|
13
|
+
}
|
|
14
|
+
getClosest(to) {
|
|
15
|
+
return this.getClosestBy(to, (p) => p.position);
|
|
16
|
+
}
|
|
17
|
+
getInRange(to, radius) {
|
|
18
|
+
const origin = Vector3.from(to);
|
|
19
|
+
const r2 = radius * radius;
|
|
20
|
+
return this.toArray().filter((v) => v.position.distanceToSquared(origin) <= r2);
|
|
21
|
+
}
|
|
22
|
+
getByModel(model) {
|
|
23
|
+
const hash = typeof model === "string" ? GetHashKey(model) : model;
|
|
24
|
+
return this.toArray().filter((v) => v.model === hash);
|
|
25
|
+
}
|
|
26
|
+
new(model, position, heading, isNetwork = true, bScriptHostPed = true) {
|
|
27
|
+
const hash = typeof model === "string" ? GetHashKey(model) : model;
|
|
28
|
+
const handle = CreatePed(0, hash, position.x, position.y, position.z, heading, isNetwork, bScriptHostPed);
|
|
29
|
+
return handle !== 0 ? new Ped(handle) : undefined;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=ped-pool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ped-pool.js","sourceRoot":"","sources":["../../../src/server/managers/ped-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,OAAO,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,OAAO,OAAQ,SAAQ,UAAe;IACjC,GAAG;QACZ,OAAO,UAAU,EAAc,CAAC;IACjC,CAAC;IAES,IAAI,CAAC,EAAU;QACxB,OAAO,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC;IACpB,CAAC;IAED,EAAE,CAAC,MAAc;QAChB,OAAO,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;IACxB,CAAC;IAED,UAAU,CAAC,EAAY;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,UAAU,CAAC,EAAY,EAAE,MAAc;QACtC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,EAAE,GAAG,MAAM,GAAG,MAAM,CAAC;QAE3B,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAC3B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,CACjD,CAAC;IACH,CAAC;IAED,UAAU,CAAC,KAAsB;QAChC,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACnE,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,GAAG,CACF,KAAsB,EACtB,QAAkB,EAClB,OAAe,EACf,YAAqB,IAAI,EACzB,iBAA0B,IAAI;QAE9B,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACnE,MAAM,MAAM,GAAG,SAAS,CACvB,CAAC,EACD,IAAI,EACJ,QAAQ,CAAC,CAAC,EACV,QAAQ,CAAC,CAAC,EACV,QAAQ,CAAC,CAAC,EACV,OAAO,EACP,SAAS,EACT,cAAc,CACd,CAAC;QACF,OAAO,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACnD,CAAC;CACD"}
|
|
@@ -1,8 +1,13 @@
|
|
|
1
|
+
import { type IVector3 } from "../../shared";
|
|
1
2
|
import { Vehicle } from "../entities/vehicle";
|
|
2
3
|
import { ServerPool } from "./server-pool";
|
|
3
4
|
export declare class VehiclePool extends ServerPool<Vehicle> {
|
|
4
5
|
protected ids(): number[];
|
|
5
6
|
protected wrap(id: number): Vehicle;
|
|
6
7
|
at(handle: number): Vehicle;
|
|
8
|
+
getClosest(to: IVector3): Vehicle | undefined;
|
|
9
|
+
getInRange(to: IVector3, radius: number): Vehicle[];
|
|
10
|
+
getByModel(model: string | number): Vehicle[];
|
|
11
|
+
new(hash: number | string, position: IVector3, heading: number, isNetwork?: boolean, netMissionEntity?: boolean): Vehicle | null;
|
|
7
12
|
}
|
|
8
13
|
//# sourceMappingURL=vehicle-pool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vehicle-pool.d.ts","sourceRoot":"","sources":["../../../src/server/managers/vehicle-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,qBAAa,WAAY,SAAQ,UAAU,CAAC,OAAO,CAAC;IACnD,SAAS,CAAC,GAAG,IAAI,MAAM,EAAE;IAIzB,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAInC,EAAE,CAAC,MAAM,EAAE,MAAM;
|
|
1
|
+
{"version":3,"file":"vehicle-pool.d.ts","sourceRoot":"","sources":["../../../src/server/managers/vehicle-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAW,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,qBAAa,WAAY,SAAQ,UAAU,CAAC,OAAO,CAAC;IACnD,SAAS,CAAC,GAAG,IAAI,MAAM,EAAE;IAIzB,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAInC,EAAE,CAAC,MAAM,EAAE,MAAM;IAIjB,UAAU,CAAC,EAAE,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS;IAI7C,UAAU,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,EAAE;IASnD,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,EAAE;IAK7C,GAAG,CACF,IAAI,EAAE,MAAM,GAAG,MAAM,EACrB,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,MAAM,EACf,SAAS,GAAE,OAAc,EACzB,gBAAgB,GAAE,OAAc,GAC9B,OAAO,GAAG,IAAI;CAcjB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Vector3 } from "../../shared";
|
|
1
2
|
import { Vehicle } from "../entities/vehicle";
|
|
2
3
|
import { ServerPool } from "./server-pool";
|
|
3
4
|
export class VehiclePool extends ServerPool {
|
|
@@ -10,5 +11,22 @@ export class VehiclePool extends ServerPool {
|
|
|
10
11
|
at(handle) {
|
|
11
12
|
return new Vehicle(handle);
|
|
12
13
|
}
|
|
14
|
+
getClosest(to) {
|
|
15
|
+
return this.getClosestBy(to, (v) => v.position);
|
|
16
|
+
}
|
|
17
|
+
getInRange(to, radius) {
|
|
18
|
+
const origin = Vector3.from(to);
|
|
19
|
+
const r2 = radius * radius;
|
|
20
|
+
return this.toArray().filter((v) => v.position.distanceToSquared(origin) <= r2);
|
|
21
|
+
}
|
|
22
|
+
getByModel(model) {
|
|
23
|
+
const hash = typeof model === "string" ? GetHashKey(model) : model;
|
|
24
|
+
return this.toArray().filter((v) => v.model === hash);
|
|
25
|
+
}
|
|
26
|
+
new(hash, position, heading, isNetwork = true, netMissionEntity = true) {
|
|
27
|
+
const _hash = typeof hash === "string" ? GetHashKey(hash) : hash;
|
|
28
|
+
const handle = CreateVehicle(_hash, position.x, position.y, position.z, heading, isNetwork, netMissionEntity);
|
|
29
|
+
return handle !== 0 ? new Vehicle(handle) : null;
|
|
30
|
+
}
|
|
13
31
|
}
|
|
14
32
|
//# sourceMappingURL=vehicle-pool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vehicle-pool.js","sourceRoot":"","sources":["../../../src/server/managers/vehicle-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,OAAO,WAAY,SAAQ,UAAmB;IACzC,GAAG;QACZ,OAAO,cAAc,EAAc,CAAC;IACrC,CAAC;IAES,IAAI,CAAC,EAAU;QACxB,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC;IAED,EAAE,CAAC,MAAc;QAChB,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;CACD"}
|
|
1
|
+
{"version":3,"file":"vehicle-pool.js","sourceRoot":"","sources":["../../../src/server/managers/vehicle-pool.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,OAAO,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,MAAM,OAAO,WAAY,SAAQ,UAAmB;IACzC,GAAG;QACZ,OAAO,cAAc,EAAc,CAAC;IACrC,CAAC;IAES,IAAI,CAAC,EAAU;QACxB,OAAO,IAAI,OAAO,CAAC,EAAE,CAAC,CAAC;IACxB,CAAC;IAED,EAAE,CAAC,MAAc;QAChB,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,UAAU,CAAC,EAAY;QACtB,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IACjD,CAAC;IAED,UAAU,CAAC,EAAY,EAAE,MAAc;QACtC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChC,MAAM,EAAE,GAAG,MAAM,GAAG,MAAM,CAAC;QAE3B,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAC3B,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,CACjD,CAAC;IACH,CAAC;IAED,UAAU,CAAC,KAAsB;QAChC,MAAM,IAAI,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACnE,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,IAAI,CAAC,CAAC;IACvD,CAAC;IAED,GAAG,CACF,IAAqB,EACrB,QAAkB,EAClB,OAAe,EACf,YAAqB,IAAI,EACzB,mBAA4B,IAAI;QAEhC,MAAM,KAAK,GAAG,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACjE,MAAM,MAAM,GAAG,aAAa,CAC3B,KAAK,EACL,QAAQ,CAAC,CAAC,EACV,QAAQ,CAAC,CAAC,EACV,QAAQ,CAAC,CAAC,EACV,OAAO,EACP,SAAS,EACT,gBAAgB,CAChB,CAAC;QAEF,OAAO,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClD,CAAC;CACD"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type IVector3, Vector3 } from "./math/vector3";
|
|
1
2
|
export declare abstract class Pool<T> {
|
|
2
3
|
protected abstract ids(): number[];
|
|
3
4
|
protected abstract wrap(id: number): T;
|
|
@@ -7,5 +8,6 @@ export declare abstract class Pool<T> {
|
|
|
7
8
|
map<R>(fn: (item: T) => R): R[];
|
|
8
9
|
filter(fn: (item: T) => boolean): T[];
|
|
9
10
|
find(fn: (item: T) => boolean): T | undefined;
|
|
11
|
+
getClosestBy(to: IVector3, getPos: (item: T) => Vector3): T | undefined;
|
|
10
12
|
}
|
|
11
13
|
//# sourceMappingURL=pool-base.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool-base.d.ts","sourceRoot":"","sources":["../../src/shared/pool-base.ts"],"names":[],"mappings":"AAAA,8BAAsB,IAAI,CAAC,CAAC;IAC3B,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAI,MAAM,EAAE;IAElC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,CAAC;IAEtC,OAAO,IAAI,CAAC,EAAE;IAId,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,OAAO,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI;IAIpC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;IAI/B,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,CAAC,EAAE;IAIrC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,CAAC,GAAG,SAAS;
|
|
1
|
+
{"version":3,"file":"pool-base.d.ts","sourceRoot":"","sources":["../../src/shared/pool-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,QAAQ,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAExD,8BAAsB,IAAI,CAAC,CAAC;IAC3B,SAAS,CAAC,QAAQ,CAAC,GAAG,IAAI,MAAM,EAAE;IAElC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,CAAC;IAEtC,OAAO,IAAI,CAAC,EAAE;IAId,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,OAAO,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,IAAI;IAIpC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE;IAI/B,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,CAAC,EAAE;IAIrC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,CAAC,GAAG,SAAS;IAQ7C,YAAY,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,OAAO,GAAG,CAAC,GAAG,SAAS;CAgBvE"}
|
package/dist/shared/pool-base.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Vector3 } from "./math/vector3";
|
|
1
2
|
export class Pool {
|
|
2
3
|
toArray() {
|
|
3
4
|
return this.ids().map(this.wrap);
|
|
@@ -23,5 +24,19 @@ export class Pool {
|
|
|
23
24
|
}
|
|
24
25
|
return undefined;
|
|
25
26
|
}
|
|
27
|
+
getClosestBy(to, getPos) {
|
|
28
|
+
const origin = Vector3.from(to);
|
|
29
|
+
let best;
|
|
30
|
+
let bestDistance = Infinity;
|
|
31
|
+
for (const id of this.ids()) {
|
|
32
|
+
const item = this.wrap(id);
|
|
33
|
+
const distance = getPos(item).distanceToSquared(origin);
|
|
34
|
+
if (distance < bestDistance) {
|
|
35
|
+
bestDistance = distance;
|
|
36
|
+
best = item;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
return best;
|
|
40
|
+
}
|
|
26
41
|
}
|
|
27
42
|
//# sourceMappingURL=pool-base.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pool-base.js","sourceRoot":"","sources":["../../src/shared/pool-base.ts"],"names":[],"mappings":"AAAA,MAAM,OAAgB,IAAI;IAKzB,OAAO;QACN,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED,OAAO,CAAC,EAAqB;QAC5B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE;YAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,GAAG,CAAI,EAAkB;QACxB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,EAAwB;QAC9B,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,CAAC,EAAwB;QAC5B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3B,IAAI,EAAE,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC;QAC3B,CAAC;QACD,OAAO,SAAS,CAAC;IAClB,CAAC;CACD"}
|
|
1
|
+
{"version":3,"file":"pool-base.js","sourceRoot":"","sources":["../../src/shared/pool-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAExD,MAAM,OAAgB,IAAI;IAKzB,OAAO;QACN,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,MAAM;QACT,OAAO,IAAI,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED,OAAO,CAAC,EAAqB;QAC5B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE;YAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,GAAG,CAAI,EAAkB;QACxB,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC/B,CAAC;IAED,MAAM,CAAC,EAAwB;QAC9B,OAAO,IAAI,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,CAAC,EAAwB;QAC5B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3B,IAAI,EAAE,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC;QAC3B,CAAC;QACD,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,YAAY,CAAC,EAAY,EAAE,MAA4B;QACtD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAChC,IAAI,IAAmB,CAAC;QACxB,IAAI,YAAY,GAAG,QAAQ,CAAC;QAE5B,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC3B,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YACxD,IAAI,QAAQ,GAAG,YAAY,EAAE,CAAC;gBAC7B,YAAY,GAAG,QAAQ,CAAC;gBACxB,IAAI,GAAG,IAAI,CAAC;YACb,CAAC;QACF,CAAC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;CACD"}
|