Files
jim_bridge/documentation/main_functions/makefunctions.md
oosayeroo 451e4cbbdb better documentation layout
- seperated the 2000+ lines in ReadMe.md into seperate files.
 - useful if things expand
 - better readability for users
 - more organised layout
2025-05-16 14:28:41 +01:00

5.4 KiB

makeBlip.lua

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

This has basic support for RedM too

  • 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:
      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:
      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:
      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:
      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:
      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:
      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:
      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:
      destroyProp(barrel)
      

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:
      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:
      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:
      removeDistVehicleZone("garage_zone_1")
      
  • deleteVehicle(vehicle)

    • Deletes a specified vehicle entity.
    • Example:
      deleteVehicle(vehicle)