@rbxts/replecs 0.1.0-alpha7 → 0.1.0-alpha9-test5

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.
@@ -1,4 +1,4 @@
1
- import type { Entity, Tag, World } from "@rbxts/jecs";
1
+ import type { Entity, Pair, Tag, World } from "@rbxts/jecs";
2
2
 
3
3
  declare namespace Replecs {
4
4
  export type SerdesTable =
@@ -56,19 +56,56 @@ declare namespace Replecs {
56
56
 
57
57
  init(world?: World): void;
58
58
  destroy(): void;
59
- after_replication(callback: () => void): void;
60
59
 
61
- apply_updates(buf: buffer, all_variants?: unknown[][]): void;
62
- apply_unreliable(buf: buffer, all_variants?: unknown[][]): void;
63
- apply_full(buf: buffer, all_variants?: unknown[][]): void;
60
+ handle_global(handler: (id: number) => Entity): void;
61
+
62
+ after_replication(callback: () => void): void;
63
+ added(callback: (entity: Entity) => void): () => void;
64
+ hook<T>(
65
+ entity: Entity,
66
+ action: "changed",
67
+ relation: Pair<MemberFilter, T>,
68
+ callback: (entity: Entity, id: Entity<T>, value: T) => void
69
+ ): () => void;
70
+ hook<T>(
71
+ entity: Entity,
72
+ action: "removed",
73
+ relation: Pair<MemberFilter, T>,
74
+ callback: (entity: Entity, id: Entity<T>) => void
75
+ ): () => void;
76
+ hook(
77
+ entity: Entity,
78
+ action: "deleted",
79
+ callback: (entity: Entity) => void
80
+ ): () => void;
81
+
82
+ override<T>(
83
+ entity: Entity,
84
+ action: "changed",
85
+ relation: Pair<MemberFilter, T>,
86
+ callback: (entity: Entity, id: Entity<T>, value: any) => void
87
+ ): () => void;
88
+ override<T>(
89
+ entity: Entity,
90
+ action: "removed",
91
+ relation: Pair<MemberFilter, T>,
92
+ callback: (entity: Entity, id: Entity<T>) => void
93
+ ): () => void;
94
+ override(
95
+ entity: Entity,
96
+ action: "deleted",
97
+ callback: (entity: Entity) => void
98
+ ): () => void;
64
99
 
65
100
  encode_component(component: Entity): number;
66
101
  decode_component(encoded: number): Entity;
67
102
 
68
- handle_global(handler: (id: number) => Entity): void;
69
-
70
103
  get_server_entity(client_entity: Entity): number | undefined;
71
104
  get_client_entity(server_entity: number): Entity | undefined;
105
+
106
+ apply_updates(buf: buffer, all_variants?: unknown[][]): void;
107
+ apply_unreliable(buf: buffer, all_variants?: unknown[][]): void;
108
+ apply_full(buf: buffer, all_variants?: unknown[][]): void;
72
109
  }
73
110
 
74
111
  export interface Server {
@@ -92,6 +129,9 @@ declare namespace Replecs {
92
129
  mark_player_ready(player: Player): void;
93
130
  is_player_ready(player: Player): boolean;
94
131
 
132
+ add_player_alias(client: Player, alias: defined): void;
133
+ remove_player_alias(alias: defined): void;
134
+
95
135
  masking: MaskingController;
96
136
  }
97
137
 
@@ -23,7 +23,7 @@ local replecs = {
23
23
  networked = jecs.component() :: jecs.Entity<(MemberFilter | Player)?>,
24
24
  reliable = jecs.component() :: jecs.Entity<(MemberFilter | Player)?>,
25
25
  unreliable = jecs.component() :: jecs.Entity<(MemberFilter | Player)?>,
26
- pair = jecs.tag(),
26
+ pair = jecs.component() :: jecs.Entity<(MemberFilter | Player)?>,
27
27
 
28
28
  serdes = jecs.component() :: jecs.Entity<common.Serdes>,
29
29
  bytespan = jecs.component() :: jecs.Entity<number>,
@@ -56,6 +56,8 @@ jecs.meta(replecs.pair, jecs.Name, "replecs.pair")
56
56
  jecs.meta(replecs.shared, jecs.Name, "replecs.shared")
57
57
  jecs.meta(replecs.global, jecs.Name, "replecs.global")
58
58
 
59
+ jecs.meta(replecs.__alive_tracking__, jecs.Name, "replecs.__alive_tracking__")
60
+
59
61
  jecs.meta(replecs.custom, jecs.Exclusive)
60
62
  jecs.meta(replecs.global, jecs.Exclusive)
61
63
 
@@ -0,0 +1 @@
1
+ export type FilterGroup = {}