Advertisement
Guest User

Untitled

a guest
Jul 31st, 2020
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.44 KB | None | 0 0
  1. unit BoundaryIssues;
  2.  
  3. const OutputFileName = 'Boundary Issues.esp';
  4.  
  5. function Initialize: Integer;
  6. var
  7. OutputFile, CurrentFile, Group, E: IInterface;
  8. I, J, K: Integer;
  9. MasterList: TStringList;
  10. begin
  11. for I := 0 to FileCount - 1 do
  12. begin
  13. CurrentFile := FileByIndex(I);
  14. if GetFileName(CurrentFile) = OutputFileName then
  15. begin
  16. OutputFile := CurrentFile;
  17. Remove(GroupBySignature(OutputFile, 'ECZN'));
  18. CleanMasters(OutputFile);
  19. Break
  20. end
  21. end;
  22. if not Assigned(OutputFile) then
  23. OutputFile := AddNewFileName(OutputFileName);
  24.  
  25. MasterList := TStringList.Create;
  26. for I := 0 to GetLoadOrder(OutputFile) - 1 do
  27. begin
  28. CurrentFile := FileByIndex(I);
  29. if not HasGroup(CurrentFile, 'ECZN') then
  30. Continue;
  31. Group := GroupBySignature(CurrentFile, 'ECZN');
  32. AddMessage(GetFileName(CurrentFile));
  33. for J := 0 to ElementCount(Group) - 1 do
  34. begin
  35. E := ElementByIndex(Group, J);
  36. if not IsMaster(E) then
  37. Continue;
  38. AddMessage(' ' + Name(E));
  39. E := WinningOverride(E);
  40. MasterList.Clear;
  41. ReportRequiredMasters(E, MasterList, False, False);
  42. for K := 0 to MasterList.Count - 1 do
  43. AddMasterIfMissing(OutputFile, MasterList[K]);
  44. E := wbCopyElementToFile(WinningOverride(E), OutputFile, False, True);
  45. SetElementNativeValues(E, 'DATA\Flags\Disable Combat Boundary', True)
  46. end
  47. end
  48. end;
  49.  
  50. end.
  51.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement