Improvement

Improved Vehicles Menu > Custom Plate Menu (Credits Goes to 420silas aka Silas https://steamcommunity.com/id/fckLve/) <3
This commit is contained in:
L7NEG 2024-09-05 22:10:14 +03:00
parent ff6052e2f4
commit 1730fb5bde

View File

@ -24158,6 +24158,8 @@ end)
HHDs = VehiclesMenu:add_submenu("Custom Plate") HHDs = VehiclesMenu:add_submenu("Custom Plate")
PlateChar = { PlateChar = {
"",
" ",
"0", "0",
"1", "1",
"2", "2",
@ -24194,104 +24196,150 @@ PlateChar = {
"X", "X",
"Y", "Y",
"Z", "Z",
"",
} }
PI1 = PlateChar[1] PIs = {}
PI1Current = 1 PICurrents = {}
for pi = 1, 8 do
PIs[pi] = PlateChar[1]
PICurrents[pi] = 1
end
function loadPresets()
Presets = json.loadfile("presets.json")
end
if not pcall(loadPresets) then
Presets = { "" }
end
PRE = Presets[1]
PRECurrent = 1
HHDs:add_array_item("presets", Presets, function()
if localplayer ~= nil and localplayer:is_in_vehicle() then
return PRECurrent
end
end, function(value)
PRE = Presets[value]
PRECurrent = value
nPIs = {}
temp = {}
for idx = 1, #PRE do
nPIs[#nPIs + 1] = PRE:sub(idx, idx)
for cur = 1, #PlateChar do
if PlateChar[cur] == nPIs[#nPIs] then
temp[idx] = cur
end
end
end
for pi = 1, #PRE do
PIs[pi] = nPIs[pi]
PICurrents[pi] = temp[pi]
end
for pi = #PRE + 1, 8 do
PIs[pi] = PlateChar[1]
PICurrents[pi] = 1
end
end)
HHDs:add_array_item("Char #1", PlateChar, function() HHDs:add_array_item("Char #1", PlateChar, function()
if localplayer ~= nil and localplayer:is_in_vehicle() then if localplayer ~= nil and localplayer:is_in_vehicle() then
return PI1Current return PICurrents[1]
end end
end, function(value) end, function(value)
PI1 = PlateChar[value] PIs[1] = PlateChar[value]
PI1Current = value PICurrents[1] = value
end) end)
PI2 = PlateChar[1]
PI2Current = 1
HHDs:add_array_item("Char #2", PlateChar, function() HHDs:add_array_item("Char #2", PlateChar, function()
if localplayer ~= nil and localplayer:is_in_vehicle() then if localplayer ~= nil and localplayer:is_in_vehicle() then
return PI2Current return PICurrents[2]
end end
end, function(value) end, function(value)
PI2 = PlateChar[value] PIs[2] = PlateChar[value]
PI2Current = value PICurrents[2] = value
end) end)
PI3 = PlateChar[1]
PI3Current = 1
HHDs:add_array_item("Char #3", PlateChar, function() HHDs:add_array_item("Char #3", PlateChar, function()
if localplayer ~= nil and localplayer:is_in_vehicle() then if localplayer ~= nil and localplayer:is_in_vehicle() then
return PI3Current return PICurrents[3]
end end
end, function(value) end, function(value)
PI3 = PlateChar[value] PIs[3] = PlateChar[value]
PI3Current = value PICurrents[3] = value
end) end)
PI4 = PlateChar[1]
PI4Current = 1
HHDs:add_array_item("Char #4", PlateChar, function() HHDs:add_array_item("Char #4", PlateChar, function()
if localplayer ~= nil and localplayer:is_in_vehicle() then if localplayer ~= nil and localplayer:is_in_vehicle() then
return PI4Current return PICurrents[4]
end end
end, function(value) end, function(value)
PI4 = PlateChar[value] PIs[4] = PlateChar[value]
PI4Current = value PICurrents[4] = value
end) end)
PI5 = PlateChar[1]
PI5Current = 1
HHDs:add_array_item("Char #5", PlateChar, function() HHDs:add_array_item("Char #5", PlateChar, function()
if localplayer ~= nil and localplayer:is_in_vehicle() then if localplayer ~= nil and localplayer:is_in_vehicle() then
return PI5Current return PICurrents[5]
end end
end, function(value) end, function(value)
PI5 = PlateChar[value] PIs[5] = PlateChar[value]
PI5Current = value PICurrents[5] = value
end) end)
PI6 = PlateChar[1]
PI6Current = 1
HHDs:add_array_item("Char #6", PlateChar, function() HHDs:add_array_item("Char #6", PlateChar, function()
if localplayer ~= nil and localplayer:is_in_vehicle() then if localplayer ~= nil and localplayer:is_in_vehicle() then
return PI6Current return PICurrents[6]
end end
end, function(value) end, function(value)
PI6 = PlateChar[value] PIs[6] = PlateChar[value]
PI6Current = value PICurrents[6] = value
end) end)
PI7 = PlateChar[1]
PI7Current = 1
HHDs:add_array_item("Char #7", PlateChar, function() HHDs:add_array_item("Char #7", PlateChar, function()
if localplayer ~= nil and localplayer:is_in_vehicle() then if localplayer ~= nil and localplayer:is_in_vehicle() then
return PI7Current return PICurrents[7]
end end
end, function(value) end, function(value)
PI7 = PlateChar[value] PIs[7] = PlateChar[value]
PI7Current = value PICurrents[7] = value
end) end)
PI8 = PlateChar[1]
PI8Current = 1
HHDs:add_array_item("Char #8", PlateChar, function() HHDs:add_array_item("Char #8", PlateChar, function()
if localplayer ~= nil and localplayer:is_in_vehicle() then if localplayer ~= nil and localplayer:is_in_vehicle() then
return PI8Current return PICurrents[8]
end end
end, function(value) end, function(value)
PI8 = PlateChar[value] PIs[8] = PlateChar[value]
PI8Current = value PICurrents[8] = value
end) end)
HHDs:add_bare_item("", function() HHDs:add_bare_item("", function()
return "Apply plate: " .. PI1 .. PI2 .. PI3 .. PI4 .. PI5 .. PI6 .. PI7 .. PI8 return "Apply plate: " .. PIs[1] .. PIs[2] .. PIs[3] .. PIs[4] .. PIs[5] .. PIs[6] .. PIs[7] .. PIs[8]
end, function() end, function()
if localplayer ~= nil and localplayer:is_in_vehicle() then if localplayer ~= nil and localplayer:is_in_vehicle() then
localplayer:get_current_vehicle():set_number_plate_text(PI1 .. PI2 .. PI3 .. PI4 .. PI5 .. PI6 .. PI7 .. PI8) localplayer
:get_current_vehicle()
:set_number_plate_text(PIs[1] .. PIs[2] .. PIs[3] .. PIs[4] .. PIs[5] .. PIs[6] .. PIs[7] .. PIs[8])
end end
end, function() end, function() end) end, function() end, function() end)
HHDs:add_bare_item("", function()
return "Reload presets"
end, function()
pcall(loadPresets)
end, function() end, function() end)
HHDs:add_bare_item("", function()
return "Add current plate to presets"
end, function()
Presets[#Presets] = PIs[1] .. PIs[2] .. PIs[3] .. PIs[4] .. PIs[5] .. PIs[6] .. PIs[7] .. PIs[8]
json.savefile("presets.json", Presets)
end, function() end, function() end)
HHDs7 = VehiclesMenu:add_submenu("Car Speed Menu") HHDs7 = VehiclesMenu:add_submenu("Car Speed Menu")
local function superChargeVehicle() local function superChargeVehicle()
if localplayer == nil then if localplayer == nil then