Main/resources/[jobs]/[crime]/nordi_containerheist/config.lua
2025-07-20 03:56:42 +02:00

199 lines
6.4 KiB
Lua

Config = {}
-- General Settings
Config.Debug = false -- Set to true for debug prints
Config.CooldownTime = 30 -- Minutes between heists (per player)
Config.GlobalCooldown = 15 -- Minutes between heists (server-wide)
Config.PoliceRequired = 2 -- Minimum police required
Config.PoliceJobs = {
"police", -- Regular police
"marshal", -- Marshal service
"sheriff" -- Sheriff department
}
-- Required Items
Config.RequiredItems = {
flex = {
name = "anglegrinder", -- Item name in your inventory
label = "Flex", -- Display name
amount = 1, -- How many required
remove = false, -- Whether to remove the item after use
durability = false, -- Whether the item has durability
durabilityDecrease = 20, -- How much durability to decrease per use (%)
},
-- You can add more required items here
}
-- Notification Settings
Config.Notifications = {
title = "Container Heist",
policeTitle = "DISPATCH ALERT",
success = "You successfully broke into the container!",
failed = "You failed to break into the container!",
noTools = "You don't have the required tools!",
cooldown = "You need to wait before attempting another heist!",
globalCooldown = "This type of heist is currently on cooldown!",
notEnoughPolice = "Not enough police in the city!",
policeMessage = "Container robbery in progress at %s",
alreadyRobbed = "This container has already been robbed recently!",
}
-- Blip Settings
Config.Blip = {
sprite = 67,
color = 1,
scale = 0.8,
label = "Container Robbery",
duration = 180, -- seconds
flash = true,
}
-- Container Types (for rewards and animations)
Config.ContainerTypes = {
-- Regular shipping containers
shipping = {
label = "Shipping Container",
animation = {
dict = "amb@world_human_welding@male@base",
name = "base",
flag = 1,
duration = 30000, -- milliseconds
},
rewards = {
-- Each reward has a chance (total should be <= 100)
{item = "phone", label = "Phone", min = 1, max = 3, chance = 30},
{item = "rolex", label = "Rolex Watch", min = 1, max = 2, chance = 20},
{item = "goldchain", label = "Gold Chain", min = 1, max = 3, chance = 25},
{item = "diamond", label = "Diamond", min = 1, max = 1, chance = 5},
{item = "laptop", label = "Laptop", min = 1, max = 1, chance = 15},
-- Cash reward
{item = "cash", label = "Cash", min = 1000, max = 5000, chance = 40},
},
policeAlert = true,
},
-- Weapons container
weapons = {
label = "Weapons Container",
animation = {
dict = "amb@world_human_welding@male@base",
name = "base",
flag = 1,
duration = 30000,
},
rewards = {
{item = "weapon_pistol", label = "Pistol", min = 1, max = 1, chance = 10},
{item = "pistol_ammo", label = "Pistol Ammo", min = 10, max = 30, chance = 25},
{item = "armor", label = "Body Armor", min = 1, max = 2, chance = 20},
{item = "weapon_knife", label = "Knife", min = 1, max = 1, chance = 30},
{item = "cash", label = "Cash", min = 2000, max = 7000, chance = 35},
},
policeAlert = true,
},
-- Cargo trailer
cargo = {
label = "Cargo Trailer",
animation = {
dict = "amb@world_human_welding@male@base",
name = "base",
flag = 1,
duration = 45000,
},
rewards = {
{item = "electronics", label = "Electronics", min = 3, max = 8, chance = 40},
{item = "plastic", label = "Plastic", min = 10, max = 20, chance = 60},
{item = "aluminum", label = "Aluminum", min = 10, max = 20, chance = 50},
{item = "copper", label = "Copper", min = 5, max = 15, chance = 30},
{item = "cash", label = "Cash", min = 3000, max = 10000, chance = 25},
},
policeAlert = true,
},
-- Food trailer
food = {
label = "Food Trailer",
animation = {
dict = "amb@world_human_welding@male@base",
name = "base",
flag = 1,
duration = 40000,
},
rewards = {
{item = "food", label = "Food", min = 5, max = 15, chance = 70},
{item = "water", label = "Water", min = 5, max = 15, chance = 70},
{item = "firstaid", label = "First Aid Kit", min = 1, max = 3, chance = 30},
{item = "cash", label = "Cash", min = 500, max = 3000, chance = 20},
},
policeAlert = false,
},
}
-- Container Points (specific locations for container robberies)
Config.ContainerPoints = {
-- Port area shipping containers
{
id = "port_container_1",
type = "shipping", -- References the container type above for rewards
coords = vector3(895.7916, -2968.3140, 5.9008),
heading = 269.5337,
label = "Break into Container"
},
{
id = "port_container_2",
type = "shipping",
coords = vector3(990.23, -3050.34, 5.90),
heading = 90.0,
label = "Break into Container"
},
-- Weapons containers
{
id = "weapons_container_1",
type = "weapons",
coords = vector3(905.45, -3200.67, 5.90),
heading = 0.0,
label = "Break into Weapons Container"
},
{
id = "weapons_container_2",
type = "weapons",
coords = vector3(910.34, -3195.23, 5.90),
heading = 270.0,
label = "Break into Weapons Container"
},
-- Cargo trailers
{
id = "cargo_trailer_1",
type = "cargo",
coords = vector3(825.34, -3125.45, 5.90),
heading = 270.0,
label = "Break into Cargo Trailer"
},
{
id = "cargo_trailer_2",
type = "cargo",
coords = vector3(830.56, -3130.78, 5.90),
heading = 180.0,
label = "Break into Cargo Trailer"
},
-- Food trailers
{
id = "food_trailer_1",
type = "food",
coords = vector3(765.23, -3165.34, 5.90),
heading = 180.0,
label = "Break into Food Trailer"
},
{
id = "food_trailer_2",
type = "food",
coords = vector3(770.45, -3170.56, 5.90),
heading = 90.0,
label = "Break into Food Trailer"
},
-- Add more points as needed
}