mirror of
https://github.com/Michatec/wk_wars2x.git
synced 2026-04-01 00:16:27 +02:00
feat: power button sync and passenger control
The power state is now synced between the driver and passenger. The passenger can also toggle the radar's power if the config line allows for it.
This commit is contained in:
@@ -1487,8 +1487,12 @@ end )
|
||||
-- Runs when the user presses the power button on the radar ui
|
||||
RegisterNUICallback( "togglePower", function( data, cb )
|
||||
if ( PLY:CanControlRadar() ) then
|
||||
-- Toggle the radar's power
|
||||
RADAR:TogglePower()
|
||||
if ( not RADAR:IsPoweringUp() ) then
|
||||
-- Toggle the radar's power
|
||||
RADAR:TogglePower()
|
||||
|
||||
SYNC:SendPowerState( RADAR:IsPowerOn() )
|
||||
end
|
||||
end
|
||||
|
||||
cb( "ok" )
|
||||
|
||||
20
cl_sync.lua
20
cl_sync.lua
@@ -32,3 +32,23 @@
|
||||
|
||||
SYNC = {}
|
||||
|
||||
function SYNC:SendPowerState( state )
|
||||
local otherPed = PLY:GetOtherPed()
|
||||
|
||||
local otherPly = GetPlayerServerId( NetworkGetPlayerIndexFromPed( otherPed ) )
|
||||
|
||||
TriggerServerEvent( "wk_wars2x_sync:sendPowerState", otherPly, state )
|
||||
end
|
||||
|
||||
|
||||
|
||||
RegisterNetEvent( "wk_wars2x_sync:receivePowerState" )
|
||||
AddEventHandler( "wk_wars2x_sync:receivePowerState", function( state )
|
||||
local power = RADAR:IsPowerOn()
|
||||
|
||||
if ( power ~= state ) then
|
||||
Citizen.SetTimeout( 100, function()
|
||||
RADAR:TogglePower()
|
||||
end )
|
||||
end
|
||||
end )
|
||||
@@ -31,6 +31,6 @@
|
||||
---------------------------------------------------------------------------------------]]--
|
||||
|
||||
RegisterNetEvent( "wk_wars2x_sync:sendPowerState" )
|
||||
AddEventHandler( "wk_wars2x_sync:sendPowerState", function( state, target )
|
||||
-- code
|
||||
AddEventHandler( "wk_wars2x_sync:sendPowerState", function( target, state )
|
||||
TriggerClientEvent( "wk_wars2x_sync:receivePowerState", target, state )
|
||||
end )
|
||||
Reference in New Issue
Block a user