From ae4443a9af7554ef2e2e9ea8cf7ae0e5aff20c50 Mon Sep 17 00:00:00 2001 From: rubin Date: Tue, 25 Oct 2022 20:35:16 +0300 Subject: [PATCH] fix trailer search --- TruckHUD.lua | 26 ++++++++++++++++---------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/TruckHUD.lua b/TruckHUD.lua index 9cb0e57..bc3a60c 100755 --- a/TruckHUD.lua +++ b/TruckHUD.lua @@ -2761,7 +2761,8 @@ function loadEvents() local result, key = isTruck3dTextDefined(Cid) if result then for i = 1, #key do - prices_3dtext_id[key[i]] = -1 + --prices_3dtext_id[key[i]] = -1 + prices_3dtext_id[key[i]] = nil prices_3dtext[key[i]] = 0 say("Удалено "..key[i]) @@ -3994,7 +3995,8 @@ end luChecker = { vehicles = {}, truckers = {}, -- Игроки не в скрипте - event = {} + price_set = {}, + trailer_delete = {} } --[[ @@ -4023,6 +4025,8 @@ function isVehicleTruckersDelete(table, vehicleId) local isTrailer = false for k,v in pairs(table) do if v["trailerData"] ~= nil and v["trailerData"].trailerId == vehicleId then + say(v["trailerData"].trailerId) + say("трейлер удален") result = true playerId = k isTrailer = true @@ -4057,18 +4061,22 @@ end function luChecker.vehicleSync(playerId, vehicleId, data) if luChecker.vehicles[vehicleId] ~= nil and not isPlayerHaveTruckHUD(playerId) then if luChecker.vehicles[vehicleId] ~= nil and (luChecker.vehicles[vehicleId].type == 403 or luChecker.vehicles[vehicleId].type == 514 or luChecker.vehicles[vehicleId].type == 515) then - luChecker.truckers[playerId] = data - luChecker.truckers[playerId]["vehicleId"] = vehicleId - if luChecker.truckers[playerId]["trailerData"] == nil then + if luChecker.truckers[playerId] == nil then + luChecker.truckers[playerId] = {} + luChecker.truckers[playerId]["data"] = data + luChecker.truckers[playerId]["vehicleId"] = vehicleId luChecker.truckers[playerId]["trailerData"] = { trailerId = -1 } + else + luChecker.truckers[playerId]["data"] = data + luChecker.truckers[playerId]["vehicleId"] = vehicleId end end end end -function luChecker.trailerSync(playerId, data_old, data) +function luChecker.trailerSync(playerId, data) if not isPlayerHaveTruckHUD(playerId) and luChecker.truckers[playerId] ~= nil then luChecker.truckers[playerId]["trailerData"] = data end @@ -4081,9 +4089,8 @@ function luChecker.set3Dtext(type, data_old, data) say(string.format("%s %s", data_old[key], data[key])) if tonumber(data_old[key]) ~= 0 and not (tonumber(data_old[key]) == tonumber(data[1])) then if tonumber(data_old[key]) > tonumber(data[key]) then + luChecker.price_set[#luChecker.price_set + 1] = { type = "unload", old_price = tonumber(data_old[key]), new_price = tonumber(data[key]), time = os.clock() * 1000 } say("Разгрузка в порту рядом "..inifiles.Settings.luCheckerCargo) - else - say("в другом порту кто то разгрузился "..inifiles.Settings.luCheckerCargo) end end elseif type == "Склад" then @@ -4091,9 +4098,8 @@ function luChecker.set3Dtext(type, data_old, data) local cargoId = (cargoName:find("n") and 1 or (cargoName:find("y") and 2 or (cargoName:find("l") and 3 or 0))) if cargoId == inifiles.Settings.luCheckerCargo and tonumber(data_old[1]) ~= 0 and not (tonumber(data_old[1]) == tonumber(data[1])) then if tonumber(data_old[1]) < tonumber(data[1]) then + luChecker.price_set[#luChecker.price_set + 1] = { type = "load", old_price = tonumber(data_old[key]), new_price = tonumber(data[key]), time = os.clock() * 1000 } say("Загрузка на складе рядом "..inifiles.Settings.luCheckerCargo) - else - say("на другом складе кто то закупился "..inifiles.Settings.luCheckerCargo) end end end