⚙️Configuration
Here's a preview of all the config files of the script
config.lua
Config = {}
Config.framework = "ESX" -- Choose Framework -> "ESX" / "QBCORE" / "NDCORE".
Config.notificationEvent = "OTHER" -- Choose Notification method -> "ESX" / "QBCORE" / "OTHER".
Config.inventory = "OTHER" -- Choose inventory method -> "ox_inventory" / "OTHER". Other represents the default of the framework.
if Config.framework == 'ESX' then
Config.ESX = exports["es_extended"]:getSharedObject() -- Change this to your own ESX object.
Config.esxmenuAlign = 'right' -- Alignment of the menu to select a track.
elseif Config.framework == 'QBCORE' then
Config.QBCORE = exports["qb-core"]:GetCoreObject() -- Change this to your own QBCore object.
Config.qbMenu = 'qb-menu' -- QBCore menu event
Config.qbInput = 'qb-input' -- QBCore input event
elseif Config.framework == 'NDCORE' then
Config.NDCORE = exports["ND_Core"]:GetCoreObject() -- Change this to your own NDCore object.
Config.ndcoremenuAlign = 'bottom-right' -- Alignment of the menu to select a track.
end
Config.language = "EN" -- Choose Language -> "EN" / "NL".
Config.countdown = 10 -- Countdown until the race starts from when players are loaded.
Config.minLaps = 1 -- Minimum number of laps a user can select.
Config.maxLaps = 10 -- Maximum number of laps a user can select.
Config.tireWearMultiplier = 2.0 -- Set the tire wear multiplier here. The higher, the faster the tires wear.
Config.tireChangeKey = 172 -- Key to change the next tire during the race. Default: ARROW_UP.
Config.tireHealthDrift = 50 -- As soon as the tires are worn out more than this percentage, the car starts to drift.
Config.menuKey = 38 -- Key to open the menu, default: E.
Config.enableRespawn = true -- Enable the respawnbutton.
Config.respawnKey = 23 -- Key to respawn the menu, default: F.
Config.respawnTime = 5 -- Time in seconds to hold the respawn button to respawn.
Config.maxTabs = 3 -- Maximum number of tabs in the leaderboard before the tracks are put in the dropdown menu.
Config.enableTimeToBeat = true -- Enable or disable the "time to beat" overlay
Config.ttbX = 0.440 -- Time to beat overlay, horizontal offset
Config.ttbY = 0.025 -- Time to beat overlay, vertical offset
Config.driverStatsX = 0.87 -- Driver statistics overlay, horizontal offset
Config.driverStatsY = 0.65 -- Driver statistics overlay, vertical offset
Config.enableTireDegradation = true -- Enable or disable the tire degradation system
Config.tireBoxX = 0.173 -- Tires overview field horizontal offset
Config.tireBoxY = 0.800 -- Tires overview field vertical offset
Config.enableTestHud = false -- Enable or disable the test hud. With /testhud you get to see that HUD for 10 seconds, this is useful if you change the box position. Note: anyone can use this command, so turn it off when you're done!
-- Check-in place, this is the place where a track can be chosen and a party can be created.
Config.checkIn = {
vec = vector3(-245.55, -2008.29, 30.15),
heading = 258.62,
sprite = 266,
color = 8,
name = 'racing',
marker = {
type = 5,
sizeX = 1.0,
sizeY = 1.0,
sizeZ = 1.0,
drawDistance = 100.0,
color = {r = 0, g = 255, b = 255, a = 100}
}
}
-- Grouping point is the place where everyone needs to be to start the match.
Config.groupingPoint = {
vec = vector3(-272.88, -2032.28, 30.15),
heading = 119.08,
sprite = 171,
color = 2,
name = 'Grouping point',
marker = {
type = 1,
sizeX = 15.0,
sizeY = 15.0,
sizeZ = 1.0,
drawDistance = 100.0,
color = {r = 0, g = 255, b = 0, a = 100}
}
}
-- You place checkpoints in the race. Change the color, size and height here.
Config.checkPoint = {
type = 1,
distance = 8.0,
radius = 5.0,
height = 10.0,
color = {r = 255, g = 0, b = 0, a = 100}
}
-- You place pitstops in the race. Change the color, size and height here.
Config.pitStop = {
type = 1,
distance = 8.0,
radius = 5.0,
height = 10.0,
color = {r = 255, g = 0, b = 255, a = 100}
}
-- Finish point is the last point in the race, make sure it is level with the finish line and does not match your last waypoint. Change the color, size and height here.
Config.finishPoint = {
type = 4,
distance = 6.0,
radius = 5.0,
height = 10.0,
color = {r = 255, g = 0, b = 0, a = 100}
}
-- Rewards that take place after the end of the race. You can add positions and add random items* or money. Weapons are not possible.
-- *) If using NDCore, only money is possible.
Config.enableRewards = true -- Enable or disable the rewards
Config.minPlayersReward = 1 -- Minimum players to give rewards
Config.rewards = {
["1"] = { -- Position number
{item = 'bank', type = 'account', label = 'Bank', min = 100, max = 500},
{item = 'phone', type = 'item', label = 'Telefoon', min = 1, max = 1},
-- {item = 'black_money', type = 'account', label = 'Black Money', min = 100, max = 500},
-- {item = 'bread', type = 'item', label = 'Bread', min = 1, max = 5},
-- {item = 'water', type = 'item', label = 'Water', min = 2, max = 15},
},
["2"] = { -- Position number
{item = 'bank', type = 'account', min = 100, max = 500},
-- {item = 'black_money', type = 'account', label = 'Bank', min = 100, max = 500},
-- {item = 'water', type = 'item', label = 'Water', min = 2, max = 15},
},
}
-- Add all maps like the examples given. Each race must have the following variables:
-- name -> This name will be the display name of the folder.
-- vehicleName -> These are the vehicles that can be spawned. More info below.
-- spawns -> These are the starting positions of the vehicles. Put them in order, i.e. the third line is the 3rd starting position.
-- checkPoints -> These are the waypoints in a race. These are also in order. Make sure that 1 round is fully equipped with checkpoints, these waypoints are restarted every round.
-- -> -> -> -> -> -> The pitSkip value is used for checkpoints passed along the pit lane. Once you have been through the pit lane, he will skip these checkpoints.
-- finish -> This is the position of the finish flag, it comes after the last waypoint in the last lap.
-- playerMinLimit -> This is the minimum number of players required to start this track. The maximum is the number of spawns created.
-- maxLapTime -> This is the maximum time that can be needed for a lap. Example: if 10 laps are set and this parameter is set to 5 minutes, then a maximum of 50 minutes can be completed in the race.
-- defaultTire -> This is the default tire that players start on. This is the number corresponding to the tires in the table.
-- tires -> Add the tires that can be used in the race here. More info below.
-- vehicleNames:
-- spawnName -> This is the model name of the vehicle that will be spawned.
-- livery -> Allows the livery to be set for this vehicle.
-- command -> This command selects this vehicle.
-- vehicleLabel -> This is the display name of the vehicle.
-- tire config:
-- box -> This is the width of the black box on the screen, as the name in "label" gets longer it is also desirable to make the background box wider.
-- label -> This is the name of the tire, it will be displayed after "NEXT TIRE: "
-- weatherTire -> Once the tire is a wet weather tire set it to true. This ensures that the tire wears twice as fast when it is dry. The dry weather tires just wear out twice as fast when it rains.
-- softness -> This value, together with the traction, causes the tires to wear. The higher these numbers are, the faster the tires wear. Experiment with these values.
-- traction -> This value, together with the softness, causes the tires to wear. The higher these numbers are, the faster the tires wear. Experiment with these values.
-- speed -> This is the speed in the pit lane. It is shown in a percentage, so for example with the number 50 the car can reach half the maximum speed during the pit lane.
-- To change the tire image in the scoreboard, add the photo in the ui/img/tires folder. Make sure the image is PNG and has the same number as used in the tires table.
Config.maps = {
{
name = 'Huligan',
vehicleNames = { -- NB; these vehicles are just an example. The spawnName for a kart is veto2.
{spawnName = 'windsor', livery = 1, command = 'monogram', vehicleLabel = 'Sessanta Nove Monogram'},
{spawnName = 'windsor', livery = 2, command = 'multicolor', vehicleLabel = 'Sessanta Nove Multi-color'},
{spawnName = 'windsor', livery = 3, command = 'geometric', vehicleLabel = 'Sessanta Nove Geometric'},
{spawnName = 'windsor', livery = 4, command = 'perseus', vehicleLabel = 'Perseus Wings Monogram'},
},
spawns = {
{vec = vector3(3255.70, 3246.93, 2596.41), heading = 180.06},
{vec = vector3(3252.24, 3246.45, 2596.43), heading = 177.17},
{vec = vector3(3256.20, 3251.90, 2596.42), heading = 179.04},
{vec = vector3(3252.52, 3251.61, 2596.44), heading = 179.37},
{vec = vector3(3252.22, 3254.78, 2596.44), heading = 176.23},
{vec = vector3(3255.48, 3254.65, 2596.43), heading = 175.98},
{vec = vector3(3255.67, 3258.50, 2596.43), heading = 176.71},
{vec = vector3(3252.14, 3258.93, 2596.44), heading = 174.44},
{vec = vector3(3255.49, 3261.55, 2596.44), heading = 182.11},
{vec = vector3(3251.65, 3261.30, 2596.44), heading = 180.15},
{vec = vector3(3251.26, 3264.40, 2596.44), heading = 179.43},
{vec = vector3(3255.07, 3264.63, 2596.44), heading = 179.50},
},
checkPoints = {
{vec = vector3(3240.48, 3208.49, 2596.42), pitSkip = false},
{vec = vector3(3212.11, 3193.89, 2596.40), pitSkip = false},
{vec = vector3(3220.19, 3158.18, 2597.28), pitSkip = false},
{vec = vector3(3242.54, 3138.55, 2596.99), pitSkip = false},
{vec = vector3(3251.39, 3115.39, 2596.97), pitSkip = false},
{vec = vector3(3263.91, 3089.68, 2596.46), pitSkip = false},
{vec = vector3(3241.72, 3079.42, 2596.82), pitSkip = false},
{vec = vector3(3206.49, 3108.01, 2595.77), pitSkip = false},
{vec = vector3(3178.75, 3138.08, 2594.87), pitSkip = false},
{vec = vector3(3156.75, 3165.95, 2594.49), pitSkip = false},
{vec = vector3(3182.89, 3198.25, 2595.07), pitSkip = false},
{vec = vector3(3183.32, 3227.01, 2596.45), pitSkip = false},
{vec = vector3(3209.98, 3258.94, 2596.46), pitSkip = false},
{vec = vector3(3218.92, 3304.22, 2596.42), pitSkip = false},
{vec = vector3(3244.81, 3329.02, 2596.37), pitSkip = true},
{vec = vector3(3252.26, 3285.18, 2596.43), pitSkip = true},
{vec = vector3(3253.99, 3243.44, 2596.42), pitSkip = true},
},
pitStop = {
{vec = vector3(3261.12, 3336.4, 2596.45)}, -- entry
{vec = vector3(3270.21, 3234.08, 2595.85)} -- exit
},
finish = vector3(3253.99, 3243.44, 2596.42),
playerMinLimit = 1,
maxLaptime = 120,
defaultTire = 2,
tires = {
[1] = {box = 0.0235, label = "~r~SOFT", weatherTire = false, softness = 5.5, traction = 3.75, speed = 60},
[2] = {box = 0.038, label = "~y~MEDIUM", weatherTire = false, softness = 3.0, traction = 2.5, speed = 35},
[3] = {box = 0.0255, label = "~w~HARD", weatherTire = false, softness = 2.0, traction = 1.5, speed = 20},
[4] = {box = 0.026, label = "~g~INTER", weatherTire = true, softness = 5.5, traction = 3.75, speed = 35},
[5] = {box = 0.0255, label = "~b~WETS", weatherTire = true, softness = 3.0, traction = 2.5, speed = 20},
}
},
{
name = 'Spa-Francorchamps',
vehicleNames = {
{spawnName = 'openwheel2', livery = 1, command = 'formula', vehicleLabel = 'Formula 1'},
{spawnName = 'veto2', livery = 1, command = 'kart', vehicleLabel = 'Kart'},
},
spawns = {
{vec = vector3(4221.73, 8013.57, 94.59), heading = 60.97},
{vec = vector3(4233.00, 8015.83, 94.59), heading = 60.97},
{vec = vector3(4236.79, 8005.25, 94.59), heading = 60.97},
{vec = vector3(4248.06, 8007.51, 94.59), heading = 60.97},
{vec = vector3(4251.85, 7996.93, 94.59), heading = 60.97},
{vec = vector3(4263.12, 7999.19, 94.59), heading = 60.97},
{vec = vector3(4266.91, 7988.61, 94.59), heading = 60.97},
{vec = vector3(4278.18, 7990.87, 94.59), heading = 60.97},
{vec = vector3(4281.97, 7980.29, 94.59), heading = 60.97},
{vec = vector3(4293.24, 7982.55, 94.59), heading = 60.97},
{vec = vector3(4297.03, 7971.97, 94.59), heading = 60.97},
{vec = vector3(4308.30, 7974.23, 94.59), heading = 60.97},
{vec = vector3(4312.09, 7963.65, 94.59), heading = 60.97},
{vec = vector3(4323.36, 7965.91, 94.59), heading = 60.97},
{vec = vector3(4327.15, 7955.33, 94.59), heading = 60.97},
{vec = vector3(4338.42, 7957.59, 94.59), heading = 60.97},
{vec = vector3(4342.21, 7947.01, 94.59), heading = 60.97},
{vec = vector3(4353.48, 7949.27, 94.59), heading = 60.97},
{vec = vector3(4357.27, 7938.69, 94.59), heading = 60.97},
{vec = vector3(4368.54, 7940.95, 94.59), heading = 60.97},
},
checkPoints = {
{vec = vector3(4184.65, 8038.47, 93.59), pitSkip = true},
{vec = vector3(3993.25, 8147.26, 102.06), pitSkip = true},
{vec = vector3(4050.00, 8178.24, 98.30), pitSkip = true},
{vec = vector3(4312.28, 8179.23, 82.71), pitSkip = false},
{vec = vector3(4648.72, 8070.44, 66.25), pitSkip = false},
{vec = vector3(4759.09, 8057.54, 72.07), pitSkip = false},
{vec = vector3(4866.67, 7967.24, 90.37), pitSkip = false},
{vec = vector3(4983.61, 7901.46, 97.11), pitSkip = false},
{vec = vector3(5279.50, 7710.55, 113.26), pitSkip = false},
{vec = vector3(5814.81, 7195.39, 147.04), pitSkip = false},
{vec = vector3(5796.31, 7120.06, 149.45), pitSkip = false},
{vec = vector3(5844.11, 7050.17, 150.76), pitSkip = false},
{vec = vector3(5894.23, 6965.63, 150.83), pitSkip = false},
{vec = vector3(5762.14, 6664.10, 138.00), pitSkip = false},
{vec = vector3(5674.61, 6647.20, 130.49), pitSkip = false},
{vec = vector3(5693.03, 6762.42, 121.52), pitSkip = false},
{vec = vector3(5728.33, 6865.34, 113.71), pitSkip = false},
{vec = vector3(5580.24, 7006.57, 99.26), pitSkip = false},
{vec = vector3(5378.91, 7232.43, 78.08), pitSkip = false},
{vec = vector3(5279.29, 7262.73, 70.44), pitSkip = false},
{vec = vector3(5179.82, 7212.93, 62.57), pitSkip = false},
{vec = vector3(5120.80, 7102.55, 55.55), pitSkip = false},
{vec = vector3(5136.36, 6965.79, 51.48), pitSkip = false},
{vec = vector3(5171.77, 6712.96, 52.33), pitSkip = false},
{vec = vector3(5101.79, 6642.83, 53.13), pitSkip = false},
{vec = vector3(5015.06, 6625.50, 53.02), pitSkip = false},
{vec = vector3(4981.74, 6565.05, 52.37), pitSkip = false},
{vec = vector3(4974.84, 6363.69, 47.91), pitSkip = false},
{vec = vector3(4932.65, 6310.78, 45.29), pitSkip = false},
{vec = vector3(4802.91, 6318.59, 41.72), pitSkip = false},
{vec = vector3(4714.16, 6370.91, 41.85), pitSkip = false},
{vec = vector3(4684.91, 6507.21, 45.62), pitSkip = false},
{vec = vector3(4730.68, 6747.47, 53.35), pitSkip = false},
{vec = vector3(4876.68, 7006.15, 59.91), pitSkip = false},
{vec = vector3(4902.20, 7168.73, 63.87), pitSkip = false},
{vec = vector3(4881.73, 7336.20, 68.47), pitSkip = false},
{vec = vector3(4845.72, 7403.89, 70.45), pitSkip = false},
{vec = vector3(4649.14, 7563.16, 74.99), pitSkip = false},
{vec = vector3(4563.82, 7660.72, 80.41), pitSkip = false},
{vec = vector3(4474.04, 7790.55, 85.63), pitSkip = false},
{vec = vector3(4491.23, 7821.17, 86.91), pitSkip = false},
{vec = vector3(4513.09, 7854.14, 87.42), pitSkip = true},
{vec = vector3(4431.90, 7900.15, 88.16), pitSkip = true},
{vec = vector3(4272.15, 7989.43, 92.22), pitSkip = true},
},
pitStop = {
{vec = vector3(4532.62, 7870.25, 88.08)}, -- entry
{vec = vector3(4062.97, 8125.79, 96.92)} -- exit
},
finish = vector3(4184.65, 8038.47, 93.59),
playerMinLimit = 1,
maxLaptime = 240,
defaultTire = 2,
tires = {
[1] = {box = 0.0235, label = "~r~SOFT", weatherTire = false, softness = 5.5, traction = 3.75, speed = 60},
[2] = {box = 0.038, label = "~y~MEDIUM", weatherTire = false, softness = 3.0, traction = 2.5, speed = 35},
[3] = {box = 0.0255, label = "~w~HARD", weatherTire = false, softness = 2.0, traction = 1.5, speed = 20},
[4] = {box = 0.026, label = "~g~INTER", weatherTire = true, softness = 5.5, traction = 3.75, speed = 35},
[5] = {box = 0.0255, label = "~b~WETS", weatherTire = true, softness = 3.0, traction = 2.5, speed = 20},
}
},
-- {
-- name = '',
-- vehicleName = '',
-- spawns = {
-- {vec = vector3(0.0, 0.0, 0.0), heading = 0.0},
-- },
-- checkPoints = {
-- {vec = vector3(0.0, 0.0, 0.0), pitSkip = false},
-- },
-- finish = vector3(),
-- playerMinLimit = 1,
-- maxLaptime = 120,
-- defaultTire = 2,
-- tires = {
-- [1] = {box = 0.0235, label = "~r~SOFT", weatherTire = false, softness = 7.5, traction = 3.75, speed = 60},
-- [2] = {box = 0.038, label = "~y~MEDIUM", weatherTire = false, softness = 5.0, traction = 2.5, speed = 30},
-- [3] = {box = 0.0255, label = "~w~HARD", weatherTire = false, softness = 3.0, traction = 1.5, speed = 10},
-- [4] = {box = 0.026, label = "~g~INTER", weatherTire = true, softness = 7.5, traction = 3.75, speed = 30},
-- [5] = {box = 0.0255, label = "~b~WETS", weatherTire = true, softness = 5.0, traction = 2.5, speed = 10},
-- }
-- },
}
language.lua
Language = {
['EN'] = {
["createParty"] = "Press ~INPUT_PICKUP~ to start a racing party!",
["alreadyIn"] = "You're already in a party!",
["invited"] = "You have received an invite from %s. Use the command ~y~/paccept~w~ to accept it!",
["inviteSent"] = "An invite has been sent to player: %s",
["inviteExpired"] = "The invite has ~y~expired~w~!",
["inviteAccepted"] = "You have ~g~successfully ~b~accepted~w~ the invite!",
["playerNotFound"] = "Player not found",
["noInvite"] = "You've received ~r~no~w~ invite!",
["partyHelp"] = "Commands: ^2/pstart^7, /pinvite (id), /pkick (id), /pclose, /pleave, /showlb, /pvehlist, /pvehlice",
["partyLeft"] = "You've left ~y~party ~b~~w~!",
["groupCircle"] = "You ~r~must~w~ be in the ~g~party circle~w~ to ~b~start~w~ the race!",
["startMatch"] = "The race will be started!",
["partyCreated"] = "Party ~g~successful~w~ created!\nUse ~y~/phelp ~g~ to invite players",
["invalidLaps"] = "Incorrect amount of laps",
["mapBusy"] = "This track is ~r~occupied~w~!",
["beenKicked"] = "You've been ~r~kicked~w~ out of the party!",
["partyKicked"] = "You've successfully ~w~kicked player ~y~%s~g~ out of the party!",
["partyClosed"] = "You've closed the party ~g~successfully~w~!",
["playersInCircle"] = "Not all ~y~players~w~ are in the ~g~party circle~w~. Want to ~b~kick~w~ them? ~y~(/forcestart)~w~",
["fewPlayers"] = "There are too ~r~few ~b~players~w~! (min: %s)",
["manyPlayers"] = "There are too ~r~many ~b~players~w~! (max: %s)",
["rewardReceived"] = "You received ~g~%s %s ~w~ as a reward!",
["lessPlayersReward"] = "Too few players have entered for a reward. Minimum %s needed!",
["currencyIcon"] = "$",
["chosenVehicle"] = "You've chosen the ^*^5%s",
["lapCount"] = "Number of laps (%s - %s)",
["menuTitle"] = "Map selection",
["vehicleLoad"] = "~b~The vehicle is loading",
["vehicleNotLoaded"] = "The vehicle [%s] could not be loaded",
["isInReadyCircle"] = "~g~You're in the circle, use ~y~/phelp ~g~ to see all commands",
["playerWon"] = "%s wins!",
["timesUp"] = "Time's up",
-- Command help
["pkickDesc"] = "Kick someone from the party",
["pkickArgDesc"] = "Player ID of the player to be kicked",
["pinviteDesc"] = "Invite someone to the party",
["pinviteArgDesc"] = "Player ID of the player to be invited",
["pacceptDesc"] = "Accept the invitation",
["pstartDesc"] = "Start the race",
["pcloseDesc"] = "Cancel the party",
["pleaveDesc"] = "Leave the party",
["phelpDesc"] = "Help command for racing",
["showlbDesc"] = "Show leaderboard",
["pvehicleDesc"] = "Choose a vehicle",
["pvehicleArgDesc"] = "Use the vehicle name from /pvehlist",
["pvehlistDesc"] = "Show list of vehicles",
-- Leaderboard
["totalStarts"] = "Total times started",
["totalPlayers"] = "Total players",
["totalLaps"] = "Total laps completed",
["totalTime"] = "Total time",
["fastestLapTime"] = "Fastest lap",
["averageTime"] = "Average lap time",
-- Onscreen
["respawnHelp"] = "Respawn with F",
["respawnActive"] = "Respawning...",
["nextTire"] = "NEXT TIRE: ",
["beatFastest"] = "TIME TO BEAT",
["time"] = "TIME",
["currentLap"] = "CURRENT LAP",
["fastestLap"] = "FASTEST LAP",
},
['NL'] = {
["createParty"] = "Druk op ~INPUT_PICKUP~ om een kartparty aan te maken!",
["alreadyIn"] = "Je zit al in een party!",
["invited"] = "Je hebt een invite van %s ontvangen. Gebruik ~y~/paccept~w~ om deze te accepteren!",
["inviteSent"] = "Er is een invite gestuurd naar speler: %s",
["inviteExpired"] = "De invite is ~y~verlopen~w~!",
["inviteAccepted"] = "Je hebt de invite ~g~succesvol ~b~geaccepteerd~w~!",
["playerNotFound"] = "Speler niet gevonden",
["noInvite"] = "Je hebt ~r~geen~w~ invite ontvangen!",
["partyHelp"] = "Commands: ^2/pstart^7, /pinvite (id), /pkick (id), /pclose, /pleave, /showlb, /pvehlist, /pvehlice",
["partyLeft"] = "Je hebt de ~y~party ~b~verlaten~w~!",
["groupCircle"] = "Je ~r~moet~w~ in de ~g~groeperingscirkel~w~ staan om de match te ~b~starten~w~!",
["startMatch"] = "De match wordt ~y~geladen",
["partyCreated"] = "Party ~g~succesvol~w~ aangemaakt!\nGebruik ~y~/phelp ~w~om mensen te inviten",
["invalidLaps"] = "Onjuiste hoeveelheid laps",
["mapBusy"] = "Deze map is ~r~bezet~w~!",
["beenKicked"] = "Je bent ~r~gekicked~w~ uit de party!",
["partyKicked"] = "Je hebt speler ~y~%s~g~ succesvol ~w~gekicked uit de party!",
["partyClosed"] = "Je hebt de party ~g~succesvol~w~ gesloten!",
["playersInCircle"] = "Niet alle ~y~spelers~w~ zitten in de ~g~groeperingscirkel~w~. Wil je ze ~b~kicken~w~? ~y~(/forcestart)~w~",
["fewPlayers"] = "Je bent met te ~r~weinig ~b~spelers~w~! (min: %s)",
["manyPlayers"] = "Je bent met te ~r~veel ~b~spelers~w~! (max: %s)",
["rewardReceived"] = "Je hebt ~g~%s %s ~w~ontvangen als beloning!",
["lessPlayersReward"] = "Te weinig spelers hebben meegedaan voor een beloning. Minimaal %s nodig!",
["currencyIcon"] = "$",
["chosenVehicle"] = "Je hebt een ^*^5%s ^rgekozen!",
["lapCount"] = "Aantal laps (%s - %s)",
["menuTitle"] = "Map selectie",
["vehicleLoad"] = "~b~Het voertuig wordt geladen",
["vehicleNotLoaded"] = "Het voertuig [%s] kon niet worden geladen",
["isInReadyCircle"] = "~g~Je bent in de cirkel, gebruik ~y~/phelp ~g~om de commando's te zien",
["playerWon"] = "%s wint!",
["timesUp"] = "Tijd is om",
["respawnHelp"] = "Respawn met F",
-- Command help
["pkickDesc"] = "Kick iemand van de party",
["pkickArgDesc"] = "Speler ID van de speler die moet worden gekicked",
["pinviteDesc"] = "Invite iemand voor de party",
["pinviteArgDesc"] = "Speler ID van de speler die moet worden uitgenodigd",
["pacceptDesc"] = "Accepteer de uitnodiging",
["pstartDesc"] = "Start de race",
["pcloseDesc"] = "Hef de party op",
["pleaveDesc"] = "Verlaat de party",
["phelpDesc"] = "Help command voor het karten",
["showlbDesc"] = "Show leaderboard",
["pvehicleDesc"] = "Kies een voertuig",
["pvehicleArgDesc"] = "Gebruik de naam uit /pvehlist",
["pvehlistDesc"] = "Lijst met beschikbare voertuigen",
-- Leaderboard
["totalStarts"] = "Totaal aantal keer gestart",
["totalPlayers"] = "Totaal aantal spelers",
["totalLaps"] = "Totaal aantal gereden rondes",
["totalTime"] = "Totaal gereden tijd",
["fastestLapTime"] = "Snelst gereden ronde",
["averageTime"] = "Gemiddelde rondetijd",
-- Onscreen
["respawnHelp"] = "Respawn with F",
["respawnActive"] = "Respawning...",
["nextTire"] = "NEXT TIRE: ",
["beatFastest"] = "TIME TO BEAT",
["time"] = "TIME",
["currentLap"] = "CURRENT LAP",
["fastestLap"] = "FASTEST LAP",
}
}
functions.lua
Functions = {}
-- With the following two client called functions, the text messages can be fully customized
Functions.ShowNotification = function(message, t)
if Config.notificationEvent == "ESX" then
ESX.ShowNotification(message, t)
elseif Config.notificationEvent == "QBCORE" then
QBCore.Functions.Notify(message, t, 5000)
else
SetNotificationTextEntry("STRING")
AddTextComponentString(message)
DrawNotification(0,1)
end
end
Functions.ShowMissiontext = function(text,time)
ClearPrints()
SetTextEntry_2("STRING")
AddTextComponentString(text)
DrawSubtitleTimed(time, 1)
end
-- This server called function makes it possible to link and customize your own chat resource
Functions.ShowChatMessage = function(src, title, color, message)
TriggerClientEvent('chatMessage', src, title, color, message)
end
Last updated