@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.
- package/README.md +28 -0
- package/__metadata.json +4 -0
- package/_globals.d.tlua +178 -0
- package/_gmod-std.d.tlua +35 -0
- package/achievementicon.d.tlua +12 -0
- package/achievements.d.tlua +162 -0
- package/ai.d.tlua +65 -0
- package/ai_schedule.d.tlua +17 -0
- package/ai_task.d.tlua +17 -0
- package/angle.d.tlua +197 -0
- package/avatarimage.d.tlua +10 -0
- package/awesomium.d.tlua +14 -0
- package/baseclass.d.tlua +42 -0
- package/bf_read.d.tlua +110 -0
- package/bit.d.tlua +121 -0
- package/button.d.tlua +13 -0
- package/cam.d.tlua +220 -0
- package/ceffectdata.d.tlua +337 -0
- package/chat.d.tlua +62 -0
- package/checkbutton.d.tlua +14 -0
- package/cleanup.d.tlua +88 -0
- package/cluaemitter.d.tlua +119 -0
- package/clualocomotion.d.tlua +383 -0
- package/cluaparticle.d.tlua +426 -0
- package/cmovedata.d.tlua +476 -0
- package/cnavarea.d.tlua +845 -0
- package/cnavladder.d.tlua +209 -0
- package/cnewparticleeffect.d.tlua +259 -0
- package/color.d.tlua +339 -0
- package/concommand.d.tlua +69 -0
- package/constraint.d.tlua +311 -0
- package/construct.d.tlua +26 -0
- package/contentheader.d.tlua +32 -0
- package/contenticon.d.tlua +86 -0
- package/contentsidebar.d.tlua +45 -0
- package/contentsidebartoolbox.d.tlua +13 -0
- package/contextbase.d.tlua +37 -0
- package/controlpanel.d.tlua +140 -0
- package/controlpresets.d.tlua +118 -0
- package/convar.d.tlua +162 -0
- package/cookie.d.tlua +60 -0
- package/coroutine.d.tlua +90 -0
- package/crecipientfilter.d.tlua +152 -0
- package/csent.d.tlua +10 -0
- package/csoundpatch.d.tlua +150 -0
- package/ctakedamageinfo.d.tlua +366 -0
- package/ctrllistbox.d.tlua +12 -0
- package/ctrlnumpad.d.tlua +73 -0
- package/cusercmd.d.tlua +320 -0
- package/custom_classes.d.tlua +65 -0
- package/custom_entity_fields.d.tlua +96 -0
- package/cvars.d.tlua +80 -0
- package/dadjustablemodelpanel.d.tlua +81 -0
- package/dalphabar.d.tlua +27 -0
- package/dbinder.d.tlua +37 -0
- package/dbubblecontainer.d.tlua +18 -0
- package/dbutton.d.tlua +88 -0
- package/dcategoryheader.d.tlua +13 -0
- package/dcategorylist.d.tlua +11 -0
- package/dcheckbox.d.tlua +46 -0
- package/dcheckboxlabel.d.tlua +90 -0
- package/dcollapsiblecategory.d.tlua +240 -0
- package/dcolorbutton.d.tlua +73 -0
- package/dcolorcombo.d.tlua +54 -0
- package/dcolorcube.d.tlua +137 -0
- package/dcolormixer.d.tlua +303 -0
- package/dcolorpalette.d.tlua +294 -0
- package/dcolumnsheet.d.tlua +49 -0
- package/dcombobox.d.tlua +161 -0
- package/ddragbase.d.tlua +151 -0
- package/ddrawer.d.tlua +72 -0
- package/debug.d.tlua +236 -0
- package/debugoverlay.d.tlua +193 -0
- package/dentityproperties.d.tlua +63 -0
- package/derma.d.tlua +119 -0
- package/dexpandbutton.d.tlua +30 -0
- package/dfilebrowser.d.tlua +228 -0
- package/dform.d.tlua +176 -0
- package/dframe.d.tlua +261 -0
- package/dgrid.d.tlua +113 -0
- package/dhorizontaldivider.d.tlua +196 -0
- package/dhorizontalscroller.d.tlua +104 -0
- package/dhscrollbar.d.tlua +109 -0
- package/dhtml.d.tlua +91 -0
- package/dhtmlcontrols.d.tlua +62 -0
- package/diconbrowser.d.tlua +113 -0
- package/diconlayout.d.tlua +190 -0
- package/dimage.d.tlua +221 -0
- package/dimagebutton.d.tlua +103 -0
- package/dkillicon.d.tlua +9 -0
- package/dlabel.d.tlua +385 -0
- package/dlabeleditable.d.tlua +51 -0
- package/dlabelurl.d.tlua +100 -0
- package/dlistbox.d.tlua +82 -0
- package/dlistboxitem.d.tlua +42 -0
- package/dlistlayout.d.tlua +14 -0
- package/dlistview.d.tlua +360 -0
- package/dlistview_column.d.tlua +135 -0
- package/dlistview_columnplain.d.tlua +11 -0
- package/dlistview_draggerbar.d.tlua +11 -0
- package/dlistview_line.d.tlua +140 -0
- package/dlistviewheaderlabel.d.tlua +11 -0
- package/dlistviewlabel.d.tlua +11 -0
- package/dlistviewline.d.tlua +11 -0
- package/dmenu.d.tlua +266 -0
- package/dmenubar.d.tlua +42 -0
- package/dmenuoption.d.tlua +135 -0
- package/dmenuoptioncvar.d.tlua +64 -0
- package/dmodelpanel.d.tlua +207 -0
- package/dmodelselect.d.tlua +20 -0
- package/dmodelselectmulti.d.tlua +19 -0
- package/dnotify.d.tlua +93 -0
- package/dnumberscratch.d.tlua +284 -0
- package/dnumberwang.d.tlua +147 -0
- package/dnumpad.d.tlua +11 -0
- package/dnumslider.d.tlua +182 -0
- package/dpanel.d.tlua +152 -0
- package/dpanellist.d.tlua +109 -0
- package/dpaneloverlay.d.tlua +65 -0
- package/dpanelselect.d.tlua +13 -0
- package/dpanpanel.d.tlua +64 -0
- package/dprogress.d.tlua +27 -0
- package/dproperties.d.tlua +52 -0
- package/dproperty_boolean.d.tlua +12 -0
- package/dproperty_combo.d.tlua +31 -0
- package/dproperty_entity.d.tlua +12 -0
- package/dproperty_float.d.tlua +12 -0
- package/dproperty_generic.d.tlua +50 -0
- package/dproperty_int.d.tlua +12 -0
- package/dproperty_vectorcolor.d.tlua +14 -0
- package/dpropertysheet.d.tlua +167 -0
- package/dragndrop.d.tlua +123 -0
- package/draw.d.tlua +162 -0
- package/drgbpicker.d.tlua +49 -0
- package/drive.d.tlua +159 -0
- package/dscrollbargrip.d.tlua +13 -0
- package/dscrollpanel.d.tlua +110 -0
- package/dshape.d.tlua +72 -0
- package/dsizetocontents.d.tlua +46 -0
- package/dslider.d.tlua +302 -0
- package/dsprite.d.tlua +84 -0
- package/dtab.d.tlua +81 -0
- package/dtextentry.d.tlua +442 -0
- package/dtilelayout.d.tlua +218 -0
- package/dtooltip.d.tlua +76 -0
- package/dtree.d.tlua +185 -0
- package/dtree_node.d.tlua +793 -0
- package/dtree_node_button.d.tlua +13 -0
- package/duplicator.d.tlua +338 -0
- package/dverticaldivider.d.tlua +223 -0
- package/dvscrollbar.d.tlua +109 -0
- package/editablepanel.d.tlua +10 -0
- package/effect.d.tlua +121 -0
- package/effects.d.tlua +77 -0
- package/engine.d.tlua +248 -0
- package/entity.d.tlua +8295 -0
- package/ents.d.tlua +267 -0
- package/enums.d.tlua +7082 -0
- package/file.d.tlua +419 -0
- package/file_class.d.tlua +7 -0
- package/fingerposer.d.tlua +12 -0
- package/fingervar.d.tlua +13 -0
- package/frame.d.tlua +11 -0
- package/frame_blend.d.tlua +105 -0
- package/game.d.tlua +482 -0
- package/gameevent.d.tlua +968 -0
- package/gamemode.d.tlua +48 -0
- package/global.d.tlua +3156 -0
- package/gm.d.tlua +3218 -0
- package/gmod.d.tlua +20 -0
- package/gmsave.d.tlua +53 -0
- package/gui.d.tlua +232 -0
- package/gwen.d.tlua +55 -0
- package/halo.d.tlua +42 -0
- package/hammer.d.tlua +17 -0
- package/hook.d.tlua +64 -0
- package/html.d.tlua +22 -0
- package/http.d.tlua +72 -0
- package/iconeditor.d.tlua +130 -0
- package/igmodaudiochannel.d.tlua +419 -0
- package/imagecheckbox.d.tlua +48 -0
- package/imaterial.d.tlua +288 -0
- package/imesh.d.tlua +70 -0
- package/index.d.tlua +277 -0
- package/input.d.tlua +252 -0
- package/invalidateinternalentitycache.d.tlua +13 -0
- package/irestore.d.tlua +94 -0
- package/isave.d.tlua +94 -0
- package/itexture.d.tlua +108 -0
- package/ivideowriter.d.tlua +53 -0
- package/jit.d.tlua +243 -0
- package/killicon.d.tlua +84 -0
- package/label.d.tlua +20 -0
- package/language.d.tlua +26 -0
- package/list.d.tlua +112 -0
- package/makeballoon.d.tlua +15 -0
- package/markup.d.tlua +38 -0
- package/markupobject.d.tlua +53 -0
- package/material.d.tlua +9 -0
- package/math.d.tlua +899 -0
- package/matproxy.d.tlua +60 -0
- package/matselect.d.tlua +106 -0
- package/menu.d.tlua +20 -0
- package/menubar.d.tlua +39 -0
- package/mesh.d.tlua +183 -0
- package/modelimage.d.tlua +12 -0
- package/motionsensor.d.tlua +115 -0
- package/navmesh.d.tlua +274 -0
- package/net.d.tlua +639 -0
- package/nextbot.d.tlua +380 -0
- package/notification.d.tlua +35 -0
- package/npc.d.tlua +1787 -0
- package/numpad.d.tlua +89 -0
- package/os.d.tlua +56 -0
- package/package.d.tlua +15 -0
- package/package.json +18 -0
- package/panel.d.tlua +3650 -0
- package/panellist.d.tlua +13 -0
- package/pathfollower.d.tlua +301 -0
- package/permissions.d.tlua +77 -0
- package/physcollide.d.tlua +40 -0
- package/physenv.d.tlua +136 -0
- package/physobj.d.tlua +799 -0
- package/pixelvis_handle_t.d.tlua +9 -0
- package/player.d.tlua +3320 -0
- package/player_manager.d.tlua +147 -0
- package/preseteditor.d.tlua +13 -0
- package/presets.d.tlua +79 -0
- package/projectedtexture.d.tlua +553 -0
- package/properties.d.tlua +65 -0
- package/propselect.d.tlua +50 -0
- package/radiobutton.d.tlua +13 -0
- package/render.d.tlua +1700 -0
- package/resource.d.tlua +73 -0
- package/richtext.d.tlua +17 -0
- package/sandbox.d.tlua +576 -0
- package/saverestore.d.tlua +148 -0
- package/schedule.d.tlua +69 -0
- package/scripted_ents.d.tlua +124 -0
- package/search.d.tlua +26 -0
- package/serverlist.d.tlua +85 -0
- package/slidebar.d.tlua +12 -0
- package/slider.d.tlua +11 -0
- package/sound.d.tlua +140 -0
- package/spawnicon.d.tlua +95 -0
- package/spawnmenu.d.tlua +286 -0
- package/spawnmenucontentpanel.d.tlua +52 -0
- package/sql.d.tlua +154 -0
- package/stack.d.tlua +57 -0
- package/steamworks.d.tlua +208 -0
- package/string.d.tlua +535 -0
- package/structures.d.tlua +4442 -0
- package/surface.d.tlua +463 -0
- package/surfaceinfo.d.tlua +70 -0
- package/system.d.tlua +134 -0
- package/table.d.tlua +533 -0
- package/task.d.tlua +92 -0
- package/team.d.tlua +195 -0
- package/textentry.d.tlua +12 -0
- package/tgaimage.d.tlua +11 -0
- package/timer.d.tlua +198 -0
- package/tool.d.tlua +466 -0
- package/ugcpublishwindow.d.tlua +83 -0
- package/umsg.d.tlua +147 -0
- package/undo.d.tlua +122 -0
- package/urllabel.d.tlua +13 -0
- package/usermessage.d.tlua +48 -0
- package/utf8.d.tlua +89 -0
- package/util.d.tlua +1087 -0
- package/vector.d.tlua +413 -0
- package/vehicle.d.tlua +472 -0
- package/vgui.d.tlua +201 -0
- package/video.d.tlua +17 -0
- package/vmatrix.d.tlua +392 -0
- package/weapon.d.tlua +913 -0
- package/weapons.d.tlua +90 -0
- package/widgets.d.tlua +29 -0
- package/workshopfilebase.d.tlua +68 -0
package/physobj.d.tlua
ADDED
|
@@ -0,0 +1,799 @@
|
|
|
1
|
+
// AUTO-GENERATED tlua declarations. Do not edit by hand.
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* This is the object returned by [Entity:GetPhysicsObject](https://wiki.facepunch.com/gmod/Entity:GetPhysicsObject), [Entity:GetPhysicsObjectNum](https://wiki.facepunch.com/gmod/Entity:GetPhysicsObjectNum) and [Vehicle:GetWheel](https://wiki.facepunch.com/gmod/Vehicle:GetWheel).
|
|
5
|
+
*
|
|
6
|
+
* It represents a physics object. An entity can have multiple physics objects (ragdolls), one physics objects (props), or none. (NPCs, non physics entities, etc.)
|
|
7
|
+
*
|
|
8
|
+
* Physics objects are usually simulated by the physics engine and usually dictate the position of the entity, and not the other way around.
|
|
9
|
+
*
|
|
10
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj
|
|
11
|
+
*/
|
|
12
|
+
interface PhysObj {}
|
|
13
|
+
|
|
14
|
+
interface PhysObj {
|
|
15
|
+
/**
|
|
16
|
+
* Adds the specified [angular velocity](https://en.wikipedia.org/wiki/Angular_velocity) velocity to the current [PhysObj](https://wiki.facepunch.com/gmod/PhysObj).
|
|
17
|
+
* @realm shared
|
|
18
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:AddAngleVelocity
|
|
19
|
+
*/
|
|
20
|
+
AddAngleVelocity(self: PhysObj, angularVelocity: Vector): void;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
interface PhysObj {
|
|
24
|
+
/**
|
|
25
|
+
* Adds one or more bit flags.
|
|
26
|
+
* @realm shared
|
|
27
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:AddGameFlag
|
|
28
|
+
*/
|
|
29
|
+
AddGameFlag(self: PhysObj, flags: number): void;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
interface PhysObj {
|
|
33
|
+
/**
|
|
34
|
+
* Adds the specified velocity to the current.
|
|
35
|
+
* @realm shared
|
|
36
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:AddVelocity
|
|
37
|
+
*/
|
|
38
|
+
AddVelocity(self: PhysObj, velocity: Vector): void;
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
interface PhysObj {
|
|
42
|
+
/**
|
|
43
|
+
* Rotates the object so that it's angles are aligned to the ones inputted.
|
|
44
|
+
* @realm shared
|
|
45
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:AlignAngles
|
|
46
|
+
*/
|
|
47
|
+
AlignAngles(self: PhysObj, from: Angle, to: Angle): Angle;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
interface PhysObj {
|
|
51
|
+
/**
|
|
52
|
+
* Applies the specified impulse in the mass center of the physics object.
|
|
53
|
+
*
|
|
54
|
+
* **NOTE**: This will not work on players, use [Entity:SetVelocity](https://wiki.facepunch.com/gmod/Entity:SetVelocity) instead.
|
|
55
|
+
*
|
|
56
|
+
*
|
|
57
|
+
* @realm shared
|
|
58
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:ApplyForceCenter
|
|
59
|
+
*/
|
|
60
|
+
ApplyForceCenter(self: PhysObj, impulse: Vector): void;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
interface PhysObj {
|
|
64
|
+
/**
|
|
65
|
+
* Applies the specified impulse on the physics object at the specified position.
|
|
66
|
+
* @realm shared
|
|
67
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:ApplyForceOffset
|
|
68
|
+
*/
|
|
69
|
+
ApplyForceOffset(self: PhysObj, impulse: Vector, position: Vector): void;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
interface PhysObj {
|
|
73
|
+
/**
|
|
74
|
+
* Applies the specified angular impulse to the physics object. See [PhysObj:CalculateForceOffset](https://wiki.facepunch.com/gmod/PhysObj:CalculateForceOffset)
|
|
75
|
+
* @realm shared
|
|
76
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:ApplyTorqueCenter
|
|
77
|
+
*/
|
|
78
|
+
ApplyTorqueCenter(self: PhysObj, angularImpulse: Vector): void;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
interface PhysObj {
|
|
82
|
+
/**
|
|
83
|
+
* Calculates the linear and angular impulse on the object's center of mass for an offset impulse.The outputs can be used with [PhysObj:ApplyForceCenter](https://wiki.facepunch.com/gmod/PhysObj:ApplyForceCenter) and [PhysObj:ApplyTorqueCenter](https://wiki.facepunch.com/gmod/PhysObj:ApplyTorqueCenter), respectively.
|
|
84
|
+
*
|
|
85
|
+
* **Be careful to convert the angular impulse to world frame ([PhysObj:LocalToWorldVector](https://wiki.facepunch.com/gmod/PhysObj:LocalToWorldVector)) if you are going to use it with ApplyTorqueCenter.**
|
|
86
|
+
* @realm shared
|
|
87
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:CalculateForceOffset
|
|
88
|
+
*/
|
|
89
|
+
CalculateForceOffset(self: PhysObj, impulse: Vector, position: Vector): (Vector, Vector);
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
interface PhysObj {
|
|
93
|
+
/**
|
|
94
|
+
* Calculates the linear and angular velocities on the center of mass for an offset impulse. The outputs can be directly passed to [PhysObj:AddVelocity](https://wiki.facepunch.com/gmod/PhysObj:AddVelocity) and [PhysObj:AddAngleVelocity](https://wiki.facepunch.com/gmod/PhysObj:AddAngleVelocity), respectively.
|
|
95
|
+
*
|
|
96
|
+
* **WARNING**: This will return zero length vectors if the physics object's motion is disabled. See [PhysObj:IsMotionEnabled](https://wiki.facepunch.com/gmod/PhysObj:IsMotionEnabled).
|
|
97
|
+
*
|
|
98
|
+
* @realm shared
|
|
99
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:CalculateVelocityOffset
|
|
100
|
+
*/
|
|
101
|
+
CalculateVelocityOffset(self: PhysObj, impulse: Vector, position: Vector): (Vector, Vector);
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
interface PhysObj {
|
|
105
|
+
/**
|
|
106
|
+
* Removes one of more specified flags.
|
|
107
|
+
* @realm shared
|
|
108
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:ClearGameFlag
|
|
109
|
+
*/
|
|
110
|
+
ClearGameFlag(self: PhysObj, flags: number): void;
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
interface PhysObj {
|
|
114
|
+
/**
|
|
115
|
+
* Allows you to move a PhysObj to a point and angle in 3D space. Works with any PhysObj, not just physics shadows.
|
|
116
|
+
* @realm shared
|
|
117
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:ComputeShadowControl
|
|
118
|
+
*/
|
|
119
|
+
ComputeShadowControl(self: PhysObj, shadowparams: ShadowControlParams): void;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
interface PhysObj {
|
|
123
|
+
/**
|
|
124
|
+
* Sets whether the physics object should collide with anything or not, including world.
|
|
125
|
+
*
|
|
126
|
+
* **WARNING**: This function currently has major problems with player collisions, and as such should be avoided at all costs.
|
|
127
|
+
*
|
|
128
|
+
*
|
|
129
|
+
*
|
|
130
|
+
* A better alternative to this function would be using [Entity:SetCollisionGroup](https://wiki.facepunch.com/gmod/Entity:SetCollisionGroup)( COLLISION_GROUP_WORLD ).
|
|
131
|
+
*
|
|
132
|
+
*
|
|
133
|
+
* @realm shared
|
|
134
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:EnableCollisions
|
|
135
|
+
*/
|
|
136
|
+
EnableCollisions(self: PhysObj, enable: boolean): void;
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
interface PhysObj {
|
|
140
|
+
/**
|
|
141
|
+
* Sets whenever the physics object should be affected by drag.
|
|
142
|
+
* @realm shared
|
|
143
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:EnableDrag
|
|
144
|
+
*/
|
|
145
|
+
EnableDrag(self: PhysObj, enable: boolean): void;
|
|
146
|
+
}
|
|
147
|
+
|
|
148
|
+
interface PhysObj {
|
|
149
|
+
/**
|
|
150
|
+
* Sets whether the PhysObject should be affected by gravity
|
|
151
|
+
* @realm shared
|
|
152
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:EnableGravity
|
|
153
|
+
*/
|
|
154
|
+
EnableGravity(self: PhysObj, enable: boolean): void;
|
|
155
|
+
}
|
|
156
|
+
|
|
157
|
+
interface PhysObj {
|
|
158
|
+
/**
|
|
159
|
+
* Sets whether the physobject should be able to move or not.
|
|
160
|
+
*
|
|
161
|
+
* This is the exact method the Physics Gun uses to freeze props. If a motion-disabled physics object is grabbed with the physics gun, the object will be able to move again. To disallow this, use [GM:PhysgunPickup](https://wiki.facepunch.com/gmod/GM:PhysgunPickup).
|
|
162
|
+
*
|
|
163
|
+
* @realm shared
|
|
164
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:EnableMotion
|
|
165
|
+
*/
|
|
166
|
+
EnableMotion(self: PhysObj, enable: boolean): void;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
interface PhysObj {
|
|
170
|
+
/**
|
|
171
|
+
* Returns the mins and max of the physics object Axis-Aligned Bounding Box.
|
|
172
|
+
* @realm shared
|
|
173
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetAABB
|
|
174
|
+
*/
|
|
175
|
+
GetAABB(self: PhysObj): (Vector | nil, Vector);
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
interface PhysObj {
|
|
179
|
+
/**
|
|
180
|
+
* Gets the angular velocity of the object in degrees per second as a local vector. You can use dot product to read the magnitude from a specific axis.
|
|
181
|
+
* @realm shared
|
|
182
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetAngleVelocity
|
|
183
|
+
*/
|
|
184
|
+
GetAngleVelocity(self: PhysObj): Vector;
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
interface PhysObj {
|
|
188
|
+
/**
|
|
189
|
+
* Returns the angles of the physics object in degrees.
|
|
190
|
+
* @realm shared
|
|
191
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetAngles
|
|
192
|
+
*/
|
|
193
|
+
GetAngles(self: PhysObj): Angle;
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
interface PhysObj {
|
|
197
|
+
/**
|
|
198
|
+
* Returns the buoyancy ratio of the physics object. (How well it floats in water).
|
|
199
|
+
*
|
|
200
|
+
* **NOTE**: This feature is not available on x86-64 beta and on MacOS version of the game.
|
|
201
|
+
*
|
|
202
|
+
*
|
|
203
|
+
* @realm shared
|
|
204
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetBuoyancyRatio
|
|
205
|
+
*/
|
|
206
|
+
GetBuoyancyRatio(self: PhysObj): number;
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
interface PhysObj {
|
|
210
|
+
/**
|
|
211
|
+
* Returns the contents flag of the [PhysObj](https://wiki.facepunch.com/gmod/PhysObj).
|
|
212
|
+
* @realm shared
|
|
213
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetContents
|
|
214
|
+
*/
|
|
215
|
+
GetContents(self: PhysObj): number;
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
interface PhysObj {
|
|
219
|
+
/**
|
|
220
|
+
* Returns the linear and angular damping of the physics object.
|
|
221
|
+
* @realm shared
|
|
222
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetDamping
|
|
223
|
+
*/
|
|
224
|
+
GetDamping(self: PhysObj): (number, number);
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
interface PhysObj {
|
|
228
|
+
/**
|
|
229
|
+
* Returns the sum of the linear and rotational kinetic energies of the physics object.
|
|
230
|
+
* @realm shared
|
|
231
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetEnergy
|
|
232
|
+
*/
|
|
233
|
+
GetEnergy(self: PhysObj): number;
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
interface PhysObj {
|
|
237
|
+
/**
|
|
238
|
+
* Returns the parent entity of the physics object.
|
|
239
|
+
* @realm shared
|
|
240
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetEntity
|
|
241
|
+
*/
|
|
242
|
+
GetEntity(self: PhysObj): Entity;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
interface PhysObj {
|
|
246
|
+
/**
|
|
247
|
+
* Returns the friction snapshot of this physics object. This is useful for determining if an object touching ground for example.
|
|
248
|
+
* @realm server
|
|
249
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetFrictionSnapshot
|
|
250
|
+
*/
|
|
251
|
+
GetFrictionSnapshot(self: PhysObj): table;
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
interface PhysObj {
|
|
255
|
+
/**
|
|
256
|
+
* Returns the index this physics object is on its [PhysObj:GetEntity](https://wiki.facepunch.com/gmod/PhysObj:GetEntity).
|
|
257
|
+
*
|
|
258
|
+
* Useful for [Entity:TranslateBoneToPhysBone](https://wiki.facepunch.com/gmod/Entity:TranslateBoneToPhysBone).
|
|
259
|
+
*
|
|
260
|
+
* @realm shared
|
|
261
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetIndex
|
|
262
|
+
*/
|
|
263
|
+
GetIndex(self: PhysObj): number;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
interface PhysObj {
|
|
267
|
+
/**
|
|
268
|
+
* Returns the principal moments of inertia `(Ixx, Iyy, Izz)` of the physics object, in the local frame, with respect to the center of mass.
|
|
269
|
+
* @realm shared
|
|
270
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetInertia
|
|
271
|
+
*/
|
|
272
|
+
GetInertia(self: PhysObj): Vector;
|
|
273
|
+
}
|
|
274
|
+
|
|
275
|
+
interface PhysObj {
|
|
276
|
+
/**
|
|
277
|
+
* Returns 1 divided by the angular inertia. See [PhysObj:GetInertia](https://wiki.facepunch.com/gmod/PhysObj:GetInertia)
|
|
278
|
+
* @realm shared
|
|
279
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetInvInertia
|
|
280
|
+
*/
|
|
281
|
+
GetInvInertia(self: PhysObj): Vector;
|
|
282
|
+
}
|
|
283
|
+
|
|
284
|
+
interface PhysObj {
|
|
285
|
+
/**
|
|
286
|
+
* Returns 1 divided by the physics object's mass (in kilograms).
|
|
287
|
+
* @realm shared
|
|
288
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetInvMass
|
|
289
|
+
*/
|
|
290
|
+
GetInvMass(self: PhysObj): number;
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
interface PhysObj {
|
|
294
|
+
/**
|
|
295
|
+
* Returns the mass of the physics object.
|
|
296
|
+
* @realm shared
|
|
297
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetMass
|
|
298
|
+
*/
|
|
299
|
+
GetMass(self: PhysObj): number;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
interface PhysObj {
|
|
303
|
+
/**
|
|
304
|
+
* Returns the center of mass of the physics object as a local vector.
|
|
305
|
+
* @realm shared
|
|
306
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetMassCenter
|
|
307
|
+
*/
|
|
308
|
+
GetMassCenter(self: PhysObj): Vector;
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
interface PhysObj {
|
|
312
|
+
/**
|
|
313
|
+
* Returns the [physical material](https://developer.valvesoftware.com/wiki/Material_surface_properties) ($surfaceprop) of the physics object.
|
|
314
|
+
*
|
|
315
|
+
* See [util.GetSurfaceData](https://wiki.facepunch.com/gmod/util.GetSurfaceData) for a function that adds these types as well as further explanation of what they are.
|
|
316
|
+
* @realm shared
|
|
317
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetMaterial
|
|
318
|
+
*/
|
|
319
|
+
GetMaterial(self: PhysObj): string;
|
|
320
|
+
}
|
|
321
|
+
|
|
322
|
+
interface PhysObj {
|
|
323
|
+
/**
|
|
324
|
+
* Returns the physics mesh of the object which is used for physobj-on-physobj collision.
|
|
325
|
+
* @realm shared
|
|
326
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetMesh
|
|
327
|
+
*/
|
|
328
|
+
GetMesh(self: PhysObj): table;
|
|
329
|
+
}
|
|
330
|
+
|
|
331
|
+
interface PhysObj {
|
|
332
|
+
/**
|
|
333
|
+
* Returns all convex physics meshes of the object. See [Entity:PhysicsInitMultiConvex](https://wiki.facepunch.com/gmod/Entity:PhysicsInitMultiConvex) for more information.
|
|
334
|
+
* @realm shared
|
|
335
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetMeshConvexes
|
|
336
|
+
*/
|
|
337
|
+
GetMeshConvexes(self: PhysObj): table;
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
interface PhysObj {
|
|
341
|
+
/**
|
|
342
|
+
* Returns the name of the physics object.
|
|
343
|
+
* @realm shared
|
|
344
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetName
|
|
345
|
+
*/
|
|
346
|
+
GetName(self: PhysObj): string;
|
|
347
|
+
}
|
|
348
|
+
|
|
349
|
+
interface PhysObj {
|
|
350
|
+
/**
|
|
351
|
+
* Returns the position of the physics object.
|
|
352
|
+
* @realm shared
|
|
353
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetPos
|
|
354
|
+
*/
|
|
355
|
+
GetPos(self: PhysObj): Vector;
|
|
356
|
+
}
|
|
357
|
+
|
|
358
|
+
interface PhysObj {
|
|
359
|
+
/**
|
|
360
|
+
* Returns the position and angle of the physics object as a 3x4 matrix ([VMatrix](https://wiki.facepunch.com/gmod/VMatrix) is 4x4 so the fourth row goes unused). The first three columns store the angle as a [rotation matrix](https://en.wikipedia.org/wiki/Rotation_matrix), and the fourth column stores the position vector.
|
|
361
|
+
* @realm shared
|
|
362
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetPositionMatrix
|
|
363
|
+
*/
|
|
364
|
+
GetPositionMatrix(self: PhysObj): VMatrix;
|
|
365
|
+
}
|
|
366
|
+
|
|
367
|
+
interface PhysObj {
|
|
368
|
+
/**
|
|
369
|
+
* Returns the rotation damping of the physics object.
|
|
370
|
+
* @realm shared
|
|
371
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetRotDamping
|
|
372
|
+
*/
|
|
373
|
+
GetRotDamping(self: PhysObj): number;
|
|
374
|
+
}
|
|
375
|
+
|
|
376
|
+
interface PhysObj {
|
|
377
|
+
/**
|
|
378
|
+
* Returns the angles of the [PhysObj](https://wiki.facepunch.com/gmod/PhysObj) shadow. See [PhysObj:UpdateShadow](https://wiki.facepunch.com/gmod/PhysObj:UpdateShadow).
|
|
379
|
+
* @realm shared
|
|
380
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetShadowAngles
|
|
381
|
+
*/
|
|
382
|
+
GetShadowAngles(self: PhysObj): Angle;
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
interface PhysObj {
|
|
386
|
+
/**
|
|
387
|
+
* Returns the position of the [PhysObj](https://wiki.facepunch.com/gmod/PhysObj) shadow. See [PhysObj:UpdateShadow](https://wiki.facepunch.com/gmod/PhysObj:UpdateShadow).
|
|
388
|
+
* @realm shared
|
|
389
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetShadowPos
|
|
390
|
+
*/
|
|
391
|
+
GetShadowPos(self: PhysObj): Vector;
|
|
392
|
+
}
|
|
393
|
+
|
|
394
|
+
interface PhysObj {
|
|
395
|
+
/**
|
|
396
|
+
* Returns the speed damping of the physics object.
|
|
397
|
+
* @realm shared
|
|
398
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetSpeedDamping
|
|
399
|
+
*/
|
|
400
|
+
GetSpeedDamping(self: PhysObj): number;
|
|
401
|
+
}
|
|
402
|
+
|
|
403
|
+
interface PhysObj {
|
|
404
|
+
/**
|
|
405
|
+
* Returns the internal and external stress of the entity.
|
|
406
|
+
* @realm server
|
|
407
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetStress
|
|
408
|
+
*/
|
|
409
|
+
GetStress(self: PhysObj): (number, number);
|
|
410
|
+
}
|
|
411
|
+
|
|
412
|
+
interface PhysObj {
|
|
413
|
+
/**
|
|
414
|
+
* Returns the surface area of the physics object in source-units². Or nil if the PhysObj is a generated sphere or box.
|
|
415
|
+
* @realm shared
|
|
416
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetSurfaceArea
|
|
417
|
+
*/
|
|
418
|
+
GetSurfaceArea(self: PhysObj): number | nil;
|
|
419
|
+
}
|
|
420
|
+
|
|
421
|
+
interface PhysObj {
|
|
422
|
+
/**
|
|
423
|
+
* Returns the absolute directional velocity of the physobject.
|
|
424
|
+
* @realm shared
|
|
425
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetVelocity
|
|
426
|
+
*/
|
|
427
|
+
GetVelocity(self: PhysObj): Vector;
|
|
428
|
+
}
|
|
429
|
+
|
|
430
|
+
interface PhysObj {
|
|
431
|
+
/**
|
|
432
|
+
* Returns the world velocity of a point in world coordinates about the object. This is useful for objects rotating around their own axis/origin.
|
|
433
|
+
* @realm shared
|
|
434
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetVelocityAtPoint
|
|
435
|
+
*/
|
|
436
|
+
GetVelocityAtPoint(self: PhysObj, point: Vector): Vector;
|
|
437
|
+
}
|
|
438
|
+
|
|
439
|
+
interface PhysObj {
|
|
440
|
+
/**
|
|
441
|
+
* Returns the volume in source units³. Or nil if the PhysObj is a generated sphere or box.
|
|
442
|
+
* @realm shared
|
|
443
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:GetVolume
|
|
444
|
+
*/
|
|
445
|
+
GetVolume(self: PhysObj): number | nil;
|
|
446
|
+
}
|
|
447
|
+
|
|
448
|
+
interface PhysObj {
|
|
449
|
+
/**
|
|
450
|
+
* Returns whenever the specified flag(s) is/are set.
|
|
451
|
+
* @realm shared
|
|
452
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:HasGameFlag
|
|
453
|
+
*/
|
|
454
|
+
HasGameFlag(self: PhysObj, flags: number): boolean;
|
|
455
|
+
}
|
|
456
|
+
|
|
457
|
+
interface PhysObj {
|
|
458
|
+
/**
|
|
459
|
+
* Returns whether the physics object is "sleeping".
|
|
460
|
+
*
|
|
461
|
+
* See [PhysObj:Sleep](https://wiki.facepunch.com/gmod/PhysObj:Sleep) for more information.
|
|
462
|
+
*
|
|
463
|
+
* @realm shared
|
|
464
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:IsAsleep
|
|
465
|
+
*/
|
|
466
|
+
IsAsleep(self: PhysObj): boolean;
|
|
467
|
+
}
|
|
468
|
+
|
|
469
|
+
interface PhysObj {
|
|
470
|
+
/**
|
|
471
|
+
* Returns whenever the entity is able to collide or not.
|
|
472
|
+
* @realm shared
|
|
473
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:IsCollisionEnabled
|
|
474
|
+
*/
|
|
475
|
+
IsCollisionEnabled(self: PhysObj): boolean;
|
|
476
|
+
}
|
|
477
|
+
|
|
478
|
+
interface PhysObj {
|
|
479
|
+
/**
|
|
480
|
+
* Returns whenever the entity is affected by drag.
|
|
481
|
+
* @realm shared
|
|
482
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:IsDragEnabled
|
|
483
|
+
*/
|
|
484
|
+
IsDragEnabled(self: PhysObj): boolean;
|
|
485
|
+
}
|
|
486
|
+
|
|
487
|
+
interface PhysObj {
|
|
488
|
+
/**
|
|
489
|
+
* Returns whenever the entity is affected by gravity.
|
|
490
|
+
* @realm shared
|
|
491
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:IsGravityEnabled
|
|
492
|
+
*/
|
|
493
|
+
IsGravityEnabled(self: PhysObj): boolean;
|
|
494
|
+
}
|
|
495
|
+
|
|
496
|
+
interface PhysObj {
|
|
497
|
+
/**
|
|
498
|
+
* Returns if the physics object can move itself (by velocity, acceleration)
|
|
499
|
+
* @realm shared
|
|
500
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:IsMotionEnabled
|
|
501
|
+
*/
|
|
502
|
+
IsMotionEnabled(self: PhysObj): boolean;
|
|
503
|
+
}
|
|
504
|
+
|
|
505
|
+
interface PhysObj {
|
|
506
|
+
/**
|
|
507
|
+
* Returns whenever the entity is able to move.
|
|
508
|
+
* @realm shared
|
|
509
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:IsMoveable
|
|
510
|
+
*/
|
|
511
|
+
IsMoveable(self: PhysObj): boolean;
|
|
512
|
+
}
|
|
513
|
+
|
|
514
|
+
interface PhysObj {
|
|
515
|
+
/**
|
|
516
|
+
* Returns whenever the physics object is penetrating another physics object.
|
|
517
|
+
*
|
|
518
|
+
* This is internally implemented as `PhysObj:HasGameFlag( FVPHYSICS_PENETRATING )` and thus is only updated for non-static physics objects.
|
|
519
|
+
*
|
|
520
|
+
* @realm shared
|
|
521
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:IsPenetrating
|
|
522
|
+
*/
|
|
523
|
+
IsPenetrating(self: PhysObj): boolean;
|
|
524
|
+
}
|
|
525
|
+
|
|
526
|
+
interface PhysObj {
|
|
527
|
+
/**
|
|
528
|
+
* Returns if the physics object is valid/not NULL.
|
|
529
|
+
* @realm shared
|
|
530
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:IsValid
|
|
531
|
+
*/
|
|
532
|
+
IsValid(self: PhysObj): boolean;
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
interface PhysObj {
|
|
536
|
+
/**
|
|
537
|
+
* Translates a vector in the physics object's local space into worldspace coordinates.
|
|
538
|
+
*
|
|
539
|
+
* **NOTE**: Internally transforms the vector by the [PhysObj:GetPositionMatrix](https://wiki.facepunch.com/gmod/PhysObj:GetPositionMatrix).
|
|
540
|
+
*
|
|
541
|
+
* So in GLua it approximates to:
|
|
542
|
+
* ```
|
|
543
|
+
* local matrixWorldTransform = PhysObj:GetPositionMatrix()
|
|
544
|
+
* local vecWorldspaced = Vector()
|
|
545
|
+
* vecWorldspaced:Set( vecLocal )
|
|
546
|
+
* vecWorldspaced:Mul( matrixWorldTransform )
|
|
547
|
+
*
|
|
548
|
+
* return vecWorldspaced
|
|
549
|
+
* ```
|
|
550
|
+
*
|
|
551
|
+
*
|
|
552
|
+
* @realm shared
|
|
553
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:LocalToWorld
|
|
554
|
+
*/
|
|
555
|
+
LocalToWorld(self: PhysObj, vecLocal: Vector): Vector;
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
interface PhysObj {
|
|
559
|
+
/**
|
|
560
|
+
* Rotationally transforms a vector in the physics object's local space by the [PhysObj:GetPositionMatrix](https://wiki.facepunch.com/gmod/PhysObj:GetPositionMatrix).
|
|
561
|
+
*
|
|
562
|
+
* **NOTE**: In contrast to [PhysObj:LocalToWorld](https://wiki.facepunch.com/gmod/PhysObj:LocalToWorld), this function doesn't translate the vector.
|
|
563
|
+
*
|
|
564
|
+
*
|
|
565
|
+
* @realm shared
|
|
566
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:LocalToWorldVector
|
|
567
|
+
*/
|
|
568
|
+
LocalToWorldVector(self: PhysObj, vecLocal: Vector): Vector;
|
|
569
|
+
}
|
|
570
|
+
|
|
571
|
+
interface PhysObj {
|
|
572
|
+
/**
|
|
573
|
+
* Prints debug info about the state of the physics object to the console.
|
|
574
|
+
* @realm shared
|
|
575
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:OutputDebugInfo
|
|
576
|
+
*/
|
|
577
|
+
OutputDebugInfo(self: PhysObj): void;
|
|
578
|
+
}
|
|
579
|
+
|
|
580
|
+
interface PhysObj {
|
|
581
|
+
/**
|
|
582
|
+
* Call this when the collision filter conditions change due to this object's state (e.g. changing solid type or collision group)
|
|
583
|
+
* @realm shared
|
|
584
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:RecheckCollisionFilter
|
|
585
|
+
*/
|
|
586
|
+
RecheckCollisionFilter(self: PhysObj): void;
|
|
587
|
+
}
|
|
588
|
+
|
|
589
|
+
interface PhysObj {
|
|
590
|
+
/**
|
|
591
|
+
* A convinience function for [Angle:RotateAroundAxis](https://wiki.facepunch.com/gmod/Angle:RotateAroundAxis).
|
|
592
|
+
* @realm shared
|
|
593
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:RotateAroundAxis
|
|
594
|
+
*/
|
|
595
|
+
RotateAroundAxis(self: PhysObj, dir: Vector, ang: number): Angle;
|
|
596
|
+
}
|
|
597
|
+
|
|
598
|
+
interface PhysObj {
|
|
599
|
+
/**
|
|
600
|
+
* Sets the amount of [drag](https://en.wikipedia.org/wiki/Drag_(physics)) to apply to a physics object when attempting to rotate.
|
|
601
|
+
* @realm shared
|
|
602
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetAngleDragCoefficient
|
|
603
|
+
*/
|
|
604
|
+
SetAngleDragCoefficient(self: PhysObj, coefficient: number): void;
|
|
605
|
+
}
|
|
606
|
+
|
|
607
|
+
interface PhysObj {
|
|
608
|
+
/**
|
|
609
|
+
* Sets the specified [angular velocity](https://en.wikipedia.org/wiki/Angular_velocity) on the [PhysObj](https://wiki.facepunch.com/gmod/PhysObj)
|
|
610
|
+
* @realm shared
|
|
611
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetAngleVelocity
|
|
612
|
+
*/
|
|
613
|
+
SetAngleVelocity(self: PhysObj, angularVelocity: Vector): void;
|
|
614
|
+
}
|
|
615
|
+
|
|
616
|
+
interface PhysObj {
|
|
617
|
+
/**
|
|
618
|
+
* Sets the specified instantaneous [angular velocity](https://en.wikipedia.org/wiki/Angular_velocity) on the [PhysObj](https://wiki.facepunch.com/gmod/PhysObj)
|
|
619
|
+
* @realm shared
|
|
620
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetAngleVelocityInstantaneous
|
|
621
|
+
*/
|
|
622
|
+
SetAngleVelocityInstantaneous(self: PhysObj, angularVelocity: Vector): void;
|
|
623
|
+
}
|
|
624
|
+
|
|
625
|
+
interface PhysObj {
|
|
626
|
+
/**
|
|
627
|
+
* Sets the angles of the physobject in degrees.
|
|
628
|
+
* @realm shared
|
|
629
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetAngles
|
|
630
|
+
*/
|
|
631
|
+
SetAngles(self: PhysObj, angles: Angle): void;
|
|
632
|
+
}
|
|
633
|
+
|
|
634
|
+
interface PhysObj {
|
|
635
|
+
/**
|
|
636
|
+
* Sets the buoyancy ratio of the physics object. (How well it floats in water)
|
|
637
|
+
* @realm shared
|
|
638
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetBuoyancyRatio
|
|
639
|
+
*/
|
|
640
|
+
SetBuoyancyRatio(self: PhysObj, buoyancy: number): void;
|
|
641
|
+
}
|
|
642
|
+
|
|
643
|
+
interface PhysObj {
|
|
644
|
+
/**
|
|
645
|
+
* Sets the contents flag of the [PhysObj](https://wiki.facepunch.com/gmod/PhysObj).
|
|
646
|
+
* @realm shared
|
|
647
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetContents
|
|
648
|
+
*/
|
|
649
|
+
SetContents(self: PhysObj, contents: CONTENTS): void;
|
|
650
|
+
}
|
|
651
|
+
|
|
652
|
+
interface PhysObj {
|
|
653
|
+
/**
|
|
654
|
+
* Sets the linear and angular damping of the physics object.
|
|
655
|
+
* @realm shared
|
|
656
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetDamping
|
|
657
|
+
*/
|
|
658
|
+
SetDamping(self: PhysObj, linearDamping: number, angularDamping: number): void;
|
|
659
|
+
}
|
|
660
|
+
|
|
661
|
+
interface PhysObj {
|
|
662
|
+
/**
|
|
663
|
+
* Modifies how much drag (air resistance) affects the object.
|
|
664
|
+
* @realm shared
|
|
665
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetDragCoefficient
|
|
666
|
+
*/
|
|
667
|
+
SetDragCoefficient(self: PhysObj, drag: number): void;
|
|
668
|
+
}
|
|
669
|
+
|
|
670
|
+
interface PhysObj {
|
|
671
|
+
/**
|
|
672
|
+
* Sets the angular inertia. See [PhysObj:GetInertia](https://wiki.facepunch.com/gmod/PhysObj:GetInertia).
|
|
673
|
+
*
|
|
674
|
+
* **NOTE**: This does not affect linear inertia.
|
|
675
|
+
*
|
|
676
|
+
*
|
|
677
|
+
* @realm shared
|
|
678
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetInertia
|
|
679
|
+
*/
|
|
680
|
+
SetInertia(self: PhysObj, angularInertia: Vector): void;
|
|
681
|
+
}
|
|
682
|
+
|
|
683
|
+
interface PhysObj {
|
|
684
|
+
/**
|
|
685
|
+
* Sets the mass of the physics object.
|
|
686
|
+
*
|
|
687
|
+
* **WARNING**: This resets [PhysObj:SetBuoyancyRatio](https://wiki.facepunch.com/gmod/PhysObj:SetBuoyancyRatio) (Recalculated based materials' and the physics objects' densities, latter of which is dependent on mass).
|
|
688
|
+
*
|
|
689
|
+
* If you used a custom ratio, you will have to re-set it again after `SetMass`.
|
|
690
|
+
*
|
|
691
|
+
*
|
|
692
|
+
* @realm shared
|
|
693
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetMass
|
|
694
|
+
*/
|
|
695
|
+
SetMass(self: PhysObj, mass: number): void;
|
|
696
|
+
}
|
|
697
|
+
|
|
698
|
+
interface PhysObj {
|
|
699
|
+
/**
|
|
700
|
+
* Sets the material of the physobject.
|
|
701
|
+
*
|
|
702
|
+
* **NOTE**: Impact sounds will only change if this is called on client
|
|
703
|
+
*
|
|
704
|
+
*
|
|
705
|
+
* @realm shared
|
|
706
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetMaterial
|
|
707
|
+
*/
|
|
708
|
+
SetMaterial(self: PhysObj, materialName: string): void;
|
|
709
|
+
}
|
|
710
|
+
|
|
711
|
+
interface PhysObj {
|
|
712
|
+
/**
|
|
713
|
+
* Sets the position of the physobject.
|
|
714
|
+
* @realm shared
|
|
715
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetPos
|
|
716
|
+
*/
|
|
717
|
+
SetPos(self: PhysObj, position: Vector, teleport?: boolean): void;
|
|
718
|
+
}
|
|
719
|
+
|
|
720
|
+
interface PhysObj {
|
|
721
|
+
/**
|
|
722
|
+
* Sets the velocity of the physics object for the next iteration.
|
|
723
|
+
* @realm shared
|
|
724
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetVelocity
|
|
725
|
+
*/
|
|
726
|
+
SetVelocity(self: PhysObj, velocity: Vector): void;
|
|
727
|
+
}
|
|
728
|
+
|
|
729
|
+
interface PhysObj {
|
|
730
|
+
/**
|
|
731
|
+
* Sets the velocity of the physics object.
|
|
732
|
+
* @realm shared
|
|
733
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:SetVelocityInstantaneous
|
|
734
|
+
*/
|
|
735
|
+
SetVelocityInstantaneous(self: PhysObj, velocity: Vector): void;
|
|
736
|
+
}
|
|
737
|
+
|
|
738
|
+
interface PhysObj {
|
|
739
|
+
/**
|
|
740
|
+
* Makes the physics object "sleep". The physics object will no longer be moving unless it is "woken up" by either a collision with another moving object, or by [PhysObj:Wake](https://wiki.facepunch.com/gmod/PhysObj:Wake).
|
|
741
|
+
*
|
|
742
|
+
* This is an optimization feature of the physics engine. Normally physics objects will automatically "sleep" when not moving for a short while, to save resources, but it can be used for other purposes, for example to temporarily suspend an object mid air.
|
|
743
|
+
*
|
|
744
|
+
* @realm shared
|
|
745
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:Sleep
|
|
746
|
+
*/
|
|
747
|
+
Sleep(self: PhysObj): void;
|
|
748
|
+
}
|
|
749
|
+
|
|
750
|
+
interface PhysObj {
|
|
751
|
+
/**
|
|
752
|
+
* Unlike [PhysObj:SetPos](https://wiki.facepunch.com/gmod/PhysObj:SetPos) and [PhysObj:SetAngles](https://wiki.facepunch.com/gmod/PhysObj:SetAngles), this allows the movement of a physobj while leaving physics interactions intact.
|
|
753
|
+
* This is used internally by the motion controller of the Gravity Gun , the +use pickup and the Physics Gun, and entities such as the crane.
|
|
754
|
+
*
|
|
755
|
+
* **NOTE**: This is the ideal function to move a physics shadow created with [Entity:PhysicsInitShadow](https://wiki.facepunch.com/gmod/Entity:PhysicsInitShadow) or [Entity:MakePhysicsObjectAShadow](https://wiki.facepunch.com/gmod/Entity:MakePhysicsObjectAShadow).
|
|
756
|
+
*
|
|
757
|
+
*
|
|
758
|
+
* @realm shared
|
|
759
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:UpdateShadow
|
|
760
|
+
*/
|
|
761
|
+
UpdateShadow(self: PhysObj, targetPosition: Vector, targetAngles: Angle, frameTime: number): void;
|
|
762
|
+
}
|
|
763
|
+
|
|
764
|
+
interface PhysObj {
|
|
765
|
+
/**
|
|
766
|
+
* Wakes the physics object, so that it will continue to simulate physics/gravity.
|
|
767
|
+
*
|
|
768
|
+
* See [PhysObj:Sleep](https://wiki.facepunch.com/gmod/PhysObj:Sleep) for more information.
|
|
769
|
+
*
|
|
770
|
+
* @realm shared
|
|
771
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:Wake
|
|
772
|
+
*/
|
|
773
|
+
Wake(self: PhysObj): void;
|
|
774
|
+
}
|
|
775
|
+
|
|
776
|
+
interface PhysObj {
|
|
777
|
+
/**
|
|
778
|
+
* Translates a worldspace vector into the physics object's local space.
|
|
779
|
+
* @realm shared
|
|
780
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:WorldToLocal
|
|
781
|
+
*/
|
|
782
|
+
WorldToLocal(self: PhysObj, vec: Vector): Vector;
|
|
783
|
+
}
|
|
784
|
+
|
|
785
|
+
interface PhysObj {
|
|
786
|
+
/**
|
|
787
|
+
* Rotationally transforms a worldspace vector into the physics object's local space by the inverted [PhysObj:GetPositionMatrix](https://wiki.facepunch.com/gmod/PhysObj:GetPositionMatrix).
|
|
788
|
+
*
|
|
789
|
+
* For example, in GMod this is used in thrusters, for working out linear force for local acceleration.
|
|
790
|
+
*
|
|
791
|
+
* **NOTE**: In contrast to [PhysObj:WorldToLocal](https://wiki.facepunch.com/gmod/PhysObj:WorldToLocal), this function doesn't translate the vector.
|
|
792
|
+
*
|
|
793
|
+
*
|
|
794
|
+
* @realm shared
|
|
795
|
+
* @source https://wiki.facepunch.com/gmod/PhysObj:WorldToLocalVector
|
|
796
|
+
*/
|
|
797
|
+
WorldToLocalVector(self: PhysObj, vec: Vector): Vector;
|
|
798
|
+
}
|
|
799
|
+
|