# Make Functions

## makeBlip.lua

This module provides simple utilities for adding static or entity-based blips to the minimap.

{% hint style="info" %}
This has basic support for RedM too
{% endhint %}

### **makeBlip(data)**

This function adds a map blip at the provided coordinates and sets various display properties such as sprite, color, scale, and more.

It also handles attaching a preview image to the blip if certain resources are running and a preview is provided.

**Example:**

```lua
local blipData = {
    coords = vector3(123.4, 567.8, 90.1),
    sprite = 1,
    col = 2,
    scale = 0.8,
    disp = 4,
    category = 7,
    name = "My Blip",
    preview = "http://example.com/preview.png"
}
local blip = makeBlip(blipData)
```

***

### **makeEntityBlip(data)**

This function adds a map blip attached to the provided entity and sets various display properties such as sprite, color, scale, and more.

It also handles attaching a preview image to the blip if certain resources are running and a preview is provided.

**Example:**

```lua
local blipData = {
    entity = myEntity,
    sprite = 1,
    col = 2,
    scale = 0.8,
    disp = 4,
    category = 7,
    name = "Entity Blip",
    preview = "http://example.com/preview.png"
}
local blip = makeEntityBlip(blipData)
```

***

##

## makePed.lua

This module provides tools to create persistent or distance-based NPCs with optional animations, scenarios, and config randomization.

### **makeDistPed(data, coords, freeze, collision, scenario, anim, synced)**

Creates a ped that only spawns when nearby (performance optimization).

**Example:**

```lua
makeDistPed({model = "a_m_y_business_03" },                                 -- model data
    vector4(450.0, -980.0, 30.0, 100.0),                                    -- coords
    true,                                                                   -- freeze entity
    false,                                                                  -- collision
    'WORLD_HUMAN_STAND_IMPATIENT',                                          -- Scenario Animation
    { dict = "amb@world_human_clipboard@male@idle_a", anim = "idle_c" },    -- Anim Table
    true                                                                    -- Network Synced
)
```

***

### **makePed(data, coords, freeze, collision, scenario, anim, synced)**

Spawns a ped with more persistent behavior at the given location.

Supports animation playback and freezing.

**Example:**

```lua
makePed({model = "a_m_y_business_03" },                                 -- model data
    vector4(450.0, -980.0, 30.0, 100.0),                                    -- coords
    true,                                                                   -- freeze entity
    false,                                                                  -- collision
    'WORLD_HUMAN_STAND_IMPATIENT',                                          -- Scenario Animation
    { dict = "amb@world_human_clipboard@male@idle_a", anim = "idle_c" },    -- Anim Table
    true                                                                    -- Network Synced
)
```

***

### **GenerateRandomPedData(data)**

Returns randomized ped model/configuration based on input table.

Useful for dynamic NPC generation.

**Example:**

```lua
local pedData = GenerateRandomPedData({ model = `MP_M_Freemode_01`, custom = {} })
```

***

##

## makeProp.lua

This module allows you to spawn static or distance-loaded props in the world.

### **makeProp(data, freeze, synced)**

This function loads the model, creates the object, sets its heading, and freezes it if specified.**Example:**

```lua
local propData = {
    prop = 'prop_chair_01a',
    coords = vector4(123.4, 567.8, 90.1, 180.0)
}
local prop = makeProp(propData, true, false)
```

***

### **makeDistProp(data, freeze, synced, range)**

Same as `makeProp`, but only spawns if the player is within the specified range.

**Example:**

```lua
local propData = {
    prop = 'prop_chair_01a',
    coords = vector4(123.4, 567.8, 90.1, 180.0)
}
makeDistProp(propData, true, false)
```

***

### **destroyProp(entity)**

Removes a previously created or targeted prop from the world.

**Example:**

<pre class="language-lua"><code class="lang-lua"><strong>destroyProp(barrel)
</strong></code></pre>

***

##

## makeVeh.lua

This module provides functionality for spawning vehicles, including distance-based optimization and entity management.

### **makeVeh(model, coords)**

This function loads the vehicle model, creates the vehicle in the world at the given coordinates, sets initial properties, and returns the vehicle handle.

**Example:**

```lua
local vehicle = makeVeh("adder", vector3(250.0, -1000.0, 30.0))
```

***

### **makeDistVehicle(data, radius, onEnter, onExit)**

Creates a vehicle that spawns when the player enters a designated polyzone area.

This is used for `jim-parking` to create a static vehicle that can't move

**Example:**

```lua
makeDistVehicle({
    model = "blista",
    coords = vector3(400.0, -800.0, 30.0),
    heading = 180.0
}, 50.0)
```

***

### **removeDistVehicleZone(zoneId)**

Removes a previously created distance-based vehicle zone.

**Example:**

```lua
removeDistVehicleZone("garage_zone_1")
```

***

### **deleteVehicle(vehicle)**

Deletes a specified vehicle entity.

**Example:**

```lua
deleteVehicle(vehicle)
```

***


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://jixelpatterns.gitbook.io/docs/dependency/jim_bridge/make-functions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
