Skip to content

Commit 6ee30ba

Browse files
committed
Add file linkage to garry's mod platform
1 parent c6354d7 commit 6ee30ba

20 files changed

Lines changed: 65 additions & 9 deletions

File tree

docs/platforms/garrysmod/database/groups.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,10 @@
22
Read/write interface for `bsa_groups` plus scoped group-permission links (`bsa_group_permissions`).\
33
Includes local cache synchronization and interlink replication handlers.
44

5-
See [bsa_groups](../../../database/bsa_groups.md) for implementation & design requirements.\
6-
See [bsa_group_permissions](../../../database/bsa_group_permissions.md) for group-permission implementation & design requirements.
5+
!!! info
6+
See [core/database/tables/groups.lua](https://github.com/Buildstruct/bsa-platform-gmod/blob/develop/lua/bsa/core/database/tables/groups.lua) for the actual design implementation.\
7+
See [bsa_groups](../../../database/bsa_groups.md) for implementation & design requirements.\
8+
See [bsa_group_permissions](../../../database/bsa_group_permissions.md) for group-permission implementation & design requirements.
79

810
## Constants
911
- `#!ts BSA.Storage.Groups.SYSTEM = 1`

docs/platforms/garrysmod/database/interlink.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
Cross-server coordination layer for BSA database services.\
33
Manages provider/service/server identity, command fanout (`bsa_command*` tables), acknowledgement polling, and server heartbeat state.
44

5-
See [bsa_interlink](../../../database/bsa_interlink.md) for implementation & design requirements.
5+
!!! info
6+
See [core/database/interlink.lua](https://github.com/Buildstruct/bsa-platform-gmod/blob/develop/lua/bsa/core/database/interlink.lua) for actual design implementation.\
7+
See [bsa_interlink](../../../database/bsa_interlink.md) for implementation & design requirements.
68

79
## Variables
810
- `#!ts interlink.poll_rate = 5`\

docs/platforms/garrysmod/database/permissions.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
# Permissions
22
Read/write interface for global permission templates in `bsa_permissions`, with interlink replication and local cache updates.
33

4-
See [bsa_permissions](../../../database/bsa_permissions.md) for implementation & design requirements.
4+
!!! info
5+
See [core/database/tables/permissions.lua](https://github.com/Buildstruct/bsa-platform-gmod/blob/develop/lua/bsa/core/database/tables/permissions.lua) for the actual design implementation.\
6+
See [bsa_permissions](../../../database/bsa_permissions.md) for implementation & design requirements.
57

68
## Functions
79
- `#!ts permissions:sync(callback?: function(ok: boolean, err?: string))`\

docs/platforms/garrysmod/database/players.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
# Players
22
Read/write interface for `bsa_players`, `bsa_accounts`, and `bsa_player_groups` membership updates, plus account heartbeat/time synchronization.
33

4-
See [bsa_players](../../../database/bsa_players.md) for player-based implementation & design requirements.\
5-
See [bsa_accounts](../../../database/bsa_accounts.md) for account-based implementation & design requirements.\
6-
See [bsa_player_groups](../../../database/bsa_player_groups.md) for player-secondaries implementation & design requirements.
4+
!!! info
5+
See [core/database/tables/players.lua](https://github.com/Buildstruct/bsa-platform-gmod/blob/develop/lua/bsa/core/database/tables/players.lua) for the actual design implementation.\
6+
See [bsa_players](../../../database/bsa_players.md) for player-based implementation & design requirements.\
7+
See [bsa_accounts](../../../database/bsa_accounts.md) for account-based implementation & design requirements.\
8+
See [bsa_player_groups](../../../database/bsa_player_groups.md) for player-secondaries implementation & design requirements.
79

810
## Functions
911
- `#!ts players:exists_by_pid(player_id: number, callback?: function(account_data|false, secondaries?: table, err?: string))`\

docs/platforms/garrysmod/database/punishments.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
# Punishments
22
Read/write interface for `bsa_punishments` with scoped replication, active-cache management, and periodic expiration invalidation.
33

4-
See [bsa_punishments](../../../database/bsa_punishments.md) for implementation & design requirements.
4+
!!! info
5+
See [core/database/tables/punishments.lua](https://github.com/Buildstruct/bsa-platform-gmod/blob/develop/lua/bsa/core/database/tables/punishments.lua) for the actual design implementation.\
6+
See [bsa_punishments](../../../database/bsa_punishments.md) for implementation & design requirements.
57

68
## Functions
79
- `#!ts punishments:add(target: Player|string, invoker: Player|string, type: string, duration?: number, reason: string, callback?: function(entry|false, err?: string))`\

docs/platforms/garrysmod/database/variables/groups.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
# Variables: Groups
22
Replicated group state layer (`bsa_groups`) exposed as `BSA.Groups`, with helper APIs for inheritance, targeting, and permission aggregation.
33

4+
!!! info
5+
See [core/database/variables/groups.lua](https://github.com/Buildstruct/bsa-platform-gmod/blob/develop/lua/bsa/core/database/variables/groups.lua) for the actual design implementation.
6+
47
## Constants
58
- `#!ts BSA.Groups.SYSTEM = 1`
69
- `#!ts BSA.Groups.CONSOLE = 2`

docs/platforms/garrysmod/database/variables/permissions.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
# Variables: Permissions
22
Replicated permission registry (`bsa_permissions`) exposed as `BSA.Permissions`, including CAMI bridge hooks.
33

4+
!!! info
5+
See [core/database/variables/permissions.lua](https://github.com/Buildstruct/bsa-platform-gmod/blob/develop/lua/bsa/core/database/variables/permissions.lua) for the actual design implementation.
6+
47
## Functions
58
- `#!ts permissions:get(name_id: string|number): table|false`\
69
Gets permission by `name` or `perm_id`.

docs/platforms/garrysmod/database/variables/players.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
# Variables: Players
22
Replicated per-player state and player-facing helper API exposed through `BSA.Players` and patched onto the `Player` metatable.
33

4+
!!! info
5+
See [core/database/variables/players.lua](https://github.com/Buildstruct/bsa-platform-gmod/blob/develop/lua/bsa/core/database/variables/players.lua) for the actual design implementation.
6+
47
## Runtime Events
58
- `#!ts players.initialized(entity: Player)`
69
- `#!ts players.connected(steamid64: string, player?: Player)`

docs/platforms/garrysmod/database/variables/punishments.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@
22
Punishment variable bridge for player runtime state.\
33
This layer maps active storage punishments to per-player replicated variables and provides type-specific runtime checks.
44

5+
!!! info
6+
See [core/database/variables/punishments.lua](https://github.com/Buildstruct/bsa-platform-gmod/blob/develop/lua/bsa/core/database/variables/punishments.lua) for the actual design implementation.\
7+
See [core/database/punishments](https://github.com/Buildstruct/bsa-platform-gmod/tree/develop/lua/bsa/core/database/punishments) for punishment type implementations.
8+
59
## Shared Helper
610
- `#!ts BSA.Punishments.format(entry, type?: string): string?`\
711
Builds configured punishment message using scope-specific aspect text and placeholders (`id`, `aspect`, `created`, `expires`, `duration`, `invoker`, `reason`).

docs/platforms/garrysmod/interface/index.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,9 @@ Client-side UI manager for BSA, built on custom VGUI classes (`BSA.Interface.*`)
33

44
UI classes are derived from Garry's Mod VGUI controls. Some methods are inherited unchanged, some are overridden, and some are BSA-specific extensions.
55

6+
!!! info
7+
See [core/interfaces/client.lua](https://github.com/Buildstruct/bsa-platform-gmod/blob/develop/lua/bsa/core/interfaces/client.lua) for the actual design implementation.
8+
69
## Runtime Events
710
These are `dispatcher` instances on `BSA.Interface`.
811

0 commit comments

Comments
 (0)