config.lua

Full View

Config = {}

Config.Framework = 'esx' -- esx or qbcore
Config.InteractionType = "ox_target" -- Options: "ox_target", "qb-target", or "3dtext"

-- Blood Donation NPC
Config.MainPed = {
    model = "s_m_m_doctor_01",  -- NPC model
    coords = vec4(309.0615, -596.3864, 43.2918, 356.0751), -- X, Y, Z, Heading
}

-- Blood donation spots (for multiple players at the same time)
Config.BloodDrawSpots = {
    vec4(363.9273, -590.3458, 43.3150, 69.8046),
    vec4(359.8742, -594.7587, 43.3150, 356.5574)
}

-- Donation duration (ms)
Config.BloodDrawTime = 30000 -- 30 sec

-- Nurse NPC model
Config.NurseModel = "s_f_y_scrubs_01"

-- Rewards (can be expanded)
Config.Rewards = {
    { item = "money", count = 20 },
    { item = "water", count = 1 },
    { item = "burger", count = 1 }
}

-- The job that is allowed to access the blood storage
Config.MedicalJob = "ambulance"

-- The item name used for blood bags in the inventory
Config.BloodBagItem = "bloodbag"

-- The coordinates of the blood storage location
Config.BloodStash = {
    coords = vector4(310.3081, -599.6184, 43.2918, 159.3052)
}

-- Menu labels
Config.MenuLabels = {
    DonateBlood = "💉 Donate Blood",
    ClaimReward = "🎁 Claim Reward",
    BloodStorage = "🩸 Blood Storage",
    WithdrawBlood = "📦 Withdraw Blood Bag",
    AmountLabel = "How many blood bags do you want to withdraw?"
}

-- Notification messages
Config.Messages = {
    AlreadyDonated = { title = "Blood draw", description = "You have already donated today!", type = "error" },
    DonationSuccess = { title = "Blood draw", description = "Donation successful! Go back for your reward.", type = "success" },
    NotDonated = { title = "Blood draw", description = "You haven't donated today!", type = "error" },
    AlreadyClaimed = { title = "Reward", description = "You have already claimed your reward today!", type = "error" },
    RewardGiven = { title = "Reward", description = "You have received your post-donation reward!", type = "success" },
    MustDonateFirst = { title = "Blood draw", description = "You must donate first!", type = "error" },
    NoSpotAvailable = { title = "Blood draw", description = "All chairs are occupied. Try again later.", type = "error" },
    BloodDraw = "Blood draw in progress...",
    NotEnoughBlood = { title = "Blood Storage", description = "Not enough blood bags in storage!", type = "error" },
    BloodTaken = { title = "Blood Storage", description = "You successfully withdrew blood bags!", type = "success" },
    NoAccess = { title = "Blood Storage", description = "You don't have access!", type = "error" },
    InvalidAmount = { title = "Blood Storage", description = "Invalid amount!", type = "error" },
    CurrentStock = { title = "Current Blood Bags" }
}

Last updated