forked from Simnation/Main
fix
This commit is contained in:
parent
b579b06056
commit
63d0db8777
2 changed files with 154 additions and 5 deletions
|
@ -85,12 +85,104 @@ end)
|
||||||
|
|
||||||
-- Nachtsicht-Befehl
|
-- Nachtsicht-Befehl
|
||||||
RegisterCommand('toggleNV', function()
|
RegisterCommand('toggleNV', function()
|
||||||
-- [Rest des Codes bleibt unverändert]
|
local ped = PlayerPedId()
|
||||||
|
local gender = IsPedMale(ped) and "male" or "female"
|
||||||
|
|
||||||
|
-- Check if player has the item
|
||||||
|
QBCore.Functions.TriggerCallback('QBCore:HasItem', function(hasItem)
|
||||||
|
if hasItem then
|
||||||
|
-- Check if player is wearing the correct glasses if enabled
|
||||||
|
if Config.CheckHelmet then
|
||||||
|
local glassesConfig = Config.Glasses[gender]
|
||||||
|
|
||||||
|
if nvMode == 0 then
|
||||||
|
-- Enable nightvision
|
||||||
|
if IsWearingGlasses(ped, glassesConfig.up) then
|
||||||
|
SetGlasses(ped, glassesConfig.nvDown)
|
||||||
|
SetNightvision(true)
|
||||||
|
nvMode = 1
|
||||||
|
TriggerServerEvent('InteractSound_SV:PlayWithinDistance', 3.0, 'nightvision', 0.25)
|
||||||
|
QBCore.Functions.Notify('Nachtsicht aktiviert')
|
||||||
|
else
|
||||||
|
QBCore.Functions.Notify('Du trägst nicht die richtige Brille!', 'error')
|
||||||
|
end
|
||||||
|
else
|
||||||
|
-- Disable nightvision
|
||||||
|
SetGlasses(ped, glassesConfig.up)
|
||||||
|
SetNightvision(false)
|
||||||
|
nvMode = 0
|
||||||
|
TriggerServerEvent('InteractSound_SV:PlayWithinDistance', 3.0, 'nightvision', 0.25)
|
||||||
|
QBCore.Functions.Notify('Nachtsicht deaktiviert')
|
||||||
|
end
|
||||||
|
else
|
||||||
|
-- No helmet check, just toggle nightvision
|
||||||
|
if nvMode == 0 then
|
||||||
|
SetNightvision(true)
|
||||||
|
nvMode = 1
|
||||||
|
TriggerServerEvent('InteractSound_SV:PlayWithinDistance', 3.0, 'nightvision', 0.25)
|
||||||
|
QBCore.Functions.Notify('Nachtsicht aktiviert')
|
||||||
|
else
|
||||||
|
SetNightvision(false)
|
||||||
|
nvMode = 0
|
||||||
|
TriggerServerEvent('InteractSound_SV:PlayWithinDistance', 3.0, 'nightvision', 0.25)
|
||||||
|
QBCore.Functions.Notify('Nachtsicht deaktiviert')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
QBCore.Functions.Notify('Du hast kein Nachtsichtgerät!', 'error')
|
||||||
|
end
|
||||||
|
end, Config.NVItem)
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- Wärmebild-Befehl
|
-- Wärmebild-Befehl
|
||||||
RegisterCommand('toggleThermal', function()
|
RegisterCommand('toggleThermal', function()
|
||||||
-- [Rest des Codes bleibt unverändert]
|
local ped = PlayerPedId()
|
||||||
|
local gender = IsPedMale(ped) and "male" or "female"
|
||||||
|
|
||||||
|
-- Check if player has the item
|
||||||
|
QBCore.Functions.TriggerCallback('QBCore:HasItem', function(hasItem)
|
||||||
|
if hasItem then
|
||||||
|
-- Check if player is wearing the correct glasses if enabled
|
||||||
|
if Config.CheckHelmet then
|
||||||
|
local glassesConfig = Config.Glasses[gender]
|
||||||
|
|
||||||
|
if thermalMode == 0 then
|
||||||
|
-- Enable thermal vision
|
||||||
|
if IsWearingGlasses(ped, glassesConfig.up) then
|
||||||
|
SetGlasses(ped, glassesConfig.thermalDown)
|
||||||
|
SetSeethrough(true)
|
||||||
|
thermalMode = 1
|
||||||
|
TriggerServerEvent('InteractSound_SV:PlayWithinDistance', 3.0, 'nightvision', 0.25)
|
||||||
|
QBCore.Functions.Notify('Wärmebild aktiviert')
|
||||||
|
else
|
||||||
|
QBCore.Functions.Notify('Du trägst nicht die richtige Brille!', 'error')
|
||||||
|
end
|
||||||
|
else
|
||||||
|
-- Disable thermal vision
|
||||||
|
SetGlasses(ped, glassesConfig.up)
|
||||||
|
SetSeethrough(false)
|
||||||
|
thermalMode = 0
|
||||||
|
TriggerServerEvent('InteractSound_SV:PlayWithinDistance', 3.0, 'nightvision', 0.25)
|
||||||
|
QBCore.Functions.Notify('Wärmebild deaktiviert')
|
||||||
|
end
|
||||||
|
else
|
||||||
|
-- No helmet check, just toggle thermal vision
|
||||||
|
if thermalMode == 0 then
|
||||||
|
SetSeethrough(true)
|
||||||
|
thermalMode = 1
|
||||||
|
TriggerServerEvent('InteractSound_SV:PlayWithinDistance', 3.0, 'nightvision', 0.25)
|
||||||
|
QBCore.Functions.Notify('Wärmebild aktiviert')
|
||||||
|
else
|
||||||
|
SetSeethrough(false)
|
||||||
|
thermalMode = 0
|
||||||
|
TriggerServerEvent('InteractSound_SV:PlayWithinDistance', 3.0, 'nightvision', 0.25)
|
||||||
|
QBCore.Functions.Notify('Wärmebild deaktiviert')
|
||||||
|
end
|
||||||
|
end
|
||||||
|
else
|
||||||
|
QBCore.Functions.Notify('Du hast kein Wärmebildgerät!', 'error')
|
||||||
|
end
|
||||||
|
end, Config.ThermalItem)
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- Helm-Lampe-Befehl
|
-- Helm-Lampe-Befehl
|
||||||
|
@ -105,7 +197,57 @@ RegisterKeyMapping('toggleHelmetLight', 'Helm-Lampe umschalten', 'keyboard', Con
|
||||||
|
|
||||||
-- Event zum Umschalten der Brille
|
-- Event zum Umschalten der Brille
|
||||||
RegisterNetEvent('nightvision:toggleGlasses', function(mode)
|
RegisterNetEvent('nightvision:toggleGlasses', function(mode)
|
||||||
-- [Rest des Codes bleibt unverändert]
|
local ped = PlayerPedId()
|
||||||
|
local gender = IsPedMale(ped) and "male" or "female"
|
||||||
|
local glassesConfig = Config.Glasses[gender]
|
||||||
|
|
||||||
|
if mode == 'nightvision' then
|
||||||
|
-- Check if player has the item
|
||||||
|
QBCore.Functions.TriggerCallback('QBCore:HasItem', function(hasItem)
|
||||||
|
if hasItem then
|
||||||
|
if nvMode == 0 then
|
||||||
|
-- Enable nightvision
|
||||||
|
SetGlasses(ped, glassesConfig.nvDown)
|
||||||
|
SetNightvision(true)
|
||||||
|
nvMode = 1
|
||||||
|
TriggerServerEvent('InteractSound_SV:PlayWithinDistance', 3.0, 'nightvision', 0.25)
|
||||||
|
QBCore.Functions.Notify('Nachtsicht aktiviert')
|
||||||
|
else
|
||||||
|
-- Disable nightvision
|
||||||
|
SetGlasses(ped, glassesConfig.up)
|
||||||
|
SetNightvision(false)
|
||||||
|
nvMode = 0
|
||||||
|
TriggerServerEvent('InteractSound_SV:PlayWithinDistance', 3.0, 'nightvision', 0.25)
|
||||||
|
QBCore.Functions.Notify('Nachtsicht deaktiviert')
|
||||||
|
end
|
||||||
|
else
|
||||||
|
QBCore.Functions.Notify('Du hast kein Nachtsichtgerät!', 'error')
|
||||||
|
end
|
||||||
|
end, Config.NVItem)
|
||||||
|
elseif mode == 'thermal' then
|
||||||
|
-- Check if player has the item
|
||||||
|
QBCore.Functions.TriggerCallback('QBCore:HasItem', function(hasItem)
|
||||||
|
if hasItem then
|
||||||
|
if thermalMode == 0 then
|
||||||
|
-- Enable thermal vision
|
||||||
|
SetGlasses(ped, glassesConfig.thermalDown)
|
||||||
|
SetSeethrough(true)
|
||||||
|
thermalMode = 1
|
||||||
|
TriggerServerEvent('InteractSound_SV:PlayWithinDistance', 3.0, 'nightvision', 0.25)
|
||||||
|
QBCore.Functions.Notify('Wärmebild aktiviert')
|
||||||
|
else
|
||||||
|
-- Disable thermal vision
|
||||||
|
SetGlasses(ped, glassesConfig.up)
|
||||||
|
SetSeethrough(false)
|
||||||
|
thermalMode = 0
|
||||||
|
TriggerServerEvent('InteractSound_SV:PlayWithinDistance', 3.0, 'nightvision', 0.25)
|
||||||
|
QBCore.Functions.Notify('Wärmebild deaktiviert')
|
||||||
|
end
|
||||||
|
else
|
||||||
|
QBCore.Functions.Notify('Du hast kein Wärmebildgerät!', 'error')
|
||||||
|
end
|
||||||
|
end, Config.ThermalItem)
|
||||||
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
-- Behalte den alten Event-Namen für Kompatibilität
|
-- Behalte den alten Event-Namen für Kompatibilität
|
||||||
|
|
|
@ -3,6 +3,13 @@ local QBCore = exports[Config.CoreName]:GetCoreObject()
|
||||||
QBCore.Functions.CreateUseableItem(Config.NVItem, function(source, item)
|
QBCore.Functions.CreateUseableItem(Config.NVItem, function(source, item)
|
||||||
local Player = QBCore.Functions.GetPlayer(source)
|
local Player = QBCore.Functions.GetPlayer(source)
|
||||||
if Player.Functions.GetItemByName(item.name) then
|
if Player.Functions.GetItemByName(item.name) then
|
||||||
TriggerClientEvent('nightvision:toggleHelmet', source)
|
TriggerClientEvent('nightvision:toggleGlasses', source, 'nightvision')
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
|
QBCore.Functions.CreateUseableItem(Config.ThermalItem, function(source, item)
|
||||||
|
local Player = QBCore.Functions.GetPlayer(source)
|
||||||
|
if Player.Functions.GetItemByName(item.name) then
|
||||||
|
TriggerClientEvent('nightvision:toggleGlasses', source, 'thermal')
|
||||||
end
|
end
|
||||||
end)
|
end)
|
Loading…
Add table
Add a link
Reference in a new issue