@rpgjs/server 4.0.0-beta.1 → 4.0.0-beta.4

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 (76) hide show
  1. package/lib/Game/Map.js +2 -2
  2. package/lib/Gui/DialogGui.js +2 -2
  3. package/lib/Gui/MenuGui.js +1 -1
  4. package/lib/Gui/NotificationGui.js +1 -1
  5. package/lib/Gui/ShopGui.js +1 -1
  6. package/lib/Gui/index.js +5 -5
  7. package/lib/Player/BattleManager.js +4 -4
  8. package/lib/Player/ClassManager.js +2 -2
  9. package/lib/Player/EffectManager.js +2 -2
  10. package/lib/Player/ElementManager.js +1 -1
  11. package/lib/Player/GuiManager.js +1 -1
  12. package/lib/Player/ItemManager.js +5 -5
  13. package/lib/Player/ParameterManager.js +1 -1
  14. package/lib/Player/Player.js +15 -15
  15. package/lib/Player/SkillManager.js +5 -5
  16. package/lib/Player/StateManager.js +2 -2
  17. package/lib/Scenes/Map.js +4 -4
  18. package/lib/decorators/event.js +1 -1
  19. package/lib/decorators/map.js +1 -1
  20. package/lib/entry-point.js +2 -2
  21. package/lib/express/api.js +3 -3
  22. package/lib/express/server.js +3 -3
  23. package/lib/index.js +14 -14
  24. package/lib/logs/index.js +4 -4
  25. package/lib/logs/item.js +1 -1
  26. package/lib/logs/skill.js +1 -1
  27. package/lib/logs/state.js +1 -1
  28. package/lib/server.js +4 -4
  29. package/package.json +8 -10
  30. package/src/Game/Map.ts +513 -0
  31. package/src/Game/WorldMaps.ts +45 -0
  32. package/src/Gui/DialogGui.ts +67 -0
  33. package/src/Gui/Gui.ts +45 -0
  34. package/src/Gui/MenuGui.ts +26 -0
  35. package/src/Gui/NotificationGui.ts +10 -0
  36. package/src/Gui/ShopGui.ts +43 -0
  37. package/src/Gui/index.ts +13 -0
  38. package/src/Interfaces/Gui.ts +4 -0
  39. package/src/Interfaces/StateStore.ts +5 -0
  40. package/src/MatchMaker.ts +63 -0
  41. package/src/Monitor/index.ts +78 -0
  42. package/src/Player/BattleManager.ts +123 -0
  43. package/src/Player/ClassManager.ts +72 -0
  44. package/src/Player/ComponentManager.ts +538 -0
  45. package/src/Player/EffectManager.ts +94 -0
  46. package/src/Player/ElementManager.ts +142 -0
  47. package/src/Player/GoldManager.ts +26 -0
  48. package/src/Player/GuiManager.ts +308 -0
  49. package/src/Player/ItemFixture.ts +24 -0
  50. package/src/Player/ItemManager.ts +474 -0
  51. package/src/Player/MoveManager.ts +635 -0
  52. package/src/Player/ParameterManager.ts +468 -0
  53. package/src/Player/Player.ts +931 -0
  54. package/src/Player/SkillManager.ts +229 -0
  55. package/src/Player/StateManager.ts +230 -0
  56. package/src/Player/VariableManager.ts +55 -0
  57. package/src/Query.ts +172 -0
  58. package/src/RpgServer.ts +429 -0
  59. package/src/Scenes/Map.ts +302 -0
  60. package/src/decorators/event.ts +57 -0
  61. package/src/decorators/map.ts +223 -0
  62. package/src/entry-point.ts +102 -0
  63. package/src/express/api.ts +118 -0
  64. package/src/express/errors/NotAuthorized.ts +6 -0
  65. package/src/express/errors/NotFound.ts +6 -0
  66. package/src/express/server.ts +93 -0
  67. package/src/index.ts +28 -0
  68. package/src/logs/index.ts +11 -0
  69. package/src/logs/item.ts +31 -0
  70. package/src/logs/log.ts +3 -0
  71. package/src/logs/skill.ts +16 -0
  72. package/src/logs/state.ts +13 -0
  73. package/src/models/Item.ts +11 -0
  74. package/src/presets/index.ts +71 -0
  75. package/src/server.ts +394 -0
  76. package/tsconfig.json +27 -0
package/lib/Game/Map.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { RpgCommonMap, Utils } from '@rpgjs/common';
2
2
  import { TiledParserFile, TiledParser } from '@rpgjs/tiled';
3
- import { EventMode, RpgEvent } from '../Player/Player';
4
- import { Move } from '../Player/MoveManager';
3
+ import { EventMode, RpgEvent } from '../Player/Player.js';
4
+ import { Move } from '../Player/MoveManager.js';
5
5
  import path from 'path';
6
6
  import { World } from 'simple-room';
7
7
  class AutoEvent extends RpgEvent {
@@ -1,6 +1,6 @@
1
1
  import { PrebuiltGui } from '@rpgjs/common';
2
- import { Gui } from './Gui';
3
- import { Move } from '../Player/MoveManager';
2
+ import { Gui } from './Gui.js';
3
+ import { Move } from '../Player/MoveManager.js';
4
4
  export var DialogPosition;
5
5
  (function (DialogPosition) {
6
6
  DialogPosition["Top"] = "top";
@@ -1,5 +1,5 @@
1
1
  import { PrebuiltGui } from '@rpgjs/common';
2
- import { Gui } from './Gui';
2
+ import { Gui } from './Gui.js';
3
3
  export class MenuGui extends Gui {
4
4
  constructor(player) {
5
5
  super(PrebuiltGui.MainMenu, player);
@@ -1,5 +1,5 @@
1
1
  import { PrebuiltGui } from '@rpgjs/common';
2
- import { Gui } from './Gui';
2
+ import { Gui } from './Gui.js';
3
3
  export class NotificationGui extends Gui {
4
4
  constructor(player) {
5
5
  super(PrebuiltGui.Notification, player);
@@ -1,5 +1,5 @@
1
1
  import { PrebuiltGui } from '@rpgjs/common';
2
- import { Gui } from './Gui';
2
+ import { Gui } from './Gui.js';
3
3
  export class ShopGui extends Gui {
4
4
  constructor(player) {
5
5
  super(PrebuiltGui.Shop, player);
package/lib/Gui/index.js CHANGED
@@ -1,7 +1,7 @@
1
- import { Gui } from './Gui';
2
- import { DialogGui } from './DialogGui';
3
- import { MenuGui } from './MenuGui';
4
- import { ShopGui } from './ShopGui';
5
- import { NotificationGui } from './NotificationGui';
1
+ import { Gui } from './Gui.js';
2
+ import { DialogGui } from './DialogGui.js';
3
+ import { MenuGui } from './MenuGui.js';
4
+ import { ShopGui } from './ShopGui.js';
5
+ import { NotificationGui } from './NotificationGui.js';
6
6
  export { Gui, DialogGui, MenuGui, ShopGui, NotificationGui };
7
7
  //# sourceMappingURL=index.js.map
@@ -1,9 +1,9 @@
1
1
  import { Utils } from '@rpgjs/common';
2
- import { ParameterManager } from './ParameterManager';
3
- import { ATK, PDEF, SDEF } from '../presets';
2
+ import { ParameterManager } from './ParameterManager.js';
3
+ import { ATK, PDEF, SDEF } from '../presets/index.js';
4
4
  import { Effect } from '@rpgjs/database';
5
- import { ElementManager } from './ElementManager';
6
- import { EffectManager } from './EffectManager';
5
+ import { ElementManager } from './ElementManager.js';
6
+ import { EffectManager } from './EffectManager.js';
7
7
  const { applyMixins } = Utils;
8
8
  export class BattleManager {
9
9
  /**
@@ -1,6 +1,6 @@
1
1
  import { Utils } from '@rpgjs/common';
2
- import { ParameterManager } from './ParameterManager';
3
- import { ItemManager } from './ItemManager';
2
+ import { ParameterManager } from './ParameterManager.js';
3
+ import { ItemManager } from './ItemManager.js';
4
4
  const { applyMixins } = Utils;
5
5
  export class ClassManager {
6
6
  /**
@@ -1,6 +1,6 @@
1
1
  import { Utils } from '@rpgjs/common';
2
- import { ParameterManager } from './ParameterManager';
3
- import { MAXHP, } from '../presets';
2
+ import { ParameterManager } from './ParameterManager.js';
3
+ import { MAXHP, } from '../presets/index.js';
4
4
  const { arrayUniq, arrayFlat, applyMixins } = Utils;
5
5
  export class EffectManager {
6
6
  // TODO
@@ -1,5 +1,5 @@
1
1
  import { Utils } from '@rpgjs/common';
2
- import { ItemFixture } from './ItemFixture';
2
+ import { ItemFixture } from './ItemFixture.js';
3
3
  const { arrayUniq, applyMixins } = Utils;
4
4
  export class ElementManager extends ItemFixture {
5
5
  /**
@@ -1,5 +1,5 @@
1
1
  import { Utils } from '@rpgjs/common';
2
- import { Gui, DialogGui, MenuGui, ShopGui, NotificationGui } from '../Gui';
2
+ import { Gui, DialogGui, MenuGui, ShopGui, NotificationGui } from '../Gui/index.js';
3
3
  export class GuiManager {
4
4
  /**
5
5
  * Show a text. This is a graphical interface already built. Opens the GUI named `rpg-dialog`
@@ -1,10 +1,10 @@
1
1
  import { Utils } from '@rpgjs/common';
2
2
  import { Effect } from '@rpgjs/database';
3
- import { ItemLog } from '../logs';
4
- import { EffectManager } from './EffectManager';
5
- import { GoldManager } from './GoldManager';
6
- import { StateManager } from './StateManager';
7
- import { ATK, PDEF, SDEF } from '../presets';
3
+ import { ItemLog } from '../logs/index.js';
4
+ import { EffectManager } from './EffectManager.js';
5
+ import { GoldManager } from './GoldManager.js';
6
+ import { StateManager } from './StateManager.js';
7
+ import { ATK, PDEF, SDEF } from '../presets/index.js';
8
8
  const { isString, isInstanceOf, applyMixins } = Utils;
9
9
  export class ItemManager {
10
10
  constructor() {
@@ -1,5 +1,5 @@
1
1
  import { Utils } from '@rpgjs/common';
2
- import { MAXHP, MAXSP, } from '../presets';
2
+ import { MAXHP, MAXSP, } from '../presets/index.js';
3
3
  const { isString } = Utils;
4
4
  export class ParameterManager {
5
5
  constructor() {
@@ -1,22 +1,22 @@
1
1
  import { RpgCommonPlayer, Utils, RpgPlugin, RpgCommonMap, Direction } from '@rpgjs/common';
2
2
  import { Room } from 'simple-room';
3
- import { Query } from '../Query';
3
+ import { Query } from '../Query.js';
4
4
  import merge from 'lodash.merge';
5
- import { ItemManager } from './ItemManager';
6
- import { GoldManager } from './GoldManager';
7
- import { StateManager } from './StateManager';
8
- import { SkillManager } from './SkillManager';
9
- import { ParameterManager } from './ParameterManager';
10
- import { EffectManager } from './EffectManager';
11
- import { ClassManager } from './ClassManager';
12
- import { ElementManager } from './ElementManager';
13
- import { GuiManager } from './GuiManager';
14
- import { VariableManager } from './VariableManager';
15
- import { Frequency, MoveManager, Speed } from './MoveManager';
16
- import { BattleManager } from './BattleManager';
17
- import { MAXHP, MAXSP, STR, INT, DEX, AGI, MAXHP_CURVE, MAXSP_CURVE, STR_CURVE, INT_CURVE, DEX_CURVE, AGI_CURVE } from '../presets';
5
+ import { ItemManager } from './ItemManager.js';
6
+ import { GoldManager } from './GoldManager.js';
7
+ import { StateManager } from './StateManager.js';
8
+ import { SkillManager } from './SkillManager.js';
9
+ import { ParameterManager } from './ParameterManager.js';
10
+ import { EffectManager } from './EffectManager.js';
11
+ import { ClassManager } from './ClassManager.js';
12
+ import { ElementManager } from './ElementManager.js';
13
+ import { GuiManager } from './GuiManager.js';
14
+ import { VariableManager } from './VariableManager.js';
15
+ import { Frequency, MoveManager, Speed } from './MoveManager.js';
16
+ import { BattleManager } from './BattleManager.js';
17
+ import { MAXHP, MAXSP, STR, INT, DEX, AGI, MAXHP_CURVE, MAXSP_CURVE, STR_CURVE, INT_CURVE, DEX_CURVE, AGI_CURVE } from '../presets/index.js';
18
18
  import { SocketEvents, SocketMethods } from '@rpgjs/types';
19
- import { ComponentManager } from './ComponentManager';
19
+ import { ComponentManager } from './ComponentManager.js';
20
20
  const { isPromise, applyMixins, isString } = Utils;
21
21
  const itemSchemas = {
22
22
  name: String,
@@ -1,10 +1,10 @@
1
1
  import { Utils } from '@rpgjs/common';
2
2
  import { Effect } from '@rpgjs/database';
3
- import { SkillLog } from '../logs';
4
- import { StateManager } from './StateManager';
5
- import { EffectManager } from './EffectManager';
6
- import { ParameterManager } from './ParameterManager';
7
- import { INT } from '../presets';
3
+ import { SkillLog } from '../logs/index.js';
4
+ import { StateManager } from './StateManager.js';
5
+ import { EffectManager } from './EffectManager.js';
6
+ import { ParameterManager } from './ParameterManager.js';
7
+ import { INT } from '../presets/index.js';
8
8
  const { isArray, isString, isInstanceOf, applyMixins } = Utils;
9
9
  export class SkillManager {
10
10
  _getSkillIndex(skillClass) {
@@ -1,6 +1,6 @@
1
1
  import { Utils } from '@rpgjs/common';
2
- import { ItemFixture } from './ItemFixture';
3
- import { StateLog } from '../logs/state';
2
+ import { ItemFixture } from './ItemFixture.js';
3
+ import { StateLog } from '../logs/state.js';
4
4
  const { isInstanceOf, applyMixins } = Utils;
5
5
  export class StateManager {
6
6
  constructor() {
package/lib/Scenes/Map.js CHANGED
@@ -7,10 +7,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { HookServer, RpgCommonMap, RpgPlugin, Utils } from '@rpgjs/common';
8
8
  import { World } from 'simple-room';
9
9
  import { isTiledFormat } from '@rpgjs/tiled';
10
- import { MapData } from '../decorators/map';
11
- import { RpgMap } from '../Game/Map';
12
- import { RpgWorldMaps } from '../Game/WorldMaps';
13
- import { RpgPlayer } from '../Player/Player';
10
+ import { MapData } from '../decorators/map.js';
11
+ import { RpgMap } from '../Game/Map.js';
12
+ import { RpgWorldMaps } from '../Game/WorldMaps.js';
13
+ import { RpgPlayer } from '../Player/Player.js';
14
14
  class SceneMap {
15
15
  constructor(sceneMapObject, server) {
16
16
  this.server = server;
@@ -1,4 +1,4 @@
1
- import { EventMode } from '../Player/Player';
1
+ import { EventMode } from '../Player/Player.js';
2
2
  export function EventData(options) {
3
3
  return (target) => {
4
4
  target.mode = options.mode || EventMode.Shared;
@@ -1,4 +1,4 @@
1
- import { componentSchema, RpgPlayer } from '../Player/Player';
1
+ import { componentSchema, RpgPlayer } from '../Player/Player.js';
2
2
  export function MapData(options) {
3
3
  return (target) => {
4
4
  target.file = options.file;
@@ -1,6 +1,6 @@
1
1
  import { RpgCommonGame, HookServer, loadModules, GameSide, RpgPlugin } from '@rpgjs/common';
2
- import { RpgServerEngine } from './server';
3
- import { RpgMatchMaker } from './MatchMaker';
2
+ import { RpgServerEngine } from './server.js';
3
+ import { RpgMatchMaker } from './MatchMaker.js';
4
4
  export default async function (modules, options) {
5
5
  const gameEngine = new RpgCommonGame(GameSide.Server);
6
6
  if (!options.globalConfig)
@@ -1,7 +1,7 @@
1
1
  import { Router } from 'express';
2
- import { Query } from '../Query';
3
- import { NotAuthorized } from './errors/NotAuthorized';
4
- import { NotFound } from './errors/NotFound';
2
+ import { Query } from '../Query.js';
3
+ import { NotAuthorized } from './errors/NotAuthorized.js';
4
+ import { NotFound } from './errors/NotFound.js';
5
5
  export function api(rpgServer) {
6
6
  const router = new Router();
7
7
  router.use((req, res, next) => {
@@ -2,10 +2,10 @@ import http from 'http';
2
2
  import path from 'path';
3
3
  import express from 'express';
4
4
  import { Server } from 'socket.io';
5
- import entryPoint from '../entry-point';
5
+ import entryPoint from '../entry-point.js';
6
6
  import PrettyError from 'pretty-error';
7
- import { api } from './api';
8
- import { Query } from '../Query';
7
+ import { api } from './api.js';
8
+ import { Query } from '../Query.js';
9
9
  export function expressServer(modules, options) {
10
10
  return new Promise((resolve, reject) => {
11
11
  const dirname = options.basePath;
package/lib/index.js CHANGED
@@ -1,16 +1,16 @@
1
- export { default as entryPoint } from './entry-point';
1
+ export { default as entryPoint } from './entry-point.js';
2
2
  export { Direction, Input, Control, RpgPlugin, HookServer, HookClient, RpgModule, RpgShape, ShapePositioning, AbstractObject } from '@rpgjs/common';
3
- export { EventData } from './decorators/event';
4
- export { MapData } from './decorators/map';
5
- export { RpgPlayer, RpgEvent, EventMode } from './Player/Player';
6
- export { RpgMap } from './Game/Map';
7
- export { RpgWorldMaps } from './Game/WorldMaps';
8
- export { Query, Query as RpgWorld } from './Query';
9
- export { default as Monitor } from './Monitor';
10
- export * as Presets from './presets';
11
- export { Move, Frequency, Speed } from './Player/MoveManager';
12
- export { RpgServerEngine } from './server';
13
- export { SceneMap as RpgSceneMap } from './Scenes/Map';
14
- export { RpgMatchMaker } from './MatchMaker';
15
- export { Components } from './Player/ComponentManager';
3
+ export { EventData } from './decorators/event.js';
4
+ export { MapData } from './decorators/map.js';
5
+ export { RpgPlayer, RpgEvent, EventMode } from './Player/Player.js';
6
+ export { RpgMap } from './Game/Map.js';
7
+ export { RpgWorldMaps } from './Game/WorldMaps.js';
8
+ export { Query, Query as RpgWorld } from './Query.js';
9
+ export { default as Monitor } from './Monitor/index.js';
10
+ export * as Presets from './presets/index.js';
11
+ export { Move, Frequency, Speed } from './Player/MoveManager.js';
12
+ export { RpgServerEngine } from './server.js';
13
+ export { SceneMap as RpgSceneMap } from './Scenes/Map.js';
14
+ export { RpgMatchMaker } from './MatchMaker.js';
15
+ export { Components } from './Player/ComponentManager.js';
16
16
  //# sourceMappingURL=index.js.map
package/lib/logs/index.js CHANGED
@@ -1,6 +1,6 @@
1
- import { ItemLog } from './item';
2
- import { SkillLog } from './skill';
3
- import { StateLog } from './state';
4
- import { Log } from './log';
1
+ import { ItemLog } from './item.js';
2
+ import { SkillLog } from './skill.js';
3
+ import { StateLog } from './state.js';
4
+ import { Log } from './log.js';
5
5
  export { ItemLog, SkillLog, StateLog, Log };
6
6
  //# sourceMappingURL=index.js.map
package/lib/logs/item.js CHANGED
@@ -1,4 +1,4 @@
1
- import { Log } from './log';
1
+ import { Log } from './log.js';
2
2
  export class ItemLog {
3
3
  static notInInventory(itemClass) {
4
4
  return new Log('ITEM_NOT_INVENTORY', `The item ${itemClass.name} is not in inventory`);
package/lib/logs/skill.js CHANGED
@@ -1,4 +1,4 @@
1
- import { Log } from './log';
1
+ import { Log } from './log.js';
2
2
  export class SkillLog {
3
3
  static notLearned(skillClass) {
4
4
  return new Log('SKILL_NOT_LEARNED', `the skill ${skillClass.name} is not learned`);
package/lib/logs/state.js CHANGED
@@ -1,4 +1,4 @@
1
- import { Log } from './log';
1
+ import { Log } from './log.js';
2
2
  export class StateLog {
3
3
  static addFailed(stateClass) {
4
4
  return new Log('ADD_STATE_FAILED', `Adding the ${stateClass.name} state has failed`);
package/lib/server.js CHANGED
@@ -4,10 +4,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { SceneMap } from './Scenes/Map';
8
- import { RpgPlayer } from './Player/Player';
9
- import { Query } from './Query';
10
- import { DAMAGE_SKILL, DAMAGE_PHYSIC, DAMAGE_CRITICAL, COEFFICIENT_ELEMENTS } from './presets';
7
+ import { SceneMap } from './Scenes/Map.js';
8
+ import { RpgPlayer } from './Player/Player.js';
9
+ import { Query } from './Query.js';
10
+ import { DAMAGE_SKILL, DAMAGE_PHYSIC, DAMAGE_CRITICAL, COEFFICIENT_ELEMENTS } from './presets/index.js';
11
11
  import { World } from 'simple-room';
12
12
  import { Utils, RpgPlugin, Scheduler, HookServer, DefaultInput } from '@rpgjs/common';
13
13
  import { Actor, Armor, Class, Item, Skill, State, Weapon } from '@rpgjs/database';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rpgjs/server",
3
- "version": "4.0.0-beta.1",
3
+ "version": "4.0.0-beta.4",
4
4
  "description": "",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/express/index.d.ts",
@@ -15,17 +15,14 @@
15
15
  ".": "./lib/index.js",
16
16
  "./express": "./lib/express/server.js"
17
17
  },
18
- "files": [
19
- "lib"
20
- ],
21
18
  "keywords": [],
22
19
  "author": "Samuel Ronce",
23
20
  "license": "MIT",
24
21
  "dependencies": {
25
- "@rpgjs/common": "^4.0.0-beta.1",
26
- "@rpgjs/database": "^4.0.0-beta.1",
27
- "@rpgjs/tiled": "^4.0.0-beta.1",
28
- "@rpgjs/types": "^4.0.0-beta.1",
22
+ "@rpgjs/common": "^4.0.0-beta.4",
23
+ "@rpgjs/database": "^4.0.0-beta.4",
24
+ "@rpgjs/tiled": "^4.0.0-beta.4",
25
+ "@rpgjs/types": "^4.0.0-beta.4",
29
26
  "axios": "^1.3.6",
30
27
  "express": "^4.18.2",
31
28
  "lodash.merge": "^4.6.2",
@@ -36,11 +33,12 @@
36
33
  "simple-room": "^2.0.2",
37
34
  "socket.io": "^4.6.1"
38
35
  },
39
- "gitHead": "b12826ef87716da2691da3bae02d7d7c66772789",
36
+ "gitHead": "20c8697cc462bf2a1811bc0ff288dc421f8234f3",
40
37
  "devDependencies": {
41
38
  "typescript": "^5.0.4"
42
39
  },
43
40
  "alias": {
44
41
  "express": "./lib/express/server"
45
- }
42
+ },
43
+ "type": "module"
46
44
  }