quake2ts 0.0.607 → 0.0.608
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 +3 -3
- package/packages/test-utils/dist/index.cjs +82 -0
- package/packages/test-utils/dist/index.cjs.map +1 -1
- package/packages/test-utils/dist/index.d.cts +28 -3
- package/packages/test-utils/dist/index.d.ts +28 -3
- package/packages/test-utils/dist/index.js +78 -0
- package/packages/test-utils/dist/index.js.map +1 -1
|
@@ -4,9 +4,9 @@ import { Vec3, CollisionPlane, CollisionBrush, CollisionNode, CollisionLeaf, Col
|
|
|
4
4
|
export { intersects, ladderTrace, stairTrace } from '@quake2ts/shared';
|
|
5
5
|
import { Vec3 as Vec3$1, Bounds3 } from '@quake2ts/shared/math/vec3';
|
|
6
6
|
import { TraceResult, CollisionPlane as CollisionPlane$1 } from '@quake2ts/shared/bsp/collision';
|
|
7
|
-
import { ConfigStringEntry, Cvar, AudioNodeLike, AudioBufferSourceNodeLike, AudioBufferLike, AudioParamLike, GainNodeLike, DynamicsCompressorNodeLike, PannerNodeLike, BiquadFilterNodeLike, AudioDestinationNodeLike, AudioContextLike, Camera } from '@quake2ts/engine';
|
|
7
|
+
import { ConfigStringEntry, Cvar, AudioNodeLike, AudioBufferSourceNodeLike, AudioBufferLike, AudioParamLike, GainNodeLike, DynamicsCompressorNodeLike, PannerNodeLike, BiquadFilterNodeLike, AudioDestinationNodeLike, AudioContextLike, Camera, FrameRenderStats } from '@quake2ts/engine';
|
|
8
8
|
export { ConfigStringEntry, Cvar } from '@quake2ts/engine';
|
|
9
|
-
import { GameStateSnapshot, Entity, ScriptHookRegistry, SpawnContext, EntitySystem, SpawnRegistry, MonsterMove, DamageMod, PlayerInventory, BaseItem, WeaponId, WeaponItem, HealthItem, ArmorItem, AmmoItemId, PowerupItem, GameExports } from '@quake2ts/game';
|
|
9
|
+
import { GameStateSnapshot, Entity, ScriptHookRegistry, SpawnContext, EntitySystem, SpawnRegistry, MonsterMove, DamageMod, PlayerInventory, BaseItem, WeaponId, WeaponItem, HealthItem, ArmorItem, AmmoItemId, PowerupItem, GameExports, PlayerClient } from '@quake2ts/game';
|
|
10
10
|
import { NetworkTransport, Server, ServerStatic, Client, ClientState, ClientFrame } from '@quake2ts/server';
|
|
11
11
|
import { ImageData, Canvas } from '@napi-rs/canvas';
|
|
12
12
|
import { vec3 } from 'gl-matrix';
|
|
@@ -1482,6 +1482,31 @@ declare function createViewTestScenario(scenarioType: 'firstPerson' | 'thirdPers
|
|
|
1482
1482
|
*/
|
|
1483
1483
|
declare function simulateCameraMovement(camera: Camera, input: CameraInput, deltaTime: number): Camera;
|
|
1484
1484
|
|
|
1485
|
+
interface HudState {
|
|
1486
|
+
ps: PlayerState;
|
|
1487
|
+
client: PlayerClient;
|
|
1488
|
+
health: number;
|
|
1489
|
+
armor: number;
|
|
1490
|
+
ammo: number;
|
|
1491
|
+
stats: FrameRenderStats;
|
|
1492
|
+
timeMs: number;
|
|
1493
|
+
messages: any;
|
|
1494
|
+
}
|
|
1495
|
+
declare function createMockHudState(overrides?: Partial<HudState>): HudState;
|
|
1496
|
+
declare function createMockScoreboard(players?: any[]): any;
|
|
1497
|
+
interface MockChatMessage {
|
|
1498
|
+
text: string;
|
|
1499
|
+
sender?: string;
|
|
1500
|
+
timestamp?: number;
|
|
1501
|
+
}
|
|
1502
|
+
declare function createMockChatMessage(text: string, sender?: string, timestamp?: number): MockChatMessage;
|
|
1503
|
+
interface MockNotification {
|
|
1504
|
+
type: string;
|
|
1505
|
+
message: string;
|
|
1506
|
+
duration?: number;
|
|
1507
|
+
}
|
|
1508
|
+
declare function createMockNotification(type: string, message: string, duration?: number): MockNotification;
|
|
1509
|
+
|
|
1485
1510
|
interface PlaywrightOptions {
|
|
1486
1511
|
headless?: boolean;
|
|
1487
1512
|
viewport?: {
|
|
@@ -1571,4 +1596,4 @@ interface VisualScenario {
|
|
|
1571
1596
|
*/
|
|
1572
1597
|
declare function createVisualTestScenario(sceneName: string): VisualScenario;
|
|
1573
1598
|
|
|
1574
|
-
export { type AudioEvent, type BandwidthScenario, type BinaryStreamMock, type BinaryWriterMock, type BrowserSetupOptions, type CameraInput, type Connection, type ConsistencyReport, type ControlledTimer, type DeltaSnapshot, type DrawCall, FakeAudioContext, FakeAudioNode, FakeAudioParam, FakeBiquadFilterNode, FakeBufferSource, FakeDestination, FakeGainNode, FakePannerNode, type GameState, type GameStateCapture, type Handshake, HandshakeStage, InputInjector, type KeyModifiers, type MasterServer, type Message, type MessageReaderMock, type MessageWriterMock, type MockAI, FakeBufferSource as MockAudioBufferSourceNode, type MockCollisionEntityIndex, type MockDamageInfo, type MockEngine, type MockGame, type MockMonsterAI, MockNetworkTransport, MockPointerLock, type MockRAF, type MockRConClient, type MockRenderingContext, type MockServer, type MockServerConsole, type MockServerContext, MockTransport, type MockUDPSocket, MockWebGL2RenderingContext, type MultiplayerScenario, type NetworkAddress, type NetworkCondition, type NetworkSimulator, type NodeSetupOptions, type PacketMock, type PhysicsScenario, type PlaywrightOptions, type PlaywrightTestClient, type RateLimiter, type RecordedPacket, type RefDef, type ServerInfo, type ServerListFilter, type Snapshot, type StorageScenario, type SurfaceMock, type TestContext, type TraceMock, type Transform, type UserInfo, type ViewScenario, type ViewState, type VisualDiff, type VisualScenario, captureAudioEvents, captureCanvasDrawCalls, captureGameScreenshot, captureGameState, compareScreenshot, compareScreenshots, createBandwidthTestScenario, createBinaryStreamMock, createBinaryWriterMock, createBounds, createCombatTestContext, createConfigStringArrayMock, createConfigStringMock, createControlledTimer, createCustomNetworkCondition, createCvarMock, createDeltaSnapshot, createEntity, createEntityFactory, createEntityStateFactory, createGameStateSnapshotFactory, createInputInjector, createItemEntityFactory, createMessageReaderMock, createMessageWriterMock, createMockAI, createMockAmmoItem, createMockArmorItem, createMockAudioBuffer, createMockAudioContext, createMockBufferSource, createMockCamera, createMockCanvas, createMockCanvasContext2D, createMockCollisionEntityIndex, createMockConnection, createMockDamageInfo, createMockEngine, createMockGPUAdapter, createMockGPUCanvasContext, createMockGPUDevice, createMockGame, createMockGameExports, createMockGameState, createMockHandshake, createMockHealthItem, createMockImage, createMockImageData, createMockIndexedDB, createMockInventory, createMockItem, createMockKeyboardEvent, createMockLocalStorage, createMockMasterServer, createMockMonsterAI, createMockMonsterMove, createMockMouseEvent, createMockNetDriver, createMockNetworkAddress, createMockPannerNode, createMockPerformance, createMockPointerLock, createMockPowerupItem, createMockRAF, createMockRConClient, createMockRateLimiter, createMockRefDef, createMockRenderingContext, createMockServer, createMockServerClient, createMockServerConsole, createMockServerInfo, createMockServerState, createMockServerStatic, createMockSessionStorage, createMockTransport, createMockUDPSocket, createMockUserInfo, createMockViewState, createMockWeapon, createMockWeaponItem, createMockWebGL2Context, createMockWheelEvent, createMonsterEntityFactory, createMultiplayerTestScenario, createNetChanMock, createPacketMock, createPhysicsTestContext, createPhysicsTestScenario, createPlayerEntityFactory, createPlayerStateFactory, createPlaywrightTestClient, createProjectileEntityFactory, createServerSnapshot, createSpawnTestContext, createStorageTestScenario, createSurfaceMock, createTestContext, createTraceMock, createTransform, createTriggerEntityFactory, createVector3, createViewTestScenario, createVisualTestScenario, makeAxisBrush, makeBrushFromMinsMaxs, makeBspModel, makeLeaf, makeLeafModel, makeNode, makePlane, measureSnapshotSize, mockMonsterAttacks, randomVector3, serializeUserInfo, setupBrowserEnvironment, setupMockAudioContext, setupNodeEnvironment, setupWebGPUMocks, simulateBandwidthLimit, simulateCameraMovement, simulateFrames, simulateGravity, simulateHandshake, simulateJump, simulateMovement, simulateNetworkCondition, simulatePlayerInput, simulatePlayerJoin, simulatePlayerLeave, simulateServerCommand, simulateServerRegistration, simulateServerTick, simulateSnapshotDelivery, takeScreenshot, teardownBrowserEnvironment, teardownMockAudioContext, teardownNodeEnvironment, throttleBandwidth, verifySnapshotConsistency, waitForGameReady };
|
|
1599
|
+
export { type AudioEvent, type BandwidthScenario, type BinaryStreamMock, type BinaryWriterMock, type BrowserSetupOptions, type CameraInput, type Connection, type ConsistencyReport, type ControlledTimer, type DeltaSnapshot, type DrawCall, FakeAudioContext, FakeAudioNode, FakeAudioParam, FakeBiquadFilterNode, FakeBufferSource, FakeDestination, FakeGainNode, FakePannerNode, type GameState, type GameStateCapture, type Handshake, HandshakeStage, type HudState, InputInjector, type KeyModifiers, type MasterServer, type Message, type MessageReaderMock, type MessageWriterMock, type MockAI, FakeBufferSource as MockAudioBufferSourceNode, type MockChatMessage, type MockCollisionEntityIndex, type MockDamageInfo, type MockEngine, type MockGame, type MockMonsterAI, MockNetworkTransport, type MockNotification, MockPointerLock, type MockRAF, type MockRConClient, type MockRenderingContext, type MockServer, type MockServerConsole, type MockServerContext, MockTransport, type MockUDPSocket, MockWebGL2RenderingContext, type MultiplayerScenario, type NetworkAddress, type NetworkCondition, type NetworkSimulator, type NodeSetupOptions, type PacketMock, type PhysicsScenario, type PlaywrightOptions, type PlaywrightTestClient, type RateLimiter, type RecordedPacket, type RefDef, type ServerInfo, type ServerListFilter, type Snapshot, type StorageScenario, type SurfaceMock, type TestContext, type TraceMock, type Transform, type UserInfo, type ViewScenario, type ViewState, type VisualDiff, type VisualScenario, captureAudioEvents, captureCanvasDrawCalls, captureGameScreenshot, captureGameState, compareScreenshot, compareScreenshots, createBandwidthTestScenario, createBinaryStreamMock, createBinaryWriterMock, createBounds, createCombatTestContext, createConfigStringArrayMock, createConfigStringMock, createControlledTimer, createCustomNetworkCondition, createCvarMock, createDeltaSnapshot, createEntity, createEntityFactory, createEntityStateFactory, createGameStateSnapshotFactory, createInputInjector, createItemEntityFactory, createMessageReaderMock, createMessageWriterMock, createMockAI, createMockAmmoItem, createMockArmorItem, createMockAudioBuffer, createMockAudioContext, createMockBufferSource, createMockCamera, createMockCanvas, createMockCanvasContext2D, createMockChatMessage, createMockCollisionEntityIndex, createMockConnection, createMockDamageInfo, createMockEngine, createMockGPUAdapter, createMockGPUCanvasContext, createMockGPUDevice, createMockGame, createMockGameExports, createMockGameState, createMockHandshake, createMockHealthItem, createMockHudState, createMockImage, createMockImageData, createMockIndexedDB, createMockInventory, createMockItem, createMockKeyboardEvent, createMockLocalStorage, createMockMasterServer, createMockMonsterAI, createMockMonsterMove, createMockMouseEvent, createMockNetDriver, createMockNetworkAddress, createMockNotification, createMockPannerNode, createMockPerformance, createMockPointerLock, createMockPowerupItem, createMockRAF, createMockRConClient, createMockRateLimiter, createMockRefDef, createMockRenderingContext, createMockScoreboard, createMockServer, createMockServerClient, createMockServerConsole, createMockServerInfo, createMockServerState, createMockServerStatic, createMockSessionStorage, createMockTransport, createMockUDPSocket, createMockUserInfo, createMockViewState, createMockWeapon, createMockWeaponItem, createMockWebGL2Context, createMockWheelEvent, createMonsterEntityFactory, createMultiplayerTestScenario, createNetChanMock, createPacketMock, createPhysicsTestContext, createPhysicsTestScenario, createPlayerEntityFactory, createPlayerStateFactory, createPlaywrightTestClient, createProjectileEntityFactory, createServerSnapshot, createSpawnTestContext, createStorageTestScenario, createSurfaceMock, createTestContext, createTraceMock, createTransform, createTriggerEntityFactory, createVector3, createViewTestScenario, createVisualTestScenario, makeAxisBrush, makeBrushFromMinsMaxs, makeBspModel, makeLeaf, makeLeafModel, makeNode, makePlane, measureSnapshotSize, mockMonsterAttacks, randomVector3, serializeUserInfo, setupBrowserEnvironment, setupMockAudioContext, setupNodeEnvironment, setupWebGPUMocks, simulateBandwidthLimit, simulateCameraMovement, simulateFrames, simulateGravity, simulateHandshake, simulateJump, simulateMovement, simulateNetworkCondition, simulatePlayerInput, simulatePlayerJoin, simulatePlayerLeave, simulateServerCommand, simulateServerRegistration, simulateServerTick, simulateSnapshotDelivery, takeScreenshot, teardownBrowserEnvironment, teardownMockAudioContext, teardownNodeEnvironment, throttleBandwidth, verifySnapshotConsistency, waitForGameReady };
|
|
@@ -4,9 +4,9 @@ import { Vec3, CollisionPlane, CollisionBrush, CollisionNode, CollisionLeaf, Col
|
|
|
4
4
|
export { intersects, ladderTrace, stairTrace } from '@quake2ts/shared';
|
|
5
5
|
import { Vec3 as Vec3$1, Bounds3 } from '@quake2ts/shared/math/vec3';
|
|
6
6
|
import { TraceResult, CollisionPlane as CollisionPlane$1 } from '@quake2ts/shared/bsp/collision';
|
|
7
|
-
import { ConfigStringEntry, Cvar, AudioNodeLike, AudioBufferSourceNodeLike, AudioBufferLike, AudioParamLike, GainNodeLike, DynamicsCompressorNodeLike, PannerNodeLike, BiquadFilterNodeLike, AudioDestinationNodeLike, AudioContextLike, Camera } from '@quake2ts/engine';
|
|
7
|
+
import { ConfigStringEntry, Cvar, AudioNodeLike, AudioBufferSourceNodeLike, AudioBufferLike, AudioParamLike, GainNodeLike, DynamicsCompressorNodeLike, PannerNodeLike, BiquadFilterNodeLike, AudioDestinationNodeLike, AudioContextLike, Camera, FrameRenderStats } from '@quake2ts/engine';
|
|
8
8
|
export { ConfigStringEntry, Cvar } from '@quake2ts/engine';
|
|
9
|
-
import { GameStateSnapshot, Entity, ScriptHookRegistry, SpawnContext, EntitySystem, SpawnRegistry, MonsterMove, DamageMod, PlayerInventory, BaseItem, WeaponId, WeaponItem, HealthItem, ArmorItem, AmmoItemId, PowerupItem, GameExports } from '@quake2ts/game';
|
|
9
|
+
import { GameStateSnapshot, Entity, ScriptHookRegistry, SpawnContext, EntitySystem, SpawnRegistry, MonsterMove, DamageMod, PlayerInventory, BaseItem, WeaponId, WeaponItem, HealthItem, ArmorItem, AmmoItemId, PowerupItem, GameExports, PlayerClient } from '@quake2ts/game';
|
|
10
10
|
import { NetworkTransport, Server, ServerStatic, Client, ClientState, ClientFrame } from '@quake2ts/server';
|
|
11
11
|
import { ImageData, Canvas } from '@napi-rs/canvas';
|
|
12
12
|
import { vec3 } from 'gl-matrix';
|
|
@@ -1482,6 +1482,31 @@ declare function createViewTestScenario(scenarioType: 'firstPerson' | 'thirdPers
|
|
|
1482
1482
|
*/
|
|
1483
1483
|
declare function simulateCameraMovement(camera: Camera, input: CameraInput, deltaTime: number): Camera;
|
|
1484
1484
|
|
|
1485
|
+
interface HudState {
|
|
1486
|
+
ps: PlayerState;
|
|
1487
|
+
client: PlayerClient;
|
|
1488
|
+
health: number;
|
|
1489
|
+
armor: number;
|
|
1490
|
+
ammo: number;
|
|
1491
|
+
stats: FrameRenderStats;
|
|
1492
|
+
timeMs: number;
|
|
1493
|
+
messages: any;
|
|
1494
|
+
}
|
|
1495
|
+
declare function createMockHudState(overrides?: Partial<HudState>): HudState;
|
|
1496
|
+
declare function createMockScoreboard(players?: any[]): any;
|
|
1497
|
+
interface MockChatMessage {
|
|
1498
|
+
text: string;
|
|
1499
|
+
sender?: string;
|
|
1500
|
+
timestamp?: number;
|
|
1501
|
+
}
|
|
1502
|
+
declare function createMockChatMessage(text: string, sender?: string, timestamp?: number): MockChatMessage;
|
|
1503
|
+
interface MockNotification {
|
|
1504
|
+
type: string;
|
|
1505
|
+
message: string;
|
|
1506
|
+
duration?: number;
|
|
1507
|
+
}
|
|
1508
|
+
declare function createMockNotification(type: string, message: string, duration?: number): MockNotification;
|
|
1509
|
+
|
|
1485
1510
|
interface PlaywrightOptions {
|
|
1486
1511
|
headless?: boolean;
|
|
1487
1512
|
viewport?: {
|
|
@@ -1571,4 +1596,4 @@ interface VisualScenario {
|
|
|
1571
1596
|
*/
|
|
1572
1597
|
declare function createVisualTestScenario(sceneName: string): VisualScenario;
|
|
1573
1598
|
|
|
1574
|
-
export { type AudioEvent, type BandwidthScenario, type BinaryStreamMock, type BinaryWriterMock, type BrowserSetupOptions, type CameraInput, type Connection, type ConsistencyReport, type ControlledTimer, type DeltaSnapshot, type DrawCall, FakeAudioContext, FakeAudioNode, FakeAudioParam, FakeBiquadFilterNode, FakeBufferSource, FakeDestination, FakeGainNode, FakePannerNode, type GameState, type GameStateCapture, type Handshake, HandshakeStage, InputInjector, type KeyModifiers, type MasterServer, type Message, type MessageReaderMock, type MessageWriterMock, type MockAI, FakeBufferSource as MockAudioBufferSourceNode, type MockCollisionEntityIndex, type MockDamageInfo, type MockEngine, type MockGame, type MockMonsterAI, MockNetworkTransport, MockPointerLock, type MockRAF, type MockRConClient, type MockRenderingContext, type MockServer, type MockServerConsole, type MockServerContext, MockTransport, type MockUDPSocket, MockWebGL2RenderingContext, type MultiplayerScenario, type NetworkAddress, type NetworkCondition, type NetworkSimulator, type NodeSetupOptions, type PacketMock, type PhysicsScenario, type PlaywrightOptions, type PlaywrightTestClient, type RateLimiter, type RecordedPacket, type RefDef, type ServerInfo, type ServerListFilter, type Snapshot, type StorageScenario, type SurfaceMock, type TestContext, type TraceMock, type Transform, type UserInfo, type ViewScenario, type ViewState, type VisualDiff, type VisualScenario, captureAudioEvents, captureCanvasDrawCalls, captureGameScreenshot, captureGameState, compareScreenshot, compareScreenshots, createBandwidthTestScenario, createBinaryStreamMock, createBinaryWriterMock, createBounds, createCombatTestContext, createConfigStringArrayMock, createConfigStringMock, createControlledTimer, createCustomNetworkCondition, createCvarMock, createDeltaSnapshot, createEntity, createEntityFactory, createEntityStateFactory, createGameStateSnapshotFactory, createInputInjector, createItemEntityFactory, createMessageReaderMock, createMessageWriterMock, createMockAI, createMockAmmoItem, createMockArmorItem, createMockAudioBuffer, createMockAudioContext, createMockBufferSource, createMockCamera, createMockCanvas, createMockCanvasContext2D, createMockCollisionEntityIndex, createMockConnection, createMockDamageInfo, createMockEngine, createMockGPUAdapter, createMockGPUCanvasContext, createMockGPUDevice, createMockGame, createMockGameExports, createMockGameState, createMockHandshake, createMockHealthItem, createMockImage, createMockImageData, createMockIndexedDB, createMockInventory, createMockItem, createMockKeyboardEvent, createMockLocalStorage, createMockMasterServer, createMockMonsterAI, createMockMonsterMove, createMockMouseEvent, createMockNetDriver, createMockNetworkAddress, createMockPannerNode, createMockPerformance, createMockPointerLock, createMockPowerupItem, createMockRAF, createMockRConClient, createMockRateLimiter, createMockRefDef, createMockRenderingContext, createMockServer, createMockServerClient, createMockServerConsole, createMockServerInfo, createMockServerState, createMockServerStatic, createMockSessionStorage, createMockTransport, createMockUDPSocket, createMockUserInfo, createMockViewState, createMockWeapon, createMockWeaponItem, createMockWebGL2Context, createMockWheelEvent, createMonsterEntityFactory, createMultiplayerTestScenario, createNetChanMock, createPacketMock, createPhysicsTestContext, createPhysicsTestScenario, createPlayerEntityFactory, createPlayerStateFactory, createPlaywrightTestClient, createProjectileEntityFactory, createServerSnapshot, createSpawnTestContext, createStorageTestScenario, createSurfaceMock, createTestContext, createTraceMock, createTransform, createTriggerEntityFactory, createVector3, createViewTestScenario, createVisualTestScenario, makeAxisBrush, makeBrushFromMinsMaxs, makeBspModel, makeLeaf, makeLeafModel, makeNode, makePlane, measureSnapshotSize, mockMonsterAttacks, randomVector3, serializeUserInfo, setupBrowserEnvironment, setupMockAudioContext, setupNodeEnvironment, setupWebGPUMocks, simulateBandwidthLimit, simulateCameraMovement, simulateFrames, simulateGravity, simulateHandshake, simulateJump, simulateMovement, simulateNetworkCondition, simulatePlayerInput, simulatePlayerJoin, simulatePlayerLeave, simulateServerCommand, simulateServerRegistration, simulateServerTick, simulateSnapshotDelivery, takeScreenshot, teardownBrowserEnvironment, teardownMockAudioContext, teardownNodeEnvironment, throttleBandwidth, verifySnapshotConsistency, waitForGameReady };
|
|
1599
|
+
export { type AudioEvent, type BandwidthScenario, type BinaryStreamMock, type BinaryWriterMock, type BrowserSetupOptions, type CameraInput, type Connection, type ConsistencyReport, type ControlledTimer, type DeltaSnapshot, type DrawCall, FakeAudioContext, FakeAudioNode, FakeAudioParam, FakeBiquadFilterNode, FakeBufferSource, FakeDestination, FakeGainNode, FakePannerNode, type GameState, type GameStateCapture, type Handshake, HandshakeStage, type HudState, InputInjector, type KeyModifiers, type MasterServer, type Message, type MessageReaderMock, type MessageWriterMock, type MockAI, FakeBufferSource as MockAudioBufferSourceNode, type MockChatMessage, type MockCollisionEntityIndex, type MockDamageInfo, type MockEngine, type MockGame, type MockMonsterAI, MockNetworkTransport, type MockNotification, MockPointerLock, type MockRAF, type MockRConClient, type MockRenderingContext, type MockServer, type MockServerConsole, type MockServerContext, MockTransport, type MockUDPSocket, MockWebGL2RenderingContext, type MultiplayerScenario, type NetworkAddress, type NetworkCondition, type NetworkSimulator, type NodeSetupOptions, type PacketMock, type PhysicsScenario, type PlaywrightOptions, type PlaywrightTestClient, type RateLimiter, type RecordedPacket, type RefDef, type ServerInfo, type ServerListFilter, type Snapshot, type StorageScenario, type SurfaceMock, type TestContext, type TraceMock, type Transform, type UserInfo, type ViewScenario, type ViewState, type VisualDiff, type VisualScenario, captureAudioEvents, captureCanvasDrawCalls, captureGameScreenshot, captureGameState, compareScreenshot, compareScreenshots, createBandwidthTestScenario, createBinaryStreamMock, createBinaryWriterMock, createBounds, createCombatTestContext, createConfigStringArrayMock, createConfigStringMock, createControlledTimer, createCustomNetworkCondition, createCvarMock, createDeltaSnapshot, createEntity, createEntityFactory, createEntityStateFactory, createGameStateSnapshotFactory, createInputInjector, createItemEntityFactory, createMessageReaderMock, createMessageWriterMock, createMockAI, createMockAmmoItem, createMockArmorItem, createMockAudioBuffer, createMockAudioContext, createMockBufferSource, createMockCamera, createMockCanvas, createMockCanvasContext2D, createMockChatMessage, createMockCollisionEntityIndex, createMockConnection, createMockDamageInfo, createMockEngine, createMockGPUAdapter, createMockGPUCanvasContext, createMockGPUDevice, createMockGame, createMockGameExports, createMockGameState, createMockHandshake, createMockHealthItem, createMockHudState, createMockImage, createMockImageData, createMockIndexedDB, createMockInventory, createMockItem, createMockKeyboardEvent, createMockLocalStorage, createMockMasterServer, createMockMonsterAI, createMockMonsterMove, createMockMouseEvent, createMockNetDriver, createMockNetworkAddress, createMockNotification, createMockPannerNode, createMockPerformance, createMockPointerLock, createMockPowerupItem, createMockRAF, createMockRConClient, createMockRateLimiter, createMockRefDef, createMockRenderingContext, createMockScoreboard, createMockServer, createMockServerClient, createMockServerConsole, createMockServerInfo, createMockServerState, createMockServerStatic, createMockSessionStorage, createMockTransport, createMockUDPSocket, createMockUserInfo, createMockViewState, createMockWeapon, createMockWeaponItem, createMockWebGL2Context, createMockWheelEvent, createMonsterEntityFactory, createMultiplayerTestScenario, createNetChanMock, createPacketMock, createPhysicsTestContext, createPhysicsTestScenario, createPlayerEntityFactory, createPlayerStateFactory, createPlaywrightTestClient, createProjectileEntityFactory, createServerSnapshot, createSpawnTestContext, createStorageTestScenario, createSurfaceMock, createTestContext, createTraceMock, createTransform, createTriggerEntityFactory, createVector3, createViewTestScenario, createVisualTestScenario, makeAxisBrush, makeBrushFromMinsMaxs, makeBspModel, makeLeaf, makeLeafModel, makeNode, makePlane, measureSnapshotSize, mockMonsterAttacks, randomVector3, serializeUserInfo, setupBrowserEnvironment, setupMockAudioContext, setupNodeEnvironment, setupWebGPUMocks, simulateBandwidthLimit, simulateCameraMovement, simulateFrames, simulateGravity, simulateHandshake, simulateJump, simulateMovement, simulateNetworkCondition, simulatePlayerInput, simulatePlayerJoin, simulatePlayerLeave, simulateServerCommand, simulateServerRegistration, simulateServerTick, simulateSnapshotDelivery, takeScreenshot, teardownBrowserEnvironment, teardownMockAudioContext, teardownNodeEnvironment, throttleBandwidth, verifySnapshotConsistency, waitForGameReady };
|
|
@@ -3242,6 +3242,80 @@ function simulateCameraMovement(camera, input, deltaTime) {
|
|
|
3242
3242
|
return camera;
|
|
3243
3243
|
}
|
|
3244
3244
|
|
|
3245
|
+
// src/client/helpers/hud.ts
|
|
3246
|
+
import { vi as vi13 } from "vitest";
|
|
3247
|
+
function createMockHudState(overrides) {
|
|
3248
|
+
const defaultPs = {
|
|
3249
|
+
damageAlpha: 0,
|
|
3250
|
+
damageIndicators: [],
|
|
3251
|
+
origin: { x: 0, y: 0, z: 0 },
|
|
3252
|
+
velocity: { x: 0, y: 0, z: 0 },
|
|
3253
|
+
viewAngles: { x: 0, y: 0, z: 0 },
|
|
3254
|
+
onGround: true,
|
|
3255
|
+
waterLevel: 0,
|
|
3256
|
+
mins: { x: 0, y: 0, z: 0 },
|
|
3257
|
+
maxs: { x: 0, y: 0, z: 0 },
|
|
3258
|
+
centerPrint: null,
|
|
3259
|
+
notify: null
|
|
3260
|
+
};
|
|
3261
|
+
const defaultClient = {
|
|
3262
|
+
inventory: {
|
|
3263
|
+
armor: { armorCount: 50, armorType: "jacket" },
|
|
3264
|
+
currentWeapon: 1,
|
|
3265
|
+
// Blaster usually
|
|
3266
|
+
ammo: { counts: [] },
|
|
3267
|
+
keys: /* @__PURE__ */ new Set(),
|
|
3268
|
+
powerups: /* @__PURE__ */ new Map()
|
|
3269
|
+
}
|
|
3270
|
+
};
|
|
3271
|
+
const defaultStats = {
|
|
3272
|
+
fps: 60,
|
|
3273
|
+
drawCalls: 100,
|
|
3274
|
+
facesDrawn: 1e3,
|
|
3275
|
+
skyDrawn: true,
|
|
3276
|
+
viewModelDrawn: true,
|
|
3277
|
+
vertexCount: 1e4,
|
|
3278
|
+
batches: 10
|
|
3279
|
+
};
|
|
3280
|
+
const defaultMessages = {
|
|
3281
|
+
drawCenterPrint: vi13.fn(),
|
|
3282
|
+
drawNotifications: vi13.fn(),
|
|
3283
|
+
addCenterPrint: vi13.fn(),
|
|
3284
|
+
addNotification: vi13.fn(),
|
|
3285
|
+
clear: vi13.fn()
|
|
3286
|
+
};
|
|
3287
|
+
return {
|
|
3288
|
+
ps: overrides?.ps ?? defaultPs,
|
|
3289
|
+
client: overrides?.client ?? defaultClient,
|
|
3290
|
+
health: overrides?.health ?? 100,
|
|
3291
|
+
armor: overrides?.armor ?? 50,
|
|
3292
|
+
ammo: overrides?.ammo ?? 20,
|
|
3293
|
+
stats: overrides?.stats ?? defaultStats,
|
|
3294
|
+
timeMs: overrides?.timeMs ?? 1e3,
|
|
3295
|
+
messages: overrides?.messages ?? defaultMessages
|
|
3296
|
+
};
|
|
3297
|
+
}
|
|
3298
|
+
function createMockScoreboard(players = []) {
|
|
3299
|
+
return {
|
|
3300
|
+
players,
|
|
3301
|
+
draw: vi13.fn()
|
|
3302
|
+
};
|
|
3303
|
+
}
|
|
3304
|
+
function createMockChatMessage(text, sender, timestamp = Date.now()) {
|
|
3305
|
+
return {
|
|
3306
|
+
text,
|
|
3307
|
+
sender,
|
|
3308
|
+
timestamp
|
|
3309
|
+
};
|
|
3310
|
+
}
|
|
3311
|
+
function createMockNotification(type, message, duration = 3e3) {
|
|
3312
|
+
return {
|
|
3313
|
+
type,
|
|
3314
|
+
message,
|
|
3315
|
+
duration
|
|
3316
|
+
};
|
|
3317
|
+
}
|
|
3318
|
+
|
|
3245
3319
|
// src/e2e/playwright.ts
|
|
3246
3320
|
async function createPlaywrightTestClient(options = {}) {
|
|
3247
3321
|
let playwright;
|
|
@@ -3472,6 +3546,7 @@ export {
|
|
|
3472
3546
|
createMockCamera,
|
|
3473
3547
|
createMockCanvas,
|
|
3474
3548
|
createMockCanvasContext2D,
|
|
3549
|
+
createMockChatMessage,
|
|
3475
3550
|
createMockCollisionEntityIndex,
|
|
3476
3551
|
createMockConnection,
|
|
3477
3552
|
createMockDamageInfo,
|
|
@@ -3484,6 +3559,7 @@ export {
|
|
|
3484
3559
|
createMockGameState,
|
|
3485
3560
|
createMockHandshake,
|
|
3486
3561
|
createMockHealthItem,
|
|
3562
|
+
createMockHudState,
|
|
3487
3563
|
createMockImage,
|
|
3488
3564
|
createMockImageData,
|
|
3489
3565
|
createMockIndexedDB,
|
|
@@ -3497,6 +3573,7 @@ export {
|
|
|
3497
3573
|
createMockMouseEvent,
|
|
3498
3574
|
createMockNetDriver,
|
|
3499
3575
|
createMockNetworkAddress,
|
|
3576
|
+
createMockNotification,
|
|
3500
3577
|
createMockPannerNode,
|
|
3501
3578
|
createMockPerformance,
|
|
3502
3579
|
createMockPointerLock,
|
|
@@ -3506,6 +3583,7 @@ export {
|
|
|
3506
3583
|
createMockRateLimiter,
|
|
3507
3584
|
createMockRefDef,
|
|
3508
3585
|
createMockRenderingContext,
|
|
3586
|
+
createMockScoreboard,
|
|
3509
3587
|
createMockServer,
|
|
3510
3588
|
createMockServerClient,
|
|
3511
3589
|
createMockServerConsole,
|