Merge pull request #361 from roadtosixx/main

refactor(esx_multicharacter): removed useless code
This commit is contained in:
Mycroft
2022-07-27 16:48:56 +01:00
committed by GitHub
5 changed files with 24 additions and 25 deletions
+16 -17
View File
@@ -1,16 +1,15 @@
ESX = exports['es_extended']:getSharedObject()
local mp_m_freemode_01 = `mp_m_freemode_01`
local mp_f_freemode_01 = `mp_f_freemode_01`
if ESX.GetConfig().Multichar then
Citizen.CreateThread(function()
CreateThread(function()
while not ESX.PlayerLoaded do
Citizen.Wait(0)
Wait(0)
if NetworkIsPlayerActive(PlayerId()) then
exports.spawnmanager:setAutoSpawn(false)
DoScreenFadeOut(0)
while not GetResourceState('esx_menu_default') == 'started' do
Citizen.Wait(0)
Wait(0)
end
TriggerEvent("esx_multicharacter:SetupCharacters")
break
@@ -42,14 +41,14 @@ if ESX.GetConfig().Multichar then
ShutdownLoadingScreen()
ShutdownLoadingScreenNui()
TriggerEvent('esx:loadingScreenOff')
Citizen.Wait(200)
Wait(200)
TriggerServerEvent("esx_multicharacter:SetupCharacters")
end)
StartLoop = function()
hidePlayers = true
MumbleSetVolumeOverride(PlayerId(), 0.0)
Citizen.CreateThread(function()
CreateThread(function()
local keys = {18, 27, 172, 173, 174, 175, 176, 177, 187, 188, 191, 201, 108, 109}
while hidePlayers do
DisableAllControlActions(0)
@@ -64,7 +63,7 @@ if ESX.GetConfig().Multichar then
HideHudComponentThisFrame(12)
HideHudComponentThisFrame(21)
HideHudAndRadarThisFrame()
Citizen.Wait(0)
Wait(0)
local vehicles = GetGamePool('CVehicle')
for i = 1, #vehicles do
SetEntityLocallyInvisible(vehicles[i])
@@ -75,10 +74,10 @@ if ESX.GetConfig().Multichar then
SetEntityVisible(playerPed, 1, 0)
SetPlayerInvincible(playerId, 0)
FreezeEntityPosition(playerPed, false)
Citizen.Wait(10000)
Wait(10000)
canRelog = true
end)
Citizen.CreateThread(function()
CreateThread(function()
local playerPool = {}
while hidePlayers do
local players = GetActivePlayers()
@@ -89,7 +88,7 @@ if ESX.GetConfig().Multichar then
NetworkConcealPlayer(player, true, true)
end
end
Citizen.Wait(500)
Wait(500)
end
for k in pairs(playerPool) do
NetworkConcealPlayer(k, false, false)
@@ -117,14 +116,14 @@ if ESX.GetConfig().Multichar then
end
DoScreenFadeIn(400)
end)
repeat Citizen.Wait(200) until not IsScreenFadedOut()
repeat Wait(200) until not IsScreenFadedOut()
elseif Characters[index] and Characters[index].skin then
if Characters[spawned] and Characters[spawned].model then
RequestModel(Characters[index].model)
while not HasModelLoaded(Characters[index].model) do
RequestModel(Characters[index].model)
Citizen.Wait(0)
Wait(0)
end
SetPlayerModel(PlayerId(), Characters[index].model)
SetModelAsNoLongerNeeded(Characters[index].model)
@@ -165,7 +164,7 @@ if ESX.GetConfig().Multichar then
}, function()
canRelog = false
DoScreenFadeIn(400)
Citizen.Wait(400)
Wait(400)
local playerPed = PlayerPedId()
SetPedAoBlobRendering(playerPed, false)
SetEntityAlpha(playerPed, 0)
@@ -278,7 +277,7 @@ if ESX.GetConfig().Multichar then
RequestModel(model)
while not HasModelLoaded(model) do
RequestModel(model)
Citizen.Wait(0)
Wait(0)
end
SetPlayerModel(PlayerId(), model)
SetModelAsNoLongerNeeded(model)
@@ -292,7 +291,7 @@ if ESX.GetConfig().Multichar then
finished = true end, function() finished = true
end)
end)
repeat Citizen.Wait(200) until finished
repeat Wait(200) until finished
end
DoScreenFadeOut(100)
@@ -304,9 +303,9 @@ if ESX.GetConfig().Multichar then
SetEntityCoordsNoOffset(playerPed, spawn.x, spawn.y, spawn.z, false, false, false, true)
SetEntityHeading(playerPed, spawn.heading)
if not isNew then TriggerEvent('skinchanger:loadSkin', skin or Characters[spawned].skin) end
Citizen.Wait(400)
Wait(400)
DoScreenFadeIn(400)
repeat Citizen.Wait(200) until not IsScreenFadedOut()
repeat Wait(200) until not IsScreenFadedOut()
TriggerServerEvent('esx:onPlayerSpawn')
TriggerEvent('esx:onPlayerSpawn')
TriggerEvent('playerSpawned')
+2 -2
View File
@@ -7,9 +7,9 @@ lua54 'yes'
dependencies {'es_extended', 'esx_menu_default', 'esx_identity', 'esx_skin'}
shared_scripts {'@es_extended/locale.lua', 'locales/*.lua', 'config.lua'}
shared_scripts {'@es_extended/imports.lua', '@es_extended/locale.lua', 'locales/*.lua', 'config.lua'}
server_scripts {'@es_extended/imports.lua', '@oxmysql/lib/MySQL.lua', 'server/*.lua'}
server_scripts {'@oxmysql/lib/MySQL.lua', 'server/*.lua'}
client_scripts {'client/*.lua'}
+1 -1
View File
@@ -4,7 +4,7 @@ Locales['de'] = {
['delete_label'] = "Lösche %s %s?",
['select_char'] = "Charakter auswählen",
['create_char'] = "Neuen Charakter erstellen",
['char_play'] = "Diesen Charakter spielen",
['char_play'] = "Diesen Charakter auswählen",
['char_delete'] = "Diesen Charakter löschen",
['cancel'] = "Abbrechen",
['confirm'] = "Bestätigen",
+2 -2
View File
@@ -3,7 +3,7 @@ ESX.RegisterCommand('setslots', 'admin', function(xPlayer, args, showError)
args.identifier
})
if slots == nil then
if not slots then
MySQL.update('INSERT INTO `multicharacter_slots` (`identifier`, `slots`) VALUES (?, ?)', {
args.identifier,
args.slots
@@ -26,7 +26,7 @@ ESX.RegisterCommand('remslots', 'admin', function(xPlayer, args, showError)
args.identifier
})
if slots ~= nil then
if slots then
MySQL.update('DELETE FROM `multicharacter_slots` WHERE `identifier` = ?', {
args.identifier
})
+3 -3
View File
@@ -44,7 +44,7 @@ elseif ESX.GetConfig().Multichar == true then
else ESX.Players = {} end
local function SetupCharacters(source)
while not FETCH do Citizen.Wait(100) end
while not FETCH do Wait(100) end
local identifier = GetIdentifier(source)
ESX.Players[identifier] = true
@@ -118,7 +118,7 @@ elseif ESX.GetConfig().Multichar == true then
MySQL.transaction(queries, function(result)
if result then
print(('[^2INFO^7] Player [%s] %s has deleted a character (%s)'):format(GetPlayerName(source), source, identifier))
Citizen.Wait(50)
Wait(50)
SetupCharacters(source)
else
error('\n^1Transaction failed while trying to delete '..identifier..'^0')
@@ -171,7 +171,7 @@ elseif ESX.GetConfig().Multichar == true then
repeat
ESX.Jobs = GetJobs()
Citizen.Wait(50)
Wait(50)
until next(ESX.Jobs)
FETCH = 'SELECT identifier, accounts, job, job_grade, firstname, lastname, dateofbirth, sex, skin, disabled FROM users WHERE identifier LIKE ? LIMIT ?'