rock-mod 0.19.0 → 0.21.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.
Files changed (177) hide show
  1. package/dist/client/RockMod.d.ts +1 -1
  2. package/dist/client/RockMod.js +4 -0
  3. package/dist/client/entities/ccmp/camera/CCMPCamera.d.ts +24 -0
  4. package/dist/client/entities/ccmp/camera/CCMPCamera.js +58 -0
  5. package/dist/client/entities/ccmp/camera/CCMPCameraManager.d.ts +16 -0
  6. package/dist/client/entities/ccmp/camera/CCMPCameraManager.js +50 -0
  7. package/dist/client/entities/ccmp/ped/CCMPPed.d.ts +65 -0
  8. package/dist/client/entities/ccmp/ped/CCMPPed.js +185 -0
  9. package/dist/client/entities/ccmp/ped/CCMPPedsManager.d.ts +20 -0
  10. package/dist/client/entities/ccmp/ped/CCMPPedsManager.js +105 -0
  11. package/dist/client/entities/ccmp/player/CCMPPlayer.d.ts +112 -0
  12. package/dist/client/entities/ccmp/player/CCMPPlayer.js +332 -0
  13. package/dist/client/entities/ccmp/player/CCMPPlayersManager.d.ts +84 -0
  14. package/dist/client/entities/ccmp/player/CCMPPlayersManager.js +318 -0
  15. package/dist/client/entities/ccmp/vehicle/CCMPVehiclesManager.d.ts +64 -0
  16. package/dist/client/entities/ccmp/vehicle/CCMPVehiclesManager.js +105 -0
  17. package/dist/client/entities/common/entity/IEntity.d.ts +3 -0
  18. package/dist/client/entities/common/ped/IPed.d.ts +5 -0
  19. package/dist/client/entities/common/player/IPlayer.d.ts +1 -0
  20. package/dist/client/entities/common/vehicle/IVehicle.d.ts +11 -0
  21. package/dist/client/entities/ragemp/entity/RageEntity.d.ts +3 -0
  22. package/dist/client/entities/ragemp/entity/RageEntity.js +16 -2
  23. package/dist/client/entities/ragemp/ped/RagePed.d.ts +5 -0
  24. package/dist/client/entities/ragemp/ped/RagePed.js +16 -0
  25. package/dist/client/entities/ragemp/player/RagePlayer.d.ts +1 -0
  26. package/dist/client/entities/ragemp/player/RagePlayer.js +3 -0
  27. package/dist/client/entities/ragemp/vehicle/RageVehicle.d.ts +11 -0
  28. package/dist/client/entities/ragemp/vehicle/RageVehicle.js +36 -0
  29. package/dist/client/factories/ccmp/CCMPManagersFactory.d.ts +46 -0
  30. package/dist/client/factories/ccmp/CCMPManagersFactory.js +149 -0
  31. package/dist/client/factories/ccmp/createNotImplementedProxy.d.ts +1 -0
  32. package/dist/client/factories/ccmp/createNotImplementedProxy.js +24 -0
  33. package/dist/client/game/ccmp/browser/CCMPBrowserManager.d.ts +22 -0
  34. package/dist/client/game/ccmp/browser/CCMPBrowserManager.js +66 -0
  35. package/dist/client/game/ccmp/chat/CCMPChatManager.d.ts +26 -0
  36. package/dist/client/game/ccmp/chat/CCMPChatManager.js +41 -0
  37. package/dist/client/game/ccmp/controls/CCMPControlsManager.d.ts +33 -0
  38. package/dist/client/game/ccmp/controls/CCMPControlsManager.js +47 -0
  39. package/dist/client/game/ccmp/cursor/CCMPCursorManager.d.ts +6 -0
  40. package/dist/client/game/ccmp/cursor/CCMPCursorManager.js +15 -0
  41. package/dist/client/game/ccmp/gameplay/CCMPGameplayManager.d.ts +6 -0
  42. package/dist/client/game/ccmp/gameplay/CCMPGameplayManager.js +10 -0
  43. package/dist/client/game/ccmp/graphics/CCMPGraphicsManager.d.ts +58 -0
  44. package/dist/client/game/ccmp/graphics/CCMPGraphicsManager.js +112 -0
  45. package/dist/client/game/ccmp/gui/CCMPGuiManager.d.ts +5 -0
  46. package/dist/client/game/ccmp/gui/CCMPGuiManager.js +17 -0
  47. package/dist/client/game/ccmp/keys/CCMPKeysManager.d.ts +41 -0
  48. package/dist/client/game/ccmp/keys/CCMPKeysManager.js +94 -0
  49. package/dist/client/game/ccmp/nametags/CCMPNametagsManager.d.ts +4 -0
  50. package/dist/client/game/ccmp/nametags/CCMPNametagsManager.js +6 -0
  51. package/dist/client/game/ccmp/native/CCMPNativeCallerManager.d.ts +74 -0
  52. package/dist/client/game/ccmp/native/CCMPNativeCallerManager.js +129 -0
  53. package/dist/client/game/ccmp/native/_generated/nativeDispatch.d.ts +5 -0
  54. package/dist/client/game/ccmp/native/_generated/nativeDispatch.js +8123 -0
  55. package/dist/client/game/ccmp/object/CCMPGameObjectManager.d.ts +4 -0
  56. package/dist/client/game/ccmp/object/CCMPGameObjectManager.js +6 -0
  57. package/dist/client/game/ccmp/pathfind/CCMPPathfindManager.d.ts +26 -0
  58. package/dist/client/game/ccmp/pathfind/CCMPPathfindManager.js +31 -0
  59. package/dist/client/game/ccmp/raycasting/CCMPRaycastingManager.d.ts +10 -0
  60. package/dist/client/game/ccmp/raycasting/CCMPRaycastingManager.js +46 -0
  61. package/dist/client/game/ccmp/storage/CCMPStorageManager.d.ts +25 -0
  62. package/dist/client/game/ccmp/storage/CCMPStorageManager.js +46 -0
  63. package/dist/client/game/ccmp/streaming/CCMPStreamingManager.d.ts +17 -0
  64. package/dist/client/game/ccmp/streaming/CCMPStreamingManager.js +41 -0
  65. package/dist/client/game/ccmp/ui/CCMPUiManager.d.ts +41 -0
  66. package/dist/client/game/ccmp/ui/CCMPUiManager.js +69 -0
  67. package/dist/client/game/ccmp/zone/CCMPZoneManager.d.ts +19 -0
  68. package/dist/client/game/ccmp/zone/CCMPZoneManager.js +20 -0
  69. package/dist/client/game/common/browser/IBrowserManager.d.ts +7 -0
  70. package/dist/client/game/common/chat/IChatManager.d.ts +1 -0
  71. package/dist/client/game/common/controls/IControlsManager.d.ts +3 -0
  72. package/dist/client/game/common/graphics/IGraphicsManager.d.ts +19 -0
  73. package/dist/client/game/common/streaming/IStreamingManager.d.ts +4 -0
  74. package/dist/client/game/ragemp/browser/RageBrowserManager.d.ts +2 -1
  75. package/dist/client/game/ragemp/browser/RageBrowserManager.js +30 -1
  76. package/dist/client/game/ragemp/chat/RageChatManager.d.ts +1 -0
  77. package/dist/client/game/ragemp/chat/RageChatManager.js +3 -0
  78. package/dist/client/game/ragemp/controls/RageControlsManager.d.ts +3 -0
  79. package/dist/client/game/ragemp/controls/RageControlsManager.js +9 -0
  80. package/dist/client/game/ragemp/graphics/RageGraphicsManager.d.ts +7 -1
  81. package/dist/client/game/ragemp/graphics/RageGraphicsManager.js +19 -0
  82. package/dist/client/game/ragemp/streaming/RageStreamingManager.d.ts +4 -0
  83. package/dist/client/game/ragemp/streaming/RageStreamingManager.js +12 -0
  84. package/dist/client/net/ccmp/CCMPConsoleForwarder.d.ts +11 -0
  85. package/dist/client/net/ccmp/CCMPConsoleForwarder.js +153 -0
  86. package/dist/client/net/ccmp/CCMPNetManager.d.ts +23 -0
  87. package/dist/client/net/ccmp/CCMPNetManager.js +55 -0
  88. package/dist/client/net/ccmp/dataHandler/CCMPDataHandler.d.ts +23 -0
  89. package/dist/client/net/ccmp/dataHandler/CCMPDataHandler.js +43 -0
  90. package/dist/client/net/ccmp/events/CCMPEventsBridge.d.ts +14 -0
  91. package/dist/client/net/ccmp/events/CCMPEventsBridge.js +19 -0
  92. package/dist/client/net/ccmp/events/CCMPEventsManager.d.ts +72 -0
  93. package/dist/client/net/ccmp/events/CCMPEventsManager.js +177 -0
  94. package/dist/client/net/ccmp/events/CCMPInProcessEmitter.d.ts +45 -0
  95. package/dist/client/net/ccmp/events/CCMPInProcessEmitter.js +133 -0
  96. package/dist/client/net/ccmp/events/CCMPRenderTicker.d.ts +18 -0
  97. package/dist/client/net/ccmp/events/CCMPRenderTicker.js +74 -0
  98. package/dist/client/net/ccmp/events/CCMPSyncedMetaBridge.d.ts +24 -0
  99. package/dist/client/net/ccmp/events/CCMPSyncedMetaBridge.js +35 -0
  100. package/dist/client/net/ccmp/rpc/CCMPRPCManager.d.ts +22 -0
  101. package/dist/client/net/ccmp/rpc/CCMPRPCManager.js +31 -0
  102. package/dist/client/net/common/events/types.d.ts +3 -1
  103. package/dist/client/net/common/events/types.js +1 -0
  104. package/dist/client/utils/ccmp/CCMPUtilsManager.d.ts +18 -0
  105. package/dist/client/utils/ccmp/CCMPUtilsManager.js +20 -0
  106. package/dist/server/RockMod.d.ts +1 -1
  107. package/dist/server/RockMod.js +4 -0
  108. package/dist/server/entities/ccmp/baseObject/CCMPBaseObject.d.ts +8 -0
  109. package/dist/server/entities/ccmp/baseObject/CCMPBaseObject.js +21 -0
  110. package/dist/server/entities/ccmp/baseObject/CCMPBaseObjectsIterator.d.ts +8 -0
  111. package/dist/server/entities/ccmp/baseObject/CCMPBaseObjectsIterator.js +16 -0
  112. package/dist/server/entities/ccmp/baseObject/CCMPBaseObjectsManager.d.ts +19 -0
  113. package/dist/server/entities/ccmp/baseObject/CCMPBaseObjectsManager.js +49 -0
  114. package/dist/server/entities/ccmp/blip/CCMPBlip.d.ts +34 -0
  115. package/dist/server/entities/ccmp/blip/CCMPBlip.js +80 -0
  116. package/dist/server/entities/ccmp/blip/CCMPBlipsManager.d.ts +9 -0
  117. package/dist/server/entities/ccmp/blip/CCMPBlipsManager.js +33 -0
  118. package/dist/server/entities/ccmp/colshape/CCMPCircleColshape.d.ts +7 -0
  119. package/dist/server/entities/ccmp/colshape/CCMPCircleColshape.js +10 -0
  120. package/dist/server/entities/ccmp/colshape/CCMPColshape.d.ts +23 -0
  121. package/dist/server/entities/ccmp/colshape/CCMPColshape.js +47 -0
  122. package/dist/server/entities/ccmp/colshape/CCMPColshapesManager.d.ts +28 -0
  123. package/dist/server/entities/ccmp/colshape/CCMPColshapesManager.js +108 -0
  124. package/dist/server/entities/ccmp/colshape/CCMPCuboidColshape.d.ts +7 -0
  125. package/dist/server/entities/ccmp/colshape/CCMPCuboidColshape.js +10 -0
  126. package/dist/server/entities/ccmp/colshape/CCMPCylinderColshape.d.ts +7 -0
  127. package/dist/server/entities/ccmp/colshape/CCMPCylinderColshape.js +10 -0
  128. package/dist/server/entities/ccmp/colshape/CCMPRectangleColshape.d.ts +7 -0
  129. package/dist/server/entities/ccmp/colshape/CCMPRectangleColshape.js +10 -0
  130. package/dist/server/entities/ccmp/colshape/CCMPSphereColshape.d.ts +7 -0
  131. package/dist/server/entities/ccmp/colshape/CCMPSphereColshape.js +10 -0
  132. package/dist/server/entities/ccmp/entity/CCMPEntitiesManager.d.ts +8 -0
  133. package/dist/server/entities/ccmp/entity/CCMPEntitiesManager.js +10 -0
  134. package/dist/server/entities/ccmp/entity/CCMPEntity.d.ts +13 -0
  135. package/dist/server/entities/ccmp/entity/CCMPEntity.js +28 -0
  136. package/dist/server/entities/ccmp/marker/CCMPMarker.d.ts +32 -0
  137. package/dist/server/entities/ccmp/marker/CCMPMarker.js +79 -0
  138. package/dist/server/entities/ccmp/marker/CCMPMarkersManager.d.ts +9 -0
  139. package/dist/server/entities/ccmp/marker/CCMPMarkersManager.js +30 -0
  140. package/dist/server/entities/ccmp/object/CCMPObject.d.ts +48 -0
  141. package/dist/server/entities/ccmp/object/CCMPObject.js +70 -0
  142. package/dist/server/entities/ccmp/object/CCMPObjectsManager.d.ts +9 -0
  143. package/dist/server/entities/ccmp/object/CCMPObjectsManager.js +28 -0
  144. package/dist/server/entities/ccmp/ped/CCMPPed.d.ts +33 -0
  145. package/dist/server/entities/ccmp/ped/CCMPPed.js +82 -0
  146. package/dist/server/entities/ccmp/ped/CCMPPedsManager.d.ts +9 -0
  147. package/dist/server/entities/ccmp/ped/CCMPPedsManager.js +28 -0
  148. package/dist/server/entities/ccmp/player/CCMPPlayer.d.ts +65 -0
  149. package/dist/server/entities/ccmp/player/CCMPPlayer.js +180 -0
  150. package/dist/server/entities/ccmp/player/CCMPPlayersManager.d.ts +12 -0
  151. package/dist/server/entities/ccmp/player/CCMPPlayersManager.js +66 -0
  152. package/dist/server/entities/ccmp/vehicle/CCMPVehicle.d.ts +58 -0
  153. package/dist/server/entities/ccmp/vehicle/CCMPVehicle.js +161 -0
  154. package/dist/server/entities/ccmp/vehicle/CCMPVehiclesManager.d.ts +9 -0
  155. package/dist/server/entities/ccmp/vehicle/CCMPVehiclesManager.js +31 -0
  156. package/dist/server/entities/ccmp/worldObject/CCMPWorldObject.d.ts +9 -0
  157. package/dist/server/entities/ccmp/worldObject/CCMPWorldObject.js +7 -0
  158. package/dist/server/entities/ccmp/worldObject/CCMPWorldObjectsIterator.d.ts +10 -0
  159. package/dist/server/entities/ccmp/worldObject/CCMPWorldObjectsIterator.js +40 -0
  160. package/dist/server/entities/ccmp/worldObject/CCMPWorldObjectsManager.d.ts +11 -0
  161. package/dist/server/entities/ccmp/worldObject/CCMPWorldObjectsManager.js +16 -0
  162. package/dist/server/entities/mock/player/MockPlayersManager.js +2 -1
  163. package/dist/server/factories/ccmp/CCMPManagersFactory.d.ts +23 -0
  164. package/dist/server/factories/ccmp/CCMPManagersFactory.js +46 -0
  165. package/dist/server/net/ccmp/CCMPNetManager.d.ts +19 -0
  166. package/dist/server/net/ccmp/CCMPNetManager.js +112 -0
  167. package/dist/server/net/ccmp/events/CCMPEventsManager.d.ts +17 -0
  168. package/dist/server/net/ccmp/events/CCMPEventsManager.js +54 -0
  169. package/dist/server/net/ccmp/rpc/CCMPRPCManager.d.ts +8 -0
  170. package/dist/server/net/ccmp/rpc/CCMPRPCManager.js +18 -0
  171. package/dist/server/net/common/events/types.d.ts +2 -0
  172. package/dist/server/net/common/events/types.js +1 -0
  173. package/dist/server/utils/ccmp/CCMPUtilsManager.d.ts +4 -0
  174. package/dist/server/utils/ccmp/CCMPUtilsManager.js +9 -0
  175. package/dist/server/world/ccmp/CCMPWorldManager.d.ts +10 -0
  176. package/dist/server/world/ccmp/CCMPWorldManager.js +24 -0
  177. package/package.json +6 -1
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPBlip = void 0;
4
+ const CCMPWorldObject_1 = require("../worldObject/CCMPWorldObject");
5
+ const shared_1 = require("../../../../shared");
6
+ const Vectors_1 = require("../../../../shared/common/utils/math/Vectors");
7
+ class CCMPBlip extends CCMPWorldObject_1.CCMPWorldObject {
8
+ _ccmpBlip;
9
+ _onDestroy;
10
+ get id() {
11
+ return this._ccmpBlip.id;
12
+ }
13
+ get type() {
14
+ return shared_1.BaseObjectType.Blip;
15
+ }
16
+ get isExists() {
17
+ return this._ccmpBlip.isExists;
18
+ }
19
+ get position() {
20
+ const p = this._ccmpBlip.position;
21
+ return new Vectors_1.Vector3D(p.x, p.y, p.z);
22
+ }
23
+ get dimension() {
24
+ return this._ccmpBlip.dimension;
25
+ }
26
+ get name() {
27
+ return this._ccmpBlip.name;
28
+ }
29
+ get sprite() {
30
+ return this._ccmpBlip.sprite;
31
+ }
32
+ get color() {
33
+ return this._ccmpBlip.color;
34
+ }
35
+ get alpha() {
36
+ return this._ccmpBlip.alpha;
37
+ }
38
+ get scale() {
39
+ return this._ccmpBlip.scale;
40
+ }
41
+ get drawDistance() {
42
+ return this._ccmpBlip.drawDistance;
43
+ }
44
+ get shortRange() {
45
+ return this._ccmpBlip.shortRange;
46
+ }
47
+ get rotation() {
48
+ return this._ccmpBlip.rotation;
49
+ }
50
+ constructor(options) {
51
+ super();
52
+ this._ccmpBlip = options.ccmpBlip;
53
+ this._onDestroy = options.onDestroy;
54
+ }
55
+ destroy() {
56
+ if (!this._ccmpBlip.isExists)
57
+ return;
58
+ this._ccmpBlip.destroy();
59
+ this._onDestroy(this);
60
+ }
61
+ setPosition(value) {
62
+ this._ccmpBlip.position = { x: value.x, y: value.y, z: value.z };
63
+ }
64
+ setDimension(value) {
65
+ this._ccmpBlip.dimension = value;
66
+ }
67
+ setName(value) {
68
+ this._ccmpBlip.name = value;
69
+ }
70
+ setSprite(value) {
71
+ this._ccmpBlip.sprite = value;
72
+ }
73
+ setColor(value) {
74
+ this._ccmpBlip.color = value;
75
+ }
76
+ setAlpha(value) {
77
+ this._ccmpBlip.alpha = value;
78
+ }
79
+ }
80
+ exports.CCMPBlip = CCMPBlip;
@@ -0,0 +1,9 @@
1
+ import { type IBlipCreateOptions, type IBlipsManager } from "../../common/blip/IBlipsManager";
2
+ import { CCMPWorldObjectsManager } from "../worldObject/CCMPWorldObjectsManager";
3
+ import { CCMPBlip } from "./CCMPBlip";
4
+ export interface ICCMPBlipCreateOptions extends IBlipCreateOptions {
5
+ }
6
+ export declare class CCMPBlipsManager extends CCMPWorldObjectsManager<CCMPBlip> implements IBlipsManager {
7
+ constructor();
8
+ create(options: ICCMPBlipCreateOptions): CCMPBlip;
9
+ }
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPBlipsManager = void 0;
4
+ const CCMPWorldObjectsManager_1 = require("../worldObject/CCMPWorldObjectsManager");
5
+ const CCMPBlip_1 = require("./CCMPBlip");
6
+ class CCMPBlipsManager extends CCMPWorldObjectsManager_1.CCMPWorldObjectsManager {
7
+ constructor() {
8
+ super({
9
+ baseObjectsType: "blip",
10
+ });
11
+ }
12
+ create(options) {
13
+ const { position, dimension, sprite, color = 0, scale = 1, alpha = 255, drawDistance = 0, name = "", rotation = 0, shortRange = false, } = options;
14
+ const ccmpBlip = ccmp.blips.create(sprite, position.x, position.y, position.z, color, scale, {
15
+ name,
16
+ alpha,
17
+ drawDistance,
18
+ shortRange,
19
+ rotation,
20
+ dimension,
21
+ });
22
+ if (!ccmpBlip) {
23
+ throw new Error("CCMPBlipsManager.create: ccmp.blips.create failed (server full?)");
24
+ }
25
+ const blip = new CCMPBlip_1.CCMPBlip({
26
+ ccmpBlip,
27
+ onDestroy: (b) => this.unregisterBaseObject(b),
28
+ });
29
+ this.registerBaseObject(blip);
30
+ return blip;
31
+ }
32
+ }
33
+ exports.CCMPBlipsManager = CCMPBlipsManager;
@@ -0,0 +1,7 @@
1
+ import { type ICCMPColshapeOptions, CCMPColshape } from "./CCMPColshape";
2
+ import { type ICircleColshape } from "../../common/colshape/ICircleColshape";
3
+ export interface ICCMPCircleColshapeOptions extends ICCMPColshapeOptions {
4
+ }
5
+ export declare class CCMPCircleColshape extends CCMPColshape implements ICircleColshape {
6
+ constructor(options: ICCMPCircleColshapeOptions);
7
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPCircleColshape = void 0;
4
+ const CCMPColshape_1 = require("./CCMPColshape");
5
+ class CCMPCircleColshape extends CCMPColshape_1.CCMPColshape {
6
+ constructor(options) {
7
+ super(options);
8
+ }
9
+ }
10
+ exports.CCMPCircleColshape = CCMPCircleColshape;
@@ -0,0 +1,23 @@
1
+ import { type IColshape } from "../../common/colshape/IColshape";
2
+ import { CCMPWorldObject } from "../worldObject/CCMPWorldObject";
3
+ import { BaseObjectType } from "../../../../shared";
4
+ import { type IVector3D } from "../../../../shared/common/utils/math/Vectors";
5
+ import type { Colshape as CcmpColshape, Player as CcmpPlayer } from "@classic-mp/types/server";
6
+ export interface ICCMPColshapeOptions {
7
+ ccmpColshape: CcmpColshape;
8
+ onDestroy: (colshape: CCMPColshape) => void;
9
+ }
10
+ export declare abstract class CCMPColshape extends CCMPWorldObject implements IColshape {
11
+ private readonly _ccmpColshape;
12
+ private readonly _onDestroy;
13
+ get id(): number;
14
+ get type(): BaseObjectType;
15
+ get isExists(): boolean;
16
+ get position(): IVector3D;
17
+ get dimension(): number;
18
+ get playersInside(): readonly CcmpPlayer[];
19
+ protected constructor(options: ICCMPColshapeOptions);
20
+ destroy(): void;
21
+ setPosition(value: IVector3D): void;
22
+ setDimension(value: number): void;
23
+ }
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPColshape = void 0;
4
+ const CCMPWorldObject_1 = require("../worldObject/CCMPWorldObject");
5
+ const shared_1 = require("../../../../shared");
6
+ const Vectors_1 = require("../../../../shared/common/utils/math/Vectors");
7
+ class CCMPColshape extends CCMPWorldObject_1.CCMPWorldObject {
8
+ _ccmpColshape;
9
+ _onDestroy;
10
+ get id() {
11
+ return this._ccmpColshape.id;
12
+ }
13
+ get type() {
14
+ return shared_1.BaseObjectType.Colshape;
15
+ }
16
+ get isExists() {
17
+ return this._ccmpColshape.isExists;
18
+ }
19
+ get position() {
20
+ const p = this._ccmpColshape.position;
21
+ return new Vectors_1.Vector3D(p.x, p.y, p.z);
22
+ }
23
+ get dimension() {
24
+ return this._ccmpColshape.dimension;
25
+ }
26
+ get playersInside() {
27
+ return this._ccmpColshape.playersInside;
28
+ }
29
+ constructor(options) {
30
+ super();
31
+ this._ccmpColshape = options.ccmpColshape;
32
+ this._onDestroy = options.onDestroy;
33
+ }
34
+ destroy() {
35
+ if (!this._ccmpColshape.isExists)
36
+ return;
37
+ this._ccmpColshape.destroy();
38
+ this._onDestroy(this);
39
+ }
40
+ setPosition(value) {
41
+ this._ccmpColshape.position = { x: value.x, y: value.y, z: value.z };
42
+ }
43
+ setDimension(value) {
44
+ this._ccmpColshape.dimension = value;
45
+ }
46
+ }
47
+ exports.CCMPColshape = CCMPColshape;
@@ -0,0 +1,28 @@
1
+ import { type ICircleColshapeCreateOptions, type IColshapesManager, type ICuboidColshapeCreateOptions, type ICylinderColshapeCreateOptions, type IRectangleColshapeCreateOptions, type ISphereColshapeCreateOptions } from "../../common/colshape/IColshapesManager";
2
+ import { CCMPWorldObjectsManager } from "../worldObject/CCMPWorldObjectsManager";
3
+ import { type CCMPColshape } from "./CCMPColshape";
4
+ import { CCMPCircleColshape } from "./CCMPCircleColshape";
5
+ import { CCMPCuboidColshape } from "./CCMPCuboidColshape";
6
+ import { CCMPCylinderColshape } from "./CCMPCylinderColshape";
7
+ import { type CCMPRectangleColshape } from "./CCMPRectangleColshape";
8
+ import { CCMPSphereColshape } from "./CCMPSphereColshape";
9
+ import { type CCMPPlayer } from "../player/CCMPPlayer";
10
+ export interface ICCMPCircleColshapeCreateOptions extends ICircleColshapeCreateOptions {
11
+ }
12
+ export interface ICCMPCuboidColshapeCreateOptions extends ICuboidColshapeCreateOptions {
13
+ }
14
+ export interface ICCMPCylinderColshapeCreateOptions extends ICylinderColshapeCreateOptions {
15
+ }
16
+ export interface ICCMPRectangleColshapeCreateOptions extends IRectangleColshapeCreateOptions {
17
+ }
18
+ export interface ICCMPSphereColshapeCreateOptions extends ISphereColshapeCreateOptions {
19
+ }
20
+ export declare class CCMPColshapesManager extends CCMPWorldObjectsManager<CCMPColshape> implements IColshapesManager {
21
+ constructor();
22
+ createCircle(options: ICCMPCircleColshapeCreateOptions): CCMPCircleColshape;
23
+ createCuboid(options: ICCMPCuboidColshapeCreateOptions): CCMPCuboidColshape;
24
+ createCylinder(options: ICCMPCylinderColshapeCreateOptions): CCMPCylinderColshape;
25
+ createRectangle(_options: ICCMPRectangleColshapeCreateOptions): CCMPRectangleColshape;
26
+ createSphere(options: ICCMPSphereColshapeCreateOptions): CCMPSphereColshape;
27
+ getParticipants(colshape: CCMPColshape): Set<CCMPPlayer>;
28
+ }
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPColshapesManager = void 0;
4
+ const CCMPWorldObjectsManager_1 = require("../worldObject/CCMPWorldObjectsManager");
5
+ const CCMPCircleColshape_1 = require("./CCMPCircleColshape");
6
+ const CCMPCuboidColshape_1 = require("./CCMPCuboidColshape");
7
+ const CCMPCylinderColshape_1 = require("./CCMPCylinderColshape");
8
+ const CCMPSphereColshape_1 = require("./CCMPSphereColshape");
9
+ const RockMod_1 = require("../../../RockMod");
10
+ const types_1 = require("../../../net/common/events/types");
11
+ class CCMPColshapesManager extends CCMPWorldObjectsManager_1.CCMPWorldObjectsManager {
12
+ constructor() {
13
+ super({
14
+ baseObjectsType: "colshape",
15
+ });
16
+ ccmp.on("playerEnterColshape", (ccmpPlayer, ccmpColshape) => {
17
+ if (!ccmpColshape)
18
+ return;
19
+ const colshape = this.findByID(ccmpColshape.id);
20
+ if (!colshape)
21
+ return;
22
+ const player = RockMod_1.RockMod.instance.players.findByID(ccmpPlayer.id);
23
+ if (!player)
24
+ return;
25
+ RockMod_1.RockMod.instance.net.events.emitInternal(types_1.ServerInternalEventName.PlayerEnteredColshape, player, colshape);
26
+ });
27
+ ccmp.on("playerExitColshape", (ccmpPlayer, ccmpColshape) => {
28
+ if (!ccmpColshape)
29
+ return;
30
+ const colshape = this.findByID(ccmpColshape.id);
31
+ if (!colshape)
32
+ return;
33
+ const player = RockMod_1.RockMod.instance.players.findByID(ccmpPlayer.id);
34
+ if (!player)
35
+ return;
36
+ RockMod_1.RockMod.instance.net.events.emitInternal(types_1.ServerInternalEventName.PlayerLeftColshape, player, colshape);
37
+ });
38
+ }
39
+ createCircle(options) {
40
+ const { position, range, dimension } = options;
41
+ const ccmpColshape = ccmp.colshapes.createCircle(position.x, position.y, position.z, range, { dimension });
42
+ if (!ccmpColshape) {
43
+ throw new Error("CCMPColshapesManager.createCircle: ccmp.colshapes.createCircle failed (server full?)");
44
+ }
45
+ const colshape = new CCMPCircleColshape_1.CCMPCircleColshape({
46
+ ccmpColshape,
47
+ onDestroy: (c) => this.unregisterBaseObject(c),
48
+ });
49
+ this.registerBaseObject(colshape);
50
+ return colshape;
51
+ }
52
+ createCuboid(options) {
53
+ const { position, width, depth, height, dimension } = options;
54
+ // CCMP cube uses HALF-extents (centered at position); rock-mod options describe full sizes.
55
+ const ccmpColshape = ccmp.colshapes.createCube(position.x, position.y, position.z, width / 2, depth / 2, height / 2, { dimension });
56
+ if (!ccmpColshape) {
57
+ throw new Error("CCMPColshapesManager.createCuboid: ccmp.colshapes.createCube failed (server full?)");
58
+ }
59
+ const colshape = new CCMPCuboidColshape_1.CCMPCuboidColshape({
60
+ ccmpColshape,
61
+ onDestroy: (c) => this.unregisterBaseObject(c),
62
+ });
63
+ this.registerBaseObject(colshape);
64
+ return colshape;
65
+ }
66
+ createCylinder(options) {
67
+ const { position, range, height, dimension } = options;
68
+ const ccmpColshape = ccmp.colshapes.createCylinder(position.x, position.y, position.z, range, height, {
69
+ dimension,
70
+ });
71
+ if (!ccmpColshape) {
72
+ throw new Error("CCMPColshapesManager.createCylinder: ccmp.colshapes.createCylinder failed (server full?)");
73
+ }
74
+ const colshape = new CCMPCylinderColshape_1.CCMPCylinderColshape({
75
+ ccmpColshape,
76
+ onDestroy: (c) => this.unregisterBaseObject(c),
77
+ });
78
+ this.registerBaseObject(colshape);
79
+ return colshape;
80
+ }
81
+ createRectangle(_options) {
82
+ throw new Error("CCMPColshapesManager.createRectangle: not supported by CCMP");
83
+ }
84
+ createSphere(options) {
85
+ const { position, range, dimension } = options;
86
+ const ccmpColshape = ccmp.colshapes.createSphere(position.x, position.y, position.z, range, { dimension });
87
+ if (!ccmpColshape) {
88
+ throw new Error("CCMPColshapesManager.createSphere: ccmp.colshapes.createSphere failed (server full?)");
89
+ }
90
+ const colshape = new CCMPSphereColshape_1.CCMPSphereColshape({
91
+ ccmpColshape,
92
+ onDestroy: (c) => this.unregisterBaseObject(c),
93
+ });
94
+ this.registerBaseObject(colshape);
95
+ return colshape;
96
+ }
97
+ getParticipants(colshape) {
98
+ const participants = new Set();
99
+ for (const ccmpPlayer of colshape.playersInside) {
100
+ const player = RockMod_1.RockMod.instance.players.findByID(ccmpPlayer.id);
101
+ if (player) {
102
+ participants.add(player);
103
+ }
104
+ }
105
+ return participants;
106
+ }
107
+ }
108
+ exports.CCMPColshapesManager = CCMPColshapesManager;
@@ -0,0 +1,7 @@
1
+ import { type ICCMPColshapeOptions, CCMPColshape } from "./CCMPColshape";
2
+ import { type ICuboidColshape } from "../../common/colshape/ICuboidColshape";
3
+ export interface ICCMPCuboidColshapeOptions extends ICCMPColshapeOptions {
4
+ }
5
+ export declare class CCMPCuboidColshape extends CCMPColshape implements ICuboidColshape {
6
+ constructor(options: ICCMPCuboidColshapeOptions);
7
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPCuboidColshape = void 0;
4
+ const CCMPColshape_1 = require("./CCMPColshape");
5
+ class CCMPCuboidColshape extends CCMPColshape_1.CCMPColshape {
6
+ constructor(options) {
7
+ super(options);
8
+ }
9
+ }
10
+ exports.CCMPCuboidColshape = CCMPCuboidColshape;
@@ -0,0 +1,7 @@
1
+ import { type ICCMPColshapeOptions, CCMPColshape } from "./CCMPColshape";
2
+ import { type ICylinderColshape } from "../../common/colshape/ICylinderColshape";
3
+ export interface ICCMPCylinderColshapeOptions extends ICCMPColshapeOptions {
4
+ }
5
+ export declare class CCMPCylinderColshape extends CCMPColshape implements ICylinderColshape {
6
+ constructor(options: ICCMPCylinderColshapeOptions);
7
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPCylinderColshape = void 0;
4
+ const CCMPColshape_1 = require("./CCMPColshape");
5
+ class CCMPCylinderColshape extends CCMPColshape_1.CCMPColshape {
6
+ constructor(options) {
7
+ super(options);
8
+ }
9
+ }
10
+ exports.CCMPCylinderColshape = CCMPCylinderColshape;
@@ -0,0 +1,7 @@
1
+ import { type ICCMPColshapeOptions, CCMPColshape } from "./CCMPColshape";
2
+ import { type IRectangleColshape } from "../../common/colshape/IRectangleColshape";
3
+ export interface ICCMPRectangleColshapeOptions extends ICCMPColshapeOptions {
4
+ }
5
+ export declare class CCMPRectangleColshape extends CCMPColshape implements IRectangleColshape {
6
+ constructor(options: ICCMPRectangleColshapeOptions);
7
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPRectangleColshape = void 0;
4
+ const CCMPColshape_1 = require("./CCMPColshape");
5
+ class CCMPRectangleColshape extends CCMPColshape_1.CCMPColshape {
6
+ constructor(options) {
7
+ super(options);
8
+ }
9
+ }
10
+ exports.CCMPRectangleColshape = CCMPRectangleColshape;
@@ -0,0 +1,7 @@
1
+ import { type ICCMPColshapeOptions, CCMPColshape } from "./CCMPColshape";
2
+ import { type ISphereColshape } from "../../common/colshape/ISphereColshape";
3
+ export interface ICCMPSphereColshapeOptions extends ICCMPColshapeOptions {
4
+ }
5
+ export declare class CCMPSphereColshape extends CCMPColshape implements ISphereColshape {
6
+ constructor(options: ICCMPSphereColshapeOptions);
7
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPSphereColshape = void 0;
4
+ const CCMPColshape_1 = require("./CCMPColshape");
5
+ class CCMPSphereColshape extends CCMPColshape_1.CCMPColshape {
6
+ constructor(options) {
7
+ super(options);
8
+ }
9
+ }
10
+ exports.CCMPSphereColshape = CCMPSphereColshape;
@@ -0,0 +1,8 @@
1
+ import { type IEntitiesManager } from "../../common/entity/IEntitiesManager";
2
+ import { type CCMPEntity } from "./CCMPEntity";
3
+ import { type ICCMPWorldObjectsManagerOptions, CCMPWorldObjectsManager } from "../worldObject/CCMPWorldObjectsManager";
4
+ export interface ICCMPEntitiesManagerOptions extends ICCMPWorldObjectsManagerOptions {
5
+ }
6
+ export declare abstract class CCMPEntitiesManager<T extends CCMPEntity> extends CCMPWorldObjectsManager<T> implements IEntitiesManager<T> {
7
+ protected constructor(options: ICCMPEntitiesManagerOptions);
8
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPEntitiesManager = void 0;
4
+ const CCMPWorldObjectsManager_1 = require("../worldObject/CCMPWorldObjectsManager");
5
+ class CCMPEntitiesManager extends CCMPWorldObjectsManager_1.CCMPWorldObjectsManager {
6
+ constructor(options) {
7
+ super(options);
8
+ }
9
+ }
10
+ exports.CCMPEntitiesManager = CCMPEntitiesManager;
@@ -0,0 +1,13 @@
1
+ import { type IEntity } from "../../common/entity/IEntity";
2
+ import { CCMPWorldObject } from "../worldObject/CCMPWorldObject";
3
+ import { type IVector3D } from "../../../../shared/common/utils/math/Vectors";
4
+ import type { StreamSyncedMeta } from "@classic-mp/types/server";
5
+ export declare abstract class CCMPEntity extends CCMPWorldObject implements IEntity {
6
+ protected abstract get ccmpMeta(): StreamSyncedMeta;
7
+ get model(): number;
8
+ get rotation(): IVector3D;
9
+ setModel(_value: string): void;
10
+ setRotation(_value: IVector3D): void;
11
+ getNetData(name: string): unknown;
12
+ setNetData(name: string, value: unknown): void;
13
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPEntity = void 0;
4
+ const CCMPWorldObject_1 = require("../worldObject/CCMPWorldObject");
5
+ const notImplemented = (name) => {
6
+ throw new Error(`Not implemented yet: ${name}`);
7
+ };
8
+ class CCMPEntity extends CCMPWorldObject_1.CCMPWorldObject {
9
+ get model() {
10
+ return notImplemented("CCMPEntity.model");
11
+ }
12
+ get rotation() {
13
+ return notImplemented("CCMPEntity.rotation");
14
+ }
15
+ setModel(_value) {
16
+ notImplemented("CCMPEntity.setModel");
17
+ }
18
+ setRotation(_value) {
19
+ notImplemented("CCMPEntity.setRotation");
20
+ }
21
+ getNetData(name) {
22
+ return this.ccmpMeta.getStreamSyncedMeta(name);
23
+ }
24
+ setNetData(name, value) {
25
+ this.ccmpMeta.setStreamSyncedMeta(name, value);
26
+ }
27
+ }
28
+ exports.CCMPEntity = CCMPEntity;
@@ -0,0 +1,32 @@
1
+ import { CCMPWorldObject } from "../worldObject/CCMPWorldObject";
2
+ import { type IMarker } from "../../common/marker/IMarker";
3
+ import { BaseObjectType, type IMarkerType } from "../../../../shared";
4
+ import { type IVector3D } from "../../../../shared/common/utils/math/Vectors";
5
+ import { type IRGBA } from "../../../../shared/common/utils/color/RGBA";
6
+ import type { Marker as CcmpMarker } from "@classic-mp/types/server";
7
+ export interface ICCMPMarkerOptions {
8
+ ccmpMarker: CcmpMarker;
9
+ onDestroy: (marker: CCMPMarker) => void;
10
+ }
11
+ export declare class CCMPMarker extends CCMPWorldObject implements IMarker {
12
+ private readonly _ccmpMarker;
13
+ private readonly _onDestroy;
14
+ get id(): number;
15
+ get type(): BaseObjectType;
16
+ get isExists(): boolean;
17
+ get position(): IVector3D;
18
+ get dimension(): number;
19
+ get markerType(): IMarkerType;
20
+ get visible(): boolean;
21
+ get scale(): number;
22
+ get color(): IRGBA;
23
+ get rotation(): IVector3D;
24
+ constructor(options: ICCMPMarkerOptions);
25
+ destroy(): void;
26
+ setPosition(value: IVector3D): void;
27
+ setDimension(value: number): void;
28
+ setVisible(value: boolean): void;
29
+ setScale(value: number): void;
30
+ setColor(value: IRGBA): void;
31
+ setRotation(value: IVector3D): void;
32
+ }
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPMarker = void 0;
4
+ const CCMPWorldObject_1 = require("../worldObject/CCMPWorldObject");
5
+ const shared_1 = require("../../../../shared");
6
+ const Vectors_1 = require("../../../../shared/common/utils/math/Vectors");
7
+ const RGBA_1 = require("../../../../shared/common/utils/color/RGBA");
8
+ class CCMPMarker extends CCMPWorldObject_1.CCMPWorldObject {
9
+ _ccmpMarker;
10
+ _onDestroy;
11
+ get id() {
12
+ return this._ccmpMarker.id;
13
+ }
14
+ get type() {
15
+ return shared_1.BaseObjectType.Marker;
16
+ }
17
+ get isExists() {
18
+ return this._ccmpMarker.isExists;
19
+ }
20
+ get position() {
21
+ const p = this._ccmpMarker.position;
22
+ return new Vectors_1.Vector3D(p.x, p.y, p.z);
23
+ }
24
+ get dimension() {
25
+ return this._ccmpMarker.dimension;
26
+ }
27
+ get markerType() {
28
+ return this._ccmpMarker.type;
29
+ }
30
+ get visible() {
31
+ return this._ccmpMarker.visible;
32
+ }
33
+ get scale() {
34
+ return this._ccmpMarker.scale;
35
+ }
36
+ get color() {
37
+ const c = this._ccmpMarker.color;
38
+ return new RGBA_1.RGBA(c.r, c.g, c.b, c.a);
39
+ }
40
+ get rotation() {
41
+ const r = this._ccmpMarker.rotation;
42
+ return new Vectors_1.Vector3D(r.x, r.y, r.z);
43
+ }
44
+ constructor(options) {
45
+ super();
46
+ this._ccmpMarker = options.ccmpMarker;
47
+ this._onDestroy = options.onDestroy;
48
+ }
49
+ destroy() {
50
+ if (!this._ccmpMarker.isExists)
51
+ return;
52
+ this._ccmpMarker.destroy();
53
+ this._onDestroy(this);
54
+ }
55
+ setPosition(value) {
56
+ this._ccmpMarker.position = { x: value.x, y: value.y, z: value.z };
57
+ }
58
+ setDimension(value) {
59
+ this._ccmpMarker.dimension = value;
60
+ }
61
+ setVisible(value) {
62
+ this._ccmpMarker.visible = value;
63
+ }
64
+ setScale(value) {
65
+ this._ccmpMarker.scale = value;
66
+ }
67
+ setColor(value) {
68
+ this._ccmpMarker.color = {
69
+ r: value.r,
70
+ g: value.g,
71
+ b: value.b,
72
+ a: value.a ?? 255,
73
+ };
74
+ }
75
+ setRotation(value) {
76
+ this._ccmpMarker.rotation = { x: value.x, y: value.y, z: value.z };
77
+ }
78
+ }
79
+ exports.CCMPMarker = CCMPMarker;
@@ -0,0 +1,9 @@
1
+ import { type IMarkerCreateOptions, type IMarkersManager } from "../../common/marker/IMarkersManager";
2
+ import { CCMPWorldObjectsManager } from "../worldObject/CCMPWorldObjectsManager";
3
+ import { CCMPMarker } from "./CCMPMarker";
4
+ export interface ICCMPMarkerCreateOptions extends IMarkerCreateOptions {
5
+ }
6
+ export declare class CCMPMarkersManager extends CCMPWorldObjectsManager<CCMPMarker> implements IMarkersManager {
7
+ constructor();
8
+ create(options: ICCMPMarkerCreateOptions): CCMPMarker;
9
+ }
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CCMPMarkersManager = void 0;
4
+ const CCMPWorldObjectsManager_1 = require("../worldObject/CCMPWorldObjectsManager");
5
+ const CCMPMarker_1 = require("./CCMPMarker");
6
+ class CCMPMarkersManager extends CCMPWorldObjectsManager_1.CCMPWorldObjectsManager {
7
+ constructor() {
8
+ super({
9
+ baseObjectsType: "marker",
10
+ });
11
+ }
12
+ create(options) {
13
+ const { position, dimension, type, scale, color, rotation } = options;
14
+ const ccmpMarker = ccmp.markers.create(type, position.x, position.y, position.z, scale, {
15
+ color: { r: color.r, g: color.g, b: color.b, a: color.a ?? 255 },
16
+ rotation: { x: rotation.x, y: rotation.y, z: rotation.z },
17
+ dimension,
18
+ });
19
+ if (!ccmpMarker) {
20
+ throw new Error("CCMPMarkersManager.create: ccmp.markers.create failed (server full?)");
21
+ }
22
+ const marker = new CCMPMarker_1.CCMPMarker({
23
+ ccmpMarker,
24
+ onDestroy: (m) => this.unregisterBaseObject(m),
25
+ });
26
+ this.registerBaseObject(marker);
27
+ return marker;
28
+ }
29
+ }
30
+ exports.CCMPMarkersManager = CCMPMarkersManager;