quake2ts 0.0.467 → 0.0.469
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/package.json +1 -1
- package/packages/client/dist/browser/index.global.js +16 -16
- package/packages/client/dist/browser/index.global.js.map +1 -1
- package/packages/client/dist/cjs/index.cjs +206 -3
- package/packages/client/dist/cjs/index.cjs.map +1 -1
- package/packages/client/dist/esm/index.js +205 -3
- package/packages/client/dist/esm/index.js.map +1 -1
- package/packages/client/dist/tsconfig.tsbuildinfo +1 -1
- package/packages/client/dist/types/index.d.ts +13 -1
- package/packages/client/dist/types/index.d.ts.map +1 -1
- package/packages/client/dist/types/scoreboard.d.ts +31 -0
- package/packages/client/dist/types/scoreboard.d.ts.map +1 -0
- package/packages/client/dist/types/session.d.ts +15 -2
- package/packages/client/dist/types/session.d.ts.map +1 -1
|
@@ -8,20 +8,25 @@ import { ClientConfigStrings } from './configStrings.js';
|
|
|
8
8
|
import { MainMenuFactory, MainMenuOptions } from './ui/menu/main.js';
|
|
9
9
|
import { MenuSystem } from './ui/menu/system.js';
|
|
10
10
|
import { SaveStorage } from '@quake2ts/game';
|
|
11
|
+
import { InputBindings } from './input/bindings.js';
|
|
11
12
|
import { LoadingScreen } from './ui/loading/screen.js';
|
|
12
13
|
import { ErrorDialog } from './ui/error.js';
|
|
13
14
|
import { MultiplayerConnection } from './net/connection.js';
|
|
14
15
|
import { DynamicLightManager } from '@quake2ts/engine';
|
|
15
16
|
import { DemoCameraMode } from './demo/camera.js';
|
|
17
|
+
import { ScoreboardData } from './scoreboard.js';
|
|
16
18
|
import { HudData, StatusBarData, CrosshairInfo } from './hud/data.js';
|
|
17
19
|
export { createDefaultBindings, InputBindings, normalizeCommand, normalizeInputCode } from './input/bindings.js';
|
|
18
|
-
|
|
20
|
+
import { InputController, InputSource } from './input/controller.js';
|
|
21
|
+
export { GamepadLike, GamepadLikeButton, InputAction, InputController, InputSource, TouchInputState, type InputControllerOptions, } from './input/controller.js';
|
|
19
22
|
export { InputCommandBuffer, type QueuedFrameCommands, } from './input/command-buffer.js';
|
|
20
23
|
export { ClientPrediction, interpolatePredictionState, } from '@quake2ts/cgame';
|
|
21
24
|
export type { PredictionSettings, PredictionState } from '@quake2ts/cgame';
|
|
22
25
|
export { ViewEffects } from '@quake2ts/cgame';
|
|
23
26
|
export type { ViewEffectSettings, ViewKick, ViewSample } from '@quake2ts/cgame';
|
|
24
27
|
export { ClientConfigStrings } from './configStrings.js';
|
|
28
|
+
export * from './scoreboard.js';
|
|
29
|
+
export { HudData, StatusBarData, CrosshairInfo } from './hud/data.js';
|
|
25
30
|
export * from './session.js';
|
|
26
31
|
export * from './demo/camera.js';
|
|
27
32
|
export interface ClientImports {
|
|
@@ -32,6 +37,7 @@ export interface ClientImports {
|
|
|
32
37
|
};
|
|
33
38
|
};
|
|
34
39
|
readonly host?: EngineHost;
|
|
40
|
+
readonly inputController?: InputController;
|
|
35
41
|
}
|
|
36
42
|
export declare enum ClientMode {
|
|
37
43
|
Normal = 0,
|
|
@@ -71,12 +77,18 @@ export interface ClientExports extends ClientRenderer<PredictionState> {
|
|
|
71
77
|
};
|
|
72
78
|
handleInput(key: string, down: boolean): boolean;
|
|
73
79
|
toggleMenu(): void;
|
|
80
|
+
bindInputSource(source: InputSource): void;
|
|
81
|
+
setKeyBinding(action: string, keys: string[]): void;
|
|
82
|
+
getDefaultBindings(): InputBindings;
|
|
83
|
+
onInputCommand?: (cmd: UserCommand) => void;
|
|
74
84
|
Init(initial?: GameFrameResult<PredictionState>): void;
|
|
75
85
|
Shutdown(): void;
|
|
76
86
|
DrawHUD(stats: FrameRenderStats, timeMs: number): void;
|
|
77
87
|
readonly loadingScreen: LoadingScreen;
|
|
78
88
|
readonly errorDialog: ErrorDialog;
|
|
79
89
|
readonly dlightManager: DynamicLightManager;
|
|
90
|
+
getScoreboard(): ScoreboardData;
|
|
91
|
+
onScoreboardUpdate?: (scoreboard: ScoreboardData) => void;
|
|
80
92
|
getHudData(): HudData | null;
|
|
81
93
|
getStatusBar(): StatusBarData | null;
|
|
82
94
|
getCrosshairInfo(): CrosshairInfo;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,cAAc,EACd,aAAa,EACb,eAAe,EAEf,MAAM,EACN,QAAQ,EACR,sBAAsB,EAEtB,UAAU,EAEX,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { ClientConfigStrings } from './configStrings.js';
|
|
2
|
+
export interface ScoreboardEntry {
|
|
3
|
+
name: string;
|
|
4
|
+
frags: number;
|
|
5
|
+
deaths: number;
|
|
6
|
+
ping: number;
|
|
7
|
+
id: number;
|
|
8
|
+
skin?: string;
|
|
9
|
+
model?: string;
|
|
10
|
+
}
|
|
11
|
+
export interface ScoreboardData {
|
|
12
|
+
players: ScoreboardEntry[];
|
|
13
|
+
mapName: string;
|
|
14
|
+
}
|
|
15
|
+
export declare class ScoreboardManager {
|
|
16
|
+
private configStrings;
|
|
17
|
+
private localPlayerId;
|
|
18
|
+
private listeners;
|
|
19
|
+
private players;
|
|
20
|
+
constructor(configStrings: ClientConfigStrings);
|
|
21
|
+
setLocalPlayerId(id: number): void;
|
|
22
|
+
addListener(listener: (data: ScoreboardData) => void): void;
|
|
23
|
+
removeListener(listener: (data: ScoreboardData) => void): void;
|
|
24
|
+
notifyUpdate(): void;
|
|
25
|
+
private refreshAll;
|
|
26
|
+
parseConfigString(index: number, str: string): void;
|
|
27
|
+
getScoreboard(): ScoreboardData;
|
|
28
|
+
private parsePlayerConfigString;
|
|
29
|
+
updateScore(id: number, frags: number, deaths: number, ping: number): void;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=scoreboard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scoreboard.d.ts","sourceRoot":"","sources":["../../src/scoreboard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAEzD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,aAAa,CAAsB;IAC3C,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,SAAS,CAA0C;IAG3D,OAAO,CAAC,OAAO,CAA2C;gBAE9C,aAAa,EAAE,mBAAmB;IAKvC,gBAAgB,CAAC,EAAE,EAAE,MAAM;IAI3B,WAAW,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI;IAIpD,cAAc,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI;IAOvD,YAAY;IAOnB,OAAO,CAAC,UAAU;IAWX,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IA2B5C,aAAa,IAAI,cAAc;IAyBtC,OAAO,CAAC,uBAAuB;IAmCxB,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM;CAS3E"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ClientExports } from './index.js';
|
|
1
|
+
import { ClientExports, InputSource, InputBindings, HudData, StatusBarData, CrosshairInfo } from './index.js';
|
|
2
2
|
import { GameExports, GameSaveFile } from '@quake2ts/game';
|
|
3
3
|
import { EngineImports, Renderer, EngineHost } from '@quake2ts/engine';
|
|
4
|
-
import { PlayerState } from '@quake2ts/shared';
|
|
4
|
+
import { UserCommand, PlayerState } from '@quake2ts/shared';
|
|
5
5
|
export interface SessionOptions {
|
|
6
6
|
mapName?: string;
|
|
7
7
|
skill?: number;
|
|
@@ -21,6 +21,9 @@ export declare class GameSession {
|
|
|
21
21
|
private host;
|
|
22
22
|
private options;
|
|
23
23
|
private currentMapName;
|
|
24
|
+
private inputController;
|
|
25
|
+
private _onInputCommand?;
|
|
26
|
+
private _onHudUpdate?;
|
|
24
27
|
constructor(options: SessionOptions);
|
|
25
28
|
startNewGame(mapName: string, skill?: number): void;
|
|
26
29
|
loadSavedGame(saveData: GameSaveFile): void;
|
|
@@ -28,6 +31,16 @@ export declare class GameSession {
|
|
|
28
31
|
getClient(): ClientExports | null;
|
|
29
32
|
getGame(): GameExports | null;
|
|
30
33
|
getHost(): EngineHost | null;
|
|
34
|
+
bindInputSource(source: InputSource): void;
|
|
35
|
+
setKeyBinding(action: string, keys: string[]): void;
|
|
36
|
+
getDefaultBindings(): InputBindings;
|
|
37
|
+
set onInputCommand(handler: ((cmd: UserCommand) => void) | undefined);
|
|
38
|
+
get onInputCommand(): ((cmd: UserCommand) => void) | undefined;
|
|
39
|
+
getHudData(): HudData | null;
|
|
40
|
+
getStatusBar(): StatusBarData | null;
|
|
41
|
+
getCrosshairInfo(): CrosshairInfo | null;
|
|
42
|
+
set onHudUpdate(handler: ((data: HudData) => void) | undefined);
|
|
43
|
+
get onHudUpdate(): ((data: HudData) => void) | undefined;
|
|
31
44
|
getPlayerState(): PlayerState | null;
|
|
32
45
|
getGameTime(): number;
|
|
33
46
|
isPaused(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgD,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC5J,OAAO,EAAc,WAAW,EAAE,YAAY,EAAiC,MAAM,gBAAgB,CAAC;AACtG,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,UAAU,EAAe,MAAM,kBAAkB,CAAC;AACpF,OAAO,EAAE,WAAW,EAAwB,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAElF,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,MAAM,EAAE,aAAa,GAAG;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,GAAG,CAAC,EAAE;YAAE,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,CAAA;KAAE,CAAC;CAC3F;AAED,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAA8B;IAC5C,OAAO,CAAC,IAAI,CAA4B;IACxC,OAAO,CAAC,MAAM,CAAoF;IAClG,OAAO,CAAC,IAAI,CAA2B;IACvC,OAAO,CAAC,OAAO,CAAiB;IAChC,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,eAAe,CAAC,CAA6B;IACrD,OAAO,CAAC,YAAY,CAAC,CAA0B;gBAEnC,OAAO,EAAE,cAAc;IAM5B,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IAwHtD,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI;IAmH3C,QAAQ,IAAI,IAAI;IAYhB,SAAS,IAAI,aAAa,GAAG,IAAI;IAIjC,OAAO,IAAI,WAAW,GAAG,IAAI;IAI7B,OAAO,IAAI,UAAU,GAAG,IAAI;IAI5B,eAAe,CAAC,MAAM,EAAE,WAAW,GAAG,IAAI;IAI1C,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI;IAInD,kBAAkB,IAAI,aAAa;IAI1C,IAAW,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,WAAW,KAAK,IAAI,CAAC,GAAG,SAAS,EAK1E;IAED,IAAW,cAAc,IAAI,CAAC,CAAC,GAAG,EAAE,WAAW,KAAK,IAAI,CAAC,GAAG,SAAS,CAEpE;IAGM,UAAU,IAAI,OAAO,GAAG,IAAI;IAI5B,YAAY,IAAI,aAAa,GAAG,IAAI;IAIpC,gBAAgB,IAAI,aAAa,GAAG,IAAI;IAI/C,IAAW,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,EAKpE;IAED,IAAW,WAAW,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,SAAS,CAE9D;IAIM,cAAc,IAAI,WAAW,GAAG,IAAI;IASpC,WAAW,IAAI,MAAM;IAgBrB,QAAQ,IAAI,OAAO;IAOnB,aAAa,IAAI,MAAM;IAOvB,UAAU,IAAI,MAAM;IAQpB,WAAW,IAAI,QAAQ,GAAG,YAAY,GAAG,MAAM;CAOvD;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,WAAW,CAElE"}
|