quake2ts 0.0.257 → 0.0.261

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 (63) hide show
  1. package/package.json +1 -1
  2. package/packages/cgame/dist/index.cjs +23 -0
  3. package/packages/cgame/dist/index.cjs.map +1 -1
  4. package/packages/cgame/dist/index.js +24 -1
  5. package/packages/cgame/dist/index.js.map +1 -1
  6. package/packages/client/dist/browser/index.global.js +13 -13
  7. package/packages/client/dist/browser/index.global.js.map +1 -1
  8. package/packages/client/dist/cjs/index.cjs +139 -4
  9. package/packages/client/dist/cjs/index.cjs.map +1 -1
  10. package/packages/client/dist/esm/index.js +139 -4
  11. package/packages/client/dist/esm/index.js.map +1 -1
  12. package/packages/client/dist/tsconfig.tsbuildinfo +1 -1
  13. package/packages/client/dist/types/net/connection.d.ts +2 -0
  14. package/packages/client/dist/types/net/connection.d.ts.map +1 -1
  15. package/packages/engine/dist/browser/index.global.js.map +1 -1
  16. package/packages/engine/dist/cjs/index.cjs.map +1 -1
  17. package/packages/engine/dist/esm/index.js.map +1 -1
  18. package/packages/engine/dist/tsconfig.tsbuildinfo +1 -1
  19. package/packages/game/dist/browser/index.global.js +2 -2
  20. package/packages/game/dist/browser/index.global.js.map +1 -1
  21. package/packages/game/dist/cjs/index.cjs +3910 -2757
  22. package/packages/game/dist/cjs/index.cjs.map +1 -1
  23. package/packages/game/dist/esm/index.js +3910 -2757
  24. package/packages/game/dist/esm/index.js.map +1 -1
  25. package/packages/game/dist/tsconfig.tsbuildinfo +1 -1
  26. package/packages/game/dist/types/combat/weapons/animation.d.ts +20 -0
  27. package/packages/game/dist/types/combat/weapons/animation.d.ts.map +1 -0
  28. package/packages/game/dist/types/combat/weapons/firing.d.ts.map +1 -1
  29. package/packages/game/dist/types/combat/weapons/frames.d.ts +8 -0
  30. package/packages/game/dist/types/combat/weapons/frames.d.ts.map +1 -0
  31. package/packages/game/dist/types/combat/weapons/projectSource.d.ts +16 -27
  32. package/packages/game/dist/types/combat/weapons/projectSource.d.ts.map +1 -1
  33. package/packages/game/dist/types/combat/weapons/switching.d.ts +11 -0
  34. package/packages/game/dist/types/combat/weapons/switching.d.ts.map +1 -1
  35. package/packages/game/dist/types/entities/entity.d.ts +1 -0
  36. package/packages/game/dist/types/entities/entity.d.ts.map +1 -1
  37. package/packages/game/dist/types/entities/funcs.d.ts +2 -1
  38. package/packages/game/dist/types/entities/funcs.d.ts.map +1 -1
  39. package/packages/game/dist/types/entities/misc.d.ts.map +1 -1
  40. package/packages/game/dist/types/entities/monsters/index.d.ts.map +1 -1
  41. package/packages/game/dist/types/entities/monsters/insane.d.ts +5 -0
  42. package/packages/game/dist/types/entities/monsters/insane.d.ts.map +1 -0
  43. package/packages/game/dist/types/entities/projectiles.d.ts +1 -1
  44. package/packages/game/dist/types/entities/projectiles.d.ts.map +1 -1
  45. package/packages/game/dist/types/entities/targets.d.ts.map +1 -1
  46. package/packages/server/dist/index.cjs +15 -0
  47. package/packages/server/dist/index.d.cts +1 -0
  48. package/packages/server/dist/index.d.ts +1 -0
  49. package/packages/server/dist/index.js +15 -0
  50. package/packages/shared/dist/browser/index.global.js +1 -1
  51. package/packages/shared/dist/browser/index.global.js.map +1 -1
  52. package/packages/shared/dist/cjs/index.cjs +21 -2
  53. package/packages/shared/dist/cjs/index.cjs.map +1 -1
  54. package/packages/shared/dist/esm/index.js +18 -1
  55. package/packages/shared/dist/esm/index.js.map +1 -1
  56. package/packages/shared/dist/tsconfig.tsbuildinfo +1 -1
  57. package/packages/shared/dist/types/protocol/constants.d.ts +1 -0
  58. package/packages/shared/dist/types/protocol/constants.d.ts.map +1 -1
  59. package/packages/shared/dist/types/protocol/index.d.ts +1 -0
  60. package/packages/shared/dist/types/protocol/index.d.ts.map +1 -1
  61. package/packages/shared/dist/types/protocol/writeUserCmd.d.ts +4 -0
  62. package/packages/shared/dist/types/protocol/writeUserCmd.d.ts.map +1 -0
  63. package/packages/tools/dist/tsconfig.tsbuildinfo +1 -1
@@ -0,0 +1,20 @@
1
+ import { Entity } from '../../entities/entity.js';
2
+ import { EntitySystem } from '../../entities/system.js';
3
+ /**
4
+ * Calculates the animation time frame for weapons.
5
+ * Handles powerups like Haste (doubles speed) and Quad Fire.
6
+ *
7
+ * Source: p_weapon.cpp (implicit in logic)
8
+ */
9
+ export declare function Weapon_AnimationTime(ent: Entity): number;
10
+ /**
11
+ * Generic Weapon Animation Handler
12
+ * Source: p_weapon.cpp:878-950
13
+ */
14
+ export declare function Weapon_Generic(ent: Entity, FRAME_ACTIVATE_LAST: number, FRAME_FIRE_LAST: number, FRAME_IDLE_LAST: number, FRAME_DEACTIVATE_LAST: number, FRAME_WAIT: number, FRAME_NOOP: number, fire: (ent: Entity) => void, sys: EntitySystem): void;
15
+ /**
16
+ * Throw_Generic - For throwable weapons like Grenades
17
+ * Source: p_weapon.cpp:1013-1213
18
+ */
19
+ export declare function Throw_Generic(ent: Entity, FRAME_FIRE_LAST: number, FRAME_IDLE_LAST: number, FRAME_THROW_FIRST: number, FRAME_THROW_LAST: number, FRAME_PRIME_SOUND: number, FRAME_THROW_HOLD: number, FRAME_THROW_FIRE: number, fire: (ent: Entity, held: boolean) => void, sys: EntitySystem): void;
20
+ //# sourceMappingURL=animation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"animation.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/animation.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAOxD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAsBxD;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAC1B,GAAG,EAAE,MAAM,EACX,mBAAmB,EAAE,MAAM,EAC3B,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,MAAM,EACvB,qBAAqB,EAAE,MAAM,EAC7B,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EAC3B,GAAG,EAAE,YAAY,QA8IpB;AAED;;;GAGG;AACH,wBAAgB,aAAa,CACzB,GAAG,EAAE,MAAM,EACX,eAAe,EAAE,MAAM,EACvB,eAAe,EAAE,MAAM,EACvB,iBAAiB,EAAE,MAAM,EACzB,gBAAgB,EAAE,MAAM,EACxB,iBAAiB,EAAE,MAAM,EACzB,gBAAgB,EAAE,MAAM,EACxB,gBAAgB,EAAE,MAAM,EACxB,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,KAAK,IAAI,EAC1C,GAAG,EAAE,YAAY,QAyGpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"firing.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/firing.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAmB,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAe/E,QAAA,MAAM,MAAM,4CAA0B,CAAC;AACvC,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,CAAC;AA2NlC,wBAAgB,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,QAmPzE"}
1
+ {"version":3,"file":"firing.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/firing.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAmB,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAqB/E,QAAA,MAAM,MAAM,4CAA0B,CAAC;AACvC,OAAO,EAAE,MAAM,IAAI,YAAY,EAAE,CAAC;AA+MlC,wBAAgB,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,QAuRzE"}
@@ -0,0 +1,8 @@
1
+ export declare const FRAME_GRENADE_IDLE_FIRST = 16;
2
+ export declare const FRAME_GRENADE_IDLE_LAST = 48;
3
+ export declare const FRAME_GRENADE_THROW_FIRST = 5;
4
+ export declare const FRAME_GRENADE_THROW_LAST = 15;
5
+ export declare const FRAME_GRENADE_PRIME_SOUND = 5;
6
+ export declare const FRAME_GRENADE_THROW_HOLD = 11;
7
+ export declare const FRAME_GRENADE_THROW_FIRE = 12;
8
+ //# sourceMappingURL=frames.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frames.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/frames.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,uBAAuB,KAAM,CAAC;AAC3C,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,yBAAyB,IAAI,CAAC;AAC3C,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAC3C,eAAO,MAAM,wBAAwB,KAAK,CAAC"}
@@ -1,28 +1,17 @@
1
- import { Entity } from '../../entities/entity.js';
2
- import { GameExports } from '../../index.js';
3
- import { Vec3 } from '@quake2ts/shared';
4
- /**
5
- * Calculates the exact firing origin for a weapon projectile or hitscan.
6
- * Replicates the behavior of P_ProjectSource from the original Quake II source.
7
- *
8
- * Source: p_weapon.cpp:91-135
9
- *
10
- * @param game The game exports interface
11
- * @param player The player entity firing the weapon
12
- * @param fireOffset The forward/right/up offset from the player's eye position (e.g., {8, 8, 8})
13
- * @param forward The forward vector of the player's view
14
- * @param right The right vector of the player's view
15
- * @param up The up vector of the player's view
16
- * @returns The calculated world position to spawn the projectile or start the trace
17
- */
18
- export declare function P_ProjectSource(game: GameExports, player: Entity, fireOffset: Vec3, forward: Vec3, right: Vec3, up: Vec3): Vec3;
19
- /**
20
- * Helper to get the correct firing origin for a specific weapon.
21
- * Applies the correct offsets based on weapon type and P_ProjectSource logic.
22
- *
23
- * @param game Game exports
24
- * @param player Player entity
25
- * @param offset Optional custom offset (defaults to standard {8, 8, player.viewheight-8})
26
- */
27
- export declare function getProjectileOrigin(game: GameExports, player: Entity, offset?: Vec3): Vec3;
1
+ import type { Vec3 } from '@quake2ts/shared';
2
+ import type { Entity } from '../../entities/entity.js';
3
+ import type { GameExports } from '../../index.js';
4
+ export declare const VIEW_HEIGHT = 22;
5
+ export declare function P_ProjectSource(game: GameExports, ent: Entity, offset: Vec3, forward: Vec3, right: Vec3, up: Vec3): Vec3;
6
+ export declare function getProjectileOrigin(game: GameExports, ent: Entity, offset?: Vec3): Vec3;
7
+ export declare function getWeaponVectors(ent: Entity, angleVectorsFn: (angles: Vec3) => {
8
+ forward: Vec3;
9
+ right: Vec3;
10
+ up: Vec3;
11
+ }): {
12
+ forward: Vec3;
13
+ right: Vec3;
14
+ up: Vec3;
15
+ origin: Vec3;
16
+ };
28
17
  //# sourceMappingURL=projectSource.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"projectSource.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/projectSource.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAoC,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAE1E;;;;;;;;;;;;;GAaG;AACH,wBAAgB,eAAe,CAC3B,IAAI,EAAE,WAAW,EACjB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,IAAI,EAChB,OAAO,EAAE,IAAI,EACb,KAAK,EAAE,IAAI,EACX,EAAE,EAAE,IAAI,GACT,IAAI,CAuCN;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,IAA2B,GAAG,IAAI,CAGhH"}
1
+ {"version":3,"file":"projectSource.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/projectSource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAE7C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,eAAO,MAAM,WAAW,KAAK,CAAC;AAE9B,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,GAAG,IAAI,CA2BxH;AAGD,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,GAAE,IAA2B,GAAG,IAAI,CAG7G;AAGD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC,MAAM,EAAE,IAAI,KAAK;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,IAAI,CAAA;CAAE,GAAG;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,IAAI,CAAC;IAAC,EAAE,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,IAAI,CAAA;CAAE,CAGhL"}
@@ -1,3 +1,14 @@
1
1
  import { Entity } from '../../entities/entity.js';
2
+ import { WeaponId } from '../../inventory/playerInventory.js';
3
+ /**
4
+ * ChangeWeapon
5
+ * Source: p_weapon.cpp:761-809
6
+ */
7
+ export declare function ChangeWeapon(ent: Entity, weaponId?: WeaponId): void;
8
+ /**
9
+ * Auto-Switch on Empty Ammo
10
+ * Source: p_weapon.cpp: NoAmmoWeaponChange
11
+ */
12
+ export declare function NoAmmoWeaponChange(ent: Entity): void;
2
13
  export declare function switchToBestWeapon(player: Entity): void;
3
14
  //# sourceMappingURL=switching.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"switching.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/switching.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAIlD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,QA6BhD"}
1
+ {"version":3,"file":"switching.d.ts","sourceRoot":"","sources":["../../../../src/combat/weapons/switching.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAmB,QAAQ,EAAgB,MAAM,oCAAoC,CAAC;AAK7F;;;GAGG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ,QA8D5D;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,QAQ7C;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,QAuChD"}
@@ -168,6 +168,7 @@ export declare class Entity {
168
168
  count: number;
169
169
  wait: number;
170
170
  delay: number;
171
+ random: number;
171
172
  timestamp: number;
172
173
  lip: number;
173
174
  state: number;
@@ -1 +1 @@
1
- {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/entities/entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../../src/entities/entity.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
- import type { SpawnRegistry } from './spawn.js';
1
+ import type { SpawnFunction, SpawnRegistry } from './spawn.js';
2
2
  export declare enum DoorState {
3
3
  Open = 0,
4
4
  Opening = 1,
5
5
  Closed = 2,
6
6
  Closing = 3
7
7
  }
8
+ export declare const func_door_secret: SpawnFunction;
8
9
  export declare function registerFuncSpawns(registry: SpawnRegistry): void;
9
10
  //# sourceMappingURL=funcs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"funcs.d.ts","sourceRoot":"","sources":["../../../src/entities/funcs.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAiB,aAAa,EAAE,MAAM,YAAY,CAAC;AA6D/D,oBAAY,SAAS;IACnB,IAAI,IAAA;IACJ,OAAO,IAAA;IACP,MAAM,IAAA;IACN,OAAO,IAAA;CACR;AAkcD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,aAAa,QAWzD"}
1
+ {"version":3,"file":"funcs.d.ts","sourceRoot":"","sources":["../../../src/entities/funcs.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAqG/D,oBAAY,SAAS;IACnB,IAAI,IAAA;IACJ,OAAO,IAAA;IACP,MAAM,IAAA;IACN,OAAO,IAAA;CACR;AA6RD,eAAO,MAAM,gBAAgB,EAAE,aA0F9B,CAAC;AAigBF,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,aAAa,QAczD"}
@@ -1 +1 @@
1
- {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../../src/entities/misc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAGhD,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,aAAa,QAiCzD"}
1
+ {"version":3,"file":"misc.d.ts","sourceRoot":"","sources":["../../../src/entities/misc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAiB,MAAM,YAAY,CAAC;AAmG/D,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,aAAa,QAmCzD"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/entities/monsters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAwB5C,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAuBnE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/entities/monsters/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAyB5C,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAwBnE"}
@@ -0,0 +1,5 @@
1
+ import { Entity } from '../entity.js';
2
+ import { SpawnContext, SpawnRegistry } from '../spawn.js';
3
+ export declare function SP_misc_insane(self: Entity, context: SpawnContext): void;
4
+ export declare function registerInsaneSpawns(registry: SpawnRegistry): void;
5
+ //# sourceMappingURL=insane.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"insane.d.ts","sourceRoot":"","sources":["../../../../src/entities/monsters/insane.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAqE,MAAM,cAAc,CAAC;AAGzG,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AA6b1D,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,QAwGjE;AAED,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,aAAa,GAAG,IAAI,CAElE"}
@@ -4,7 +4,7 @@ import { DamageMod } from '../combat/damageMods.js';
4
4
  import { Vec3 } from '@quake2ts/shared';
5
5
  export declare function createRocket(sys: EntitySystem, owner: Entity, start: Vec3, dir: Vec3, damage: number, radiusDamage: number, speed: number, flashtype?: number): void;
6
6
  export declare function createGrenade(sys: EntitySystem, owner: Entity, start: Vec3, dir: Vec3, damage: number, speed: number, timer?: number): void;
7
- export declare function createBlasterBolt(sys: EntitySystem, owner: Entity, start: Vec3, dir: Vec3, damage: number, speed: number, mod: DamageMod): void;
7
+ export declare function createBlasterBolt(sys: EntitySystem, owner: Entity, start: Vec3, dir: Vec3, damage: number, speed: number, mod: DamageMod): Entity;
8
8
  export declare function createIonRipper(sys: EntitySystem, owner: Entity, start: Vec3, dir: Vec3, damage: number, speed: number): void;
9
9
  export declare function createBlueBlaster(sys: EntitySystem, owner: Entity, start: Vec3, dir: Vec3, damage: number, speed: number): void;
10
10
  export declare function createBfgBall(sys: EntitySystem, owner: Entity, start: Vec3, dir: Vec3, damage: number, speed: number, damageRadius: number): void;
@@ -1 +1 @@
1
- {"version":3,"file":"projectiles.d.ts","sourceRoot":"","sources":["../../../src/entities/projectiles.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAgC,MAAM,aAAa,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAsD,IAAI,EAAkJ,MAAM,kBAAkB,CAAC;AAG5O,wBAAgB,YAAY,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,GAAE,MAAU,QA2ChK;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAY,QAwDzI;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,QA4DxI;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QA6EtH;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAExH;AAkOD,wBAAgB,aAAa,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,QA8E1I;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAgD9I;AAGD,wBAAgB,eAAe,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAgEtH;AAED,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"projectiles.d.ts","sourceRoot":"","sources":["../../../src/entities/projectiles.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,MAAM,EAAgC,MAAM,aAAa,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAsD,IAAI,EAAkJ,MAAM,kBAAkB,CAAC;AAG5O,wBAAgB,YAAY,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,GAAE,MAAU,QA2ChK;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,GAAE,MAAY,QAwDzI;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,SAAS,GAAG,MAAM,CA6DjJ;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QA6EtH;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAExH;AAkOD,wBAAgB,aAAa,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,QA8E1I;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAgD9I;AAGD,wBAAgB,eAAe,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,QAgEtH;AAED,cAAc,uBAAuB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"targets.d.ts","sourceRoot":"","sources":["../../../src/entities/targets.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AA4DhD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,aAAa,QA6E3D"}
1
+ {"version":3,"file":"targets.d.ts","sourceRoot":"","sources":["../../../src/entities/targets.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AA0IhD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,aAAa,QAgG3D"}
@@ -915,6 +915,7 @@ var DedicatedServer = class {
915
915
  const driver = new WebSocketNetDriver();
916
916
  driver.attach(ws);
917
917
  const client = createClient(clientIndex, driver);
918
+ client.lastMessage = this.sv.frame;
918
919
  this.svs.clients[clientIndex] = client;
919
920
  driver.onMessage((data) => this.onClientMessage(client, data));
920
921
  driver.onClose(() => this.onClientDisconnect(client));
@@ -933,6 +934,11 @@ var DedicatedServer = class {
933
934
  this.entityIndex.unlink(client.edict.index);
934
935
  }
935
936
  }
937
+ dropClient(client) {
938
+ if (client.net) {
939
+ client.net.disconnect();
940
+ }
941
+ }
936
942
  handleMove(client, cmd) {
937
943
  client.lastCmd = cmd;
938
944
  client.lastMessage = this.sv.frame;
@@ -1063,6 +1069,15 @@ var DedicatedServer = class {
1063
1069
  this.sv.time += 100;
1064
1070
  this.SV_ReadPackets();
1065
1071
  for (const client of this.svs.clients) {
1072
+ if (!client || client.state === 0 /* Free */) continue;
1073
+ if (client.state >= 2 /* Connected */) {
1074
+ const timeoutFrames = 300;
1075
+ if (this.sv.frame - client.lastMessage > timeoutFrames) {
1076
+ console.log(`Client ${client.index} timed out`);
1077
+ this.dropClient(client);
1078
+ continue;
1079
+ }
1080
+ }
1066
1081
  if (client && client.state === 4 /* Active */ && client.edict) {
1067
1082
  this.game.clientThink(client.edict, client.lastCmd);
1068
1083
  }
@@ -33,6 +33,7 @@ declare class DedicatedServer implements GameEngine {
33
33
  private handleConnection;
34
34
  private onClientMessage;
35
35
  private onClientDisconnect;
36
+ private dropClient;
36
37
  private handleMove;
37
38
  private handleUserInfo;
38
39
  private handleStringCmd;
@@ -33,6 +33,7 @@ declare class DedicatedServer implements GameEngine {
33
33
  private handleConnection;
34
34
  private onClientMessage;
35
35
  private onClientDisconnect;
36
+ private dropClient;
36
37
  private handleMove;
37
38
  private handleUserInfo;
38
39
  private handleStringCmd;
@@ -875,6 +875,7 @@ var DedicatedServer = class {
875
875
  const driver = new WebSocketNetDriver();
876
876
  driver.attach(ws);
877
877
  const client = createClient(clientIndex, driver);
878
+ client.lastMessage = this.sv.frame;
878
879
  this.svs.clients[clientIndex] = client;
879
880
  driver.onMessage((data) => this.onClientMessage(client, data));
880
881
  driver.onClose(() => this.onClientDisconnect(client));
@@ -893,6 +894,11 @@ var DedicatedServer = class {
893
894
  this.entityIndex.unlink(client.edict.index);
894
895
  }
895
896
  }
897
+ dropClient(client) {
898
+ if (client.net) {
899
+ client.net.disconnect();
900
+ }
901
+ }
896
902
  handleMove(client, cmd) {
897
903
  client.lastCmd = cmd;
898
904
  client.lastMessage = this.sv.frame;
@@ -1023,6 +1029,15 @@ var DedicatedServer = class {
1023
1029
  this.sv.time += 100;
1024
1030
  this.SV_ReadPackets();
1025
1031
  for (const client of this.svs.clients) {
1032
+ if (!client || client.state === 0 /* Free */) continue;
1033
+ if (client.state >= 2 /* Connected */) {
1034
+ const timeoutFrames = 300;
1035
+ if (this.sv.frame - client.lastMessage > timeoutFrames) {
1036
+ console.log(`Client ${client.index} timed out`);
1037
+ this.dropClient(client);
1038
+ continue;
1039
+ }
1040
+ }
1026
1041
  if (client && client.state === 4 /* Active */ && client.edict) {
1027
1042
  this.game.clientThink(client.edict, client.lastCmd);
1028
1043
  }