Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- esx_licenses/server.lua:
- function AddLicense(target, type, cb)
- local xPlayer = ESX.GetPlayerFromId(target)
- if xPlayer then
- MySQL.insert('INSERT INTO user_licenses (type, owner) VALUES (?, ?)', {type, xPlayer.identifier},
- function(rowsChanged)
- if cb then
- cb()
- end
- end)
- else
- if cb then
- cb()
- end
- end
- end
- function RemoveLicense(target, type, cb)
- local xPlayer = ESX.GetPlayerFromId(target)
- if xPlayer then
- MySQL.update('DELETE FROM user_licenses WHERE type = ? AND owner = ?', {type, xPlayer.identifier},
- function(rowsChanged)
- if cb then
- cb()
- end
- end)
- else
- if cb then
- cb()
- end
- end
- end
- function GetLicense(type, cb)
- MySQL.scalar('SELECT label FROM licenses WHERE type = ?', {type},
- function(result)
- cb({type = type, label = result})
- end)
- end
- function GetLicenses(target, cb)
- local xPlayer = ESX.GetPlayerFromId(target)
- MySQL.query('SELECT user_licenses.type, licenses.label FROM user_licenses LEFT JOIN licenses ON user_licenses.type = licenses.type WHERE owner = ?', {xPlayer.identifier},
- function(result)
- cb(result)
- end)
- end
- function CheckLicense(target, type, cb)
- local xPlayer = ESX.GetPlayerFromId(target)
- if xPlayer then
- MySQL.scalar('SELECT type FROM user_licenses WHERE type = ? AND owner = ?', {type, xPlayer.identifier},
- function(result)
- if result then
- cb(true)
- else
- cb(false)
- end
- end)
- else
- cb(false)
- end
- end
- function GetLicensesList(cb)
- MySQL.query('SELECT type, label FROM licenses',
- function(result)
- cb(result)
- end)
- end
- RegisterNetEvent('esx_license:addLicense')
- AddEventHandler('esx_license:addLicense', function(target, type, cb)
- AddLicense(target, type, cb)
- end)
- RegisterNetEvent('esx_license:removeLicense')
- AddEventHandler('esx_license:removeLicense', function(target, type, cb)
- RemoveLicense(target, type, cb)
- end)
- AddEventHandler('esx_license:getLicense', function(type, cb)
- GetLicense(type, cb)
- end)
- RegisterNetEvent('esx_license:getLicenses')
- AddEventHandler('esx_license:getLicenses', function(target, cb)
- GetLicenses(target, cb)
- end)
- AddEventHandler('esx_license:checkLicense', function(target, type, cb)
- CheckLicense(target, type, cb)
- end)
- AddEventHandler('esx_license:getLicensesList', function(cb)
- GetLicensesList(cb)
- end)
- ESX.RegisterServerCallback('esx_license:getLicense', function(source, cb, type)
- GetLicense(type, cb)
- end)
- ESX.RegisterServerCallback('esx_license:getLicenses', function(source, cb, target)
- GetLicenses(target, cb)
- end)
- ESX.RegisterServerCallback('esx_license:checkLicense', function(source, cb, target, type)
- CheckLicense(target, type, cb)
- end)
- ESX.RegisterServerCallback('esx_license:getLicensesList', function(source, cb)
- GetLicensesList(cb)
- end)
- esx_dmvschool/config.lua:
- Config = {}
- Config.DrawDistance = 100.0
- Config.MaxErrors = 3
- Config.SpeedMultiplier = 3.6
- Config.Locale = 'en'
- Config.Prices = {
- dmv = 500,
- drive = 2500,
- drive_bike = 3000,
- drive_truck = 5000
- }
- Config.VehicleModels = {
- drive = 'golf4',
- drive_bike = 'ninjah2',
- drive_truck = 'mule3'
- }
- Config.SpeedLimits = {
- residence = 55,
- town = 88,
- freeway = 105
- }
- Config.Zones = {
- DMVSchool = {
- Pos = {x = -810.5988, y = -1352.2604, z = 5.1500-0.98},
- Size = {x = 1.5, y = 1.5, z = 1.0},
- Color = {r = 204, g = 204, b = 0},
- Type = 1
- },
- VehicleSpawnPoint = {
- Pos = {x = -761.8342, y = -1329.8511, z = 5.0004, h = 54.3854},
- Size = {x = 1.5, y = 1.5, z = 1.0},
- Color = {r = 204, g = 204, b = 0},
- Type = -1
- }
- }
- Config.CheckPoints = {
- {
- Pos = {x = -781.9925, y = -1326.0081, z = 5.0003-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- DrawMissionText(_U('next_point_speed', Config.SpeedLimits['residence']), 5000)
- end
- },
- {
- Pos = {x = -703.4666, y = -1246.3673, z = 10.3445-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- setCurrentZoneType('town')
- Citizen.CreateThread(function()
- DrawMissionText(_U('stop_for_ped'), 5000)
- PlaySound(-1, 'RACE_PLACED', 'HUD_AWARDS', false, 0, true)
- FreezeEntityPosition(vehicle, true)
- Citizen.Wait(4000)
- FreezeEntityPosition(vehicle, false)
- DrawMissionText(_U('good_lets_cont'), 5000)
- end)
- end
- },
- {
- Pos = {x = -646.4415, y = -1293.4617, z = 10.6685-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- end
- },
- {
- Pos = {x = -532.9138, y = -1107.9597, z = 22.2426-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- end
- },
- {
- Pos = {x = -497.3983, y = -860.0271, z = 30.3336-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- end
- },
- {
- Pos = {x = -545.3369, y = -680.7515, z = 33.2965-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- end
- },
- {
- Pos = {x = -624.1840, y = -572.0944, z = 34.9276-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- end
- },
- {
- Pos = {x = -465.8426, y = -572.0718, z = 34.5073-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- setCurrentZoneType('freeway')
- DrawMissionText(_U('hway_time', Config.SpeedLimits['freeway']), 5000)
- PlaySound(-1, 'RACE_PLACED', 'HUD_AWARDS', false, 0, true)
- end
- },
- {
- Pos = {x = -424.1990, y = -715.8915, z = 37.2108-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- end
- },
- {
- Pos = {x = -736.0645, y = -1704.1716, z = 29.4669-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- setCurrentZoneType('town')
- DrawMissionText(_U('in_town_speed', Config.SpeedLimits['town']), 5000)
- end
- },
- {
- Pos = {x = -729.1650, y = -1620.9277, z = 24.5995-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- DrawMissionText(_U('go_next_point'), 5000)
- end
- },
- {
- Pos = {x = -634.6426, y = -1320.2935, z = 10.6556-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- DrawMissionText(_U('go_next_point'), 5000)
- end
- },
- {
- Pos = {x = -682.0701, y = -1228.4078, z = 10.6670-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- DrawMissionText(_U('go_next_point'), 5000)
- end
- },
- {
- Pos = {x = -798.8036, y = -1315.1281, z = 5.000-0.98},
- Action = function(playerPed, vehicle, setCurrentZoneType)
- ESX.Game.DeleteVehicle(vehicle)
- end
- }
- }
- esx_dmvschool/client/main.lua:
- local CurrentAction = nil
- local CurrentActionMsg = nil
- local CurrentActionData = nil
- local Licenses = {}
- local CurrentTest = nil
- local CurrentTestType = nil
- local CurrentVehicle = nil
- local CurrentCheckPoint, DriveErrors = 0, 0
- local LastCheckPoint = -1
- local CurrentBlip = nil
- local CurrentZoneType = nil
- local IsAboveSpeedLimit = false
- local LastVehicleHealth = nil
- function DrawMissionText(msg, time)
- ClearPrints()
- BeginTextCommandPrint('STRING')
- AddTextComponentSubstringPlayerName(msg)
- EndTextCommandPrint(time, true)
- end
- function StartTheoryTest()
- CurrentTest = 'theory'
- SendNUIMessage({
- openQuestion = true
- })
- ESX.SetTimeout(200, function()
- SetNuiFocus(true, true)
- end)
- end
- function StopTheoryTest(success)
- CurrentTest = nil
- SendNUIMessage({
- openQuestion = false
- })
- SetNuiFocus(false)
- if success then
- TriggerServerEvent('esx_dmvschool:addLicense', 'dmv')
- ESX.ShowNotification(_U('passed_test'))
- else
- ESX.ShowNotification(_U('failed_test'))
- end
- end
- function StartDriveTest(type)
- ESX.Game.SpawnVehicle(Config.VehicleModels[type], Config.Zones.VehicleSpawnPoint.Pos, Config.Zones.VehicleSpawnPoint.Pos.h, function(vehicle)
- CurrentTest = 'drive'
- CurrentTestType = type
- CurrentCheckPoint = 0
- LastCheckPoint = -1
- CurrentZoneType = 'residence'
- DriveErrors = 0
- IsAboveSpeedLimit = false
- CurrentVehicle = vehicle
- LastVehicleHealth = GetEntityHealth(vehicle)
- local playerPed = PlayerPedId()
- TaskWarpPedIntoVehicle(playerPed, vehicle, -1)
- SetVehicleFuelLevel(vehicle, 100.0)
- exports["LegacyFuel"]:SetFuel(vehicle, 100)
- DecorSetFloat(vehicle, "_FUEL_LEVEL", GetVehicleFuelLevel(vehicle))
- end)
- end
- function StopDriveTest(success)
- if success then
- TriggerServerEvent('esx_dmvschool:addLicense', CurrentTestType)
- ESX.ShowNotification(_U('passed_test'))
- else
- ESX.ShowNotification(_U('failed_test'))
- end
- CurrentTest = nil
- CurrentTestType = nil
- end
- function SetCurrentZoneType(type)
- CurrentZoneType = type
- end
- function OpenDMVSchoolMenu()
- local ownedLicenses = {}
- for i=1, #Licenses, 1 do
- ownedLicenses[Licenses[i].type] = true
- end
- local elements = {}
- if not ownedLicenses['dmv'] then
- table.insert(elements, {
- label = (('%s: <span style="color:green;">%s</span>'):format(_U('theory_test'), _U('school_item', ESX.Math.GroupDigits(Config.Prices['dmv'])))),
- value = 'theory_test'
- })
- end
- if ownedLicenses['dmv'] then
- if not ownedLicenses['drive'] then
- table.insert(elements, {
- label = (('%s: <span style="color:green;">%s</span>'):format(_U('road_test_car'), _U('school_item', ESX.Math.GroupDigits(Config.Prices['drive'])))),
- value = 'drive_test',
- type = 'drive'
- })
- end
- if not ownedLicenses['drive_bike'] then
- table.insert(elements, {
- label = (('%s: <span style="color:green;">%s</span>'):format(_U('road_test_bike'), _U('school_item', ESX.Math.GroupDigits(Config.Prices['drive_bike'])))),
- value = 'drive_test',
- type = 'drive_bike'
- })
- end
- if not ownedLicenses['drive_truck'] then
- table.insert(elements, {
- label = (('%s: <span style="color:green;">%s</span>'):format(_U('road_test_truck'), _U('school_item', ESX.Math.GroupDigits(Config.Prices['drive_truck'])))),
- value = 'drive_test',
- type = 'drive_truck'
- })
- end
- end
- ESX.UI.Menu.CloseAll()
- ESX.UI.Menu.Open('default', GetCurrentResourceName(), 'dmvschool_actions', {
- title = _U('driving_school'),
- elements = elements,
- align = 'bottom-right'
- }, function(data, menu)
- if data.current.value == 'theory_test' then
- menu.close()
- ESX.TriggerServerCallback('esx_dmvschool:canYouPay', function(haveMoney)
- if haveMoney then
- StartTheoryTest()
- else
- ESX.ShowNotification(_U('not_enough_money'))
- end
- end, 'dmv')
- elseif data.current.value == 'drive_test' then
- menu.close()
- ESX.TriggerServerCallback('esx_dmvschool:canYouPay', function(haveMoney)
- if haveMoney then
- StartDriveTest(data.current.type)
- else
- ESX.ShowNotification(_U('not_enough_money'))
- end
- end, data.current.type)
- end
- end, function(data, menu)
- menu.close()
- CurrentAction = 'dmvschool_menu'
- CurrentActionMsg = _U('press_open_menu')
- CurrentActionData = {}
- end)
- end
- RegisterNUICallback('question', function(data, cb)
- SendNUIMessage({
- openSection = 'question'
- })
- cb()
- end)
- RegisterNUICallback('close', function(data, cb)
- StopTheoryTest(true)
- cb()
- end)
- RegisterNUICallback('kick', function(data, cb)
- StopTheoryTest(false)
- cb()
- end)
- AddEventHandler('esx_dmvschool:hasEnteredMarker', function(zone)
- if zone == 'DMVSchool' then
- CurrentAction = 'dmvschool_menu'
- CurrentActionMsg = _U('press_open_menu')
- CurrentActionData = {}
- end
- end)
- AddEventHandler('esx_dmvschool:hasExitedMarker', function(zone)
- CurrentAction = nil
- ESX.UI.Menu.CloseAll()
- end)
- RegisterNetEvent('esx_dmvschool:loadLicenses')
- AddEventHandler('esx_dmvschool:loadLicenses', function(licenses)
- Licenses = licenses
- end)
- -- Create Blips
- Citizen.CreateThread(function()
- local blip = AddBlipForCoord(Config.Zones.DMVSchool.Pos.x, Config.Zones.DMVSchool.Pos.y, Config.Zones.DMVSchool.Pos.z)
- SetBlipSprite (blip, 408)
- SetBlipDisplay(blip, 4)
- SetBlipScale (blip, 0.5)
- SetBlipAsShortRange(blip, true)
- BeginTextCommandSetBlipName("STRING")
- AddTextComponentString(_U('driving_school_blip'))
- EndTextCommandSetBlipName(blip)
- end)
- -- Display markers
- Citizen.CreateThread(function()
- while true do
- Citizen.Wait(0)
- local coords = GetEntityCoords(PlayerPedId())
- for k,v in pairs(Config.Zones) do
- if(v.Type ~= -1 and GetDistanceBetweenCoords(coords, v.Pos.x, v.Pos.y, v.Pos.z, true) < Config.DrawDistance) then
- DrawMarker(v.Type, v.Pos.x, v.Pos.y, v.Pos.z, 0.0, 0.0, 0.0, 0, 0.0, 0.0, v.Size.x, v.Size.y, v.Size.z, v.Color.r, v.Color.g, v.Color.b, 100, false, true, 2, false, false, false, false)
- end
- end
- end
- end)
- -- Enter / Exit marker events
- Citizen.CreateThread(function()
- while true do
- Citizen.Wait(100)
- local coords = GetEntityCoords(PlayerPedId())
- local isInMarker = false
- local currentZone = nil
- for k,v in pairs(Config.Zones) do
- if(GetDistanceBetweenCoords(coords, v.Pos.x, v.Pos.y, v.Pos.z, true) < v.Size.x) then
- isInMarker = true
- currentZone = k
- end
- end
- if (isInMarker and not HasAlreadyEnteredMarker) or (isInMarker and LastZone ~= currentZone) then
- HasAlreadyEnteredMarker = true
- LastZone = currentZone
- TriggerEvent('esx_dmvschool:hasEnteredMarker', currentZone)
- end
- if not isInMarker and HasAlreadyEnteredMarker then
- HasAlreadyEnteredMarker = false
- TriggerEvent('esx_dmvschool:hasExitedMarker', LastZone)
- end
- end
- end)
- -- Block UI
- Citizen.CreateThread(function()
- while true do
- Citizen.Wait(1)
- if CurrentTest == 'theory' then
- local playerPed = PlayerPedId()
- DisableControlAction(0, 1, true) -- LookLeftRight
- DisableControlAction(0, 2, true) -- LookUpDown
- DisablePlayerFiring(playerPed, true) -- Disable weapon firing
- DisableControlAction(0, 142, true) -- MeleeAttackAlternate
- DisableControlAction(0, 106, true) -- VehicleMouseControlOverride
- else
- Citizen.Wait(500)
- end
- end
- end)
- -- Key Controls
- Citizen.CreateThread(function()
- while true do
- Citizen.Wait(0)
- if CurrentAction then
- ESX.ShowHelpNotification(CurrentActionMsg)
- if IsControlJustReleased(0, 38) then
- if CurrentAction == 'dmvschool_menu' then
- OpenDMVSchoolMenu()
- end
- CurrentAction = nil
- end
- else
- Citizen.Wait(500)
- end
- end
- end)
- -- Drive test
- Citizen.CreateThread(function()
- while true do
- Citizen.Wait(0)
- if CurrentTest == 'drive' then
- local playerPed = PlayerPedId()
- local coords = GetEntityCoords(playerPed)
- local nextCheckPoint = CurrentCheckPoint + 1
- if Config.CheckPoints[nextCheckPoint] == nil then
- if DoesBlipExist(CurrentBlip) then
- RemoveBlip(CurrentBlip)
- end
- CurrentTest = nil
- ESX.ShowNotification(_U('driving_test_complete'))
- if DriveErrors < Config.MaxErrors then
- StopDriveTest(true)
- else
- StopDriveTest(false)
- end
- else
- if CurrentCheckPoint ~= LastCheckPoint then
- if DoesBlipExist(CurrentBlip) then
- RemoveBlip(CurrentBlip)
- end
- CurrentBlip = AddBlipForCoord(Config.CheckPoints[nextCheckPoint].Pos.x, Config.CheckPoints[nextCheckPoint].Pos.y, Config.CheckPoints[nextCheckPoint].Pos.z)
- SetBlipRoute(CurrentBlip, 1)
- LastCheckPoint = CurrentCheckPoint
- end
- local distance = GetDistanceBetweenCoords(coords, Config.CheckPoints[nextCheckPoint].Pos.x, Config.CheckPoints[nextCheckPoint].Pos.y, Config.CheckPoints[nextCheckPoint].Pos.z, true)
- if distance <= 100.0 then
- DrawMarker(1, Config.CheckPoints[nextCheckPoint].Pos.x, Config.CheckPoints[nextCheckPoint].Pos.y, Config.CheckPoints[nextCheckPoint].Pos.z, 0.0, 0.0, 0.0, 0, 0.0, 0.0, 1.5, 1.5, 1.5, 102, 204, 102, 100, false, true, 2, false, false, false, false)
- end
- if distance <= 3.0 then
- Config.CheckPoints[nextCheckPoint].Action(playerPed, CurrentVehicle, SetCurrentZoneType)
- CurrentCheckPoint = CurrentCheckPoint + 1
- end
- end
- else
- -- not currently taking driver test
- Citizen.Wait(500)
- end
- end
- end)
- -- Speed / Damage control
- Citizen.CreateThread(function()
- while true do
- Citizen.Wait(10)
- if CurrentTest == 'drive' then
- local playerPed = PlayerPedId()
- if IsPedInAnyVehicle(playerPed, false) then
- local vehicle = GetVehiclePedIsIn(playerPed, false)
- local speed = GetEntitySpeed(vehicle) * Config.SpeedMultiplier
- local tooMuchSpeed = false
- for k,v in pairs(Config.SpeedLimits) do
- if CurrentZoneType == k and speed > v then
- tooMuchSpeed = true
- if not IsAboveSpeedLimit then
- DriveErrors = DriveErrors + 1
- IsAboveSpeedLimit = true
- ESX.ShowNotification(_U('driving_too_fast', v))
- ESX.ShowNotification(_U('errors', DriveErrors, Config.MaxErrors))
- end
- end
- end
- if not tooMuchSpeed then
- IsAboveSpeedLimit = false
- end
- local health = GetEntityHealth(vehicle)
- if health < LastVehicleHealth then
- DriveErrors = DriveErrors + 1
- ESX.ShowNotification(_U('you_damaged_veh'))
- ESX.ShowNotification(_U('errors', DriveErrors, Config.MaxErrors))
- -- avoid stacking faults
- LastVehicleHealth = health
- Citizen.Wait(1500)
- end
- end
- else
- -- not currently taking driver test
- Citizen.Wait(500)
- end
- end
- end)
- esx_dmvschool/server/main.lua:
- ESX.RegisterServerCallback('esx_dmvschool:canYouPay', function(source, cb, type)
- local xPlayer = ESX.GetPlayerFromId(source)
- if xPlayer.getMoney() >= Config.Prices[type] then
- xPlayer.removeMoney(Config.Prices[type])
- TriggerClientEvent('esx:showNotification', source, _U('you_paid', Config.Prices[type]))
- cb(true)
- else
- cb(false)
- end
- end)
- AddEventHandler('esx:playerLoaded', function(source)
- TriggerEvent('esx_license:getLicenses', source, function(licenses)
- TriggerClientEvent('esx_dmvschool:loadLicenses', source, licenses)
- end)
- end)
- RegisterNetEvent('esx_dmvschool:addLicense')
- AddEventHandler('esx_dmvschool:addLicense', function(type)
- local _source = source
- TriggerEvent('esx_license:addLicense', _source, type, function()
- TriggerEvent('esx_license:getLicenses', _source, function(licenses)
- TriggerClientEvent('esx_dmvschool:loadLicenses', _source, licenses)
- end)
- end)
- end)
- SQL:
- -- phpMyAdmin SQL Dump
- -- version 5.1.3
- -- https://www.phpmyadmin.net/
- --
- -- Host: localhost
- -- Erstellungszeit: 25. Feb 2022 um 12:24
- -- Server-Version: 10.3.31-MariaDB-0+deb10u1
- -- PHP-Version: 7.4.27
- SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
- START TRANSACTION;
- SET time_zone = "+00:00";
- /*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
- /*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
- /*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
- /*!40101 SET NAMES utf8mb4 */;
- --
- -- Datenbank: `es_extended`
- --
- -- --------------------------------------------------------
- --
- -- Tabellenstruktur für Tabelle `licenses`
- --
- CREATE TABLE `licenses` (
- `type` varchar(60) NOT NULL,
- `label` varchar(60) NOT NULL
- ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
- --
- -- Daten für Tabelle `licenses`
- --
- INSERT INTO `licenses` (`type`, `label`) VALUES
- ('dmv', 'Theoretische Fahrprüfung'),
- ('drive', 'Praktische Fahrprüfung'),
- ('drive_bike', 'Motorrad Fahrprüfung'),
- ('drive_truck', 'LKW Fahrprüfung'),
- ('weapon', 'Waffenschein');
- -- --------------------------------------------------------
- --
- -- Tabellenstruktur für Tabelle `user_licenses`
- --
- CREATE TABLE `user_licenses` (
- `id` int(11) NOT NULL,
- `type` varchar(60) NOT NULL,
- `owner` varchar(60) DEFAULT NULL
- ) ENGINE=InnoDB DEFAULT CHARSET=latin1;
- --
- -- Daten für Tabelle `user_licenses`
- --
- INSERT INTO `user_licenses` (`id`, `type`, `owner`) VALUES
- (7, 'drive', 'char2:74399739c7f1c4cfb50a13346b06a284401ca9fd'),
- (14, 'weapon', 'c2c3ec5e10269e2d4911b9737b4784416c7b4981'),
- (17, 'drive', '32e4fc6afa759afb7076f06117d10373d0687407'),
- (18, 'dmv', '32e4fc6afa759afb7076f06117d10373d0687407'),
- (24, 'dmv', '1a9ed63fbc6deb2696e26d0d25c7b4aab6d91379'),
- (28, 'dmv', '1a9ed63fbc6deb2696e26d0d25c7b4aab6d91379'),
- (29, 'drive', '1a9ed63fbc6deb2696e26d0d25c7b4aab6d91379'),
- (37, 'weapon', 'a2518ea92c68f9e72ec024252769fcc3beec3aef'),
- (38, 'weapon', '4d4f98b905d5a991535abd0ec95f3a8e000debd0'),
- (39, 'weapon', 'cb085c20a2fd4105b72dd99d1afbdd8cabb2aaab'),
- (42, 'weapon', 'd82758be17f5628be3205411d13c0a02707e2ab0'),
- (45, 'dmv', '5322dfb116cead5f5aee2f02b5659c93891fe8a4'),
- (47, 'drive_bike', '5322dfb116cead5f5aee2f02b5659c93891fe8a4'),
- (48, 'drive_truck', '5322dfb116cead5f5aee2f02b5659c93891fe8a4'),
- (57, 'weapon', 'afaae8b00bb0eb198ae861c90d31ccfc139abe58'),
- (58, 'drive', 'afaae8b00bb0eb198ae861c90d31ccfc139abe58'),
- (59, 'dmv', 'afaae8b00bb0eb198ae861c90d31ccfc139abe58'),
- (60, 'drive_bike', 'afaae8b00bb0eb198ae861c90d31ccfc139abe58'),
- (61, 'drive_truck', 'afaae8b00bb0eb198ae861c90d31ccfc139abe58'),
- (65, 'drive_bike', '37b747c146c338823e8e764fe82ff656ac219c8d'),
- (66, 'drive_truck', '37b747c146c338823e8e764fe82ff656ac219c8d'),
- (69, 'dmv', '382c2f1aed25d20b283b621387de1400ccf81c4e'),
- (70, 'drive', ' f5c8d63dc423a821c5935c23add8cd3c31cf350c'),
- (71, 'dmv', 'f5c8d63dc423a821c5935c23add8cd3c31cf350c'),
- (72, 'drive_truck', 'f5c8d63dc423a821c5935c23add8cd3c31cf350c'),
- (74, 'drive', '5a28589147cf17d0475c5ddd74788fe1062cddc9'),
- (75, 'dmv', '5a28589147cf17d0475c5ddd74788fe1062cddc9'),
- (77, 'drive_truck', '5a28589147cf17d0475c5ddd74788fe1062cddc9'),
- (79, 'dmv', '9af5fe77fd9923caa600035af97cde9305cf21b9'),
- (81, 'dmv', '8f4f4e74609a166b011827d91a34394eb3930eab'),
- (82, 'drive', '8f4f4e74609a166b011827d91a34394eb3930eab'),
- (85, 'drive', '9af5fe77fd9923caa600035af97cde9305cf21b9'),
- (86, 'drive_bike', '9af5fe77fd9923caa600035af97cde9305cf21b9'),
- (87, 'drive_truck', '9af5fe77fd9923caa600035af97cde9305cf21b9'),
- (88, 'drive', 'a53b5bf49a48ae456e2cc8bd35609a591d675878'),
- (89, 'dmv', 'a53b5bf49a48ae456e2cc8bd35609a591d675878'),
- (91, 'drive', '5322dfb116cead5f5aee2f02b5659c93891fe8a4'),
- (95, 'weapon', '1a9ed63fbc6deb2696e26d0d25c7b4aab6d91379'),
- (99, 'weapon', '5322dfb116cead5f5aee2f02b5659c93891fe8a4'),
- (100, 'weapon', '587804cef1f353d822b79768ea763d180d585c87'),
- (102, 'weapon', 'ca0966caeed0b49e05743ca2c20c55b008918854'),
- (103, 'weapon', '22b077e11e5ee5e932c7d6803ee7e4747f6f569d'),
- (104, 'weapon', '9af5fe77fd9923caa600035af97cde9305cf21b9'),
- (105, 'weapon', 'cc0a2b5f09fefa8cdf790b94e765a68657437a4f'),
- (106, 'dmv', '2e4a1b434f6e3821796147950ac22bc1b18ec36b'),
- (107, 'weapon', '32e4fc6afa759afb7076f06117d10373d0687407'),
- (110, 'dmv', '286fc126ce4c4022684432e3d7034b1ad1991692'),
- (111, 'drive', '286fc126ce4c4022684432e3d7034b1ad1991692'),
- (113, 'dmv', '587804cef1f353d822b79768ea763d180d585c87'),
- (115, 'weapon', 'bb900646e80c550e870304b54a35291e96061210'),
- (118, 'weapon', 'a53b5bf49a48ae456e2cc8bd35609a591d675878'),
- (119, 'dmv', 'f84504bfa0c9a9da92c4cdf77bbeced585eb73ad'),
- (120, 'dmv', 'fe9d304e1661aaa97fa36c0f89632b094605c8b6'),
- (121, 'dmv', 'c3f437fbb565aba19660d9d16374452493d72f0a'),
- (123, 'drive_bike', 'fe9d304e1661aaa97fa36c0f89632b094605c8b6'),
- (124, 'drive', 'c3f437fbb565aba19660d9d16374452493d72f0a'),
- (125, 'drive_bike', 'c3f437fbb565aba19660d9d16374452493d72f0a'),
- (128, 'drive_bike', '587804cef1f353d822b79768ea763d180d585c87'),
- (129, 'drive', '587804cef1f353d822b79768ea763d180d585c87'),
- (130, 'dmv', '494fbaa710c11afead7643305001e5ce2f0e13e7'),
- (131, 'drive_truck', 'fe9d304e1661aaa97fa36c0f89632b094605c8b6'),
- (132, 'drive', '494fbaa710c11afead7643305001e5ce2f0e13e7'),
- (134, 'weapon', 'fe9d304e1661aaa97fa36c0f89632b094605c8b6'),
- (135, 'weapon', '292f813ea1b7ff611d1e0a4198feae4e1ff25fe8'),
- (136, 'weapon', '494fbaa710c11afead7643305001e5ce2f0e13e7'),
- (140, 'dmv', '37b747c146c338823e8e764fe82ff656ac219c8d'),
- (141, 'drive', '37b747c146c338823e8e764fe82ff656ac219c8d'),
- (149, 'weapon', '5a28589147cf17d0475c5ddd74788fe1062cddc9'),
- (155, 'weapon', 'f5c8d63dc423a821c5935c23add8cd3c31cf350c'),
- (156, 'dmv', '4d4f98b905d5a991535abd0ec95f3a8e000debd0'),
- (157, 'drive', '4d4f98b905d5a991535abd0ec95f3a8e000debd0'),
- (158, 'dmv', '074c07516e81642c4e2eeef4b9598d13e9f5a0d6'),
- (159, 'drive', '074c07516e81642c4e2eeef4b9598d13e9f5a0d6'),
- (160, 'dmv', '7c76d8579fa4ed0236b0d91ae47e019ffa4fa118'),
- (161, 'drive', '7c76d8579fa4ed0236b0d91ae47e019ffa4fa118'),
- (162, 'drive', '74399739c7f1c4cfb50a13346b06a284401ca9fd'),
- (163, 'dmv', '74399739c7f1c4cfb50a13346b06a284401ca9fd'),
- (164, 'dmv', '8961510d9d7692d091304580b03a0f4395780038'),
- (165, 'drive', '8961510d9d7692d091304580b03a0f4395780038'),
- (166, 'weapon', '74399739c7f1c4cfb50a13346b06a284401ca9fd'),
- (169, 'weapon', 'ec489403752096e3b5d9a1802e5464845a752f94'),
- (170, 'dmv', 'ec489403752096e3b5d9a1802e5464845a752f94'),
- (173, 'weapon', 'b4823ba58324e29740d50fb5265e8bef2652b1f9'),
- (175, 'drive', '292f813ea1b7ff611d1e0a4198feae4e1ff25fe8'),
- (176, 'dmv', 'c328263a6af4394f8a35f5101e5f122e94812edb'),
- (177, 'dmv', 'a54a3af4504d2b7dbe16760ee653efde0168520a'),
- (178, 'drive', 'a54a3af4504d2b7dbe16760ee653efde0168520a'),
- (179, 'weapon', 'a54a3af4504d2b7dbe16760ee653efde0168520a'),
- (180, 'weapon', '3fa4098058b8bfcbbdcde5bd66eaa591f3e5ef65'),
- (181, 'weapon', '7459902c1acde57d69a1ad31a9c11efda1fb2966'),
- (184, 'dmv', '9b6a6234ed1dd5c5379d4d9758fa3640d52c9d25'),
- (186, 'weapon', '7c76d8579fa4ed0236b0d91ae47e019ffa4fa118'),
- (188, 'dmv', 'b2e39063051d8e36620d343207fcffbc1bc1c4e6'),
- (189, 'drive', 'b2e39063051d8e36620d343207fcffbc1bc1c4e6'),
- (190, 'dmv', '292f813ea1b7ff611d1e0a4198feae4e1ff25fe8'),
- (191, 'weapon', '9b6a6234ed1dd5c5379d4d9758fa3640d52c9d25'),
- (192, 'drive', '9b6a6234ed1dd5c5379d4d9758fa3640d52c9d25'),
- (193, 'dmv', '5fdf3e8533f605133da751cb36617d4ea02c35ee'),
- (194, 'dmv', '16ac6a07dbb480a5d380354e5854d0442d045bea'),
- (195, 'drive', '16ac6a07dbb480a5d380354e5854d0442d045bea'),
- (196, 'drive', '5fdf3e8533f605133da751cb36617d4ea02c35ee'),
- (197, 'weapon', '16ac6a07dbb480a5d380354e5854d0442d045bea'),
- (198, 'weapon', '5fdf3e8533f605133da751cb36617d4ea02c35ee'),
- (199, 'dmv', '8495003c06b35570ecd425b437029685e07a9e16'),
- (200, 'drive', '8495003c06b35570ecd425b437029685e07a9e16'),
- (201, 'dmv', '4edb82d05116ee8a3b3127de9f0eb94967b5cdc3'),
- (202, 'drive', '4edb82d05116ee8a3b3127de9f0eb94967b5cdc3'),
- (207, 'weapon', '2be5c3b3c1e3f2868ee4f3012b002a76b0744ec9'),
- (208, 'weapon', 'b2e39063051d8e36620d343207fcffbc1bc1c4e6'),
- (209, 'drive_bike', 'b2e39063051d8e36620d343207fcffbc1bc1c4e6'),
- (210, 'dmv', 'cb085c20a2fd4105b72dd99d1afbdd8cabb2aaab'),
- (211, 'drive', 'cb085c20a2fd4105b72dd99d1afbdd8cabb2aaab'),
- (212, 'dmv', 'bc5b0453c6a237d24e9edb6e9819365671acb98b'),
- (213, 'drive', 'bc5b0453c6a237d24e9edb6e9819365671acb98b'),
- (214, 'weapon', '37b747c146c338823e8e764fe82ff656ac219c8d'),
- (215, 'weapon', 'bc5b0453c6a237d24e9edb6e9819365671acb98b'),
- (216, 'drive_bike', 'bc5b0453c6a237d24e9edb6e9819365671acb98b'),
- (217, 'drive_truck', 'bc5b0453c6a237d24e9edb6e9819365671acb98b'),
- (220, 'dmv', '781aaa5be26ec8979cf683044b3b9bec88c606ad'),
- (221, 'dmv', '781aaa5be26ec8979cf683044b3b9bec88c606ad'),
- (222, 'weapon', '781aaa5be26ec8979cf683044b3b9bec88c606ad'),
- (223, 'drive', '781aaa5be26ec8979cf683044b3b9bec88c606ad');
- --
- -- Indizes der exportierten Tabellen
- --
- --
- -- Indizes für die Tabelle `licenses`
- --
- ALTER TABLE `licenses`
- ADD PRIMARY KEY (`type`);
- --
- -- Indizes für die Tabelle `user_licenses`
- --
- ALTER TABLE `user_licenses`
- ADD PRIMARY KEY (`id`);
- --
- -- AUTO_INCREMENT für exportierte Tabellen
- --
- --
- -- AUTO_INCREMENT für Tabelle `user_licenses`
- --
- ALTER TABLE `user_licenses`
- MODIFY `id` int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=224;
- COMMIT;
- /*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
- /*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
- /*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement