Lusty94
Tebex StoreSupport DiscordGitHubCFX Profile
  • 👋 Lusty94 Scripts
  • 💵Store Discounts
  • 📥 Script Installation
  • 🤝Supported Scripts
  • 📜Paid Resouces
    • 🍻Bars
      • 🔧Changelogs
      • 💼 Jobs
      • 📦Stashes
      • 👁️Blips
      • 🧩Props
      • 👆Interaction Locations
      • 📸CCTV
      • 🍳Recipes
      • 📬Supplies
      • 🥦Ingredients
    • 🍁Weed Shops
      • 🔧Changelogs
      • 💼 Jobs
      • 📦Stashes
      • 👁️Blips
      • 🧩Props
      • 👆Interaction Locations
      • 🍃Picking
      • 📸CCTV
      • 🍳Recipes
      • 📬Supplies
      • 🥦Ingredients
      • 🚬Consumables
    • 💲Money Wash
    • 💰Pawn Shop
      • 🔧Changelogs
      • 🛒Pawnshop Locations
    • 📲Drug Sales
      • 🔧Changelogs
      • 📲Selling
      • 💻Default Configuration
    • 🚗Chop Shop
      • 🔧Changelogs
      • 📅SQL
      • 🗣️Commands
      • 📋Reputation
      • 💰Selling
      • 🚗Chop Shops
      • 💻Default Configuration
    • 🚘Vehicle Shop
      • 🔧Changelogs
      • 📅SQL
      • 🗣️Commands
      • 📥Database
      • 🚘Vehicle Shops
      • 💻Default Configuration
    • 🚗Rental
    • 🚙Towing
    • 🍲Restaurants
    • 💊Drugs
    • 🍁Weed
  • 📜Free Resources
    • 🛒Shops
      • 🔧Changelogs
      • 🛒Adding Shops
      • 🪛Configuration
    • 🖥️Boss Menu
      • 🔧Changelogs
      • 💻Adding Job Locations
    • ✅Green Zones
      • 🔧Changelogs
      • 📌Adding Zones
Powered by GitBook
  1. Paid Resouces
  2. Weed Shops

Interaction Locations

Adding More INTERACTION LOCATIONS

  • Adding more interaction locations is very simple via the config.lua file

  • Some target events require args being passed usually the ShopName and the StorageType (for stash targets only)

  • To add another target zone simply add your ShopName as they key and then customize the values to suit your server needs in Config.InteractionLocations

  • To disable a specific boxzone just set Enabled to false


Config.InteractionLocations = {
    ['Example Shop'] = { --Example Bar
        { 
            Enabled = true,
            Name = "example_crafting",
            Location = vector3(-1400.09, -598.18, 30.5),
            Size = vec3(0.8,1.5,0.5),
            Width = 0.8,
            Height = 0.4,
            Heading = 30.00,
            MinZ = 30.25,
            MaxZ = 30.75,
            Distance = 2.0,
            Icon = 'fa-solid fa-glass-martini',
            Label = 'Open Crafting Menu',
            Job = Config.CoreSettings.Jobs['Example Shop'].name, 
            Event = 'lusty94_weedshops:client:OpenCrafting',
            BarName = 'Example Bar', --[[ ✅ Make Sure To Pass shopName ]]
        },
        {
            Enabled = true,
            Name = "example_drinksFridge",
            Location = vector3(-1404.13, -598.71, 29.85),
            Size = vec3(1.2,0.8,0.75),
            Width = 0.8,
            Height = 1.2,
            Heading = 32.86,
            MinZ = 29.50,
            MaxZ = 30.5,
            Distance = 2.0,
            Icon = 'fa-solid fa-briefcase',
            Label = 'Open Storage Fridge',
            Job = Config.CoreSettings.Jobs['Example Shop'].name,
            Event = 'lusty94_weedshops:client:OpenStorage',
            args = { barName = "Example Bar", storageType = "StorageFridge" }, --[[ ✅ Make Sure To Pass shopName and the storageType you define in Config.CoreSettings.Stashes ]]
        },                
        { --this event doesnt need any args passing
            Enabled = true,
            Name = "example_bossMenu",
            Location = vector3(-1370.25, -625.7, 30.12),
            Size = vec3(0.8,0.8,0.5),
            Width = 0.8,
            Height = 0.8,
            Heading = 30.68,
            MinZ = 30.25,
            MaxZ = 30.75,
            Distance = 2.0,
            Icon = 'fa-solid fa-briefcase',
            Label = 'Open Management Menu',
            Job = Config.CoreSettings.Jobs['Example Shop'].name,
            Event = Config.CoreSettings.EventNames.BossMenu, -- this doesnt need any args passing as it directly triggers the event you set
        },
        { 
            Enabled = true,
            Name = "example_bossStash",     
            Location = vector3(-1366.22, -624.67, 30.5),    
            Size = vec3(1.6,0.8,1),    
            Width = 0.8, 
            Height = 0.8, 
            Heading = 302.35,  
            MinZ = 30.25,   
            MaxZ = 30.75,  
            Distance = 2.0,   
            Icon = 'fa-solid fa-briefcase',         
            Label = 'Open Boss Storage',      
            Job = Config.CoreSettings.Jobs['Example Shop'].name,
            Event = 'lusty94_weedshops:client:OpenStorage',
            args = { barName = "Example Bar", storageType = "BossStash" },  --[[ ✅ Make Sure To Pass shopName For storage system  THIS MUST MATCH THE KEY AND THE STORAGE TYPE YOU DEFINE IN CONFIG.CORESETTINGS.STASHES!]]
        },
    },
}

Some Events Require Arguments Passed With Them

  • The target events below require arguments passed through the target to the event for various features and security measures.

  • It is vital you understand what zone events requires arguments passed. Without these arguments the features may not work as intended leading to script issues or errors


Crafting

  • Requires ShopName being passed

{ 
    Enabled = true,
    Name = "example_crafting",
    Location = vector3(-1400.09, -598.18, 30.5),
    Size = vec3(0.8,1.5,0.5),
    Width = 0.8,
    Height = 0.4,
    Heading = 30.00,
    MinZ = 30.25,
    MaxZ = 30.75,
    Distance = 2.0,
    Icon = 'fa-solid fa-glass-martini',
    Label = 'Open Crafting Menu',
    Job = Config.CoreSettings.Jobs['Example Shop'].name, 
    Event = 'lusty94_weedshops:client:OpenCrafting',
    BarName = 'Example Shop',
     --[[ ✅ Make Sure To Pass ShopName ]]
},

Storages

  • Requires args shopName and storageType being passed

  • This applies to both storages and boss storages

{
    Enabled = true,
    Name = "example_storageshelf",
    Location = vector3(381.89, -819.82, 29.25),
    Size = vec3(2.0,1.0,2),
    Width = 1.0, Height = 2.0, Heading = 271,
    MinZ = 28.5, MaxZ = 30.5, Distance = 2.0,
    Icon = 'fa-solid fa-hand-point-up', Label = 'Open Storage Shelf',
    Job = Config.CoreSettings.Jobs['Example Shop'].name,
    Event = 'lusty94_weedshops:client:OpenStorage',
    args = { shopName = "Example Shop", storageType = "StorageShelf" }, --[[ ✅ Make Sure To Pass shopName For storage and the storageType you define in Config.CoreSettings.Stashes]]
},  

Supplies

  • Requires args shopName being passed

{
    Enabled = true,
    Name = "example_supplies",
    Location = vector3(383.46, -827.29, 29.29),
    Size = vec3(2.5,0.5,2),
    Width = 0.5, Height = 2.5, Heading = 270,
    MinZ = 28.5, MaxZ = 30.5, Distance = 2.0,
    Icon = 'fa-solid fa-hand-point-up', Label = 'Get Supplies',
    Job = Config.CoreSettings.Jobs['Example Shop'].name,
    Event = 'lusty94_weedshops:client:GetSupplies',
    args = { shopName = 'Example Shop' }, --[[ ✅ Make Sure To Pass shopName For supplies menu ]]
},  

Payment

  • Requires args shopName passed

{ 
    Enabled = true,
    Name = "example_payment",
    Location = vector3(380.31, -827.39, 29.3),
    Size = vec3(0.4,0.4,0.5),
    Width = 0.4, Height = 0.4, Heading = 0.0,
    MinZ = 29.3, MaxZ = 29.7, Distance = 2.0,
    Icon = 'fa-solid fa-hand-point-up', Label = 'Charge Customer',
    Job = Config.CoreSettings.Jobs['Example Shop'].name,
    Event = 'lusty94_weedshops:client:BillPlayer',
    args = { shopName = "Example Shop" },  --[[ ✅ Make Sure To Pass shopName For billing menu ]]
},

CCTV

  • Requires args shopName passed - this particular example showcases a prop using the cctv menu but you can set this to a static target zone if you wish, just make sure to pass the correct shopName

{ 
    Enabled = true,
    Model = 'prop_cctv_cont_02',
    Coords = vector4(376.87, -824.59, 30.15, 180.0),
    Icon = 'fa-solid fa-box',
    Label = 'View CCTV',
    Job = Config.CoreSettings.Jobs['Example Shop'].name, 
    Distance = 3.0,
    Event = 'lusty94_weedshops:client:OpenCCTVMenu',
    args = { shopName = "Example Shop" }, --[[ ✅ Make Sure To Pass shopName For CCTV MENU]]
},

Last updated 2 months ago

The same logic above with arguments being passed also applies to some props in

storageType is the storage type you define in

Config.Props
Config.CoreSettings.Stashes
📜
🍁
👆
Page cover image