@tlua/gmod 1.0.1

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 (278) hide show
  1. package/README.md +28 -0
  2. package/__metadata.json +4 -0
  3. package/_globals.d.tlua +178 -0
  4. package/_gmod-std.d.tlua +35 -0
  5. package/achievementicon.d.tlua +12 -0
  6. package/achievements.d.tlua +162 -0
  7. package/ai.d.tlua +65 -0
  8. package/ai_schedule.d.tlua +17 -0
  9. package/ai_task.d.tlua +17 -0
  10. package/angle.d.tlua +197 -0
  11. package/avatarimage.d.tlua +10 -0
  12. package/awesomium.d.tlua +14 -0
  13. package/baseclass.d.tlua +42 -0
  14. package/bf_read.d.tlua +110 -0
  15. package/bit.d.tlua +121 -0
  16. package/button.d.tlua +13 -0
  17. package/cam.d.tlua +220 -0
  18. package/ceffectdata.d.tlua +337 -0
  19. package/chat.d.tlua +62 -0
  20. package/checkbutton.d.tlua +14 -0
  21. package/cleanup.d.tlua +88 -0
  22. package/cluaemitter.d.tlua +119 -0
  23. package/clualocomotion.d.tlua +383 -0
  24. package/cluaparticle.d.tlua +426 -0
  25. package/cmovedata.d.tlua +476 -0
  26. package/cnavarea.d.tlua +845 -0
  27. package/cnavladder.d.tlua +209 -0
  28. package/cnewparticleeffect.d.tlua +259 -0
  29. package/color.d.tlua +339 -0
  30. package/concommand.d.tlua +69 -0
  31. package/constraint.d.tlua +311 -0
  32. package/construct.d.tlua +26 -0
  33. package/contentheader.d.tlua +32 -0
  34. package/contenticon.d.tlua +86 -0
  35. package/contentsidebar.d.tlua +45 -0
  36. package/contentsidebartoolbox.d.tlua +13 -0
  37. package/contextbase.d.tlua +37 -0
  38. package/controlpanel.d.tlua +140 -0
  39. package/controlpresets.d.tlua +118 -0
  40. package/convar.d.tlua +162 -0
  41. package/cookie.d.tlua +60 -0
  42. package/coroutine.d.tlua +90 -0
  43. package/crecipientfilter.d.tlua +152 -0
  44. package/csent.d.tlua +10 -0
  45. package/csoundpatch.d.tlua +150 -0
  46. package/ctakedamageinfo.d.tlua +366 -0
  47. package/ctrllistbox.d.tlua +12 -0
  48. package/ctrlnumpad.d.tlua +73 -0
  49. package/cusercmd.d.tlua +320 -0
  50. package/custom_classes.d.tlua +65 -0
  51. package/custom_entity_fields.d.tlua +96 -0
  52. package/cvars.d.tlua +80 -0
  53. package/dadjustablemodelpanel.d.tlua +81 -0
  54. package/dalphabar.d.tlua +27 -0
  55. package/dbinder.d.tlua +37 -0
  56. package/dbubblecontainer.d.tlua +18 -0
  57. package/dbutton.d.tlua +88 -0
  58. package/dcategoryheader.d.tlua +13 -0
  59. package/dcategorylist.d.tlua +11 -0
  60. package/dcheckbox.d.tlua +46 -0
  61. package/dcheckboxlabel.d.tlua +90 -0
  62. package/dcollapsiblecategory.d.tlua +240 -0
  63. package/dcolorbutton.d.tlua +73 -0
  64. package/dcolorcombo.d.tlua +54 -0
  65. package/dcolorcube.d.tlua +137 -0
  66. package/dcolormixer.d.tlua +303 -0
  67. package/dcolorpalette.d.tlua +294 -0
  68. package/dcolumnsheet.d.tlua +49 -0
  69. package/dcombobox.d.tlua +161 -0
  70. package/ddragbase.d.tlua +151 -0
  71. package/ddrawer.d.tlua +72 -0
  72. package/debug.d.tlua +236 -0
  73. package/debugoverlay.d.tlua +193 -0
  74. package/dentityproperties.d.tlua +63 -0
  75. package/derma.d.tlua +119 -0
  76. package/dexpandbutton.d.tlua +30 -0
  77. package/dfilebrowser.d.tlua +228 -0
  78. package/dform.d.tlua +176 -0
  79. package/dframe.d.tlua +261 -0
  80. package/dgrid.d.tlua +113 -0
  81. package/dhorizontaldivider.d.tlua +196 -0
  82. package/dhorizontalscroller.d.tlua +104 -0
  83. package/dhscrollbar.d.tlua +109 -0
  84. package/dhtml.d.tlua +91 -0
  85. package/dhtmlcontrols.d.tlua +62 -0
  86. package/diconbrowser.d.tlua +113 -0
  87. package/diconlayout.d.tlua +190 -0
  88. package/dimage.d.tlua +221 -0
  89. package/dimagebutton.d.tlua +103 -0
  90. package/dkillicon.d.tlua +9 -0
  91. package/dlabel.d.tlua +385 -0
  92. package/dlabeleditable.d.tlua +51 -0
  93. package/dlabelurl.d.tlua +100 -0
  94. package/dlistbox.d.tlua +82 -0
  95. package/dlistboxitem.d.tlua +42 -0
  96. package/dlistlayout.d.tlua +14 -0
  97. package/dlistview.d.tlua +360 -0
  98. package/dlistview_column.d.tlua +135 -0
  99. package/dlistview_columnplain.d.tlua +11 -0
  100. package/dlistview_draggerbar.d.tlua +11 -0
  101. package/dlistview_line.d.tlua +140 -0
  102. package/dlistviewheaderlabel.d.tlua +11 -0
  103. package/dlistviewlabel.d.tlua +11 -0
  104. package/dlistviewline.d.tlua +11 -0
  105. package/dmenu.d.tlua +266 -0
  106. package/dmenubar.d.tlua +42 -0
  107. package/dmenuoption.d.tlua +135 -0
  108. package/dmenuoptioncvar.d.tlua +64 -0
  109. package/dmodelpanel.d.tlua +207 -0
  110. package/dmodelselect.d.tlua +20 -0
  111. package/dmodelselectmulti.d.tlua +19 -0
  112. package/dnotify.d.tlua +93 -0
  113. package/dnumberscratch.d.tlua +284 -0
  114. package/dnumberwang.d.tlua +147 -0
  115. package/dnumpad.d.tlua +11 -0
  116. package/dnumslider.d.tlua +182 -0
  117. package/dpanel.d.tlua +152 -0
  118. package/dpanellist.d.tlua +109 -0
  119. package/dpaneloverlay.d.tlua +65 -0
  120. package/dpanelselect.d.tlua +13 -0
  121. package/dpanpanel.d.tlua +64 -0
  122. package/dprogress.d.tlua +27 -0
  123. package/dproperties.d.tlua +52 -0
  124. package/dproperty_boolean.d.tlua +12 -0
  125. package/dproperty_combo.d.tlua +31 -0
  126. package/dproperty_entity.d.tlua +12 -0
  127. package/dproperty_float.d.tlua +12 -0
  128. package/dproperty_generic.d.tlua +50 -0
  129. package/dproperty_int.d.tlua +12 -0
  130. package/dproperty_vectorcolor.d.tlua +14 -0
  131. package/dpropertysheet.d.tlua +167 -0
  132. package/dragndrop.d.tlua +123 -0
  133. package/draw.d.tlua +162 -0
  134. package/drgbpicker.d.tlua +49 -0
  135. package/drive.d.tlua +159 -0
  136. package/dscrollbargrip.d.tlua +13 -0
  137. package/dscrollpanel.d.tlua +110 -0
  138. package/dshape.d.tlua +72 -0
  139. package/dsizetocontents.d.tlua +46 -0
  140. package/dslider.d.tlua +302 -0
  141. package/dsprite.d.tlua +84 -0
  142. package/dtab.d.tlua +81 -0
  143. package/dtextentry.d.tlua +442 -0
  144. package/dtilelayout.d.tlua +218 -0
  145. package/dtooltip.d.tlua +76 -0
  146. package/dtree.d.tlua +185 -0
  147. package/dtree_node.d.tlua +793 -0
  148. package/dtree_node_button.d.tlua +13 -0
  149. package/duplicator.d.tlua +338 -0
  150. package/dverticaldivider.d.tlua +223 -0
  151. package/dvscrollbar.d.tlua +109 -0
  152. package/editablepanel.d.tlua +10 -0
  153. package/effect.d.tlua +121 -0
  154. package/effects.d.tlua +77 -0
  155. package/engine.d.tlua +248 -0
  156. package/entity.d.tlua +8295 -0
  157. package/ents.d.tlua +267 -0
  158. package/enums.d.tlua +7082 -0
  159. package/file.d.tlua +419 -0
  160. package/file_class.d.tlua +7 -0
  161. package/fingerposer.d.tlua +12 -0
  162. package/fingervar.d.tlua +13 -0
  163. package/frame.d.tlua +11 -0
  164. package/frame_blend.d.tlua +105 -0
  165. package/game.d.tlua +482 -0
  166. package/gameevent.d.tlua +968 -0
  167. package/gamemode.d.tlua +48 -0
  168. package/global.d.tlua +3156 -0
  169. package/gm.d.tlua +3218 -0
  170. package/gmod.d.tlua +20 -0
  171. package/gmsave.d.tlua +53 -0
  172. package/gui.d.tlua +232 -0
  173. package/gwen.d.tlua +55 -0
  174. package/halo.d.tlua +42 -0
  175. package/hammer.d.tlua +17 -0
  176. package/hook.d.tlua +64 -0
  177. package/html.d.tlua +22 -0
  178. package/http.d.tlua +72 -0
  179. package/iconeditor.d.tlua +130 -0
  180. package/igmodaudiochannel.d.tlua +419 -0
  181. package/imagecheckbox.d.tlua +48 -0
  182. package/imaterial.d.tlua +288 -0
  183. package/imesh.d.tlua +70 -0
  184. package/index.d.tlua +277 -0
  185. package/input.d.tlua +252 -0
  186. package/invalidateinternalentitycache.d.tlua +13 -0
  187. package/irestore.d.tlua +94 -0
  188. package/isave.d.tlua +94 -0
  189. package/itexture.d.tlua +108 -0
  190. package/ivideowriter.d.tlua +53 -0
  191. package/jit.d.tlua +243 -0
  192. package/killicon.d.tlua +84 -0
  193. package/label.d.tlua +20 -0
  194. package/language.d.tlua +26 -0
  195. package/list.d.tlua +112 -0
  196. package/makeballoon.d.tlua +15 -0
  197. package/markup.d.tlua +38 -0
  198. package/markupobject.d.tlua +53 -0
  199. package/material.d.tlua +9 -0
  200. package/math.d.tlua +899 -0
  201. package/matproxy.d.tlua +60 -0
  202. package/matselect.d.tlua +106 -0
  203. package/menu.d.tlua +20 -0
  204. package/menubar.d.tlua +39 -0
  205. package/mesh.d.tlua +183 -0
  206. package/modelimage.d.tlua +12 -0
  207. package/motionsensor.d.tlua +115 -0
  208. package/navmesh.d.tlua +274 -0
  209. package/net.d.tlua +639 -0
  210. package/nextbot.d.tlua +380 -0
  211. package/notification.d.tlua +35 -0
  212. package/npc.d.tlua +1787 -0
  213. package/numpad.d.tlua +89 -0
  214. package/os.d.tlua +56 -0
  215. package/package.d.tlua +15 -0
  216. package/package.json +18 -0
  217. package/panel.d.tlua +3650 -0
  218. package/panellist.d.tlua +13 -0
  219. package/pathfollower.d.tlua +301 -0
  220. package/permissions.d.tlua +77 -0
  221. package/physcollide.d.tlua +40 -0
  222. package/physenv.d.tlua +136 -0
  223. package/physobj.d.tlua +799 -0
  224. package/pixelvis_handle_t.d.tlua +9 -0
  225. package/player.d.tlua +3320 -0
  226. package/player_manager.d.tlua +147 -0
  227. package/preseteditor.d.tlua +13 -0
  228. package/presets.d.tlua +79 -0
  229. package/projectedtexture.d.tlua +553 -0
  230. package/properties.d.tlua +65 -0
  231. package/propselect.d.tlua +50 -0
  232. package/radiobutton.d.tlua +13 -0
  233. package/render.d.tlua +1700 -0
  234. package/resource.d.tlua +73 -0
  235. package/richtext.d.tlua +17 -0
  236. package/sandbox.d.tlua +576 -0
  237. package/saverestore.d.tlua +148 -0
  238. package/schedule.d.tlua +69 -0
  239. package/scripted_ents.d.tlua +124 -0
  240. package/search.d.tlua +26 -0
  241. package/serverlist.d.tlua +85 -0
  242. package/slidebar.d.tlua +12 -0
  243. package/slider.d.tlua +11 -0
  244. package/sound.d.tlua +140 -0
  245. package/spawnicon.d.tlua +95 -0
  246. package/spawnmenu.d.tlua +286 -0
  247. package/spawnmenucontentpanel.d.tlua +52 -0
  248. package/sql.d.tlua +154 -0
  249. package/stack.d.tlua +57 -0
  250. package/steamworks.d.tlua +208 -0
  251. package/string.d.tlua +535 -0
  252. package/structures.d.tlua +4442 -0
  253. package/surface.d.tlua +463 -0
  254. package/surfaceinfo.d.tlua +70 -0
  255. package/system.d.tlua +134 -0
  256. package/table.d.tlua +533 -0
  257. package/task.d.tlua +92 -0
  258. package/team.d.tlua +195 -0
  259. package/textentry.d.tlua +12 -0
  260. package/tgaimage.d.tlua +11 -0
  261. package/timer.d.tlua +198 -0
  262. package/tool.d.tlua +466 -0
  263. package/ugcpublishwindow.d.tlua +83 -0
  264. package/umsg.d.tlua +147 -0
  265. package/undo.d.tlua +122 -0
  266. package/urllabel.d.tlua +13 -0
  267. package/usermessage.d.tlua +48 -0
  268. package/utf8.d.tlua +89 -0
  269. package/util.d.tlua +1087 -0
  270. package/vector.d.tlua +413 -0
  271. package/vehicle.d.tlua +472 -0
  272. package/vgui.d.tlua +201 -0
  273. package/video.d.tlua +17 -0
  274. package/vmatrix.d.tlua +392 -0
  275. package/weapon.d.tlua +913 -0
  276. package/weapons.d.tlua +90 -0
  277. package/widgets.d.tlua +29 -0
  278. package/workshopfilebase.d.tlua +68 -0
package/net.d.tlua ADDED
@@ -0,0 +1,639 @@
1
+ // AUTO-GENERATED tlua declarations. Do not edit by hand.
2
+
3
+ /**
4
+ * The net library is one of a number of ways to send data between the client and server.
5
+ *
6
+ * The major advantages of the net library are the large size limit (64kb/message) and the ability to send data backwards - from the client to the server.
7
+ *
8
+ * Refer to [Net Library Usage](https://wiki.facepunch.com/gmod/Net_Library_Usage) for a short introduction.
9
+ * @source https://wiki.facepunch.com/gmod/net
10
+ */
11
+ declare net: NetLib;
12
+
13
+ interface NetLib {
14
+ /**
15
+ * Cancels a net message started by [net.Start](https://wiki.facepunch.com/gmod/net.Start), so you can immediately start a new one without any errors.
16
+ *
17
+ * @realm shared
18
+ * @source https://wiki.facepunch.com/gmod/net.Abort
19
+ */
20
+ Abort(): void;
21
+ }
22
+
23
+ interface NetLib {
24
+ /**
25
+ * Sends the currently built net message (see [net.Start](https://wiki.facepunch.com/gmod/net.Start)) to all connected players.
26
+ * More information can be found in [Net Library Usage](https://wiki.facepunch.com/gmod/Net_Library_Usage).
27
+ *
28
+ * @realm server
29
+ * @source https://wiki.facepunch.com/gmod/net.Broadcast
30
+ */
31
+ Broadcast(): void;
32
+ }
33
+
34
+ interface NetLib {
35
+ /**
36
+ * Returns the amount of data left to read in the current message. Does nothing when sending data.
37
+ *
38
+ * @realm shared
39
+ * @source https://wiki.facepunch.com/gmod/net.BytesLeft
40
+ */
41
+ BytesLeft(): (number, number);
42
+ }
43
+
44
+ interface NetLib {
45
+ /**
46
+ * Returns the size of the current message.
47
+ *
48
+ * **NOTE**: This will include 3 extra bytes (24 bits) used by the engine internally to send the data over the network.
49
+ *
50
+ *
51
+ * @realm shared
52
+ * @source https://wiki.facepunch.com/gmod/net.BytesWritten
53
+ */
54
+ BytesWritten(): (number, number);
55
+ }
56
+
57
+ interface NetLib {
58
+ /**
59
+ * **INTERNAL**: You may be looking for [net.Receive](https://wiki.facepunch.com/gmod/net.Receive).
60
+ *
61
+ *
62
+ * Function called by the engine to tell the Lua state a message arrived.
63
+ *
64
+ * @realm shared
65
+ * @source https://wiki.facepunch.com/gmod/net.Incoming
66
+ */
67
+ Incoming(length: number, client: Player): void;
68
+ }
69
+
70
+ interface NetLib {
71
+ /**
72
+ * Reads an angle from the received net message.
73
+ *
74
+ * **WARNING**: You **must** read information in same order as you write it.
75
+ *
76
+ *
77
+ * @realm shared
78
+ * @source https://wiki.facepunch.com/gmod/net.ReadAngle
79
+ */
80
+ ReadAngle(): Angle;
81
+ }
82
+
83
+ interface NetLib {
84
+ /**
85
+ * Reads a bit from the received net message.
86
+ *
87
+ * **WARNING**: You **must** read information in same order as you write it.
88
+ *
89
+ *
90
+ * @realm shared
91
+ * @source https://wiki.facepunch.com/gmod/net.ReadBit
92
+ */
93
+ ReadBit(): number;
94
+ }
95
+
96
+ interface NetLib {
97
+ /**
98
+ * Reads a boolean from the received net message.
99
+ *
100
+ * **WARNING**: You **must** read information in same order as you write it.
101
+ *
102
+ *
103
+ * @realm shared
104
+ * @source https://wiki.facepunch.com/gmod/net.ReadBool
105
+ */
106
+ ReadBool(): boolean;
107
+ }
108
+
109
+ interface NetLib {
110
+ /**
111
+ * Reads a [Color](https://wiki.facepunch.com/gmod/Color) from the current net message.
112
+ *
113
+ * **WARNING**: You **must** read information in same order as you write it.
114
+ *
115
+ *
116
+ * @realm shared
117
+ * @source https://wiki.facepunch.com/gmod/net.ReadColor
118
+ */
119
+ ReadColor(hasAlpha?: boolean): Color;
120
+ }
121
+
122
+ interface NetLib {
123
+ /**
124
+ * Reads pure binary data from the message.
125
+ *
126
+ * **WARNING**: You **must** read information in same order as you write it.
127
+ *
128
+ *
129
+ * @realm shared
130
+ * @source https://wiki.facepunch.com/gmod/net.ReadData
131
+ */
132
+ ReadData(length: number): string;
133
+ }
134
+
135
+ interface NetLib {
136
+ /**
137
+ * Reads a double-precision number from the received net message.
138
+ *
139
+ * **WARNING**: You **must** read information in same order as you write it.
140
+ *
141
+ *
142
+ * @realm shared
143
+ * @source https://wiki.facepunch.com/gmod/net.ReadDouble
144
+ */
145
+ ReadDouble(): number;
146
+ }
147
+
148
+ interface NetLib {
149
+ /**
150
+ * Reads an entity from the received net message. You should always check if the specified entity exists as it may have been removed and therefore `NULL` if it is outside of the players [PVS (Potential Visibility Set)](https://developer.valvesoftware.com/wiki/PVS "PVS - Valve Developer Community") or was already removed.
151
+ *
152
+ * **WARNING**: You **must** read information in same order as you write it.
153
+ *
154
+ *
155
+ * @realm shared
156
+ * @source https://wiki.facepunch.com/gmod/net.ReadEntity
157
+ */
158
+ ReadEntity(): Entity;
159
+ }
160
+
161
+ interface NetLib {
162
+ /**
163
+ * Reads a floating point number from the received net message.
164
+ *
165
+ * **WARNING**: You **must** read information in same order as you write it.
166
+ *
167
+ *
168
+ * @realm shared
169
+ * @source https://wiki.facepunch.com/gmod/net.ReadFloat
170
+ */
171
+ ReadFloat(): number;
172
+ }
173
+
174
+ interface NetLib {
175
+ /**
176
+ * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
177
+ *
178
+ *
179
+ * Reads a word, basically unsigned short. This is used internally to read the "header" of the message which is an unsigned short which can be converted to the corresponding message name via [util.NetworkIDToString](https://wiki.facepunch.com/gmod/util.NetworkIDToString).
180
+ *
181
+ * @realm shared
182
+ * @source https://wiki.facepunch.com/gmod/net.ReadHeader
183
+ */
184
+ ReadHeader(): number;
185
+ }
186
+
187
+ interface NetLib {
188
+ /**
189
+ * Reads an integer from the received net message.
190
+ *
191
+ * **WARNING**: You **must** read information in same order as you write it.
192
+ *
193
+ *
194
+ * @realm shared
195
+ * @source https://wiki.facepunch.com/gmod/net.ReadInt
196
+ */
197
+ ReadInt(bitCount: number): number;
198
+ }
199
+
200
+ interface NetLib {
201
+ /**
202
+ * Reads a [VMatrix](https://wiki.facepunch.com/gmod/VMatrix) from the received net message.
203
+ * **WARNING**: You **must** read information in same order as you write it.
204
+ *
205
+ *
206
+ * @realm shared
207
+ * @source https://wiki.facepunch.com/gmod/net.ReadMatrix
208
+ */
209
+ ReadMatrix(): VMatrix;
210
+ }
211
+
212
+ interface NetLib {
213
+ /**
214
+ * Reads a normal vector from the net message.
215
+ *
216
+ * **WARNING**: You **must** read information in same order as you write it.
217
+ *
218
+ *
219
+ * @realm shared
220
+ * @source https://wiki.facepunch.com/gmod/net.ReadNormal
221
+ */
222
+ ReadNormal(): Vector;
223
+ }
224
+
225
+ interface NetLib {
226
+ /**
227
+ * Reads a player entity that was written with [net.WritePlayer](https://wiki.facepunch.com/gmod/net.WritePlayer) from the received net message.
228
+ *
229
+ * You should always check if the specified entity exists as it may have been removed and therefore `NULL` if it is outside of the local players [PVS](https://developer.valvesoftware.com/wiki/PVS) or was already removed.
230
+ *
231
+ * **WARNING**: You **must** read information in same order as you write it.
232
+ *
233
+ *
234
+ * @realm shared
235
+ * @source https://wiki.facepunch.com/gmod/net.ReadPlayer
236
+ */
237
+ ReadPlayer(): Player;
238
+ }
239
+
240
+ interface NetLib {
241
+ /**
242
+ * Reads a [null-terminated string](https://en.wikipedia.org/wiki/Null-terminated_string) from the net stream. The size of the string is 8 bits plus 8 bits for every ASCII character in the string.
243
+ *
244
+ * **WARNING**: You **must** read information in same order as you write it.
245
+ *
246
+ *
247
+ * @realm shared
248
+ * @source https://wiki.facepunch.com/gmod/net.ReadString
249
+ */
250
+ ReadString(): string;
251
+ }
252
+
253
+ interface NetLib {
254
+ /**
255
+ * Reads a table from the received net message. See net.WriteTable for extra
256
+ * info.
257
+ *
258
+ * NOTE: Sometimes when sending a table through the net library, the order of
259
+ * the keys may be switched.
260
+ *
261
+ * WARNING: You must read information in the same order as you write it.
262
+ * @realm shared
263
+ * @source https://wiki.facepunch.com/gmod/net.ReadTable
264
+ */
265
+ ReadTable(sequential?: boolean): Table<any, any>;
266
+ }
267
+
268
+
269
+ interface NetLib {
270
+ /**
271
+ * **INTERNAL**: Used internally by [net.ReadTable](https://wiki.facepunch.com/gmod/net.ReadTable).
272
+ *
273
+ *
274
+ * Reads a value from the net message with the specified type, written by [net.WriteType](https://wiki.facepunch.com/gmod/net.WriteType).
275
+ *
276
+ * **WARNING**: You **must** read information in same order as you write it.
277
+ *
278
+ *
279
+ * @realm shared
280
+ * @source https://wiki.facepunch.com/gmod/net.ReadType
281
+ */
282
+ ReadType(typeID?: number): any;
283
+ }
284
+
285
+ interface NetLib {
286
+ /**
287
+ * Reads an unsigned integer with the specified number of bits from the received net message.
288
+ *
289
+ * **WARNING**: You **must** read information in same order as you write it.
290
+ *
291
+ *
292
+ * @realm shared
293
+ * @source https://wiki.facepunch.com/gmod/net.ReadUInt
294
+ */
295
+ ReadUInt(bitCount: number): number;
296
+ }
297
+
298
+ interface NetLib {
299
+ /**
300
+ * Reads a unsigned integer with 64 bits from the received net message.
301
+ *
302
+ * **WARNING**: You **must** read information in same order as you write it.
303
+ *
304
+ *
305
+ * @realm shared
306
+ * @source https://wiki.facepunch.com/gmod/net.ReadUInt64
307
+ */
308
+ ReadUInt64(): string;
309
+ }
310
+
311
+ interface NetLib {
312
+ /**
313
+ * Reads a vector from the received net message. Vectors sent by this function are **compressed**, which may result in precision loss. See [net.WriteVector](https://wiki.facepunch.com/gmod/net.WriteVector) for more information.
314
+ *
315
+ * **WARNING**: You **must** read information in same order as you write it.
316
+ *
317
+ *
318
+ * @realm shared
319
+ * @source https://wiki.facepunch.com/gmod/net.ReadVector
320
+ */
321
+ ReadVector(): Vector;
322
+ }
323
+
324
+ interface NetLib {
325
+ /**
326
+ * Adds a net message handler. Only one receiver can be used to receive the net message.
327
+ *
328
+ * You can use the `net.Read*` functions within the message handler callback.
329
+ *
330
+ * **WARNING**: You **should** put this function **outside** of any other function or hook for it to work properly unless you know what you are doing!
331
+ *
332
+ * You **must** read information in the same order as you write it.
333
+ *
334
+ * Each net message has a length limit of **64KB**!
335
+ *
336
+ *
337
+ * @realm shared
338
+ * @source https://wiki.facepunch.com/gmod/net.Receive
339
+ */
340
+ Receive(messageName: string, callback: (len: number, ply: Player) => void): void;
341
+ }
342
+
343
+ interface NetLib {
344
+ /**
345
+ * Sends the current net message to the specified player(s)
346
+ * @realm server
347
+ * @source https://wiki.facepunch.com/gmod/net.Send
348
+ */
349
+ Send(ply: Player): void;
350
+ }
351
+
352
+ interface NetLib {
353
+ Send(plys: Player[]): void;
354
+ }
355
+
356
+ interface NetLib {
357
+ Send(filter: CRecipientFilter): void;
358
+ }
359
+
360
+ interface NetLib {
361
+ /**
362
+ * Sends the current message (see [net.Start](https://wiki.facepunch.com/gmod/net.Start)) to all except the player or players specified.
363
+ *
364
+ * @realm server
365
+ * @source https://wiki.facepunch.com/gmod/net.SendOmit
366
+ */
367
+ SendOmit(ply: Player): void;
368
+ }
369
+
370
+ interface NetLib {
371
+ SendOmit(plys: Player[]): void;
372
+ }
373
+
374
+ interface NetLib {
375
+ /**
376
+ * Sends current net message (see [net.Start](https://wiki.facepunch.com/gmod/net.Start)) to all players that are in the same [Potentially Audible Set (PAS)](https://developer.valvesoftware.com/wiki/PAS) as the position, or simply said, it adds all players that can potentially hear sounds from this position.
377
+ * @realm server
378
+ * @source https://wiki.facepunch.com/gmod/net.SendPAS
379
+ */
380
+ SendPAS(position: Vector): void;
381
+ }
382
+
383
+ interface NetLib {
384
+ /**
385
+ * Sends current net message (see [net.Start](https://wiki.facepunch.com/gmod/net.Start)) to all players in the [PVS (Potential Visibility Set)](https://developer.valvesoftware.com/wiki/PVS "PVS - Valve Developer Community") of the position, or, more simply said, sends the message to players that can potentially see this position.
386
+ * @realm server
387
+ * @source https://wiki.facepunch.com/gmod/net.SendPVS
388
+ */
389
+ SendPVS(position: Vector): void;
390
+ }
391
+
392
+ interface NetLib {
393
+ /**
394
+ * Sends the current net message (see [net.Start](https://wiki.facepunch.com/gmod/net.Start)) to the server. The player object must exist on the server for the net message to be received successfully by the server.
395
+ *
396
+ * **WARNING**: Each net message has a length limit of 65,533 bytes (approximately 64 KiB) and your net message will error and fail to send if it is larger than this.
397
+ *
398
+ * The message name must be pooled with [util.AddNetworkString](https://wiki.facepunch.com/gmod/util.AddNetworkString) beforehand!
399
+ *
400
+ *
401
+ * @realm client
402
+ * @source https://wiki.facepunch.com/gmod/net.SendToServer
403
+ */
404
+ SendToServer(): void;
405
+ }
406
+
407
+ interface NetLib {
408
+ /**
409
+ * Begins a new net message. If another net message is already started and hasn't been sent yet, it will be discarded.
410
+ *
411
+ * After calling this function, you will want to call `net.Write` functions to write your data, if any, and then finish with a call to one of the following functions:
412
+ * * [net.Send](https://wiki.facepunch.com/gmod/net.Send)
413
+ * * [net.SendOmit](https://wiki.facepunch.com/gmod/net.SendOmit)
414
+ * * [net.SendPAS](https://wiki.facepunch.com/gmod/net.SendPAS)
415
+ * * [net.SendPVS](https://wiki.facepunch.com/gmod/net.SendPVS)
416
+ * * [net.Broadcast](https://wiki.facepunch.com/gmod/net.Broadcast)
417
+ * * [net.SendToServer](https://wiki.facepunch.com/gmod/net.SendToServer)
418
+ *
419
+ *
420
+ * **WARNING**: Each net message has a length limit of 65,533 bytes (approximately 64 KiB) and your net message will error and fail to send if it is larger than this.
421
+ *
422
+ * The net library has an internal buffer that sent messages are added to that is capable of holding roughly 256 kb at a time. Trying to send more will lead to the client being kicked because of a buffer overflow. [More information on net library limits can be found here.](https://wiki.facepunch.com/gmod/Networking_Usage#netlimits)
423
+ *
424
+ * The message name must be pooled with [util.AddNetworkString](https://wiki.facepunch.com/gmod/util.AddNetworkString) beforehand!
425
+ *
426
+ * Net messages will not reliably reach the client until the client's [GM:InitPostEntity](https://wiki.facepunch.com/gmod/GM:InitPostEntity) hook is called.
427
+ *
428
+ *
429
+ * @realm shared
430
+ * @source https://wiki.facepunch.com/gmod/net.Start
431
+ */
432
+ Start(messageName: string, unreliable?: boolean): boolean;
433
+ }
434
+
435
+ interface NetLib {
436
+ /**
437
+ * Writes an angle to the current net message.
438
+ * @realm shared
439
+ * @source https://wiki.facepunch.com/gmod/net.WriteAngle
440
+ */
441
+ WriteAngle(angle: Angle): void;
442
+ }
443
+
444
+ interface NetLib {
445
+ /**
446
+ * Appends a boolean (as `1` or `0`) to the current net message.
447
+ *
448
+ * Please note that the bit is written here from a [boolean](https://wiki.facepunch.com/gmod/boolean) (`true/false`) but [net.ReadBit](https://wiki.facepunch.com/gmod/net.ReadBit) returns a number.
449
+ *
450
+ * @realm shared
451
+ * @source https://wiki.facepunch.com/gmod/net.WriteBit
452
+ */
453
+ WriteBit(boolean: boolean): void;
454
+ }
455
+
456
+ interface NetLib {
457
+ /**
458
+ * Appends a boolean to the current net message. Alias of [net.WriteBit](https://wiki.facepunch.com/gmod/net.WriteBit).
459
+ * @realm shared
460
+ * @source https://wiki.facepunch.com/gmod/net.WriteBool
461
+ */
462
+ WriteBool(boolean: boolean): void;
463
+ }
464
+
465
+ interface NetLib {
466
+ /**
467
+ * Appends a [Color](https://wiki.facepunch.com/gmod/Color) to the current net message.
468
+ * @realm shared
469
+ * @source https://wiki.facepunch.com/gmod/net.WriteColor
470
+ */
471
+ WriteColor(Color: Color, writeAlpha?: boolean): void;
472
+ }
473
+
474
+ interface NetLib {
475
+ /**
476
+ * Writes a chunk of binary data to the message.
477
+ * @realm shared
478
+ * @source https://wiki.facepunch.com/gmod/net.WriteData
479
+ */
480
+ WriteData(binaryData: string, length?: number): void;
481
+ }
482
+
483
+ interface NetLib {
484
+ /**
485
+ * Appends a double-precision number to the current net message.
486
+ * @realm shared
487
+ * @source https://wiki.facepunch.com/gmod/net.WriteDouble
488
+ */
489
+ WriteDouble(double: number): void;
490
+ }
491
+
492
+ interface NetLib {
493
+ /**
494
+ * Appends an entity to the current net message using its [Entity:EntIndex](https://wiki.facepunch.com/gmod/Entity:EntIndex).
495
+ *
496
+ * See [net.ReadEntity](https://wiki.facepunch.com/gmod/net.ReadEntity) for the function to read the entity.
497
+ *
498
+ * @realm shared
499
+ * @source https://wiki.facepunch.com/gmod/net.WriteEntity
500
+ */
501
+ WriteEntity(entity: Entity): void;
502
+ }
503
+
504
+ interface NetLib {
505
+ /**
506
+ * Appends a float (number with decimals) to the current net message.
507
+ * @realm shared
508
+ * @source https://wiki.facepunch.com/gmod/net.WriteFloat
509
+ */
510
+ WriteFloat(float: number): void;
511
+ }
512
+
513
+ interface NetLib {
514
+ /**
515
+ * Appends a signed integer - a whole number, positive/negative - to the current net message. Can be read back with [net.ReadInt](https://wiki.facepunch.com/gmod/net.ReadInt) on the receiving end.
516
+ *
517
+ * Use [net.WriteUInt](https://wiki.facepunch.com/gmod/net.WriteUInt) to send an unsigned number (that you know will **never** be negative). Use [net.WriteFloat](https://wiki.facepunch.com/gmod/net.WriteFloat) for a non-whole number (e.g. `2.25`).
518
+ *
519
+ * @realm shared
520
+ * @source https://wiki.facepunch.com/gmod/net.WriteInt
521
+ */
522
+ WriteInt(integer: number, bitCount: number): void;
523
+ }
524
+
525
+ interface NetLib {
526
+ /**
527
+ * Writes a [VMatrix](https://wiki.facepunch.com/gmod/VMatrix) to the current net message.
528
+ * @realm shared
529
+ * @source https://wiki.facepunch.com/gmod/net.WriteMatrix
530
+ */
531
+ WriteMatrix(matrix: VMatrix): void;
532
+ }
533
+
534
+ interface NetLib {
535
+ /**
536
+ * Writes a normalized/direction vector ( Vector with length of 1 ) to the net message.
537
+ *
538
+ * This function uses less bandwidth compared to [net.WriteVector](https://wiki.facepunch.com/gmod/net.WriteVector) and will not send vectors with length of > 1 properly.
539
+ *
540
+ * @realm shared
541
+ * @source https://wiki.facepunch.com/gmod/net.WriteNormal
542
+ */
543
+ WriteNormal(normal: Vector): void;
544
+ }
545
+
546
+ interface NetLib {
547
+ /**
548
+ * Appends a player entity to the current net message using its [Entity:EntIndex](https://wiki.facepunch.com/gmod/Entity:EntIndex). This saves a small amount of network bandwidth over [net.WriteEntity](https://wiki.facepunch.com/gmod/net.WriteEntity).
549
+ *
550
+ * See [net.ReadPlayer](https://wiki.facepunch.com/gmod/net.ReadPlayer) for the function to read the entity.
551
+ * @realm shared
552
+ * @source https://wiki.facepunch.com/gmod/net.WritePlayer
553
+ */
554
+ WritePlayer(ply: Player): void;
555
+ }
556
+
557
+ interface NetLib {
558
+ /**
559
+ * Appends a string to the current net message. The size of the written data is 8 bits for every ASCII character in the string + 8 bits for the null terminator.
560
+ *
561
+ * The maximum allowed length of a single written string is **65532 characters**. (aka the limit of the net message itself)
562
+ *
563
+ * @realm shared
564
+ * @source https://wiki.facepunch.com/gmod/net.WriteString
565
+ */
566
+ WriteString(string: string): void;
567
+ }
568
+
569
+ interface NetLib {
570
+ /**
571
+ * Appends a table to the current net message. Adds **16 extra bits** per key/value pair, so you're better off writing each individual key/value as the exact type if possible.
572
+ *
573
+ * **WARNING**: All net messages have a **64kb** buffer. This function will not check or error when that buffer is overflown. You might want to consider using [util.TableToJSON](https://wiki.facepunch.com/gmod/util.TableToJSON) and [util.Compress](https://wiki.facepunch.com/gmod/util.Compress) and send the resulting string in **60kb** chunks, doing the opposite on the receiving end.
574
+ *
575
+ *
576
+ * @realm shared
577
+ * @source https://wiki.facepunch.com/gmod/net.WriteTable
578
+ */
579
+ WriteTable(table: table, sequential?: boolean): void;
580
+ }
581
+
582
+ interface NetLib {
583
+ /**
584
+ * **INTERNAL**: Used internally by [net.WriteTable](https://wiki.facepunch.com/gmod/net.WriteTable).
585
+ *
586
+ *
587
+ * Appends any type of value to the current net message.
588
+ *
589
+ * **NOTE**: An additional 8-bit unsigned integer indicating the type will automatically be written to the packet before the value, in order to facilitate reading with [net.ReadType](https://wiki.facepunch.com/gmod/net.ReadType). If you know the data type you are writing, use a function meant for that specific data type to reduce amount of data sent.
590
+ *
591
+ *
592
+ * @realm shared
593
+ * @source https://wiki.facepunch.com/gmod/net.WriteType
594
+ */
595
+ WriteType(Data: any): void;
596
+ }
597
+
598
+ interface NetLib {
599
+ /**
600
+ * Appends an unsigned integer with the specified number of bits to the current net message.
601
+ *
602
+ * Use [net.WriteInt](https://wiki.facepunch.com/gmod/net.WriteInt) if you want to send negative and positive numbers. Use [net.WriteFloat](https://wiki.facepunch.com/gmod/net.WriteFloat) for a non-whole number (e.g. `2.25`).
603
+ *
604
+ * **NOTE**: Unsigned numbers **do not** support negative numbers.
605
+ *
606
+ *
607
+ * @realm shared
608
+ * @source https://wiki.facepunch.com/gmod/net.WriteUInt
609
+ */
610
+ WriteUInt(unsignedInteger: number, bitCount: number): void;
611
+ }
612
+
613
+ interface NetLib {
614
+ /**
615
+ * Appends an unsigned integer with 64 bits to the current net message.
616
+ *
617
+ * The limit for an uint64 is 18'446'744'073'709'551'615.
618
+ * Everything above the limit will be set to the limit.
619
+ *
620
+ * Unsigned numbers **do not** support negative numbers.
621
+ *
622
+ *
623
+ * @realm shared
624
+ * @source https://wiki.facepunch.com/gmod/net.WriteUInt64
625
+ */
626
+ WriteUInt64(uint64: string): void;
627
+ }
628
+
629
+ interface NetLib {
630
+ /**
631
+ * Appends a vector to the current net message.
632
+ * Vectors sent by this function are compressed, which may result in precision loss. XYZ components greater than `16384` or less than `-16384` are irrecoverably altered (most significant bits are trimmed) and precision after the decimal point is 1 digit (5 bits).
633
+ *
634
+ * @realm shared
635
+ * @source https://wiki.facepunch.com/gmod/net.WriteVector
636
+ */
637
+ WriteVector(vector: Vector): void;
638
+ }
639
+