@@ -278,6 +278,38 @@ function DeliveryCreationHandler:OnSave(saveLoadHandler)
278
278
279
279
end
280
280
281
+ function DeliveryCreationHandler :GetHandlerAsSerialized (saveLoadHandler )
282
+ return saveLoadHandler :SerializeTable (self .saveTable );
283
+ end
284
+
285
+ function DeliveryCreationHandler :ReplaceHandlerWithSerialized (saveLoadHandler , saveTable )
286
+ self .saveTable = saveLoadHandler :DeserializeTable (saveTable );
287
+
288
+ -- re-add virtual teams
289
+
290
+ for team , techName in pairs (self .saveTable .virtualTeams ) do
291
+ self :AddVirtualTeam (team , techName );
292
+ end
293
+
294
+ -- redo adding and removing presets
295
+
296
+ for team , presetsTable in pairs (self .saveTable .teamRemovedPresets ) do
297
+ for i , presetName in pairs (self .saveTable .teamRemovedPresets [team ]) do
298
+ self :RemoveAvailablePreset (team , presetName , true );
299
+ end
300
+ end
301
+
302
+ for team , presetsTable in pairs (self .saveTable .teamAddedPresets ) do
303
+ for i , presetTable in pairs (self .saveTable .teamAddedPresets [team ]) do
304
+ self :AddAvailablePreset (team , presetTable .PresetName , presetTable .ClassName , presetTable .TechName , true );
305
+ end
306
+ end
307
+
308
+ if self .verboseLogging then
309
+ print (" INFO: DeliveryCreationHandler just replaced itself with a serialized saveTable!" );
310
+ end
311
+ end
312
+
281
313
function DeliveryCreationHandler :AddVirtualTeam (team , techName )
282
314
283
315
if team and techName then
@@ -441,7 +473,7 @@ function DeliveryCreationHandler:ReplaceInfantryTypeWeightsTable(team, newWeight
441
473
442
474
return true ;
443
475
else
444
- print (" DeliveryCreationHandler tried to replace infantry type weights, but wasn't given both a team and a table!" );
476
+ print (" ERROR: DeliveryCreationHandler tried to replace infantry type weights, but wasn't given both a team and a table!" );
445
477
return false ;
446
478
end
447
479
@@ -458,7 +490,7 @@ function DeliveryCreationHandler:AddAvailablePreset(team, presetName, className,
458
490
for i , groupTable in pairs (self .teamPresetTables [team ]) do
459
491
for presetIndex , presetTable in pairs (groupTable ) do
460
492
if presetTable .PresetName == presetName then
461
- print (" DeliveryCreationHandler tried to add an available preset that was already there!" );
493
+ print (" ERROR: DeliveryCreationHandler tried to add an available preset that was already there!" );
462
494
return false ;
463
495
end
464
496
end
@@ -491,7 +523,7 @@ function DeliveryCreationHandler:AddAvailablePreset(team, presetName, className,
491
523
return true ;
492
524
493
525
else
494
- print (" DeliveryCreationHandler tried to add an available preset but was not given all of a team, presetName, className, and techName!" );
526
+ print (" ERROR: DeliveryCreationHandler tried to add an available preset but was not given all of a team, presetName, className, and techName!" );
495
527
return false ;
496
528
end
497
529
500
532
function DeliveryCreationHandler :RemoveAvailablePreset (team , presetName , doNotSaveNewEntry )
501
533
502
534
-- check through every group and delete the preset with the given presetname from every one
535
+
536
+ if self .verboseLogging then
537
+ print (" INFO: DeliveryCreationHandler is trying to delete preset " .. presetName .. " from team " .. team );
538
+ end
503
539
504
540
local found = false ;
505
541
0 commit comments