@tlua/gmod 1.0.4 → 1.0.5

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 (214) hide show
  1. package/package.json +1 -1
  2. package/types/achievements.d.tlua +15 -45
  3. package/types/ai.d.tlua +5 -15
  4. package/types/angle.d.tlua +18 -54
  5. package/types/baseclass.d.tlua +2 -4
  6. package/types/bf_read.d.tlua +11 -32
  7. package/types/bit.d.tlua +11 -33
  8. package/types/cam.d.tlua +16 -48
  9. package/types/ceffectdata.d.tlua +32 -95
  10. package/types/chat.d.tlua +5 -15
  11. package/types/cleanup.d.tlua +7 -21
  12. package/types/cluaemitter.d.tlua +12 -35
  13. package/types/clualocomotion.d.tlua +40 -119
  14. package/types/cluaparticle.d.tlua +44 -131
  15. package/types/cmovedata.d.tlua +47 -140
  16. package/types/cnavarea.d.tlua +77 -230
  17. package/types/cnavladder.d.tlua +22 -65
  18. package/types/cnewparticleeffect.d.tlua +26 -77
  19. package/types/color.d.tlua +28 -84
  20. package/types/concommand.d.tlua +4 -12
  21. package/types/constraint.d.tlua +28 -84
  22. package/types/construct.d.tlua +1 -3
  23. package/types/contentheader.d.tlua +3 -6
  24. package/types/contenticon.d.tlua +9 -24
  25. package/types/contentsidebar.d.tlua +4 -9
  26. package/types/contextbase.d.tlua +4 -9
  27. package/types/controlpanel.d.tlua +18 -40
  28. package/types/controlpresets.d.tlua +13 -36
  29. package/types/convar.d.tlua +16 -47
  30. package/types/cookie.d.tlua +3 -9
  31. package/types/coroutine.d.tlua +7 -21
  32. package/types/crecipientfilter.d.tlua +16 -47
  33. package/types/csoundpatch.d.tlua +14 -41
  34. package/types/ctakedamageinfo.d.tlua +33 -98
  35. package/types/ctrlnumpad.d.tlua +6 -17
  36. package/types/cusercmd.d.tlua +27 -80
  37. package/types/cvars.d.tlua +6 -18
  38. package/types/dadjustablemodelpanel.d.tlua +7 -18
  39. package/types/dalphabar.d.tlua +3 -6
  40. package/types/dbinder.d.tlua +4 -9
  41. package/types/dbubblecontainer.d.tlua +2 -3
  42. package/types/dbutton.d.tlua +8 -21
  43. package/types/dcheckbox.d.tlua +5 -12
  44. package/types/dcheckboxlabel.d.tlua +9 -27
  45. package/types/dcollapsiblecategory.d.tlua +23 -66
  46. package/types/dcolorbutton.d.tlua +7 -18
  47. package/types/dcolorcombo.d.tlua +5 -12
  48. package/types/dcolorcube.d.tlua +13 -36
  49. package/types/dcolormixer.d.tlua +27 -78
  50. package/types/dcolorpalette.d.tlua +23 -66
  51. package/types/dcolumnsheet.d.tlua +5 -12
  52. package/types/dcombobox.d.tlua +17 -48
  53. package/types/ddragbase.d.tlua +13 -36
  54. package/types/ddrawer.d.tlua +8 -21
  55. package/types/debug.d.tlua +44 -76
  56. package/types/debugoverlay.d.tlua +11 -33
  57. package/types/dentityproperties.d.tlua +5 -12
  58. package/types/derma.d.tlua +10 -30
  59. package/types/dexpandbutton.d.tlua +3 -6
  60. package/types/dfilebrowser.d.tlua +20 -60
  61. package/types/dform.d.tlua +18 -51
  62. package/types/dframe.d.tlua +24 -72
  63. package/types/dgrid.d.tlua +11 -30
  64. package/types/dhorizontaldivider.d.tlua +20 -57
  65. package/types/dhorizontalscroller.d.tlua +11 -30
  66. package/types/dhscrollbar.d.tlua +11 -30
  67. package/types/dhtml.d.tlua +8 -21
  68. package/types/dhtmlcontrols.d.tlua +5 -15
  69. package/types/diconbrowser.d.tlua +11 -30
  70. package/types/diconlayout.d.tlua +18 -51
  71. package/types/dimage.d.tlua +20 -55
  72. package/types/dimagebutton.d.tlua +9 -27
  73. package/types/dlabel.d.tlua +33 -96
  74. package/types/dlabeleditable.d.tlua +5 -12
  75. package/types/dlabelurl.d.tlua +10 -27
  76. package/types/dlistbox.d.tlua +8 -21
  77. package/types/dlistboxitem.d.tlua +4 -9
  78. package/types/dlistview.d.tlua +34 -99
  79. package/types/dlistview_column.d.tlua +14 -39
  80. package/types/dlistview_line.d.tlua +13 -36
  81. package/types/dmenu.d.tlua +28 -75
  82. package/types/dmenubar.d.tlua +6 -11
  83. package/types/dmenuoption.d.tlua +13 -36
  84. package/types/dmenuoptioncvar.d.tlua +6 -15
  85. package/types/dmodelpanel.d.tlua +22 -63
  86. package/types/dmodelselect.d.tlua +2 -3
  87. package/types/dmodelselectmulti.d.tlua +2 -3
  88. package/types/dnotify.d.tlua +10 -27
  89. package/types/dnumberscratch.d.tlua +26 -75
  90. package/types/dnumberwang.d.tlua +16 -45
  91. package/types/dnumslider.d.tlua +17 -51
  92. package/types/dpanel.d.tlua +14 -39
  93. package/types/dpanellist.d.tlua +11 -33
  94. package/types/dpaneloverlay.d.tlua +7 -18
  95. package/types/dpanpanel.d.tlua +6 -15
  96. package/types/dprogress.d.tlua +3 -6
  97. package/types/dproperties.d.tlua +4 -9
  98. package/types/dproperty_combo.d.tlua +3 -6
  99. package/types/dproperty_generic.d.tlua +5 -12
  100. package/types/dpropertysheet.d.tlua +26 -56
  101. package/types/dragndrop.d.tlua +10 -30
  102. package/types/draw.d.tlua +11 -31
  103. package/types/drgbpicker.d.tlua +4 -9
  104. package/types/drive.d.tlua +18 -41
  105. package/types/dscrollpanel.d.tlua +10 -30
  106. package/types/dshape.d.tlua +7 -18
  107. package/types/dsizetocontents.d.tlua +5 -12
  108. package/types/dslider.d.tlua +28 -81
  109. package/types/dsprite.d.tlua +9 -24
  110. package/types/dtab.d.tlua +8 -21
  111. package/types/dtextentry.d.tlua +43 -126
  112. package/types/dtilelayout.d.tlua +21 -60
  113. package/types/dtooltip.d.tlua +6 -15
  114. package/types/dtree.d.tlua +16 -45
  115. package/types/dtree_node.d.tlua +68 -201
  116. package/types/duplicator.d.tlua +30 -88
  117. package/types/dverticaldivider.d.tlua +23 -66
  118. package/types/dvscrollbar.d.tlua +11 -30
  119. package/types/effect.d.tlua +4 -9
  120. package/types/effects.d.tlua +6 -18
  121. package/types/engine.d.tlua +21 -63
  122. package/types/entity.d.tlua +676 -1962
  123. package/types/ents.d.tlua +23 -61
  124. package/types/file.d.tlua +39 -117
  125. package/types/frame_blend.d.tlua +7 -21
  126. package/types/game.d.tlua +39 -117
  127. package/types/gameevent.d.tlua +4 -8
  128. package/types/gamemode.d.tlua +3 -7
  129. package/types/gm.d.tlua +267 -800
  130. package/types/gmsave.d.tlua +4 -12
  131. package/types/gui.d.tlua +21 -63
  132. package/types/gwen.d.tlua +3 -9
  133. package/types/halo.d.tlua +2 -6
  134. package/types/hook.d.tlua +4 -12
  135. package/types/http.d.tlua +1 -3
  136. package/types/iconeditor.d.tlua +11 -30
  137. package/types/igmodaudiochannel.d.tlua +41 -122
  138. package/types/imagecheckbox.d.tlua +4 -9
  139. package/types/imaterial.d.tlua +26 -77
  140. package/types/imesh.d.tlua +5 -14
  141. package/types/input.d.tlua +24 -68
  142. package/types/irestore.d.tlua +9 -26
  143. package/types/isave.d.tlua +9 -26
  144. package/types/itexture.d.tlua +10 -29
  145. package/types/ivideowriter.d.tlua +5 -14
  146. package/types/jit.d.tlua +21 -53
  147. package/types/killicon.d.tlua +7 -21
  148. package/types/language.d.tlua +1 -3
  149. package/types/list.d.tlua +8 -24
  150. package/types/markup.d.tlua +2 -6
  151. package/types/markupobject.d.tlua +5 -14
  152. package/types/math.d.tlua +277 -447
  153. package/types/matproxy.d.tlua +3 -9
  154. package/types/matselect.d.tlua +11 -30
  155. package/types/menubar.d.tlua +2 -6
  156. package/types/mesh.d.tlua +19 -57
  157. package/types/motionsensor.d.tlua +10 -30
  158. package/types/navmesh.d.tlua +26 -78
  159. package/types/net.d.tlua +52 -154
  160. package/types/nextbot.d.tlua +46 -116
  161. package/types/notification.d.tlua +2 -6
  162. package/types/npc.d.tlua +182 -543
  163. package/types/numpad.d.tlua +7 -21
  164. package/types/os.d.tlua +4 -10
  165. package/types/panel.d.tlua +333 -991
  166. package/types/pathfollower.d.tlua +31 -92
  167. package/types/permissions.d.tlua +6 -18
  168. package/types/physcollide.d.tlua +3 -8
  169. package/types/physenv.d.tlua +11 -33
  170. package/types/physobj.d.tlua +78 -233
  171. package/types/player.d.tlua +302 -880
  172. package/types/player_manager.d.tlua +13 -39
  173. package/types/presets.d.tlua +6 -18
  174. package/types/projectedtexture.d.tlua +48 -143
  175. package/types/properties.d.tlua +5 -15
  176. package/types/propselect.d.tlua +5 -12
  177. package/types/render.d.tlua +142 -426
  178. package/types/resource.d.tlua +2 -6
  179. package/types/sandbox.d.tlua +54 -159
  180. package/types/saverestore.d.tlua +12 -36
  181. package/types/schedule.d.tlua +6 -17
  182. package/types/scripted_ents.d.tlua +11 -29
  183. package/types/search.d.tlua +1 -3
  184. package/types/serverlist.d.tlua +7 -21
  185. package/types/sound.d.tlua +10 -30
  186. package/types/spawnicon.d.tlua +8 -21
  187. package/types/spawnmenu.d.tlua +24 -70
  188. package/types/spawnmenucontentpanel.d.tlua +5 -12
  189. package/types/sql.d.tlua +9 -27
  190. package/types/stack.d.tlua +5 -14
  191. package/types/steamworks.d.tlua +18 -54
  192. package/types/string.d.tlua +49 -141
  193. package/types/surface.d.tlua +34 -102
  194. package/types/surfaceinfo.d.tlua +5 -14
  195. package/types/system.d.tlua +10 -30
  196. package/types/table.d.tlua +47 -137
  197. package/types/task.d.tlua +9 -26
  198. package/types/team.d.tlua +19 -57
  199. package/types/timer.d.tlua +14 -42
  200. package/types/tool.d.tlua +46 -131
  201. package/types/ugcpublishwindow.d.tlua +9 -24
  202. package/types/umsg.d.tlua +12 -36
  203. package/types/undo.d.tlua +10 -30
  204. package/types/usermessage.d.tlua +2 -6
  205. package/types/utf8.d.tlua +7 -21
  206. package/types/util.d.tlua +94 -274
  207. package/types/vector.d.tlua +36 -108
  208. package/types/vehicle.d.tlua +52 -149
  209. package/types/vgui.d.tlua +18 -46
  210. package/types/vmatrix.d.tlua +35 -105
  211. package/types/weapon.d.tlua +85 -248
  212. package/types/weapons.d.tlua +6 -16
  213. package/types/widgets.d.tlua +1 -3
  214. package/types/workshopfilebase.d.tlua +5 -14
package/types/gm.d.tlua CHANGED
@@ -7,8 +7,6 @@
7
7
  *
8
8
  * @source https://wiki.facepunch.com/gmod/GM_Hooks
9
9
  */
10
- interface GM {}
11
-
12
10
  interface GM {
13
11
  /**
14
12
  * Called when a map I/O event occurs.
@@ -19,9 +17,6 @@ interface GM {
19
17
  * @source https://wiki.facepunch.com/gmod/GM:AcceptInput
20
18
  */
21
19
  AcceptInput(self: GM, ent: Entity, input: string, activator: Entity, caller: Entity, value: any): boolean;
22
- }
23
-
24
- interface GM {
25
20
  /**
26
21
  * Adds a death notice entry.
27
22
  *
@@ -29,18 +24,12 @@ interface GM {
29
24
  * @source https://wiki.facepunch.com/gmod/GM:AddDeathNotice
30
25
  */
31
26
  AddDeathNotice(self: GM, attacker: string, attackerTeam: number, inflictor: string, victim: string, victimTeam: number): any;
32
- }
33
-
34
- interface GM {
35
27
  /**
36
28
  * Allows you to adjust the mouse sensitivity.
37
29
  * @realm client
38
30
  * @source https://wiki.facepunch.com/gmod/GM:AdjustMouseSensitivity
39
31
  */
40
32
  AdjustMouseSensitivity(self: GM, defaultSensitivity: number, localFOV: number, defaultFOV: number): number;
41
- }
42
-
43
- interface GM {
44
33
  /**
45
34
  * Called when a player tries to pick up something using the "use" key, return to override.
46
35
  *
@@ -53,9 +42,6 @@ interface GM {
53
42
  * @source https://wiki.facepunch.com/gmod/GM:AllowPlayerPickup
54
43
  */
55
44
  AllowPlayerPickup(self: GM, ply: Player, ent: Entity): boolean;
56
- }
57
-
58
- interface GM {
59
45
  /**
60
46
  * This hook is used to calculate animations for a player.
61
47
  *
@@ -66,9 +52,6 @@ interface GM {
66
52
  * @source https://wiki.facepunch.com/gmod/GM:CalcMainActivity
67
53
  */
68
54
  CalcMainActivity(self: GM, ply: Player, vel: Vector): (number, number);
69
- }
70
-
71
- interface GM {
72
55
  /**
73
56
  * Called from [GM:CalcView](https://wiki.facepunch.com/gmod/GM:CalcView) when player is in driving a vehicle.
74
57
  *
@@ -78,36 +61,24 @@ interface GM {
78
61
  * @source https://wiki.facepunch.com/gmod/GM:CalcVehicleView
79
62
  */
80
63
  CalcVehicleView(self: GM, veh: Vehicle, ply: Player, view: CamData): table;
81
- }
82
-
83
- interface GM {
84
64
  /**
85
65
  * Allows override of the default view.
86
66
  * @realm client
87
67
  * @source https://wiki.facepunch.com/gmod/GM:CalcView
88
68
  */
89
69
  CalcView(self: GM, ply: Player, origin: Vector, angles: Angle, fov: number, znear: number, zfar: number): CamData;
90
- }
91
-
92
- interface GM {
93
70
  /**
94
71
  * Allows overriding the position and angle of the viewmodel.
95
72
  * @realm client
96
73
  * @source https://wiki.facepunch.com/gmod/GM:CalcViewModelView
97
74
  */
98
75
  CalcViewModelView(self: GM, wep: Weapon, vm: Entity, oldPos: Vector, oldAng: Angle, pos: Vector, ang: Angle): (Vector, Angle);
99
- }
100
-
101
- interface GM {
102
76
  /**
103
77
  * Called whenever a players tries to create an undo.
104
78
  * @realm server
105
79
  * @source https://wiki.facepunch.com/gmod/GM:CanCreateUndo
106
80
  */
107
81
  CanCreateUndo(self: GM, ply: Player, undo: Undo): boolean;
108
- }
109
-
110
- interface GM {
111
82
  /**
112
83
  * Called when a variable is about to be edited on an Entity (called by `Edit Properties...` menu), to determine if the edit should be permitted.
113
84
  *
@@ -119,9 +90,6 @@ interface GM {
119
90
  * @source https://wiki.facepunch.com/gmod/GM:CanEditVariable
120
91
  */
121
92
  CanEditVariable(self: GM, ent: Entity, ply: Player, key: string, value: string, editor: table): boolean;
122
- }
123
-
124
- interface GM {
125
93
  /**
126
94
  * Determines if the player can exit the vehicle on their own. [Player:ExitVehicle](https://wiki.facepunch.com/gmod/Player:ExitVehicle) will bypass this hook.
127
95
  *
@@ -132,9 +100,6 @@ interface GM {
132
100
  * @source https://wiki.facepunch.com/gmod/GM:CanExitVehicle
133
101
  */
134
102
  CanExitVehicle(self: GM, veh: Vehicle, ply: Player): boolean;
135
- }
136
-
137
- interface GM {
138
103
  /**
139
104
  * Determines whether or not a given player player can enter the given vehicle. [Player:EnterVehicle](https://wiki.facepunch.com/gmod/Player:EnterVehicle) will still call this hook.
140
105
  *
@@ -144,45 +109,30 @@ interface GM {
144
109
  * @source https://wiki.facepunch.com/gmod/GM:CanPlayerEnterVehicle
145
110
  */
146
111
  CanPlayerEnterVehicle(self: GM, player: Player, vehicle: Vehicle, role: number): boolean;
147
- }
148
-
149
- interface GM {
150
112
  /**
151
113
  * Determines if the player can kill themselves using the `kill` or `explode` console commands.
152
114
  * @realm server
153
115
  * @source https://wiki.facepunch.com/gmod/GM:CanPlayerSuicide
154
116
  */
155
117
  CanPlayerSuicide(self: GM, player: Player): boolean;
156
- }
157
-
158
- interface GM {
159
118
  /**
160
119
  * Determines if the player can unfreeze the entity.
161
120
  * @realm server
162
121
  * @source https://wiki.facepunch.com/gmod/GM:CanPlayerUnfreeze
163
122
  */
164
123
  CanPlayerUnfreeze(self: GM, player: Player, entity: Entity, phys: PhysObj): boolean;
165
- }
166
-
167
- interface GM {
168
124
  /**
169
125
  * Controls if a [property](https://wiki.facepunch.com/gmod/properties) can be used or not.
170
126
  * @realm shared
171
127
  * @source https://wiki.facepunch.com/gmod/GM:CanProperty
172
128
  */
173
129
  CanProperty(self: GM, ply: Player, property: string, ent: Entity): boolean;
174
- }
175
-
176
- interface GM {
177
130
  /**
178
131
  * Called whenever a players tries to undo.
179
132
  * @realm server
180
133
  * @source https://wiki.facepunch.com/gmod/GM:CanUndo
181
134
  */
182
135
  CanUndo(self: GM, ply: Player, undo: Undo): boolean;
183
- }
184
-
185
- interface GM {
186
136
  /**
187
137
  * Called each frame to record demos to video using [IVideoWriter](https://wiki.facepunch.com/gmod/IVideoWriter).
188
138
  *
@@ -193,9 +143,6 @@ interface GM {
193
143
  * @source https://wiki.facepunch.com/gmod/GM:CaptureVideo
194
144
  */
195
145
  CaptureVideo(self: GM): void;
196
- }
197
-
198
- interface GM {
199
146
  /**
200
147
  * Called when a message is printed to the chat box. Note, that this isn't working with player messages even though there are arguments for it.
201
148
  *
@@ -205,18 +152,12 @@ interface GM {
205
152
  * @source https://wiki.facepunch.com/gmod/GM:ChatText
206
153
  */
207
154
  ChatText(self: GM, index: number, name: string, text: string, type: string): boolean;
208
- }
209
-
210
- interface GM {
211
155
  /**
212
156
  * Called whenever the content of the user's chat input box is changed.
213
157
  * @realm client
214
158
  * @source https://wiki.facepunch.com/gmod/GM:ChatTextChanged
215
159
  */
216
160
  ChatTextChanged(self: GM, text: string): void;
217
- }
218
-
219
- interface GM {
220
161
  /**
221
162
  * Called when a **non local player** connects to allow the Lua system to check the password.
222
163
  *
@@ -226,9 +167,6 @@ interface GM {
226
167
  * @source https://wiki.facepunch.com/gmod/GM:CheckPassword
227
168
  */
228
169
  CheckPassword(self: GM, steamID64: string, ipAddress: string, svPassword: string, clPassword: string, name: string): (boolean, string);
229
- }
230
-
231
- interface GM {
232
170
  /**
233
171
  * Called when a player's sign on state changes.
234
172
  * You cannot get a valid player object from the userID at any point during this hook.
@@ -237,18 +175,12 @@ interface GM {
237
175
  * @source https://wiki.facepunch.com/gmod/GM:ClientSignOnStateChanged
238
176
  */
239
177
  ClientSignOnStateChanged(self: GM, userID: number, oldState: number, newState: number): void;
240
- }
241
-
242
- interface GM {
243
178
  /**
244
179
  * Called when derma menus are closed with [Global.CloseDermaMenus](https://wiki.facepunch.com/gmod/Global.CloseDermaMenus).
245
180
  * @realm client and menu
246
181
  * @source https://wiki.facepunch.com/gmod/GM:CloseDermaMenus
247
182
  */
248
183
  CloseDermaMenus(self: GM): void;
249
- }
250
-
251
- interface GM {
252
184
  /**
253
185
  * Called whenever an entity becomes a clientside ragdoll.
254
186
  *
@@ -258,9 +190,6 @@ interface GM {
258
190
  * @source https://wiki.facepunch.com/gmod/GM:CreateClientsideRagdoll
259
191
  */
260
192
  CreateClientsideRagdoll(self: GM, entity: Entity, ragdoll: Entity): void;
261
- }
262
-
263
- interface GM {
264
193
  /**
265
194
  * Called when a serverside ragdoll of an entity has been created.
266
195
  *
@@ -270,9 +199,6 @@ interface GM {
270
199
  * @source https://wiki.facepunch.com/gmod/GM:CreateEntityRagdoll
271
200
  */
272
201
  CreateEntityRagdoll(self: GM, owner: Entity, ragdoll: Entity): void;
273
- }
274
-
275
- interface GM {
276
202
  /**
277
203
  * Allows you to change the players movements before they're sent to the server.
278
204
  *
@@ -285,9 +211,6 @@ interface GM {
285
211
  * @source https://wiki.facepunch.com/gmod/GM:CreateMove
286
212
  */
287
213
  CreateMove(self: GM, cmd: CUserCmd): boolean;
288
- }
289
-
290
- interface GM {
291
214
  /**
292
215
  * Teams are created within this hook using [team.SetUp](https://wiki.facepunch.com/gmod/team.SetUp).
293
216
  *
@@ -297,18 +220,12 @@ interface GM {
297
220
  * @source https://wiki.facepunch.com/gmod/GM:CreateTeams
298
221
  */
299
222
  CreateTeams(self: GM): void;
300
- }
301
-
302
- interface GM {
303
223
  /**
304
224
  * Called upon an animation event, this is the ideal place to call player animation functions such as [Player:AddVCDSequenceToGestureSlot](https://wiki.facepunch.com/gmod/Player:AddVCDSequenceToGestureSlot), [Player:AnimRestartGesture](https://wiki.facepunch.com/gmod/Player:AnimRestartGesture) and so on.
305
225
  * @realm shared
306
226
  * @source https://wiki.facepunch.com/gmod/GM:DoAnimationEvent
307
227
  */
308
228
  DoAnimationEvent(self: GM, ply: Player, event: number, data?: number): number;
309
- }
310
-
311
- interface GM {
312
229
  /**
313
230
  * Handles the player's death.
314
231
  *
@@ -325,27 +242,18 @@ interface GM {
325
242
  * @source https://wiki.facepunch.com/gmod/GM:DoPlayerDeath
326
243
  */
327
244
  DoPlayerDeath(self: GM, ply: Player, attacker: Entity, dmg: CTakeDamageInfo): void;
328
- }
329
-
330
- interface GM {
331
245
  /**
332
246
  * This hook is called every frame to draw all of the current death notices.
333
247
  * @realm client
334
248
  * @source https://wiki.facepunch.com/gmod/GM:DrawDeathNotice
335
249
  */
336
250
  DrawDeathNotice(self: GM, x: number, y: number): void;
337
- }
338
-
339
- interface GM {
340
251
  /**
341
252
  * Called every frame before drawing the in-game monitors ( Breencast, in-game TVs, etc ), but doesn't seem to be doing anything, trying to render 2D or 3D elements fail.
342
253
  * @realm client
343
254
  * @source https://wiki.facepunch.com/gmod/GM:DrawMonitors
344
255
  */
345
256
  DrawMonitors(self: GM): void;
346
- }
347
-
348
- interface GM {
349
257
  /**
350
258
  * Called after all other 2D draw hooks are called. Draws over all VGUI Panels and HUDs.
351
259
  *
@@ -359,9 +267,6 @@ interface GM {
359
267
  * @source https://wiki.facepunch.com/gmod/GM:DrawOverlay
360
268
  */
361
269
  DrawOverlay(self: GM): void;
362
- }
363
-
364
- interface GM {
365
270
  /**
366
271
  * Allows you to override physgun effects rendering.
367
272
  *
@@ -372,18 +277,12 @@ interface GM {
372
277
  * @source https://wiki.facepunch.com/gmod/GM:DrawPhysgunBeam
373
278
  */
374
279
  DrawPhysgunBeam(self: GM, ply: Player, physgun: Weapon, enabled: boolean, target: Entity, physBone: number, hitPos: Vector): boolean;
375
- }
376
-
377
- interface GM {
378
280
  /**
379
281
  * Called right before an entity stops driving. Overriding this hook will cause it to not call [drive.End](https://wiki.facepunch.com/gmod/drive.End) and the player will not stop driving.
380
282
  * @realm shared
381
283
  * @source https://wiki.facepunch.com/gmod/GM:EndEntityDriving
382
284
  */
383
285
  EndEntityDriving(self: GM, ent: Entity, ply: Player): void;
384
- }
385
-
386
- interface GM {
387
286
  /**
388
287
  * Called whenever a sound has been played. This will not be called clientside if the server played the sound without the client also calling [Entity:EmitSound](https://wiki.facepunch.com/gmod/Entity:EmitSound).
389
288
  *
@@ -391,9 +290,6 @@ interface GM {
391
290
  * @source https://wiki.facepunch.com/gmod/GM:EntityEmitSound
392
291
  */
393
292
  EntityEmitSound(self: GM, data: EmitSoundInfo): boolean;
394
- }
395
-
396
- interface GM {
397
293
  /**
398
294
  * Called every time a bullet is about to be fired from an entity, which allows to completely modify the bullet structure before the bullet is actually fired.
399
295
  *
@@ -406,9 +302,6 @@ interface GM {
406
302
  * @source https://wiki.facepunch.com/gmod/GM:EntityFireBullets
407
303
  */
408
304
  EntityFireBullets(self: GM, entity: Entity, data: Bullet): boolean;
409
- }
410
-
411
- interface GM {
412
305
  /**
413
306
  * Called when a key-value pair is set on an entity on map spawn. Is **not** called by [Entity:SetKeyValue](https://wiki.facepunch.com/gmod/Entity:SetKeyValue).
414
307
  *
@@ -418,9 +311,6 @@ interface GM {
418
311
  * @source https://wiki.facepunch.com/gmod/GM:EntityKeyValue
419
312
  */
420
313
  EntityKeyValue(self: GM, ent: Entity, key: string, value: string): string;
421
- }
422
-
423
- interface GM {
424
314
  /**
425
315
  * Called when an NW2Var is changed.
426
316
  * If a NW2Var is set on an entity that is based on a Lua Entity could result in the NW2Var being mixed up with other ones and being updated multiple times.
@@ -434,9 +324,6 @@ interface GM {
434
324
  * @source https://wiki.facepunch.com/gmod/GM:EntityNetworkedVarChanged
435
325
  */
436
326
  EntityNetworkedVarChanged(self: GM, ent: Entity, name: string, oldval: any, newval: any): void;
437
- }
438
-
439
- interface GM {
440
327
  /**
441
328
  * Called right before removal of an entity.
442
329
  * **WARNING**: This hook is called clientside during full updates due to how networking works in the Source Engine.
@@ -448,9 +335,6 @@ interface GM {
448
335
  * @source https://wiki.facepunch.com/gmod/GM:EntityRemoved
449
336
  */
450
337
  EntityRemoved(self: GM, ent: Entity, fullUpdate: boolean): void;
451
- }
452
-
453
- interface GM {
454
338
  /**
455
339
  * Called when an entity is about to take damage. You can modify all parts of the damage info in this hook or completely block the damage event.
456
340
  *
@@ -463,9 +347,6 @@ interface GM {
463
347
  * @source https://wiki.facepunch.com/gmod/GM:EntityTakeDamage
464
348
  */
465
349
  EntityTakeDamage(self: GM, target: Entity, dmg: CTakeDamageInfo): boolean;
466
- }
467
-
468
- interface GM {
469
350
  /**
470
351
  * This hook polls the entity the player use action should be applied to.
471
352
  *
@@ -476,18 +357,12 @@ interface GM {
476
357
  * @source https://wiki.facepunch.com/gmod/GM:FindUseEntity
477
358
  */
478
359
  FindUseEntity(self: GM, ply: Player, defaultEnt: Entity): Entity;
479
- }
480
-
481
- interface GM {
482
360
  /**
483
361
  * Runs when user cancels/finishes typing.
484
362
  * @realm client
485
363
  * @source https://wiki.facepunch.com/gmod/GM:FinishChat
486
364
  */
487
365
  FinishChat(self: GM): void;
488
- }
489
-
490
- interface GM {
491
366
  /**
492
367
  * Called after [GM:Move](https://wiki.facepunch.com/gmod/GM:Move), applies all the changes from the [CMoveData](https://wiki.facepunch.com/gmod/CMoveData) to the player.
493
368
  *
@@ -497,9 +372,6 @@ interface GM {
497
372
  * @source https://wiki.facepunch.com/gmod/GM:FinishMove
498
373
  */
499
374
  FinishMove(self: GM, ply: Player, mv: CMoveData): boolean;
500
- }
501
-
502
- interface GM {
503
375
  /**
504
376
  * Called to allow override of the default Derma skin for all panels.
505
377
  *
@@ -512,9 +384,6 @@ interface GM {
512
384
  * @source https://wiki.facepunch.com/gmod/GM:ForceDermaSkin
513
385
  */
514
386
  ForceDermaSkin(self: GM): string;
515
- }
516
-
517
- interface GM {
518
387
  /**
519
388
  * Called when the mouse has been double clicked on any panel derived from CGModBase, such as the panel used by [gui.EnableScreenClicker](https://wiki.facepunch.com/gmod/gui.EnableScreenClicker) and the panel used by [Panel:ParentToHUD](https://wiki.facepunch.com/gmod/Panel:ParentToHUD).
520
389
  *
@@ -524,9 +393,6 @@ interface GM {
524
393
  * @source https://wiki.facepunch.com/gmod/GM:GUIMouseDoublePressed
525
394
  */
526
395
  GUIMouseDoublePressed(self: GM, mouseCode: number, aimVector: Vector): void;
527
- }
528
-
529
- interface GM {
530
396
  /**
531
397
  * Called whenever a players presses a mouse key on the context menu in Sandbox or on any panel derived from CGModBase, such as the panel used by [gui.EnableScreenClicker](https://wiki.facepunch.com/gmod/gui.EnableScreenClicker) and the panel used by [Panel:ParentToHUD](https://wiki.facepunch.com/gmod/Panel:ParentToHUD).
532
398
  *
@@ -536,27 +402,18 @@ interface GM {
536
402
  * @source https://wiki.facepunch.com/gmod/GM:GUIMousePressed
537
403
  */
538
404
  GUIMousePressed(self: GM, mouseCode: number, aimVector: Vector): void;
539
- }
540
-
541
- interface GM {
542
405
  /**
543
406
  * Called whenever a players releases a mouse key on the context menu in Sandbox or on any panel derived from CGModBase, such as the panel used by [gui.EnableScreenClicker](https://wiki.facepunch.com/gmod/gui.EnableScreenClicker) and the panel used by [Panel:ParentToHUD](https://wiki.facepunch.com/gmod/Panel:ParentToHUD).
544
407
  * @realm client
545
408
  * @source https://wiki.facepunch.com/gmod/GM:GUIMouseReleased
546
409
  */
547
410
  GUIMouseReleased(self: GM, mouseCode: number, aimVector: Vector): void;
548
- }
549
-
550
- interface GM {
551
411
  /**
552
412
  * Called when game content has been changed, for example an addon or a mountable game was (un)mounted.
553
413
  * @realm shared and menu
554
414
  * @source https://wiki.facepunch.com/gmod/GM:GameContentChanged
555
415
  */
556
416
  GameContentChanged(self: GM): void;
557
- }
558
-
559
- interface GM {
560
417
  /**
561
418
  * An internal function used to get an untranslated string to show in the kill feed as the entity's name. See [GM:SendDeathNotice](https://wiki.facepunch.com/gmod/GM:SendDeathNotice)
562
419
  *
@@ -564,18 +421,12 @@ interface GM {
564
421
  * @source https://wiki.facepunch.com/gmod/GM:GetDeathNoticeEntityName
565
422
  */
566
423
  GetDeathNoticeEntityName(self: GM, name: string | Entity): string;
567
- }
568
-
569
- interface GM {
570
424
  /**
571
425
  * Called when a player takes damage from falling, allows to override the damage.
572
426
  * @realm server
573
427
  * @source https://wiki.facepunch.com/gmod/GM:GetFallDamage
574
428
  */
575
429
  GetFallDamage(self: GM, ply: Player, speed: number): number;
576
- }
577
-
578
- interface GM {
579
430
  /**
580
431
  * Called when the game(server) needs to update the text shown in the server browser as the gamemode. Runs at a ~2s interval, runs even when the server is hibernating.
581
432
  *
@@ -588,18 +439,12 @@ interface GM {
588
439
  * @source https://wiki.facepunch.com/gmod/GM:GetGameDescription
589
440
  */
590
441
  GetGameDescription(self: GM): string;
591
- }
592
-
593
- interface GM {
594
442
  /**
595
443
  * Allows you to modify the Source Engine's motion blur shaders.
596
444
  * @realm client
597
445
  * @source https://wiki.facepunch.com/gmod/GM:GetMotionBlurValues
598
446
  */
599
447
  GetMotionBlurValues(self: GM, horizontal: number, vertical: number, forward: number, rotational: number): (number, number, number, number);
600
- }
601
-
602
- interface GM {
603
448
  /**
604
449
  * Called to determine preferred carry angles for the entity. It works for both, +use pickup and gravity gun pickup.
605
450
  *
@@ -613,36 +458,24 @@ interface GM {
613
458
  * @source https://wiki.facepunch.com/gmod/GM:GetPreferredCarryAngles
614
459
  */
615
460
  GetPreferredCarryAngles(self: GM, ent: Entity, ply: Player): Angle;
616
- }
617
-
618
- interface GM {
619
461
  /**
620
462
  * Returns the color for the given entity's team. This is used in chat and deathnotice text.
621
463
  * @realm client
622
464
  * @source https://wiki.facepunch.com/gmod/GM:GetTeamColor
623
465
  */
624
466
  GetTeamColor(self: GM, ent: Entity): Color;
625
- }
626
-
627
- interface GM {
628
467
  /**
629
468
  * Returns the team color for the given team index.
630
469
  * @realm client
631
470
  * @source https://wiki.facepunch.com/gmod/GM:GetTeamNumColor
632
471
  */
633
472
  GetTeamNumColor(self: GM, team: number): Color;
634
- }
635
-
636
- interface GM {
637
473
  /**
638
474
  * Override this hook to disable/change ear-grabbing in your gamemode. By default, it is not called anywhere on the server.
639
475
  * @realm shared
640
476
  * @source https://wiki.facepunch.com/gmod/GM:GrabEarAnimation
641
477
  */
642
478
  GrabEarAnimation(self: GM, ply: Player): void;
643
- }
644
-
645
- interface GM {
646
479
  /**
647
480
  * Called when an entity is released by a gravity gun.
648
481
  *
@@ -652,9 +485,6 @@ interface GM {
652
485
  * @source https://wiki.facepunch.com/gmod/GM:GravGunOnDropped
653
486
  */
654
487
  GravGunOnDropped(self: GM, ply: Player, ent: Entity): void;
655
- }
656
-
657
- interface GM {
658
488
  /**
659
489
  * Called when an entity is picked up by a gravity gun.
660
490
  *
@@ -665,9 +495,6 @@ interface GM {
665
495
  * @source https://wiki.facepunch.com/gmod/GM:GravGunOnPickedUp
666
496
  */
667
497
  GravGunOnPickedUp(self: GM, ply: Player, ent: Entity): void;
668
- }
669
-
670
- interface GM {
671
498
  /**
672
499
  * Called every tick to poll whether a player is allowed to pick up an entity with the gravity gun or not.
673
500
  *
@@ -680,9 +507,6 @@ interface GM {
680
507
  * @source https://wiki.facepunch.com/gmod/GM:GravGunPickupAllowed
681
508
  */
682
509
  GravGunPickupAllowed(self: GM, ply: Player, ent: Entity): boolean;
683
- }
684
-
685
- interface GM {
686
510
  /**
687
511
  * Called when an entity is about to be punted with the gravity gun (primary fire).
688
512
  *
@@ -692,27 +516,18 @@ interface GM {
692
516
  * @source https://wiki.facepunch.com/gmod/GM:GravGunPunt
693
517
  */
694
518
  GravGunPunt(self: GM, ply: Player, ent: Entity): boolean;
695
- }
696
-
697
- interface GM {
698
519
  /**
699
520
  * Called when the client has picked up ammo. Override to disable default HUD notification.
700
521
  * @realm client
701
522
  * @source https://wiki.facepunch.com/gmod/GM:HUDAmmoPickedUp
702
523
  */
703
524
  HUDAmmoPickedUp(self: GM, itemName: string, amount: number): void;
704
- }
705
-
706
- interface GM {
707
525
  /**
708
526
  * Renders the HUD pick-up history. Override to hide default or draw your own HUD.
709
527
  * @realm client
710
528
  * @source https://wiki.facepunch.com/gmod/GM:HUDDrawPickupHistory
711
529
  */
712
530
  HUDDrawPickupHistory(self: GM): void;
713
- }
714
-
715
- interface GM {
716
531
  /**
717
532
  * Called every frame to render the scoreboard.
718
533
  *
@@ -725,27 +540,18 @@ interface GM {
725
540
  * @source https://wiki.facepunch.com/gmod/GM:HUDDrawScoreBoard
726
541
  */
727
542
  HUDDrawScoreBoard(self: GM): void;
728
- }
729
-
730
- interface GM {
731
543
  /**
732
544
  * Called from [GM:HUDPaint](https://wiki.facepunch.com/gmod/GM:HUDPaint) to draw player info when you hover over a player with your crosshair or mouse.
733
545
  * @realm client
734
546
  * @source https://wiki.facepunch.com/gmod/GM:HUDDrawTargetID
735
547
  */
736
548
  HUDDrawTargetID(self: GM): boolean;
737
- }
738
-
739
- interface GM {
740
549
  /**
741
550
  * Called when an item has been picked up. Override to disable the default HUD notification.
742
551
  * @realm client
743
552
  * @source https://wiki.facepunch.com/gmod/GM:HUDItemPickedUp
744
553
  */
745
554
  HUDItemPickedUp(self: GM, itemName: string): void;
746
- }
747
-
748
- interface GM {
749
555
  /**
750
556
  * Called whenever the HUD should be drawn.
751
557
  *
@@ -762,9 +568,6 @@ interface GM {
762
568
  * @source https://wiki.facepunch.com/gmod/GM:HUDPaint
763
569
  */
764
570
  HUDPaint(self: GM): void;
765
- }
766
-
767
- interface GM {
768
571
  /**
769
572
  * Called before [GM:HUDPaint](https://wiki.facepunch.com/gmod/GM:HUDPaint) when the HUD background is being drawn.
770
573
  *
@@ -778,9 +581,6 @@ interface GM {
778
581
  * @source https://wiki.facepunch.com/gmod/GM:HUDPaintBackground
779
582
  */
780
583
  HUDPaintBackground(self: GM): void;
781
- }
782
-
783
- interface GM {
784
584
  /**
785
585
  * Called when the Gamemode is about to draw a given element on the client's HUD (heads-up display).
786
586
  *
@@ -791,18 +591,12 @@ interface GM {
791
591
  * @source https://wiki.facepunch.com/gmod/GM:HUDShouldDraw
792
592
  */
793
593
  HUDShouldDraw(self: GM, name: string): boolean;
794
- }
795
-
796
- interface GM {
797
594
  /**
798
595
  * Called when a weapon has been picked up. Override to disable the default HUD notification.
799
596
  * @realm client
800
597
  * @source https://wiki.facepunch.com/gmod/GM:HUDWeaponPickedUp
801
598
  */
802
599
  HUDWeaponPickedUp(self: GM, weapon: Weapon): void;
803
- }
804
-
805
- interface GM {
806
600
  /**
807
601
  * Called to handle player armor reduction, when player receives damage.
808
602
  *
@@ -812,81 +606,54 @@ interface GM {
812
606
  * @source https://wiki.facepunch.com/gmod/GM:HandlePlayerArmorReduction
813
607
  */
814
608
  HandlePlayerArmorReduction(self: GM, ply: Player, dmginfo: CTakeDamageInfo): void;
815
- }
816
-
817
- interface GM {
818
609
  /**
819
610
  * Allows to override player driving animations.
820
611
  * @realm shared
821
612
  * @source https://wiki.facepunch.com/gmod/GM:HandlePlayerDriving
822
613
  */
823
614
  HandlePlayerDriving(self: GM, ply: Player): boolean;
824
- }
825
-
826
- interface GM {
827
615
  /**
828
616
  * Allows to override player crouch animations.
829
617
  * @realm shared
830
618
  * @source https://wiki.facepunch.com/gmod/GM:HandlePlayerDucking
831
619
  */
832
620
  HandlePlayerDucking(self: GM, ply: Player, velocity: Vector): boolean;
833
- }
834
-
835
- interface GM {
836
621
  /**
837
622
  * Called every frame by the player model animation system. Allows to override player jumping animations.
838
623
  * @realm shared
839
624
  * @source https://wiki.facepunch.com/gmod/GM:HandlePlayerJumping
840
625
  */
841
626
  HandlePlayerJumping(self: GM, ply: Player, velocity: Vector): boolean;
842
- }
843
-
844
- interface GM {
845
627
  /**
846
628
  * Called every frame by the player model animation system. Allows to override player landing animations.
847
629
  * @realm shared
848
630
  * @source https://wiki.facepunch.com/gmod/GM:HandlePlayerLanding
849
631
  */
850
632
  HandlePlayerLanding(self: GM, ply: Player, velocity: Vector, onGround: boolean): boolean;
851
- }
852
-
853
- interface GM {
854
633
  /**
855
634
  * Allows to override player noclip animations.
856
635
  * @realm shared
857
636
  * @source https://wiki.facepunch.com/gmod/GM:HandlePlayerNoClipping
858
637
  */
859
638
  HandlePlayerNoClipping(self: GM, ply: Player, velocity: Vector): boolean;
860
- }
861
-
862
- interface GM {
863
639
  /**
864
640
  * Allows to override player swimming animations.
865
641
  * @realm shared
866
642
  * @source https://wiki.facepunch.com/gmod/GM:HandlePlayerSwimming
867
643
  */
868
644
  HandlePlayerSwimming(self: GM, ply: Player, velocity: Vector): boolean;
869
- }
870
-
871
- interface GM {
872
645
  /**
873
646
  * Allows to override player flying ( in mid-air, not noclipping ) animations.
874
647
  * @realm shared
875
648
  * @source https://wiki.facepunch.com/gmod/GM:HandlePlayerVaulting
876
649
  */
877
650
  HandlePlayerVaulting(self: GM, ply: Player, velocity: Vector): boolean;
878
- }
879
-
880
- interface GM {
881
651
  /**
882
652
  * Hides the team selection panel.
883
653
  * @realm client
884
654
  * @source https://wiki.facepunch.com/gmod/GM:HideTeam
885
655
  */
886
656
  HideTeam(self: GM): void;
887
- }
888
-
889
- interface GM {
890
657
  /**
891
658
  * Called after all the entities are initialized. Starting from this hook [Global.LocalPlayer](https://wiki.facepunch.com/gmod/Global.LocalPlayer) will return valid object.
892
659
  *
@@ -897,9 +664,6 @@ interface GM {
897
664
  * @source https://wiki.facepunch.com/gmod/GM:InitPostEntity
898
665
  */
899
666
  InitPostEntity(self: GM): void;
900
- }
901
-
902
- interface GM {
903
667
  /**
904
668
  * Called after the gamemode loads and starts.
905
669
  *
@@ -908,27 +672,18 @@ interface GM {
908
672
  * @source https://wiki.facepunch.com/gmod/GM:Initialize
909
673
  */
910
674
  Initialize(self: GM): void;
911
- }
912
-
913
- interface GM {
914
675
  /**
915
676
  * Allows you to modify the supplied User Command with mouse input. This could be used to make moving the mouse do funky things to view angles.
916
677
  * @realm client
917
678
  * @source https://wiki.facepunch.com/gmod/GM:InputMouseApply
918
679
  */
919
680
  InputMouseApply(self: GM, cmd: CUserCmd, x: number, y: number, ang: Angle): boolean;
920
- }
921
-
922
- interface GM {
923
681
  /**
924
682
  * Check if a player can spawn at a certain spawnpoint.
925
683
  * @realm server
926
684
  * @source https://wiki.facepunch.com/gmod/GM:IsSpawnpointSuitable
927
685
  */
928
686
  IsSpawnpointSuitable(self: GM, ply: Player, spawnpoint: Entity, makeSuitable: boolean): boolean;
929
- }
930
-
931
- interface GM {
932
687
  /**
933
688
  * Called whenever a player pressed a key included within the IN keys.
934
689
  *
@@ -944,9 +699,6 @@ interface GM {
944
699
  * @source https://wiki.facepunch.com/gmod/GM:KeyPress
945
700
  */
946
701
  KeyPress(self: GM, ply: Player, key: number): void;
947
- }
948
-
949
- interface GM {
950
702
  /**
951
703
  * Runs when a IN key was released by a player.
952
704
  *
@@ -959,9 +711,6 @@ interface GM {
959
711
  * @source https://wiki.facepunch.com/gmod/GM:KeyRelease
960
712
  */
961
713
  KeyRelease(self: GM, ply: Player, key: number): void;
962
- }
963
-
964
- interface GM {
965
714
  /**
966
715
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
967
716
  * Called from `gm_load` when the game should load a map.
@@ -969,36 +718,24 @@ interface GM {
969
718
  * @source https://wiki.facepunch.com/gmod/GM:LoadGModSave
970
719
  */
971
720
  LoadGModSave(self: GM, data: string, map: string, timestamp: number): void;
972
- }
973
-
974
- interface GM {
975
721
  /**
976
722
  * Called while an addon from the Steam workshop is downloading. Used by default to update details on the fancy workshop download panel.
977
723
  * @realm menu
978
724
  * @source https://wiki.facepunch.com/gmod/GM:LoadGModSaveFailed
979
725
  */
980
726
  LoadGModSaveFailed(self: GM, reason: string, workshopid: string): void;
981
- }
982
-
983
- interface GM {
984
727
  /**
985
728
  * Called when `menu.lua` has finished loading.
986
729
  * @realm menu
987
730
  * @source https://wiki.facepunch.com/gmod/GM:MenuStart
988
731
  */
989
732
  MenuStart(self: GM): void;
990
- }
991
-
992
- interface GM {
993
733
  /**
994
734
  * Override this gamemode function to disable mouth movement when talking on voice chat. By default, it is not called anywhere on the server.
995
735
  * @realm shared
996
736
  * @source https://wiki.facepunch.com/gmod/GM:MouthMoveAnimation
997
737
  */
998
738
  MouthMoveAnimation(self: GM, ply: Player): void;
999
- }
1000
-
1001
- interface GM {
1002
739
  /**
1003
740
  * The Move hook is called for you to manipulate the player's MoveData.
1004
741
  *
@@ -1014,27 +751,18 @@ interface GM {
1014
751
  * @source https://wiki.facepunch.com/gmod/GM:Move
1015
752
  */
1016
753
  Move(self: GM, ply: Player, mv: CMoveData): boolean;
1017
- }
1018
-
1019
- interface GM {
1020
754
  /**
1021
755
  * Returning true in this hook will cause it to render depth buffers defined with [render.GetResolvedFullFrameDepth](https://wiki.facepunch.com/gmod/render.GetResolvedFullFrameDepth).
1022
756
  * @realm client
1023
757
  * @source https://wiki.facepunch.com/gmod/GM:NeedsDepthPass
1024
758
  */
1025
759
  NeedsDepthPass(self: GM): boolean;
1026
- }
1027
-
1028
- interface GM {
1029
760
  /**
1030
761
  * Called when an entity has been created over the network.
1031
762
  * @realm client
1032
763
  * @source https://wiki.facepunch.com/gmod/GM:NetworkEntityCreated
1033
764
  */
1034
765
  NetworkEntityCreated(self: GM, ent: Entity): void;
1035
- }
1036
-
1037
- interface GM {
1038
766
  /**
1039
767
  * Called when a player's SteamID has been validated by Steam.
1040
768
  *
@@ -1047,9 +775,6 @@ interface GM {
1047
775
  * @source https://wiki.facepunch.com/gmod/GM:NetworkIDValidated
1048
776
  */
1049
777
  NetworkIDValidated(self: GM, name: string, steamID: string, ownerID: string): void;
1050
- }
1051
-
1052
- interface GM {
1053
778
  /**
1054
779
  * Called whenever this entity changes its transmission state for this [Global.LocalPlayer](https://wiki.facepunch.com/gmod/Global.LocalPlayer), such as exiting or re entering the [PVS (Potential Visibility Set)](https://developer.valvesoftware.com/wiki/PVS "PVS - Valve Developer Community").
1055
780
  *
@@ -1062,18 +787,12 @@ interface GM {
1062
787
  * @source https://wiki.facepunch.com/gmod/GM:NotifyShouldTransmit
1063
788
  */
1064
789
  NotifyShouldTransmit(self: GM, entity: Entity, shouldtransmit: boolean): void;
1065
- }
1066
-
1067
- interface GM {
1068
790
  /**
1069
791
  * Called when a player has achieved an achievement. You can get the name and other information from an achievement ID with the [achievements](https://wiki.facepunch.com/gmod/achievements) library.
1070
792
  * @realm client
1071
793
  * @source https://wiki.facepunch.com/gmod/GM:OnAchievementAchieved
1072
794
  */
1073
795
  OnAchievementAchieved(self: GM, ply: Player, achievement: number): void;
1074
- }
1075
-
1076
- interface GM {
1077
796
  /**
1078
797
  * Called when the local player presses TAB while having their chatbox opened.
1079
798
  *
@@ -1084,18 +803,12 @@ interface GM {
1084
803
  * @source https://wiki.facepunch.com/gmod/GM:OnChatTab
1085
804
  */
1086
805
  OnChatTab(self: GM, text: string): string;
1087
- }
1088
-
1089
- interface GM {
1090
806
  /**
1091
807
  * Called when the player cleans up something.
1092
808
  * @realm client
1093
809
  * @source https://wiki.facepunch.com/gmod/GM:OnCleanup
1094
810
  */
1095
811
  OnCleanup(self: GM, name: string): boolean;
1096
- }
1097
-
1098
- interface GM {
1099
812
  /**
1100
813
  * Called on the server when a Lua error occurs on a client and is sent to the server.
1101
814
  *
@@ -1113,18 +826,12 @@ interface GM {
1113
826
  * @source https://wiki.facepunch.com/gmod/GM:OnClientLuaError
1114
827
  */
1115
828
  OnClientLuaError(self: GM, error: string, ply: Player, stack: table, name: string): void;
1116
- }
1117
-
1118
- interface GM {
1119
829
  /**
1120
830
  * Called when a caption/subtitle has been emitted to the closed caption box.
1121
831
  * @realm client
1122
832
  * @source https://wiki.facepunch.com/gmod/GM:OnCloseCaptionEmit
1123
833
  */
1124
834
  OnCloseCaptionEmit(self: GM, soundScript: string, duration: number, fromPlayer: boolean, fullText: string): boolean;
1125
- }
1126
-
1127
- interface GM {
1128
835
  /**
1129
836
  * Called when the context menu keybind (+menu_context) is released, which by default is C.
1130
837
  *
@@ -1136,9 +843,6 @@ interface GM {
1136
843
  * @source https://wiki.facepunch.com/gmod/GM:OnContextMenuClose
1137
844
  */
1138
845
  OnContextMenuClose(self: GM): void;
1139
- }
1140
-
1141
- interface GM {
1142
846
  /**
1143
847
  * Called when the context menu keybind (`+menu_context`) is pressed, which by default is C.
1144
848
  *
@@ -1148,27 +852,18 @@ interface GM {
1148
852
  * @source https://wiki.facepunch.com/gmod/GM:OnContextMenuOpen
1149
853
  */
1150
854
  OnContextMenuOpen(self: GM): void;
1151
- }
1152
-
1153
- interface GM {
1154
855
  /**
1155
856
  * Called when the crazy physics detection detects an entity with crazy physics, i.e. position being far outside of the map, velocities being near or at infinity, etc. The primary reason for this system is to prevent program crashes in physics engine.
1156
857
  * @realm shared
1157
858
  * @source https://wiki.facepunch.com/gmod/GM:OnCrazyPhysics
1158
859
  */
1159
860
  OnCrazyPhysics(self: GM, ent: Entity, physobj: PhysObj): void;
1160
- }
1161
-
1162
- interface GM {
1163
861
  /**
1164
862
  * Called when a player has been hurt by an explosion. Override to disable default sound effect.
1165
863
  * @realm server
1166
864
  * @source https://wiki.facepunch.com/gmod/GM:OnDamagedByExplosion
1167
865
  */
1168
866
  OnDamagedByExplosion(self: GM, ply: Player, dmginfo: CTakeDamageInfo): void;
1169
- }
1170
-
1171
- interface GM {
1172
867
  /**
1173
868
  * Called as soon as the entity is created. Very little of the entity's properties will be initialized at this stage. (keyvalues, classname, flags, anything), especially on the serverside.
1174
869
  *
@@ -1179,9 +874,6 @@ interface GM {
1179
874
  * @source https://wiki.facepunch.com/gmod/GM:OnEntityCreated
1180
875
  */
1181
876
  OnEntityCreated(self: GM, entity: Entity): void;
1182
- }
1183
-
1184
- interface GM {
1185
877
  /**
1186
878
  * Called when the [Entity:WaterLevel](https://wiki.facepunch.com/gmod/Entity:WaterLevel) of an entity is changed.
1187
879
  *
@@ -1200,9 +892,6 @@ interface GM {
1200
892
  * @source https://wiki.facepunch.com/gmod/GM:OnEntityWaterLevelChanged
1201
893
  */
1202
894
  OnEntityWaterLevelChanged(self: GM, entity: Entity, old: number, _new: number): void;
1203
- }
1204
-
1205
- interface GM {
1206
895
  /**
1207
896
  * Called when the gamemode is loaded. [gmod.GetGamemode](https://wiki.facepunch.com/gmod/gmod.GetGamemode) will be functional at this point.
1208
897
  *
@@ -1212,9 +901,6 @@ interface GM {
1212
901
  * @source https://wiki.facepunch.com/gmod/GM:OnGamemodeLoaded
1213
902
  */
1214
903
  OnGamemodeLoaded(self: GM): void;
1215
- }
1216
-
1217
- interface GM {
1218
904
  /**
1219
905
  * Called when a Lua error occurs.
1220
906
  * If you want to retrieve client errors on the server side, you can use this hook: [GM:OnClientLuaError](https://wiki.facepunch.com/gmod/GM:OnClientLuaError)
@@ -1225,9 +911,6 @@ interface GM {
1225
911
  * @source https://wiki.facepunch.com/gmod/GM:OnLuaError
1226
912
  */
1227
913
  OnLuaError(self: GM, error: string, realm: string, stack: table, name: string, id: string): void;
1228
- }
1229
-
1230
- interface GM {
1231
914
  /**
1232
915
  * Called whenever an NPC drops an item upon its death, such as health kits, armor batteries, etc.
1233
916
  *
@@ -1240,18 +923,12 @@ interface GM {
1240
923
  * @source https://wiki.facepunch.com/gmod/GM:OnNPCDropItem
1241
924
  */
1242
925
  OnNPCDropItem(self: GM, npc: NPC, item: Entity): void;
1243
- }
1244
-
1245
- interface GM {
1246
926
  /**
1247
927
  * Called whenever an NPC is killed.
1248
928
  * @realm server
1249
929
  * @source https://wiki.facepunch.com/gmod/GM:OnNPCKilled
1250
930
  */
1251
931
  OnNPCKilled(self: GM, npc: NPC, attacker: Entity, inflictor: Entity): void;
1252
- }
1253
-
1254
- interface GM {
1255
932
  /**
1256
933
  * Called when a Addon Conflict occurs, only works in the Menu realm.
1257
934
  *
@@ -1259,9 +936,6 @@ interface GM {
1259
936
  * @source https://wiki.facepunch.com/gmod/GM:OnNotifyAddonConflict
1260
937
  */
1261
938
  OnNotifyAddonConflict(self: GM, addon1: string, addon2: string, fileName: string): void;
1262
- }
1263
-
1264
- interface GM {
1265
939
  /**
1266
940
  * Called when the main menu has been blocked by [GM:OnPauseMenuShow](https://wiki.facepunch.com/gmod/GM:OnPauseMenuShow) four times in a small interval. This is used internally to explain to the user that they can hold SHIFT to force open the main menu.
1267
941
  *
@@ -1269,9 +943,6 @@ interface GM {
1269
943
  * @source https://wiki.facepunch.com/gmod/GM:OnPauseMenuBlockedTooManyTimes
1270
944
  */
1271
945
  OnPauseMenuBlockedTooManyTimes(self: GM): void;
1272
- }
1273
-
1274
- interface GM {
1275
946
  /**
1276
947
  * Called when the pause menu is attempting to be opened. Allows you to prevent the main menu from being opened that time.
1277
948
  *
@@ -1281,9 +952,6 @@ interface GM {
1281
952
  * @source https://wiki.facepunch.com/gmod/GM:OnPauseMenuShow
1282
953
  */
1283
954
  OnPauseMenuShow(self: GM): boolean;
1284
- }
1285
-
1286
- interface GM {
1287
955
  /**
1288
956
  * Called when a permission gets Granted or Revoked.
1289
957
  *
@@ -1291,9 +959,6 @@ interface GM {
1291
959
  * @source https://wiki.facepunch.com/gmod/GM:OnPermissionsChanged
1292
960
  */
1293
961
  OnPermissionsChanged(self: GM): void;
1294
- }
1295
-
1296
- interface GM {
1297
962
  /**
1298
963
  * Called when a player freezes an entity with the physgun.
1299
964
  *
@@ -1301,9 +966,6 @@ interface GM {
1301
966
  * @source https://wiki.facepunch.com/gmod/GM:OnPhysgunFreeze
1302
967
  */
1303
968
  OnPhysgunFreeze(self: GM, weapon: Entity, physobj: PhysObj, ent: Entity, ply: Player): boolean;
1304
- }
1305
-
1306
- interface GM {
1307
969
  /**
1308
970
  * Called to when a player has successfully picked up an entity with their Physics Gun.
1309
971
  *
@@ -1318,18 +980,12 @@ interface GM {
1318
980
  * @source https://wiki.facepunch.com/gmod/GM:OnPhysgunPickup
1319
981
  */
1320
982
  OnPhysgunPickup(self: GM, ply: Player, ent: Entity): void;
1321
- }
1322
-
1323
- interface GM {
1324
983
  /**
1325
984
  * Called when a player reloads with the physgun. Override this to disable default unfreezing behavior.
1326
985
  * @realm server
1327
986
  * @source https://wiki.facepunch.com/gmod/GM:OnPhysgunReload
1328
987
  */
1329
988
  OnPhysgunReload(self: GM, physgun: Weapon, ply: Player): boolean;
1330
- }
1331
-
1332
- interface GM {
1333
989
  /**
1334
990
  * Called when a player has changed team using [GM:PlayerJoinTeam](https://wiki.facepunch.com/gmod/GM:PlayerJoinTeam).
1335
991
  *
@@ -1341,9 +997,6 @@ interface GM {
1341
997
  * @deprecated Use GM:PlayerChangedTeam instead, which works for every Player:SetTeam call.
1342
998
  */
1343
999
  OnPlayerChangedTeam(self: GM, ply: Player, oldTeam: number, newTeam: number): void;
1344
- }
1345
-
1346
- interface GM {
1347
1000
  /**
1348
1001
  * Called whenever a player sends a chat message. For the serverside equivalent, see [GM:PlayerSay](https://wiki.facepunch.com/gmod/GM:PlayerSay).
1349
1002
  * **NOTE**: The input (or suppression) of this hook is based on the output from [GM:PlayerSay](https://wiki.facepunch.com/gmod/GM:PlayerSay). Chat events suppressed serverside do not call this hook.
@@ -1353,36 +1006,24 @@ interface GM {
1353
1006
  * @source https://wiki.facepunch.com/gmod/GM:OnPlayerChat
1354
1007
  */
1355
1008
  OnPlayerChat(self: GM, ply: Player, text: string, teamChat: boolean, isDead: boolean): boolean;
1356
- }
1357
-
1358
- interface GM {
1359
1009
  /**
1360
1010
  * Called when a player makes contact with the ground after a jump or a fall.
1361
1011
  * @realm shared
1362
1012
  * @source https://wiki.facepunch.com/gmod/GM:OnPlayerHitGround
1363
1013
  */
1364
1014
  OnPlayerHitGround(self: GM, player: Entity, inWater: boolean, onFloater: boolean, speed: number): boolean;
1365
- }
1366
-
1367
- interface GM {
1368
1015
  /**
1369
1016
  * Called when a player jumps.
1370
1017
  * @realm shared
1371
1018
  * @source https://wiki.facepunch.com/gmod/GM:OnPlayerJump
1372
1019
  */
1373
1020
  OnPlayerJump(self: GM, player: Entity, speed: number): void;
1374
- }
1375
-
1376
- interface GM {
1377
1021
  /**
1378
1022
  * Called when a player +use drops an entity.
1379
1023
  * @realm server
1380
1024
  * @source https://wiki.facepunch.com/gmod/GM:OnPlayerPhysicsDrop
1381
1025
  */
1382
1026
  OnPlayerPhysicsDrop(self: GM, ply: Player, ent: Entity, thrown: boolean): void;
1383
- }
1384
-
1385
- interface GM {
1386
1027
  /**
1387
1028
  * Called when a player +use pickups up an entity. This will be called after the entity passes though [GM:AllowPlayerPickup](https://wiki.facepunch.com/gmod/GM:AllowPlayerPickup).
1388
1029
  *
@@ -1393,9 +1034,6 @@ interface GM {
1393
1034
  * @source https://wiki.facepunch.com/gmod/GM:OnPlayerPhysicsPickup
1394
1035
  */
1395
1036
  OnPlayerPhysicsPickup(self: GM, ply: Player, ent: Entity): void;
1396
- }
1397
-
1398
- interface GM {
1399
1037
  /**
1400
1038
  * Called when gamemode has been reloaded by auto refresh.
1401
1039
  *
@@ -1406,9 +1044,6 @@ interface GM {
1406
1044
  * @source https://wiki.facepunch.com/gmod/GM:OnReloaded
1407
1045
  */
1408
1046
  OnReloaded(self: GM): void;
1409
- }
1410
-
1411
- interface GM {
1412
1047
  /**
1413
1048
  * Called when the player's screen resolution of the game changes. This also called when changing MSAA settings.
1414
1049
  *
@@ -1418,27 +1053,18 @@ interface GM {
1418
1053
  * @source https://wiki.facepunch.com/gmod/GM:OnScreenSizeChanged
1419
1054
  */
1420
1055
  OnScreenSizeChanged(self: GM, oldWidth: number, oldHeight: number, newWidth: number, newHeight: number): void;
1421
- }
1422
-
1423
- interface GM {
1424
1056
  /**
1425
1057
  * Called when a player releases the `+menu` bind on their keyboard, which is bound to Q by default.
1426
1058
  * @realm client
1427
1059
  * @source https://wiki.facepunch.com/gmod/GM:OnSpawnMenuClose
1428
1060
  */
1429
1061
  OnSpawnMenuClose(self: GM): void;
1430
- }
1431
-
1432
- interface GM {
1433
1062
  /**
1434
1063
  * Called when a player presses the `+menu` bind on their keyboard, which is bound to Q by default.
1435
1064
  * @realm client
1436
1065
  * @source https://wiki.facepunch.com/gmod/GM:OnSpawnMenuOpen
1437
1066
  */
1438
1067
  OnSpawnMenuOpen(self: GM): void;
1439
- }
1440
-
1441
- interface GM {
1442
1068
  /**
1443
1069
  * Called when a [DTextEntry](https://wiki.facepunch.com/gmod/DTextEntry) gets focus.
1444
1070
  *
@@ -1448,27 +1074,18 @@ interface GM {
1448
1074
  * @source https://wiki.facepunch.com/gmod/GM:OnTextEntryGetFocus
1449
1075
  */
1450
1076
  OnTextEntryGetFocus(self: GM, panel: Panel): void;
1451
- }
1452
-
1453
- interface GM {
1454
1077
  /**
1455
1078
  * Called when a [DTextEntry](https://wiki.facepunch.com/gmod/DTextEntry) loses focus.
1456
1079
  * @realm client
1457
1080
  * @source https://wiki.facepunch.com/gmod/GM:OnTextEntryLoseFocus
1458
1081
  */
1459
1082
  OnTextEntryLoseFocus(self: GM, panel: Panel): void;
1460
- }
1461
-
1462
- interface GM {
1463
1083
  /**
1464
1084
  * Called when the player undoes something.
1465
1085
  * @realm client
1466
1086
  * @source https://wiki.facepunch.com/gmod/GM:OnUndo
1467
1087
  */
1468
1088
  OnUndo(self: GM, name: string, customText: string): boolean;
1469
- }
1470
-
1471
- interface GM {
1472
1089
  /**
1473
1090
  * Called when the player changes their weapon to another one - and their viewmodel model changes.
1474
1091
  *
@@ -1478,9 +1095,6 @@ interface GM {
1478
1095
  * @source https://wiki.facepunch.com/gmod/GM:OnViewModelChanged
1479
1096
  */
1480
1097
  OnViewModelChanged(self: GM, viewmodel: Entity, oldModel: string, newModel: string): void;
1481
- }
1482
-
1483
- interface GM {
1484
1098
  /**
1485
1099
  * Called when a player drops an entity with the Physgun.
1486
1100
  *
@@ -1490,9 +1104,6 @@ interface GM {
1490
1104
  * @source https://wiki.facepunch.com/gmod/GM:PhysgunDrop
1491
1105
  */
1492
1106
  PhysgunDrop(self: GM, player: Player, entity: Entity): void;
1493
- }
1494
-
1495
- interface GM {
1496
1107
  /**
1497
1108
  * Called to determine if a player should be able to pick up an entity with the Physics Gun.
1498
1109
  *
@@ -1505,9 +1116,6 @@ interface GM {
1505
1116
  * @source https://wiki.facepunch.com/gmod/GM:PhysgunPickup
1506
1117
  */
1507
1118
  PhysgunPickup(self: GM, player: Player, entity: Entity): boolean;
1508
- }
1509
-
1510
- interface GM {
1511
1119
  /**
1512
1120
  * Called after player's reserve ammo count changes.
1513
1121
  *
@@ -1515,9 +1123,6 @@ interface GM {
1515
1123
  * @source https://wiki.facepunch.com/gmod/GM:PlayerAmmoChanged
1516
1124
  */
1517
1125
  PlayerAmmoChanged(self: GM, ply: Player, ammoID: number, oldCount: number, newCount: number): void;
1518
- }
1519
-
1520
- interface GM {
1521
1126
  /**
1522
1127
  * Called after the player gets their [Player:UniqueID](https://wiki.facepunch.com/gmod/Player:UniqueID) set for the first time. This hook will also be called in singleplayer.
1523
1128
  *
@@ -1527,9 +1132,6 @@ interface GM {
1527
1132
  * @source https://wiki.facepunch.com/gmod/GM:PlayerAuthed
1528
1133
  */
1529
1134
  PlayerAuthed(self: GM, ply: Player, steamid: string, uniqueid: string): void;
1530
- }
1531
-
1532
- interface GM {
1533
1135
  /**
1534
1136
  * Runs when a bind has been pressed. Allows to block commands.
1535
1137
  *
@@ -1546,9 +1148,6 @@ interface GM {
1546
1148
  * @source https://wiki.facepunch.com/gmod/GM:PlayerBindPress
1547
1149
  */
1548
1150
  PlayerBindPress(self: GM, ply: Player, bind: string, pressed: boolean, code: number): boolean;
1549
- }
1550
-
1551
- interface GM {
1552
1151
  /**
1553
1152
  * Called when a player presses a button.
1554
1153
  *
@@ -1561,9 +1160,6 @@ interface GM {
1561
1160
  * @source https://wiki.facepunch.com/gmod/GM:PlayerButtonDown
1562
1161
  */
1563
1162
  PlayerButtonDown(self: GM, ply: Player, button: BUTTON_CODE): void;
1564
- }
1565
-
1566
- interface GM {
1567
1163
  /**
1568
1164
  * Called when a player releases a button.
1569
1165
  *
@@ -1576,9 +1172,6 @@ interface GM {
1576
1172
  * @source https://wiki.facepunch.com/gmod/GM:PlayerButtonUp
1577
1173
  */
1578
1174
  PlayerButtonUp(self: GM, ply: Player, button: BUTTON_CODE): void;
1579
- }
1580
-
1581
- interface GM {
1582
1175
  /**
1583
1176
  * Decides whether a player can hear another player using voice chat.
1584
1177
  *
@@ -1590,9 +1183,6 @@ interface GM {
1590
1183
  * @source https://wiki.facepunch.com/gmod/GM:PlayerCanHearPlayersVoice
1591
1184
  */
1592
1185
  PlayerCanHearPlayersVoice(self: GM, listener: Player, talker: Player): (boolean, boolean);
1593
- }
1594
-
1595
- interface GM {
1596
1186
  /**
1597
1187
  * Returns whether or not a player is allowed to join a team
1598
1188
  * **WARNING**: This hook will not work with [hook.Add](https://wiki.facepunch.com/gmod/hook.Add) and it is only called manually from [GM:PlayerJoinTeam](https://wiki.facepunch.com/gmod/GM:PlayerJoinTeam) by the base gamemode
@@ -1602,9 +1192,6 @@ interface GM {
1602
1192
  * @source https://wiki.facepunch.com/gmod/GM:PlayerCanJoinTeam
1603
1193
  */
1604
1194
  PlayerCanJoinTeam(self: GM, ply: Player, team: number): boolean;
1605
- }
1606
-
1607
- interface GM {
1608
1195
  /**
1609
1196
  * Returns whether or not a player is allowed to pick an item up. (ammo, health, armor)
1610
1197
  *
@@ -1616,9 +1203,6 @@ interface GM {
1616
1203
  * @source https://wiki.facepunch.com/gmod/GM:PlayerCanPickupItem
1617
1204
  */
1618
1205
  PlayerCanPickupItem(self: GM, ply: Player, item: Entity): boolean;
1619
- }
1620
-
1621
- interface GM {
1622
1206
  /**
1623
1207
  * Returns whether or not a player is allowed to pick up a weapon.
1624
1208
  *
@@ -1632,9 +1216,6 @@ interface GM {
1632
1216
  * @source https://wiki.facepunch.com/gmod/GM:PlayerCanPickupWeapon
1633
1217
  */
1634
1218
  PlayerCanPickupWeapon(self: GM, ply: Player, weapon: Weapon): boolean;
1635
- }
1636
-
1637
- interface GM {
1638
1219
  /**
1639
1220
  * Returns whether or not the player can see the other player's chat.
1640
1221
  * **NOTE**: The **speaker** parameter does not have to be a valid [Player](https://wiki.facepunch.com/gmod/Player) object which happens when console messages are displayed for example.
@@ -1643,9 +1224,6 @@ interface GM {
1643
1224
  * @source https://wiki.facepunch.com/gmod/GM:PlayerCanSeePlayersChat
1644
1225
  */
1645
1226
  PlayerCanSeePlayersChat(self: GM, text: string, teamOnly: boolean, listener: Player, speaker: Player): boolean;
1646
- }
1647
-
1648
- interface GM {
1649
1227
  /**
1650
1228
  * Called when a player has changed team using [Player:SetTeam](https://wiki.facepunch.com/gmod/Player:SetTeam).
1651
1229
  * **WARNING**: Avoid calling [Player:SetTeam](https://wiki.facepunch.com/gmod/Player:SetTeam) in this hook as it may cause an infinite loop!
@@ -1657,9 +1235,6 @@ interface GM {
1657
1235
  * @source https://wiki.facepunch.com/gmod/GM:PlayerChangedTeam
1658
1236
  */
1659
1237
  PlayerChangedTeam(self: GM, ply: Player, oldTeam: number, newTeam: number): void;
1660
- }
1661
-
1662
- interface GM {
1663
1238
  /**
1664
1239
  * Called whenever a player is about to spawn something to see if they hit a limit for whatever they are spawning.
1665
1240
  * **NOTE**: This hook will not be called in singleplayer, as singleplayer does not have limits.
@@ -1668,9 +1243,6 @@ interface GM {
1668
1243
  * @source https://wiki.facepunch.com/gmod/GM:PlayerCheckLimit
1669
1244
  */
1670
1245
  PlayerCheckLimit(self: GM, ply: Player, limitName: string, current: number, defaultMax: number): boolean;
1671
- }
1672
-
1673
- interface GM {
1674
1246
  /**
1675
1247
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
1676
1248
  *
@@ -1681,9 +1253,6 @@ interface GM {
1681
1253
  * @source https://wiki.facepunch.com/gmod/GM:PlayerClassChanged
1682
1254
  */
1683
1255
  PlayerClassChanged(self: GM, ply: Player, newID: number): void;
1684
- }
1685
-
1686
- interface GM {
1687
1256
  /**
1688
1257
  * Executes when a player connects to the server. Called before the player has been assigned a [UserID](https://wiki.facepunch.com/gmod/Player:UserID) and entity. See the [player_connect](https://wiki.facepunch.com/gmod/gameevent/player_connect) gameevent for a version of this hook called after the player entity has been created.
1689
1258
  *
@@ -1696,9 +1265,6 @@ interface GM {
1696
1265
  * @source https://wiki.facepunch.com/gmod/GM:PlayerConnect
1697
1266
  */
1698
1267
  PlayerConnect(self: GM, name: string, ip: string): void;
1699
- }
1700
-
1701
- interface GM {
1702
1268
  /**
1703
1269
  * Called when a player is killed by [Player:Kill](https://wiki.facepunch.com/gmod/Player:Kill) or any other normal means.
1704
1270
  *
@@ -1717,18 +1283,12 @@ interface GM {
1717
1283
  * @source https://wiki.facepunch.com/gmod/GM:PlayerDeath
1718
1284
  */
1719
1285
  PlayerDeath(self: GM, victim: Player, inflictor: Entity, attacker: Entity): void;
1720
- }
1721
-
1722
- interface GM {
1723
1286
  /**
1724
1287
  * Returns whether or not the default death sound should be muted.
1725
1288
  * @realm server
1726
1289
  * @source https://wiki.facepunch.com/gmod/GM:PlayerDeathSound
1727
1290
  */
1728
1291
  PlayerDeathSound(self: GM, ply: Player): boolean;
1729
- }
1730
-
1731
- interface GM {
1732
1292
  /**
1733
1293
  * Called every think while the player is dead. The return value will determine if the player respawns.
1734
1294
  *
@@ -1740,9 +1300,6 @@ interface GM {
1740
1300
  * @source https://wiki.facepunch.com/gmod/GM:PlayerDeathThink
1741
1301
  */
1742
1302
  PlayerDeathThink(self: GM, ply: Player): boolean;
1743
- }
1744
-
1745
- interface GM {
1746
1303
  /**
1747
1304
  * Called when a player leaves the server. See the [player_disconnect gameevent](https://wiki.facepunch.com/gmod/gameevent/player_disconnect) for a shared version of this hook.
1748
1305
  *
@@ -1752,18 +1309,12 @@ interface GM {
1752
1309
  * @source https://wiki.facepunch.com/gmod/GM:PlayerDisconnected
1753
1310
  */
1754
1311
  PlayerDisconnected(self: GM, ply: Player): void;
1755
- }
1756
-
1757
- interface GM {
1758
1312
  /**
1759
1313
  * Called to update the player's animation during a drive.
1760
1314
  * @realm shared
1761
1315
  * @source https://wiki.facepunch.com/gmod/GM:PlayerDriveAnimate
1762
1316
  */
1763
1317
  PlayerDriveAnimate(self: GM, ply: Player): void;
1764
- }
1765
-
1766
- interface GM {
1767
1318
  /**
1768
1319
  * Called when a weapon is dropped by a player via [Player:DropWeapon](https://wiki.facepunch.com/gmod/Player:DropWeapon). Despite its name, this hook is also called for NPC weapon drops.
1769
1320
  *
@@ -1779,18 +1330,12 @@ interface GM {
1779
1330
  * @source https://wiki.facepunch.com/gmod/GM:PlayerDroppedWeapon
1780
1331
  */
1781
1332
  PlayerDroppedWeapon(self: GM, owner: Player | NPC, wep: Weapon): void;
1782
- }
1783
-
1784
- interface GM {
1785
1333
  /**
1786
1334
  * Called when player stops using voice chat.
1787
1335
  * @realm client
1788
1336
  * @source https://wiki.facepunch.com/gmod/GM:PlayerEndVoice
1789
1337
  */
1790
1338
  PlayerEndVoice(self: GM, ply: Player): void;
1791
- }
1792
-
1793
- interface GM {
1794
1339
  /**
1795
1340
  * Called when a player enters a vehicle.
1796
1341
  *
@@ -1802,9 +1347,6 @@ interface GM {
1802
1347
  * @source https://wiki.facepunch.com/gmod/GM:PlayerEnteredVehicle
1803
1348
  */
1804
1349
  PlayerEnteredVehicle(self: GM, ply: Player, veh: Vehicle, role: number): void;
1805
- }
1806
-
1807
- interface GM {
1808
1350
  /**
1809
1351
  * Called before firing clientside animation events on a player model.
1810
1352
  *
@@ -1814,9 +1356,6 @@ interface GM {
1814
1356
  * @source https://wiki.facepunch.com/gmod/GM:PlayerFireAnimationEvent
1815
1357
  */
1816
1358
  PlayerFireAnimationEvent(self: GM, ply: Player, pos: Vector, ang: Angle, event: number, name: string): boolean;
1817
- }
1818
-
1819
- interface GM {
1820
1359
  /**
1821
1360
  * Called whenever a player steps. Return true to mute the normal sound.
1822
1361
  *
@@ -1828,18 +1367,12 @@ interface GM {
1828
1367
  * @source https://wiki.facepunch.com/gmod/GM:PlayerFootstep
1829
1368
  */
1830
1369
  PlayerFootstep(self: GM, ply: Player, pos: Vector, foot: number, sound: string, volume: number, filter: CRecipientFilter): boolean;
1831
- }
1832
-
1833
- interface GM {
1834
1370
  /**
1835
1371
  * Called when a player freezes an object.
1836
1372
  * @realm server
1837
1373
  * @source https://wiki.facepunch.com/gmod/GM:PlayerFrozeObject
1838
1374
  */
1839
1375
  PlayerFrozeObject(self: GM, ply: Player, ent: Entity, physobj: PhysObj): void;
1840
- }
1841
-
1842
- interface GM {
1843
1376
  /**
1844
1377
  * Called before firing serverside animation events on the player models.
1845
1378
  *
@@ -1849,18 +1382,12 @@ interface GM {
1849
1382
  * @source https://wiki.facepunch.com/gmod/GM:PlayerHandleAnimEvent
1850
1383
  */
1851
1384
  PlayerHandleAnimEvent(self: GM, ply: Player, event: number, eventTime: number, cycle: number, type: number, options: string): void;
1852
- }
1853
-
1854
- interface GM {
1855
1385
  /**
1856
1386
  * Called when a player gets hurt.
1857
1387
  * @realm server
1858
1388
  * @source https://wiki.facepunch.com/gmod/GM:PlayerHurt
1859
1389
  */
1860
1390
  PlayerHurt(self: GM, victim: Player, attacker: Entity, healthRemaining: number, damageTaken: number): void;
1861
- }
1862
-
1863
- interface GM {
1864
1391
  /**
1865
1392
  * Called when the player spawns for the first time.
1866
1393
  *
@@ -1911,18 +1438,12 @@ interface GM {
1911
1438
  * @source https://wiki.facepunch.com/gmod/GM:PlayerInitialSpawn
1912
1439
  */
1913
1440
  PlayerInitialSpawn(self: GM, player: Player, transition: boolean): void;
1914
- }
1915
-
1916
- interface GM {
1917
1441
  /**
1918
1442
  * Makes the player join a specified team. This is a convenience function that calls [Player:SetTeam](https://wiki.facepunch.com/gmod/Player:SetTeam) and runs the [GM:OnPlayerChangedTeam](https://wiki.facepunch.com/gmod/GM:OnPlayerChangedTeam) hook.
1919
1443
  * @realm server
1920
1444
  * @source https://wiki.facepunch.com/gmod/GM:PlayerJoinTeam
1921
1445
  */
1922
1446
  PlayerJoinTeam(self: GM, ply: Player, team: number): void;
1923
- }
1924
-
1925
- interface GM {
1926
1447
  /**
1927
1448
  * Called when a player leaves a vehicle for any reason, including [Player:ExitVehicle](https://wiki.facepunch.com/gmod/Player:ExitVehicle).
1928
1449
  *
@@ -1935,9 +1456,6 @@ interface GM {
1935
1456
  * @source https://wiki.facepunch.com/gmod/GM:PlayerLeaveVehicle
1936
1457
  */
1937
1458
  PlayerLeaveVehicle(self: GM, ply: Player, veh: Vehicle): void;
1938
- }
1939
-
1940
- interface GM {
1941
1459
  /**
1942
1460
  * Called to give players the default set of weapons.
1943
1461
  *
@@ -1949,9 +1467,6 @@ interface GM {
1949
1467
  * @source https://wiki.facepunch.com/gmod/GM:PlayerLoadout
1950
1468
  */
1951
1469
  PlayerLoadout(self: GM, ply: Player): void;
1952
- }
1953
-
1954
- interface GM {
1955
1470
  /**
1956
1471
  * Called when a player tries to switch noclip mode.
1957
1472
  *
@@ -1961,9 +1476,6 @@ interface GM {
1961
1476
  * @source https://wiki.facepunch.com/gmod/GM:PlayerNoClip
1962
1477
  */
1963
1478
  PlayerNoClip(self: GM, ply: Player, desiredState: boolean): boolean;
1964
- }
1965
-
1966
- interface GM {
1967
1479
  /**
1968
1480
  * Called after the player's think, just after [GM:FinishMove](https://wiki.facepunch.com/gmod/GM:FinishMove).
1969
1481
  *
@@ -1975,9 +1487,6 @@ interface GM {
1975
1487
  * @source https://wiki.facepunch.com/gmod/GM:PlayerPostThink
1976
1488
  */
1977
1489
  PlayerPostThink(self: GM, ply: Player): void;
1978
- }
1979
-
1980
- interface GM {
1981
1490
  /**
1982
1491
  * Request a player to join the team. This function will check if the team is available to join or not.
1983
1492
  *
@@ -1989,9 +1498,6 @@ interface GM {
1989
1498
  * @source https://wiki.facepunch.com/gmod/GM:PlayerRequestTeam
1990
1499
  */
1991
1500
  PlayerRequestTeam(self: GM, ply: Player, team: number): void;
1992
- }
1993
-
1994
- interface GM {
1995
1501
  /**
1996
1502
  * Called when a player dispatched a chat message. For the clientside equivalent, see [GM:OnPlayerChat](https://wiki.facepunch.com/gmod/GM:OnPlayerChat).
1997
1503
  *
@@ -2002,9 +1508,6 @@ interface GM {
2002
1508
  * @source https://wiki.facepunch.com/gmod/GM:PlayerSay
2003
1509
  */
2004
1510
  PlayerSay(self: GM, sender: Player, text: string, teamChat: boolean): string;
2005
- }
2006
-
2007
- interface GM {
2008
1511
  /**
2009
1512
  * Called to determine a spawn point for a player to spawn at.
2010
1513
  * **NOTE**: The spawn point entity will also impact the player's eye angle. For example, if the entity is upside down, the player's view will be as well.
@@ -2014,27 +1517,18 @@ interface GM {
2014
1517
  * @source https://wiki.facepunch.com/gmod/GM:PlayerSelectSpawn
2015
1518
  */
2016
1519
  PlayerSelectSpawn(self: GM, ply: Player, transition: boolean): Entity;
2017
- }
2018
-
2019
- interface GM {
2020
1520
  /**
2021
1521
  * Find a team spawn point entity for this player.
2022
1522
  * @realm server
2023
1523
  * @source https://wiki.facepunch.com/gmod/GM:PlayerSelectTeamSpawn
2024
1524
  */
2025
1525
  PlayerSelectTeamSpawn(self: GM, team: number, ply: Player): Entity;
2026
- }
2027
-
2028
- interface GM {
2029
1526
  /**
2030
1527
  * Called whenever view model hands needs setting a model. By default this calls [PLAYER:GetHandsModel](https://wiki.facepunch.com/gmod/PLAYER:GetHandsModel) and if that fails, sets the hands model according to his player model.
2031
1528
  * @realm server
2032
1529
  * @source https://wiki.facepunch.com/gmod/GM:PlayerSetHandsModel
2033
1530
  */
2034
1531
  PlayerSetHandsModel(self: GM, ply: Player, ent: Entity): void;
2035
- }
2036
-
2037
- interface GM {
2038
1532
  /**
2039
1533
  * Called whenever a player spawns and must choose a model. A good place to assign a model to a player.
2040
1534
  * **NOTE**: This function may not work in your custom gamemode if you have overridden your [GM:PlayerSpawn](https://wiki.facepunch.com/gmod/GM:PlayerSpawn) and you do not use [self.BaseClass.PlayerSpawn](https://wiki.facepunch.com/gmod/Global.DEFINE_BASECLASS) in it, or [hook.Call](https://wiki.facepunch.com/gmod/hook.Call) this hook from [GM:PlayerSpawn](https://wiki.facepunch.com/gmod/GM:PlayerSpawn).
@@ -2044,9 +1538,6 @@ interface GM {
2044
1538
  * @source https://wiki.facepunch.com/gmod/GM:PlayerSetModel
2045
1539
  */
2046
1540
  PlayerSetModel(self: GM, ply: Player): void;
2047
- }
2048
-
2049
- interface GM {
2050
1541
  /**
2051
1542
  * Returns true if the player should take damage from the given attacker.
2052
1543
  *
@@ -2057,18 +1548,12 @@ interface GM {
2057
1548
  * @source https://wiki.facepunch.com/gmod/GM:PlayerShouldTakeDamage
2058
1549
  */
2059
1550
  PlayerShouldTakeDamage(self: GM, ply: Player, attacker: Entity): boolean;
2060
- }
2061
-
2062
- interface GM {
2063
1551
  /**
2064
1552
  * Allows to suppress player taunts.
2065
1553
  * @realm server
2066
1554
  * @source https://wiki.facepunch.com/gmod/GM:PlayerShouldTaunt
2067
1555
  */
2068
1556
  PlayerShouldTaunt(self: GM, ply: Player, act: number): boolean;
2069
- }
2070
-
2071
- interface GM {
2072
1557
  /**
2073
1558
  * Called when the player is killed by [Player:KillSilent](https://wiki.facepunch.com/gmod/Player:KillSilent).
2074
1559
  *
@@ -2084,9 +1569,6 @@ interface GM {
2084
1569
  * @source https://wiki.facepunch.com/gmod/GM:PlayerSilentDeath
2085
1570
  */
2086
1571
  PlayerSilentDeath(self: GM, ply: Player): void;
2087
- }
2088
-
2089
- interface GM {
2090
1572
  /**
2091
1573
  * Called whenever a player spawns, including respawns.
2092
1574
  *
@@ -2101,36 +1583,24 @@ interface GM {
2101
1583
  * @source https://wiki.facepunch.com/gmod/GM:PlayerSpawn
2102
1584
  */
2103
1585
  PlayerSpawn(self: GM, player: Player, transition: boolean): void;
2104
- }
2105
-
2106
- interface GM {
2107
1586
  /**
2108
1587
  * Called to spawn the player as a spectator.
2109
1588
  * @realm server
2110
1589
  * @source https://wiki.facepunch.com/gmod/GM:PlayerSpawnAsSpectator
2111
1590
  */
2112
1591
  PlayerSpawnAsSpectator(self: GM, ply: Player): void;
2113
- }
2114
-
2115
- interface GM {
2116
1592
  /**
2117
1593
  * Determines if the player can spray using the `impulse 201` console command.
2118
1594
  * @realm server
2119
1595
  * @source https://wiki.facepunch.com/gmod/GM:PlayerSpray
2120
1596
  */
2121
1597
  PlayerSpray(self: GM, sprayer: Player): boolean;
2122
- }
2123
-
2124
- interface GM {
2125
1598
  /**
2126
1599
  * Called when player starts taunting.
2127
1600
  * @realm server
2128
1601
  * @source https://wiki.facepunch.com/gmod/GM:PlayerStartTaunt
2129
1602
  */
2130
1603
  PlayerStartTaunt(self: GM, ply: Player, act: number, length: number): void;
2131
- }
2132
-
2133
- interface GM {
2134
1604
  /**
2135
1605
  * Called when a player starts using voice chat.
2136
1606
  * **NOTE**: Set mp_show_voice_icons to 0, if you want disable icons above player.
@@ -2140,9 +1610,6 @@ interface GM {
2140
1610
  * @source https://wiki.facepunch.com/gmod/GM:PlayerStartVoice
2141
1611
  */
2142
1612
  PlayerStartVoice(self: GM, ply: Player, plyIndex?: number): boolean;
2143
- }
2144
-
2145
- interface GM {
2146
1613
  /**
2147
1614
  * Allows you to override the time between footsteps.
2148
1615
  *
@@ -2154,9 +1621,6 @@ interface GM {
2154
1621
  * @source https://wiki.facepunch.com/gmod/GM:PlayerStepSoundTime
2155
1622
  */
2156
1623
  PlayerStepSoundTime(self: GM, ply: Player, type: number, walking: boolean): number;
2157
- }
2158
-
2159
- interface GM {
2160
1624
  /**
2161
1625
  * Called whenever a player attempts to either turn on or off their flashlight, returning false will deny the change.
2162
1626
  * **NOTE**: Also gets called when using [Player:Flashlight](https://wiki.facepunch.com/gmod/Player:Flashlight).
@@ -2167,9 +1631,6 @@ interface GM {
2167
1631
  * @source https://wiki.facepunch.com/gmod/GM:PlayerSwitchFlashlight
2168
1632
  */
2169
1633
  PlayerSwitchFlashlight(self: GM, ply: Player, enabled: boolean): boolean;
2170
- }
2171
-
2172
- interface GM {
2173
1634
  /**
2174
1635
  * Called when a player attempts to switch their weapon.
2175
1636
  *
@@ -2179,9 +1640,6 @@ interface GM {
2179
1640
  * @source https://wiki.facepunch.com/gmod/GM:PlayerSwitchWeapon
2180
1641
  */
2181
1642
  PlayerSwitchWeapon(self: GM, player: Player, oldWeapon: Weapon, newWeapon: Weapon): boolean;
2182
- }
2183
-
2184
- interface GM {
2185
1643
  /**
2186
1644
  * The Move hook is called for you to manipulate the player's [CMoveData](https://wiki.facepunch.com/gmod/CMoveData). This hook is called moments before [GM:Move](https://wiki.facepunch.com/gmod/GM:Move) and [GM:PlayerNoClip](https://wiki.facepunch.com/gmod/GM:PlayerNoClip).
2187
1645
  *
@@ -2192,27 +1650,18 @@ interface GM {
2192
1650
  * @source https://wiki.facepunch.com/gmod/GM:PlayerTick
2193
1651
  */
2194
1652
  PlayerTick(self: GM, player: Player, mv: CMoveData): void;
2195
- }
2196
-
2197
- interface GM {
2198
1653
  /**
2199
1654
  * Called when a player has been hit by a trace and damaged (such as from a bullet). Returning true overrides the damage handling and prevents [GM:ScalePlayerDamage](https://wiki.facepunch.com/gmod/GM:ScalePlayerDamage) from being called.
2200
1655
  * @realm shared
2201
1656
  * @source https://wiki.facepunch.com/gmod/GM:PlayerTraceAttack
2202
1657
  */
2203
1658
  PlayerTraceAttack(self: GM, ply: Player, dmginfo: CTakeDamageInfo, dir: Vector, trace: TraceResult): boolean;
2204
- }
2205
-
2206
- interface GM {
2207
1659
  /**
2208
1660
  * Called when a player unfreezes an object.
2209
1661
  * @realm server
2210
1662
  * @source https://wiki.facepunch.com/gmod/GM:PlayerUnfrozeObject
2211
1663
  */
2212
1664
  PlayerUnfrozeObject(self: GM, ply: Player, ent: Entity, physobj: PhysObj): void;
2213
- }
2214
-
2215
- interface GM {
2216
1665
  /**
2217
1666
  * Triggered when the player presses use on an object. Continuously runs until USE is released but will not activate other Entities until the USE key is released; dependent on activation type of the Entity.
2218
1667
  *
@@ -2220,18 +1669,12 @@ interface GM {
2220
1669
  * @source https://wiki.facepunch.com/gmod/GM:PlayerUse
2221
1670
  */
2222
1671
  PlayerUse(self: GM, ply: Player, ent: Entity): boolean;
2223
- }
2224
-
2225
- interface GM {
2226
1672
  /**
2227
1673
  * Called when it's time to populate the context menu menu bar at the top.
2228
1674
  * @realm client
2229
1675
  * @source https://wiki.facepunch.com/gmod/GM:PopulateMenuBar
2230
1676
  */
2231
1677
  PopulateMenuBar(self: GM, menubar: Panel): void;
2232
- }
2233
-
2234
- interface GM {
2235
1678
  /**
2236
1679
  * Called right after the map has cleaned up (usually because [game.CleanUpMap](https://wiki.facepunch.com/gmod/game.CleanUpMap) was called)
2237
1680
  *
@@ -2241,9 +1684,6 @@ interface GM {
2241
1684
  * @source https://wiki.facepunch.com/gmod/GM:PostCleanupMap
2242
1685
  */
2243
1686
  PostCleanupMap(self: GM): void;
2244
- }
2245
-
2246
- interface GM {
2247
1687
  /**
2248
1688
  * Called right after the 2D skybox has been drawn - allowing you to draw over it.
2249
1689
  *
@@ -2253,9 +1693,6 @@ interface GM {
2253
1693
  * @source https://wiki.facepunch.com/gmod/GM:PostDraw2DSkyBox
2254
1694
  */
2255
1695
  PostDraw2DSkyBox(self: GM): void;
2256
- }
2257
-
2258
- interface GM {
2259
1696
  /**
2260
1697
  * Called after rendering effects. This is where halos are drawn. Called just before [GM:PreDrawHUD](https://wiki.facepunch.com/gmod/GM:PreDrawHUD) (The two hooks are basically identical).
2261
1698
  *
@@ -2267,9 +1704,6 @@ interface GM {
2267
1704
  * @source https://wiki.facepunch.com/gmod/GM:PostDrawEffects
2268
1705
  */
2269
1706
  PostDrawEffects(self: GM): void;
2270
- }
2271
-
2272
- interface GM {
2273
1707
  /**
2274
1708
  * Called after [GM:PreDrawHUD](https://wiki.facepunch.com/gmod/GM:PreDrawHUD), [GM:HUDPaintBackground](https://wiki.facepunch.com/gmod/GM:HUDPaintBackground) and [GM:HUDPaint](https://wiki.facepunch.com/gmod/GM:HUDPaint) but before [GM:DrawOverlay](https://wiki.facepunch.com/gmod/GM:DrawOverlay).
2275
1709
  *
@@ -2281,9 +1715,6 @@ interface GM {
2281
1715
  * @source https://wiki.facepunch.com/gmod/GM:PostDrawHUD
2282
1716
  */
2283
1717
  PostDrawHUD(self: GM): void;
2284
- }
2285
-
2286
- interface GM {
2287
1718
  /**
2288
1719
  * Called after drawing opaque entities.
2289
1720
  *
@@ -2295,9 +1726,6 @@ interface GM {
2295
1726
  * @source https://wiki.facepunch.com/gmod/GM:PostDrawOpaqueRenderables
2296
1727
  */
2297
1728
  PostDrawOpaqueRenderables(self: GM, bDrawingDepth: boolean, bDrawingSkybox: boolean, isDraw3DSkybox: boolean): void;
2298
- }
2299
-
2300
- interface GM {
2301
1729
  /**
2302
1730
  * Called after the player hands are drawn.
2303
1731
  *
@@ -2309,9 +1737,6 @@ interface GM {
2309
1737
  * @source https://wiki.facepunch.com/gmod/GM:PostDrawPlayerHands
2310
1738
  */
2311
1739
  PostDrawPlayerHands(self: GM, hands: Entity, vm: Entity, ply: Player, weapon: Weapon, flags: number): void;
2312
- }
2313
-
2314
- interface GM {
2315
1740
  /**
2316
1741
  * Called after drawing the 3D skybox. This will not be called if skybox rendering was prevented via the [GM:PreDrawSkyBox](https://wiki.facepunch.com/gmod/GM:PreDrawSkyBox) hook.
2317
1742
  *
@@ -2323,9 +1748,6 @@ interface GM {
2323
1748
  * @source https://wiki.facepunch.com/gmod/GM:PostDrawSkyBox
2324
1749
  */
2325
1750
  PostDrawSkyBox(self: GM): void;
2326
- }
2327
-
2328
- interface GM {
2329
1751
  /**
2330
1752
  * Called after all translucent entities are drawn.
2331
1753
  *
@@ -2340,9 +1762,6 @@ interface GM {
2340
1762
  * @source https://wiki.facepunch.com/gmod/GM:PostDrawTranslucentRenderables
2341
1763
  */
2342
1764
  PostDrawTranslucentRenderables(self: GM, bDrawingDepth: boolean, bDrawingSkybox: boolean, isDraw3DSkybox: boolean): void;
2343
- }
2344
-
2345
- interface GM {
2346
1765
  /**
2347
1766
  * Called after view model is drawn.
2348
1767
  *
@@ -2359,9 +1778,6 @@ interface GM {
2359
1778
  * @source https://wiki.facepunch.com/gmod/GM:PostDrawViewModel
2360
1779
  */
2361
1780
  PostDrawViewModel(self: GM, viewmodel: Entity, player: Player, weapon: Weapon, flags: number): void;
2362
- }
2363
-
2364
- interface GM {
2365
1781
  /**
2366
1782
  * Called every time a bullet pellet (i.e. this hook is called multiple times for a shotgun shot) is fired from an entity. Notably this hook will have the final damage and aim direction for the bullet pellet.
2367
1783
  *
@@ -2374,9 +1790,6 @@ interface GM {
2374
1790
  * @source https://wiki.facepunch.com/gmod/GM:PostEntityFireBullets
2375
1791
  */
2376
1792
  PostEntityFireBullets(self: GM, entity: Entity, data: FiredBullet): boolean;
2377
- }
2378
-
2379
- interface GM {
2380
1793
  /**
2381
1794
  * Called when an entity receives a damage event, after passing damage filters, etc.
2382
1795
  *
@@ -2389,18 +1802,12 @@ interface GM {
2389
1802
  * @source https://wiki.facepunch.com/gmod/GM:PostEntityTakeDamage
2390
1803
  */
2391
1804
  PostEntityTakeDamage(self: GM, ent: Entity, dmginfo: CTakeDamageInfo, wasDamageTaken: boolean): void;
2392
- }
2393
-
2394
- interface GM {
2395
1805
  /**
2396
1806
  * Called after the gamemode has loaded.
2397
1807
  * @realm shared
2398
1808
  * @source https://wiki.facepunch.com/gmod/GM:PostGamemodeLoaded
2399
1809
  */
2400
1810
  PostGamemodeLoaded(self: GM): void;
2401
- }
2402
-
2403
- interface GM {
2404
1811
  /**
2405
1812
  * Called right after [GM:DoPlayerDeath](https://wiki.facepunch.com/gmod/GM:DoPlayerDeath), [GM:PlayerDeath](https://wiki.facepunch.com/gmod/GM:PlayerDeath) and [GM:PlayerSilentDeath](https://wiki.facepunch.com/gmod/GM:PlayerSilentDeath).
2406
1813
  *
@@ -2414,9 +1821,6 @@ interface GM {
2414
1821
  * @source https://wiki.facepunch.com/gmod/GM:PostPlayerDeath
2415
1822
  */
2416
1823
  PostPlayerDeath(self: GM, ply: Player): void;
2417
- }
2418
-
2419
- interface GM {
2420
1824
  /**
2421
1825
  * Called after a given player in your [PVS (Potential Visibility Set)](https://developer.valvesoftware.com/wiki/PVS "PVS - Valve Developer Community") was drawn.
2422
1826
  *
@@ -2427,27 +1831,18 @@ interface GM {
2427
1831
  * @source https://wiki.facepunch.com/gmod/GM:PostPlayerDraw
2428
1832
  */
2429
1833
  PostPlayerDraw(self: GM, ply: Player, flags: number): void;
2430
- }
2431
-
2432
- interface GM {
2433
1834
  /**
2434
1835
  * Allows you to suppress post processing effect drawing.
2435
1836
  * @realm client
2436
1837
  * @source https://wiki.facepunch.com/gmod/GM:PostProcessPermitted
2437
1838
  */
2438
1839
  PostProcessPermitted(self: GM, effect_name: string): boolean;
2439
- }
2440
-
2441
- interface GM {
2442
1840
  /**
2443
1841
  * Called after the frame has been rendered.
2444
1842
  * @realm client
2445
1843
  * @source https://wiki.facepunch.com/gmod/GM:PostRender
2446
1844
  */
2447
1845
  PostRender(self: GM): void;
2448
- }
2449
-
2450
- interface GM {
2451
1846
  /**
2452
1847
  * Called after the VGUI has been drawn.
2453
1848
  *
@@ -2457,18 +1852,12 @@ interface GM {
2457
1852
  * @source https://wiki.facepunch.com/gmod/GM:PostRenderVGUI
2458
1853
  */
2459
1854
  PostRenderVGUI(self: GM): void;
2460
- }
2461
-
2462
- interface GM {
2463
1855
  /**
2464
1856
  * Called just after performing an undo.
2465
1857
  * @realm server
2466
1858
  * @source https://wiki.facepunch.com/gmod/GM:PostUndo
2467
1859
  */
2468
1860
  PostUndo(self: GM, undo: Undo, count: number): void;
2469
- }
2470
-
2471
- interface GM {
2472
1861
  /**
2473
1862
  * Called right before the map cleans up (usually because [game.CleanUpMap](https://wiki.facepunch.com/gmod/game.CleanUpMap) was called)
2474
1863
  *
@@ -2478,9 +1867,6 @@ interface GM {
2478
1867
  * @source https://wiki.facepunch.com/gmod/GM:PreCleanupMap
2479
1868
  */
2480
1869
  PreCleanupMap(self: GM): void;
2481
- }
2482
-
2483
- interface GM {
2484
1870
  /**
2485
1871
  * Called just after [GM:PreDrawViewModel](https://wiki.facepunch.com/gmod/GM:PreDrawViewModel) and can technically be considered as a "PostDrawAllViewModels".
2486
1872
  *
@@ -2492,9 +1878,6 @@ interface GM {
2492
1878
  * @source https://wiki.facepunch.com/gmod/GM:PreDrawEffects
2493
1879
  */
2494
1880
  PreDrawEffects(self: GM): void;
2495
- }
2496
-
2497
- interface GM {
2498
1881
  /**
2499
1882
  * Called just after [GM:PostDrawEffects](https://wiki.facepunch.com/gmod/GM:PostDrawEffects) (duplicate of it). Drawing anything in it seems to work incorrectly.
2500
1883
  *
@@ -2504,9 +1887,6 @@ interface GM {
2504
1887
  * @source https://wiki.facepunch.com/gmod/GM:PreDrawHUD
2505
1888
  */
2506
1889
  PreDrawHUD(self: GM): void;
2507
- }
2508
-
2509
- interface GM {
2510
1890
  /**
2511
1891
  * Called before rendering the halos. This is the place to call [halo.Add](https://wiki.facepunch.com/gmod/halo.Add). This hook is actually running inside of [GM:PostDrawEffects](https://wiki.facepunch.com/gmod/GM:PostDrawEffects).
2512
1892
  *
@@ -2516,9 +1896,6 @@ interface GM {
2516
1896
  * @source https://wiki.facepunch.com/gmod/GM:PreDrawHalos
2517
1897
  */
2518
1898
  PreDrawHalos(self: GM): void;
2519
- }
2520
-
2521
- interface GM {
2522
1899
  /**
2523
1900
  * Called before all opaque entities are drawn.
2524
1901
  *
@@ -2530,9 +1907,6 @@ interface GM {
2530
1907
  * @source https://wiki.facepunch.com/gmod/GM:PreDrawOpaqueRenderables
2531
1908
  */
2532
1909
  PreDrawOpaqueRenderables(self: GM, isDrawingDepth: boolean, isDrawSkybox: boolean, isDraw3DSkybox: boolean): boolean;
2533
- }
2534
-
2535
- interface GM {
2536
1910
  /**
2537
1911
  * Called before the player hands are drawn.
2538
1912
  *
@@ -2543,9 +1917,6 @@ interface GM {
2543
1917
  * @source https://wiki.facepunch.com/gmod/GM:PreDrawPlayerHands
2544
1918
  */
2545
1919
  PreDrawPlayerHands(self: GM, hands: Entity, vm: Entity, ply: Player, weapon: Weapon, flags: number): boolean;
2546
- }
2547
-
2548
- interface GM {
2549
1920
  /**
2550
1921
  * Called before the 3D sky box is drawn. This will not be called for maps with no 3D skybox, or when the 3d skybox is disabled. (`r_3dsky 0`)
2551
1922
  *
@@ -2557,9 +1928,6 @@ interface GM {
2557
1928
  * @source https://wiki.facepunch.com/gmod/GM:PreDrawSkyBox
2558
1929
  */
2559
1930
  PreDrawSkyBox(self: GM): boolean;
2560
- }
2561
-
2562
- interface GM {
2563
1931
  /**
2564
1932
  * Called before all the translucent entities are drawn.
2565
1933
  *
@@ -2574,9 +1942,6 @@ interface GM {
2574
1942
  * @source https://wiki.facepunch.com/gmod/GM:PreDrawTranslucentRenderables
2575
1943
  */
2576
1944
  PreDrawTranslucentRenderables(self: GM, isDrawingDepth: boolean, isDrawSkybox: boolean, isDraw3DSkybox: boolean): boolean;
2577
- }
2578
-
2579
- interface GM {
2580
1945
  /**
2581
1946
  * Called before the view model has been drawn.
2582
1947
  *
@@ -2593,9 +1958,6 @@ interface GM {
2593
1958
  * @source https://wiki.facepunch.com/gmod/GM:PreDrawViewModel
2594
1959
  */
2595
1960
  PreDrawViewModel(self: GM, vm: Entity, ply: Player, weapon: Weapon, flags: number): boolean;
2596
- }
2597
-
2598
- interface GM {
2599
1961
  /**
2600
1962
  * Called just before all view models (there are 3 per player, see [Player:GetViewModel](https://wiki.facepunch.com/gmod/Player:GetViewModel)) and entities with `RENDERGROUP_VIEWMODEL` are drawn.
2601
1963
  *
@@ -2609,18 +1971,12 @@ interface GM {
2609
1971
  * @source https://wiki.facepunch.com/gmod/GM:PreDrawViewModels
2610
1972
  */
2611
1973
  PreDrawViewModels(self: GM): void;
2612
- }
2613
-
2614
- interface GM {
2615
1974
  /**
2616
1975
  * Called before the gamemode is loaded.
2617
1976
  * @realm shared
2618
1977
  * @source https://wiki.facepunch.com/gmod/GM:PreGamemodeLoaded
2619
1978
  */
2620
1979
  PreGamemodeLoaded(self: GM): void;
2621
- }
2622
-
2623
- interface GM {
2624
1980
  /**
2625
1981
  * Called before the player is drawn.
2626
1982
  *
@@ -2630,9 +1986,6 @@ interface GM {
2630
1986
  * @source https://wiki.facepunch.com/gmod/GM:PrePlayerDraw
2631
1987
  */
2632
1988
  PrePlayerDraw(self: GM, player: Player, flags: number): boolean;
2633
- }
2634
-
2635
- interface GM {
2636
1989
  /**
2637
1990
  * Called by [scripted_ents.Register](https://wiki.facepunch.com/gmod/scripted_ents.Register).
2638
1991
  *
@@ -2640,9 +1993,6 @@ interface GM {
2640
1993
  * @source https://wiki.facepunch.com/gmod/GM:PreRegisterSENT
2641
1994
  */
2642
1995
  PreRegisterSENT(self: GM, ent: table, _class: string): boolean;
2643
- }
2644
-
2645
- interface GM {
2646
1996
  /**
2647
1997
  * Called when a Scripted Weapon (SWEP) is about to be registered, allowing addons to alter the weapon's SWEP table with custom data for later usage. Called internally from [weapons.Register](https://wiki.facepunch.com/gmod/weapons.Register).
2648
1998
  *
@@ -2650,45 +2000,30 @@ interface GM {
2650
2000
  * @source https://wiki.facepunch.com/gmod/GM:PreRegisterSWEP
2651
2001
  */
2652
2002
  PreRegisterSWEP(self: GM, swep: table, _class: string): boolean;
2653
- }
2654
-
2655
- interface GM {
2656
2003
  /**
2657
2004
  * Called before the renderer is about to start rendering the next frame.
2658
2005
  * @realm client
2659
2006
  * @source https://wiki.facepunch.com/gmod/GM:PreRender
2660
2007
  */
2661
2008
  PreRender(self: GM): boolean;
2662
- }
2663
-
2664
- interface GM {
2665
2009
  /**
2666
2010
  * Called just before performing an undo.
2667
2011
  * @realm server
2668
2012
  * @source https://wiki.facepunch.com/gmod/GM:PreUndo
2669
2013
  */
2670
2014
  PreUndo(self: GM, undo: Undo): boolean;
2671
- }
2672
-
2673
- interface GM {
2674
2015
  /**
2675
2016
  * This will prevent IN_ATTACK from sending to server when player tries to shoot from C menu.
2676
2017
  * @realm client
2677
2018
  * @source https://wiki.facepunch.com/gmod/GM:PreventScreenClicks
2678
2019
  */
2679
2020
  PreventScreenClicks(self: GM): boolean;
2680
- }
2681
-
2682
- interface GM {
2683
2021
  /**
2684
2022
  * Called when a prop has been destroyed.
2685
2023
  * @realm shared
2686
2024
  * @source https://wiki.facepunch.com/gmod/GM:PropBreak
2687
2025
  */
2688
2026
  PropBreak(self: GM, attacker: Player, prop: Entity): void;
2689
- }
2690
-
2691
- interface GM {
2692
2027
  /**
2693
2028
  * Render the scene. Used by the `Stereoscopy` post-processing effect.
2694
2029
  *
@@ -2699,9 +2034,6 @@ interface GM {
2699
2034
  * @source https://wiki.facepunch.com/gmod/GM:RenderScene
2700
2035
  */
2701
2036
  RenderScene(self: GM, origin: Vector, angles: Angle, fov: number): boolean;
2702
- }
2703
-
2704
- interface GM {
2705
2037
  /**
2706
2038
  * Used to render post processing effects.
2707
2039
  *
@@ -2711,9 +2043,6 @@ interface GM {
2711
2043
  * @source https://wiki.facepunch.com/gmod/GM:RenderScreenspaceEffects
2712
2044
  */
2713
2045
  RenderScreenspaceEffects(self: GM): void;
2714
- }
2715
-
2716
- interface GM {
2717
2046
  /**
2718
2047
  * Called when the game is reloaded from a Source Engine save system ( not the Sandbox saves or dupes ).
2719
2048
  *
@@ -2723,9 +2052,6 @@ interface GM {
2723
2052
  * @source https://wiki.facepunch.com/gmod/GM:Restored
2724
2053
  */
2725
2054
  Restored(self: GM): void;
2726
- }
2727
-
2728
- interface GM {
2729
2055
  /**
2730
2056
  * Called when the game is saved using the Source Engine save system (not the Sandbox saves or dupes).
2731
2057
  *
@@ -2737,9 +2063,6 @@ interface GM {
2737
2063
  * @source https://wiki.facepunch.com/gmod/GM:Saved
2738
2064
  */
2739
2065
  Saved(self: GM): void;
2740
- }
2741
-
2742
- interface GM {
2743
2066
  /**
2744
2067
  * Called when an NPC takes damage.
2745
2068
  *
@@ -2750,9 +2073,6 @@ interface GM {
2750
2073
  * @source https://wiki.facepunch.com/gmod/GM:ScaleNPCDamage
2751
2074
  */
2752
2075
  ScaleNPCDamage(self: GM, npc: NPC, hitgroup: number, dmginfo: CTakeDamageInfo): void;
2753
- }
2754
-
2755
- interface GM {
2756
2076
  /**
2757
2077
  * This hook allows you to change how much damage a player receives when one takes damage to a specific body part.
2758
2078
  *
@@ -2763,27 +2083,18 @@ interface GM {
2763
2083
  * @source https://wiki.facepunch.com/gmod/GM:ScalePlayerDamage
2764
2084
  */
2765
2085
  ScalePlayerDamage(self: GM, ply: Player, hitgroup: number, dmginfo: CTakeDamageInfo): boolean;
2766
- }
2767
-
2768
- interface GM {
2769
2086
  /**
2770
2087
  * Called when player released the scoreboard button (TAB by default).
2771
2088
  * @realm client
2772
2089
  * @source https://wiki.facepunch.com/gmod/GM:ScoreboardHide
2773
2090
  */
2774
2091
  ScoreboardHide(self: GM): void;
2775
- }
2776
-
2777
- interface GM {
2778
2092
  /**
2779
2093
  * Called when player presses the scoreboard button (TAB by default).
2780
2094
  * @realm client
2781
2095
  * @source https://wiki.facepunch.com/gmod/GM:ScoreboardShow
2782
2096
  */
2783
2097
  ScoreboardShow(self: GM): boolean;
2784
- }
2785
-
2786
- interface GM {
2787
2098
  /**
2788
2099
  * An internal function used to send a death notice event to all clients.
2789
2100
  *
@@ -2791,9 +2102,6 @@ interface GM {
2791
2102
  * @source https://wiki.facepunch.com/gmod/GM:SendDeathNotice
2792
2103
  */
2793
2104
  SendDeathNotice(self: GM, attacker: Entity | string | nil, inflictor: string, victim: Entity | string, flags: number): void;
2794
- }
2795
-
2796
- interface GM {
2797
2105
  /**
2798
2106
  * Sets player run and sprint speeds.
2799
2107
  * Using a speed of `0` can lead to prediction errors, and can cause players to move at `sv_maxvelocity`
@@ -2804,9 +2112,6 @@ interface GM {
2804
2112
  * @source https://wiki.facepunch.com/gmod/GM:SetPlayerSpeed
2805
2113
  */
2806
2114
  SetPlayerSpeed(self: GM, ply: Player, walkSpeed: number, runSpeed: number): void;
2807
- }
2808
-
2809
- interface GM {
2810
2115
  /**
2811
2116
  * SetupMove is called before the engine process movements. This allows us to override the players movement.
2812
2117
  *
@@ -2816,18 +2121,12 @@ interface GM {
2816
2121
  * @source https://wiki.facepunch.com/gmod/GM:SetupMove
2817
2122
  */
2818
2123
  SetupMove(self: GM, ply: Player, mv: CMoveData, cmd: CUserCmd): void;
2819
- }
2820
-
2821
- interface GM {
2822
2124
  /**
2823
2125
  * Allows you to add extra positions to the player's [PVS (Potential Visibility Set)](https://developer.valvesoftware.com/wiki/PVS "PVS - Valve Developer Community"). This is the place to call [Global.AddOriginToPVS](https://wiki.facepunch.com/gmod/Global.AddOriginToPVS).
2824
2126
  * @realm server
2825
2127
  * @source https://wiki.facepunch.com/gmod/GM:SetupPlayerVisibility
2826
2128
  */
2827
2129
  SetupPlayerVisibility(self: GM, ply: Player, viewEntity: Entity): void;
2828
- }
2829
-
2830
- interface GM {
2831
2130
  /**
2832
2131
  * Allows you to use render.Fog* functions to manipulate skybox fog.
2833
2132
  * This will not be called for maps with no 3D skybox, or when the 3d skybox is disabled. (`r_3dsky 0`)
@@ -2836,18 +2135,12 @@ interface GM {
2836
2135
  * @source https://wiki.facepunch.com/gmod/GM:SetupSkyboxFog
2837
2136
  */
2838
2137
  SetupSkyboxFog(self: GM, scale: number): boolean;
2839
- }
2840
-
2841
- interface GM {
2842
2138
  /**
2843
2139
  * Allows you to use render.Fog* functions to manipulate world fog.
2844
2140
  * @realm client
2845
2141
  * @source https://wiki.facepunch.com/gmod/GM:SetupWorldFog
2846
2142
  */
2847
2143
  SetupWorldFog(self: GM): boolean;
2848
- }
2849
-
2850
- interface GM {
2851
2144
  /**
2852
2145
  * Called to decide whether a pair of entities should collide with each other. This is only called if [Entity:SetCustomCollisionCheck](https://wiki.facepunch.com/gmod/Entity:SetCustomCollisionCheck) was used on one or both entities.
2853
2146
  *
@@ -2864,9 +2157,6 @@ interface GM {
2864
2157
  * @source https://wiki.facepunch.com/gmod/GM:ShouldCollide
2865
2158
  */
2866
2159
  ShouldCollide(self: GM, ent1: Entity, ent2: Entity): boolean;
2867
- }
2868
-
2869
- interface GM {
2870
2160
  /**
2871
2161
  * Called to determine if the [Global.LocalPlayer](https://wiki.facepunch.com/gmod/Global.LocalPlayer) should be drawn.
2872
2162
  *
@@ -2879,9 +2169,6 @@ interface GM {
2879
2169
  * @source https://wiki.facepunch.com/gmod/GM:ShouldDrawLocalPlayer
2880
2170
  */
2881
2171
  ShouldDrawLocalPlayer(self: GM, ply: Player): boolean;
2882
- }
2883
-
2884
- interface GM {
2885
2172
  /**
2886
2173
  * Called when a player executes `gm_showhelp` console command. (Default bind is F1)
2887
2174
  *
@@ -2889,36 +2176,24 @@ interface GM {
2889
2176
  * @source https://wiki.facepunch.com/gmod/GM:ShowHelp
2890
2177
  */
2891
2178
  ShowHelp(self: GM, ply: Player): void;
2892
- }
2893
-
2894
- interface GM {
2895
2179
  /**
2896
2180
  * Called when a player executes `gm_showspare1` console command ( Default bind is F3 ).
2897
2181
  * @realm shared
2898
2182
  * @source https://wiki.facepunch.com/gmod/GM:ShowSpare1
2899
2183
  */
2900
2184
  ShowSpare1(self: GM, ply: Player): void;
2901
- }
2902
-
2903
- interface GM {
2904
2185
  /**
2905
2186
  * Called when a player executes `gm_showspare2` console command ( Default bind is F4 ).
2906
2187
  * @realm shared
2907
2188
  * @source https://wiki.facepunch.com/gmod/GM:ShowSpare2
2908
2189
  */
2909
2190
  ShowSpare2(self: GM, ply: Player): void;
2910
- }
2911
-
2912
- interface GM {
2913
2191
  /**
2914
2192
  * Called when a player executes `gm_showteam` console command. ( Default bind is F2 )
2915
2193
  * @realm shared
2916
2194
  * @source https://wiki.facepunch.com/gmod/GM:ShowTeam
2917
2195
  */
2918
2196
  ShowTeam(self: GM, ply: Player): void;
2919
- }
2920
-
2921
- interface GM {
2922
2197
  /**
2923
2198
  * Called whenever the Lua environment is about to be shut down, for example on map change, or when the server is going to shut down.
2924
2199
  *
@@ -2926,27 +2201,18 @@ interface GM {
2926
2201
  * @source https://wiki.facepunch.com/gmod/GM:ShutDown
2927
2202
  */
2928
2203
  ShutDown(self: GM): void;
2929
- }
2930
-
2931
- interface GM {
2932
2204
  /**
2933
2205
  * Called when the Spawnmenu is Created.
2934
2206
  * @realm client
2935
2207
  * @source https://wiki.facepunch.com/gmod/GM:SpawnMenuCreated
2936
2208
  */
2937
2209
  SpawnMenuCreated(self: GM): void;
2938
- }
2939
-
2940
- interface GM {
2941
2210
  /**
2942
2211
  * Called when spawn icon is generated.
2943
2212
  * @realm client
2944
2213
  * @source https://wiki.facepunch.com/gmod/GM:SpawniconGenerated
2945
2214
  */
2946
2215
  SpawniconGenerated(self: GM, lastmodel: string, imagename: string, modelsleft: number): void;
2947
- }
2948
-
2949
- interface GM {
2950
2216
  /**
2951
2217
  * Runs when the user tries to open the chat box.
2952
2218
  *
@@ -2957,9 +2223,6 @@ interface GM {
2957
2223
  * @source https://wiki.facepunch.com/gmod/GM:StartChat
2958
2224
  */
2959
2225
  StartChat(self: GM, isTeamChat: boolean): boolean;
2960
- }
2961
-
2962
- interface GM {
2963
2226
  /**
2964
2227
  * Allows you to change the players inputs before they are processed by the server. This function is also called for bots, making it the best solution to control them.
2965
2228
  *
@@ -2973,27 +2236,18 @@ interface GM {
2973
2236
  * @source https://wiki.facepunch.com/gmod/GM:StartCommand
2974
2237
  */
2975
2238
  StartCommand(self: GM, ply: Player, ucmd: CUserCmd): void;
2976
- }
2977
-
2978
- interface GM {
2979
2239
  /**
2980
2240
  * Called right before an entity starts driving. Overriding this hook will cause it to not call [drive.Start](https://wiki.facepunch.com/gmod/drive.Start) and the player will not begin driving the entity.
2981
2241
  * @realm shared
2982
2242
  * @source https://wiki.facepunch.com/gmod/GM:StartEntityDriving
2983
2243
  */
2984
2244
  StartEntityDriving(self: GM, ent: Entity, ply: Player): void;
2985
- }
2986
-
2987
- interface GM {
2988
2245
  /**
2989
2246
  * Called when you start a new game via the menu.
2990
2247
  * @realm menu
2991
2248
  * @source https://wiki.facepunch.com/gmod/GM:StartGame
2992
2249
  */
2993
2250
  StartGame(self: GM): void;
2994
- }
2995
-
2996
- interface GM {
2997
2251
  /**
2998
2252
  * Called every rendered frame on client, except when the game is paused.
2999
2253
  *
@@ -3009,9 +2263,6 @@ interface GM {
3009
2263
  * @source https://wiki.facepunch.com/gmod/GM:Think
3010
2264
  */
3011
2265
  Think(self: GM): void;
3012
- }
3013
-
3014
- interface GM {
3015
2266
  /**
3016
2267
  * Called every game tick. [engine.TickCount](https://wiki.facepunch.com/gmod/engine.TickCount) is guaranteed to be different between each call.
3017
2268
  *
@@ -3026,9 +2277,6 @@ interface GM {
3026
2277
  * @source https://wiki.facepunch.com/gmod/GM:Tick
3027
2278
  */
3028
2279
  Tick(self: GM): void;
3029
- }
3030
-
3031
- interface GM {
3032
2280
  /**
3033
2281
  * **NOTE**: Isn't called when CalcMainActivity returns a valid override sequence id
3034
2282
  *
@@ -3038,36 +2286,24 @@ interface GM {
3038
2286
  * @source https://wiki.facepunch.com/gmod/GM:TranslateActivity
3039
2287
  */
3040
2288
  TranslateActivity(self: GM, ply: Player, act: number): number;
3041
- }
3042
-
3043
- interface GM {
3044
2289
  /**
3045
2290
  * Animation updates (pose params etc) should be done here.
3046
2291
  * @realm shared
3047
2292
  * @source https://wiki.facepunch.com/gmod/GM:UpdateAnimation
3048
2293
  */
3049
2294
  UpdateAnimation(self: GM, ply: Player, velocity: Vector, maxSeqGroundSpeed: number): void;
3050
- }
3051
-
3052
- interface GM {
3053
2295
  /**
3054
2296
  * Called when user clicks on a VGUI panel.
3055
2297
  * @realm client
3056
2298
  * @source https://wiki.facepunch.com/gmod/GM:VGUIMousePressAllowed
3057
2299
  */
3058
2300
  VGUIMousePressAllowed(self: GM, button: number): boolean;
3059
- }
3060
-
3061
- interface GM {
3062
2301
  /**
3063
2302
  * Called when a mouse button is pressed on a VGUI element or menu.
3064
2303
  * @realm client and menu
3065
2304
  * @source https://wiki.facepunch.com/gmod/GM:VGUIMousePressed
3066
2305
  */
3067
2306
  VGUIMousePressed(self: GM, pnl: Panel, mouseCode: number): void;
3068
- }
3069
-
3070
- interface GM {
3071
2307
  /**
3072
2308
  * Called when a variable is edited on an Entity (called by Edit Properties... menu). See [Editable Entities](https://wiki.facepunch.com/gmod/Editable_Entities) for more information.
3073
2309
  *
@@ -3078,9 +2314,6 @@ interface GM {
3078
2314
  * @source https://wiki.facepunch.com/gmod/GM:VariableEdited
3079
2315
  */
3080
2316
  VariableEdited(self: GM, ent: Entity, ply: Player, key: string, val: string, editor: table): void;
3081
- }
3082
-
3083
- interface GM {
3084
2317
  /**
3085
2318
  * Called when you are driving a vehicle. This hook works just like [GM:Move](https://wiki.facepunch.com/gmod/GM:Move).
3086
2319
  *
@@ -3090,9 +2323,6 @@ interface GM {
3090
2323
  * @source https://wiki.facepunch.com/gmod/GM:VehicleMove
3091
2324
  */
3092
2325
  VehicleMove(self: GM, ply: Player, veh: Vehicle, mv: CMoveData): void;
3093
- }
3094
-
3095
- interface GM {
3096
2326
  /**
3097
2327
  * Called as a weapon entity is picked up by a player. (Including [Player:Give](https://wiki.facepunch.com/gmod/Player:Give))
3098
2328
  *
@@ -3109,63 +2339,42 @@ interface GM {
3109
2339
  * @source https://wiki.facepunch.com/gmod/GM:WeaponEquip
3110
2340
  */
3111
2341
  WeaponEquip(self: GM, weapon: Weapon, owner: Player): void;
3112
- }
3113
-
3114
- interface GM {
3115
2342
  /**
3116
2343
  * Called when an addon from the Steam workshop begins downloading. Used by default to place details on the workshop downloading panel.
3117
2344
  * @realm menu
3118
2345
  * @source https://wiki.facepunch.com/gmod/GM:WorkshopDownloadFile
3119
2346
  */
3120
2347
  WorkshopDownloadFile(self: GM, id: number, imageID: number, title: string, size: number): void;
3121
- }
3122
-
3123
- interface GM {
3124
2348
  /**
3125
2349
  * Called while an addon from the Steam workshop is downloading. Used by default to update details on the fancy workshop download panel.
3126
2350
  * @realm menu
3127
2351
  * @source https://wiki.facepunch.com/gmod/GM:WorkshopDownloadProgress
3128
2352
  */
3129
2353
  WorkshopDownloadProgress(self: GM, id: number, imageID: number, title: string, downloaded: number, expected: number): void;
3130
- }
3131
-
3132
- interface GM {
3133
2354
  /**
3134
2355
  * Called after [GM:WorkshopStart](https://wiki.facepunch.com/gmod/GM:WorkshopStart).
3135
2356
  * @realm menu
3136
2357
  * @source https://wiki.facepunch.com/gmod/GM:WorkshopDownloadTotals
3137
2358
  */
3138
2359
  WorkshopDownloadTotals(self: GM, remain: number, total: number): void;
3139
- }
3140
-
3141
- interface GM {
3142
2360
  /**
3143
2361
  * Called when an addon from the Steam workshop finishes downloading. Used by default to update details on the workshop downloading panel.
3144
2362
  * @realm menu
3145
2363
  * @source https://wiki.facepunch.com/gmod/GM:WorkshopDownloadedFile
3146
2364
  */
3147
2365
  WorkshopDownloadedFile(self: GM, id: number, title: string): void;
3148
- }
3149
-
3150
- interface GM {
3151
2366
  /**
3152
2367
  * Called when downloading content from Steam workshop ends. Used by default to hide fancy workshop downloading panel.
3153
2368
  * @realm menu
3154
2369
  * @source https://wiki.facepunch.com/gmod/GM:WorkshopEnd
3155
2370
  */
3156
2371
  WorkshopEnd(self: GM): void;
3157
- }
3158
-
3159
- interface GM {
3160
2372
  /**
3161
2373
  * Called while an addon from the Steam workshop is extracting. Used by default to update details on the fancy workshop download panel.
3162
2374
  * @realm menu
3163
2375
  * @source https://wiki.facepunch.com/gmod/GM:WorkshopExtractProgress
3164
2376
  */
3165
2377
  WorkshopExtractProgress(self: GM, id: number, ImageID: number, title: string, percent: number): void;
3166
- }
3167
-
3168
- interface GM {
3169
2378
  /**
3170
2379
  * Called when downloading content from Steam workshop begins. Used by default to show fancy workshop downloading panel.
3171
2380
  *
@@ -3182,18 +2391,12 @@ interface GM {
3182
2391
  * @source https://wiki.facepunch.com/gmod/GM:WorkshopStart
3183
2392
  */
3184
2393
  WorkshopStart(self: GM): void;
3185
- }
3186
-
3187
- interface GM {
3188
2394
  /**
3189
2395
  * Called when UGC subscription status changes.
3190
2396
  * @realm menu
3191
2397
  * @source https://wiki.facepunch.com/gmod/GM:WorkshopSubscriptionsChanged
3192
2398
  */
3193
2399
  WorkshopSubscriptionsChanged(self: GM): void;
3194
- }
3195
-
3196
- interface GM {
3197
2400
  /**
3198
2401
  * Called when a Workshop Message is received?. Currently, it seems like the message will be **#ugc.mounting** every time.
3199
2402
  * When does this exactly get called?. If an addon is subscribed, unsubscribed, error occurs or on any event?
@@ -3202,9 +2405,6 @@ interface GM {
3202
2405
  * @source https://wiki.facepunch.com/gmod/GM:WorkshopSubscriptionsMessage
3203
2406
  */
3204
2407
  WorkshopSubscriptionsMessage(self: GM, message: string): void;
3205
- }
3206
-
3207
- interface GM {
3208
2408
  /**
3209
2409
  * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
3210
2410
  *
@@ -3216,3 +2416,270 @@ interface GM {
3216
2416
  WorkshopSubscriptionsProgress(self: GM, num: number, max: number): void;
3217
2417
  }
3218
2418
 
2419
+
2420
+
2421
+
2422
+
2423
+
2424
+
2425
+
2426
+
2427
+
2428
+
2429
+
2430
+
2431
+
2432
+
2433
+
2434
+
2435
+
2436
+
2437
+
2438
+
2439
+
2440
+
2441
+
2442
+
2443
+
2444
+
2445
+
2446
+
2447
+
2448
+
2449
+
2450
+
2451
+
2452
+
2453
+
2454
+
2455
+
2456
+
2457
+
2458
+
2459
+
2460
+
2461
+
2462
+
2463
+
2464
+
2465
+
2466
+
2467
+
2468
+
2469
+
2470
+
2471
+
2472
+
2473
+
2474
+
2475
+
2476
+
2477
+
2478
+
2479
+
2480
+
2481
+
2482
+
2483
+
2484
+
2485
+
2486
+
2487
+
2488
+
2489
+
2490
+
2491
+
2492
+
2493
+
2494
+
2495
+
2496
+
2497
+
2498
+
2499
+
2500
+
2501
+
2502
+
2503
+
2504
+
2505
+
2506
+
2507
+
2508
+
2509
+
2510
+
2511
+
2512
+
2513
+
2514
+
2515
+
2516
+
2517
+
2518
+
2519
+
2520
+
2521
+
2522
+
2523
+
2524
+
2525
+
2526
+
2527
+
2528
+
2529
+
2530
+
2531
+
2532
+
2533
+
2534
+
2535
+
2536
+
2537
+
2538
+
2539
+
2540
+
2541
+
2542
+
2543
+
2544
+
2545
+
2546
+
2547
+
2548
+
2549
+
2550
+
2551
+
2552
+
2553
+
2554
+
2555
+
2556
+
2557
+
2558
+
2559
+
2560
+
2561
+
2562
+
2563
+
2564
+
2565
+
2566
+
2567
+
2568
+
2569
+
2570
+
2571
+
2572
+
2573
+
2574
+
2575
+
2576
+
2577
+
2578
+
2579
+
2580
+
2581
+
2582
+
2583
+
2584
+
2585
+
2586
+
2587
+
2588
+
2589
+
2590
+
2591
+
2592
+
2593
+
2594
+
2595
+
2596
+
2597
+
2598
+
2599
+
2600
+
2601
+
2602
+
2603
+
2604
+
2605
+
2606
+
2607
+
2608
+
2609
+
2610
+
2611
+
2612
+
2613
+
2614
+
2615
+
2616
+
2617
+
2618
+
2619
+
2620
+
2621
+
2622
+
2623
+
2624
+
2625
+
2626
+
2627
+
2628
+
2629
+
2630
+
2631
+
2632
+
2633
+
2634
+
2635
+
2636
+
2637
+
2638
+
2639
+
2640
+
2641
+
2642
+
2643
+
2644
+
2645
+
2646
+
2647
+
2648
+
2649
+
2650
+
2651
+
2652
+
2653
+
2654
+
2655
+
2656
+
2657
+
2658
+
2659
+
2660
+
2661
+
2662
+
2663
+
2664
+
2665
+
2666
+
2667
+
2668
+
2669
+
2670
+
2671
+
2672
+
2673
+
2674
+
2675
+
2676
+
2677
+
2678
+
2679
+
2680
+
2681
+
2682
+
2683
+
2684
+
2685
+