rock-mod 0.21.0 → 0.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/entities/ccmp/blip/CCMPBlip.d.ts +38 -0
- package/dist/client/entities/ccmp/blip/CCMPBlip.js +118 -0
- package/dist/client/entities/ccmp/blip/CCMPBlipsManager.d.ts +27 -0
- package/dist/client/entities/ccmp/blip/CCMPBlipsManager.js +191 -0
- package/dist/client/entities/ccmp/camera/CCMPCamera.d.ts +1 -1
- package/dist/client/entities/ccmp/camera/CCMPCamera.js +1 -1
- package/dist/client/entities/ccmp/camera/CCMPCameraManager.js +2 -1
- package/dist/client/entities/ccmp/colshape/CCMPColshape.d.ts +26 -0
- package/dist/client/entities/ccmp/colshape/CCMPColshape.js +83 -0
- package/dist/client/entities/ccmp/colshape/CCMPColshapesManager.d.ts +31 -0
- package/dist/client/entities/ccmp/colshape/CCMPColshapesManager.js +193 -0
- package/dist/client/entities/ccmp/marker/CCMPMarker.d.ts +34 -0
- package/dist/client/entities/ccmp/marker/CCMPMarker.js +109 -0
- package/dist/client/entities/ccmp/marker/CCMPMarkersManager.d.ts +27 -0
- package/dist/client/entities/ccmp/marker/CCMPMarkersManager.js +180 -0
- package/dist/client/entities/ccmp/object/CCMPObject.d.ts +50 -0
- package/dist/client/entities/ccmp/object/CCMPObject.js +149 -0
- package/dist/client/entities/ccmp/object/CCMPObjectsManager.d.ts +27 -0
- package/dist/client/entities/ccmp/object/CCMPObjectsManager.js +177 -0
- package/dist/client/entities/ccmp/ped/CCMPPed.d.ts +1 -1
- package/dist/client/entities/ccmp/ped/CCMPPed.js +21 -7
- package/dist/client/entities/ccmp/ped/CCMPPedsManager.d.ts +7 -0
- package/dist/client/entities/ccmp/ped/CCMPPedsManager.js +82 -10
- package/dist/client/entities/ccmp/player/CCMPPlayer.d.ts +15 -17
- package/dist/client/entities/ccmp/player/CCMPPlayer.js +86 -87
- package/dist/client/entities/ccmp/player/CCMPPlayersManager.d.ts +4 -3
- package/dist/client/entities/ccmp/player/CCMPPlayersManager.js +20 -7
- package/dist/client/entities/ccmp/vehicle/CCMPVehicle.d.ts +102 -0
- package/dist/client/entities/ccmp/vehicle/CCMPVehicle.js +311 -0
- package/dist/client/entities/ccmp/vehicle/CCMPVehiclesManager.d.ts +11 -48
- package/dist/client/entities/ccmp/vehicle/CCMPVehiclesManager.js +154 -75
- package/dist/client/entities/common/baseObject/IBaseObject.d.ts +2 -1
- package/dist/client/entities/ragemp/entity/RageEntity.d.ts +4 -0
- package/dist/client/entities/ragemp/entity/RageEntity.js +34 -2
- package/dist/client/factories/ccmp/CCMPManagersFactory.d.ts +9 -7
- package/dist/client/factories/ccmp/CCMPManagersFactory.js +62 -22
- package/dist/client/game/ccmp/chat/CCMPChatManager.d.ts +2 -22
- package/dist/client/game/ccmp/chat/CCMPChatManager.js +6 -34
- package/dist/client/game/ccmp/storage/CCMPStorageManager.d.ts +0 -18
- package/dist/client/game/ccmp/storage/CCMPStorageManager.js +4 -36
- package/dist/client/game/ccmp/ui/CCMPUiManager.d.ts +0 -29
- package/dist/client/game/ccmp/ui/CCMPUiManager.js +5 -41
- package/dist/client/net/ccmp/CCMPNetManager.d.ts +0 -7
- package/dist/client/net/ccmp/CCMPNetManager.js +0 -26
- package/dist/client/net/ccmp/dataHandler/CCMPDataHandler.d.ts +2 -2
- package/dist/client/net/ccmp/dataHandler/CCMPDataHandler.js +2 -2
- package/dist/client/net/ccmp/events/CCMPEventsBridge.d.ts +3 -1
- package/dist/client/net/ccmp/events/CCMPEventsBridge.js +33 -3
- package/dist/client/net/ccmp/events/CCMPSyncedMetaBridge.d.ts +21 -16
- package/dist/client/net/ccmp/events/CCMPSyncedMetaBridge.js +32 -22
- package/dist/client/net/common/dataHandler/IDataHandler.d.ts +2 -2
- package/dist/client/net/common/events/types.d.ts +4 -4
- package/dist/client/net/ragemp/dataHandler/RageDataHandler.d.ts +2 -2
- package/dist/server/entities/altv/colshape/AltVColshape.d.ts +2 -0
- package/dist/server/entities/altv/colshape/AltVColshape.js +6 -0
- package/dist/server/entities/ccmp/baseObject/CCMPBaseObjectsManager.js +4 -4
- package/dist/server/entities/ccmp/blip/CCMPBlip.d.ts +2 -0
- package/dist/server/entities/ccmp/blip/CCMPBlip.js +6 -0
- package/dist/server/entities/ccmp/colshape/CCMPColshape.d.ts +2 -0
- package/dist/server/entities/ccmp/colshape/CCMPColshape.js +6 -0
- package/dist/server/entities/ccmp/marker/CCMPMarker.d.ts +2 -0
- package/dist/server/entities/ccmp/marker/CCMPMarker.js +6 -0
- package/dist/server/entities/ccmp/object/CCMPObject.d.ts +1 -1
- package/dist/server/entities/ccmp/object/CCMPObject.js +3 -5
- package/dist/server/entities/ccmp/object/CCMPObjectsManager.js +1 -2
- package/dist/server/entities/ccmp/player/CCMPPlayersManager.js +15 -0
- package/dist/server/entities/ccmp/vehicle/CCMPVehicle.d.ts +29 -15
- package/dist/server/entities/ccmp/vehicle/CCMPVehicle.js +87 -44
- package/dist/server/entities/common/colshape/IColshape.d.ts +2 -0
- package/dist/server/entities/mock/colshape/MockColshape.d.ts +3 -0
- package/dist/server/entities/mock/colshape/MockColshape.js +8 -0
- package/dist/server/entities/ragemp/colshape/RageColshape.d.ts +2 -0
- package/dist/server/entities/ragemp/colshape/RageColshape.js +6 -0
- package/dist/server/entities/ragemp/entity/RageEntity.d.ts +5 -1
- package/dist/server/entities/ragemp/entity/RageEntity.js +17 -1
- package/dist/server/entities/ragemp/object/RageObjectsManager.js +1 -1
- package/dist/server/entities/ragemp/ped/RagePedsManager.js +1 -1
- package/dist/server/entities/ragemp/vehicle/RageVehiclesManager.js +1 -1
- package/dist/server/net/ccmp/CCMPNetManager.js +0 -5
- package/dist/server/net/ccmp/events/CCMPEventsManager.d.ts +6 -2
- package/package.json +2 -2
|
@@ -3,5 +3,8 @@ import { MockWorldObject, type IMockWorldObjectOptions } from "../worldObject/Mo
|
|
|
3
3
|
export interface IMockColshapeOptions extends IMockWorldObjectOptions {
|
|
4
4
|
}
|
|
5
5
|
export declare abstract class MockColshape extends MockWorldObject implements IColshape {
|
|
6
|
+
private readonly _netData;
|
|
6
7
|
protected constructor(options: IMockColshapeOptions);
|
|
8
|
+
getNetData(name: string): unknown;
|
|
9
|
+
setNetData(name: string, value: unknown): void;
|
|
7
10
|
}
|
|
@@ -3,8 +3,16 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.MockColshape = void 0;
|
|
4
4
|
const MockWorldObject_1 = require("../worldObject/MockWorldObject");
|
|
5
5
|
class MockColshape extends MockWorldObject_1.MockWorldObject {
|
|
6
|
+
_netData;
|
|
6
7
|
constructor(options) {
|
|
7
8
|
super(options);
|
|
9
|
+
this._netData = new Map();
|
|
10
|
+
}
|
|
11
|
+
getNetData(name) {
|
|
12
|
+
return this._netData.get(name);
|
|
13
|
+
}
|
|
14
|
+
setNetData(name, value) {
|
|
15
|
+
this._netData.set(name, value);
|
|
8
16
|
}
|
|
9
17
|
}
|
|
10
18
|
exports.MockColshape = MockColshape;
|
|
@@ -5,4 +5,6 @@ export interface IRageColshapeOptions extends IRageWorldObjectOptions<ColshapeMp
|
|
|
5
5
|
}
|
|
6
6
|
export declare abstract class RageColshape extends RageWorldObject<ColshapeMp> {
|
|
7
7
|
protected constructor(options: IRageColshapeOptions);
|
|
8
|
+
getNetData(name: string): unknown;
|
|
9
|
+
setNetData(name: string, value: unknown): void;
|
|
8
10
|
}
|
|
@@ -6,5 +6,11 @@ class RageColshape extends RageWorldObject_1.RageWorldObject {
|
|
|
6
6
|
constructor(options) {
|
|
7
7
|
super(options);
|
|
8
8
|
}
|
|
9
|
+
getNetData(name) {
|
|
10
|
+
return this.mpEntity.getVariable(name);
|
|
11
|
+
}
|
|
12
|
+
setNetData(name, value) {
|
|
13
|
+
this.mpEntity.setVariable(name, value);
|
|
14
|
+
}
|
|
9
15
|
}
|
|
10
16
|
exports.RageColshape = RageColshape;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { type IEntity } from "../../common/entity/IEntity";
|
|
2
2
|
import { type IRageWorldObjectOptions, RageWorldObject } from "../worldObject/RageWorldObject";
|
|
3
|
-
import { Vector3D } from "../../../../shared/common/utils";
|
|
3
|
+
import { type IVector3D, Vector3D } from "../../../../shared/common/utils";
|
|
4
4
|
export interface IRageEntityOptions<T extends EntityMp> extends IRageWorldObjectOptions<T> {
|
|
5
|
+
rotation?: IVector3D;
|
|
5
6
|
}
|
|
6
7
|
export declare abstract class RageEntity<T extends EntityMp> extends RageWorldObject<T> implements IEntity {
|
|
8
|
+
private _rotation;
|
|
7
9
|
get model(): number;
|
|
8
10
|
get rotation(): Vector3D;
|
|
9
11
|
protected constructor(options: IRageEntityOptions<T>);
|
|
@@ -11,4 +13,6 @@ export declare abstract class RageEntity<T extends EntityMp> extends RageWorldOb
|
|
|
11
13
|
setRotation(value: Vector3D): void;
|
|
12
14
|
getNetData(name: string): unknown;
|
|
13
15
|
setNetData(name: string, value: unknown): void;
|
|
16
|
+
private _getEntityRotationProperty;
|
|
17
|
+
private _isVectorLike;
|
|
14
18
|
}
|
|
@@ -4,20 +4,23 @@ exports.RageEntity = void 0;
|
|
|
4
4
|
const RageWorldObject_1 = require("../worldObject/RageWorldObject");
|
|
5
5
|
const utils_1 = require("../../../../shared/common/utils");
|
|
6
6
|
class RageEntity extends RageWorldObject_1.RageWorldObject {
|
|
7
|
+
_rotation;
|
|
7
8
|
get model() {
|
|
8
9
|
return this.mpEntity.model;
|
|
9
10
|
}
|
|
10
11
|
get rotation() {
|
|
11
|
-
const { x, y, z } = this.
|
|
12
|
+
const { x, y, z } = this._getEntityRotationProperty() ?? this._rotation ?? new utils_1.Vector3D(0, 0, 0);
|
|
12
13
|
return new utils_1.Vector3D(x, y, z);
|
|
13
14
|
}
|
|
14
15
|
constructor(options) {
|
|
15
16
|
super(options);
|
|
17
|
+
this._rotation = options.rotation;
|
|
16
18
|
}
|
|
17
19
|
setModel(value) {
|
|
18
20
|
this.mpEntity.model = mp.joaat(value);
|
|
19
21
|
}
|
|
20
22
|
setRotation(value) {
|
|
23
|
+
this._rotation = value;
|
|
21
24
|
this.mpEntity.rotation = new mp.Vector3(value);
|
|
22
25
|
}
|
|
23
26
|
getNetData(name) {
|
|
@@ -26,5 +29,18 @@ class RageEntity extends RageWorldObject_1.RageWorldObject {
|
|
|
26
29
|
setNetData(name, value) {
|
|
27
30
|
this.mpEntity.setVariable(name, value);
|
|
28
31
|
}
|
|
32
|
+
_getEntityRotationProperty() {
|
|
33
|
+
const rotation = this.mpEntity.rotation;
|
|
34
|
+
if (!this._isVectorLike(rotation))
|
|
35
|
+
return null;
|
|
36
|
+
return rotation;
|
|
37
|
+
}
|
|
38
|
+
_isVectorLike(value) {
|
|
39
|
+
return (typeof value === "object" &&
|
|
40
|
+
value !== null &&
|
|
41
|
+
typeof value.x === "number" &&
|
|
42
|
+
typeof value.y === "number" &&
|
|
43
|
+
typeof value.z === "number");
|
|
44
|
+
}
|
|
29
45
|
}
|
|
30
46
|
exports.RageEntity = RageEntity;
|
|
@@ -17,7 +17,7 @@ class RageObjectsManager extends RageEntitiesManager_1.RageEntitiesManager {
|
|
|
17
17
|
alpha,
|
|
18
18
|
});
|
|
19
19
|
mpEntity.isExists = () => mp.objects.exists(mpEntity);
|
|
20
|
-
const object = new RageObject_1.RageObject({ mpEntity });
|
|
20
|
+
const object = new RageObject_1.RageObject({ mpEntity, rotation });
|
|
21
21
|
this.registerBaseObject(object);
|
|
22
22
|
return object;
|
|
23
23
|
}
|
|
@@ -17,7 +17,7 @@ class RagePedsManager extends RageEntitiesManager_1.RageEntitiesManager {
|
|
|
17
17
|
frozen,
|
|
18
18
|
});
|
|
19
19
|
mpEntity.isExists = () => mp.peds.exists(mpEntity);
|
|
20
|
-
const ped = new RagePed_1.RagePed({ mpEntity });
|
|
20
|
+
const ped = new RagePed_1.RagePed({ mpEntity, rotation });
|
|
21
21
|
this.registerBaseObject(ped);
|
|
22
22
|
return ped;
|
|
23
23
|
}
|
|
@@ -19,7 +19,7 @@ class RageVehiclesManager extends RageEntitiesManager_1.RageEntitiesManager {
|
|
|
19
19
|
});
|
|
20
20
|
mpEntity.rotation = new mp.Vector3(rotation);
|
|
21
21
|
mpEntity.isExists = () => mp.vehicles.exists(mpEntity);
|
|
22
|
-
const vehicle = new RageVehicle_1.RageVehicle({ mpEntity });
|
|
22
|
+
const vehicle = new RageVehicle_1.RageVehicle({ mpEntity, rotation });
|
|
23
23
|
this.registerBaseObject(vehicle);
|
|
24
24
|
return vehicle;
|
|
25
25
|
}
|
|
@@ -73,11 +73,6 @@ class CCMPNetManager {
|
|
|
73
73
|
this._rpcManager = new CCMPRPCManager_1.CCMPRPCManager();
|
|
74
74
|
this._registerClientReadyCooperation();
|
|
75
75
|
this._registerClientLogForwarder();
|
|
76
|
-
// Маркер успешной загрузки актуального rock-mod на серверной стороне.
|
|
77
|
-
// Если эта строка не появилась в stdout при старте ccmp-server.exe —
|
|
78
|
-
// значит сервер всё ещё держит в памяти старую сборку rock-mod (не
|
|
79
|
-
// забыт перезапуск процесса).
|
|
80
|
-
console.log("[rock-mod] CCMP server net manager initialized");
|
|
81
76
|
}
|
|
82
77
|
_registerClientReadyCooperation() {
|
|
83
78
|
// Регистрируем напрямую через `ccmp.on` (а не через events.onClient),
|
|
@@ -1,9 +1,13 @@
|
|
|
1
|
-
import { type CcmpServerBuiltinEvents } from "@classic-mp/types/server";
|
|
1
|
+
import { type CcmpServerBuiltinEvents, type Player as CcmpServerPlayer, type Vehicle as CcmpServerVehicle } from "@classic-mp/types/server";
|
|
2
2
|
import { type IEventsManager } from "../../common/events/IEventsManager";
|
|
3
3
|
import { type IServerInternalEvents } from "../../common/events/types";
|
|
4
4
|
import { type IClientToServerEvents, type IServerToClientEvents } from "../../../../shared";
|
|
5
5
|
import { type CCMPPlayer } from "../../../entities/ccmp/player/CCMPPlayer";
|
|
6
|
-
export interface
|
|
6
|
+
export interface ICCMPServerVehicleEvents {
|
|
7
|
+
playerEnterVehicle: (player: CcmpServerPlayer, vehicle: CcmpServerVehicle, seat: number) => void;
|
|
8
|
+
playerExitVehicle: (player: CcmpServerPlayer, vehicle: CcmpServerVehicle, seat: number) => void;
|
|
9
|
+
}
|
|
10
|
+
export interface ICCMPServerInternalEvents extends IServerInternalEvents, CcmpServerBuiltinEvents, ICCMPServerVehicleEvents {
|
|
7
11
|
}
|
|
8
12
|
export declare class CCMPEventsManager implements IEventsManager {
|
|
9
13
|
onInternal(events: Partial<ICCMPServerInternalEvents>): void;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rock-mod",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.23.0",
|
|
4
4
|
"description": "Rock-Mod is a powerful framework designed for creating and managing mods for Grand Theft Auto (GTA) games.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -87,7 +87,7 @@
|
|
|
87
87
|
"@swc/helpers": "^0.5.15"
|
|
88
88
|
},
|
|
89
89
|
"devDependencies": {
|
|
90
|
-
"@classic-mp/types": "^1.
|
|
90
|
+
"@classic-mp/types": "^1.7.0",
|
|
91
91
|
"@rollup/plugin-commonjs": "^25.0.7",
|
|
92
92
|
"@rollup/plugin-node-resolve": "^15.2.3",
|
|
93
93
|
"@rollup/plugin-terser": "^0.4.4",
|