Advertisement
Guest User

quick put to leveledlist

a guest
Dec 21st, 2016
1,291
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.03 KB | None | 0 0
  1. unit userscript;
  2. uses mtefunctions;
  3.  
  4. var
  5. slformlist:tstringlist;
  6. currfile:iinterface;
  7. function Initialize: integer;
  8. begin
  9.   slformlist := tstringlist.create;
  10. end;
  11.  
  12. function Process(e: IInterface): integer;
  13. var
  14. i:integer;
  15. c, s:string;
  16. begin
  17. currfile:=getfile(e);
  18. slformlist.addobject(hexformid(e),tobject(e));
  19. end;
  20.  
  21. procedure CreateTransferFormList(sDestNPCName:string);
  22. var
  23.   fl, flo, fli, flj: IInterface;
  24. begin
  25.   fl := RecordByFormID(FileByIndex(0),$65a73,false);
  26.   flo := wbCopyElementToFile(fl,currfile,true,true);
  27.   seev(flo, 'EDID', ''+sDestNPCName+'''s records');
  28.   fli := Add(flo, 'Leveled List Entries', true);
  29.   while slformlist.count > 0 do begin
  30.     flj := elementassign(fli, HighInteger, nil, false);
  31.     seev(flj, 'LVLO\Reference', slformlist[0]);
  32.     seev(flj, 'LVLO\Count', 1);
  33.     seev(flj, 'LVLO\Level', 1);
  34.     slformlist.delete(0);
  35.   end;
  36.   removebyindex(fli, 0, true);
  37. end;
  38.  
  39. function Finalize: integer;
  40. var
  41. i:integer;
  42. begin
  43. CreateTransferFormList(getfilename(currfile));
  44.   slformlist.free;
  45. end;
  46.  
  47. end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement