@wwawing/engine 3.12.24 → 3.12.28

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/lib/wwa_data.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import { WWA } from "./wwa_main";
2
2
  import { Camera } from "./wwa_camera";
3
- import { type WWAData } from "@wwawing/common-interface";
3
+ import { type WWAData, type FrameRateDisplayingPattern } from "@wwawing/common-interface";
4
4
  import type { JsonResponseErrorKind } from "./json_api_client";
5
- export { type WWAData };
5
+ export { type WWAData, type FrameRateDisplayingPattern };
6
6
  export declare class EquipmentStatus {
7
7
  strength: number;
8
8
  defence: number;
@@ -348,6 +348,8 @@ export declare const StatusKind: readonly ["energy", "strength", "defence", "gol
348
348
  export type StatusKind = typeof StatusKind[number];
349
349
  export declare class WWAConsts {
350
350
  static WWA_HOME: string;
351
+ static TARGET_FPS: number;
352
+ static INTERVAL_MS: number;
351
353
  static ITEMBOX_SIZE: number;
352
354
  static MAP_ATR_MAX: number;
353
355
  static OBJ_ATR_MAX: number;
@@ -427,6 +429,7 @@ export declare class WWAConsts {
427
429
  static QUICK_BATTLE_SPEED_INDECIES: number[];
428
430
  static ANIMATION_REP_HALF_FRAME: number;
429
431
  static PLAYER_LOOKING_AROUND_START_FRAME: number;
432
+ static PLAYER_LOOKING_AROUND_LOOP_INTERVAL_FRAME: number;
430
433
  static RELATIVE_COORD_BIAS: number;
431
434
  static RELATIVE_COORD_LOWER: number;
432
435
  static PLAYER_COORD: number;
@@ -22,6 +22,7 @@ export declare enum KeyCode {
22
22
  KEY_C = 67,
23
23
  KEY_D = 68,
24
24
  KEY_E = 69,
25
+ KEY_F = 70,
25
26
  KEY_I = 73,
26
27
  KEY_M = 77,
27
28
  KEY_N = 78,
package/lib/wwa_main.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { SystemMessage } from "@wwawing/common-interface";
2
- import { Coord, Position, LoaderProgress, LoadStage, YesNoState, Face, SidebarButton, SpeedChange, PartsType, AppearanceTriggerType, EquipmentStatus, ChangeStyleType, MacroStatusIndex, UserDevice, MacroImgFrameIndex, StatusKind, StatusSolutionKind, ScoreOptions, TriggerParts } from "./wwa_data";
2
+ import { Coord, Position, LoaderProgress, LoadStage, YesNoState, Face, SidebarButton, SpeedChange, PartsType, AppearanceTriggerType, EquipmentStatus, ChangeStyleType, MacroStatusIndex, UserDevice, MacroImgFrameIndex, StatusKind, StatusSolutionKind, ScoreOptions, TriggerParts, type FrameRateDisplayingPattern } from "./wwa_data";
3
3
  import { MessageWindow, Page } from "./wwa_message";
4
4
  import { ItemMenu } from "./wwa_item_menu";
5
5
  import { WWACompress } from "./wwa_save";
@@ -31,6 +31,7 @@ export declare class WWA {
31
31
  private _objectMovingDataManager;
32
32
  _messageWindow: MessageWindow;
33
33
  private _monsterWindow;
34
+ private _gameFrameRateWindow;
34
35
  private _scoreWindow;
35
36
  private _pages;
36
37
  private _yesNoJudge;
@@ -88,6 +89,7 @@ export declare class WWA {
88
89
  private _mapObjectIDTable;
89
90
  wwaCustomEventEmitter: IEventEmitter;
90
91
  private _lastScoreOptions?;
92
+ private _frameRateDisplayingPattern;
91
93
  debug: boolean;
92
94
  private hoge;
93
95
  private _loadHandler;
@@ -98,7 +100,7 @@ export declare class WWA {
98
100
  private soundLoadedCheckTimer;
99
101
  private _playTimeCalculator;
100
102
  private _dumpElement;
101
- constructor(mapFileName: string, urlgateEnabled: boolean, titleImgName: string, classicModeEnabled: boolean, itemEffectEnabled: boolean, useGoToWWA: boolean, audioDirectory: string, disallowLoadOldSave: boolean, dumpElm: HTMLElement, userVarNamesFile: string | null, canDisplayUserVars: boolean, enableVirtualPad?: boolean, virtualpadControllerElm?: HTMLElement);
103
+ constructor(mapFileName: string, urlgateEnabled: boolean, titleImgName: string, classicModeEnabled: boolean, itemEffectEnabled: boolean, useGoToWWA: boolean, audioDirectory: string, disallowLoadOldSave: boolean, dumpElm: HTMLElement, userVarNamesFile: string | null, canDisplayUserVars: boolean, enableVirtualPad?: boolean, virtualpadControllerElm?: HTMLElement, frameRateDisplayingPattern?: FrameRateDisplayingPattern);
102
104
  private convertUserVariableNameListToArray;
103
105
  private _setProgressBar;
104
106
  private _setLoadingMessage;
@@ -110,7 +112,11 @@ export declare class WWA {
110
112
  private _clearSoundLoadedCheckTimer;
111
113
  playSound(id: number, bgmDelayDurationMs?: number): void;
112
114
  openGameWindow(): void;
113
- mainCaller: () => void;
115
+ private _prevTimeStamp;
116
+ private _accumlatedTimeMs;
117
+ private _samplingTimeMs;
118
+ private _frameCountForMeasureFps;
119
+ mainCaller: (now: DOMHighResTimeStamp) => void;
114
120
  soundCheckCaller: () => void;
115
121
  onselectitem(itemPos: number): boolean;
116
122
  onselectbutton(button: SidebarButton, forcePassword?: boolean, forceGoToWWA?: boolean): void;
@@ -239,3 +239,19 @@ export declare class MessageWindow {
239
239
  saveControll(moveDir: Direction): void;
240
240
  protected get windowName(): string;
241
241
  }
242
+ export declare class GameFrameRateWindow {
243
+ private element;
244
+ private currentFpsIndicatorElement;
245
+ private separatorElement;
246
+ private targetFpsIndicatorElement;
247
+ private closeButtonElement;
248
+ private unitElement;
249
+ constructor(parentElement: HTMLElement, classicModeEnabled: boolean, closeButtonClickHandler?: () => void);
250
+ updateCurrentFps(fps: number): void;
251
+ updateTargetFps(fps: number): void;
252
+ reset(): void;
253
+ show(): void;
254
+ hide(): void;
255
+ toggleVisibility(): void;
256
+ private static formatFps;
257
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wwawing/engine",
3
- "version": "3.12.24",
3
+ "version": "3.12.28",
4
4
  "description": "World Wide Adventure: an RPG Engine.",
5
5
  "main": "./lib/wwa.js",
6
6
  "files": [
@@ -49,21 +49,21 @@
49
49
  "@types/pug": "^2.0.6",
50
50
  "@types/terser-webpack-plugin": "^5.2.0",
51
51
  "@types/webpack": "^5.28.0",
52
- "@wwawing/assets": "^3.12.24",
53
- "@wwawing/common-interface": "^3.12.24",
54
- "@wwawing/debug-server": "^3.12.24",
55
- "@wwawing/event-emitter": "^3.12.24",
56
- "@wwawing/loader": "^3.12.24",
57
- "@wwawing/page-generator": "^3.12.24",
58
- "@wwawing/styles": "^3.12.24",
59
- "@wwawing/virtual-pad": "^3.12.24",
52
+ "@wwawing/assets": "^3.12.28",
53
+ "@wwawing/common-interface": "^3.12.28",
54
+ "@wwawing/debug-server": "^3.12.28",
55
+ "@wwawing/event-emitter": "^3.12.28",
56
+ "@wwawing/loader": "^3.12.28",
57
+ "@wwawing/page-generator": "^3.12.28",
58
+ "@wwawing/styles": "^3.12.28",
59
+ "@wwawing/virtual-pad": "^3.12.28",
60
60
  "crypto-js": "^4.1.1",
61
- "jest": "^29.5.0",
62
- "jest-cli": "^29.5.0",
63
- "jest-environment-jsdom": "^29.5.0",
61
+ "jest": "^30.3.0",
62
+ "jest-cli": "^30.3.0",
63
+ "jest-environment-jsdom": "^30.3.0",
64
64
  "npm-run-all2": "^8.0.1",
65
65
  "pug": "^3.0.2",
66
- "shelljs": "^0.9.2",
66
+ "shelljs": "^0.10.0",
67
67
  "shx": "^0.4.0",
68
68
  "terser-webpack-plugin": "^5.3.9",
69
69
  "ts-loader": "^9.5.2",
@@ -79,5 +79,5 @@
79
79
  "node": ">=24",
80
80
  "npm": ">=11"
81
81
  },
82
- "gitHead": "4449e33dcfb570462bb7f8be47913317311027a9"
82
+ "gitHead": "e9fc7305e0909e845f9d3f8fed93180d7d900b13"
83
83
  }