{"hash":"0xB3B1546D23DF8DE1","ns":"OBJECT","name":"_DOOR_SYSTEM_SWING_OPEN","slug":"_DOOR_SYSTEM_SWING_OPEN","official":false,"named":true,"luaName":"DoorSystemSwingOpen","game":"rdr3","apiset":"client","returnType":"void","params":[{"name":"doorHash","type":"Hash"},{"name":"dirX","type":"float"},{"name":"dirY","type":"float"},{"name":"dirZ","type":"float"},{"name":"reverseDirection","type":"BOOL"}],"summary":"Applies an impulse to a door, causing it to swing open with animation.","descriptions":[{"source":"alloc8or","format":"text","body":"Applies an impulse to a door, causing it to swing open with animation.\n\nNotes:\n- Requires DOOR_SYSTEM_SET_DOOR_STATE(doorHash, 0) beforehand.\n- If the door is locked, the impulse is ignored.\n- dirX/dirY/dirZ are normalized internally and do not appear to control force or speed.\n- reverseDirection inverts the opening direction, useful for double doors swinging apart."},{"source":"vorp","format":"text","body":"swing door open between 2 points\nRequires DOOR_SYSTEM_SET_DOOR_STATE(hash, 0) beforehand\n- If door is locked (state=1), the impulse is ignored"}],"examples":[],"aliases":[],"enums":[],"related":[],"build":"1207","sources":["alloc8or","vorp"],"doc":2,"url":"https://natives.borderlinerp.com/natives/OBJECT/_DOOR_SYSTEM_SWING_OPEN","markdownUrl":"https://natives.borderlinerp.com/natives/OBJECT/_DOOR_SYSTEM_SWING_OPEN.md","snippets":{"lua":"DoorSystemSwingOpen(doorHash, dirX, dirY, dirZ, reverseDirection)","luaInvoke":"Citizen.InvokeNative(0xB3B1546D23DF8DE1, doorHash, dirX, dirY, dirZ, reverseDirection)","js":"DoorSystemSwingOpen(doorHash, dirX, dirY, dirZ, reverseDirection);","jsInvoke":"Citizen.invokeNative('0xB3B1546D23DF8DE1', doorHash, dirX + 0.0000001, dirY + 0.0000001, dirZ + 0.0000001, reverseDirection);","csharp":"Function.Call((Hash)0xB3B1546D23DF8DE1, doorHash, dirX, dirY, dirZ, reverseDirection);","notes":["Hash parameters: the named function also accepts a string and hashes it for you; `Citizen.InvokeNative` needs the number — pass `joaat(\"name\")` or a backtick literal like `` `name` ``.","Float parameters: Lua integers (`10`, or whole numbers decoded from NUI/JSON) are sent as ints and read as garbage. Write `10.0` or `value + 0.0`. The generated JS wrappers add `0.0000001` to non-zero floats for the same reason.","The name is a community guess and may change. If the named call is missing in your client build, use `InvokeNative` with the hash — it always works."]}}