Added Sync Tables to lua documentation

This commit is contained in:
MysterD 2022-02-01 18:52:26 -08:00
parent 9a3796f0b8
commit 1cce3dd884
2 changed files with 40 additions and 9 deletions

38
docs/lua/globals.md Normal file
View file

@ -0,0 +1,38 @@
## [:rewind: Lua Reference](lua.md)
# Globals
Globals are variables that are always exposed to the Lua API.
<br />
## [gMarioStates](#gMarioStates)
The `gMarioStates[]` table is an array from `0` to `(MAX_PLAYERS - 1)` that contains a [MarioState](structs.md#MarioState) struct for each possible player.
It is indexed by the local `playerIndex`, so `gMarioStates[0]` is always the local player.
[:arrow_up_small:](#)
<br />
## [gCharacter](#gCharacter)
The `gCharacter[]` table is an array from `0` to `(CT_MAX - 1)` that contains a [Character](structs.md#Character) struct for each possible character.
[:arrow_up_small:](#)
<br />
## [gGlobalSyncTable](#gGlobalSyncTable)
The `gGlobalSyncTable` is a table used for networking. Any field set inside of this table is automatically synchronized with all other clients. Do not use this table for player-specific variables, keep those in [gPlayerSyncTable](#gPlayerSyncTable). Player-specific variable will desynchronize within this table since it doesn't automatically translate `playerIndex`.
[:arrow_up_small:](#)
<br />
## [gPlayerSyncTable](#gPlayerSyncTable)
The `gPlayerSyncTable[]` is an array from 0 to `(MAX_PLAYERS - 1)` that is used for networking. Any field set inside of this table is automatically synchronized with all other clients.
It is indexed by the local `playerIndex`, so `gPlayerSyncTable[0]` is always for the local player.
The underlying networking system will automatically translate the local `playerIndex` so that the field is set for the correct player.
[:arrow_up_small:](#)

View file

@ -11,15 +11,8 @@ Lua scripts you make can be placed either the `mods` folder in the base director
<br />
## Globals
| Identifier | Type | Description |
| :-------- | :--: | :---------: |
| gMarioStates[MAX_PLAYERS] | [MarioState](structs.md#MarioState) | An array of length MAX_PLAYERS containing mario states |
| gCharacter[CT_MAX] | [Character](structs.md#Character) | An array of length CT_MAX containing character information |
<br />
## Exposed from SM64
## Sections
- [Globals](globals.md)
- [Hooks](hooks.md)
- [Constants](constants.md)
- [Functions](functions.md)