rock-mod 0.0.0 → 0.1.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 (105) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.js +17 -0
  3. package/dist/server/RockMod.d.ts +11 -5
  4. package/dist/server/RockMod.js +61 -19
  5. package/dist/server/common/utils/index.d.ts +1 -0
  6. package/dist/server/common/utils/index.js +17 -0
  7. package/dist/server/common/utils/math/Math.d.ts +6 -0
  8. package/dist/server/common/utils/math/Math.js +7 -0
  9. package/dist/server/common/utils/math/Vectors.d.ts +15 -2
  10. package/dist/server/common/utils/math/index.d.ts +1 -0
  11. package/dist/server/common/utils/math/index.js +17 -0
  12. package/dist/server/entities/altv/baseObject/AltVBaseObject.d.ts +8 -4
  13. package/dist/server/entities/altv/baseObject/AltVBaseObject.js +17 -6
  14. package/dist/server/entities/altv/baseObject/AltVBaseObjectsIterator.d.ts +2 -1
  15. package/dist/server/entities/altv/baseObject/AltVBaseObjectsManager.d.ts +7 -2
  16. package/dist/server/entities/altv/baseObject/AltVBaseObjectsManager.js +14 -0
  17. package/dist/server/entities/altv/entity/AltVEntitiesManager.d.ts +2 -1
  18. package/dist/server/entities/altv/entity/AltVEntity.d.ts +8 -6
  19. package/dist/server/entities/altv/entity/AltVEntity.js +3 -4
  20. package/dist/server/entities/altv/player/AltVPlayer.d.ts +42 -8
  21. package/dist/server/entities/altv/player/AltVPlayer.js +117 -12
  22. package/dist/server/entities/altv/player/AltVPlayerNetManager.d.ts +8 -0
  23. package/dist/server/entities/altv/player/AltVPlayerNetManager.js +16 -0
  24. package/dist/server/entities/altv/vehicle/AltVVehicle.d.ts +7 -5
  25. package/dist/server/entities/altv/vehicle/AltVVehicle.js +2 -4
  26. package/dist/server/entities/altv/vehicle/AltVVehiclesManager.d.ts +5 -1
  27. package/dist/server/entities/altv/vehicle/AltVVehiclesManager.js +9 -0
  28. package/dist/server/entities/altv/worldObject/AltVWorldObject.d.ts +9 -6
  29. package/dist/server/entities/altv/worldObject/AltVWorldObject.js +11 -6
  30. package/dist/server/entities/altv/worldObject/AltVWorldObjectsIterator.d.ts +2 -1
  31. package/dist/server/entities/altv/worldObject/AltVWorldObjectsManager.d.ts +7 -4
  32. package/dist/server/entities/common/baseObject/IBaseObject.d.ts +2 -2
  33. package/dist/server/entities/common/baseObject/index.d.ts +3 -0
  34. package/dist/server/entities/common/baseObject/index.js +19 -0
  35. package/dist/server/entities/common/entity/IEntity.d.ts +1 -2
  36. package/dist/server/entities/common/entity/index.d.ts +2 -0
  37. package/dist/server/entities/common/entity/index.js +18 -0
  38. package/dist/server/entities/common/index.d.ts +5 -0
  39. package/dist/server/entities/common/index.js +21 -0
  40. package/dist/server/entities/common/player/IPlayer.d.ts +49 -3
  41. package/dist/server/entities/common/player/IPlayerNetManager.d.ts +4 -0
  42. package/dist/server/entities/common/player/index.d.ts +3 -0
  43. package/dist/server/entities/common/player/index.js +19 -0
  44. package/dist/server/entities/common/vehicle/IVehicle.d.ts +20 -0
  45. package/dist/server/entities/common/vehicle/IVehicle.js +22 -0
  46. package/dist/server/entities/common/vehicle/IVehiclesManager.d.ts +7 -0
  47. package/dist/server/entities/common/vehicle/index.d.ts +2 -0
  48. package/dist/server/entities/common/vehicle/index.js +18 -0
  49. package/dist/server/entities/common/worldObject/IWorldObject.d.ts +5 -5
  50. package/dist/server/entities/common/worldObject/index.d.ts +3 -0
  51. package/dist/server/entities/common/worldObject/index.js +19 -0
  52. package/dist/server/entities/index.d.ts +1 -0
  53. package/dist/server/entities/index.js +17 -0
  54. package/dist/server/entities/ragemp/baseObject/RageBaseObject.d.ts +7 -4
  55. package/dist/server/entities/ragemp/baseObject/RageBaseObject.js +7 -6
  56. package/dist/server/entities/ragemp/baseObject/RageBaseObjectsManager.d.ts +6 -2
  57. package/dist/server/entities/ragemp/baseObject/RageBaseObjectsManager.js +14 -0
  58. package/dist/server/entities/ragemp/entity/RageEntitiesManager.d.ts +6 -4
  59. package/dist/server/entities/ragemp/entity/RageEntity.d.ts +7 -6
  60. package/dist/server/entities/ragemp/entity/RageEntity.js +2 -4
  61. package/dist/server/entities/ragemp/player/RagePlayer.d.ts +41 -8
  62. package/dist/server/entities/ragemp/player/RagePlayer.js +109 -12
  63. package/dist/server/entities/ragemp/player/RagePlayerNetManager.d.ts +7 -0
  64. package/dist/server/entities/ragemp/player/RagePlayerNetManager.js +16 -0
  65. package/dist/server/entities/ragemp/player/RagePlayersManager.d.ts +1 -0
  66. package/dist/server/entities/ragemp/player/RagePlayersManager.js +20 -0
  67. package/dist/server/entities/ragemp/vehicle/RageVehicle.d.ts +6 -5
  68. package/dist/server/entities/ragemp/vehicle/RageVehicle.js +2 -4
  69. package/dist/server/entities/ragemp/vehicle/RageVehiclesManager.d.ts +4 -1
  70. package/dist/server/entities/ragemp/vehicle/RageVehiclesManager.js +8 -0
  71. package/dist/server/entities/ragemp/worldObject/RageWorldObject.d.ts +8 -6
  72. package/dist/server/entities/ragemp/worldObject/RageWorldObject.js +10 -6
  73. package/dist/server/entities/ragemp/worldObject/RageWorldObjectsIterator.d.ts +1 -1
  74. package/dist/server/entities/ragemp/worldObject/RageWorldObjectsManager.d.ts +6 -4
  75. package/dist/server/factories/altv/AltVManagersFactory.d.ts +9 -0
  76. package/dist/server/{entities → factories}/altv/AltVManagersFactory.js +6 -2
  77. package/dist/server/factories/common/IManagersFactory.d.ts +8 -0
  78. package/dist/server/factories/common/IManagersFactory.js +2 -0
  79. package/dist/server/factories/ragemp/RageManagersFactory.d.ts +9 -0
  80. package/dist/server/{entities → factories}/ragemp/RageManagersFactory.js +6 -2
  81. package/dist/server/index.d.ts +3 -0
  82. package/dist/server/index.js +19 -0
  83. package/dist/server/net/altv/AltVNetManager.d.ts +10 -0
  84. package/dist/server/net/altv/AltVNetManager.js +20 -0
  85. package/dist/server/net/altv/events/AltVEventsManager.d.ts +16 -0
  86. package/dist/server/net/altv/events/AltVEventsManager.js +28 -0
  87. package/dist/server/net/altv/rpc/AltVRPCManager.d.ts +11 -0
  88. package/dist/server/net/altv/rpc/AltVRPCManager.js +18 -0
  89. package/dist/server/net/common/INetManager.d.ts +6 -0
  90. package/dist/server/net/common/INetManager.js +2 -0
  91. package/dist/server/net/common/events/IEventsManager.d.ts +15 -0
  92. package/dist/server/net/common/events/IEventsManager.js +2 -0
  93. package/dist/server/net/common/rpc/IRPCManager.d.ts +6 -0
  94. package/dist/server/net/common/rpc/IRPCManager.js +2 -0
  95. package/dist/server/net/ragemp/RageNetManager.d.ts +10 -0
  96. package/dist/server/net/ragemp/RageNetManager.js +20 -0
  97. package/dist/server/net/ragemp/events/RageEventsManager.d.ts +19 -0
  98. package/dist/server/net/ragemp/events/RageEventsManager.js +25 -0
  99. package/dist/server/net/ragemp/rpc/RageRPCManager.d.ts +7 -0
  100. package/dist/server/net/ragemp/rpc/RageRPCManager.js +15 -0
  101. package/package.json +18 -9
  102. package/dist/server/entities/altv/AltVManagersFactory.d.ts +0 -7
  103. package/dist/server/entities/common/IManagersFactory.d.ts +0 -6
  104. package/dist/server/entities/ragemp/RageManagersFactory.d.ts +0 -7
  105. /package/dist/server/entities/common/{IManagersFactory.js → player/IPlayerNetManager.js} +0 -0
@@ -0,0 +1,15 @@
1
+ import { IPlayer } from "../../../entities/common/player/IPlayer";
2
+ import { IBaseObject } from "../../../entities/common/baseObject/IBaseObject";
3
+ export interface INetServerEvents {
4
+ "rm::playerConnected"(player: IPlayer): void;
5
+ "rm::playerDisconnected"(player: IPlayer): void;
6
+ "rm::entityCreated"(entity: IBaseObject): void;
7
+ "rm::entityDestroyed"(entity: IBaseObject): void;
8
+ }
9
+ export interface IEventsManager {
10
+ on<K extends keyof INetServerEvents>(events: Record<K, (...args: Parameters<INetServerEvents[K]>) => void>): void;
11
+ onServer<K extends keyof INetServerEvents>(events: Record<K, (...args: Parameters<INetServerEvents[K]>) => void>): void;
12
+ off(eventName: string, listener: (...args: unknown[]) => void): void;
13
+ emit(eventName: string, ...args: unknown[]): void;
14
+ emitClient(player: IPlayer, eventName: string, ...args: unknown[]): void;
15
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,6 @@
1
+ import { IPlayer } from "../../../entities/common/player/IPlayer";
2
+ export interface IRPCManager {
3
+ register(rpcName: string, handler: (player: IPlayer, ...args: unknown[]) => unknown): void;
4
+ unregister(rpcName: string): void;
5
+ callClient(player: IPlayer, rpcName: string, ...args: unknown[]): Promise<unknown>;
6
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ import { INetManager } from "../common/INetManager";
2
+ import { RageEventsManager } from "./events/RageEventsManager";
3
+ import { RageRPCManager } from "./rpc/RageRPCManager";
4
+ export declare class RageNetManager implements INetManager {
5
+ private readonly _eventsManager;
6
+ private readonly _rpcManager;
7
+ get events(): RageEventsManager;
8
+ get rpc(): RageRPCManager;
9
+ constructor();
10
+ }
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RageNetManager = void 0;
4
+ const RageEventsManager_1 = require("./events/RageEventsManager");
5
+ const RageRPCManager_1 = require("./rpc/RageRPCManager");
6
+ class RageNetManager {
7
+ _eventsManager;
8
+ _rpcManager;
9
+ get events() {
10
+ return this._eventsManager;
11
+ }
12
+ get rpc() {
13
+ return this._rpcManager;
14
+ }
15
+ constructor() {
16
+ this._eventsManager = new RageEventsManager_1.RageEventsManager();
17
+ this._rpcManager = new RageRPCManager_1.RageRPCManager();
18
+ }
19
+ }
20
+ exports.RageNetManager = RageNetManager;
@@ -0,0 +1,19 @@
1
+ import { IEventsManager, INetServerEvents } from "../../common/events/IEventsManager";
2
+ import { RagePlayer } from "../../../entities/ragemp/player/RagePlayer";
3
+ import { RageBaseObject } from "../../../entities/ragemp/baseObject/RageBaseObject";
4
+ interface RageServerEvents extends IServerEvents, INetServerEvents {
5
+ "rm::playerConnected"(player: RagePlayer): void;
6
+ "rm::playerDisconnected"(player: RagePlayer): void;
7
+ "rm::entityCreated"(entity: RageBaseObject): void;
8
+ "rm::entityDestroyed"(entity: RageBaseObject): void;
9
+ playerJoin(player: PlayerMp): void;
10
+ playerQuit(player: PlayerMp): void;
11
+ }
12
+ export declare class RageEventsManager implements IEventsManager {
13
+ on<K extends keyof RageServerEvents>(events: Record<K, (...args: Parameters<RageServerEvents[K]>) => void>): void;
14
+ onServer<K extends keyof RageServerEvents>(events: Record<K, (...args: Parameters<RageServerEvents[K]>) => void>): void;
15
+ off(eventName: keyof RageServerEvents, listener: (...args: unknown[]) => void): void;
16
+ emit(eventName: keyof RageServerEvents, ...args: unknown[]): void;
17
+ emitClient(player: RagePlayer, eventName: keyof RageServerEvents, ...args: unknown[]): void;
18
+ }
19
+ export {};
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RageEventsManager = void 0;
4
+ class RageEventsManager {
5
+ on(events) {
6
+ for (const eventName of Object.keys(events)) {
7
+ mp.events.add(eventName, events[eventName]);
8
+ }
9
+ }
10
+ onServer(events) {
11
+ for (const eventName of Object.keys(events)) {
12
+ mp.events.add(eventName, events[eventName]);
13
+ }
14
+ }
15
+ off(eventName, listener) {
16
+ return mp.events.remove(eventName, listener);
17
+ }
18
+ emit(eventName, ...args) {
19
+ return mp.events.call(eventName, args);
20
+ }
21
+ emitClient(player, eventName, ...args) {
22
+ return player.net.callEvent(eventName, ...args);
23
+ }
24
+ }
25
+ exports.RageEventsManager = RageEventsManager;
@@ -0,0 +1,7 @@
1
+ import { IRPCManager } from "../../common/rpc/IRPCManager";
2
+ import { RagePlayer } from "../../../entities/ragemp/player/RagePlayer";
3
+ export declare class RageRPCManager implements IRPCManager {
4
+ register(rpcName: string, handler: (player: RagePlayer, ...args: unknown[]) => unknown): void;
5
+ unregister(rpcName: string): void;
6
+ callClient(player: RagePlayer, rpcName: string, ...args: unknown[]): Promise<unknown>;
7
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RageRPCManager = void 0;
4
+ class RageRPCManager {
5
+ register(rpcName, handler) {
6
+ return mp.events.addProc(rpcName, handler);
7
+ }
8
+ unregister(rpcName) {
9
+ return mp.events.remove(rpcName);
10
+ }
11
+ callClient(player, rpcName, ...args) {
12
+ return player.net.callRPC(rpcName, ...args);
13
+ }
14
+ }
15
+ exports.RageRPCManager = RageRPCManager;
package/package.json CHANGED
@@ -1,18 +1,25 @@
1
1
  {
2
2
  "name": "rock-mod",
3
- "version": "0.0.0",
3
+ "version": "0.1.0",
4
4
  "description": "Rock-Mod is a powerful framework designed for creating and managing mods for Grand Theft Auto (GTA) games.",
5
- "main": "index.js",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
6
7
  "scripts": {
7
- "start": "npx tsx src/index.ts",
8
+ "start": "npx tsx src/server/index.ts",
8
9
  "build": "npm run build:server && npm run build:client",
9
- "build:server": "tsc --project tsconfig.server.json",
10
- "build:client": "tsc --project tsconfig.client.json",
11
- "lint:check": "eslint . --ext .ts",
12
- "lint:fix": "eslint . --ext .ts --fix",
10
+ "build:server": "tsc --project src/server/tsconfig.json",
11
+ "build:client": "tsc --project src/client/tsconfig.json",
12
+ "lint:server:check": "cd src/server && eslint . --ext .ts",
13
+ "lint:server:fix": "cd src/server && eslint . --ext .ts --fix",
14
+ "lint:client:check": "cd src/client && eslint . --ext .ts",
15
+ "lint:client:fix": "cd src/client && eslint . --ext .ts --fix",
16
+ "lint:check": "npm run lint:server:check && npm run lint:client:check",
17
+ "lint:fix": "npm run lint:server:fix && npm run lint:client:fix",
13
18
  "format:check": "prettier --check .",
14
19
  "format:fix": "prettier --write .",
15
- "type:check": "tsc --noEmit",
20
+ "type:server:check": "tsc --noEmit --project src/server/tsconfig.json",
21
+ "type:client:check": "tsc --noEmit --project src/client/tsconfig.json",
22
+ "type:check": "npm run type:server:check && npm run type:client:check",
16
23
  "test": "echo \"Error: no test specified\" && exit 1",
17
24
  "prepare": "husky"
18
25
  },
@@ -27,7 +34,9 @@
27
34
  "npm run format:fix"
28
35
  ]
29
36
  },
30
- "files": ["dist"],
37
+ "files": [
38
+ "dist"
39
+ ],
31
40
  "keywords": [
32
41
  "gta"
33
42
  ],
@@ -1,7 +0,0 @@
1
- import { IManagersFactory } from "../common/IManagersFactory";
2
- import { AltVPlayersManager } from "./player/AltVPlayersManager";
3
- import { AltVVehiclesManager } from "./vehicle/AltVVehiclesManager";
4
- export declare class AltVManagersFactory implements IManagersFactory {
5
- createPlayersManager(): AltVPlayersManager;
6
- createVehiclesManager(): AltVVehiclesManager;
7
- }
@@ -1,6 +0,0 @@
1
- import { IPlayersManager } from "./player/IPlayersManager";
2
- import { IVehiclesManager } from "./vehicle/IVehiclesManager";
3
- export interface IManagersFactory {
4
- createPlayersManager(): IPlayersManager;
5
- createVehiclesManager(): IVehiclesManager;
6
- }
@@ -1,7 +0,0 @@
1
- import { IManagersFactory } from "../common/IManagersFactory";
2
- import { RagePlayersManager } from "./player/RagePlayersManager";
3
- import { RageVehiclesManager } from "./vehicle/RageVehiclesManager";
4
- export declare class RageManagersFactory implements IManagersFactory {
5
- createPlayersManager(): RagePlayersManager;
6
- createVehiclesManager(): RageVehiclesManager;
7
- }