Garry's Mod Wiki

Revision Difference

Global_Variables#561669

<cat>Dev.GettingStarted</cat> # GLOBAL TABLES ## GAMEMODE The table of the currently active gamemode, outside the gamemode files. ## GM Same as GAMEMODE, but only exists gamemode files. (gamemodes/<gamemodeName>/gamemode/*.lua) ## ENT Similar to GM, but for Scripted Entities. Exists only in the files defining the entity. (lua/entities/*.lua) ## SWEP Similar to ENT, but for Scripted Weapons. Exists only in the files defining the weapon. (lua/weapons/*.lua) ## EFFECT Similar to ENT, but for Scripted Effects. Exists only in the files defining the effect. (lua/effects/*.lua) ## _G This table contains all global objects, including itself. ## _MODULES Contains a list of all modules loaded from /modules/. # NON CONSTANTS ## CLIENT This is true whenever the current script is executed on the client. ( client and menu states ) See <page>States</page>. Always present. ## CLIENT_DLL This is true whenever the current script is executed on the client state. See <page>States</page>. ## SERVER This is true whenever the current script is executed on the server state. See <page>States</page>. Always present. ## GAME_DLL This is true whenever the current script is executed on the server state. ## MENU_DLL This is true when the script is being executed in the menu state. See <page>States</page>. ## GAMEMODE_NAME Contains the name of the current active gamemode. ## NULL Represents a non existent entity. ## VERSION Contains the version number of GMod. Example: `"201211"` ## VERSIONSTR Contains a nicely formatted version of GMod. Example: `"2020.12.11"` ## BRANCH The branch the game is running on. This will be `"unknown"` on main branch. ## _VERSION Current Lua version. This contains `"Lua 5.1"` in GMod at the moment. ## NETVERSIONSTR Contains the current networking version. Example: `"2023.06.28"` <note>This only exists in the Menu state</note> ## g_ Shortcuts ``` Shortcut pointers to important clientside objects. ``` ⤶ Variable | Description | ---------|-------------|⤶ g_SkyPaint | The active *env_skypaint* entity. ([View Source](https://github.com/garrynewman/garrysmod/blob/master/garrysmod/gamemodes/base/entities/entities/env_skypaint.lua)) |⤶ g_ContextMenu | Base panel used for context menus. ([View Source](https://github.com/garrynewman/garrysmod/blob/master/garrysmod/gamemodes/sandbox/gamemode/spawnmenu/contextmenu.lua#L145)) |⤶ g_VoicePanelList | Base panel for displaying incoming/outgoing voice messages. ([View Source](https://github.com/garrynewman/garrysmod/blob/master/garrysmod/gamemodes/base/gamemode/cl_voice.lua#L133)) |⤶ g_SpawnMenu | Base panel for the spawn menu. ([View Source](https://github.com/garrynewman/garrysmod/blob/master/garrysmod/gamemodes/sandbox/gamemode/spawnmenu/spawnmenu.lua#L243)) |⤶ pnlMainMenu | Main menu of Gmod. (only available in the menu state. [View Source](https://github.com/Facepunch/garrysmod/blob/master/garrysmod/lua/menu/mainmenu.lua#L481)) ⤶ | Variable | Source | Description | |:------------:|:------:|:------------|⤶ | `g_SkyPaint` | [![GitHub]][g_SkyPaint] | The active *env_skypaint* entity.| `g_ContextMenu` | [![GitHub]][g_ContextMenu] | Base panel used for context menus.| `g_VoicePanelList` | [![GitHub]][g_VoicePanelList] | Base panel for displaying incoming/outgoing voice messages.| `g_SpawnMenu` | [![GitHub]][g_SpawnMenu] | Base panel for the spawn menu.| `pnlMainMenu` | [![GitHub]][pnlMainMenu] | Main menu of Gmod. (only available in the menu state. ⤶ ⤶ [GitHub]: https://files.facepunch.com/wiki/files/b5608/8dc55c44e553869.webp⤶ ⤶ [g_VoicePanelList]: https://github.com/garrynewman/garrysmod/blob/master/garrysmod/gamemodes/base/gamemode/cl_voice.lua#L133⤶ [g_ContextMenu]: https://github.com/garrynewman/garrysmod/blob/master/garrysmod/gamemodes/sandbox/gamemode/spawnmenu/contextmenu.lua#L145⤶ [g_SpawnMenu]: https://github.com/garrynewman/garrysmod/blob/master/garrysmod/gamemodes/sandbox/gamemode/spawnmenu/spawnmenu.lua#L243⤶ [pnlMainMenu]: https://github.com/Facepunch/garrysmod/blob/master/garrysmod/lua/menu/mainmenu.lua#L481⤶ [g_SkyPaint]: https://github.com/garrynewman/garrysmod/blob/master/garrysmod/gamemodes/base/entities/entities/env_skypaint.lua⤶ # CONSTANTS ## MISC ``` vector_origin = Vector( 0, 0, 0 ) vector_up = Vector( 0, 0, 1 ) angle_zero = Angle( 0, 0, 0 ) color_white = Color( 255, 255, 255, 255 ) color_black = Color( 0, 0, 0, 255 ) color_transparent = Color( 255, 255, 255, 0 ) ``` ## ENUMS Almost all enumerations are globals.