Main/resources/[jobs]/[crime]/nordi_containerheist/config.lua

200 lines
6.4 KiB
Lua
Raw Normal View History

2025-07-20 03:56:42 +02:00
Config = {}
2025-07-20 02:41:44 +02:00
-- General Settings
2025-07-20 03:54:06 +02:00
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
2025-07-20 03:18:58 +02:00
Config.PoliceJobs = {
"police", -- Regular police
"marshal", -- Marshal service
2025-07-20 03:54:06 +02:00
"sheriff" -- Sheriff department
2025-07-20 03:18:58 +02:00
}
2025-07-20 02:41:44 +02:00
-- Required Items
Config.RequiredItems = {
flex = {
2025-07-20 02:53:21 +02:00
name = "anglegrinder", -- Item name in your inventory
label = "Flex", -- Display name
2025-07-20 02:41:44 +02:00
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,
2025-07-20 03:54:06 +02:00
label = "Container Robbery",
2025-07-20 02:41:44 +02:00
duration = 180, -- seconds
flash = true,
}
2025-07-20 03:54:06 +02:00
-- Container Types (for rewards and animations)
Config.ContainerTypes = {
-- Regular shipping containers
shipping = {
2025-07-20 03:18:58 +02:00
label = "Shipping Container",
animation = {
dict = "amb@world_human_welding@male@base",
name = "base",
flag = 1,
2025-07-20 03:54:06 +02:00
duration = 30000, -- milliseconds
2025-07-20 03:18:58 +02:00
},
rewards = {
2025-07-20 03:54:06 +02:00
-- Each reward has a chance (total should be <= 100)
2025-07-20 03:18:58 +02:00
{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},
2025-07-20 03:54:06 +02:00
-- Cash reward
2025-07-20 03:18:58 +02:00
{item = "cash", label = "Cash", min = 1000, max = 5000, chance = 40},
},
policeAlert = true,
},
2025-07-20 03:54:06 +02:00
-- Weapons container
weapons = {
label = "Weapons Container",
2025-07-20 03:18:58 +02:00
animation = {
dict = "amb@world_human_welding@male@base",
name = "base",
flag = 1,
duration = 30000,
},
rewards = {
2025-07-20 03:54:06 +02:00
{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},
2025-07-20 03:18:58 +02:00
},
policeAlert = true,
},
2025-07-20 03:54:06 +02:00
-- Cargo trailer
cargo = {
2025-07-20 03:18:58 +02:00
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,
},
2025-07-20 03:54:06 +02:00
-- Food trailer
food = {
label = "Food Trailer",
2025-07-20 03:18:58 +02:00
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,
},
2025-07-20 03:54:06 +02:00
}
-- Container Points (specific locations for container robberies)
Config.ContainerPoints = {
-- Port area shipping containers
2025-07-20 03:18:58 +02:00
{
2025-07-20 03:54:06 +02:00
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"
2025-07-20 03:18:58 +02:00
},
{
2025-07-20 03:54:06 +02:00
id = "port_container_2",
type = "shipping",
coords = vector3(990.23, -3050.34, 5.90),
heading = 90.0,
label = "Break into Container"
2025-07-20 03:18:58 +02:00
},
2025-07-20 03:54:06 +02:00
-- Weapons containers
2025-07-20 03:18:58 +02:00
{
2025-07-20 03:54:06 +02:00
id = "weapons_container_1",
type = "weapons",
coords = vector3(905.45, -3200.67, 5.90),
heading = 0.0,
label = "Break into Weapons Container"
2025-07-20 03:18:58 +02:00
},
{
2025-07-20 03:54:06 +02:00
id = "weapons_container_2",
type = "weapons",
coords = vector3(910.34, -3195.23, 5.90),
heading = 270.0,
label = "Break into Weapons Container"
2025-07-20 03:18:58 +02:00
},
2025-07-20 03:54:06 +02:00
-- Cargo trailers
2025-07-20 03:18:58 +02:00
{
2025-07-20 03:54:06 +02:00
id = "cargo_trailer_1",
type = "cargo",
coords = vector3(825.34, -3125.45, 5.90),
heading = 270.0,
label = "Break into Cargo Trailer"
2025-07-20 03:18:58 +02:00
},
{
2025-07-20 03:54:06 +02:00
id = "cargo_trailer_2",
type = "cargo",
coords = vector3(830.56, -3130.78, 5.90),
2025-07-20 03:18:58 +02:00
heading = 180.0,
2025-07-20 03:54:06 +02:00
label = "Break into Cargo Trailer"
2025-07-20 03:18:58 +02:00
},
2025-07-20 03:54:06 +02:00
-- Food trailers
2025-07-20 03:18:58 +02:00
{
2025-07-20 03:54:06 +02:00
id = "food_trailer_1",
type = "food",
coords = vector3(765.23, -3165.34, 5.90),
2025-07-20 03:18:58 +02:00
heading = 180.0,
2025-07-20 03:54:06 +02:00
label = "Break into Food Trailer"
2025-07-20 02:41:44 +02:00
},
{
2025-07-20 03:54:06 +02:00
id = "food_trailer_2",
type = "food",
coords = vector3(770.45, -3170.56, 5.90),
heading = 90.0,
label = "Break into Food Trailer"
2025-07-20 02:41:44 +02:00
},
2025-07-20 03:54:06 +02:00
-- Add more points as needed
2025-07-20 02:41:44 +02:00
}