diff --git a/lua/ge/extensions/career/vehicleRetrieval.lua b/lua/ge/extensions/career/vehicleRetrieval.lua index a20b3dd..c821a58 100644 --- a/lua/ge/extensions/career/vehicleRetrieval.lua +++ b/lua/ge/extensions/career/vehicleRetrieval.lua @@ -30,9 +30,9 @@ local function spawnVehicle(inventoryId, callback) end local function Retrieve(inventoryId) - career_vehicleSaveSystem.QueueVehicleToSave(inventoryId) + career_vehicleSaveSystem.EnqueueVehicleToSave(inventoryId) if not career_vehicleSaveSystem.SaveVehicle(inventoryId) then - career_vehicleSaveSystem.QueuedVehicleSaved(inventoryId) + career_vehicleSaveSystem.DequeueVehicleToSave(inventoryId) end local vehicleValue = career_modules_valueCalculator.getInventoryVehicleValue(inventoryId, true) @@ -87,7 +87,7 @@ end local function RemoveVehicleObject(inventoryId) table.insert(vehicleObjectsToRemove, inventoryId) - career_vehicleSaveSystem.QueueVehicleToSave(inventoryId) + career_vehicleSaveSystem.EnqueueVehicleToSave(inventoryId) career_vehicleSaveSystem.SaveVehicle(inventoryId) career_vehicleSaveSystem.CheckSavedAsync(function() career_modules_inventory_removeVehicleObject(inventoryId) diff --git a/lua/ge/extensions/career/vehicleSaveSystem.lua b/lua/ge/extensions/career/vehicleSaveSystem.lua index 89c1fcb..08600a2 100644 --- a/lua/ge/extensions/career/vehicleSaveSystem.lua +++ b/lua/ge/extensions/career/vehicleSaveSystem.lua @@ -65,13 +65,14 @@ local function GetVehicleSaveFile(root, inventoryId) return path .. "/save.json" end -local function QueueVehicleToSave(inventoryId) +local function EnqueueVehicleToSave(inventoryId) + log("I", "saving", "enqueued vehicle " .. inventoryId) M.queuedVehicleSaves[inventoryId] = true end -local function QueuedVehicleSaved(inventoryId) - log("I", "saving", "saved vehicle " .. inventoryId) - table.remove(M.queuedVehicleSaves, inventoryId) +local function DequeueVehicleToSave(inventoryId) + log("I", "saving", "dequeued vehicle " .. inventoryId) + M.queuedVehicleSaves[inventoryId] = nil end local function VehiclesSaved() @@ -108,9 +109,10 @@ local function SaveVehicle(inventoryId) local object = be:getObjectByID(vehicleId) object:queueLuaCommand("beamstate.save(\"" .. saveFile .. - "\"); obj:queueGameEngineLua('career_vehicleSaveSystem.QueuedVehicleSaved(\"" .. inventoryId .. "\")');") + "\"); obj:queueGameEngineLua('career_vehicleSaveSystem.DequeueVehicleToSave(" .. inventoryId .. ")');") return true else + log('I', 'saving', 'vehicle ' .. inventoryId .. " not spawned") return false end end @@ -137,12 +139,12 @@ local function onSaveCurrentSaveSlot(currentSavePath, oldSaveDate, vehiclesThumb local vehicles = career_modules_inventory.getVehicles() for id, _ in pairs(vehicles) do - QueueVehicleToSave(id) + EnqueueVehicleToSave(id) end for id, _ in pairs(M.queuedVehicleSaves) do if not SaveVehicle(id) then - QueuedVehicleSaved(id) + DequeueVehicleToSave(id) end end CheckSavedAsync(function() @@ -168,8 +170,8 @@ M.LoadVehicle = LoadVehicle M.CheckSavedAsync = CheckSavedAsync -M.QueueVehicleToSave = QueueVehicleToSave -M.QueuedVehicleSaved = QueuedVehicleSaved +M.EnqueueVehicleToSave = EnqueueVehicleToSave +M.DequeueVehicleToSave = DequeueVehicleToSave M.onSaveCurrentSaveSlotAsyncStart = onSaveCurrentSaveSlotAsyncStart M.onSaveCurrentSaveSlot = onSaveCurrentSaveSlot