# INTERIOR::GET_INTERIOR_LOCATION_AND_NAMEHASH

- **Hash:** `0x8451E87D3C2B0286`
- **Namespace:** INTERIOR
- **Runtime name (Lua/JS):** `GetInteriorLocationAndNamehash`
- **Side:** client (game native)
- **Name status:** official
- **Documentation:** named only
- **Since game build:** 1207
- **URL:** https://natives.borderlinerp.com/natives/INTERIOR/GET_INTERIOR_LOCATION_AND_NAMEHASH

## Signature

```c
void GET_INTERIOR_LOCATION_AND_NAMEHASH(Interior interior, Vector3* position, Hash* nameHash);
```

## Parameters

- `interior` (`Interior`)
- `position` (`Vector3*`)
- `nameHash` (`Hash*`)

## Returns

`void`

## Usage

### Lua

```lua
local position, nameHash = GetInteriorLocationAndNamehash(interior)

-- always available, by hash
local position, nameHash = Citizen.InvokeNative(0x8451E87D3C2B0286, interior, Citizen.PointerValueVector(), Citizen.PointerValueInt())
```

### JavaScript

```js
const [position, nameHash] = GetInteriorLocationAndNamehash(interior);

// by hash
const [position, nameHash] = Citizen.invokeNative('0x8451E87D3C2B0286', interior, Citizen.pointerValueVector(), Citizen.pointerValueInt());
```

### C#

```csharp
var position = new OutputArgument();
var nameHash = new OutputArgument();
Function.Call((Hash)0x8451E87D3C2B0286, interior, position, nameHash);
// position.GetResult<Vector3>()
// nameHash.GetResult<int>()
```

- Pointer (out) arguments are not passed in Lua/JS: their values are returned after the result, in order.

*Sources: alloc8or RDR3 NativeDB.*
