mirror of
https://github.com/Michatec/wk_wars2x.git
synced 2026-04-01 08:26:27 +02:00
Remote const structure, test speed display
This commit is contained in:
45
cl_radar.lua
45
cl_radar.lua
@@ -17,7 +17,7 @@ local pairs = pairs
|
|||||||
Resource Rename Fix - for those muppets who rename the resource and
|
Resource Rename Fix - for those muppets who rename the resource and
|
||||||
complain that the NUI aspect doesn't work!
|
complain that the NUI aspect doesn't work!
|
||||||
------------------------------------------------------------------------]]--
|
------------------------------------------------------------------------]]--
|
||||||
Citizen.SetTimeout( 5000, function()
|
Citizen.SetTimeout( 1000, function()
|
||||||
-- Get the name of the resource, for example the default name is 'wk_wrs2'
|
-- Get the name of the resource, for example the default name is 'wk_wrs2'
|
||||||
local name = GetCurrentResourceName()
|
local name = GetCurrentResourceName()
|
||||||
|
|
||||||
@@ -621,7 +621,7 @@ function RADAR:GetVehiclesForAntenna()
|
|||||||
table.sort( vehs[ant], self:GetFastestSortFunc() )
|
table.sort( vehs[ant], self:GetFastestSortFunc() )
|
||||||
|
|
||||||
for k, v in pairs( vehs[ant] ) do
|
for k, v in pairs( vehs[ant] ) do
|
||||||
if ( self:CheckVehicleDataFitsMode( ant, v.rayType ) and v.veh ~= results[ant][1].veh and v.size + 1.0 < results[ant][1].size ) then
|
if ( self:CheckVehicleDataFitsMode( ant, v.rayType ) and v.veh ~= results[ant][1].veh and v.size + 0.5 < results[ant][1].size ) then
|
||||||
results[ant][2] = v
|
results[ant][2] = v
|
||||||
break
|
break
|
||||||
end
|
end
|
||||||
@@ -723,23 +723,44 @@ function RADAR:Main()
|
|||||||
local vehsForDisplay = self:GetVehiclesForAntenna()
|
local vehsForDisplay = self:GetVehiclesForAntenna()
|
||||||
|
|
||||||
self:SetActiveVehicles( vehsForDisplay )
|
self:SetActiveVehicles( vehsForDisplay )
|
||||||
|
|
||||||
|
if ( vehsForDisplay[1] ~= nil ) then
|
||||||
|
local test = UTIL:FormatSpeed( UTIL:Round( self:GetVehSpeedFormatted( vehsForDisplay[1].speed ), 0 ) )
|
||||||
|
SendNUIMessage( { test1 = test } )
|
||||||
|
elseif ( vehsForDisplay[1] == nil ) then
|
||||||
|
SendNUIMessage( { test1 = -1 } )
|
||||||
|
end
|
||||||
|
|
||||||
|
if ( vehsForDisplay[2] ~= nil ) then
|
||||||
|
local test = UTIL:FormatSpeed( UTIL:Round( self:GetVehSpeedFormatted( vehsForDisplay[2].speed ), 0 ) )
|
||||||
|
SendNUIMessage( { test2 = test } )
|
||||||
|
elseif ( vehsForDisplay[2] == nil ) then
|
||||||
|
SendNUIMessage( { test2 = -1 } )
|
||||||
|
end
|
||||||
|
|
||||||
|
if ( vehsForDisplay[3] ~= nil ) then
|
||||||
|
local test = UTIL:FormatSpeed( UTIL:Round( self:GetVehSpeedFormatted( vehsForDisplay[3].speed ), 0 ) )
|
||||||
|
SendNUIMessage( { test3 = test } )
|
||||||
|
elseif ( vehsForDisplay[3] == nil ) then
|
||||||
|
SendNUIMessage( { test3 = -1 } )
|
||||||
|
end
|
||||||
|
|
||||||
|
if ( vehsForDisplay[4] ~= nil ) then
|
||||||
|
local test = UTIL:FormatSpeed( UTIL:Round( self:GetVehSpeedFormatted( vehsForDisplay[4].speed ), 0 ) )
|
||||||
|
SendNUIMessage( { test4 = test } )
|
||||||
|
elseif ( vehsForDisplay[4] == nil ) then
|
||||||
|
SendNUIMessage( { test4 = -1 } )
|
||||||
|
end
|
||||||
else
|
else
|
||||||
self:SetActiveVehicles( { nil, nil, nil, nil } )
|
self:SetActiveVehicles( { nil, nil, nil, nil } )
|
||||||
end
|
end
|
||||||
|
|
||||||
self:IncreaseRadarStage()
|
|
||||||
elseif ( self:GetRadarStage() == 2 ) then
|
|
||||||
self:ResetRadarStage()
|
self:ResetRadarStage()
|
||||||
self:ResetRayTraceState()
|
self:ResetRayTraceState()
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- This will be the main function that handles all of the radar's operation
|
|
||||||
function RADAR:Controller()
|
|
||||||
|
|
||||||
end
|
|
||||||
|
|
||||||
-- Update the vehicle pool every 3 seconds
|
-- Update the vehicle pool every 3 seconds
|
||||||
Citizen.CreateThread( function()
|
Citizen.CreateThread( function()
|
||||||
while ( true ) do
|
while ( true ) do
|
||||||
@@ -758,7 +779,7 @@ Citizen.CreateThread( function()
|
|||||||
while ( true ) do
|
while ( true ) do
|
||||||
RADAR:Main()
|
RADAR:Main()
|
||||||
|
|
||||||
Citizen.Wait( 100 )
|
Citizen.Wait( 50 )
|
||||||
end
|
end
|
||||||
end )
|
end )
|
||||||
|
|
||||||
@@ -777,7 +798,7 @@ end )
|
|||||||
------------------------------ DEBUG ------------------------------
|
------------------------------ DEBUG ------------------------------
|
||||||
local types = { "FRONT", "FRONT FAST", "REAR", "REAR FAST" }
|
local types = { "FRONT", "FRONT FAST", "REAR", "REAR FAST" }
|
||||||
|
|
||||||
Citizen.CreateThread( function()
|
--[[ Citizen.CreateThread( function()
|
||||||
while ( true ) do
|
while ( true ) do
|
||||||
-- Caught veh debug printing
|
-- Caught veh debug printing
|
||||||
local av = RADAR:GetActiveVehicles()
|
local av = RADAR:GetActiveVehicles()
|
||||||
@@ -820,7 +841,7 @@ Citizen.CreateThread( function()
|
|||||||
|
|
||||||
Citizen.Wait( 0 )
|
Citizen.Wait( 0 )
|
||||||
end
|
end
|
||||||
end )
|
end ) ]]
|
||||||
|
|
||||||
-- Commands for debugging
|
-- Commands for debugging
|
||||||
RegisterCommand( "rdr", function( src, args, raw )
|
RegisterCommand( "rdr", function( src, args, raw )
|
||||||
|
|||||||
13
cl_utils.lua
13
cl_utils.lua
@@ -15,6 +15,19 @@ end
|
|||||||
-- return string.format( "%03d", speed )
|
-- return string.format( "%03d", speed )
|
||||||
-- end
|
-- end
|
||||||
|
|
||||||
|
function UTIL:FormatSpeed( speed )
|
||||||
|
if ( speed < 0 or speed > 999 ) then return "Err" end
|
||||||
|
|
||||||
|
local text = tostring( speed )
|
||||||
|
local pipes = ""
|
||||||
|
|
||||||
|
for i = 1, 3 - string.len( text ) do
|
||||||
|
pipes = pipes .. "¦"
|
||||||
|
end
|
||||||
|
|
||||||
|
return pipes .. text
|
||||||
|
end
|
||||||
|
|
||||||
function UTIL:Clamp( val, min, max )
|
function UTIL:Clamp( val, min, max )
|
||||||
if ( val < min ) then
|
if ( val < min ) then
|
||||||
return min
|
return min
|
||||||
|
|||||||
@@ -212,7 +212,7 @@ button:focus { outline: none; }
|
|||||||
font-size: 70px;
|
font-size: 70px;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
|
|
||||||
line-height: 111%;
|
line-height: 113%;
|
||||||
|
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
letter-spacing: 10px;
|
letter-spacing: 10px;
|
||||||
|
|||||||
@@ -114,50 +114,50 @@
|
|||||||
|
|
||||||
<div id="rc">
|
<div id="rc">
|
||||||
<!-- <div id="rc"> -->
|
<!-- <div id="rc"> -->
|
||||||
<button class="rounded_btn toggle_display">TOGGLE DISPLAY</button>
|
<button id="toggleDisplay" class="rounded_btn toggle_display">TOGGLE DISPLAY</button>
|
||||||
|
|
||||||
<p class="label">FRONT ANTENNA</p>
|
<p class="label">FRONT ANTENNA</p>
|
||||||
|
|
||||||
<div class="antenna_btns_container">
|
<div class="antenna_btns_container">
|
||||||
<div class="btns btns_top">
|
<div class="btns btns_top">
|
||||||
<button class="zone_btn top_left">OPP LK/REL</button>
|
<button id="frontOppMode" class="zone_btn top_left">OPP LK/REL</button>
|
||||||
|
|
||||||
<div class="xmit_wrap">
|
<div class="xmit_wrap">
|
||||||
<div class="xmit_btn xmit_top">
|
<div class="xmit_btn xmit_top">
|
||||||
<div class="arrow"></div>
|
<div class="arrow"></div>
|
||||||
<button class="top_middle">XMIT HOLD</button>
|
<button id="frontXmitToggle" class="top_middle">XMIT HOLD</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button class="zone_btn top_right">SAME LK/REL</button>
|
<button id="frontSameMode" class="zone_btn top_right">SAME LK/REL</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="breaker"></div>
|
<div class="breaker"></div>
|
||||||
|
|
||||||
<div class="btns btns_bottom">
|
<div class="btns btns_bottom">
|
||||||
<button class="zone_btn bottom_left">LK/REL OPP</button>
|
<button id="rearOppMode" class="zone_btn bottom_left">LK/REL OPP</button>
|
||||||
|
|
||||||
<div class="xmit_wrap">
|
<div class="xmit_wrap">
|
||||||
<div class="xmit_btn xmit_bottom">
|
<div class="xmit_btn xmit_bottom">
|
||||||
<div class="arrow arrow_bottom"></div>
|
<div class="arrow arrow_bottom"></div>
|
||||||
<button class="bottom_middle">HOLD XMIT</button>
|
<button id="rearXmitToggle" class="bottom_middle">HOLD XMIT</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button class="zone_btn bottom_right">LK/REL SAME</button>
|
<button id="rearSameMode" class="zone_btn bottom_right">LK/REL SAME</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<p class="label">REAR ANTENNA</p>
|
<p class="label">REAR ANTENNA</p>
|
||||||
|
|
||||||
<button class="circle_btn menu blue">MENU</button>
|
<button id="menuButton" class="circle_btn menu blue">MENU</button>
|
||||||
|
|
||||||
<div class="vol_ps_container">
|
<div class="vol_ps_container">
|
||||||
<button class="vol_and_test blue">VOLUME <span class="hold">TEST</span></button>
|
<button id="volAndTest" class="vol_and_test blue">VOLUME <span class="hold">TEST</span></button>
|
||||||
<button class="ps_blank blue">PS BLANK</button>
|
<button id="psBlank" class="ps_blank blue">PS BLANK</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<button class="rounded_btn light blue">UI SETTINGS</button>
|
<button id="uiSettings" class="rounded_btn light blue">UI SETTINGS</button>
|
||||||
|
|
||||||
<p class="logo"><span class="large">Wraith</span> ARS 2X</p>
|
<p class="logo"><span class="large">Wraith</span> ARS 2X</p>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
46
nui/radar.js
46
nui/radar.js
@@ -65,10 +65,38 @@ const elements =
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const remoteButtons =
|
||||||
|
{
|
||||||
|
toggleDisplay: $( "#toggleDisplay" ),
|
||||||
|
menu: $( "#menuButton" ),
|
||||||
|
volAndTest: $( "#volAndTest" ),
|
||||||
|
psBlank: $( "#psBlank" ),
|
||||||
|
uiSettings: $( "#uiSettings" ),
|
||||||
|
|
||||||
|
antennas: {
|
||||||
|
front: {
|
||||||
|
sameMode: $( "#frontSameMode" ),
|
||||||
|
oppMode: $( "#frontOppMode" ),
|
||||||
|
xmitToggle: $( "#frontXmitToggle" )
|
||||||
|
},
|
||||||
|
|
||||||
|
rear: {
|
||||||
|
sameMode: $( "#rearSameMode" ),
|
||||||
|
oppMode: $( "#rearOppMode" ),
|
||||||
|
xmitToggle: $( "#rearXmitToggle" )
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Hide the radar and remote, this way we can bypass setting a style of 'display: none;' in the HTML file
|
// Hide the radar and remote, this way we can bypass setting a style of 'display: none;' in the HTML file
|
||||||
elements.radar.hide();
|
elements.radar.hide();
|
||||||
elements.remote.hide();
|
elements.remote.hide();
|
||||||
|
|
||||||
|
// Create the onclick event for the toggle display button
|
||||||
|
remoteButtons.toggleDisplay.click( function() {
|
||||||
|
elements.radar.fadeToggle();
|
||||||
|
} )
|
||||||
|
|
||||||
// This function is used to send data back through to the LUA side
|
// This function is used to send data back through to the LUA side
|
||||||
function sendData( name, data ) {
|
function sendData( name, data ) {
|
||||||
$.post( "http://" + resourceName + "/" + name, JSON.stringify( data ), function( datab ) {
|
$.post( "http://" + resourceName + "/" + name, JSON.stringify( data ), function( datab ) {
|
||||||
@@ -96,5 +124,23 @@ window.addEventListener( "message", function( event ) {
|
|||||||
resourceName = item.pathName;
|
resourceName = item.pathName;
|
||||||
} else if ( item.activateRemote ) {
|
} else if ( item.activateRemote ) {
|
||||||
$( "#rc" ).toggle();
|
$( "#rc" ).toggle();
|
||||||
|
} else if ( item.test1 ) {
|
||||||
|
elements.antennas.front.targetSpeed.html( item.test1 );
|
||||||
|
} else if ( item.test2 ) {
|
||||||
|
elements.antennas.front.fast.speed.html( item.test2 );
|
||||||
|
} else if ( item.test3 ) {
|
||||||
|
elements.antennas.rear.targetSpeed.html( item.test3 );
|
||||||
|
} else if ( item.test4 ) {
|
||||||
|
elements.antennas.rear.fast.speed.html( item.test4 );
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( item.test1 == -1 ) {
|
||||||
|
elements.antennas.front.targetSpeed.html( "¦¦¦" );
|
||||||
|
} else if ( item.test2 == -1 ) {
|
||||||
|
elements.antennas.front.fast.speed.html( "¦¦¦" );
|
||||||
|
} else if ( item.test3 == -1 ) {
|
||||||
|
elements.antennas.rear.targetSpeed.html( "¦¦¦" );
|
||||||
|
} else if ( item.test4 == -1 ) {
|
||||||
|
elements.antennas.rear.fast.speed.html( "¦¦¦" );
|
||||||
}
|
}
|
||||||
} );
|
} );
|
||||||
Reference in New Issue
Block a user