@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/ddrawer.d.tlua ADDED
@@ -0,0 +1,72 @@
1
+ // AUTO-GENERATED tlua declarations. Do not edit by hand.
2
+
3
+ /**
4
+ * A simple Derma Drawer
5
+ * @realm client and menu
6
+ * @source https://wiki.facepunch.com/gmod/DDrawer
7
+ */
8
+ interface DDrawer extends Panel {}
9
+
10
+ interface DDrawer {
11
+ /**
12
+ * Closes the [DDrawer](https://wiki.facepunch.com/gmod/DDrawer).
13
+ * @realm client and menu
14
+ * @source https://wiki.facepunch.com/gmod/DDrawer:Close
15
+ */
16
+ Close(self: DDrawer): void;
17
+ }
18
+
19
+ interface DDrawer {
20
+ /**
21
+ * An [Global.AccessorFunc](https://wiki.facepunch.com/gmod/Global.AccessorFunc) that returns the Open Size of DDrawer.
22
+ * @realm client and menu
23
+ * @source https://wiki.facepunch.com/gmod/DDrawer:GetOpenSize
24
+ */
25
+ GetOpenSize(self: DDrawer): number;
26
+ }
27
+
28
+ interface DDrawer {
29
+ /**
30
+ * An [Global.AccessorFunc](https://wiki.facepunch.com/gmod/Global.AccessorFunc) that returns the Open Time of DDrawer.
31
+ * @realm client and menu
32
+ * @source https://wiki.facepunch.com/gmod/DDrawer:GetOpenTime
33
+ */
34
+ GetOpenTime(self: DDrawer): number;
35
+ }
36
+
37
+ interface DDrawer {
38
+ /**
39
+ * Opens the [DDrawer](https://wiki.facepunch.com/gmod/DDrawer).
40
+ * @realm client and menu
41
+ * @source https://wiki.facepunch.com/gmod/DDrawer:Open
42
+ */
43
+ Open(self: DDrawer): void;
44
+ }
45
+
46
+ interface DDrawer {
47
+ /**
48
+ * An [Global.AccessorFunc](https://wiki.facepunch.com/gmod/Global.AccessorFunc) that sets the height of DDrawer
49
+ * @realm client and menu
50
+ * @source https://wiki.facepunch.com/gmod/DDrawer:SetOpenSize
51
+ */
52
+ SetOpenSize(self: DDrawer, Value: number): void;
53
+ }
54
+
55
+ interface DDrawer {
56
+ /**
57
+ * An [Global.AccessorFunc](https://wiki.facepunch.com/gmod/Global.AccessorFunc) that sets the time (in seconds) for DDrawer to open.
58
+ * @realm client and menu
59
+ * @source https://wiki.facepunch.com/gmod/DDrawer:SetOpenTime
60
+ */
61
+ SetOpenTime(self: DDrawer, value: number): void;
62
+ }
63
+
64
+ interface DDrawer {
65
+ /**
66
+ * Toggles the [DDrawer](https://wiki.facepunch.com/gmod/DDrawer).
67
+ * @realm client and menu
68
+ * @source https://wiki.facepunch.com/gmod/DDrawer:Toggle
69
+ */
70
+ Toggle(self: DDrawer): void;
71
+ }
72
+
package/debug.d.tlua ADDED
@@ -0,0 +1,236 @@
1
+ // AUTO-GENERATED tlua declarations. Do not edit by hand.
2
+
3
+ /**
4
+ * The debug library is intended to help you debug your scripts, however it also has several other powerful uses. Some builtin debug function were removed in GMod due to security reasons
5
+ * @source https://wiki.facepunch.com/gmod/debug
6
+ */
7
+ interface DebugLib {
8
+ /**
9
+ * Prints out the lua function call stack to the console.
10
+ * @realm shared and menu
11
+ * @source https://wiki.facepunch.com/gmod/debug.Trace
12
+ */
13
+ Trace(): void;
14
+ }
15
+
16
+ interface DebugLib {
17
+ /**
18
+ * **NOTE**: This only works on the source dedicated server.
19
+ *
20
+ *
21
+ * Enters an interactive mode with the user, running each string that the user enters. Using simple commands and other debug facilities, the user can inspect global and local variables, change their values, evaluate expressions, and so on. A line containing only the word cont finishes this function, so that the caller continues its execution.
22
+ *
23
+ * * Commands for debug.debug are not lexically nested within any function, and so have no direct access to local variables.
24
+ * * To exit this interactive mode, you can press Ctrl + Z then Enter OR type the word 'cont' on a single line and press enter.
25
+ *
26
+ * @realm shared and menu
27
+ * @source https://wiki.facepunch.com/gmod/debug.debug
28
+ */
29
+ debug(): void;
30
+ }
31
+
32
+ interface DebugLib {
33
+ /**
34
+ * Returns the environment of the passed object. This can be set with [debug.setfenv](https://wiki.facepunch.com/gmod/debug.setfenv).
35
+ * @realm shared and menu
36
+ * @source https://wiki.facepunch.com/gmod/debug.getfenv
37
+ */
38
+ getfenv(object: table): table;
39
+ }
40
+
41
+ interface DebugLib {
42
+ /**
43
+ * Returns the current hook settings of the passed thread. The thread argument can be omitted. This is completely different to gamemode hooks. More information on hooks can be found at http://www.lua.org/pil/23.2.html. This function will simply return the function, mask, and count of the last called [debug.sethook](https://wiki.facepunch.com/gmod/debug.sethook).
44
+ * @realm shared and menu
45
+ * @source https://wiki.facepunch.com/gmod/debug.gethook
46
+ */
47
+ gethook(thread?: thread): (function, string, number);
48
+ }
49
+
50
+ /** Information returned by `debug.getinfo` about a function. */
51
+ interface DebugInfo {
52
+ name: string;
53
+ namewhat: string;
54
+ source: string;
55
+ short_src: string;
56
+ linedefined: number;
57
+ lastlinedefined: number;
58
+ what: string;
59
+ currentline: number;
60
+ istailcall: boolean;
61
+ nups: number;
62
+ nparams: number;
63
+ isvararg: boolean;
64
+ func: function;
65
+ ftransfer: number;
66
+ ntransfer: number;
67
+ activelines: table;
68
+ }
69
+
70
+ /**
71
+ * Selector for which fields `debug.getinfo` populates. Combines any of
72
+ * `"n"`, `"S"`, `"l"`, `"t"`, `"u"`, `"f"`, `"r"`, `"L"`; degrades to `string`.
73
+ */
74
+ type DebugInfoWhat = string;
75
+
76
+ interface DebugLib {
77
+ /**
78
+ * Returns debug information about a function.
79
+ *
80
+ * Pass either a function or a stack level as `f`. Level 0 is the
81
+ * `debug.getinfo` call itself, level 1 is its caller, and so on. For
82
+ * out-of-range stack levels, this can return nil.
83
+ * @source https://wiki.facepunch.com/gmod/debug.getinfo
84
+ */
85
+ getinfo(f: function, what?: DebugInfoWhat): DebugInfo;
86
+ /** @source https://wiki.facepunch.com/gmod/debug.getinfo */
87
+ getinfo(f: 0, what?: DebugInfoWhat): DebugInfo;
88
+ /** @source https://wiki.facepunch.com/gmod/debug.getinfo */
89
+ getinfo(f: number, what?: DebugInfoWhat): DebugInfo | nil;
90
+ /** @source https://wiki.facepunch.com/gmod/debug.getinfo */
91
+ getinfo(thread: thread, f: function, what?: DebugInfoWhat): DebugInfo;
92
+ /** @source https://wiki.facepunch.com/gmod/debug.getinfo */
93
+ getinfo(thread: thread, f: 0, what?: DebugInfoWhat): DebugInfo;
94
+ }
95
+
96
+
97
+ interface DebugLib {
98
+ /**
99
+ * Gets the name and value of a local variable indexed from the level.
100
+ * **WARNING**: When a function has a tailcall return, you cannot access the locals of this function.
101
+ *
102
+ *
103
+ * @realm shared and menu
104
+ * @source https://wiki.facepunch.com/gmod/debug.getlocal
105
+ */
106
+ getlocal(thread?: thread, level?: number, index?: number): (string, any);
107
+ }
108
+
109
+ interface DebugLib {
110
+ /**
111
+ * Returns the metatable of the specified value. Can return any value.
112
+ * @realm shared
113
+ * @realm menu
114
+ * @source https://wiki.facepunch.com/gmod/debug.getmetatable
115
+ */
116
+ getmetatable<T extends table>(object: T): T;
117
+ }
118
+
119
+
120
+ interface DebugLib {
121
+ /**
122
+ * Returns the internal Lua registry table.
123
+ *
124
+ * The Lua registry is used by the engine and binary modules to create references to Lua values. The registry contains every global ran and used in the Lua environment. Avoid creating entries into the registry with a number as the key, as they are reserved for the reference system.
125
+ *
126
+ * **WARNING**: Improper editing of the registry can result in unintended side effects, including crashing the game.
127
+ *
128
+ *
129
+ * @realm shared and menu
130
+ * @source https://wiki.facepunch.com/gmod/debug.getregistry
131
+ * @deprecated This function now returns a table that serves as a proxy to Global.FindMetaTable and Global.RegisterMetaTable. If you previously used the registry to get/add metatables, you should use those functions directly instead.
132
+ */
133
+ getregistry(): table;
134
+ }
135
+
136
+ interface DebugLib {
137
+ /**
138
+ * Used for getting variable values in an index from the passed function. This does nothing for C functions.
139
+ * @realm shared and menu
140
+ * @source https://wiki.facepunch.com/gmod/debug.getupvalue
141
+ */
142
+ getupvalue(func: function, index: number): (string, any);
143
+ }
144
+
145
+ interface DebugLib {
146
+ /**
147
+ * Sets the environment of the passed object.
148
+ *
149
+ * Unlike [Global.setfenv](https://wiki.facepunch.com/gmod/Global.setfenv), this also works on **any** userdata, allowing you to save data stored to it which can be accessed using [debug.getfenv](https://wiki.facepunch.com/gmod/debug.getfenv).
150
+ * Userdata seem to intentionally support this & setting/changing it does not affect anything (though unused by gmod / Entities and such don't this)
151
+ * This can be useful when trying to store data on a [IGModAudioChannel](https://wiki.facepunch.com/gmod/IGModAudioChannel), [Vector](https://wiki.facepunch.com/gmod/Vector), [Angle](https://wiki.facepunch.com/gmod/Angle) or any other that doesn't already allow you to store data on it.
152
+ *
153
+ * @realm shared and menu
154
+ * @source https://wiki.facepunch.com/gmod/debug.setfenv
155
+ */
156
+ setfenv(object: any, env: table): table;
157
+ }
158
+
159
+ interface DebugLib {
160
+ /**
161
+ * Sets the given function as a Lua hook. This is completely different to gamemode hooks. The thread argument can be completely omitted and calling this function with no arguments will remove the current hook. This is used by default for infinite loop detection. More information on hooks can be found at http://www.lua.org/pil/23.2.html and https://www.gammon.com.au/scripts/doc.php?lua=debug.sethook
162
+ *
163
+ * Hooks are not always ran when code that has been compiled by LuaJIT's JIT compiler is being executed, this is due to Intermediate Representation internally storing constantly running bytecode for performance reasons.
164
+ *
165
+ * @realm shared and menu
166
+ * @source https://wiki.facepunch.com/gmod/debug.sethook
167
+ */
168
+ sethook(thread: thread, hook: function, mask: string, count: number): void;
169
+ }
170
+
171
+ interface DebugLib {
172
+ /**
173
+ * This function was removed due to security concerns.
174
+ *
175
+ * Sets a local variable's value.
176
+ *
177
+ * @realm shared and menu
178
+ * @source https://wiki.facepunch.com/gmod/debug.setlocal
179
+ */
180
+ setlocal(thread?: thread, level?: number, index?: number, value?: any): string;
181
+ }
182
+
183
+ interface DebugLib {
184
+ /**
185
+ * Sets the object's metatable. Unlike [Global.setmetatable](https://wiki.facepunch.com/gmod/Global.setmetatable), this function works regardless of whether the first object passed is a valid table or not; this function even works on primitive datatypes such as numbers, functions, and even nil.
186
+ * @realm shared and menu
187
+ * @source https://wiki.facepunch.com/gmod/debug.setmetatable
188
+ */
189
+ setmetatable(object: any, metatable: table): boolean;
190
+ }
191
+
192
+ interface DebugLib {
193
+ /**
194
+ * This function was removed due to security concerns.
195
+ *
196
+ * Sets the variable indexed from func.
197
+ *
198
+ * @realm shared and menu
199
+ * @source https://wiki.facepunch.com/gmod/debug.setupvalue
200
+ */
201
+ setupvalue(func: function, index: number, val?: any): string;
202
+ }
203
+
204
+ interface DebugLib {
205
+ /**
206
+ * Returns a full execution stack trace.
207
+ * @realm shared and menu
208
+ * @source https://wiki.facepunch.com/gmod/debug.traceback
209
+ */
210
+ traceback(thread?: thread, message?: string, level?: number): string;
211
+ }
212
+
213
+ interface DebugLib {
214
+ /**
215
+ * This function was removed due to security concerns.
216
+ *
217
+ * Returns an unique identifier for the upvalue indexed from func.
218
+ *
219
+ * @realm shared and menu
220
+ * @source https://wiki.facepunch.com/gmod/debug.upvalueid
221
+ */
222
+ upvalueid(func: function, index: number): number;
223
+ }
224
+
225
+ interface DebugLib {
226
+ /**
227
+ * This function was removed due to security concerns.
228
+ *
229
+ * Makes an upvalue of `func1` refer to an upvalue of `func2`. Both functions provided must be Lua-defined, otherwise an error is thrown.
230
+ *
231
+ * @realm shared and menu
232
+ * @source https://wiki.facepunch.com/gmod/debug.upvaluejoin
233
+ */
234
+ upvaluejoin(func1: function, upvalueIndex1: number, func2: function, upvalueIndex2: number): void;
235
+ }
236
+
@@ -0,0 +1,193 @@
1
+ // AUTO-GENERATED tlua declarations. Do not edit by hand.
2
+
3
+ /**
4
+ * The debugoverlay library is mainly useful for 3D debugging, it can be used to draw shapes on the screen for debug purposes.
5
+ *
6
+ * **NOTE**: These functions will not do anything unless the `developer` console variable is set to non 0.
7
+ *
8
+ * There's some code that prevents debugoverlay from being added if the game is paused, i.e. when console is open in singleplayer.
9
+ *
10
+ * @source https://wiki.facepunch.com/gmod/debugoverlay
11
+ */
12
+ declare debugoverlay: DebugoverlayLib;
13
+
14
+ interface DebugoverlayLib {
15
+ /**
16
+ * Displays an axis indicator at the specified position, with 3 lines pointing in the positive direction (i.e. direction in which the values increase) of each axis.
17
+ *
18
+ * **NOTE**: This function will silently fail if the `developer` [ConVar](https://wiki.facepunch.com/gmod/ConVar) is set to `0`.
19
+ * It is not networked to clients, except for the [listen server host](https://wiki.facepunch.com/gmod/Player:IsListenServerHost).
20
+ * It will not work when the game is paused.
21
+ *
22
+ *
23
+ * @realm shared
24
+ * @source https://wiki.facepunch.com/gmod/debugoverlay.Axis
25
+ */
26
+ Axis(origin: Vector, ang: Angle, size: number, lifetime?: number, ignoreZ?: boolean): void;
27
+ }
28
+
29
+ interface DebugoverlayLib {
30
+ /**
31
+ * Displays a solid coloured box at the specified position.
32
+ *
33
+ * **NOTE**: This function will silently fail if the `developer` [ConVar](https://wiki.facepunch.com/gmod/ConVar) is set to `0`.
34
+ * It is not networked to clients, except for the [listen server host](https://wiki.facepunch.com/gmod/Player:IsListenServerHost).
35
+ * It will not work when the game is paused.
36
+ *
37
+ *
38
+ * @realm shared
39
+ * @source https://wiki.facepunch.com/gmod/debugoverlay.Box
40
+ */
41
+ Box(origin: Vector, mins: Vector, maxs: Vector, lifetime?: number, color?: Color): void;
42
+ }
43
+
44
+ interface DebugoverlayLib {
45
+ /**
46
+ * Displays a solid colored rotated box at the specified position.
47
+ *
48
+ * **NOTE**: This function will silently fail if the `developer` [ConVar](https://wiki.facepunch.com/gmod/ConVar) is set to `0`.
49
+ * It is not networked to clients, except for the [listen server host](https://wiki.facepunch.com/gmod/Player:IsListenServerHost).
50
+ * It will not work when the game is paused.
51
+ *
52
+ *
53
+ * @realm shared
54
+ * @source https://wiki.facepunch.com/gmod/debugoverlay.BoxAngles
55
+ */
56
+ BoxAngles(pos: Vector, mins: Vector, maxs: Vector, ang: Angle, lifetime?: number, color?: Color): void;
57
+ }
58
+
59
+ interface DebugoverlayLib {
60
+ /**
61
+ * Creates a coloured cross at the specified position for the specified time.
62
+ *
63
+ * **NOTE**: This function will silently fail if the `developer` [ConVar](https://wiki.facepunch.com/gmod/ConVar) is set to `0`.
64
+ * It is not networked to clients, except for the [listen server host](https://wiki.facepunch.com/gmod/Player:IsListenServerHost).
65
+ * It will not work when the game is paused.
66
+ *
67
+ *
68
+ * @realm shared
69
+ * @source https://wiki.facepunch.com/gmod/debugoverlay.Cross
70
+ */
71
+ Cross(position: Vector, size: number, lifetime?: number, color?: Color, ignoreZ?: boolean): void;
72
+ }
73
+
74
+ interface DebugoverlayLib {
75
+ /**
76
+ * Displays 2D text at the specified coordinates.
77
+ *
78
+ * **NOTE**: This function will silently fail if the `developer` [ConVar](https://wiki.facepunch.com/gmod/ConVar) is set to `0`.
79
+ * It is not networked to clients, except for the [listen server host](https://wiki.facepunch.com/gmod/Player:IsListenServerHost).
80
+ * It will not work when the game is paused.
81
+ *
82
+ *
83
+ * @realm shared
84
+ * @source https://wiki.facepunch.com/gmod/debugoverlay.EntityTextAtPosition
85
+ */
86
+ EntityTextAtPosition(pos: Vector, line: number, text: string, lifetime?: number, color?: Color): void;
87
+ }
88
+
89
+ interface DebugoverlayLib {
90
+ /**
91
+ * Draws a 3D grid of limited size in given position.
92
+ *
93
+ * **NOTE**: This function will silently fail if the `developer` [ConVar](https://wiki.facepunch.com/gmod/ConVar) is set to `0`.
94
+ * It is not networked to clients, except for the [listen server host](https://wiki.facepunch.com/gmod/Player:IsListenServerHost).
95
+ * It will not work when the game is paused.
96
+ *
97
+ *
98
+ * @realm shared
99
+ * @source https://wiki.facepunch.com/gmod/debugoverlay.Grid
100
+ */
101
+ Grid(position: Vector): void;
102
+ }
103
+
104
+ interface DebugoverlayLib {
105
+ /**
106
+ * Displays a coloured line at the specified position.
107
+ *
108
+ * **NOTE**: This function will silently fail if the `developer` [ConVar](https://wiki.facepunch.com/gmod/ConVar) is set to `0`.
109
+ * It is not networked to clients, except for the [listen server host](https://wiki.facepunch.com/gmod/Player:IsListenServerHost).
110
+ * It will not work when the game is paused.
111
+ *
112
+ *
113
+ * @realm shared
114
+ * @source https://wiki.facepunch.com/gmod/debugoverlay.Line
115
+ */
116
+ Line(pos1: Vector, pos2: Vector, lifetime?: number, color?: Color, ignoreZ?: boolean): void;
117
+ }
118
+
119
+ interface DebugoverlayLib {
120
+ /**
121
+ * Displays text triangle at the specified coordinates.
122
+ *
123
+ * **NOTE**: This function will silently fail if the `developer` [ConVar](https://wiki.facepunch.com/gmod/ConVar) is set to `0`.
124
+ * It is not networked to clients, except for the [listen server host](https://wiki.facepunch.com/gmod/Player:IsListenServerHost).
125
+ * It will not work when the game is paused.
126
+ *
127
+ *
128
+ * @realm shared
129
+ * @source https://wiki.facepunch.com/gmod/debugoverlay.ScreenText
130
+ */
131
+ ScreenText(x: number, y: number, text: string, lifetime?: number, color?: Color): void;
132
+ }
133
+
134
+ interface DebugoverlayLib {
135
+ /**
136
+ * Displays a coloured sphere at the specified position.
137
+ *
138
+ * **NOTE**: This function will silently fail if the `developer` [ConVar](https://wiki.facepunch.com/gmod/ConVar) is set to `0`.
139
+ * It is not networked to clients, except for the [listen server host](https://wiki.facepunch.com/gmod/Player:IsListenServerHost).
140
+ * It will not work when the game is paused.
141
+ *
142
+ *
143
+ * @realm shared
144
+ * @source https://wiki.facepunch.com/gmod/debugoverlay.Sphere
145
+ */
146
+ Sphere(origin: Vector, size: number, lifetime?: number, color?: Color, ignoreZ?: boolean): void;
147
+ }
148
+
149
+ interface DebugoverlayLib {
150
+ /**
151
+ * Displays "swept" box, two boxes connected with lines by their vertices.
152
+ *
153
+ * **NOTE**: This function will silently fail if the `developer` [ConVar](https://wiki.facepunch.com/gmod/ConVar) is set to `0`.
154
+ * It is not networked to clients, except for the [listen server host](https://wiki.facepunch.com/gmod/Player:IsListenServerHost).
155
+ * It will not work when the game is paused.
156
+ *
157
+ *
158
+ * @realm shared
159
+ * @source https://wiki.facepunch.com/gmod/debugoverlay.SweptBox
160
+ */
161
+ SweptBox(vStart: Vector, vEnd: Vector, vMins: Vector, vMaxs: Vector, ang: Angle, lifetime?: number, color?: Color): void;
162
+ }
163
+
164
+ interface DebugoverlayLib {
165
+ /**
166
+ * Displays text at the specified position.
167
+ *
168
+ * **NOTE**: This function will silently fail if the `developer` [ConVar](https://wiki.facepunch.com/gmod/ConVar) is set to `0`.
169
+ * It is not networked to clients, except for the [listen server host](https://wiki.facepunch.com/gmod/Player:IsListenServerHost).
170
+ * It will not work when the game is paused.
171
+ *
172
+ *
173
+ * @realm shared
174
+ * @source https://wiki.facepunch.com/gmod/debugoverlay.Text
175
+ */
176
+ Text(origin: Vector, text: string, lifetime?: number, viewCheck?: boolean): void;
177
+ }
178
+
179
+ interface DebugoverlayLib {
180
+ /**
181
+ * Displays a colored triangle at the specified coordinates.
182
+ *
183
+ * **NOTE**: This function will silently fail if the `developer` [ConVar](https://wiki.facepunch.com/gmod/ConVar) is set to `0`.
184
+ * It is not networked to clients, except for the [listen server host](https://wiki.facepunch.com/gmod/Player:IsListenServerHost).
185
+ * It will not work when the game is paused.
186
+ *
187
+ *
188
+ * @realm shared
189
+ * @source https://wiki.facepunch.com/gmod/debugoverlay.Triangle
190
+ */
191
+ Triangle(pos1: Vector, pos2: Vector, pos3: Vector, lifetime?: number, color?: Color, ignoreZ?: boolean): void;
192
+ }
193
+
@@ -0,0 +1,63 @@
1
+ // AUTO-GENERATED tlua declarations. Do not edit by hand.
2
+
3
+ /**
4
+ * **INTERNAL**: Unless you know what you are doing and you benefit from this panel, you should be using the [DProperties](https://wiki.facepunch.com/gmod/DProperties) instead.
5
+ *
6
+ *
7
+ * A panel used by the [Editable Entities](https://wiki.facepunch.com/gmod/Editable_Entities) system.
8
+ *
9
+ * @realm client
10
+ * @source https://wiki.facepunch.com/gmod/DEntityProperties
11
+ */
12
+ interface DEntityProperties extends DProperties {}
13
+
14
+ interface DEntityProperties {
15
+ /**
16
+ * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
17
+ *
18
+ *
19
+ * Called internally by [DEntityProperties:RebuildControls](https://wiki.facepunch.com/gmod/DEntityProperties:RebuildControls).
20
+ *
21
+ * @realm client
22
+ * @source https://wiki.facepunch.com/gmod/DEntityProperties:EditVariable
23
+ */
24
+ EditVariable(self: DEntityProperties, varname: string, editdata: table): void;
25
+ }
26
+
27
+ interface DEntityProperties {
28
+ /**
29
+ * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
30
+ *
31
+ *
32
+ * Called internally when an entity being edited became invalid.
33
+ *
34
+ * You should use [DEntityProperties:OnEntityLost](https://wiki.facepunch.com/gmod/DEntityProperties:OnEntityLost) instead.
35
+ *
36
+ * @realm client
37
+ * @source https://wiki.facepunch.com/gmod/DEntityProperties:EntityLost
38
+ */
39
+ EntityLost(self: DEntityProperties): void;
40
+ }
41
+
42
+ interface DEntityProperties {
43
+ /**
44
+ * **INTERNAL**: This is used internally - although you're able to use it you probably shouldn't.
45
+ *
46
+ *
47
+ * Called internally by [DEntityProperties:SetEntity](https://wiki.facepunch.com/gmod/DEntityProperties:SetEntity) to rebuild the controls.
48
+ *
49
+ * @realm client
50
+ * @source https://wiki.facepunch.com/gmod/DEntityProperties:RebuildControls
51
+ */
52
+ RebuildControls(self: DEntityProperties): void;
53
+ }
54
+
55
+ interface DEntityProperties {
56
+ /**
57
+ * Sets the entity to be edited by this panel. The entity must support the [Editable Entities](https://wiki.facepunch.com/gmod/Editable_Entities) system or nothing will happen.
58
+ * @realm client
59
+ * @source https://wiki.facepunch.com/gmod/DEntityProperties:SetEntity
60
+ */
61
+ SetEntity(self: DEntityProperties, ent: Entity): void;
62
+ }
63
+
package/derma.d.tlua ADDED
@@ -0,0 +1,119 @@
1
+ // AUTO-GENERATED tlua declarations. Do not edit by hand.
2
+
3
+ /**
4
+ * The derma library allows you to add custom derma controls and create & modify derma skins.
5
+ * @source https://wiki.facepunch.com/gmod/derma
6
+ */
7
+ declare derma: DermaLib;
8
+
9
+ interface DermaLib {
10
+ /**
11
+ * Gets the color from a Derma skin of a panel and returns default color if not found.
12
+ * @realm client and menu
13
+ * @source https://wiki.facepunch.com/gmod/derma.Color
14
+ */
15
+ Color(name: string, pnl: Panel, _default: Color): void;
16
+ }
17
+
18
+ interface DermaLib {
19
+ /**
20
+ * Defines a new Derma control with an optional base.
21
+ *
22
+ * This calls [vgui.Register](https://wiki.facepunch.com/gmod/vgui.Register) internally, but also does the following:
23
+ * * Adds the control to [derma.GetControlList](https://wiki.facepunch.com/gmod/derma.GetControlList)
24
+ * * Adds a key "Derma" - This is returned by [derma.GetControlList](https://wiki.facepunch.com/gmod/derma.GetControlList)
25
+ * * Makes a global table with the name of the control (This is technically deprecated and should not be relied upon)
26
+ * * If reloading (i.e. called this function with name of an existing panel), updates all existing instances of panels with this name. (Updates functions, calls [PANEL:PreAutoRefresh](https://wiki.facepunch.com/gmod/PANEL:PreAutoRefresh) and [PANEL:PostAutoRefresh](https://wiki.facepunch.com/gmod/PANEL:PostAutoRefresh), etc.)
27
+ *
28
+ * @realm client and menu
29
+ * @source https://wiki.facepunch.com/gmod/derma.DefineControl
30
+ */
31
+ DefineControl(name: string, description: string, tab: table, base: string): table;
32
+ }
33
+
34
+ interface DermaLib {
35
+ /**
36
+ * Defines a new skin so that it is usable by Derma. The default skin can be found in `garrysmod/lua/skins/default.lua`.
37
+ * @realm client and menu
38
+ * @source https://wiki.facepunch.com/gmod/derma.DefineSkin
39
+ */
40
+ DefineSkin(name: string, descriptions: string, skin: table): void;
41
+ }
42
+
43
+ interface DermaLib {
44
+ /**
45
+ * Returns the [derma.Controls](https://wiki.facepunch.com/gmod/derma.Controls) table, a list of all derma controls registered with [derma.DefineControl](https://wiki.facepunch.com/gmod/derma.DefineControl).
46
+ * @realm client and menu
47
+ * @source https://wiki.facepunch.com/gmod/derma.GetControlList
48
+ */
49
+ GetControlList(): table;
50
+ }
51
+
52
+ interface DermaLib {
53
+ /**
54
+ * Returns the default skin table, which can be changed with the hook [GM:ForceDermaSkin](https://wiki.facepunch.com/gmod/GM:ForceDermaSkin).
55
+ * @realm client and menu
56
+ * @source https://wiki.facepunch.com/gmod/derma.GetDefaultSkin
57
+ */
58
+ GetDefaultSkin(): table;
59
+ }
60
+
61
+ interface DermaLib {
62
+ /**
63
+ * Returns the skin table of the skin with the supplied name.
64
+ * @realm client and menu
65
+ * @source https://wiki.facepunch.com/gmod/derma.GetNamedSkin
66
+ */
67
+ GetNamedSkin(name: string): table;
68
+ }
69
+
70
+ interface DermaLib {
71
+ /**
72
+ * Returns a copy of the table containing every Derma skin.
73
+ * @realm client and menu
74
+ * @source https://wiki.facepunch.com/gmod/derma.GetSkinTable
75
+ */
76
+ GetSkinTable(): table;
77
+ }
78
+
79
+ interface DermaLib {
80
+ /**
81
+ * Clears all cached panels so that they reassess which skin they should be using.
82
+ * @realm client and menu
83
+ * @source https://wiki.facepunch.com/gmod/derma.RefreshSkins
84
+ */
85
+ RefreshSkins(): void;
86
+ }
87
+
88
+ interface DermaLib {
89
+ /**
90
+ * Returns how many times [derma.RefreshSkins](https://wiki.facepunch.com/gmod/derma.RefreshSkins) has been called.
91
+ * @realm client and menu
92
+ * @source https://wiki.facepunch.com/gmod/derma.SkinChangeIndex
93
+ */
94
+ SkinChangeIndex(): number;
95
+ }
96
+
97
+ interface DermaLib {
98
+ /**
99
+ * Checks if a matching hook function exists in the skin _(based on the concatenation of type and name args)_, then calls it.
100
+ *
101
+ * This function is used dynamically inside [Global.Derma_Hook](https://wiki.facepunch.com/gmod/Global.Derma_Hook).
102
+ * @realm client and menu
103
+ * @source https://wiki.facepunch.com/gmod/derma.SkinHook
104
+ */
105
+ SkinHook(type: string, name: string, panel: Panel, vararg1?: any, vararg2?: any): any;
106
+ }
107
+
108
+ interface DermaLib {
109
+ /**
110
+ * Returns a function to draw a specified texture of panels skin.
111
+ *
112
+ * These are usually generated via [GWEN.CreateTextureBorder](https://wiki.facepunch.com/gmod/GWEN.CreateTextureBorder) and similar.
113
+ *
114
+ * @realm client and menu
115
+ * @source https://wiki.facepunch.com/gmod/derma.SkinTexture
116
+ */
117
+ SkinTexture(name: string, pnl: Panel, fallback?: function | any): (x: number, y: number, w: number, h: number, clr?: Color) => void;
118
+ }
119
+